@opensumi/ide-components 2.12.1-next-079c1930

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 (360) hide show
  1. package/README.md +65 -0
  2. package/dist/index.css +1 -0
  3. package/dist/index.js +26330 -0
  4. package/lib/badge/index.d.ts +4 -0
  5. package/lib/badge/index.d.ts.map +1 -0
  6. package/lib/badge/index.js +13 -0
  7. package/lib/badge/index.js.map +1 -0
  8. package/lib/badge/styles.less +17 -0
  9. package/lib/button/index.d.ts +54 -0
  10. package/lib/button/index.d.ts.map +1 -0
  11. package/lib/button/index.js +68 -0
  12. package/lib/button/index.js.map +1 -0
  13. package/lib/button/style.less +251 -0
  14. package/lib/checkbox/index.d.ts +9 -0
  15. package/lib/checkbox/index.d.ts.map +1 -0
  16. package/lib/checkbox/index.js +27 -0
  17. package/lib/checkbox/index.js.map +1 -0
  18. package/lib/checkbox/style.less +80 -0
  19. package/lib/common.d.ts +7 -0
  20. package/lib/common.d.ts.map +1 -0
  21. package/lib/common.js +11 -0
  22. package/lib/common.js.map +1 -0
  23. package/lib/dialog/index.d.ts +26 -0
  24. package/lib/dialog/index.d.ts.map +1 -0
  25. package/lib/dialog/index.js +28 -0
  26. package/lib/dialog/index.js.map +1 -0
  27. package/lib/dialog/styles.less +85 -0
  28. package/lib/dropdown/dropdown.d.ts +48 -0
  29. package/lib/dropdown/dropdown.d.ts.map +1 -0
  30. package/lib/dropdown/dropdown.js +80 -0
  31. package/lib/dropdown/dropdown.js.map +1 -0
  32. package/lib/dropdown/index.d.ts +5 -0
  33. package/lib/dropdown/index.d.ts.map +1 -0
  34. package/lib/dropdown/index.js +8 -0
  35. package/lib/dropdown/index.js.map +1 -0
  36. package/lib/dropdown/style.less +254 -0
  37. package/lib/icon/icon.d.ts +33 -0
  38. package/lib/icon/icon.d.ts.map +1 -0
  39. package/lib/icon/icon.js +71 -0
  40. package/lib/icon/icon.js.map +1 -0
  41. package/lib/icon/iconfont/iconManager.d.ts +187 -0
  42. package/lib/icon/iconfont/iconManager.d.ts.map +1 -0
  43. package/lib/icon/iconfont/iconManager.js +67 -0
  44. package/lib/icon/iconfont/iconManager.js.map +1 -0
  45. package/lib/icon/iconfont/iconMap.d.ts +160 -0
  46. package/lib/icon/iconfont/iconMap.d.ts.map +1 -0
  47. package/lib/icon/iconfont/iconMap.js +165 -0
  48. package/lib/icon/iconfont/iconMap.js.map +1 -0
  49. package/lib/icon/iconfont/iconfont.css +646 -0
  50. package/lib/icon/iconfont/iconfont.eot +0 -0
  51. package/lib/icon/iconfont/iconfont.html +1522 -0
  52. package/lib/icon/iconfont/iconfont.svg +333 -0
  53. package/lib/icon/iconfont/iconfont.ttf +0 -0
  54. package/lib/icon/iconfont/iconfont.woff +0 -0
  55. package/lib/icon/iconfont/iconfont.woff2 +0 -0
  56. package/lib/icon/iconfont-cn.d.ts +15 -0
  57. package/lib/icon/iconfont-cn.d.ts.map +1 -0
  58. package/lib/icon/iconfont-cn.js +78 -0
  59. package/lib/icon/iconfont-cn.js.map +1 -0
  60. package/lib/icon/index.d.ts +4 -0
  61. package/lib/icon/index.d.ts.map +1 -0
  62. package/lib/icon/index.js +9 -0
  63. package/lib/icon/index.js.map +1 -0
  64. package/lib/icon/styles.less +105 -0
  65. package/lib/icon/util.d.ts +29 -0
  66. package/lib/icon/util.d.ts.map +1 -0
  67. package/lib/icon/util.js +53 -0
  68. package/lib/icon/util.js.map +1 -0
  69. package/lib/index.d.ts +20 -0
  70. package/lib/index.d.ts.map +1 -0
  71. package/lib/index.js +23 -0
  72. package/lib/index.js.map +1 -0
  73. package/lib/input/HistoryInputBox.d.ts +38 -0
  74. package/lib/input/HistoryInputBox.d.ts.map +1 -0
  75. package/lib/input/HistoryInputBox.js +114 -0
  76. package/lib/input/HistoryInputBox.js.map +1 -0
  77. package/lib/input/Input.d.ts +43 -0
  78. package/lib/input/Input.d.ts.map +1 -0
  79. package/lib/input/Input.js +124 -0
  80. package/lib/input/Input.js.map +1 -0
  81. package/lib/input/ProxiedInput.d.ts +8 -0
  82. package/lib/input/ProxiedInput.d.ts.map +1 -0
  83. package/lib/input/ProxiedInput.js +67 -0
  84. package/lib/input/ProxiedInput.js.map +1 -0
  85. package/lib/input/TextArea.d.ts +6 -0
  86. package/lib/input/TextArea.d.ts.map +1 -0
  87. package/lib/input/TextArea.js +11 -0
  88. package/lib/input/TextArea.js.map +1 -0
  89. package/lib/input/ValidateInput.d.ts +20 -0
  90. package/lib/input/ValidateInput.d.ts.map +1 -0
  91. package/lib/input/ValidateInput.js +59 -0
  92. package/lib/input/ValidateInput.js.map +1 -0
  93. package/lib/input/index.d.ts +5 -0
  94. package/lib/input/index.d.ts.map +1 -0
  95. package/lib/input/index.js +8 -0
  96. package/lib/input/index.js.map +1 -0
  97. package/lib/input/input.less +83 -0
  98. package/lib/input/validate-input.less +88 -0
  99. package/lib/locale-context-provider.d.ts +16 -0
  100. package/lib/locale-context-provider.d.ts.map +1 -0
  101. package/lib/locale-context-provider.js +26 -0
  102. package/lib/locale-context-provider.js.map +1 -0
  103. package/lib/menu/MenuContext.d.ts +8 -0
  104. package/lib/menu/MenuContext.d.ts.map +1 -0
  105. package/lib/menu/MenuContext.js +8 -0
  106. package/lib/menu/MenuContext.js.map +1 -0
  107. package/lib/menu/MenuItem.d.ts +29 -0
  108. package/lib/menu/MenuItem.d.ts.map +1 -0
  109. package/lib/menu/MenuItem.js +32 -0
  110. package/lib/menu/MenuItem.js.map +1 -0
  111. package/lib/menu/SubMenu.d.ts +30 -0
  112. package/lib/menu/SubMenu.d.ts.map +1 -0
  113. package/lib/menu/SubMenu.js +28 -0
  114. package/lib/menu/SubMenu.js.map +1 -0
  115. package/lib/menu/index.d.ts +64 -0
  116. package/lib/menu/index.d.ts.map +1 -0
  117. package/lib/menu/index.js +203 -0
  118. package/lib/menu/index.js.map +1 -0
  119. package/lib/menu/style.less +513 -0
  120. package/lib/message/index.d.ts +10 -0
  121. package/lib/message/index.d.ts.map +1 -0
  122. package/lib/message/index.js +21 -0
  123. package/lib/message/index.js.map +1 -0
  124. package/lib/message/message.d.ts +42 -0
  125. package/lib/message/message.d.ts.map +1 -0
  126. package/lib/message/message.js +128 -0
  127. package/lib/message/message.js.map +1 -0
  128. package/lib/message/style.less +76 -0
  129. package/lib/modal/Modal.d.ts +127 -0
  130. package/lib/modal/Modal.d.ts.map +1 -0
  131. package/lib/modal/Modal.js +87 -0
  132. package/lib/modal/Modal.js.map +1 -0
  133. package/lib/modal/index.d.ts +5 -0
  134. package/lib/modal/index.d.ts.map +1 -0
  135. package/lib/modal/index.js +8 -0
  136. package/lib/modal/index.js.map +1 -0
  137. package/lib/modal/locale.d.ts +8 -0
  138. package/lib/modal/locale.d.ts.map +1 -0
  139. package/lib/modal/locale.js +23 -0
  140. package/lib/modal/locale.js.map +1 -0
  141. package/lib/modal/style.less +168 -0
  142. package/lib/notification/index.d.ts +8 -0
  143. package/lib/notification/index.d.ts.map +1 -0
  144. package/lib/notification/index.js +80 -0
  145. package/lib/notification/index.js.map +1 -0
  146. package/lib/notification/notification.d.ts +44 -0
  147. package/lib/notification/notification.d.ts.map +1 -0
  148. package/lib/notification/notification.js +156 -0
  149. package/lib/notification/notification.js.map +1 -0
  150. package/lib/notification/notification.less +231 -0
  151. package/lib/overlay/index.d.ts +19 -0
  152. package/lib/overlay/index.d.ts.map +1 -0
  153. package/lib/overlay/index.js +13 -0
  154. package/lib/overlay/index.js.map +1 -0
  155. package/lib/overlay/styles.less +44 -0
  156. package/lib/popover/index.d.ts +28 -0
  157. package/lib/popover/index.d.ts.map +1 -0
  158. package/lib/popover/index.js +127 -0
  159. package/lib/popover/index.js.map +1 -0
  160. package/lib/popover/styles.less +135 -0
  161. package/lib/recycle-list/RecycleList.d.ts +105 -0
  162. package/lib/recycle-list/RecycleList.d.ts.map +1 -0
  163. package/lib/recycle-list/RecycleList.js +253 -0
  164. package/lib/recycle-list/RecycleList.js.map +1 -0
  165. package/lib/recycle-list/index.d.ts +2 -0
  166. package/lib/recycle-list/index.d.ts.map +1 -0
  167. package/lib/recycle-list/index.js +5 -0
  168. package/lib/recycle-list/index.js.map +1 -0
  169. package/lib/recycle-tree/RecycleTree.d.ts +254 -0
  170. package/lib/recycle-tree/RecycleTree.d.ts.map +1 -0
  171. package/lib/recycle-tree/RecycleTree.js +635 -0
  172. package/lib/recycle-tree/RecycleTree.js.map +1 -0
  173. package/lib/recycle-tree/TreeNodeRendererWrap.d.ts +37 -0
  174. package/lib/recycle-tree/TreeNodeRendererWrap.d.ts.map +1 -0
  175. package/lib/recycle-tree/TreeNodeRendererWrap.js +18 -0
  176. package/lib/recycle-tree/TreeNodeRendererWrap.js.map +1 -0
  177. package/lib/recycle-tree/decorators/Adaptive/index.d.ts +10 -0
  178. package/lib/recycle-tree/decorators/Adaptive/index.d.ts.map +1 -0
  179. package/lib/recycle-tree/decorators/Adaptive/index.js +97 -0
  180. package/lib/recycle-tree/decorators/Adaptive/index.js.map +1 -0
  181. package/lib/recycle-tree/decorators/Filter/filter.less +11 -0
  182. package/lib/recycle-tree/decorators/Filter/index.d.ts +26 -0
  183. package/lib/recycle-tree/decorators/Filter/index.d.ts.map +1 -0
  184. package/lib/recycle-tree/decorators/Filter/index.js +53 -0
  185. package/lib/recycle-tree/decorators/Filter/index.js.map +1 -0
  186. package/lib/recycle-tree/decorators/index.d.ts +3 -0
  187. package/lib/recycle-tree/decorators/index.d.ts.map +1 -0
  188. package/lib/recycle-tree/decorators/index.js +6 -0
  189. package/lib/recycle-tree/decorators/index.js.map +1 -0
  190. package/lib/recycle-tree/index.d.ts +7 -0
  191. package/lib/recycle-tree/index.d.ts.map +1 -0
  192. package/lib/recycle-tree/index.js +10 -0
  193. package/lib/recycle-tree/index.js.map +1 -0
  194. package/lib/recycle-tree/prompt/NewPromptHandle.d.ts +12 -0
  195. package/lib/recycle-tree/prompt/NewPromptHandle.d.ts.map +1 -0
  196. package/lib/recycle-tree/prompt/NewPromptHandle.js +21 -0
  197. package/lib/recycle-tree/prompt/NewPromptHandle.js.map +1 -0
  198. package/lib/recycle-tree/prompt/PromptHandle.d.ts +59 -0
  199. package/lib/recycle-tree/prompt/PromptHandle.d.ts.map +1 -0
  200. package/lib/recycle-tree/prompt/PromptHandle.js +200 -0
  201. package/lib/recycle-tree/prompt/PromptHandle.js.map +1 -0
  202. package/lib/recycle-tree/prompt/RenamePromptHandle.d.ts +10 -0
  203. package/lib/recycle-tree/prompt/RenamePromptHandle.d.ts.map +1 -0
  204. package/lib/recycle-tree/prompt/RenamePromptHandle.js +21 -0
  205. package/lib/recycle-tree/prompt/RenamePromptHandle.js.map +1 -0
  206. package/lib/recycle-tree/prompt/index.d.ts +4 -0
  207. package/lib/recycle-tree/prompt/index.d.ts.map +1 -0
  208. package/lib/recycle-tree/prompt/index.js +7 -0
  209. package/lib/recycle-tree/prompt/index.js.map +1 -0
  210. package/lib/recycle-tree/tree/Tree.d.ts +20 -0
  211. package/lib/recycle-tree/tree/Tree.d.ts.map +1 -0
  212. package/lib/recycle-tree/tree/Tree.js +43 -0
  213. package/lib/recycle-tree/tree/Tree.js.map +1 -0
  214. package/lib/recycle-tree/tree/TreeNode.d.ts +222 -0
  215. package/lib/recycle-tree/tree/TreeNode.d.ts.map +1 -0
  216. package/lib/recycle-tree/tree/TreeNode.js +1099 -0
  217. package/lib/recycle-tree/tree/TreeNode.js.map +1 -0
  218. package/lib/recycle-tree/tree/decoration/CompositeDecoration.d.ts +60 -0
  219. package/lib/recycle-tree/tree/decoration/CompositeDecoration.d.ts.map +1 -0
  220. package/lib/recycle-tree/tree/decoration/CompositeDecoration.js +328 -0
  221. package/lib/recycle-tree/tree/decoration/CompositeDecoration.js.map +1 -0
  222. package/lib/recycle-tree/tree/decoration/Decoration.d.ts +79 -0
  223. package/lib/recycle-tree/tree/decoration/Decoration.d.ts.map +1 -0
  224. package/lib/recycle-tree/tree/decoration/Decoration.js +183 -0
  225. package/lib/recycle-tree/tree/decoration/Decoration.js.map +1 -0
  226. package/lib/recycle-tree/tree/decoration/DecorationManager.d.ts +34 -0
  227. package/lib/recycle-tree/tree/decoration/DecorationManager.d.ts.map +1 -0
  228. package/lib/recycle-tree/tree/decoration/DecorationManager.js +166 -0
  229. package/lib/recycle-tree/tree/decoration/DecorationManager.js.map +1 -0
  230. package/lib/recycle-tree/tree/decoration/index.d.ts +4 -0
  231. package/lib/recycle-tree/tree/decoration/index.d.ts.map +1 -0
  232. package/lib/recycle-tree/tree/decoration/index.js +7 -0
  233. package/lib/recycle-tree/tree/decoration/index.js.map +1 -0
  234. package/lib/recycle-tree/tree/index.d.ts +5 -0
  235. package/lib/recycle-tree/tree/index.d.ts.map +1 -0
  236. package/lib/recycle-tree/tree/index.js +8 -0
  237. package/lib/recycle-tree/tree/index.js.map +1 -0
  238. package/lib/recycle-tree/tree/model/TreeModel.d.ts +50 -0
  239. package/lib/recycle-tree/tree/model/TreeModel.d.ts.map +1 -0
  240. package/lib/recycle-tree/tree/model/TreeModel.js +81 -0
  241. package/lib/recycle-tree/tree/model/TreeModel.js.map +1 -0
  242. package/lib/recycle-tree/tree/model/index.d.ts +2 -0
  243. package/lib/recycle-tree/tree/model/index.d.ts.map +1 -0
  244. package/lib/recycle-tree/tree/model/index.js +5 -0
  245. package/lib/recycle-tree/tree/model/index.js.map +1 -0
  246. package/lib/recycle-tree/tree/model/treeState/TreeStateManager.d.ts +65 -0
  247. package/lib/recycle-tree/tree/model/treeState/TreeStateManager.d.ts.map +1 -0
  248. package/lib/recycle-tree/tree/model/treeState/TreeStateManager.js +191 -0
  249. package/lib/recycle-tree/tree/model/treeState/TreeStateManager.js.map +1 -0
  250. package/lib/recycle-tree/tree/model/treeState/TreeStateWatcher.d.ts +15 -0
  251. package/lib/recycle-tree/tree/model/treeState/TreeStateWatcher.d.ts.map +1 -0
  252. package/lib/recycle-tree/tree/model/treeState/TreeStateWatcher.js +104 -0
  253. package/lib/recycle-tree/tree/model/treeState/TreeStateWatcher.js.map +1 -0
  254. package/lib/recycle-tree/tree/model/treeState/index.d.ts +4 -0
  255. package/lib/recycle-tree/tree/model/treeState/index.d.ts.map +1 -0
  256. package/lib/recycle-tree/tree/model/treeState/index.js +8 -0
  257. package/lib/recycle-tree/tree/model/treeState/index.js.map +1 -0
  258. package/lib/recycle-tree/tree/model/treeState/types.d.ts +21 -0
  259. package/lib/recycle-tree/tree/model/treeState/types.d.ts.map +1 -0
  260. package/lib/recycle-tree/tree/model/treeState/types.js +18 -0
  261. package/lib/recycle-tree/tree/model/treeState/types.js.map +1 -0
  262. package/lib/recycle-tree/types/index.d.ts +4 -0
  263. package/lib/recycle-tree/types/index.d.ts.map +1 -0
  264. package/lib/recycle-tree/types/index.js +7 -0
  265. package/lib/recycle-tree/types/index.js.map +1 -0
  266. package/lib/recycle-tree/types/tree-node.d.ts +70 -0
  267. package/lib/recycle-tree/types/tree-node.d.ts.map +1 -0
  268. package/lib/recycle-tree/types/tree-node.js +11 -0
  269. package/lib/recycle-tree/types/tree-node.js.map +1 -0
  270. package/lib/recycle-tree/types/tree.d.ts +8 -0
  271. package/lib/recycle-tree/types/tree.d.ts.map +1 -0
  272. package/lib/recycle-tree/types/tree.js +3 -0
  273. package/lib/recycle-tree/types/tree.js.map +1 -0
  274. package/lib/recycle-tree/types/watcher.d.ts +114 -0
  275. package/lib/recycle-tree/types/watcher.d.ts.map +1 -0
  276. package/lib/recycle-tree/types/watcher.js +46 -0
  277. package/lib/recycle-tree/types/watcher.js.map +1 -0
  278. package/lib/scrollbars/index.d.ts +14 -0
  279. package/lib/scrollbars/index.d.ts.map +1 -0
  280. package/lib/scrollbars/index.js +52 -0
  281. package/lib/scrollbars/index.js.map +1 -0
  282. package/lib/scrollbars/styles.less +46 -0
  283. package/lib/select/index.d.ts +119 -0
  284. package/lib/select/index.d.ts.map +1 -0
  285. package/lib/select/index.js +327 -0
  286. package/lib/select/index.js.map +1 -0
  287. package/lib/select/style.less +224 -0
  288. package/lib/style/base.less +542 -0
  289. package/lib/style/index.less +14 -0
  290. package/lib/style/mixins.less +135 -0
  291. package/lib/style/motion/fade.less +31 -0
  292. package/lib/style/motion/move.less +120 -0
  293. package/lib/style/motion/other.less +45 -0
  294. package/lib/style/motion/slide.less +120 -0
  295. package/lib/style/motion/swing.less +34 -0
  296. package/lib/style/motion/zoom.less +162 -0
  297. package/lib/style/variable.less +204 -0
  298. package/lib/tabs/index.d.ts +12 -0
  299. package/lib/tabs/index.d.ts.map +1 -0
  300. package/lib/tabs/index.js +24 -0
  301. package/lib/tabs/index.js.map +1 -0
  302. package/lib/tabs/style.less +34 -0
  303. package/lib/tooltip/index.d.ts +7 -0
  304. package/lib/tooltip/index.d.ts.map +1 -0
  305. package/lib/tooltip/index.js +58 -0
  306. package/lib/tooltip/index.js.map +1 -0
  307. package/lib/tooltip/style.less +41 -0
  308. package/lib/utils/deprecated.d.ts +3 -0
  309. package/lib/utils/deprecated.d.ts.map +1 -0
  310. package/lib/utils/deprecated.js +18 -0
  311. package/lib/utils/deprecated.js.map +1 -0
  312. package/lib/utils/disposable.d.ts +37 -0
  313. package/lib/utils/disposable.d.ts.map +1 -0
  314. package/lib/utils/disposable.js +140 -0
  315. package/lib/utils/disposable.js.map +1 -0
  316. package/lib/utils/event.d.ts +189 -0
  317. package/lib/utils/event.d.ts.map +1 -0
  318. package/lib/utils/event.js +569 -0
  319. package/lib/utils/event.js.map +1 -0
  320. package/lib/utils/index.d.ts +10 -0
  321. package/lib/utils/index.d.ts.map +1 -0
  322. package/lib/utils/index.js +13 -0
  323. package/lib/utils/index.js.map +1 -0
  324. package/lib/utils/iterator.d.ts +14 -0
  325. package/lib/utils/iterator.d.ts.map +1 -0
  326. package/lib/utils/iterator.js +9 -0
  327. package/lib/utils/iterator.js.map +1 -0
  328. package/lib/utils/linkedList.d.ts +18 -0
  329. package/lib/utils/linkedList.d.ts.map +1 -0
  330. package/lib/utils/linkedList.js +139 -0
  331. package/lib/utils/linkedList.js.map +1 -0
  332. package/lib/utils/motion.d.ts +24 -0
  333. package/lib/utils/motion.d.ts.map +1 -0
  334. package/lib/utils/motion.js +17 -0
  335. package/lib/utils/motion.js.map +1 -0
  336. package/lib/utils/os.d.ts +4 -0
  337. package/lib/utils/os.d.ts.map +1 -0
  338. package/lib/utils/os.js +22 -0
  339. package/lib/utils/os.js.map +1 -0
  340. package/lib/utils/path.d.ts +92 -0
  341. package/lib/utils/path.d.ts.map +1 -0
  342. package/lib/utils/path.js +1712 -0
  343. package/lib/utils/path.js.map +1 -0
  344. package/lib/utils/process.d.ts +6 -0
  345. package/lib/utils/process.d.ts.map +1 -0
  346. package/lib/utils/process.js +17 -0
  347. package/lib/utils/process.js.map +1 -0
  348. package/lib/utils/raf.d.ts +10 -0
  349. package/lib/utils/raf.d.ts.map +1 -0
  350. package/lib/utils/raf.js +33 -0
  351. package/lib/utils/raf.js.map +1 -0
  352. package/lib/utils/type.d.ts +4 -0
  353. package/lib/utils/type.d.ts.map +1 -0
  354. package/lib/utils/type.js +9 -0
  355. package/lib/utils/type.js.map +1 -0
  356. package/lib/utils/warning.d.ts +8 -0
  357. package/lib/utils/warning.d.ts.map +1 -0
  358. package/lib/utils/warning.js +40 -0
  359. package/lib/utils/warning.js.map +1 -0
  360. package/package.json +36 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RecycleTree.js","sourceRoot":"","sources":["../../src/recycle-tree/RecycleTree.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ import React from 'react';
