@vtx/components 3.1.151 → 3.1.152

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 (311) hide show
  1. package/lib/_util/filterSpecialCharacters.js +49 -60
  2. package/lib/_util/filterSpecialCharacters.js.map +1 -1
  3. package/lib/_util/getComponentProps.js +4 -1
  4. package/lib/_util/getComponentProps.js.map +1 -1
  5. package/lib/_util/getToken.js +16 -8
  6. package/lib/_util/getToken.js.map +1 -1
  7. package/lib/_util/getUrlParam.js +9 -2
  8. package/lib/_util/getUrlParam.js.map +1 -1
  9. package/lib/_util/isFunction.js +1 -0
  10. package/lib/_util/isFunction.js.map +1 -1
  11. package/lib/_util/isObject.js +1 -0
  12. package/lib/_util/isObject.js.map +1 -1
  13. package/lib/_util/useColSize.js +13 -3
  14. package/lib/_util/useColSize.js.map +1 -1
  15. package/lib/_util/useInterval.js +3 -0
  16. package/lib/_util/useInterval.js.map +1 -1
  17. package/lib/_util/useSet.js +42 -26
  18. package/lib/_util/useSet.js.map +1 -1
  19. package/lib/config.js +2 -1
  20. package/lib/config.js.map +1 -1
  21. package/lib/index.js +30 -1
  22. package/lib/index.js.map +1 -1
  23. package/lib/style/index.less +2 -2
  24. package/lib/style/themes/compact.less +1 -1
  25. package/lib/style/themes/dark.less +9 -9
  26. package/lib/style/themes/default.less +7 -7
  27. package/lib/style/themes/index.less +1 -1
  28. package/lib/style/themes/variable.less +5 -5
  29. package/lib/vtx-color-picker/index.js +33 -14
  30. package/lib/vtx-color-picker/index.js.map +1 -1
  31. package/lib/vtx-color-picker/style/css.js +2 -0
  32. package/lib/vtx-color-picker/style/css.js.map +1 -1
  33. package/lib/vtx-color-picker/style/index.js +2 -0
  34. package/lib/vtx-color-picker/style/index.js.map +1 -1
  35. package/lib/vtx-combogrid/Combogrid.js +96 -55
  36. package/lib/vtx-combogrid/Combogrid.js.map +1 -1
  37. package/lib/vtx-combogrid/index.js +66 -41
  38. package/lib/vtx-combogrid/index.js.map +1 -1
  39. package/lib/vtx-combogrid/style/css.js +7 -0
  40. package/lib/vtx-combogrid/style/css.js.map +1 -1
  41. package/lib/vtx-combogrid/style/index.js +7 -0
  42. package/lib/vtx-combogrid/style/index.js.map +1 -1
  43. package/lib/vtx-datagrid/Alert.js +15 -6
  44. package/lib/vtx-datagrid/Alert.js.map +1 -1
  45. package/lib/vtx-datagrid/CheckboxList.js +71 -35
  46. package/lib/vtx-datagrid/CheckboxList.js.map +1 -1
  47. package/lib/vtx-datagrid/ColumnSetting.js +105 -58
  48. package/lib/vtx-datagrid/ColumnSetting.js.map +1 -1
  49. package/lib/vtx-datagrid/ResizeableTitle.js +18 -6
  50. package/lib/vtx-datagrid/ResizeableTitle.js.map +1 -1
  51. package/lib/vtx-datagrid/index.js +217 -138
  52. package/lib/vtx-datagrid/index.js.map +1 -1
  53. package/lib/vtx-datagrid/renderColumnButtons.js +46 -15
  54. package/lib/vtx-datagrid/renderColumnButtons.js.map +1 -1
  55. package/lib/vtx-datagrid/style/css.js +10 -0
  56. package/lib/vtx-datagrid/style/css.js.map +1 -1
  57. package/lib/vtx-datagrid/style/index.js +10 -0
  58. package/lib/vtx-datagrid/style/index.js.map +1 -1
  59. package/lib/vtx-date-picker/QdatePicker.js +58 -28
  60. package/lib/vtx-date-picker/QdatePicker.js.map +1 -1
  61. package/lib/vtx-date-picker/generatePicker.js +77 -35
  62. package/lib/vtx-date-picker/generatePicker.js.map +1 -1
  63. package/lib/vtx-date-picker/index.js +8 -2
  64. package/lib/vtx-date-picker/index.js.map +1 -1
  65. package/lib/vtx-date-picker/style/css.js +1 -0
  66. package/lib/vtx-date-picker/style/css.js.map +1 -1
  67. package/lib/vtx-date-picker/style/index.js +1 -0
  68. package/lib/vtx-date-picker/style/index.js.map +1 -1
  69. package/lib/vtx-date-picker/style/index.less +39 -39
  70. package/lib/vtx-editor/index.js +32 -13
  71. package/lib/vtx-editor/index.js.map +1 -1
  72. package/lib/vtx-editor/style/css.js +1 -0
  73. package/lib/vtx-editor/style/css.js.map +1 -1
  74. package/lib/vtx-editor/style/index.js +1 -0
  75. package/lib/vtx-editor/style/index.js.map +1 -1
  76. package/lib/vtx-editor/style/index.less +8 -8
  77. package/lib/vtx-ellipsis-text/index.js +29 -16
  78. package/lib/vtx-ellipsis-text/index.js.map +1 -1
  79. package/lib/vtx-ellipsis-text/style/css.js +1 -0
  80. package/lib/vtx-ellipsis-text/style/css.js.map +1 -1
  81. package/lib/vtx-ellipsis-text/style/index.js +1 -0
  82. package/lib/vtx-ellipsis-text/style/index.js.map +1 -1
  83. package/lib/vtx-ellipsis-text/style/index.less +13 -13
  84. package/lib/vtx-export/index.js +73 -38
  85. package/lib/vtx-export/index.js.map +1 -1
  86. package/lib/vtx-export/style/css.js +5 -0
  87. package/lib/vtx-export/style/css.js.map +1 -1
  88. package/lib/vtx-export/style/index.js +5 -0
  89. package/lib/vtx-export/style/index.js.map +1 -1
  90. package/lib/vtx-export-async/ColumnsSelect.js +23 -11
  91. package/lib/vtx-export-async/ColumnsSelect.js.map +1 -1
  92. package/lib/vtx-export-async/History.js +117 -75
  93. package/lib/vtx-export-async/History.js.map +1 -1
  94. package/lib/vtx-export-async/index.js +116 -72
  95. package/lib/vtx-export-async/index.js.map +1 -1
  96. package/lib/vtx-export-async/style/css.js.map +1 -1
  97. package/lib/vtx-export-async/style/index.js.map +1 -1
  98. package/lib/vtx-export-async/util.js +21 -9
  99. package/lib/vtx-export-async/util.js.map +1 -1
  100. package/lib/vtx-form-layout/Card.js +39 -17
  101. package/lib/vtx-form-layout/Card.js.map +1 -1
  102. package/lib/vtx-form-layout/Divider.js +12 -6
  103. package/lib/vtx-form-layout/Divider.js.map +1 -1
  104. package/lib/vtx-form-layout/FormItem.js +67 -18
  105. package/lib/vtx-form-layout/FormItem.js.map +1 -1
  106. package/lib/vtx-form-layout/Pane.js +10 -4
  107. package/lib/vtx-form-layout/Pane.js.map +1 -1
  108. package/lib/vtx-form-layout/Row.js +9 -2
  109. package/lib/vtx-form-layout/Row.js.map +1 -1
  110. package/lib/vtx-form-layout/context.js +4 -1
  111. package/lib/vtx-form-layout/context.js.map +1 -1
  112. package/lib/vtx-form-layout/demo/Modal.less +43 -43
  113. package/lib/vtx-form-layout/index.js +25 -10
  114. package/lib/vtx-form-layout/index.js.map +1 -1
  115. package/lib/vtx-form-layout/style/css.js +7 -0
  116. package/lib/vtx-form-layout/style/css.js.map +1 -1
  117. package/lib/vtx-form-layout/style/index.js +7 -0
  118. package/lib/vtx-form-layout/style/index.js.map +1 -1
  119. package/lib/vtx-form-layout/style/index.less +220 -220
  120. package/lib/vtx-image/Image.js +117 -77
  121. package/lib/vtx-image/Image.js.map +1 -1
  122. package/lib/vtx-image/Preview.js +63 -34
  123. package/lib/vtx-image/Preview.js.map +1 -1
  124. package/lib/vtx-image/PreviewGroup.js +54 -24
  125. package/lib/vtx-image/PreviewGroup.js.map +1 -1
  126. package/lib/vtx-image/index.js +11 -4
  127. package/lib/vtx-image/index.js.map +1 -1
  128. package/lib/vtx-image/style/css.js +1 -0
  129. package/lib/vtx-image/style/css.js.map +1 -1
  130. package/lib/vtx-image/style/index.js +1 -0
  131. package/lib/vtx-image/style/index.js.map +1 -1
  132. package/lib/vtx-import/index.js +143 -91
  133. package/lib/vtx-import/index.js.map +1 -1
  134. package/lib/vtx-import/result.js +33 -15
  135. package/lib/vtx-import/result.js.map +1 -1
  136. package/lib/vtx-import/style/css.js +3 -0
  137. package/lib/vtx-import/style/css.js.map +1 -1
  138. package/lib/vtx-import/style/index.js +3 -0
  139. package/lib/vtx-import/style/index.js.map +1 -1
  140. package/lib/vtx-import/style/index.less +8 -8
  141. package/lib/vtx-import2/CheckResult.js +9 -2
  142. package/lib/vtx-import2/CheckResult.js.map +1 -1
  143. package/lib/vtx-import2/Content.js +38 -16
  144. package/lib/vtx-import2/Content.js.map +1 -1
  145. package/lib/vtx-import2/DownloadSvg.js +7 -2
  146. package/lib/vtx-import2/DownloadSvg.js.map +1 -1
  147. package/lib/vtx-import2/ImportResult.js +15 -8
  148. package/lib/vtx-import2/ImportResult.js.map +1 -1
  149. package/lib/vtx-import2/UploadSvg.js +7 -2
  150. package/lib/vtx-import2/UploadSvg.js.map +1 -1
  151. package/lib/vtx-import2/index.js +176 -91
  152. package/lib/vtx-import2/index.js.map +1 -1
  153. package/lib/vtx-import2/style/css.js +3 -0
  154. package/lib/vtx-import2/style/css.js.map +1 -1
  155. package/lib/vtx-import2/style/index.js +3 -0
  156. package/lib/vtx-import2/style/index.js.map +1 -1
  157. package/lib/vtx-import2/style/index.less +102 -102
  158. package/lib/vtx-input/TextArea.js +31 -14
  159. package/lib/vtx-input/TextArea.js.map +1 -1
  160. package/lib/vtx-input/index.js +49 -24
  161. package/lib/vtx-input/index.js.map +1 -1
  162. package/lib/vtx-input/style/css.js +1 -0
  163. package/lib/vtx-input/style/css.js.map +1 -1
  164. package/lib/vtx-input/style/index.js +1 -0
  165. package/lib/vtx-input/style/index.js.map +1 -1
  166. package/lib/vtx-input/style/index.less +24 -24
  167. package/lib/vtx-input/useLength.js +23 -10
  168. package/lib/vtx-input/useLength.js.map +1 -1
  169. package/lib/vtx-modal/Title.js +9 -3
  170. package/lib/vtx-modal/Title.js.map +1 -1
  171. package/lib/vtx-modal/index.js +85 -52
  172. package/lib/vtx-modal/index.js.map +1 -1
  173. package/lib/vtx-modal/style/css.js +1 -0
  174. package/lib/vtx-modal/style/css.js.map +1 -1
  175. package/lib/vtx-modal/style/index.js +1 -0
  176. package/lib/vtx-modal/style/index.js.map +1 -1
  177. package/lib/vtx-page-layout/Basic.js +9 -4
  178. package/lib/vtx-page-layout/Basic.js.map +1 -1
  179. package/lib/vtx-page-layout/Content.js +27 -16
  180. package/lib/vtx-page-layout/Content.js.map +1 -1
  181. package/lib/vtx-page-layout/Pane.js +13 -4
  182. package/lib/vtx-page-layout/Pane.js.map +1 -1
  183. package/lib/vtx-page-layout/TableLayout.js +64 -34
  184. package/lib/vtx-page-layout/TableLayout.js.map +1 -1
  185. package/lib/vtx-page-layout/TableWrap.js +23 -12
  186. package/lib/vtx-page-layout/TableWrap.js.map +1 -1
  187. package/lib/vtx-page-layout/container.js +61 -32
  188. package/lib/vtx-page-layout/container.js.map +1 -1
  189. package/lib/vtx-page-layout/index.js +11 -2
  190. package/lib/vtx-page-layout/index.js.map +1 -1
  191. package/lib/vtx-page-layout/style/css.js.map +1 -1
  192. package/lib/vtx-page-layout/style/index.js.map +1 -1
  193. package/lib/vtx-page-layout/style/index.less +138 -138
  194. package/lib/vtx-rps-frame/index.js +58 -38
  195. package/lib/vtx-rps-frame/index.js.map +1 -1
  196. package/lib/vtx-rps-frame/style/css.js.map +1 -1
  197. package/lib/vtx-rps-frame/style/index.js.map +1 -1
  198. package/lib/vtx-scrollable-row/index.js +68 -34
  199. package/lib/vtx-scrollable-row/index.js.map +1 -1
  200. package/lib/vtx-scrollable-row/style/css.js.map +1 -1
  201. package/lib/vtx-scrollable-row/style/index.js.map +1 -1
  202. package/lib/vtx-scrollable-row/style/index.less +113 -113
  203. package/lib/vtx-search/VtxCol.js +27 -8
  204. package/lib/vtx-search/VtxCol.js.map +1 -1
  205. package/lib/vtx-search/VtxRow.js +15 -8
  206. package/lib/vtx-search/VtxRow.js.map +1 -1
  207. package/lib/vtx-search/index.js +112 -67
  208. package/lib/vtx-search/index.js.map +1 -1
  209. package/lib/vtx-search/style/css.js +4 -0
  210. package/lib/vtx-search/style/css.js.map +1 -1
  211. package/lib/vtx-search/style/index.js +4 -0
  212. package/lib/vtx-search/style/index.js.map +1 -1
  213. package/lib/vtx-search-map-input/index.js +98 -63
  214. package/lib/vtx-search-map-input/index.js.map +1 -1
  215. package/lib/vtx-search-map-input/style/css.js +2 -0
  216. package/lib/vtx-search-map-input/style/css.js.map +1 -1
  217. package/lib/vtx-search-map-input/style/index.js +2 -0
  218. package/lib/vtx-search-map-input/style/index.js.map +1 -1
  219. package/lib/vtx-select/index.js +99 -47
  220. package/lib/vtx-select/index.js.map +1 -1
  221. package/lib/vtx-select/style/css.js +8 -0
  222. package/lib/vtx-select/style/css.js.map +1 -1
  223. package/lib/vtx-select/style/index.js +8 -0
  224. package/lib/vtx-select/style/index.js.map +1 -1
  225. package/lib/vtx-select/style/index.less +68 -68
  226. package/lib/vtx-signature/index.js +34 -19
  227. package/lib/vtx-signature/index.js.map +1 -1
  228. package/lib/vtx-signature/style/css.js +2 -0
  229. package/lib/vtx-signature/style/css.js.map +1 -1
  230. package/lib/vtx-signature/style/index.js +2 -0
  231. package/lib/vtx-signature/style/index.js.map +1 -1
  232. package/lib/vtx-signature/style/index.less +33 -33
  233. package/lib/vtx-split-pane/Pane.js +23 -12
  234. package/lib/vtx-split-pane/Pane.js.map +1 -1
  235. package/lib/vtx-split-pane/Resizer.js +41 -21
  236. package/lib/vtx-split-pane/Resizer.js.map +1 -1
  237. package/lib/vtx-split-pane/SplitPane.js +111 -55
  238. package/lib/vtx-split-pane/SplitPane.js.map +1 -1
  239. package/lib/vtx-split-pane/index.js +7 -2
  240. package/lib/vtx-split-pane/index.js.map +1 -1
  241. package/lib/vtx-split-pane/style/css.js +3 -0
  242. package/lib/vtx-split-pane/style/css.js.map +1 -1
  243. package/lib/vtx-split-pane/style/index.js +3 -0
  244. package/lib/vtx-split-pane/style/index.js.map +1 -1
  245. package/lib/vtx-split-pane/style/index.less +76 -76
  246. package/lib/vtx-statistics-column/Back.js +11 -4
  247. package/lib/vtx-statistics-column/Back.js.map +1 -1
  248. package/lib/vtx-statistics-column/Item.js +32 -16
  249. package/lib/vtx-statistics-column/Item.js.map +1 -1
  250. package/lib/vtx-statistics-column/Total.js +31 -15
  251. package/lib/vtx-statistics-column/Total.js.map +1 -1
  252. package/lib/vtx-statistics-column/context.js +4 -1
  253. package/lib/vtx-statistics-column/context.js.map +1 -1
  254. package/lib/vtx-statistics-column/index.js +19 -2
  255. package/lib/vtx-statistics-column/index.js.map +1 -1
  256. package/lib/vtx-statistics-column/style/css.js +1 -0
  257. package/lib/vtx-statistics-column/style/css.js.map +1 -1
  258. package/lib/vtx-statistics-column/style/index.js +1 -0
  259. package/lib/vtx-statistics-column/style/index.js.map +1 -1
  260. package/lib/vtx-statistics-column/style/index.less +59 -59
  261. package/lib/vtx-time-picker/index.js +22 -8
  262. package/lib/vtx-time-picker/index.js.map +1 -1
  263. package/lib/vtx-time-picker/style/css.js.map +1 -1
  264. package/lib/vtx-time-picker/style/index.js.map +1 -1
  265. package/lib/vtx-tree/index.js +153 -83
  266. package/lib/vtx-tree/index.js.map +1 -1
  267. package/lib/vtx-tree/style/css.js +2 -0
  268. package/lib/vtx-tree/style/css.js.map +1 -1
  269. package/lib/vtx-tree/style/index.js +2 -0
  270. package/lib/vtx-tree/style/index.js.map +1 -1
  271. package/lib/vtx-tree/utils.js +31 -10
  272. package/lib/vtx-tree/utils.js.map +1 -1
  273. package/lib/vtx-tree-select/index.js +81 -37
  274. package/lib/vtx-tree-select/index.js.map +1 -1
  275. package/lib/vtx-tree-select/style/css.js +4 -0
  276. package/lib/vtx-tree-select/style/css.js.map +1 -1
  277. package/lib/vtx-tree-select/style/index.js +4 -0
  278. package/lib/vtx-tree-select/style/index.js.map +1 -1
  279. package/lib/vtx-upload/FilePreview.js +35 -17
  280. package/lib/vtx-upload/FilePreview.js.map +1 -1
  281. package/lib/vtx-upload/index.js +167 -90
  282. package/lib/vtx-upload/index.js.map +1 -1
  283. package/lib/vtx-upload/style/css.js +6 -0
  284. package/lib/vtx-upload/style/css.js.map +1 -1
  285. package/lib/vtx-upload/style/index.js +6 -0
  286. package/lib/vtx-upload/style/index.js.map +1 -1
  287. package/lib/vtx-upload/style/index.less +61 -61
  288. package/lib/vtx-wang-editor/index.js +126 -84
  289. package/lib/vtx-wang-editor/index.js.map +1 -1
  290. package/lib/vtx-wang-editor/style/css.js +1 -0
  291. package/lib/vtx-wang-editor/style/css.js.map +1 -1
  292. package/lib/vtx-wang-editor/style/index.js +1 -0
  293. package/lib/vtx-wang-editor/style/index.js.map +1 -1
  294. package/lib/vtx-wang-editor/style/index.less +12 -12
  295. package/lib/vtx-wang-editor/wangEditorUtil.js +141 -80
  296. package/lib/vtx-wang-editor/wangEditorUtil.js.map +1 -1
  297. package/lib/vtx-ztree/index.js +138 -77
  298. package/lib/vtx-ztree/index.js.map +1 -1
  299. package/lib/vtx-ztree/style/css.js +1 -0
  300. package/lib/vtx-ztree/style/css.js.map +1 -1
  301. package/lib/vtx-ztree/style/index.js +1 -0
  302. package/lib/vtx-ztree/style/index.js.map +1 -1
  303. package/lib/vtx-ztree/style/index.less +45 -45
  304. package/lib/vtx-ztree-select/index.js +159 -91
  305. package/lib/vtx-ztree-select/index.js.map +1 -1
  306. package/lib/vtx-ztree-select/style/css.js +3 -0
  307. package/lib/vtx-ztree-select/style/css.js.map +1 -1
  308. package/lib/vtx-ztree-select/style/index.js +3 -0
  309. package/lib/vtx-ztree-select/style/index.js.map +1 -1
  310. package/lib/vtx-ztree-select/style/index.less +109 -109
  311. package/package.json +122 -122
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_antd","_icons","_utils","_ahooks","_utils2","_excluded","e","__esModule","_getRequireWildcardCache","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","Symbol","iterator","Array","from","isArray","_arrayLikeToArray","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","toPrimitive","String","Number","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","l","f","next","done","_objectWithoutProperties","_objectWithoutPropertiesLoose","s","includes","propertyIsEnumerable","_createForOfIteratorHelper","_n","F","toString","slice","constructor","name","test","getParentKey","key","tree","parentKey","undefined","_iterator","_step","node","children","found","err","VtxTree","_ref","ref","_ref$prefixCls","prefixCls","_ref$showSearch","showSearch","_ref$treeData","treeData","_ref$searchPlaceholde","searchPlaceholder","renderMenuList","fieldNames","titleClassName","props","treeRef","useRef","_useState","useState","_useState2","height","setHeight","_useState3","_useState4","expandedKeys","setExpandedKeys","_useState5","autoExpandParent","_useState6","setAutoExpandParent","_useState7","selectedKeys","defaultSelectedKeys","_useState8","setSelectedKeys","inputRef","lastSelectedKey","React","cachedSelectedKeys","dataList","useMemo","titleKey","title","generateList","data","useEffect","onExpand","newExpandedKeys","info","_props$onExpand","_useState9","_useState10","newTreeData","setNewTreeData","filterTreeData","current","input","useMemoizedFn","searchValue","parseTreeData","renderNode","item","strTitle","index","indexOf","beforeStr","substring","afterStr","className","createElement","concat","filterNode","_useDebounceFn","useDebounceFn","_props$onExpand2","map","self","wait","onSearch","run","useImperativeHandle","resizeObserver","ResizeObserver","offsetHeight","observe","box","disconnect","onSelect","event","_props$onSelect","multiple","nativeEvent","_node$key","newEvent","selected","ctrlPick","ctrlKey","metaKey","shiftPick","shiftKey","newSelectedKeys","selectedNodes","convertDirectoryKeysToNodes","Set","calcRangeKeys","startKey","endKey","Input","style","marginBottom","placeholder","onChange","target","Tree","switcherIcon","DownOutlined","showLine","showLeafIcon","blockNode","defaultExpandAll","expandAction","titleRender","nodeData","menuList","visible","Tooltip","label","onClick","stopPropagation","icon","propTypes","PropTypes","bool","string","array","func","_default","exports","forwardRef"],"sources":["vtx-tree/index.jsx"],"sourcesContent":["import React, {\n forwardRef,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport { Input, Tooltip, Tree } from 'antd';\nimport { DownOutlined } from '@ant-design/icons';\nimport { calcRangeKeys, convertDirectoryKeysToNodes } from './utils';\nimport { useDebounceFn, useMemoizedFn } from 'ahooks';\nimport { parseTreeData } from '@vtx/utils';\n\nconst getParentKey = (key, tree, parentKey = null) => {\n for (const node of tree) {\n if (node.key === key) return parentKey;\n if (node.children) {\n const found = getParentKey(key, node.children, node.key);\n if (found !== undefined) return found;\n }\n }\n return undefined;\n};\nconst VtxTree = (\n {\n prefixCls = 'vtx-tree',\n showSearch = true,\n treeData = [],\n searchPlaceholder = '请输入要查询的关键字',\n renderMenuList,\n fieldNames,\n titleClassName,\n ...props\n },\n ref,\n) => {\n const treeRef = useRef();\n const [height, setHeight] = useState(0);\n const [expandedKeys, setExpandedKeys] = useState([]);\n const [autoExpandParent, setAutoExpandParent] = useState(props.autoExpandParent || false);\n const [selectedKeys, setSelectedKeys] = useState(\n props.selectedKeys || props.defaultSelectedKeys || [],\n );\n const inputRef = useRef();\n const lastSelectedKey = React.useRef();\n\n const cachedSelectedKeys = React.useRef();\n\n const dataList = useMemo(() => {\n let dataList = [];\n const titleKey = fieldNames?.title || 'title';\n const generateList = data => {\n for (let i = 0; i < data.length; i++) {\n const node = data[i];\n const { key } = node;\n dataList.push({ key, title: node[titleKey] });\n if (node.children) {\n generateList(node.children);\n }\n }\n };\n generateList(treeData);\n return dataList;\n }, [treeData]);\n\n useEffect(() => {\n if ('selectedKeys' in props) {\n setSelectedKeys(props.selectedKeys);\n }\n }, [props.selectedKeys]);\n\n useEffect(() => {\n if ('expandedKeys' in props) {\n setExpandedKeys(props.expandedKeys);\n }\n }, [props.expandedKeys]);\n\n const onExpand = (newExpandedKeys, info) => {\n setAutoExpandParent(false);\n props.onExpand?.(newExpandedKeys, info);\n if (!('expandedKeys' in props)) {\n setExpandedKeys(newExpandedKeys);\n }\n };\n\n const [newTreeData, setNewTreeData] = useState(treeData);\n useEffect(() => {\n if (treeData?.length) {\n filterTreeData(inputRef.current ? inputRef.current.input.value : '');\n }\n }, [treeData]);\n const filterTreeData = useMemoizedFn((searchValue = '') => {\n const newTreeData = parseTreeData(treeData, {\n renderNode(item) {\n const titleKey = fieldNames?.title || 'title';\n const strTitle = item[titleKey] || '';\n const index = strTitle.indexOf(searchValue);\n const beforeStr = strTitle.substring(0, index);\n const afterStr = strTitle.slice(index + searchValue.length);\n const className = titleClassName ? titleClassName(item) : '';\n const title =\n index > -1 ? (\n <span className={className}>\n {beforeStr}\n <span className={`${prefixCls}-search-value`}>{searchValue}</span>\n {afterStr}\n </span>\n ) : (\n <span className={className}>{strTitle}</span>\n );\n\n return {\n ...item,\n [titleKey]: title,\n key: item.key,\n strTitle,\n };\n },\n filterNode(item) {\n return item.strTitle.indexOf(searchValue) > -1;\n },\n });\n return setNewTreeData(newTreeData);\n });\n const { run: onSearch } = useDebounceFn(\n value => {\n const newExpandedKeys = dataList\n .map(item => {\n if (item.title.indexOf(value) > -1) {\n return getParentKey(item.key, treeData);\n }\n return null;\n })\n .filter((item, i, self) => item && self.indexOf(item) === i);\n setAutoExpandParent(true);\n filterTreeData(value);\n props.onExpand?.(newExpandedKeys);\n if (!('expandedKeys' in props)) {\n setExpandedKeys(newExpandedKeys);\n }\n },\n {\n wait: 300,\n },\n );\n\n useImperativeHandle(ref, () => ({\n onSearch,\n }));\n\n useEffect(() => {\n const resizeObserver = new ResizeObserver(() => {\n setHeight(treeRef.current.offsetHeight);\n });\n if (treeRef.current) {\n resizeObserver.observe(treeRef.current, {\n box: 'border-box',\n });\n }\n setHeight(treeRef.current.offsetHeight);\n return () => {\n resizeObserver.disconnect();\n };\n }, []);\n\n const onSelect = (keys, event) => {\n const { multiple } = props;\n const { node, nativeEvent } = event;\n const { key = '' } = node;\n // const newState: DirectoryTreeState = {};\n\n // We need wrap this event since some value is not same\n const newEvent = {\n ...event,\n selected: true, // Directory selected always true\n };\n\n // Windows / Mac single pick\n const ctrlPick = nativeEvent?.ctrlKey || nativeEvent?.metaKey;\n const shiftPick = nativeEvent?.shiftKey;\n\n // Generate new selected keys\n let newSelectedKeys;\n if (multiple && ctrlPick) {\n // Control click\n newSelectedKeys = keys;\n lastSelectedKey.current = key;\n cachedSelectedKeys.current = newSelectedKeys;\n newEvent.selectedNodes = convertDirectoryKeysToNodes(treeData, newSelectedKeys);\n } else if (multiple && shiftPick) {\n // Shift click\n newSelectedKeys = Array.from(\n new Set([\n ...(cachedSelectedKeys.current || []),\n ...calcRangeKeys({\n treeData,\n expandedKeys,\n startKey: key,\n endKey: lastSelectedKey.current,\n }),\n ]),\n );\n newEvent.selectedNodes = convertDirectoryKeysToNodes(treeData, newSelectedKeys);\n } else {\n // Single click\n newSelectedKeys = [key];\n lastSelectedKey.current = key;\n cachedSelectedKeys.current = newSelectedKeys;\n newEvent.selectedNodes = convertDirectoryKeysToNodes(treeData, newSelectedKeys);\n }\n\n props.onSelect?.(newSelectedKeys, newEvent);\n if (!('selectedKeys' in props)) {\n setSelectedKeys(newSelectedKeys);\n }\n };\n return (\n <div className={`${prefixCls}-wraaper`}>\n {showSearch && (\n <Input\n style={{ marginBottom: 8 }}\n placeholder={searchPlaceholder}\n onChange={e => onSearch(e.target.value)}\n ref={inputRef}\n />\n )}\n <div className={prefixCls} ref={treeRef}>\n <Tree\n {...props}\n height={height}\n switcherIcon={<DownOutlined />}\n showLine={{ showLeafIcon: false }}\n blockNode\n treeData={newTreeData}\n onExpand={onExpand}\n {...(expandedKeys.length === 0 && props.defaultExpandAll\n ? {}\n : { expandedKeys })}\n autoExpandParent={autoExpandParent}\n selectedKeys={selectedKeys}\n onSelect={onSelect}\n fieldNames={fieldNames}\n expandAction=\"click\"\n titleRender={nodeData => {\n const titleKey = fieldNames?.title || 'title';\n const title = nodeData[titleKey];\n\n if (renderMenuList) {\n const menuList = renderMenuList(nodeData);\n return (\n <div className={`${prefixCls}-menu-wrap`}>\n <span>{title}</span>\n <div className={`${prefixCls}-menu-list`}>\n {menuList\n .filter(item => item.visible)\n .map(item => (\n <Tooltip key={item.label} title={item.label}>\n <span\n className={`${prefixCls}-menu-item-icon`}\n onClick={e => {\n e.stopPropagation();\n item.onClick && item.onClick(nodeData);\n }}\n >\n {item.icon}\n </span>\n </Tooltip>\n ))}\n </div>\n </div>\n );\n }\n return title;\n }}\n />\n </div>\n </div>\n );\n};\n\nVtxTree.propTypes = {\n showSearch: PropTypes.bool,\n prefixCls: PropTypes.string,\n treeData: PropTypes.array,\n selectedKeys: PropTypes.array,\n defaultSelectedKeys: PropTypes.array,\n expandedKeys: PropTypes.bool,\n onExpand: PropTypes.func,\n multiple: PropTypes.bool,\n autoExpandParent: PropTypes.bool,\n onSelect: PropTypes.func,\n searchPlaceholder: PropTypes.string,\n renderMenuList: PropTypes.func,\n titleClassName: PropTypes.func,\n fieldNames: PropTypes.array,\n defaultExpandAll: PropTypes.bool,\n};\n\nexport default forwardRef(VtxTree);\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAQA,IAAAC,UAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AACA,IAAAM,OAAA,GAAAN,OAAA;AACA,IAAAO,OAAA,GAAAP,OAAA;AAA2C,IAAAQ,SAAA;AAAA,SAAAN,uBAAAO,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,gBAAAA,CAAA;AAAA,SAAAE,yBAAAF,CAAA,6BAAAG,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAD,wBAAA,YAAAA,yBAAAF,CAAA,WAAAA,CAAA,GAAAK,CAAA,GAAAD,CAAA,KAAAJ,CAAA;AAAA,SAAAV,wBAAAU,CAAA,EAAAI,CAAA,SAAAA,CAAA,IAAAJ,CAAA,IAAAA,CAAA,CAAAC,UAAA,SAAAD,CAAA,eAAAA,CAAA,gBAAAM,OAAA,CAAAN,CAAA,0BAAAA,CAAA,sBAAAA,CAAA,QAAAK,CAAA,GAAAH,wBAAA,CAAAE,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAE,GAAA,CAAAP,CAAA,UAAAK,CAAA,CAAAG,GAAA,CAAAR,CAAA,OAAAS,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAf,CAAA,oBAAAe,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAe,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAd,CAAA,EAAAe,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAf,CAAA,CAAAe,CAAA,YAAAN,CAAA,cAAAT,CAAA,EAAAK,CAAA,IAAAA,CAAA,CAAAc,GAAA,CAAAnB,CAAA,EAAAS,CAAA,GAAAA,CAAA;AAAA,SAAAW,SAAA,WAAAA,QAAA,GAAAR,MAAA,CAAAS,MAAA,GAAAT,MAAA,CAAAS,MAAA,CAAAC,IAAA,eAAAb,CAAA,aAAAT,CAAA,MAAAA,CAAA,GAAAuB,SAAA,CAAAC,MAAA,EAAAxB,CAAA,UAAAK,CAAA,GAAAkB,SAAA,CAAAvB,CAAA,YAAAI,CAAA,IAAAC,CAAA,OAAAW,cAAA,CAAAC,IAAA,CAAAZ,CAAA,EAAAD,CAAA,MAAAK,CAAA,CAAAL,CAAA,IAAAC,CAAA,CAAAD,CAAA,aAAAK,CAAA,KAAAW,QAAA,CAAAK,KAAA,OAAAF,SAAA;AAAA,SAAAG,mBAAAtB,CAAA,WAAAuB,kBAAA,CAAAvB,CAAA,KAAAwB,gBAAA,CAAAxB,CAAA,KAAAyB,2BAAA,CAAAzB,CAAA,KAAA0B,kBAAA;AAAA,SAAAA,mBAAA,cAAAC,SAAA;AAAA,SAAAH,iBAAAxB,CAAA,8BAAA4B,MAAA,YAAA5B,CAAA,CAAA4B,MAAA,CAAAC,QAAA,aAAA7B,CAAA,uBAAA8B,KAAA,CAAAC,IAAA,CAAA/B,CAAA;AAAA,SAAAuB,mBAAAvB,CAAA,QAAA8B,KAAA,CAAAE,OAAA,CAAAhC,CAAA,UAAAiC,iBAAA,CAAAjC,CAAA;AAAA,SAAAkC,QAAAtC,CAAA,EAAAI,CAAA,QAAAC,CAAA,GAAAO,MAAA,CAAA2B,IAAA,CAAAvC,CAAA,OAAAY,MAAA,CAAA4B,qBAAA,QAAAC,CAAA,GAAA7B,MAAA,CAAA4B,qBAAA,CAAAxC,CAAA,GAAAI,CAAA,KAAAqC,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAtC,CAAA,WAAAQ,MAAA,CAAAE,wBAAA,CAAAd,CAAA,EAAAI,CAAA,EAAAuC,UAAA,OAAAtC,CAAA,CAAAuC,IAAA,CAAAnB,KAAA,CAAApB,CAAA,EAAAoC,CAAA,YAAApC,CAAA;AAAA,SAAAwC,cAAA7C,CAAA,aAAAI,CAAA,MAAAA,CAAA,GAAAmB,SAAA,CAAAC,MAAA,EAAApB,CAAA,UAAAC,CAAA,WAAAkB,SAAA,CAAAnB,CAAA,IAAAmB,SAAA,CAAAnB,CAAA,QAAAA,CAAA,OAAAkC,OAAA,CAAA1B,MAAA,CAAAP,CAAA,OAAAyC,OAAA,WAAA1C,CAAA,IAAA2C,eAAA,CAAA/C,CAAA,EAAAI,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAQ,MAAA,CAAAoC,yBAAA,GAAApC,MAAA,CAAAqC,gBAAA,CAAAjD,CAAA,EAAAY,MAAA,CAAAoC,yBAAA,CAAA3C,CAAA,KAAAiC,OAAA,CAAA1B,MAAA,CAAAP,CAAA,GAAAyC,OAAA,WAAA1C,CAAA,IAAAQ,MAAA,CAAAC,cAAA,CAAAb,CAAA,EAAAI,CAAA,EAAAQ,MAAA,CAAAE,wBAAA,CAAAT,CAAA,EAAAD,CAAA,iBAAAJ,CAAA;AAAA,SAAA+C,gBAAA/C,CAAA,EAAAI,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAA8C,cAAA,CAAA9C,CAAA,MAAAJ,CAAA,GAAAY,MAAA,CAAAC,cAAA,CAAAb,CAAA,EAAAI,CAAA,IAAA+C,KAAA,EAAA9C,CAAA,EAAAsC,UAAA,MAAAS,YAAA,MAAAC,QAAA,UAAArD,CAAA,CAAAI,CAAA,IAAAC,CAAA,EAAAL,CAAA;AAAA,SAAAkD,eAAA7C,CAAA,QAAAa,CAAA,GAAAoC,YAAA,CAAAjD,CAAA,gCAAAC,OAAA,CAAAY,CAAA,IAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAoC,aAAAjD,CAAA,EAAAD,CAAA,oBAAAE,OAAA,CAAAD,CAAA,MAAAA,CAAA,SAAAA,CAAA,MAAAL,CAAA,GAAAK,CAAA,CAAA2B,MAAA,CAAAuB,WAAA,kBAAAvD,CAAA,QAAAkB,CAAA,GAAAlB,CAAA,CAAAiB,IAAA,CAAAZ,CAAA,EAAAD,CAAA,gCAAAE,OAAA,CAAAY,CAAA,UAAAA,CAAA,YAAAa,SAAA,yEAAA3B,CAAA,GAAAoD,MAAA,GAAAC,MAAA,EAAApD,CAAA;AAAA,SAAAqD,eAAAtD,CAAA,EAAAJ,CAAA,WAAA2D,eAAA,CAAAvD,CAAA,KAAAwD,qBAAA,CAAAxD,CAAA,EAAAJ,CAAA,KAAA6B,2BAAA,CAAAzB,CAAA,EAAAJ,CAAA,KAAA6D,gBAAA;AAAA,SAAAA,iBAAA,cAAA9B,SAAA;AAAA,SAAA6B,sBAAAxD,CAAA,EAAA0D,CAAA,QAAAzD,CAAA,WAAAD,CAAA,gCAAA4B,MAAA,IAAA5B,CAAA,CAAA4B,MAAA,CAAAC,QAAA,KAAA7B,CAAA,4BAAAC,CAAA,QAAAL,CAAA,EAAAS,CAAA,EAAAS,CAAA,EAAAH,CAAA,EAAAJ,CAAA,OAAAoD,CAAA,OAAAtB,CAAA,iBAAAvB,CAAA,IAAAb,CAAA,GAAAA,CAAA,CAAAY,IAAA,CAAAb,CAAA,GAAA4D,IAAA,QAAAF,CAAA,QAAAlD,MAAA,CAAAP,CAAA,MAAAA,CAAA,UAAA0D,CAAA,uBAAAA,CAAA,IAAA/D,CAAA,GAAAkB,CAAA,CAAAD,IAAA,CAAAZ,CAAA,GAAA4D,IAAA,MAAAtD,CAAA,CAAAiC,IAAA,CAAA5C,CAAA,CAAAmD,KAAA,GAAAxC,CAAA,CAAAa,MAAA,KAAAsC,CAAA,GAAAC,CAAA,iBAAA3D,CAAA,IAAAqC,CAAA,OAAAhC,CAAA,GAAAL,CAAA,yBAAA2D,CAAA,YAAA1D,CAAA,eAAAU,CAAA,GAAAV,CAAA,cAAAO,MAAA,CAAAG,CAAA,MAAAA,CAAA,2BAAA0B,CAAA,QAAAhC,CAAA,aAAAE,CAAA;AAAA,SAAAgD,gBAAAvD,CAAA,QAAA8B,KAAA,CAAAE,OAAA,CAAAhC,CAAA,UAAAA,CAAA;AAAA,SAAA8D,yBAAAlE,CAAA,EAAAK,CAAA,gBAAAL,CAAA,iBAAAyC,CAAA,EAAArC,CAAA,EAAAc,CAAA,GAAAiD,6BAAA,CAAAnE,CAAA,EAAAK,CAAA,OAAAO,MAAA,CAAA4B,qBAAA,QAAA4B,CAAA,GAAAxD,MAAA,CAAA4B,qBAAA,CAAAxC,CAAA,QAAAI,CAAA,MAAAA,CAAA,GAAAgE,CAAA,CAAA5C,MAAA,EAAApB,CAAA,IAAAqC,CAAA,GAAA2B,CAAA,CAAAhE,CAAA,GAAAC,CAAA,CAAAgE,QAAA,CAAA5B,CAAA,QAAA6B,oBAAA,CAAArD,IAAA,CAAAjB,CAAA,EAAAyC,CAAA,MAAAvB,CAAA,CAAAuB,CAAA,IAAAzC,CAAA,CAAAyC,CAAA,aAAAvB,CAAA;AAAA,SAAAiD,8BAAA/D,CAAA,EAAAJ,CAAA,gBAAAI,CAAA,iBAAAC,CAAA,gBAAAI,CAAA,IAAAL,CAAA,SAAAY,cAAA,CAAAC,IAAA,CAAAb,CAAA,EAAAK,CAAA,SAAAT,CAAA,CAAAqE,QAAA,CAAA5D,CAAA,aAAAJ,CAAA,CAAAI,CAAA,IAAAL,CAAA,CAAAK,CAAA,YAAAJ,CAAA;AAAA,SAAAkE,2BAAAnE,CAAA,EAAAJ,CAAA,QAAAK,CAAA,yBAAA2B,MAAA,IAAA5B,CAAA,CAAA4B,MAAA,CAAAC,QAAA,KAAA7B,CAAA,qBAAAC,CAAA,QAAA6B,KAAA,CAAAE,OAAA,CAAAhC,CAAA,MAAAC,CAAA,GAAAwB,2BAAA,CAAAzB,CAAA,MAAAJ,CAAA,IAAAI,CAAA,uBAAAA,CAAA,CAAAoB,MAAA,IAAAnB,CAAA,KAAAD,CAAA,GAAAC,CAAA,OAAAmE,EAAA,MAAAC,CAAA,YAAAA,EAAA,eAAAL,CAAA,EAAAK,CAAA,EAAAhE,CAAA,WAAAA,EAAA,WAAA+D,EAAA,IAAApE,CAAA,CAAAoB,MAAA,KAAAyC,IAAA,WAAAA,IAAA,MAAAd,KAAA,EAAA/C,CAAA,CAAAoE,EAAA,UAAAxE,CAAA,WAAAA,EAAAI,CAAA,UAAAA,CAAA,KAAA2D,CAAA,EAAAU,CAAA,gBAAA1C,SAAA,iJAAAU,CAAA,EAAA9B,CAAA,OAAAI,CAAA,gBAAAqD,CAAA,WAAAA,EAAA,IAAA/D,CAAA,GAAAA,CAAA,CAAAY,IAAA,CAAAb,CAAA,MAAAK,CAAA,WAAAA,EAAA,QAAAL,CAAA,GAAAC,CAAA,CAAA2D,IAAA,WAAArD,CAAA,GAAAP,CAAA,CAAA6D,IAAA,EAAA7D,CAAA,KAAAJ,CAAA,WAAAA,EAAAI,CAAA,IAAAW,CAAA,OAAA0B,CAAA,GAAArC,CAAA,KAAA2D,CAAA,WAAAA,EAAA,UAAApD,CAAA,YAAAN,CAAA,cAAAA,CAAA,8BAAAU,CAAA,QAAA0B,CAAA;AAAA,SAAAZ,4BAAAzB,CAAA,EAAAO,CAAA,QAAAP,CAAA,2BAAAA,CAAA,SAAAiC,iBAAA,CAAAjC,CAAA,EAAAO,CAAA,OAAAN,CAAA,MAAAqE,QAAA,CAAAzD,IAAA,CAAAb,CAAA,EAAAuE,KAAA,6BAAAtE,CAAA,IAAAD,CAAA,CAAAwE,WAAA,KAAAvE,CAAA,GAAAD,CAAA,CAAAwE,WAAA,CAAAC,IAAA,aAAAxE,CAAA,cAAAA,CAAA,GAAA6B,KAAA,CAAAC,IAAA,CAAA/B,CAAA,oBAAAC,CAAA,+CAAAyE,IAAA,CAAAzE,CAAA,IAAAgC,iBAAA,CAAAjC,CAAA,EAAAO,CAAA;AAAA,SAAA0B,kBAAAjC,CAAA,EAAAO,CAAA,aAAAA,CAAA,IAAAA,CAAA,GAAAP,CAAA,CAAAoB,MAAA,MAAAb,CAAA,GAAAP,CAAA,CAAAoB,MAAA,YAAAxB,CAAA,MAAAS,CAAA,GAAAyB,KAAA,CAAAvB,CAAA,GAAAX,CAAA,GAAAW,CAAA,EAAAX,CAAA,IAAAS,CAAA,CAAAT,CAAA,IAAAI,CAAA,CAAAJ,CAAA,UAAAS,CAAA;AAE3C,IAAMsE,aAAY,GAAG,SAAfA,YAAYA,CAAIC,GAAG,EAAEC,IAAI,EAAuB;EAAA,IAArBC,SAAS,GAAA3D,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA4D,SAAA,GAAA5D,SAAA,MAAG,IAAI;EAAA,IAAA6D,SAAA,GAAAb,0BAAA,CAC1BU,IAAI;IAAAI,KAAA;EAAA;IAAvB,KAAAD,SAAA,CAAAhB,CAAA,MAAAiB,KAAA,GAAAD,SAAA,CAAA3E,CAAA,IAAAwD,IAAA,GAAyB;MAAA,IAAdqB,IAAI,GAAAD,KAAA,CAAAlC,KAAA;MACX,IAAImC,IAAI,CAACN,GAAG,KAAKA,GAAG,EAAE,OAAOE,SAAS;MACtC,IAAII,IAAI,CAACC,QAAQ,EAAE;QACf,IAAMC,KAAK,GAAGT,aAAY,CAACC,GAAG,EAAEM,IAAI,CAACC,QAAQ,EAAED,IAAI,CAACN,GAAG,CAAC;QACxD,IAAIQ,KAAK,KAAKL,SAAS,EAAE,OAAOK,KAAK;MACzC;IACJ;EAAC,SAAAC,GAAA;IAAAL,SAAA,CAAApF,CAAA,CAAAyF,GAAA;EAAA;IAAAL,SAAA,CAAArB,CAAA;EAAA;EACD,OAAOoB,SAAS;AACpB,CAAC;AACD,IAAMO,OAAO,GAAG,SAAVA,OAAOA,CAAAC,IAAA,EAWTC,GAAG,EACF;EAAA,IAAAC,cAAA,GAAAF,IAAA,CAVGG,SAAS;IAATA,SAAS,GAAAD,cAAA,cAAG,UAAU,GAAAA,cAAA;IAAAE,eAAA,GAAAJ,IAAA,CACtBK,UAAU;IAAVA,UAAU,GAAAD,eAAA,cAAG,IAAI,GAAAA,eAAA;IAAAE,aAAA,GAAAN,IAAA,CACjBO,QAAQ;IAARA,QAAQ,GAAAD,aAAA,cAAG,EAAE,GAAAA,aAAA;IAAAE,qBAAA,GAAAR,IAAA,CACbS,iBAAiB;IAAjBA,iBAAiB,GAAAD,qBAAA,cAAG,YAAY,GAAAA,qBAAA;IAChCE,cAAc,GAAAV,IAAA,CAAdU,cAAc;IACdC,UAAU,GAAAX,IAAA,CAAVW,UAAU;IACVC,cAAc,GAAAZ,IAAA,CAAdY,cAAc;IACXC,KAAK,GAAAtC,wBAAA,CAAAyB,IAAA,EAAA5F,SAAA;EAIZ,IAAM0G,OAAO,GAAG,IAAAC,aAAM,EAAC,CAAC;EACxB,IAAAC,SAAA,GAA4B,IAAAC,eAAQ,EAAC,CAAC,CAAC;IAAAC,UAAA,GAAAnD,cAAA,CAAAiD,SAAA;IAAhCG,MAAM,GAAAD,UAAA;IAAEE,SAAS,GAAAF,UAAA;EACxB,IAAAG,UAAA,GAAwC,IAAAJ,eAAQ,EAAC,EAAE,CAAC;IAAAK,UAAA,GAAAvD,cAAA,CAAAsD,UAAA;IAA7CE,YAAY,GAAAD,UAAA;IAAEE,eAAe,GAAAF,UAAA;EACpC,IAAAG,UAAA,GAAgD,IAAAR,eAAQ,EAACJ,KAAK,CAACa,gBAAgB,IAAI,KAAK,CAAC;IAAAC,UAAA,GAAA5D,cAAA,CAAA0D,UAAA;IAAlFC,gBAAgB,GAAAC,UAAA;IAAEC,mBAAmB,GAAAD,UAAA;EAC5C,IAAAE,UAAA,GAAwC,IAAAZ,eAAQ,EAC5CJ,KAAK,CAACiB,YAAY,IAAIjB,KAAK,CAACkB,mBAAmB,IAAI,EACvD,CAAC;IAAAC,UAAA,GAAAjE,cAAA,CAAA8D,UAAA;IAFMC,YAAY,GAAAE,UAAA;IAAEC,eAAe,GAAAD,UAAA;EAGpC,IAAME,QAAQ,GAAG,IAAAnB,aAAM,EAAC,CAAC;EACzB,IAAMoB,eAAe,GAAGC,iBAAK,CAACrB,MAAM,CAAC,CAAC;EAEtC,IAAMsB,kBAAkB,GAAGD,iBAAK,CAACrB,MAAM,CAAC,CAAC;EAEzC,IAAMuB,QAAQ,GAAG,IAAAC,cAAO,EAAC,YAAM;IAC3B,IAAID,QAAQ,GAAG,EAAE;IACjB,IAAME,QAAQ,GAAG,CAAA7B,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAE8B,KAAK,KAAI,OAAO;IAC7C,IAAMC,aAAY,GAAG,SAAfA,YAAYA,CAAGC,IAAI,EAAI;MACzB,KAAK,IAAIpH,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGoH,IAAI,CAAC9G,MAAM,EAAEN,CAAC,EAAE,EAAE;QAClC,IAAMoE,IAAI,GAAGgD,IAAI,CAACpH,CAAC,CAAC;QACpB,IAAQ8D,GAAG,GAAKM,IAAI,CAAZN,GAAG;QACXiD,QAAQ,CAACrF,IAAI,CAAC;UAAEoC,GAAG,EAAHA,GAAG;UAAEoD,KAAK,EAAE9C,IAAI,CAAC6C,QAAQ;QAAE,CAAC,CAAC;QAC7C,IAAI7C,IAAI,CAACC,QAAQ,EAAE;UACf8C,aAAY,CAAC/C,IAAI,CAACC,QAAQ,CAAC;QAC/B;MACJ;IACJ,CAAC;IACD8C,aAAY,CAACnC,QAAQ,CAAC;IACtB,OAAO+B,QAAQ;EACnB,CAAC,EAAE,CAAC/B,QAAQ,CAAC,CAAC;EAEd,IAAAqC,gBAAS,EAAC,YAAM;IACZ,IAAI,cAAc,IAAI/B,KAAK,EAAE;MACzBoB,eAAe,CAACpB,KAAK,CAACiB,YAAY,CAAC;IACvC;EACJ,CAAC,EAAE,CAACjB,KAAK,CAACiB,YAAY,CAAC,CAAC;EAExB,IAAAc,gBAAS,EAAC,YAAM;IACZ,IAAI,cAAc,IAAI/B,KAAK,EAAE;MACzBW,eAAe,CAACX,KAAK,CAACU,YAAY,CAAC;IACvC;EACJ,CAAC,EAAE,CAACV,KAAK,CAACU,YAAY,CAAC,CAAC;EAExB,IAAMsB,QAAQ,GAAG,SAAXA,QAAQA,CAAIC,eAAe,EAAEC,IAAI,EAAK;IAAA,IAAAC,eAAA;IACxCpB,mBAAmB,CAAC,KAAK,CAAC;IAC1B,CAAAoB,eAAA,GAAAnC,KAAK,CAACgC,QAAQ,cAAAG,eAAA,eAAdA,eAAA,CAAA1H,IAAA,CAAAuF,KAAK,EAAYiC,eAAe,EAAEC,IAAI,CAAC;IACvC,IAAI,EAAE,cAAc,IAAIlC,KAAK,CAAC,EAAE;MAC5BW,eAAe,CAACsB,eAAe,CAAC;IACpC;EACJ,CAAC;EAED,IAAAG,UAAA,GAAsC,IAAAhC,eAAQ,EAACV,QAAQ,CAAC;IAAA2C,WAAA,GAAAnF,cAAA,CAAAkF,UAAA;IAAjDE,WAAW,GAAAD,WAAA;IAAEE,cAAc,GAAAF,WAAA;EAClC,IAAAN,gBAAS,EAAC,YAAM;IACZ,IAAIrC,QAAQ,aAARA,QAAQ,eAARA,QAAQ,CAAE1E,MAAM,EAAE;MAClBwH,cAAc,CAACnB,QAAQ,CAACoB,OAAO,GAAGpB,QAAQ,CAACoB,OAAO,CAACC,KAAK,CAAC/F,KAAK,GAAG,EAAE,CAAC;IACxE;EACJ,CAAC,EAAE,CAAC+C,QAAQ,CAAC,CAAC;EACd,IAAM8C,cAAc,GAAG,IAAAG,qBAAa,EAAC,YAAsB;IAAA,IAArBC,WAAW,GAAA7H,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA4D,SAAA,GAAA5D,SAAA,MAAG,EAAE;IAClD,IAAMuH,WAAW,GAAG,IAAAO,qBAAa,EAACnD,QAAQ,EAAE;MACxCoD,UAAU,WAAVA,UAAUA,CAACC,IAAI,EAAE;QACb,IAAMpB,QAAQ,GAAG,CAAA7B,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAE8B,KAAK,KAAI,OAAO;QAC7C,IAAMoB,QAAQ,GAAGD,IAAI,CAACpB,QAAQ,CAAC,IAAI,EAAE;QACrC,IAAMsB,KAAK,GAAGD,QAAQ,CAACE,OAAO,CAACN,WAAW,CAAC;QAC3C,IAAMO,SAAS,GAAGH,QAAQ,CAACI,SAAS,CAAC,CAAC,EAAEH,KAAK,CAAC;QAC9C,IAAMI,QAAQ,GAAGL,QAAQ,CAAC7E,KAAK,CAAC8E,KAAK,GAAGL,WAAW,CAAC5H,MAAM,CAAC;QAC3D,IAAMsI,SAAS,GAAGvD,cAAc,GAAGA,cAAc,CAACgD,IAAI,CAAC,GAAG,EAAE;QAC5D,IAAMnB,KAAK,GACPqB,KAAK,GAAG,CAAC,CAAC,gBACNpK,MAAA,YAAA0K,aAAA;UAAMD,SAAS,EAAEA;QAAU,GACtBH,SAAS,eACVtK,MAAA,YAAA0K,aAAA;UAAMD,SAAS,KAAAE,MAAA,CAAKlE,SAAS;QAAgB,GAAEsD,WAAkB,CAAC,EACjES,QACC,CAAC,gBAEPxK,MAAA,YAAA0K,aAAA;UAAMD,SAAS,EAAEA;QAAU,GAAEN,QAAe,CAC/C;QAEL,OAAA3G,aAAA,CAAAA,aAAA,KACO0G,IAAI,OAAAxG,eAAA,CAAAA,eAAA,CAAAA,eAAA,KACNoF,QAAQ,EAAGC,KAAK,UACZmB,IAAI,CAACvE,GAAG,eACbwE,QAAQ;MAEhB,CAAC;MACDS,UAAU,WAAVA,UAAUA,CAACV,IAAI,EAAE;QACb,OAAOA,IAAI,CAACC,QAAQ,CAACE,OAAO,CAACN,WAAW,CAAC,GAAG,CAAC,CAAC;MAClD;IACJ,CAAC,CAAC;IACF,OAAOL,cAAc,CAACD,WAAW,CAAC;EACtC,CAAC,CAAC;EACF,IAAAoB,cAAA,GAA0B,IAAAC,qBAAa,EACnC,UAAAhH,KAAK,EAAI;MAAA,IAAAiH,gBAAA;MACL,IAAM3B,eAAe,GAAGR,QAAQ,CAC3BoC,GAAG,CAAC,UAAAd,IAAI,EAAI;QACT,IAAIA,IAAI,CAACnB,KAAK,CAACsB,OAAO,CAACvG,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE;UAChC,OAAO4B,aAAY,CAACwE,IAAI,CAACvE,GAAG,EAAEkB,QAAQ,CAAC;QAC3C;QACA,OAAO,IAAI;MACf,CAAC,CAAC,CACDxD,MAAM,CAAC,UAAC6G,IAAI,EAAErI,CAAC,EAAEoJ,IAAI;QAAA,OAAKf,IAAI,IAAIe,IAAI,CAACZ,OAAO,CAACH,IAAI,CAAC,KAAKrI,CAAC;MAAA,EAAC;MAChEqG,mBAAmB,CAAC,IAAI,CAAC;MACzByB,cAAc,CAAC7F,KAAK,CAAC;MACrB,CAAAiH,gBAAA,GAAA5D,KAAK,CAACgC,QAAQ,cAAA4B,gBAAA,eAAdA,gBAAA,CAAAnJ,IAAA,CAAAuF,KAAK,EAAYiC,eAAe,CAAC;MACjC,IAAI,EAAE,cAAc,IAAIjC,KAAK,CAAC,EAAE;QAC5BW,eAAe,CAACsB,eAAe,CAAC;MACpC;IACJ,CAAC,EACD;MACI8B,IAAI,EAAE;IACV,CACJ,CAAC;IApBYC,QAAQ,GAAAN,cAAA,CAAbO,GAAG;EAsBX,IAAAC,0BAAmB,EAAC9E,GAAG,EAAE;IAAA,OAAO;MAC5B4E,QAAQ,EAARA;IACJ,CAAC;EAAA,CAAC,CAAC;EAEH,IAAAjC,gBAAS,EAAC,YAAM;IACZ,IAAMoC,cAAc,GAAG,IAAIC,cAAc,CAAC,YAAM;MAC5C7D,SAAS,CAACN,OAAO,CAACwC,OAAO,CAAC4B,YAAY,CAAC;IAC3C,CAAC,CAAC;IACF,IAAIpE,OAAO,CAACwC,OAAO,EAAE;MACjB0B,cAAc,CAACG,OAAO,CAACrE,OAAO,CAACwC,OAAO,EAAE;QACpC8B,GAAG,EAAE;MACT,CAAC,CAAC;IACN;IACAhE,SAAS,CAACN,OAAO,CAACwC,OAAO,CAAC4B,YAAY,CAAC;IACvC,OAAO,YAAM;MACTF,cAAc,CAACK,UAAU,CAAC,CAAC;IAC/B,CAAC;EACL,CAAC,EAAE,EAAE,CAAC;EAEN,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,CAAI1I,IAAI,EAAE2I,KAAK,EAAK;IAAA,IAAAC,eAAA;IAC9B,IAAQC,QAAQ,GAAK5E,KAAK,CAAlB4E,QAAQ;IAChB,IAAQ9F,IAAI,GAAkB4F,KAAK,CAA3B5F,IAAI;MAAE+F,WAAW,GAAKH,KAAK,CAArBG,WAAW;IACzB,IAAAC,SAAA,GAAqBhG,IAAI,CAAjBN,GAAG;MAAHA,GAAG,GAAAsG,SAAA,cAAG,EAAE,GAAAA,SAAA;IAChB;;IAEA;IACA,IAAMC,QAAQ,GAAA1I,aAAA,CAAAA,aAAA,KACPqI,KAAK;MACRM,QAAQ,EAAE,IAAI,CAAE;IAAA,EACnB;;IAED;IACA,IAAMC,QAAQ,GAAG,CAAAJ,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEK,OAAO,MAAIL,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEM,OAAO;IAC7D,IAAMC,SAAS,GAAGP,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEQ,QAAQ;;IAEvC;IACA,IAAIC,eAAe;IACnB,IAAIV,QAAQ,IAAIK,QAAQ,EAAE;MACtB;MACAK,eAAe,GAAGvJ,IAAI;MACtBuF,eAAe,CAACmB,OAAO,GAAGjE,GAAG;MAC7BgD,kBAAkB,CAACiB,OAAO,GAAG6C,eAAe;MAC5CP,QAAQ,CAACQ,aAAa,GAAG,IAAAC,kCAA2B,EAAC9F,QAAQ,EAAE4F,eAAe,CAAC;IACnF,CAAC,MAAM,IAAIV,QAAQ,IAAIQ,SAAS,EAAE;MAC9B;MACAE,eAAe,GAAG5J,KAAK,CAACC,IAAI,CACxB,IAAI8J,GAAG,IAAAjC,MAAA,CAAAtI,kBAAA,CACCsG,kBAAkB,CAACiB,OAAO,IAAI,EAAE,GAAAvH,kBAAA,CACjC,IAAAwK,oBAAa,EAAC;QACbhG,QAAQ,EAARA,QAAQ;QACRgB,YAAY,EAAZA,YAAY;QACZiF,QAAQ,EAAEnH,GAAG;QACboH,MAAM,EAAEtE,eAAe,CAACmB;MAC5B,CAAC,CAAC,EACL,CACL,CAAC;MACDsC,QAAQ,CAACQ,aAAa,GAAG,IAAAC,kCAA2B,EAAC9F,QAAQ,EAAE4F,eAAe,CAAC;IACnF,CAAC,MAAM;MACH;MACAA,eAAe,GAAG,CAAC9G,GAAG,CAAC;MACvB8C,eAAe,CAACmB,OAAO,GAAGjE,GAAG;MAC7BgD,kBAAkB,CAACiB,OAAO,GAAG6C,eAAe;MAC5CP,QAAQ,CAACQ,aAAa,GAAG,IAAAC,kCAA2B,EAAC9F,QAAQ,EAAE4F,eAAe,CAAC;IACnF;IAEA,CAAAX,eAAA,GAAA3E,KAAK,CAACyE,QAAQ,cAAAE,eAAA,eAAdA,eAAA,CAAAlK,IAAA,CAAAuF,KAAK,EAAYsF,eAAe,EAAEP,QAAQ,CAAC;IAC3C,IAAI,EAAE,cAAc,IAAI/E,KAAK,CAAC,EAAE;MAC5BoB,eAAe,CAACkE,eAAe,CAAC;IACpC;EACJ,CAAC;EACD,oBACIzM,MAAA,YAAA0K,aAAA;IAAKD,SAAS,KAAAE,MAAA,CAAKlE,SAAS;EAAW,GAClCE,UAAU,iBACP3G,MAAA,YAAA0K,aAAA,CAACrK,KAAA,CAAA2M,KAAK;IACFC,KAAK,EAAE;MAAEC,YAAY,EAAE;IAAE,CAAE;IAC3BC,WAAW,EAAEpG,iBAAkB;IAC/BqG,QAAQ,EAAE,SAAVA,QAAQA,CAAEzM,CAAC;MAAA,OAAIwK,QAAQ,CAACxK,CAAC,CAAC0M,MAAM,CAACvJ,KAAK,CAAC;IAAA,CAAC;IACxCyC,GAAG,EAAEiC;EAAS,CACjB,CACJ,eACDxI,MAAA,YAAA0K,aAAA;IAAKD,SAAS,EAAEhE,SAAU;IAACF,GAAG,EAAEa;EAAQ,gBACpCpH,MAAA,YAAA0K,aAAA,CAACrK,KAAA,CAAAiN,IAAI,EAAAvL,QAAA,KACGoF,KAAK;IACTM,MAAM,EAAEA,MAAO;IACf8F,YAAY,eAAEvN,MAAA,YAAA0K,aAAA,CAACpK,MAAA,CAAAkN,YAAY,MAAE,CAAE;IAC/BC,QAAQ,EAAE;MAAEC,YAAY,EAAE;IAAM,CAAE;IAClCC,SAAS;IACT9G,QAAQ,EAAE4C,WAAY;IACtBN,QAAQ,EAAEA;EAAS,GACdtB,YAAY,CAAC1F,MAAM,KAAK,CAAC,IAAIgF,KAAK,CAACyG,gBAAgB,GAClD,CAAC,CAAC,GACF;IAAE/F,YAAY,EAAZA;EAAa,CAAC;IACtBG,gBAAgB,EAAEA,gBAAiB;IACnCI,YAAY,EAAEA,YAAa;IAC3BwD,QAAQ,EAAEA,QAAS;IACnB3E,UAAU,EAAEA,UAAW;IACvB4G,YAAY,EAAC,OAAO;IACpBC,WAAW,EAAE,SAAbA,WAAWA,CAAEC,QAAQ,EAAI;MACrB,IAAMjF,QAAQ,GAAG,CAAA7B,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAE8B,KAAK,KAAI,OAAO;MAC7C,IAAMA,KAAK,GAAGgF,QAAQ,CAACjF,QAAQ,CAAC;MAEhC,IAAI9B,cAAc,EAAE;QAChB,IAAMgH,QAAQ,GAAGhH,cAAc,CAAC+G,QAAQ,CAAC;QACzC,oBACI/N,MAAA,YAAA0K,aAAA;UAAKD,SAAS,KAAAE,MAAA,CAAKlE,SAAS;QAAa,gBACrCzG,MAAA,YAAA0K,aAAA,eAAO3B,KAAY,CAAC,eACpB/I,MAAA,YAAA0K,aAAA;UAAKD,SAAS,KAAAE,MAAA,CAAKlE,SAAS;QAAa,GACpCuH,QAAQ,CACJ3K,MAAM,CAAC,UAAA6G,IAAI;UAAA,OAAIA,IAAI,CAAC+D,OAAO;QAAA,EAAC,CAC5BjD,GAAG,CAAC,UAAAd,IAAI;UAAA,oBACLlK,MAAA,YAAA0K,aAAA,CAACrK,KAAA,CAAA6N,OAAO;YAACvI,GAAG,EAAEuE,IAAI,CAACiE,KAAM;YAACpF,KAAK,EAAEmB,IAAI,CAACiE;UAAM,gBACxCnO,MAAA,YAAA0K,aAAA;YACID,SAAS,KAAAE,MAAA,CAAKlE,SAAS,oBAAkB;YACzC2H,OAAO,EAAE,SAATA,OAAOA,CAAEzN,CAAC,EAAI;cACVA,CAAC,CAAC0N,eAAe,CAAC,CAAC;cACnBnE,IAAI,CAACkE,OAAO,IAAIlE,IAAI,CAACkE,OAAO,CAACL,QAAQ,CAAC;YAC1C;UAAE,GAED7D,IAAI,CAACoE,IACJ,CACD,CAAC;QAAA,CACb,CACJ,CACJ,CAAC;MAEd;MACA,OAAOvF,KAAK;IAChB;EAAE,EACL,CACA,CACJ,CAAC;AAEd,CAAC;AAED1C,OAAO,CAACkI,SAAS,GAAG;EAChB5H,UAAU,EAAE6H,qBAAS,CAACC,IAAI;EAC1BhI,SAAS,EAAE+H,qBAAS,CAACE,MAAM;EAC3B7H,QAAQ,EAAE2H,qBAAS,CAACG,KAAK;EACzBvG,YAAY,EAAEoG,qBAAS,CAACG,KAAK;EAC7BtG,mBAAmB,EAAEmG,qBAAS,CAACG,KAAK;EACpC9G,YAAY,EAAE2G,qBAAS,CAACC,IAAI;EAC5BtF,QAAQ,EAAEqF,qBAAS,CAACI,IAAI;EACxB7C,QAAQ,EAAEyC,qBAAS,CAACC,IAAI;EACxBzG,gBAAgB,EAAEwG,qBAAS,CAACC,IAAI;EAChC7C,QAAQ,EAAE4C,qBAAS,CAACI,IAAI;EACxB7H,iBAAiB,EAAEyH,qBAAS,CAACE,MAAM;EACnC1H,cAAc,EAAEwH,qBAAS,CAACI,IAAI;EAC9B1H,cAAc,EAAEsH,qBAAS,CAACI,IAAI;EAC9B3H,UAAU,EAAEuH,qBAAS,CAACG,KAAK;EAC3Bf,gBAAgB,EAAEY,qBAAS,CAACC;AAChC,CAAC;AAAC,IAAAI,QAAA,GAAAC,OAAA,2BAEa,IAAAC,iBAAU,EAAC1I,OAAO,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["getParentKey","key","tree","parentKey","node","children","found","undefined","VtxTree","ref","prefixCls","showSearch","treeData","searchPlaceholder","renderMenuList","fieldNames","titleClassName","props","treeRef","useRef","useState","height","setHeight","expandedKeys","setExpandedKeys","autoExpandParent","setAutoExpandParent","selectedKeys","defaultSelectedKeys","setSelectedKeys","inputRef","lastSelectedKey","React","cachedSelectedKeys","dataList","useMemo","titleKey","title","generateList","data","i","length","push","useEffect","onExpand","newExpandedKeys","info","newTreeData","setNewTreeData","filterTreeData","current","input","value","useMemoizedFn","searchValue","parseTreeData","renderNode","item","strTitle","index","indexOf","beforeStr","substring","afterStr","slice","className","filterNode","useDebounceFn","map","filter","self","wait","onSearch","run","useImperativeHandle","resizeObserver","ResizeObserver","offsetHeight","observe","box","disconnect","onSelect","keys","event","multiple","nativeEvent","newEvent","selected","ctrlPick","ctrlKey","metaKey","shiftPick","shiftKey","newSelectedKeys","selectedNodes","convertDirectoryKeysToNodes","Array","from","Set","calcRangeKeys","startKey","endKey","marginBottom","e","target","showLeafIcon","defaultExpandAll","nodeData","menuList","visible","label","stopPropagation","onClick","icon","propTypes","PropTypes","bool","string","array","func","forwardRef"],"sources":["vtx-tree/index.jsx"],"sourcesContent":["import React, {\r\n forwardRef,\r\n useEffect,\r\n useImperativeHandle,\r\n useMemo,\r\n useRef,\r\n useState,\r\n} from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { Input, Tooltip, Tree } from 'antd';\r\nimport { DownOutlined } from '@ant-design/icons';\r\nimport { calcRangeKeys, convertDirectoryKeysToNodes } from './utils';\r\nimport { useDebounceFn, useMemoizedFn } from 'ahooks';\r\nimport { parseTreeData } from '@vtx/utils';\r\n\r\nconst getParentKey = (key, tree, parentKey = null) => {\r\n for (const node of tree) {\r\n if (node.key === key) return parentKey;\r\n if (node.children) {\r\n const found = getParentKey(key, node.children, node.key);\r\n if (found !== undefined) return found;\r\n }\r\n }\r\n return undefined;\r\n};\r\nconst VtxTree = (\r\n {\r\n prefixCls = 'vtx-tree',\r\n showSearch = true,\r\n treeData = [],\r\n searchPlaceholder = '请输入要查询的关键字',\r\n renderMenuList,\r\n fieldNames,\r\n titleClassName,\r\n ...props\r\n },\r\n ref,\r\n) => {\r\n const treeRef = useRef();\r\n const [height, setHeight] = useState(0);\r\n const [expandedKeys, setExpandedKeys] = useState([]);\r\n const [autoExpandParent, setAutoExpandParent] = useState(props.autoExpandParent || false);\r\n const [selectedKeys, setSelectedKeys] = useState(\r\n props.selectedKeys || props.defaultSelectedKeys || [],\r\n );\r\n const inputRef = useRef();\r\n const lastSelectedKey = React.useRef();\r\n\r\n const cachedSelectedKeys = React.useRef();\r\n\r\n const dataList = useMemo(() => {\r\n let dataList = [];\r\n const titleKey = fieldNames?.title || 'title';\r\n const generateList = data => {\r\n for (let i = 0; i < data.length; i++) {\r\n const node = data[i];\r\n const { key } = node;\r\n dataList.push({ key, title: node[titleKey] });\r\n if (node.children) {\r\n generateList(node.children);\r\n }\r\n }\r\n };\r\n generateList(treeData);\r\n return dataList;\r\n }, [treeData]);\r\n\r\n useEffect(() => {\r\n if ('selectedKeys' in props) {\r\n setSelectedKeys(props.selectedKeys);\r\n }\r\n }, [props.selectedKeys]);\r\n\r\n useEffect(() => {\r\n if ('expandedKeys' in props) {\r\n setExpandedKeys(props.expandedKeys);\r\n }\r\n }, [props.expandedKeys]);\r\n\r\n const onExpand = (newExpandedKeys, info) => {\r\n setAutoExpandParent(false);\r\n props.onExpand?.(newExpandedKeys, info);\r\n if (!('expandedKeys' in props)) {\r\n setExpandedKeys(newExpandedKeys);\r\n }\r\n };\r\n\r\n const [newTreeData, setNewTreeData] = useState(treeData);\r\n useEffect(() => {\r\n if (treeData?.length) {\r\n filterTreeData(inputRef.current ? inputRef.current.input.value : '');\r\n }\r\n }, [treeData]);\r\n const filterTreeData = useMemoizedFn((searchValue = '') => {\r\n const newTreeData = parseTreeData(treeData, {\r\n renderNode(item) {\r\n const titleKey = fieldNames?.title || 'title';\r\n const strTitle = item[titleKey] || '';\r\n const index = strTitle.indexOf(searchValue);\r\n const beforeStr = strTitle.substring(0, index);\r\n const afterStr = strTitle.slice(index + searchValue.length);\r\n const className = titleClassName ? titleClassName(item) : '';\r\n const title =\r\n index > -1 ? (\r\n <span className={className}>\r\n {beforeStr}\r\n <span className={`${prefixCls}-search-value`}>{searchValue}</span>\r\n {afterStr}\r\n </span>\r\n ) : (\r\n <span className={className}>{strTitle}</span>\r\n );\r\n\r\n return {\r\n ...item,\r\n [titleKey]: title,\r\n key: item.key,\r\n strTitle,\r\n };\r\n },\r\n filterNode(item) {\r\n return item.strTitle.indexOf(searchValue) > -1;\r\n },\r\n });\r\n return setNewTreeData(newTreeData);\r\n });\r\n const { run: onSearch } = useDebounceFn(\r\n value => {\r\n const newExpandedKeys = dataList\r\n .map(item => {\r\n if (item.title.indexOf(value) > -1) {\r\n return getParentKey(item.key, treeData);\r\n }\r\n return null;\r\n })\r\n .filter((item, i, self) => item && self.indexOf(item) === i);\r\n setAutoExpandParent(true);\r\n filterTreeData(value);\r\n props.onExpand?.(newExpandedKeys);\r\n if (!('expandedKeys' in props)) {\r\n setExpandedKeys(newExpandedKeys);\r\n }\r\n },\r\n {\r\n wait: 300,\r\n },\r\n );\r\n\r\n useImperativeHandle(ref, () => ({\r\n onSearch,\r\n }));\r\n\r\n useEffect(() => {\r\n const resizeObserver = new ResizeObserver(() => {\r\n setHeight(treeRef.current.offsetHeight);\r\n });\r\n if (treeRef.current) {\r\n resizeObserver.observe(treeRef.current, {\r\n box: 'border-box',\r\n });\r\n }\r\n setHeight(treeRef.current.offsetHeight);\r\n return () => {\r\n resizeObserver.disconnect();\r\n };\r\n }, []);\r\n\r\n const onSelect = (keys, event) => {\r\n const { multiple } = props;\r\n const { node, nativeEvent } = event;\r\n const { key = '' } = node;\r\n // const newState: DirectoryTreeState = {};\r\n\r\n // We need wrap this event since some value is not same\r\n const newEvent = {\r\n ...event,\r\n selected: true, // Directory selected always true\r\n };\r\n\r\n // Windows / Mac single pick\r\n const ctrlPick = nativeEvent?.ctrlKey || nativeEvent?.metaKey;\r\n const shiftPick = nativeEvent?.shiftKey;\r\n\r\n // Generate new selected keys\r\n let newSelectedKeys;\r\n if (multiple && ctrlPick) {\r\n // Control click\r\n newSelectedKeys = keys;\r\n lastSelectedKey.current = key;\r\n cachedSelectedKeys.current = newSelectedKeys;\r\n newEvent.selectedNodes = convertDirectoryKeysToNodes(treeData, newSelectedKeys);\r\n } else if (multiple && shiftPick) {\r\n // Shift click\r\n newSelectedKeys = Array.from(\r\n new Set([\r\n ...(cachedSelectedKeys.current || []),\r\n ...calcRangeKeys({\r\n treeData,\r\n expandedKeys,\r\n startKey: key,\r\n endKey: lastSelectedKey.current,\r\n }),\r\n ]),\r\n );\r\n newEvent.selectedNodes = convertDirectoryKeysToNodes(treeData, newSelectedKeys);\r\n } else {\r\n // Single click\r\n newSelectedKeys = [key];\r\n lastSelectedKey.current = key;\r\n cachedSelectedKeys.current = newSelectedKeys;\r\n newEvent.selectedNodes = convertDirectoryKeysToNodes(treeData, newSelectedKeys);\r\n }\r\n\r\n props.onSelect?.(newSelectedKeys, newEvent);\r\n if (!('selectedKeys' in props)) {\r\n setSelectedKeys(newSelectedKeys);\r\n }\r\n };\r\n return (\r\n <div className={`${prefixCls}-wraaper`}>\r\n {showSearch && (\r\n <Input\r\n style={{ marginBottom: 8 }}\r\n placeholder={searchPlaceholder}\r\n onChange={e => onSearch(e.target.value)}\r\n ref={inputRef}\r\n />\r\n )}\r\n <div className={prefixCls} ref={treeRef}>\r\n <Tree\r\n {...props}\r\n height={height}\r\n switcherIcon={<DownOutlined />}\r\n showLine={{ showLeafIcon: false }}\r\n blockNode\r\n treeData={newTreeData}\r\n onExpand={onExpand}\r\n {...(expandedKeys.length === 0 && props.defaultExpandAll\r\n ? {}\r\n : { expandedKeys })}\r\n autoExpandParent={autoExpandParent}\r\n selectedKeys={selectedKeys}\r\n onSelect={onSelect}\r\n fieldNames={fieldNames}\r\n expandAction=\"click\"\r\n titleRender={nodeData => {\r\n const titleKey = fieldNames?.title || 'title';\r\n const title = nodeData[titleKey];\r\n\r\n if (renderMenuList) {\r\n const menuList = renderMenuList(nodeData);\r\n return (\r\n <div className={`${prefixCls}-menu-wrap`}>\r\n <span>{title}</span>\r\n <div className={`${prefixCls}-menu-list`}>\r\n {menuList\r\n .filter(item => item.visible)\r\n .map(item => (\r\n <Tooltip key={item.label} title={item.label}>\r\n <span\r\n className={`${prefixCls}-menu-item-icon`}\r\n onClick={e => {\r\n e.stopPropagation();\r\n item.onClick && item.onClick(nodeData);\r\n }}\r\n >\r\n {item.icon}\r\n </span>\r\n </Tooltip>\r\n ))}\r\n </div>\r\n </div>\r\n );\r\n }\r\n return title;\r\n }}\r\n />\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nVtxTree.propTypes = {\r\n showSearch: PropTypes.bool,\r\n prefixCls: PropTypes.string,\r\n treeData: PropTypes.array,\r\n selectedKeys: PropTypes.array,\r\n defaultSelectedKeys: PropTypes.array,\r\n expandedKeys: PropTypes.bool,\r\n onExpand: PropTypes.func,\r\n multiple: PropTypes.bool,\r\n autoExpandParent: PropTypes.bool,\r\n onSelect: PropTypes.func,\r\n searchPlaceholder: PropTypes.string,\r\n renderMenuList: PropTypes.func,\r\n titleClassName: PropTypes.func,\r\n fieldNames: PropTypes.array,\r\n defaultExpandAll: PropTypes.bool,\r\n};\r\n\r\nexport default forwardRef(VtxTree);\r\n"],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
 
3
3
  require("antd/lib/tree/style/index");
4
+
4
5
  require("antd/lib/input/style/css");
6
+
5
7
  require("./index.css");
6
8
  //# sourceMappingURL=css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"css.js","names":["require"],"sources":["vtx-tree/style/index.js"],"sourcesContent":["import 'antd/lib/tree/style/index';\r\nimport 'antd/lib/input/style';\r\nimport './index.less';\r\n"],"mappings":";;AAAAA,OAAA;AACAA,OAAA;AACAA,OAAA","ignoreList":[]}
1
+ {"version":3,"file":"css.js","names":[],"sources":["vtx-tree/style/index.js"],"sourcesContent":["import 'antd/lib/tree/style/index';\r\nimport 'antd/lib/input/style';\r\nimport './index.less';\r\n"],"mappings":";;AAAA;;AACA;;AACA"}
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
 
3
3
  require("antd/lib/tree/style/index");
4
+
4
5
  require("antd/lib/input/style");
6
+
5
7
  require("./index.less");
6
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["require"],"sources":["vtx-tree/style/index.js"],"sourcesContent":["import 'antd/lib/tree/style/index';\r\nimport 'antd/lib/input/style';\r\nimport './index.less';\r\n"],"mappings":";;AAAAA,OAAA;AACAA,OAAA;AACAA,OAAA","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":[],"sources":["vtx-tree/style/index.js"],"sourcesContent":["import 'antd/lib/tree/style/index';\r\nimport 'antd/lib/input/style';\r\nimport './index.less';\r\n"],"mappings":";;AAAA;;AACA;;AACA"}
@@ -5,52 +5,68 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.calcRangeKeys = calcRangeKeys;
7
7
  exports.convertDirectoryKeysToNodes = convertDirectoryKeysToNodes;
8
- function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
8
+
9
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
10
+
9
11
  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."); }
10
- 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; } }
11
- function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
12
- function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
13
- 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; }
12
+
13
+ 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); }
14
+
15
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
16
+
17
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
18
+
19
+ 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; }
20
+
14
21
  function traverseNodesKey(treeData, callback) {
15
22
  function processNode(dataNode) {
16
23
  var key = dataNode.key,
17
- children = dataNode.children;
24
+ children = dataNode.children;
25
+
18
26
  if (callback(key, dataNode) !== false) {
19
27
  traverseNodesKey(children || [], callback);
20
28
  }
21
29
  }
30
+
22
31
  treeData.forEach(processNode);
23
32
  }
33
+
24
34
  var Record = {
25
35
  None: 0,
26
36
  Start: 1,
27
37
  End: 2
28
38
  };
29
-
30
39
  /** 计算选中范围,只考虑expanded情况以优化性能 */
40
+
31
41
  function calcRangeKeys(_ref) {
32
42
  var treeData = _ref.treeData,
33
- expandedKeys = _ref.expandedKeys,
34
- startKey = _ref.startKey,
35
- endKey = _ref.endKey;
43
+ expandedKeys = _ref.expandedKeys,
44
+ startKey = _ref.startKey,
45
+ endKey = _ref.endKey;
36
46
  var keys = [];
37
47
  var record = Record.None;
48
+
38
49
  if (startKey && startKey === endKey) {
39
50
  return [startKey];
40
51
  }
52
+
41
53
  if (!startKey || !endKey) {
42
54
  return [];
43
55
  }
56
+
44
57
  function matchKey(key) {
45
58
  return key === startKey || key === endKey;
46
59
  }
60
+
47
61
  traverseNodesKey(treeData, function (key) {
48
62
  if (record === Record.End) {
49
63
  return false;
50
64
  }
65
+
51
66
  if (matchKey(key)) {
52
67
  // Match test
53
68
  keys.push(key);
69
+
54
70
  if (record === Record.None) {
55
71
  record = Record.Start;
56
72
  } else if (record === Record.Start) {
@@ -61,19 +77,24 @@ function calcRangeKeys(_ref) {
61
77
  // Append selection
62
78
  keys.push(key);
63
79
  }
80
+
64
81
  return expandedKeys.includes(key);
65
82
  });
66
83
  return keys;
67
84
  }
85
+
68
86
  function convertDirectoryKeysToNodes(treeData, keys) {
69
87
  var restKeys = _toConsumableArray(keys);
88
+
70
89
  var nodes = [];
71
90
  traverseNodesKey(treeData, function (key, node) {
72
91
  var index = restKeys.indexOf(key);
92
+
73
93
  if (index !== -1) {
74
94
  nodes.push(node);
75
95
  restKeys.splice(index, 1);
76
96
  }
97
+
77
98
  return !!restKeys.length;
78
99
  });
79
100
  return nodes;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","names":["traverseNodesKey","treeData","callback","processNode","dataNode","key","children","forEach","Record","None","Start","End","calcRangeKeys","_ref","expandedKeys","startKey","endKey","keys","record","matchKey","push","includes","convertDirectoryKeysToNodes","restKeys","_toConsumableArray","nodes","node","index","indexOf","splice","length"],"sources":["vtx-tree/utils.js"],"sourcesContent":["function traverseNodesKey(treeData, callback) {\r\n function processNode(dataNode) {\r\n const { key, children } = dataNode;\r\n if (callback(key, dataNode) !== false) {\r\n traverseNodesKey(children || [], callback);\r\n }\r\n }\r\n\r\n treeData.forEach(processNode);\r\n}\r\n\r\nconst Record = {\r\n None: 0,\r\n Start: 1,\r\n End: 2,\r\n};\r\n\r\n/** 计算选中范围,只考虑expanded情况以优化性能 */\r\nexport function calcRangeKeys({ treeData, expandedKeys, startKey, endKey }) {\r\n const keys = [];\r\n let record = Record.None;\r\n\r\n if (startKey && startKey === endKey) {\r\n return [startKey];\r\n }\r\n if (!startKey || !endKey) {\r\n return [];\r\n }\r\n\r\n function matchKey(key) {\r\n return key === startKey || key === endKey;\r\n }\r\n\r\n traverseNodesKey(treeData, key => {\r\n if (record === Record.End) {\r\n return false;\r\n }\r\n\r\n if (matchKey(key)) {\r\n // Match test\r\n keys.push(key);\r\n\r\n if (record === Record.None) {\r\n record = Record.Start;\r\n } else if (record === Record.Start) {\r\n record = Record.End;\r\n return false;\r\n }\r\n } else if (record === Record.Start) {\r\n // Append selection\r\n keys.push(key);\r\n }\r\n return expandedKeys.includes(key);\r\n });\r\n\r\n return keys;\r\n}\r\n\r\nexport function convertDirectoryKeysToNodes(treeData, keys) {\r\n const restKeys = [...keys];\r\n const nodes = [];\r\n traverseNodesKey(treeData, (key, node) => {\r\n const index = restKeys.indexOf(key);\r\n if (index !== -1) {\r\n nodes.push(node);\r\n restKeys.splice(index, 1);\r\n }\r\n\r\n return !!restKeys.length;\r\n });\r\n return nodes;\r\n}\r\n"],"mappings":";;;;;;;;;;;;;AAAA,SAASA,gBAAgBA,CAACC,QAAQ,EAAEC,QAAQ,EAAE;EAC1C,SAASC,WAAWA,CAACC,QAAQ,EAAE;IAC3B,IAAQC,GAAG,GAAeD,QAAQ,CAA1BC,GAAG;MAAEC,QAAQ,GAAKF,QAAQ,CAArBE,QAAQ;IACrB,IAAIJ,QAAQ,CAACG,GAAG,EAAED,QAAQ,CAAC,KAAK,KAAK,EAAE;MACnCJ,gBAAgB,CAACM,QAAQ,IAAI,EAAE,EAAEJ,QAAQ,CAAC;IAC9C;EACJ;EAEAD,QAAQ,CAACM,OAAO,CAACJ,WAAW,CAAC;AACjC;AAEA,IAAMK,MAAM,GAAG;EACXC,IAAI,EAAE,CAAC;EACPC,KAAK,EAAE,CAAC;EACRC,GAAG,EAAE;AACT,CAAC;;AAED;AACO,SAASC,aAAaA,CAAAC,IAAA,EAA+C;EAAA,IAA5CZ,QAAQ,GAAAY,IAAA,CAARZ,QAAQ;IAAEa,YAAY,GAAAD,IAAA,CAAZC,YAAY;IAAEC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;IAAEC,MAAM,GAAAH,IAAA,CAANG,MAAM;EACpE,IAAMC,IAAI,GAAG,EAAE;EACf,IAAIC,MAAM,GAAGV,MAAM,CAACC,IAAI;EAExB,IAAIM,QAAQ,IAAIA,QAAQ,KAAKC,MAAM,EAAE;IACjC,OAAO,CAACD,QAAQ,CAAC;EACrB;EACA,IAAI,CAACA,QAAQ,IAAI,CAACC,MAAM,EAAE;IACtB,OAAO,EAAE;EACb;EAEA,SAASG,QAAQA,CAACd,GAAG,EAAE;IACnB,OAAOA,GAAG,KAAKU,QAAQ,IAAIV,GAAG,KAAKW,MAAM;EAC7C;EAEAhB,gBAAgB,CAACC,QAAQ,EAAE,UAAAI,GAAG,EAAI;IAC9B,IAAIa,MAAM,KAAKV,MAAM,CAACG,GAAG,EAAE;MACvB,OAAO,KAAK;IAChB;IAEA,IAAIQ,QAAQ,CAACd,GAAG,CAAC,EAAE;MACf;MACAY,IAAI,CAACG,IAAI,CAACf,GAAG,CAAC;MAEd,IAAIa,MAAM,KAAKV,MAAM,CAACC,IAAI,EAAE;QACxBS,MAAM,GAAGV,MAAM,CAACE,KAAK;MACzB,CAAC,MAAM,IAAIQ,MAAM,KAAKV,MAAM,CAACE,KAAK,EAAE;QAChCQ,MAAM,GAAGV,MAAM,CAACG,GAAG;QACnB,OAAO,KAAK;MAChB;IACJ,CAAC,MAAM,IAAIO,MAAM,KAAKV,MAAM,CAACE,KAAK,EAAE;MAChC;MACAO,IAAI,CAACG,IAAI,CAACf,GAAG,CAAC;IAClB;IACA,OAAOS,YAAY,CAACO,QAAQ,CAAChB,GAAG,CAAC;EACrC,CAAC,CAAC;EAEF,OAAOY,IAAI;AACf;AAEO,SAASK,2BAA2BA,CAACrB,QAAQ,EAAEgB,IAAI,EAAE;EACxD,IAAMM,QAAQ,GAAAC,kBAAA,CAAOP,IAAI,CAAC;EAC1B,IAAMQ,KAAK,GAAG,EAAE;EAChBzB,gBAAgB,CAACC,QAAQ,EAAE,UAACI,GAAG,EAAEqB,IAAI,EAAK;IACtC,IAAMC,KAAK,GAAGJ,QAAQ,CAACK,OAAO,CAACvB,GAAG,CAAC;IACnC,IAAIsB,KAAK,KAAK,CAAC,CAAC,EAAE;MACdF,KAAK,CAACL,IAAI,CAACM,IAAI,CAAC;MAChBH,QAAQ,CAACM,MAAM,CAACF,KAAK,EAAE,CAAC,CAAC;IAC7B;IAEA,OAAO,CAAC,CAACJ,QAAQ,CAACO,MAAM;EAC5B,CAAC,CAAC;EACF,OAAOL,KAAK;AAChB","ignoreList":[]}
1
+ {"version":3,"file":"utils.js","names":["traverseNodesKey","treeData","callback","processNode","dataNode","key","children","forEach","Record","None","Start","End","calcRangeKeys","expandedKeys","startKey","endKey","keys","record","matchKey","push","includes","convertDirectoryKeysToNodes","restKeys","nodes","node","index","indexOf","splice","length"],"sources":["vtx-tree/utils.js"],"sourcesContent":["function traverseNodesKey(treeData, callback) {\r\n function processNode(dataNode) {\r\n const { key, children } = dataNode;\r\n if (callback(key, dataNode) !== false) {\r\n traverseNodesKey(children || [], callback);\r\n }\r\n }\r\n\r\n treeData.forEach(processNode);\r\n}\r\n\r\nconst Record = {\r\n None: 0,\r\n Start: 1,\r\n End: 2,\r\n};\r\n\r\n/** 计算选中范围,只考虑expanded情况以优化性能 */\r\nexport function calcRangeKeys({ treeData, expandedKeys, startKey, endKey }) {\r\n const keys = [];\r\n let record = Record.None;\r\n\r\n if (startKey && startKey === endKey) {\r\n return [startKey];\r\n }\r\n if (!startKey || !endKey) {\r\n return [];\r\n }\r\n\r\n function matchKey(key) {\r\n return key === startKey || key === endKey;\r\n }\r\n\r\n traverseNodesKey(treeData, key => {\r\n if (record === Record.End) {\r\n return false;\r\n }\r\n\r\n if (matchKey(key)) {\r\n // Match test\r\n keys.push(key);\r\n\r\n if (record === Record.None) {\r\n record = Record.Start;\r\n } else if (record === Record.Start) {\r\n record = Record.End;\r\n return false;\r\n }\r\n } else if (record === Record.Start) {\r\n // Append selection\r\n keys.push(key);\r\n }\r\n return expandedKeys.includes(key);\r\n });\r\n\r\n return keys;\r\n}\r\n\r\nexport function convertDirectoryKeysToNodes(treeData, keys) {\r\n const restKeys = [...keys];\r\n const nodes = [];\r\n traverseNodesKey(treeData, (key, node) => {\r\n const index = restKeys.indexOf(key);\r\n if (index !== -1) {\r\n nodes.push(node);\r\n restKeys.splice(index, 1);\r\n }\r\n\r\n return !!restKeys.length;\r\n });\r\n return nodes;\r\n}\r\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,SAASA,gBAAT,CAA0BC,QAA1B,EAAoCC,QAApC,EAA8C;EAC1C,SAASC,WAAT,CAAqBC,QAArB,EAA+B;IAC3B,IAAQC,GAAR,GAA0BD,QAA1B,CAAQC,GAAR;IAAA,IAAaC,QAAb,GAA0BF,QAA1B,CAAaE,QAAb;;IACA,IAAIJ,QAAQ,CAACG,GAAD,EAAMD,QAAN,CAAR,KAA4B,KAAhC,EAAuC;MACnCJ,gBAAgB,CAACM,QAAQ,IAAI,EAAb,EAAiBJ,QAAjB,CAAhB;IACH;EACJ;;EAEDD,QAAQ,CAACM,OAAT,CAAiBJ,WAAjB;AACH;;AAED,IAAMK,MAAM,GAAG;EACXC,IAAI,EAAE,CADK;EAEXC,KAAK,EAAE,CAFI;EAGXC,GAAG,EAAE;AAHM,CAAf;AAMA;;AACO,SAASC,aAAT,OAAqE;EAAA,IAA5CX,QAA4C,QAA5CA,QAA4C;EAAA,IAAlCY,YAAkC,QAAlCA,YAAkC;EAAA,IAApBC,QAAoB,QAApBA,QAAoB;EAAA,IAAVC,MAAU,QAAVA,MAAU;EACxE,IAAMC,IAAI,GAAG,EAAb;EACA,IAAIC,MAAM,GAAGT,MAAM,CAACC,IAApB;;EAEA,IAAIK,QAAQ,IAAIA,QAAQ,KAAKC,MAA7B,EAAqC;IACjC,OAAO,CAACD,QAAD,CAAP;EACH;;EACD,IAAI,CAACA,QAAD,IAAa,CAACC,MAAlB,EAA0B;IACtB,OAAO,EAAP;EACH;;EAED,SAASG,QAAT,CAAkBb,GAAlB,EAAuB;IACnB,OAAOA,GAAG,KAAKS,QAAR,IAAoBT,GAAG,KAAKU,MAAnC;EACH;;EAEDf,gBAAgB,CAACC,QAAD,EAAW,UAAAI,GAAG,EAAI;IAC9B,IAAIY,MAAM,KAAKT,MAAM,CAACG,GAAtB,EAA2B;MACvB,OAAO,KAAP;IACH;;IAED,IAAIO,QAAQ,CAACb,GAAD,CAAZ,EAAmB;MACf;MACAW,IAAI,CAACG,IAAL,CAAUd,GAAV;;MAEA,IAAIY,MAAM,KAAKT,MAAM,CAACC,IAAtB,EAA4B;QACxBQ,MAAM,GAAGT,MAAM,CAACE,KAAhB;MACH,CAFD,MAEO,IAAIO,MAAM,KAAKT,MAAM,CAACE,KAAtB,EAA6B;QAChCO,MAAM,GAAGT,MAAM,CAACG,GAAhB;QACA,OAAO,KAAP;MACH;IACJ,CAVD,MAUO,IAAIM,MAAM,KAAKT,MAAM,CAACE,KAAtB,EAA6B;MAChC;MACAM,IAAI,CAACG,IAAL,CAAUd,GAAV;IACH;;IACD,OAAOQ,YAAY,CAACO,QAAb,CAAsBf,GAAtB,CAAP;EACH,CApBe,CAAhB;EAsBA,OAAOW,IAAP;AACH;;AAEM,SAASK,2BAAT,CAAqCpB,QAArC,EAA+Ce,IAA/C,EAAqD;EACxD,IAAMM,QAAQ,sBAAON,IAAP,CAAd;;EACA,IAAMO,KAAK,GAAG,EAAd;EACAvB,gBAAgB,CAACC,QAAD,EAAW,UAACI,GAAD,EAAMmB,IAAN,EAAe;IACtC,IAAMC,KAAK,GAAGH,QAAQ,CAACI,OAAT,CAAiBrB,GAAjB,CAAd;;IACA,IAAIoB,KAAK,KAAK,CAAC,CAAf,EAAkB;MACdF,KAAK,CAACJ,IAAN,CAAWK,IAAX;MACAF,QAAQ,CAACK,MAAT,CAAgBF,KAAhB,EAAuB,CAAvB;IACH;;IAED,OAAO,CAAC,CAACH,QAAQ,CAACM,MAAlB;EACH,CARe,CAAhB;EASA,OAAOL,KAAP;AACH"}
@@ -1,84 +1,123 @@
1
1
  "use strict";
2
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); }
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
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports["default"] = void 0;
9
+
8
10
  var _antd = require("antd");
11
+
9
12
  var _react = _interopRequireWildcard(require("react"));
13
+
10
14
  var _propTypes = _interopRequireDefault(require("prop-types"));
15
+
11
16
  var _icons = require("@ant-design/icons");
17
+
12
18
  var _classnames = _interopRequireDefault(require("classnames"));
19
+
13
20
  var _lodash = require("lodash");
21
+
14
22
  var _excluded = ["multiple", "treeData", "placeholder", "prefixCls", "treeCheckable", "disabled", "style"],
15
- _excluded2 = ["children"];
16
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
17
- 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); }
18
- 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; }
19
- function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
20
- function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
23
+ _excluded2 = ["children"];
24
+
25
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
26
+
27
+ 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); }
28
+
29
+ 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; }
30
+
31
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
32
+
33
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
34
+
21
35
  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."); }