2
+ import { TreeNode, CompositeTreeNode } from './tree/TreeNode';
3
+ import { RenamePromptHandle, NewPromptHandle } from './prompt';
4
+ import { TreeNodeType } from './types';
5
+ export interface ITreeNodeRendererProps {
6
+ item: TreeNode;
7
+ itemType: TreeNodeType.TreeNode;
8
+ }
9
+ export interface ICompositeTreeNodeRendererProps {
10
+ item: CompositeTreeNode;
11
+ itemType: TreeNodeType.CompositeTreeNode;
12
+ }
13
+ interface INewPromptRendererProps {
14
+ item: NewPromptHandle;
15
+ itemType: TreeNodeType.NewPrompt;
16
+ }
17
+ interface IRenamePromptRendererProps {
18
+ item: RenamePromptHandle;
19
+ itemType: TreeNodeType.RenamePrompt;
20
+ }
21
+ export declare type INodeRendererProps = ITreeNodeRendererProps | ICompositeTreeNodeRendererProps | INewPromptRendererProps | IRenamePromptRendererProps;
22
+ export declare type INodeRenderer = (props: any) => JSX.Element;
23
+ export interface INodeRendererWrapProps {
24
+ item: TreeNode | CompositeTreeNode | NewPromptHandle | RenamePromptHandle;
25
+ itemType: TreeNodeType;
26
+ template?: React.JSXElementConstructor<any>;
27
+ depth: number;
28
+ expanded?: boolean;
29
+ hasPrompt?: boolean;
30
+ children: INodeRenderer;
31
+ }
32
+ export declare class NodeRendererWrap extends React.Component<INodeRendererWrapProps> {
33
+ render(): React.FunctionComponentElement<any>;
34
+ shouldComponentUpdate(nextProps: INodeRendererWrapProps): boolean;
35
+ }
36
+ export {};
37
+ //# sourceMappingURL=TreeNodeRendererWrap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TreeNodeRendererWrap.d.ts","sourceRoot":"","sources":["../../src/recycle-tree/TreeNodeRendererWrap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,QAAQ,CAAC;IACf,QAAQ,EAAE,YAAY,CAAC,QAAQ,CAAC;CACjC;AAED,MAAM,WAAW,+BAA+B;IAC9C,IAAI,EAAE,iBAAiB,CAAC;IACxB,QAAQ,EAAE,YAAY,CAAC,iBAAiB,CAAC;CAC1C;AAED,UAAU,uBAAuB;IAC/B,IAAI,EAAE,eAAe,CAAC;IACtB,QAAQ,EAAE,YAAY,CAAC,SAAS,CAAC;CAClC;AAED,UAAU,0BAA0B;IAClC,IAAI,EAAE,kBAAkB,CAAC;IACzB,QAAQ,EAAE,YAAY,CAAC,YAAY,CAAC;CACrC;AAED,oBAAY,kBAAkB,GAAG,sBAAsB,GAAG,+BAA+B,GAAG,uBAAuB,GAAG,0BAA0B,CAAC;AAEjJ,oBAAY,aAAa,GAAG,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC,OAAO,CAAC;AAExD,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,QAAQ,GAAG,iBAAiB,GAAG,eAAe,GAAG,kBAAkB,CAAC;IAC1E,QAAQ,EAAE,YAAY,CAAC;IACvB,QAAQ,CAAC,EAAE,KAAK,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,aAAa,CAAC;CACzB;AAED,qBAAa,gBAAiB,SAAQ,KAAK,CAAC,SAAS,CAAC,sBAAsB,CAAC;IAEpE,MAAM;IAKN,qBAAqB,CAAC,SAAS,EAAE,sBAAsB;CAK/D"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NodeRendererWrap = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = (0, tslib_1.__importDefault)(require("react"));
6
+ class NodeRendererWrap extends react_1.default.Component {
7
+ render() {
8
+ const { item, itemType, children, template, hasPrompt } = this.props;
9
+ return react_1.default.createElement(children, { item, itemType, template, hasPrompt, key: item.id });
10
+ }
11
+ shouldComponentUpdate(nextProps) {
12
+ // 判断节点需不需要更新
13
+ // TODO: 区分forceUpdate及普通更新,优化性能
14
+ return true;
15
+ }
16
+ }
17
+ exports.NodeRendererWrap = NodeRendererWrap;
18
+ //# sourceMappingURL=TreeNodeRendererWrap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TreeNodeRendererWrap.js","sourceRoot":"","sources":["../../src/recycle-tree/TreeNodeRendererWrap.ts"],"names":[],"mappings":";;;;AAAA,+DAA0B;AAuC1B,MAAa,gBAAiB,SAAQ,eAAK,CAAC,SAAiC;IAEpE,MAAM;QACX,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QACrE,OAAO,eAAK,CAAC,aAAa,CAAC,QAAQ,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,EAAC,CAAC,CAAC;IAC5F,CAAC;IAEM,qBAAqB,CAAC,SAAiC;QAC5D,aAAa;QACb,gCAAgC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAZD,4CAYC"}
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import { IRecycleTreeProps } from '../../RecycleTree';
3
+ declare type AdaptiveTreeHoc<Props, ExtraProps = any> = (Component: React.ComponentType<Props>) => React.ComponentType<Props & (ExtraProps extends undefined ? never : ExtraProps)>;
4
+ /**
5
+ * 将 RecycleTree 组件装饰到能够自适应高度
6
+ * @param recycleTreeComp RecycleTree 组件
7
+ */
8
+ export declare const RecycleTreeAdaptiveDecorator: AdaptiveTreeHoc<IRecycleTreeProps>;
9
+ export {};
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/recycle-tree/decorators/Adaptive/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,iBAAiB,EAAsB,MAAM,mBAAmB,CAAC;AAI1E,aAAK,eAAe,CAAC,KAAK,EAAE,UAAU,GAAG,GAAG,IAAI,CAC9C,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,KAClC,KAAK,CAAC,aAAa,CACtB,KAAK,GAAG,CAAC,UAAU,SAAS,SAAS,GAAG,KAAK,GAAG,UAAU,CAAC,CAC5D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,4BAA4B,EAAE,eAAe,CACxD,iBAAiB,CAkGlB,CAAC"}
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RecycleTreeAdaptiveDecorator = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = (0, tslib_1.__importDefault)(require("react"));
6
+ const types_1 = require("../../types");
7
+ /**
8
+ * 将 RecycleTree 组件装饰到能够自适应高度
9
+ * @param recycleTreeComp RecycleTree 组件
10
+ */
11
+ const RecycleTreeAdaptiveDecorator = (recycleTreeComp) => (props) => {
12
+ const { model, itemHeight, onReady } = props;
13
+ const ref = react_1.default.useRef();
14
+ const destroyWhileBlur = react_1.default.useRef(false);
15
+ const [currentHeight, setCurrentHeight] = react_1.default.useState(0);
16
+ const handleExpansionChange = () => {
17
+ setCurrentHeight(model.root.branchSize * itemHeight);
18
+ };
19
+ const handleOnReady = (handle) => {
20
+ if (!onReady) {
21
+ return;
22
+ }
23
+ onReady(Object.assign(Object.assign({}, handle), { promptNewTreeNode: async (at) => {
24
+ var _a;
25
+ const promptHandle = await handle.promptNewTreeNode(at);
26
+ if ((_a = ref.current) === null || _a === void 0 ? void 0 : _a.root.branchSize) {
27
+ setCurrentHeight(ref.current.root.branchSize * itemHeight + itemHeight);
28
+ }
29
+ else {
30
+ // 添加节点时,如果不存在 ref.current,即不存在可渲染节点
31
+ // 补全高度便于插入输入框
32
+ setCurrentHeight(itemHeight);
33
+ }
34
+ destroyWhileBlur.current = false;
35
+ promptHandle.onDestroy(() => {
36
+ var _a;
37
+ if ((_a = ref.current) === null || _a === void 0 ? void 0 : _a.root.branchSize) {
38
+ setCurrentHeight(ref.current.root.branchSize * itemHeight);
39
+ }
40
+ });
41
+ promptHandle.onCancel(() => {
42
+ if (ref.current) {
43
+ setCurrentHeight(ref.current.root.branchSize * itemHeight);
44
+ }
45
+ });
46
+ promptHandle.onBlur(() => {
47
+ return destroyWhileBlur.current;
48
+ });
49
+ return promptHandle;
50
+ }, promptNewCompositeTreeNode: async (at) => {
51
+ var _a;
52
+ const promptHandle = await handle.promptNewCompositeTreeNode(at);
53
+ if ((_a = ref.current) === null || _a === void 0 ? void 0 : _a.root.branchSize) {
54
+ setCurrentHeight(ref.current.root.branchSize * itemHeight + itemHeight);
55
+ }
56
+ else {
57
+ // 添加节点时,如果不存在 ref.current,即不存在可渲染节点
58
+ // 补全高度便于插入输入框
59
+ setCurrentHeight(itemHeight);
60
+ }
61
+ promptHandle.onDestroy(() => {
62
+ var _a;
63
+ if ((_a = ref.current) === null || _a === void 0 ? void 0 : _a.root.branchSize) {
64
+ setCurrentHeight(ref.current.root.branchSize * itemHeight);
65
+ }
66
+ });
67
+ promptHandle.onCancel(() => {
68
+ var _a;
69
+ if ((_a = ref.current) === null || _a === void 0 ? void 0 : _a.root.branchSize) {
70
+ setCurrentHeight(ref.current.root.branchSize * itemHeight);
71
+ }
72
+ });
73
+ promptHandle.onBlur(() => {
74
+ return destroyWhileBlur.current;
75
+ });
76
+ return promptHandle;
77
+ } }));
78
+ };
79
+ react_1.default.useEffect(() => {
80
+ ref.current = model;
81
+ if (ref.current.root) {
82
+ setCurrentHeight(ref.current.root.branchSize * itemHeight);
83
+ ref.current.root.watcher.on(types_1.TreeNodeEvent.DidChangeExpansionState, handleExpansionChange);
84
+ }
85
+ }, [model]);
86
+ react_1.default.useEffect(() => {
87
+ // currentHeight 更新时,有概率让整个 Tree 重绘
88
+ // 导致 prompt 的 blur 事件触发
89
+ // 这里等待 100 ms 后再将 prompt 失去焦点后关闭的逻辑打开
90
+ setTimeout(() => {
91
+ destroyWhileBlur.current = true;
92
+ }, 100);
93
+ }, [currentHeight]);
94
+ return (react_1.default.createElement(react_1.default.Fragment, null, react_1.default.createElement(recycleTreeComp, Object.assign(Object.assign({}, props), { height: currentHeight, onReady: handleOnReady }))));
95
+ };
96
+ exports.RecycleTreeAdaptiveDecorator = RecycleTreeAdaptiveDecorator;
97
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/recycle-tree/decorators/Adaptive/index.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ .kt-recycle-tree-filter-wrapper {
2
+ padding: 4px 8px;
3
+ }
4
+
5
+ .kt-recycle-tree-filter-input {
6
+ width: 100%;
7
+ }
8
+
9
+ .kt-recycle-tree-filter-icon {
10
+ color: var(--kt-icon-secondaryForeground);
11
+ }
@@ -0,0 +1,26 @@
1
+ import React from 'react';
2
+ import { IInputBaseProps } from '../../../input';
3
+ import { IRecycleTreeProps, IRecycleTreeHandle } from '../../RecycleTree';
4
+ import './filter.less';
5
+ declare type FilterHoc<Props, ExtraProps = any> = (Component: React.ComponentType<Props>) => React.ComponentType<Props & (ExtraProps extends undefined ? never : ExtraProps)>;
6
+ export interface IRecycleTreeFilterHandle extends IRecycleTreeHandle {
7
+ clearFilter: () => void;
8
+ }
9
+ /**
10
+ * 将 RecycleTree 组件装饰到具备筛选功能
11
+ * @param recycleTreeComp RecycleTree 组件
12
+ * 将原有的 RecycleTree 拓展增加三个新的 props
13
+ * * @param filterEnabled @optional 筛选模式控制开关
14
+ * * @param filterAfterClear @optional 清空筛选 input 输入时的回调
15
+ * * @param filterAutoFocus @optional 是否自动聚焦
16
+ * * @param filterPlaceholder @optional 筛选 input 的 placeholder
17
+ */
18
+ export declare const RecycleTreeFilterDecorator: FilterHoc<IRecycleTreeProps, {
19
+ filterEnabled?: boolean;
20
+ beforeFilterValueChange?: (value: string) => Promise<void>;
21
+ filterAfterClear?: IInputBaseProps['afterClear'];
22
+ filterPlaceholder?: IInputBaseProps['placeholder'];
23
+ filterAutoFocus?: IInputBaseProps['autoFocus'];
24
+ }>;
25
+ export {};
26
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/recycle-tree/decorators/Filter/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EAAE,eAAe,EAAS,MAAM,gBAAgB,CAAC;AAExD,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAE1E,OAAO,eAAe,CAAC;AAKvB,aAAK,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,GAAG,IAAI,CACxC,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,KAClC,KAAK,CAAC,aAAa,CACtB,KAAK,GAAG,CAAC,UAAU,SAAS,SAAS,GAAG,KAAK,GAAG,UAAU,CAAC,CAC5D,CAAC;AAmBF,MAAM,WAAW,wBAA0B,SAAQ,kBAAkB;IACnE,WAAW,EAAE,MAAM,IAAI,CAAC;CACzB;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,0BAA0B,EAAE,SAAS,CAChD,iBAAiB,EACjB;IACE,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB,uBAAuB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3D,gBAAgB,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,CAAC;IACjD,iBAAiB,CAAC,EAAE,eAAe,CAAC,aAAa,CAAC,CAAC;IACnD,eAAe,CAAC,EAAE,eAAe,CAAC,WAAW,CAAC,CAAC;CAChD,CAsDF,CAAC"}
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RecycleTreeFilterDecorator = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = (0, tslib_1.__importDefault)(require("react"));
6
+ const throttle_1 = (0, tslib_1.__importDefault)(require("lodash/throttle"));
7
+ const icon_1 = require("../../../icon");
8
+ const input_1 = require("../../../input");
9
+ const locale_context_provider_1 = require("../../../locale-context-provider");
10
+ require("./filter.less");
11
+ const FILTER_AREA_HEIGHT = 30;
12
+ const TREE_FILTER_DELAY = 500;
13
+ const FilterInput = (props) => {
14
+ const { localize } = react_1.default.useContext(locale_context_provider_1.LocalizeContext);
15
+ return (react_1.default.createElement("div", { className: 'kt-recycle-tree-filter-wrapper' },
16
+ react_1.default.createElement(input_1.Input, Object.assign({ hasClear: true, autoFocus: true, className: 'kt-recycle-tree-filter-input', size: 'small' }, props, { placeholder: props.placeholder || localize('tree.filter.placeholder'), addonBefore: react_1.default.createElement(icon_1.Icon, { className: 'kt-recycle-tree-filter-icon', icon: 'retrieval' }) }))));
17
+ };
18
+ /**
19
+ * 将 RecycleTree 组件装饰到具备筛选功能
20
+ * @param recycleTreeComp RecycleTree 组件
21
+ * 将原有的 RecycleTree 拓展增加三个新的 props
22
+ * * @param filterEnabled @optional 筛选模式控制开关
23
+ * * @param filterAfterClear @optional 清空筛选 input 输入时的回调
24
+ * * @param filterAutoFocus @optional 是否自动聚焦
25
+ * * @param filterPlaceholder @optional 筛选 input 的 placeholder
26
+ */
27
+ const RecycleTreeFilterDecorator = (recycleTreeComp) => (props) => {
28
+ const [value, setValue] = react_1.default.useState('');
29
+ // 引入多一个filter状态是为了在实际filter生效前不阻塞输入框值变化的过程
30
+ const [filter, setFilter] = react_1.default.useState('');
31
+ const { beforeFilterValueChange, filterEnabled, height, filterPlaceholder, filterAfterClear, onReady, filterAutoFocus } = props, recycleTreeProps = (0, tslib_1.__rest)(props, ["beforeFilterValueChange", "filterEnabled", "height", "filterPlaceholder", "filterAfterClear", "onReady", "filterAutoFocus"]);
32
+ const handleFilterChange = (0, throttle_1.default)(async (value) => {
33
+ if (beforeFilterValueChange) {
34
+ await beforeFilterValueChange(value);
35
+ }
36
+ setFilter(value);
37
+ }, TREE_FILTER_DELAY);
38
+ const handleFilterInputChange = (value) => {
39
+ setValue(value);
40
+ handleFilterChange(value);
41
+ };
42
+ const filterTreeReadyHandle = (api) => {
43
+ onReady && onReady(Object.assign(Object.assign({}, api), { clearFilter: () => {
44
+ setFilter('');
45
+ setValue('');
46
+ } }));
47
+ };
48
+ return (react_1.default.createElement(react_1.default.Fragment, null,
49
+ filterEnabled && (react_1.default.createElement(FilterInput, { afterClear: filterAfterClear, placeholder: filterPlaceholder, value: value, autoFocus: filterAutoFocus, onValueChange: handleFilterInputChange })),
50
+ react_1.default.createElement(recycleTreeComp, Object.assign(Object.assign({}, recycleTreeProps), { height: height - (filterEnabled ? FILTER_AREA_HEIGHT : 0), onReady: filterTreeReadyHandle, filter }))));
51
+ };
52
+ exports.RecycleTreeFilterDecorator = RecycleTreeFilterDecorator;
53
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/recycle-tree/decorators/Filter/index.tsx"],"names":[],"mappings":";;;;AAAA,+DAA0B;AAC1B,4EAAuC;AAEvC,wCAAqC;AACrC,0CAAwD;AACxD,8EAAmE;AAGnE,yBAAuB;AAEvB,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAC9B,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAQ9B,MAAM,WAAW,GAA8B,CAAC,KAAK,EAAE,EAAE;IACvD,MAAM,EAAE,QAAQ,EAAE,GAAG,eAAK,CAAC,UAAU,CAAC,yCAAe,CAAC,CAAC;IAEvD,OAAO,CACL,uCAAK,SAAS,EAAC,gCAAgC;QAC7C,8BAAC,aAAK,kBACJ,QAAQ,QACR,SAAS,QACT,SAAS,EAAC,8BAA8B,EACxC,IAAI,EAAC,OAAO,IACR,KAAK,IACT,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,QAAQ,CAAC,yBAAyB,CAAC,EACrE,WAAW,EAAE,8BAAC,WAAI,IAAC,SAAS,EAAC,6BAA6B,EAAC,IAAI,EAAC,WAAW,GAAG,IAAI,CAChF,CACP,CAAC;AACJ,CAAC,CAAC;AAMF;;;;;;;;GAQG;AACI,MAAM,0BAA0B,GAUnC,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE;IACjC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,eAAK,CAAC,QAAQ,CAAS,EAAE,CAAC,CAAC;IACrD,2CAA2C;IAC3C,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,eAAK,CAAC,QAAQ,CAAS,EAAE,CAAC,CAAC;IAEvD,MAAM,EACJ,uBAAuB,EAAE,aAAa,EAAE,MAAM,EAC9C,iBAAiB,EAAE,gBAAgB,EAAE,OAAO,EAC5C,eAAe,KACb,KAAK,EADa,gBAAgB,uBAClC,KAAK,EAJH,6HAIL,CAAQ,CAAC;IAEV,MAAM,kBAAkB,GAAG,IAAA,kBAAQ,EAAC,KAAK,EAAE,KAAa,EAAE,EAAE;QAC1D,IAAI,uBAAuB,EAAE;YAC3B,MAAM,uBAAuB,CAAC,KAAK,CAAC,CAAC;SACtC;QACD,SAAS,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC,EAAE,iBAAiB,CAAC,CAAC;IAEtB,MAAM,uBAAuB,GAAG,CAAC,KAAa,EAAE,EAAE;QAChD,QAAQ,CAAC,KAAK,CAAC,CAAC;QAChB,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC,CAAC;IAEF,MAAM,qBAAqB,GAAG,CAAC,GAAuB,EAAE,EAAE;QACxD,OAAO,IAAI,OAAO,CAAC,gCACd,GAAG,KACN,WAAW,EAAE,GAAG,EAAE;gBAChB,SAAS,CAAC,EAAE,CAAC,CAAC;gBACd,QAAQ,CAAC,EAAE,CAAC,CAAC;YACf,CAAC,GAC0B,CAAC,CAAC;IACjC,CAAC,CAAC;IAEF,OAAO,CACL;QAEI,aAAa,IAAI,CACf,8BAAC,WAAW,IACV,UAAU,EAAE,gBAAgB,EAC5B,WAAW,EAAE,iBAAiB,EAC9B,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,eAAe,EAC1B,aAAa,EAAE,uBAAuB,GAAI,CAC7C;QAEF,eAAK,CAAC,aAAa,CAAC,eAAe,kCAC/B,gBAAgB,KACnB,MAAM,EAAE,MAAM,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,EACzD,OAAO,EAAE,qBAAqB,EAC9B,MAAM,IACN,CACD,CACJ,CAAC;AACJ,CAAC,CAAC;AA/DW,QAAA,0BAA0B,8BA+DrC"}
@@ -0,0 +1,3 @@
1
+ export * from './Filter';
2
+ export * from './Adaptive';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/recycle-tree/decorators/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ (0, tslib_1.__exportStar)(require("./Filter"), exports);
5
+ (0, tslib_1.__exportStar)(require("./Adaptive"), exports);
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/recycle-tree/decorators/index.ts"],"names":[],"mappings":";;;AAAA,wDAAyB;AACzB,0DAA2B"}
@@ -0,0 +1,7 @@
1
+ export * from './RecycleTree';
2
+ export * from './TreeNodeRendererWrap';
3
+ export * from './prompt';
4
+ export * from './tree';
5
+ export * from './types';
6
+ export * from './decorators';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/recycle-tree/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,wBAAwB,CAAC;AACvC,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ (0, tslib_1.__exportStar)(require("./RecycleTree"), exports);
5
+ (0, tslib_1.__exportStar)(require("./TreeNodeRendererWrap"), exports);
6
+ (0, tslib_1.__exportStar)(require("./prompt"), exports);
7
+ (0, tslib_1.__exportStar)(require("./tree"), exports);
8
+ (0, tslib_1.__exportStar)(require("./types"), exports);
9
+ (0, tslib_1.__exportStar)(require("./decorators"), exports);
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/recycle-tree/index.ts"],"names":[],"mappings":";;;AAAA,6DAA8B;AAC9B,sEAAuC;AACvC,wDAAyB;AACzB,sDAAuB;AACvB,uDAAwB;AACxB,4DAA6B"}
@@ -0,0 +1,12 @@
1
+ import { PromptHandle } from './PromptHandle';
2
+ import { CompositeTreeNode } from '../tree';
3
+ import { TreeNodeType } from '../types';
4
+ export declare class NewPromptHandle extends PromptHandle {
5
+ readonly type: TreeNodeType;
6
+ readonly parent: CompositeTreeNode;
7
+ private _id;
8
+ constructor(type: TreeNodeType, parent: CompositeTreeNode);
9
+ get id(): number;
10
+ get depth(): number;
11
+ }
12
+ //# sourceMappingURL=NewPromptHandle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NewPromptHandle.d.ts","sourceRoot":"","sources":["../../../src/recycle-tree/prompt/NewPromptHandle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAY,iBAAiB,EAAE,MAAM,SAAS,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,qBAAa,eAAgB,SAAQ,YAAY;aAGnB,IAAI,EAAE,YAAY;aAAkB,MAAM,EAAE,iBAAiB;IAFzF,OAAO,CAAC,GAAG,CAA6B;gBAEZ,IAAI,EAAE,YAAY,EAAkB,MAAM,EAAE,iBAAiB;IAIzF,IAAI,EAAE,IAAI,MAAM,CAEf;IAED,IAAI,KAAK,WAER;CACF"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NewPromptHandle = void 0;
4
+ const PromptHandle_1 = require("./PromptHandle");
5
+ const tree_1 = require("../tree");
6
+ class NewPromptHandle extends PromptHandle_1.PromptHandle {
7
+ constructor(type, parent) {
8
+ super();
9
+ this.type = type;
10
+ this.parent = parent;
11
+ this._id = tree_1.TreeNode.nextId();
12
+ }
13
+ get id() {
14
+ return this._id;
15
+ }
16
+ get depth() {
17
+ return this.parent.depth + 1;
18
+ }
19
+ }
20
+ exports.NewPromptHandle = NewPromptHandle;
21
+ //# sourceMappingURL=NewPromptHandle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NewPromptHandle.js","sourceRoot":"","sources":["../../../src/recycle-tree/prompt/NewPromptHandle.ts"],"names":[],"mappings":";;;AAAA,iDAA8C;AAC9C,kCAAsD;AAGtD,MAAa,eAAgB,SAAQ,2BAAY;IAG/C,YAA4B,IAAkB,EAAkB,MAAyB;QACvF,KAAK,EAAE,CAAC;QADkB,SAAI,GAAJ,IAAI,CAAc;QAAkB,WAAM,GAAN,MAAM,CAAmB;QAFjF,QAAG,GAAW,eAAQ,CAAC,MAAM,EAAE,CAAC;IAIxC,CAAC;IAED,IAAI,EAAE;QACJ,OAAO,IAAI,CAAC,GAAG,CAAC;IAClB,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;IAC/B,CAAC;CACF;AAdD,0CAcC"}
@@ -0,0 +1,59 @@
1
+ /// <reference types="react" />
2
+ import { ProxiedInputProp } from '../../input';
3
+ import { Event } from '../../utils';
4
+ export declare enum PROMPT_VALIDATE_TYPE {
5
+ INFO = 1,
6
+ ERROR = 2,
7
+ WARNING = 3
8
+ }
9
+ export interface PromptValidateMessage {
10
+ message: string | void;
11
+ type: PROMPT_VALIDATE_TYPE;
12
+ }
13
+ /**
14
+ * 输入输出框需要在外部手动进行管理,由于我们使用的是虚拟的react节点渲染,一旦用户向上或向下滚动超出渲染访问,相关的React组件会被回收
15
+ * 故这里在外部手动维护输入框对象
16
+ */
17
+ export declare abstract class PromptHandle {
18
+ readonly $: HTMLInputElement;
19
+ readonly $validate: HTMLDivElement;
20
+ readonly $addonAfter: HTMLDivElement;
21
+ readonly ProxiedInput: (props: ProxiedInputProp) => JSX.Element;
22
+ private disposables;
23
+ private isInPendingCommitState;
24
+ private _destroyed;
25
+ private _hasValidateElement;
26
+ private _hasAddonAfter;
27
+ private _validateClassName;
28
+ private onChangeEmitter;
29
+ private onCommitEmitter;
30
+ private onCancelEmitter;
31
+ private onFocusEmitter;
32
+ private onBlurEmitter;
33
+ private onDestroyEmitter;
34
+ constructor();
35
+ abstract get id(): number;
36
+ abstract get depth(): number;
37
+ get destroyed(): boolean;
38
+ get onChange(): Event<string>;
39
+ get onCommit(): Event<string>;
40
+ get onCancel(): Event<string>;
41
+ get onFocus(): Event<string>;
42
+ get onBlur(): Event<string>;
43
+ get onDestroy(): Event<string>;
44
+ focus(): void;
45
+ setSelectionRange(start: number, end: number): void;
46
+ addClassName(classname: string): void;
47
+ removeClassName(classname: string): void;
48
+ addAddonAfter(classname: string): void;
49
+ removeAddonAfter(): void;
50
+ addValidateMessage(validateMessage: PromptValidateMessage): void;
51
+ removeValidateMessage(): void;
52
+ destroy(): void;
53
+ private handleClick;
54
+ private handleKeyup;
55
+ private handleKeydown;
56
+ private handleFocus;
57
+ private handleBlur;
58
+ }
59
+ //# sourceMappingURL=PromptHandle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PromptHandle.d.ts","sourceRoot":"","sources":["../../../src/recycle-tree/prompt/PromptHandle.ts"],"names":[],"mappings":";AAAA,OAAO,EAAoB,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,EAAiC,KAAK,EAAgB,MAAM,aAAa,CAAC;AAIjF,oBAAY,oBAAoB;IAC9B,IAAI,IAAI;IACR,KAAK,IAAI;IACT,OAAO,IAAI;CACZ;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,IAAI,EAAE,oBAAoB,CAAC;CAC5B;AAED;;;GAGG;AACH,8BAAsB,YAAY;IAChC,SAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,SAAgB,SAAS,EAAE,cAAc,CAAC;IAC1C,SAAgB,WAAW,EAAE,cAAc,CAAC;IAC5C,SAAgB,YAAY,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,GAAG,CAAC,OAAO,CAAC;IACvE,OAAO,CAAC,WAAW,CAAoD;IACvE,OAAO,CAAC,sBAAsB,CAAkB;IAChD,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,mBAAmB,CAAkB;IAC7C,OAAO,CAAC,cAAc,CAAkB;IACxC,OAAO,CAAC,kBAAkB,CAAS;IAGnC,OAAO,CAAC,eAAe,CAAkC;IACzD,OAAO,CAAC,eAAe,CAAkC;IACzD,OAAO,CAAC,eAAe,CAAkC;IACzD,OAAO,CAAC,cAAc,CAAkC;IACxD,OAAO,CAAC,aAAa,CAAkC;IACvD,OAAO,CAAC,gBAAgB,CAAkC;;IAwB1D,QAAQ,KAAK,EAAE,IAAI,MAAM,CAAA;IAEzB,QAAQ,KAAK,KAAK,IAAI,MAAM,CAAA;IAE5B,IAAI,SAAS,YAEZ;IAED,IAAI,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC,CAE5B;IAED,IAAI,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC,CAE5B;IAED,IAAI,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC,CAE5B;IAED,IAAI,OAAO,IAAI,KAAK,CAAC,MAAM,CAAC,CAE3B;IAED,IAAI,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,CAE1B;IAED,IAAI,SAAS,IAAI,KAAK,CAAC,MAAM,CAAC,CAE7B;IAEM,KAAK,IAAI,IAAI;IAIb,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI;IAInD,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAIrC,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAIxC,aAAa,CAAC,SAAS,EAAE,MAAM;IAU/B,gBAAgB;IAQhB,kBAAkB,CAAC,eAAe,EAAE,qBAAqB;IAqBzD,qBAAqB;IAQrB,OAAO,IAAI,IAAI;IAiBtB,OAAO,CAAC,WAAW,CAElB;IAED,OAAO,CAAC,WAAW,CAElB;IAED,OAAO,CAAC,aAAa,CAyBpB;IAED,OAAO,CAAC,WAAW,CAElB;IAED,OAAO,CAAC,UAAU,CAiBjB;CACF"}