22
- function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
23
- function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
24
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
25
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
26
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
27
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
28
- function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
29
- function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
36
+
37
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
38
+
39
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
40
+
41
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
42
+
43
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
44
+
45
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
46
+
47
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
48
+
30
49
  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."); }
31
- 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; } }
32
- 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; }
33
- 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; } }
34
- function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
35
- function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var s = Object.getOwnPropertySymbols(e); for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
36
- function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.includes(n)) continue; t[n] = r[n]; } return t; }
50
+
51
+ 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); }
52
+
53
+ 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; }
54
+
55
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
56
+
57
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
58
+
59
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
60
+
61
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
62
+
37
63
  var VtxTreeSelect = function VtxTreeSelect(_ref) {
38
64
  var multiple = _ref.multiple,
39
- treeData = _ref.treeData,
40
- placeholder = _ref.placeholder,
41
- _ref$prefixCls = _ref.prefixCls,
42
- prefixCls = _ref$prefixCls === void 0 ? 'vtx-tree-select' : _ref$prefixCls,
43
- treeCheckable = _ref.treeCheckable,
44
- _ref$disabled = _ref.disabled,
45
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
46
- style = _ref.style,
47
- props = _objectWithoutProperties(_ref, _excluded);
65
+ treeData = _ref.treeData,
66
+ placeholder = _ref.placeholder,
67
+ _ref$prefixCls = _ref.prefixCls,
68
+ prefixCls = _ref$prefixCls === void 0 ? 'vtx-tree-select' : _ref$prefixCls,
69
+ treeCheckable = _ref.treeCheckable,
70
+ _ref$disabled = _ref.disabled,
71
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
72
+ style = _ref.style,
73
+ props = _objectWithoutProperties(_ref, _excluded);
74
+
48
75
  var suffixIconObj = {};
76
+
49
77
  var _useState = (0, _react.useState)(0),
50
- _useState2 = _slicedToArray(_useState, 2),
51
- popWidth = _useState2[0],
52
- setPopWidth = _useState2[1];
78
+ _useState2 = _slicedToArray(_useState, 2),
79
+ popWidth = _useState2[0],
80
+ setPopWidth = _useState2[1];
81
+
53
82
  var keyNodesMapping = (0, _react.useMemo)(function () {
54
83
  var keyNodesMapping = {};
84
+
55
85
  (function genNodes(nodes) {
56
86
  nodes.map(function (item) {
57
87
  var children = item.children,
58
- rest = _objectWithoutProperties(item, _excluded2);
88
+ rest = _objectWithoutProperties(item, _excluded2);
89
+
59
90
  keyNodesMapping[item.value || item.key] = _objectSpread(_objectSpread({}, rest), {}, {
60
91
  id: item.value || item.key
61
92
  });
93
+
62
94
  if (Array.isArray(children) && children.length > 0) {
63
95
  genNodes(children);
64
96
  }
65
97
  });
66
98
  })(treeData || []);
99
+
67
100
  return keyNodesMapping;
68
101
  }, [treeData]);
102
+
69
103
  var clear = function clear() {
70
104
  var _props$onChange;
71
- (_props$onChange = props.onChange) === null || _props$onChange === void 0 || _props$onChange.call(props, [], [], {});
105
+
106
+ (_props$onChange = props.onChange) === null || _props$onChange === void 0 ? void 0 : _props$onChange.call(props, [], [], {});
72
107
  };
108
+
73
109
  var clearKey = function clearKey(id) {
74
110
  var _props$onChange2;
111
+
75
112
  var newValue = _toConsumableArray(props.value);
113
+
76
114
  (0, _lodash.pull)(newValue, id);
77
115
  var label = newValue.map(function (item) {
78
116
  return keyNodesMapping[item].title;
79
117
  });
80
- (_props$onChange2 = props.onChange) === null || _props$onChange2 === void 0 || _props$onChange2.call(props, newValue, label, {});
118
+ (_props$onChange2 = props.onChange) === null || _props$onChange2 === void 0 ? void 0 : _props$onChange2.call(props, newValue, label, {});
81
119
  };
120
+
82
121
  var selectedNodes = (0, _react.useMemo)(function () {
83
122
  var value_arr = function (val) {
84
123
  if (Array.isArray(val)) {
@@ -89,6 +128,7 @@ var VtxTreeSelect = function VtxTreeSelect(_ref) {
89
128
  return [];
90
129
  }
91
130
  }(props.value);
131
+
92
132
  var selectedNodes = value_arr.filter(function (k) {
93
133
  return k in keyNodesMapping;
94
134
  }).map(function (item) {
@@ -103,6 +143,7 @@ var VtxTreeSelect = function VtxTreeSelect(_ref) {
103
143
  (0, _react.useEffect)(function () {
104
144
  setPopWidth(ref.current.offsetWidth);
105
145
  }, []);
146
+
106
147
  if (multiple || treeCheckable) {
107
148
  suffixIconObj.suffixIcon = /*#__PURE__*/_react["default"].createElement(_antd.Popover, {
108
149
  content: /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("div", {
@@ -144,6 +185,7 @@ var VtxTreeSelect = function VtxTreeSelect(_ref) {
144
185
  }
145
186
  }));
146
187
  }
188
+
147
189
  return /*#__PURE__*/_react["default"].createElement("div", {
148
190
  ref: ref,
149
191
  style: style
@@ -170,6 +212,7 @@ var VtxTreeSelect = function VtxTreeSelect(_ref) {
170
212
  }
171
213
  }, suffixIconObj)));
172
214
  };
215
+
173
216
  VtxTreeSelect.propTypes = {
174
217
  multiple: _propTypes["default"].bool,
175
218
  treeCheckable: _propTypes["default"].bool,
@@ -181,5 +224,6 @@ VtxTreeSelect.propTypes = {
181
224
  onChange: _propTypes["default"].func,
182
225
  value: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].array])
183
226
  };
184
- var _default = exports["default"] = VtxTreeSelect;
227
+ var _default = VtxTreeSelect;
228
+ exports["default"] = _default;
185
229
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_antd","require","_react","_interopRequireWildcard","_propTypes","_interopRequireDefault","_icons","_classnames","_lodash","_excluded","_excluded2","e","__esModule","_getRequireWildcardCache","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","Symbol","iterator","Array","from","isArray","_arrayLikeToArray","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","toPrimitive","String","Number","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","toString","slice","constructor","name","test","l","f","next","done","_objectWithoutProperties","_objectWithoutPropertiesLoose","s","includes","propertyIsEnumerable","VtxTreeSelect","_ref","multiple","treeData","placeholder","_ref$prefixCls","prefixCls","treeCheckable","_ref$disabled","disabled","style","props","suffixIconObj","_useState","useState","_useState2","popWidth","setPopWidth","keyNodesMapping","useMemo","genNodes","nodes","map","item","children","rest","key","id","clear","_props$onChange","onChange","clearKey","_props$onChange2","newValue","pull","label","title","selectedNodes","value_arr","val","k","ref","useRef","useEffect","current","offsetWidth","suffixIcon","createElement","Popover","content","Fragment","className","classnames","onClick","stopPropagation","Tag","concat","closable","onClose","marginBottom","Empty","image","PRESENTED_IMAGE_SIMPLE","placement","trigger","overlayStyle","width","Button","icon","MoreOutlined","size","TreeSelect","showSearch","dropdownStyle","maxHeight","overflow","treeLine","showLeafIcon","switcherIcon","DownOutlined","popupClassName","showArrow","propTypes","PropTypes","bool","array","string","object","func","oneOfType","_default","exports"],"sources":["vtx-tree-select/index.jsx"],"sourcesContent":["import { Button, Empty, Popover, Tag, TreeSelect } from 'antd';\r\nimport React, { useEffect, useMemo, useRef, useState } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { DownOutlined, MoreOutlined } from '@ant-design/icons';\r\nimport classnames from 'classnames';\r\nimport { pull } from 'lodash';\r\nconst VtxTreeSelect = ({\r\n multiple,\r\n treeData,\r\n placeholder,\r\n prefixCls = 'vtx-tree-select',\r\n treeCheckable,\r\n disabled = false,\r\n style,\r\n ...props\r\n}) => {\r\n let suffixIconObj = {};\r\n const [popWidth, setPopWidth] = useState(0);\r\n\r\n const keyNodesMapping = useMemo(() => {\r\n const keyNodesMapping = {};\r\n (function genNodes(nodes) {\r\n nodes.map(item => {\r\n const { children, ...rest } = item;\r\n keyNodesMapping[item.value || item.key] = {\r\n ...rest,\r\n id: item.value || item.key,\r\n };\r\n if (Array.isArray(children) && children.length > 0) {\r\n genNodes(children);\r\n }\r\n });\r\n })(treeData || []);\r\n return keyNodesMapping;\r\n }, [treeData]);\r\n\r\n const clear = () => {\r\n props.onChange?.([], [], {});\r\n };\r\n\r\n const clearKey = id => {\r\n const newValue = [...props.value];\r\n pull(newValue, id);\r\n const label = newValue.map(item => keyNodesMapping[item].title);\r\n props.onChange?.(newValue, label, {});\r\n };\r\n\r\n const selectedNodes = useMemo(() => {\r\n const value_arr = (function(val) {\r\n if (Array.isArray(val)) {\r\n return val;\r\n } else if (val) {\r\n return [val];\r\n } else {\r\n return [];\r\n }\r\n })(props.value);\r\n const selectedNodes = value_arr\r\n .filter(k => k in keyNodesMapping)\r\n .map(item => ({\r\n id: item,\r\n name: keyNodesMapping[item].title,\r\n }));\r\n return selectedNodes;\r\n }, [props.value, keyNodesMapping]);\r\n\r\n const ref = useRef();\r\n\r\n useEffect(() => {\r\n setPopWidth(ref.current.offsetWidth);\r\n }, []);\r\n\r\n if (multiple || treeCheckable) {\r\n suffixIconObj.suffixIcon = (\r\n <Popover\r\n content={\r\n <>\r\n <div className={classnames('vtx-tree-count-head')}>\r\n <span>已选择:{selectedNodes.length}</span>\r\n <span\r\n className={classnames(\r\n selectedNodes.length > 0 && !disabled\r\n ? 'clear-count'\r\n : 'disabled-count',\r\n )}\r\n onClick={e => {\r\n if (!disabled) {\r\n e.stopPropagation();\r\n clear();\r\n }\r\n }}\r\n >\r\n 清空已选项\r\n </span>\r\n </div>\r\n {selectedNodes.length > 0 ? (\r\n selectedNodes.map(item => (\r\n <Tag\r\n key={`tab-${item.id}`}\r\n closable={!disabled}\r\n onClose={e => {\r\n e.stopPropagation();\r\n clearKey(item.id);\r\n }}\r\n style={{ marginBottom: '5px' }}\r\n >\r\n {item.name && item.name.length > 20\r\n ? `${item.name.slice(0, 20)}...`\r\n : item.name}\r\n </Tag>\r\n ))\r\n ) : (\r\n <Empty image={Empty.PRESENTED_IMAGE_SIMPLE} />\r\n )}\r\n </>\r\n }\r\n placement=\"bottomRight\"\r\n trigger=\"click\"\r\n overlayStyle={{ width: popWidth }}\r\n >\r\n <Button\r\n className=\"vtx-tree-count\"\r\n icon={<MoreOutlined />}\r\n size=\"default\"\r\n onClick={e => {\r\n e.stopPropagation();\r\n }}\r\n />\r\n </Popover>\r\n );\r\n }\r\n return (\r\n <div ref={ref} style={style}>\r\n <TreeSelect\r\n showSearch\r\n dropdownStyle={{ maxHeight: 300, overflow: 'auto' }}\r\n placeholder={placeholder}\r\n treeData={treeData}\r\n treeLine={{ showLeafIcon: false }}\r\n switcherIcon={<DownOutlined />}\r\n {...props}\r\n multiple={multiple}\r\n treeCheckable={treeCheckable}\r\n className={prefixCls}\r\n popupClassName={`${prefixCls}-popup`}\r\n showArrow\r\n style={{ width: '100%' }}\r\n {...suffixIconObj}\r\n />\r\n </div>\r\n );\r\n};\r\n\r\nVtxTreeSelect.propTypes = {\r\n multiple: PropTypes.bool,\r\n treeCheckable: PropTypes.bool,\r\n disabled: PropTypes.bool,\r\n treeData: PropTypes.array,\r\n placeholder: PropTypes.string,\r\n prefixCls: PropTypes.string,\r\n style: PropTypes.object,\r\n onChange: PropTypes.func,\r\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.array]),\r\n};\r\n\r\nexport default VtxTreeSelect;\r\n"],"mappings":";;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,uBAAA,CAAAF,OAAA;AACA,IAAAG,UAAA,GAAAC,sBAAA,CAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AACA,IAAAM,WAAA,GAAAF,sBAAA,CAAAJ,OAAA;AACA,IAAAO,OAAA,GAAAP,OAAA;AAA8B,IAAAQ,SAAA;EAAAC,UAAA;AAAA,SAAAL,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,gBAAAA,CAAA;AAAA,SAAAE,yBAAAF,CAAA,6BAAAG,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAD,wBAAA,YAAAA,yBAAAF,CAAA,WAAAA,CAAA,GAAAK,CAAA,GAAAD,CAAA,KAAAJ,CAAA;AAAA,SAAAR,wBAAAQ,CAAA,EAAAI,CAAA,SAAAA,CAAA,IAAAJ,CAAA,IAAAA,CAAA,CAAAC,UAAA,SAAAD,CAAA,eAAAA,CAAA,gBAAAM,OAAA,CAAAN,CAAA,0BAAAA,CAAA,sBAAAA,CAAA,QAAAK,CAAA,GAAAH,wBAAA,CAAAE,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAE,GAAA,CAAAP,CAAA,UAAAK,CAAA,CAAAG,GAAA,CAAAR,CAAA,OAAAS,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAf,CAAA,oBAAAe,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAe,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAd,CAAA,EAAAe,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAf,CAAA,CAAAe,CAAA,YAAAN,CAAA,cAAAT,CAAA,EAAAK,CAAA,IAAAA,CAAA,CAAAc,GAAA,CAAAnB,CAAA,EAAAS,CAAA,GAAAA,CAAA;AAAA,SAAAW,SAAA,WAAAA,QAAA,GAAAR,MAAA,CAAAS,MAAA,GAAAT,MAAA,CAAAS,MAAA,CAAAC,IAAA,eAAAb,CAAA,aAAAT,CAAA,MAAAA,CAAA,GAAAuB,SAAA,CAAAC,MAAA,EAAAxB,CAAA,UAAAK,CAAA,GAAAkB,SAAA,CAAAvB,CAAA,YAAAI,CAAA,IAAAC,CAAA,OAAAW,cAAA,CAAAC,IAAA,CAAAZ,CAAA,EAAAD,CAAA,MAAAK,CAAA,CAAAL,CAAA,IAAAC,CAAA,CAAAD,CAAA,aAAAK,CAAA,KAAAW,QAAA,CAAAK,KAAA,OAAAF,SAAA;AAAA,SAAAG,mBAAAtB,CAAA,WAAAuB,kBAAA,CAAAvB,CAAA,KAAAwB,gBAAA,CAAAxB,CAAA,KAAAyB,2BAAA,CAAAzB,CAAA,KAAA0B,kBAAA;AAAA,SAAAA,mBAAA,cAAAC,SAAA;AAAA,SAAAH,iBAAAxB,CAAA,8BAAA4B,MAAA,YAAA5B,CAAA,CAAA4B,MAAA,CAAAC,QAAA,aAAA7B,CAAA,uBAAA8B,KAAA,CAAAC,IAAA,CAAA/B,CAAA;AAAA,SAAAuB,mBAAAvB,CAAA,QAAA8B,KAAA,CAAAE,OAAA,CAAAhC,CAAA,UAAAiC,iBAAA,CAAAjC,CAAA;AAAA,SAAAkC,QAAAtC,CAAA,EAAAI,CAAA,QAAAC,CAAA,GAAAO,MAAA,CAAA2B,IAAA,CAAAvC,CAAA,OAAAY,MAAA,CAAA4B,qBAAA,QAAAC,CAAA,GAAA7B,MAAA,CAAA4B,qBAAA,CAAAxC,CAAA,GAAAI,CAAA,KAAAqC,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAtC,CAAA,WAAAQ,MAAA,CAAAE,wBAAA,CAAAd,CAAA,EAAAI,CAAA,EAAAuC,UAAA,OAAAtC,CAAA,CAAAuC,IAAA,CAAAnB,KAAA,CAAApB,CAAA,EAAAoC,CAAA,YAAApC,CAAA;AAAA,SAAAwC,cAAA7C,CAAA,aAAAI,CAAA,MAAAA,CAAA,GAAAmB,SAAA,CAAAC,MAAA,EAAApB,CAAA,UAAAC,CAAA,WAAAkB,SAAA,CAAAnB,CAAA,IAAAmB,SAAA,CAAAnB,CAAA,QAAAA,CAAA,OAAAkC,OAAA,CAAA1B,MAAA,CAAAP,CAAA,OAAAyC,OAAA,WAAA1C,CAAA,IAAA2C,eAAA,CAAA/C,CAAA,EAAAI,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAQ,MAAA,CAAAoC,yBAAA,GAAApC,MAAA,CAAAqC,gBAAA,CAAAjD,CAAA,EAAAY,MAAA,CAAAoC,yBAAA,CAAA3C,CAAA,KAAAiC,OAAA,CAAA1B,MAAA,CAAAP,CAAA,GAAAyC,OAAA,WAAA1C,CAAA,IAAAQ,MAAA,CAAAC,cAAA,CAAAb,CAAA,EAAAI,CAAA,EAAAQ,MAAA,CAAAE,wBAAA,CAAAT,CAAA,EAAAD,CAAA,iBAAAJ,CAAA;AAAA,SAAA+C,gBAAA/C,CAAA,EAAAI,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAA8C,cAAA,CAAA9C,CAAA,MAAAJ,CAAA,GAAAY,MAAA,CAAAC,cAAA,CAAAb,CAAA,EAAAI,CAAA,IAAA+C,KAAA,EAAA9C,CAAA,EAAAsC,UAAA,MAAAS,YAAA,MAAAC,QAAA,UAAArD,CAAA,CAAAI,CAAA,IAAAC,CAAA,EAAAL,CAAA;AAAA,SAAAkD,eAAA7C,CAAA,QAAAa,CAAA,GAAAoC,YAAA,CAAAjD,CAAA,gCAAAC,OAAA,CAAAY,CAAA,IAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAoC,aAAAjD,CAAA,EAAAD,CAAA,oBAAAE,OAAA,CAAAD,CAAA,MAAAA,CAAA,SAAAA,CAAA,MAAAL,CAAA,GAAAK,CAAA,CAAA2B,MAAA,CAAAuB,WAAA,kBAAAvD,CAAA,QAAAkB,CAAA,GAAAlB,CAAA,CAAAiB,IAAA,CAAAZ,CAAA,EAAAD,CAAA,gCAAAE,OAAA,CAAAY,CAAA,UAAAA,CAAA,YAAAa,SAAA,yEAAA3B,CAAA,GAAAoD,MAAA,GAAAC,MAAA,EAAApD,CAAA;AAAA,SAAAqD,eAAAtD,CAAA,EAAAJ,CAAA,WAAA2D,eAAA,CAAAvD,CAAA,KAAAwD,qBAAA,CAAAxD,CAAA,EAAAJ,CAAA,KAAA6B,2BAAA,CAAAzB,CAAA,EAAAJ,CAAA,KAAA6D,gBAAA;AAAA,SAAAA,iBAAA,cAAA9B,SAAA;AAAA,SAAAF,4BAAAzB,CAAA,EAAAO,CAAA,QAAAP,CAAA,2BAAAA,CAAA,SAAAiC,iBAAA,CAAAjC,CAAA,EAAAO,CAAA,OAAAN,CAAA,MAAAyD,QAAA,CAAA7C,IAAA,CAAAb,CAAA,EAAA2D,KAAA,6BAAA1D,CAAA,IAAAD,CAAA,CAAA4D,WAAA,KAAA3D,CAAA,GAAAD,CAAA,CAAA4D,WAAA,CAAAC,IAAA,aAAA5D,CAAA,cAAAA,CAAA,GAAA6B,KAAA,CAAAC,IAAA,CAAA/B,CAAA,oBAAAC,CAAA,+CAAA6D,IAAA,CAAA7D,CAAA,IAAAgC,iBAAA,CAAAjC,CAAA,EAAAO,CAAA;AAAA,SAAA0B,kBAAAjC,CAAA,EAAAO,CAAA,aAAAA,CAAA,IAAAA,CAAA,GAAAP,CAAA,CAAAoB,MAAA,MAAAb,CAAA,GAAAP,CAAA,CAAAoB,MAAA,YAAAxB,CAAA,MAAAS,CAAA,GAAAyB,KAAA,CAAAvB,CAAA,GAAAX,CAAA,GAAAW,CAAA,EAAAX,CAAA,IAAAS,CAAA,CAAAT,CAAA,IAAAI,CAAA,CAAAJ,CAAA,UAAAS,CAAA;AAAA,SAAAmD,sBAAAxD,CAAA,EAAA+D,CAAA,QAAA9D,CAAA,WAAAD,CAAA,gCAAA4B,MAAA,IAAA5B,CAAA,CAAA4B,MAAA,CAAAC,QAAA,KAAA7B,CAAA,4BAAAC,CAAA,QAAAL,CAAA,EAAAS,CAAA,EAAAS,CAAA,EAAAH,CAAA,EAAAJ,CAAA,OAAAyD,CAAA,OAAA3B,CAAA,iBAAAvB,CAAA,IAAAb,CAAA,GAAAA,CAAA,CAAAY,IAAA,CAAAb,CAAA,GAAAiE,IAAA,QAAAF,CAAA,QAAAvD,MAAA,CAAAP,CAAA,MAAAA,CAAA,UAAA+D,CAAA,uBAAAA,CAAA,IAAApE,CAAA,GAAAkB,CAAA,CAAAD,IAAA,CAAAZ,CAAA,GAAAiE,IAAA,MAAA3D,CAAA,CAAAiC,IAAA,CAAA5C,CAAA,CAAAmD,KAAA,GAAAxC,CAAA,CAAAa,MAAA,KAAA2C,CAAA,GAAAC,CAAA,iBAAAhE,CAAA,IAAAqC,CAAA,OAAAhC,CAAA,GAAAL,CAAA,yBAAAgE,CAAA,YAAA/D,CAAA,eAAAU,CAAA,GAAAV,CAAA,cAAAO,MAAA,CAAAG,CAAA,MAAAA,CAAA,2BAAA0B,CAAA,QAAAhC,CAAA,aAAAE,CAAA;AAAA,SAAAgD,gBAAAvD,CAAA,QAAA8B,KAAA,CAAAE,OAAA,CAAAhC,CAAA,UAAAA,CAAA;AAAA,SAAAmE,yBAAAvE,CAAA,EAAAK,CAAA,gBAAAL,CAAA,iBAAAyC,CAAA,EAAArC,CAAA,EAAAc,CAAA,GAAAsD,6BAAA,CAAAxE,CAAA,EAAAK,CAAA,OAAAO,MAAA,CAAA4B,qBAAA,QAAAiC,CAAA,GAAA7D,MAAA,CAAA4B,qBAAA,CAAAxC,CAAA,QAAAI,CAAA,MAAAA,CAAA,GAAAqE,CAAA,CAAAjD,MAAA,EAAApB,CAAA,IAAAqC,CAAA,GAAAgC,CAAA,CAAArE,CAAA,GAAAC,CAAA,CAAAqE,QAAA,CAAAjC,CAAA,QAAAkC,oBAAA,CAAA1D,IAAA,CAAAjB,CAAA,EAAAyC,CAAA,MAAAvB,CAAA,CAAAuB,CAAA,IAAAzC,CAAA,CAAAyC,CAAA,aAAAvB,CAAA;AAAA,SAAAsD,8BAAApE,CAAA,EAAAJ,CAAA,gBAAAI,CAAA,iBAAAC,CAAA,gBAAAI,CAAA,IAAAL,CAAA,SAAAY,cAAA,CAAAC,IAAA,CAAAb,CAAA,EAAAK,CAAA,SAAAT,CAAA,CAAA0E,QAAA,CAAAjE,CAAA,aAAAJ,CAAA,CAAAI,CAAA,IAAAL,CAAA,CAAAK,CAAA,YAAAJ,CAAA;AAC9B,IAAMuE,aAAa,GAAG,SAAhBA,aAAaA,CAAAC,IAAA,EASb;EAAA,IARFC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IACRC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;IACRC,WAAW,GAAAH,IAAA,CAAXG,WAAW;IAAAC,cAAA,GAAAJ,IAAA,CACXK,SAAS;IAATA,SAAS,GAAAD,cAAA,cAAG,iBAAiB,GAAAA,cAAA;IAC7BE,aAAa,GAAAN,IAAA,CAAbM,aAAa;IAAAC,aAAA,GAAAP,IAAA,CACbQ,QAAQ;IAARA,QAAQ,GAAAD,aAAA,cAAG,KAAK,GAAAA,aAAA;IAChBE,KAAK,GAAAT,IAAA,CAALS,KAAK;IACFC,KAAK,GAAAhB,wBAAA,CAAAM,IAAA,EAAA/E,SAAA;EAER,IAAI0F,aAAa,GAAG,CAAC,CAAC;EACtB,IAAAC,SAAA,GAAgC,IAAAC,eAAQ,EAAC,CAAC,CAAC;IAAAC,UAAA,GAAAjC,cAAA,CAAA+B,SAAA;IAApCG,QAAQ,GAAAD,UAAA;IAAEE,WAAW,GAAAF,UAAA;EAE5B,IAAMG,eAAe,GAAG,IAAAC,cAAO,EAAC,YAAM;IAClC,IAAMD,eAAe,GAAG,CAAC,CAAC;IAC1B,CAAC,SAASE,QAAQA,CAACC,KAAK,EAAE;MACtBA,KAAK,CAACC,GAAG,CAAC,UAAAC,IAAI,EAAI;QACd,IAAQC,QAAQ,GAAcD,IAAI,CAA1BC,QAAQ;UAAKC,IAAI,GAAA9B,wBAAA,CAAK4B,IAAI,EAAApG,UAAA;QAClC+F,eAAe,CAACK,IAAI,CAAChD,KAAK,IAAIgD,IAAI,CAACG,GAAG,CAAC,GAAAzD,aAAA,CAAAA,aAAA,KAChCwD,IAAI;UACPE,EAAE,EAAEJ,IAAI,CAAChD,KAAK,IAAIgD,IAAI,CAACG;QAAG,EAC7B;QACD,IAAIpE,KAAK,CAACE,OAAO,CAACgE,QAAQ,CAAC,IAAIA,QAAQ,CAAC5E,MAAM,GAAG,CAAC,EAAE;UAChDwE,QAAQ,CAACI,QAAQ,CAAC;QACtB;MACJ,CAAC,CAAC;IACN,CAAC,EAAErB,QAAQ,IAAI,EAAE,CAAC;IAClB,OAAOe,eAAe;EAC1B,CAAC,EAAE,CAACf,QAAQ,CAAC,CAAC;EAEd,IAAMyB,KAAK,GAAG,SAARA,KAAKA,CAAA,EAAS;IAAA,IAAAC,eAAA;IAChB,CAAAA,eAAA,GAAAlB,KAAK,CAACmB,QAAQ,cAAAD,eAAA,eAAdA,eAAA,CAAAxF,IAAA,CAAAsE,KAAK,EAAY,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;EAChC,CAAC;EAED,IAAMoB,QAAQ,GAAG,SAAXA,QAAQA,CAAGJ,EAAE,EAAI;IAAA,IAAAK,gBAAA;IACnB,IAAMC,QAAQ,GAAAnF,kBAAA,CAAO6D,KAAK,CAACpC,KAAK,CAAC;IACjC,IAAA2D,YAAI,EAACD,QAAQ,EAAEN,EAAE,CAAC;IAClB,IAAMQ,KAAK,GAAGF,QAAQ,CAACX,GAAG,CAAC,UAAAC,IAAI;MAAA,OAAIL,eAAe,CAACK,IAAI,CAAC,CAACa,KAAK;IAAA,EAAC;IAC/D,CAAAJ,gBAAA,GAAArB,KAAK,CAACmB,QAAQ,cAAAE,gBAAA,eAAdA,gBAAA,CAAA3F,IAAA,CAAAsE,KAAK,EAAYsB,QAAQ,EAAEE,KAAK,EAAE,CAAC,CAAC,CAAC;EACzC,CAAC;EAED,IAAME,aAAa,GAAG,IAAAlB,cAAO,EAAC,YAAM;IAChC,IAAMmB,SAAS,GAAI,UAASC,GAAG,EAAE;MAC7B,IAAIjF,KAAK,CAACE,OAAO,CAAC+E,GAAG,CAAC,EAAE;QACpB,OAAOA,GAAG;MACd,CAAC,MAAM,IAAIA,GAAG,EAAE;QACZ,OAAO,CAACA,GAAG,CAAC;MAChB,CAAC,MAAM;QACH,OAAO,EAAE;MACb;IACJ,CAAC,CAAE5B,KAAK,CAACpC,KAAK,CAAC;IACf,IAAM8D,aAAa,GAAGC,SAAS,CAC1BxE,MAAM,CAAC,UAAA0E,CAAC;MAAA,OAAIA,CAAC,IAAItB,eAAe;IAAA,EAAC,CACjCI,GAAG,CAAC,UAAAC,IAAI;MAAA,OAAK;QACVI,EAAE,EAAEJ,IAAI;QACRlC,IAAI,EAAE6B,eAAe,CAACK,IAAI,CAAC,CAACa;MAChC,CAAC;IAAA,CAAC,CAAC;IACP,OAAOC,aAAa;EACxB,CAAC,EAAE,CAAC1B,KAAK,CAACpC,KAAK,EAAE2C,eAAe,CAAC,CAAC;EAElC,IAAMuB,GAAG,GAAG,IAAAC,aAAM,EAAC,CAAC;EAEpB,IAAAC,gBAAS,EAAC,YAAM;IACZ1B,WAAW,CAACwB,GAAG,CAACG,OAAO,CAACC,WAAW,CAAC;EACxC,CAAC,EAAE,EAAE,CAAC;EAEN,IAAI3C,QAAQ,IAAIK,aAAa,EAAE;IAC3BK,aAAa,CAACkC,UAAU,gBACpBnI,MAAA,YAAAoI,aAAA,CAACtI,KAAA,CAAAuI,OAAO;MACJC,OAAO,eACHtI,MAAA,YAAAoI,aAAA,CAAApI,MAAA,YAAAuI,QAAA,qBACIvI,MAAA,YAAAoI,aAAA;QAAKI,SAAS,EAAE,IAAAC,sBAAU,EAAC,qBAAqB;MAAE,gBAC9CzI,MAAA,YAAAoI,aAAA,eAAM,0BAAI,EAACV,aAAa,CAACzF,MAAa,CAAC,eACvCjC,MAAA,YAAAoI,aAAA;QACII,SAAS,EAAE,IAAAC,sBAAU,EACjBf,aAAa,CAACzF,MAAM,GAAG,CAAC,IAAI,CAAC6D,QAAQ,GAC/B,aAAa,GACb,gBACV,CAAE;QACF4C,OAAO,EAAE,SAATA,OAAOA,CAAEjI,CAAC,EAAI;UACV,IAAI,CAACqF,QAAQ,EAAE;YACXrF,CAAC,CAACkI,eAAe,CAAC,CAAC;YACnB1B,KAAK,CAAC,CAAC;UACX;QACJ;MAAE,GACL,gCAEK,CACL,CAAC,EACLS,aAAa,CAACzF,MAAM,GAAG,CAAC,GACrByF,aAAa,CAACf,GAAG,CAAC,UAAAC,IAAI;QAAA,oBAClB5G,MAAA,YAAAoI,aAAA,CAACtI,KAAA,CAAA8I,GAAG;UACA7B,GAAG,SAAA8B,MAAA,CAASjC,IAAI,CAACI,EAAE,CAAG;UACtB8B,QAAQ,EAAE,CAAChD,QAAS;UACpBiD,OAAO,EAAE,SAATA,OAAOA,CAAEtI,CAAC,EAAI;YACVA,CAAC,CAACkI,eAAe,CAAC,CAAC;YACnBvB,QAAQ,CAACR,IAAI,CAACI,EAAE,CAAC;UACrB,CAAE;UACFjB,KAAK,EAAE;YAAEiD,YAAY,EAAE;UAAM;QAAE,GAE9BpC,IAAI,CAAClC,IAAI,IAAIkC,IAAI,CAAClC,IAAI,CAACzC,MAAM,GAAG,EAAE,MAAA4G,MAAA,CAC1BjC,IAAI,CAAClC,IAAI,CAACF,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,WACzBoC,IAAI,CAAClC,IACV,CAAC;MAAA,CACT,CAAC,gBAEF1E,MAAA,YAAAoI,aAAA,CAACtI,KAAA,CAAAmJ,KAAK;QAACC,KAAK,EAAED,WAAK,CAACE;MAAuB,CAAE,CAEnD,CACL;MACDC,SAAS,EAAC,aAAa;MACvBC,OAAO,EAAC,OAAO;MACfC,YAAY,EAAE;QAAEC,KAAK,EAAElD;MAAS;IAAE,gBAElCrG,MAAA,YAAAoI,aAAA,CAACtI,KAAA,CAAA0J,MAAM;MACHhB,SAAS,EAAC,gBAAgB;MAC1BiB,IAAI,eAAEzJ,MAAA,YAAAoI,aAAA,CAAChI,MAAA,CAAAsJ,YAAY,MAAE,CAAE;MACvBC,IAAI,EAAC,SAAS;MACdjB,OAAO,EAAE,SAATA,OAAOA,CAAEjI,CAAC,EAAI;QACVA,CAAC,CAACkI,eAAe,CAAC,CAAC;MACvB;IAAE,CACL,CACI,CACZ;EACL;EACA,oBACI3I,MAAA,YAAAoI,aAAA;IAAKN,GAAG,EAAEA,GAAI;IAAC/B,KAAK,EAAEA;EAAM,gBACxB/F,MAAA,YAAAoI,aAAA,CAACtI,KAAA,CAAA8J,UAAU,EAAA/H,QAAA;IACPgI,UAAU;IACVC,aAAa,EAAE;MAAEC,SAAS,EAAE,GAAG;MAAEC,QAAQ,EAAE;IAAO,CAAE;IACpDvE,WAAW,EAAEA,WAAY;IACzBD,QAAQ,EAAEA,QAAS;IACnByE,QAAQ,EAAE;MAAEC,YAAY,EAAE;IAAM,CAAE;IAClCC,YAAY,eAAEnK,MAAA,YAAAoI,aAAA,CAAChI,MAAA,CAAAgK,YAAY,MAAE;EAAE,GAC3BpE,KAAK;IACTT,QAAQ,EAAEA,QAAS;IACnBK,aAAa,EAAEA,aAAc;IAC7B4C,SAAS,EAAE7C,SAAU;IACrB0E,cAAc,KAAAxB,MAAA,CAAKlD,SAAS,WAAS;IACrC2E,SAAS;IACTvE,KAAK,EAAE;MAAEwD,KAAK,EAAE;IAAO;EAAE,GACrBtD,aAAa,CACpB,CACA,CAAC;AAEd,CAAC;AAEDZ,aAAa,CAACkF,SAAS,GAAG;EACtBhF,QAAQ,EAAEiF,qBAAS,CAACC,IAAI;EACxB7E,aAAa,EAAE4E,qBAAS,CAACC,IAAI;EAC7B3E,QAAQ,EAAE0E,qBAAS,CAACC,IAAI;EACxBjF,QAAQ,EAAEgF,qBAAS,CAACE,KAAK;EACzBjF,WAAW,EAAE+E,qBAAS,CAACG,MAAM;EAC7BhF,SAAS,EAAE6E,qBAAS,CAACG,MAAM;EAC3B5E,KAAK,EAAEyE,qBAAS,CAACI,MAAM;EACvBzD,QAAQ,EAAEqD,qBAAS,CAACK,IAAI;EACxBjH,KAAK,EAAE4G,qBAAS,CAACM,SAAS,CAAC,CAACN,qBAAS,CAACG,MAAM,EAAEH,qBAAS,CAACE,KAAK,CAAC;AAClE,CAAC;AAAC,IAAAK,QAAA,GAAAC,OAAA,cAEa3F,aAAa","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["VtxTreeSelect","multiple","treeData","placeholder","prefixCls","treeCheckable","disabled","style","props","suffixIconObj","useState","popWidth","setPopWidth","keyNodesMapping","useMemo","genNodes","nodes","map","item","children","rest","value","key","id","Array","isArray","length","clear","onChange","clearKey","newValue","pull","label","title","selectedNodes","value_arr","val","filter","k","name","ref","useRef","useEffect","current","offsetWidth","suffixIcon","classnames","e","stopPropagation","marginBottom","slice","Empty","PRESENTED_IMAGE_SIMPLE","width","maxHeight","overflow","showLeafIcon","propTypes","PropTypes","bool","array","string","object","func","oneOfType"],"sources":["vtx-tree-select/index.jsx"],"sourcesContent":["import { Button, Empty, Popover, Tag, TreeSelect } from 'antd';\r\nimport React, { useEffect, useMemo, useRef, useState } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { DownOutlined, MoreOutlined } from '@ant-design/icons';\r\nimport classnames from 'classnames';\r\nimport { pull } from 'lodash';\r\nconst VtxTreeSelect = ({\r\n multiple,\r\n treeData,\r\n placeholder,\r\n prefixCls = 'vtx-tree-select',\r\n treeCheckable,\r\n disabled = false,\r\n style,\r\n ...props\r\n}) => {\r\n let suffixIconObj = {};\r\n const [popWidth, setPopWidth] = useState(0);\r\n\r\n const keyNodesMapping = useMemo(() => {\r\n const keyNodesMapping = {};\r\n (function genNodes(nodes) {\r\n nodes.map(item => {\r\n const { children, ...rest } = item;\r\n keyNodesMapping[item.value || item.key] = {\r\n ...rest,\r\n id: item.value || item.key,\r\n };\r\n if (Array.isArray(children) && children.length > 0) {\r\n genNodes(children);\r\n }\r\n });\r\n })(treeData || []);\r\n return keyNodesMapping;\r\n }, [treeData]);\r\n\r\n const clear = () => {\r\n props.onChange?.([], [], {});\r\n };\r\n\r\n const clearKey = id => {\r\n const newValue = [...props.value];\r\n pull(newValue, id);\r\n const label = newValue.map(item => keyNodesMapping[item].title);\r\n props.onChange?.(newValue, label, {});\r\n };\r\n\r\n const selectedNodes = useMemo(() => {\r\n const value_arr = (function(val) {\r\n if (Array.isArray(val)) {\r\n return val;\r\n } else if (val) {\r\n return [val];\r\n } else {\r\n return [];\r\n }\r\n })(props.value);\r\n const selectedNodes = value_arr\r\n .filter(k => k in keyNodesMapping)\r\n .map(item => ({\r\n id: item,\r\n name: keyNodesMapping[item].title,\r\n }));\r\n return selectedNodes;\r\n }, [props.value, keyNodesMapping]);\r\n\r\n const ref = useRef();\r\n\r\n useEffect(() => {\r\n setPopWidth(ref.current.offsetWidth);\r\n }, []);\r\n\r\n if (multiple || treeCheckable) {\r\n suffixIconObj.suffixIcon = (\r\n <Popover\r\n content={\r\n <>\r\n <div className={classnames('vtx-tree-count-head')}>\r\n <span>已选择:{selectedNodes.length}</span>\r\n <span\r\n className={classnames(\r\n selectedNodes.length > 0 && !disabled\r\n ? 'clear-count'\r\n : 'disabled-count',\r\n )}\r\n onClick={e => {\r\n if (!disabled) {\r\n e.stopPropagation();\r\n clear();\r\n }\r\n }}\r\n >\r\n 清空已选项\r\n </span>\r\n </div>\r\n {selectedNodes.length > 0 ? (\r\n selectedNodes.map(item => (\r\n <Tag\r\n key={`tab-${item.id}`}\r\n closable={!disabled}\r\n onClose={e => {\r\n e.stopPropagation();\r\n clearKey(item.id);\r\n }}\r\n style={{ marginBottom: '5px' }}\r\n >\r\n {item.name && item.name.length > 20\r\n ? `${item.name.slice(0, 20)}...`\r\n : item.name}\r\n </Tag>\r\n ))\r\n ) : (\r\n <Empty image={Empty.PRESENTED_IMAGE_SIMPLE} />\r\n )}\r\n </>\r\n }\r\n placement=\"bottomRight\"\r\n trigger=\"click\"\r\n overlayStyle={{ width: popWidth }}\r\n >\r\n <Button\r\n className=\"vtx-tree-count\"\r\n icon={<MoreOutlined />}\r\n size=\"default\"\r\n onClick={e => {\r\n e.stopPropagation();\r\n }}\r\n />\r\n </Popover>\r\n );\r\n }\r\n return (\r\n <div ref={ref} style={style}>\r\n <TreeSelect\r\n showSearch\r\n dropdownStyle={{ maxHeight: 300, overflow: 'auto' }}\r\n placeholder={placeholder}\r\n treeData={treeData}\r\n treeLine={{ showLeafIcon: false }}\r\n switcherIcon={<DownOutlined />}\r\n {...props}\r\n multiple={multiple}\r\n treeCheckable={treeCheckable}\r\n className={prefixCls}\r\n popupClassName={`${prefixCls}-popup`}\r\n showArrow\r\n style={{ width: '100%' }}\r\n {...suffixIconObj}\r\n />\r\n </div>\r\n );\r\n};\r\n\r\nVtxTreeSelect.propTypes = {\r\n multiple: PropTypes.bool,\r\n treeCheckable: PropTypes.bool,\r\n disabled: PropTypes.bool,\r\n treeData: PropTypes.array,\r\n placeholder: PropTypes.string,\r\n prefixCls: PropTypes.string,\r\n style: PropTypes.object,\r\n onChange: PropTypes.func,\r\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.array]),\r\n};\r\n\r\nexport default VtxTreeSelect;\r\n"],"mappings":"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"}
@@ -1,8 +1,12 @@
1
1
  "use strict";
2
2
 
3
3
  require("antd/lib/popover/style/css");
4
+
4
5
  require("antd/lib/input/style/css");
6
+
5
7
  require("antd/lib/tag/style/css");
8
+
6
9
  require("antd/lib/tree-select/style/css");
10
+
7
11
  require("./index.css");
8
12
  //# sourceMappingURL=css.js.map