@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,200 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PromptHandle = exports.PROMPT_VALIDATE_TYPE = void 0;
4
+ const input_1 = require("../../input");
5
+ const utils_1 = require("../../utils");
6
+ const delay = (ms) => new Promise((res) => setTimeout(res, ms));
7
+ var PROMPT_VALIDATE_TYPE;
8
+ (function (PROMPT_VALIDATE_TYPE) {
9
+ PROMPT_VALIDATE_TYPE[PROMPT_VALIDATE_TYPE["INFO"] = 1] = "INFO";
10
+ PROMPT_VALIDATE_TYPE[PROMPT_VALIDATE_TYPE["ERROR"] = 2] = "ERROR";
11
+ PROMPT_VALIDATE_TYPE[PROMPT_VALIDATE_TYPE["WARNING"] = 3] = "WARNING";
12
+ })(PROMPT_VALIDATE_TYPE = exports.PROMPT_VALIDATE_TYPE || (exports.PROMPT_VALIDATE_TYPE = {}));
13
+ /**
14
+ * 输入输出框需要在外部手动进行管理,由于我们使用的是虚拟的react节点渲染,一旦用户向上或向下滚动超出渲染访问,相关的React组件会被回收
15
+ * 故这里在外部手动维护输入框对象
16
+ */
17
+ class PromptHandle {
18
+ constructor() {
19
+ this.disposables = new utils_1.DisposableCollection();
20
+ this.isInPendingCommitState = false;
21
+ this._destroyed = false;
22
+ this._hasValidateElement = false;
23
+ this._hasAddonAfter = false;
24
+ // event
25
+ this.onChangeEmitter = new utils_1.Emitter();
26
+ this.onCommitEmitter = new utils_1.Emitter();
27
+ this.onCancelEmitter = new utils_1.Emitter();
28
+ this.onFocusEmitter = new utils_1.Emitter();
29
+ this.onBlurEmitter = new utils_1.Emitter();
30
+ this.onDestroyEmitter = new utils_1.Emitter();
31
+ this.handleClick = (ev) => {
32
+ ev.stopPropagation();
33
+ };
34
+ this.handleKeyup = (ev) => {
35
+ this.onChangeEmitter.fire(this.$.value);
36
+ };
37
+ this.handleKeydown = async (ev) => {
38
+ if (ev.key === 'Escape') {
39
+ const res = await this.onCancelEmitter.fireAndAwait(this.$.value);
40
+ // 当有回调函数报错或返回结果为false时,终止后续操作
41
+ if (res.some((r) => r.result === false || !!r.err)) {
42
+ return;
43
+ }
44
+ this.destroy();
45
+ }
46
+ if (ev.key === 'Enter') {
47
+ this.isInPendingCommitState = true;
48
+ this.$.disabled = true;
49
+ const res = await this.onCommitEmitter.fireAndAwait(this.$.value);
50
+ // 当有回调函数报错或返回结果为false时,终止后续操作
51
+ if (res.some((r) => r.result === false || !!r.err)) {
52
+ this.isInPendingCommitState = false;
53
+ this.$.disabled = false;
54
+ this.$.focus();
55
+ return;
56
+ }
57
+ this.isInPendingCommitState = false;
58
+ this.$.disabled = false;
59
+ this.destroy();
60
+ }
61
+ };
62
+ this.handleFocus = () => {
63
+ this.onFocusEmitter.fire(this.$.value);
64
+ };
65
+ this.handleBlur = async (ev) => {
66
+ // 如果Input由于`react-virtualized`被从视图中卸载,在下一帧前Input的isConnected属性不会被更新
67
+ await delay(0);
68
+ // 如果Input组件不在DOM中,但也没有被手动销毁,则表示由于其不在视窗内被`react-virtualized`卸载
69
+ if (!this.$.isConnected && !this.destroyed) {
70
+ return;
71
+ }
72
+ const res = await this.onBlurEmitter.fireAndAwait(this.$.value);
73
+ // 当有回调函数报错或返回结果为false时,终止后续操作
74
+ if (res.some((r) => r.result === false || !!r.err)) {
75
+ return;
76
+ }
77
+ if (!this.isInPendingCommitState) {
78
+ this.destroy();
79
+ }
80
+ };
81
+ this.$ = document.createElement('input');
82
+ this.$.setAttribute('type', 'text');
83
+ this.$.setAttribute('name', 'no_keybinding');
84
+ // reset props
85
+ this.$.setAttribute('spellcheck', 'false');
86
+ this.$.setAttribute('autoCapitalize', 'off');
87
+ this.$.setAttribute('autoCorrect', 'off');
88
+ this.$.setAttribute('autoComplete', 'off');
89
+ this.ProxiedInput = (0, input_1.bindInputElement)(this.$);
90
+ this.$.addEventListener('click', this.handleClick);
91
+ this.$.addEventListener('keyup', this.handleKeyup);
92
+ this.$.addEventListener('keydown', this.handleKeydown);
93
+ this.$.addEventListener('focus', this.handleFocus);
94
+ this.$.addEventListener('blur', this.handleBlur);
95
+ this.$validate = document.createElement('div');
96
+ this.$validate.setAttribute('style', 'top: calc(100% - 1px);');
97
+ this.$addonAfter = document.createElement('div');
98
+ this.$addonAfter.setAttribute('class', 'kt-input-addon-after');
99
+ // 可能存在PromptHandle创建后没被使用的情况
100
+ }
101
+ get destroyed() {
102
+ return this._destroyed;
103
+ }
104
+ get onChange() {
105
+ return this.onChangeEmitter.event;
106
+ }
107
+ get onCommit() {
108
+ return this.onCommitEmitter.event;
109
+ }
110
+ get onCancel() {
111
+ return this.onCancelEmitter.event;
112
+ }
113
+ get onFocus() {
114
+ return this.onFocusEmitter.event;
115
+ }
116
+ get onBlur() {
117
+ return this.onBlurEmitter.event;
118
+ }
119
+ get onDestroy() {
120
+ return this.onDestroyEmitter.event;
121
+ }
122
+ focus() {
123
+ this.$.focus();
124
+ }
125
+ setSelectionRange(start, end) {
126
+ this.$.setSelectionRange(start, end);
127
+ }
128
+ addClassName(classname) {
129
+ this.$.classList.add(classname);
130
+ }
131
+ removeClassName(classname) {
132
+ this.$.classList.remove(classname);
133
+ }
134
+ addAddonAfter(classname) {
135
+ var _a, _b;
136
+ if (!this._hasAddonAfter && !this._destroyed) {
137
+ (_b = (_a = this.$.parentElement) === null || _a === void 0 ? void 0 : _a.parentElement) === null || _b === void 0 ? void 0 : _b.appendChild(this.$addonAfter);
138
+ this._hasAddonAfter = true;
139
+ }
140
+ const addElement = document.createElement('div');
141
+ addElement.setAttribute('class', classname);
142
+ this.$addonAfter.appendChild(addElement);
143
+ }
144
+ removeAddonAfter() {
145
+ var _a, _b, _c;
146
+ if (this._hasAddonAfter) {
147
+ (_a = this.$addonAfter.firstChild) === null || _a === void 0 ? void 0 : _a.remove();
148
+ (_c = (_b = this.$.parentElement) === null || _b === void 0 ? void 0 : _b.parentElement) === null || _c === void 0 ? void 0 : _c.removeChild(this.$addonAfter);
149
+ this._hasAddonAfter = false;
150
+ }
151
+ }
152
+ addValidateMessage(validateMessage) {
153
+ var _a, _b, _c, _d, _e;
154
+ if (!this._hasValidateElement && !this._destroyed) {
155
+ // 移动到与input-box同级别
156
+ (_c = (_b = (_a = this.$.parentElement) === null || _a === void 0 ? void 0 : _a.parentElement) === null || _b === void 0 ? void 0 : _b.parentElement) === null || _c === void 0 ? void 0 : _c.appendChild(this.$validate);
157
+ this._hasValidateElement = true;
158
+ }
159
+ let validateBoxClassName = 'validate-message popup ';
160
+ if (validateMessage && validateMessage.type === PROMPT_VALIDATE_TYPE.ERROR) {
161
+ this._validateClassName = 'validate-error';
162
+ }
163
+ else if (validateMessage && validateMessage.type === PROMPT_VALIDATE_TYPE.WARNING) {
164
+ this._validateClassName = 'validate-warning';
165
+ }
166
+ else {
167
+ this._validateClassName = 'validate-info';
168
+ }
169
+ validateBoxClassName += this._validateClassName;
170
+ this.$validate.classList.value = validateBoxClassName;
171
+ this.$validate.innerText = validateMessage.message || '';
172
+ (_e = (_d = this.$.parentElement) === null || _d === void 0 ? void 0 : _d.parentElement) === null || _e === void 0 ? void 0 : _e.classList.add(this._validateClassName);
173
+ }
174
+ removeValidateMessage() {
175
+ var _a, _b, _c, _d, _e;
176
+ if (this._hasValidateElement) {
177
+ (_c = (_b = (_a = this.$.parentElement) === null || _a === void 0 ? void 0 : _a.parentElement) === null || _b === void 0 ? void 0 : _b.parentElement) === null || _c === void 0 ? void 0 : _c.removeChild(this.$validate);
178
+ this._hasValidateElement = false;
179
+ (_e = (_d = this.$.parentElement) === null || _d === void 0 ? void 0 : _d.parentElement) === null || _e === void 0 ? void 0 : _e.classList.remove(this._validateClassName);
180
+ }
181
+ }
182
+ destroy() {
183
+ if (this._destroyed) {
184
+ return;
185
+ }
186
+ this._destroyed = true;
187
+ this.$.removeEventListener('click', this.handleClick);
188
+ this.$.removeEventListener('keyup', this.handleKeyup);
189
+ this.$.removeEventListener('keydown', this.handleKeydown);
190
+ this.$.removeEventListener('focus', this.handleFocus);
191
+ this.$.removeEventListener('blur', this.handleBlur);
192
+ this.removeValidateMessage();
193
+ this.removeAddonAfter();
194
+ this.$.disabled = false;
195
+ this.onDestroyEmitter.fire(this.$.value);
196
+ this.disposables.dispose();
197
+ }
198
+ }
199
+ exports.PromptHandle = PromptHandle;
200
+ //# sourceMappingURL=PromptHandle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PromptHandle.js","sourceRoot":"","sources":["../../../src/recycle-tree/prompt/PromptHandle.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { PromptHandle } from './PromptHandle';
2
+ import { TreeNode, CompositeTreeNode } from '../tree';
3
+ export declare class RenamePromptHandle extends PromptHandle {
4
+ readonly originalFileName: string;
5
+ readonly target: CompositeTreeNode | TreeNode;
6
+ constructor(originalFileName: string, target: CompositeTreeNode | TreeNode);
7
+ get id(): number;
8
+ get depth(): number;
9
+ }
10
+ //# sourceMappingURL=RenamePromptHandle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RenamePromptHandle.d.ts","sourceRoot":"","sources":["../../../src/recycle-tree/prompt/RenamePromptHandle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAEtD,qBAAa,kBAAmB,SAAQ,YAAY;aACtB,gBAAgB,EAAE,MAAM;aAAkB,MAAM,EAAE,iBAAiB,GAAG,QAAQ;gBAA9E,gBAAgB,EAAE,MAAM,EAAkB,MAAM,EAAE,iBAAiB,GAAG,QAAQ;IAM1G,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.RenamePromptHandle = void 0;
4
+ const PromptHandle_1 = require("./PromptHandle");
5
+ class RenamePromptHandle extends PromptHandle_1.PromptHandle {
6
+ constructor(originalFileName, target) {
7
+ super();
8
+ this.originalFileName = originalFileName;
9
+ this.target = target;
10
+ this.$.value = originalFileName;
11
+ this.setSelectionRange(0, originalFileName.lastIndexOf('.'));
12
+ }
13
+ get id() {
14
+ return this.target.id;
15
+ }
16
+ get depth() {
17
+ return this.target.depth;
18
+ }
19
+ }
20
+ exports.RenamePromptHandle = RenamePromptHandle;
21
+ //# sourceMappingURL=RenamePromptHandle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RenamePromptHandle.js","sourceRoot":"","sources":["../../../src/recycle-tree/prompt/RenamePromptHandle.ts"],"names":[],"mappings":";;;AAAA,iDAA8C;AAG9C,MAAa,kBAAmB,SAAQ,2BAAY;IAClD,YAA4B,gBAAwB,EAAkB,MAAoC;QACxG,KAAK,EAAE,CAAC;QADkB,qBAAgB,GAAhB,gBAAgB,CAAQ;QAAkB,WAAM,GAAN,MAAM,CAA8B;QAExG,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,gBAAgB,CAAC;QAChC,IAAI,CAAC,iBAAiB,CAAC,CAAC,EAAE,gBAAgB,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED,IAAI,EAAE;QACJ,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;IACxB,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;IAC3B,CAAC;CACF;AAdD,gDAcC"}
@@ -0,0 +1,4 @@
1
+ export * from './PromptHandle';
2
+ export * from './RenamePromptHandle';
3
+ export * from './NewPromptHandle';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/recycle-tree/prompt/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ (0, tslib_1.__exportStar)(require("./PromptHandle"), exports);
5
+ (0, tslib_1.__exportStar)(require("./RenamePromptHandle"), exports);
6
+ (0, tslib_1.__exportStar)(require("./NewPromptHandle"), exports);
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/recycle-tree/prompt/index.ts"],"names":[],"mappings":";;;AAAA,8DAA+B;AAC/B,oEAAqC;AACrC,iEAAkC"}
@@ -0,0 +1,20 @@
1
+ import { TreeNode, CompositeTreeNode } from './TreeNode';
2
+ import { Emitter, DisposableCollection } from '../../utils';
3
+ import { ITreeNodeOrCompositeTreeNode, ITree, ICompositeTreeNode } from '../types';
4
+ export declare abstract class Tree implements ITree {
5
+ protected _root: CompositeTreeNode | undefined;
6
+ protected readonly onChangedEmitter: Emitter<void>;
7
+ protected readonly onNodeRefreshedEmitter: Emitter<CompositeTreeNode>;
8
+ protected readonly toDispose: DisposableCollection;
9
+ protected nodes: {
10
+ [id: string]: TreeNode | undefined;
11
+ };
12
+ get onNodeRefreshed(): import("../../utils").Event<CompositeTreeNode>;
13
+ dispose(): void;
14
+ get root(): CompositeTreeNode | undefined;
15
+ set root(root: CompositeTreeNode | undefined);
16
+ protected fireChanged(): void;
17
+ abstract resolveChildren(parent?: ICompositeTreeNode): Promise<ITreeNodeOrCompositeTreeNode[] | null>;
18
+ sortComparator(a: ITreeNodeOrCompositeTreeNode, b: ITreeNodeOrCompositeTreeNode): number;
19
+ }
20
+ //# sourceMappingURL=Tree.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tree.d.ts","sourceRoot":"","sources":["../../../src/recycle-tree/tree/Tree.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,4BAA4B,EAAE,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAEnF,8BAAsB,IAAK,YAAW,KAAK;IACzC,SAAS,CAAC,KAAK,EAAE,iBAAiB,GAAG,SAAS,CAAC;IAC/C,SAAS,CAAC,QAAQ,CAAC,gBAAgB,gBAAuB;IAC1D,SAAS,CAAC,QAAQ,CAAC,sBAAsB,6BAAoC;IAC7E,SAAS,CAAC,QAAQ,CAAC,SAAS,uBAA8B;IAE1D,SAAS,CAAC,KAAK,EAAE;QACf,CAAC,EAAE,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;KACpC,CAAM;IAEP,IAAI,eAAe,mDAElB;IAED,OAAO,IAAI,IAAI;IAIf,IAAI,IAAI,IAAI,iBAAiB,GAAG,SAAS,CAExC;IAED,IAAI,IAAI,CAAC,IAAI,EAAE,iBAAiB,GAAG,SAAS,EAK3C;IAED,SAAS,CAAC,WAAW,IAAI,IAAI;IAI7B,QAAQ,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,4BAA4B,EAAE,GAAG,IAAI,CAAC;IAErG,cAAc,CAAC,CAAC,EAAE,4BAA4B,EAAE,CAAC,EAAE,4BAA4B,GAAG,MAAM;CAUzF"}
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Tree = void 0;
4
+ const TreeNode_1 = require("./TreeNode");
5
+ const utils_1 = require("../../utils");
6
+ class Tree {
7
+ constructor() {
8
+ this.onChangedEmitter = new utils_1.Emitter();
9
+ this.onNodeRefreshedEmitter = new utils_1.Emitter();
10
+ this.toDispose = new utils_1.DisposableCollection();
11
+ this.nodes = {};
12
+ }
13
+ get onNodeRefreshed() {
14
+ return this.onNodeRefreshedEmitter.event;
15
+ }
16
+ dispose() {
17
+ this.toDispose.dispose();
18
+ }
19
+ get root() {
20
+ return this._root;
21
+ }
22
+ set root(root) {
23
+ this._root = root;
24
+ if (this.root) {
25
+ this.root.ensureLoaded();
26
+ }
27
+ }
28
+ fireChanged() {
29
+ this.onChangedEmitter.fire(undefined);
30
+ }
31
+ sortComparator(a, b) {
32
+ if (a.constructor === b.constructor) {
33
+ return a.name > b.name ? 1
34
+ : a.name < b.name ? -1
35
+ : 0;
36
+ }
37
+ return TreeNode_1.CompositeTreeNode.is(a) ? -1
38
+ : TreeNode_1.CompositeTreeNode.is(b) ? 1
39
+ : 0;
40
+ }
41
+ }
42
+ exports.Tree = Tree;
43
+ //# sourceMappingURL=Tree.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tree.js","sourceRoot":"","sources":["../../../src/recycle-tree/tree/Tree.ts"],"names":[],"mappings":";;;AAAA,yCAAyD;AACzD,uCAA4D;AAG5D,MAAsB,IAAI;IAA1B;QAEqB,qBAAgB,GAAG,IAAI,eAAO,EAAQ,CAAC;QACvC,2BAAsB,GAAG,IAAI,eAAO,EAAqB,CAAC;QAC1D,cAAS,GAAG,IAAI,4BAAoB,EAAE,CAAC;QAEhD,UAAK,GAEX,EAAE,CAAC;IAqCT,CAAC;IAnCC,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC;IAC3C,CAAC;IAED,OAAO;QACL,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,IAAI,IAAI,CAAC,IAAmC;QAC1C,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;SAC1B;IACH,CAAC;IAES,WAAW;QACnB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACxC,CAAC;IAID,cAAc,CAAC,CAA+B,EAAE,CAA+B;QAC7E,IAAI,CAAC,CAAC,WAAW,KAAK,CAAC,CAAC,WAAW,EAAE;YACnC,OAAO,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACxB,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;oBACpB,CAAC,CAAC,CAAC,CAAC;SACT;QACD,OAAO,4BAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACjC,CAAC,CAAC,4BAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC;gBAC5B,CAAC,CAAC,CAAC,CAAC;IACV,CAAC;CACF;AA7CD,oBA6CC"}
@@ -0,0 +1,222 @@
1
+ import { IWatcherInfo, ITreeNodeOrCompositeTreeNode, ITreeNode, ICompositeTreeNode, ITreeWatcher, ITree, TreeNodeType, IAccessibilityInformation } from '../types';
2
+ /**
3
+ * 裁剪数组
4
+ *
5
+ * @param arr 裁剪数组
6
+ * @param start 起始位置
7
+ * @param deleteCount 删除或替换位置
8
+ * @param items 插入的数组
9
+ */
10
+ export declare function spliceArray(arr: number[], start: number, deleteCount?: number, items?: number[] | null): number[];
11
+ export declare type TreeNodeOrCompositeTreeNode = TreeNode | CompositeTreeNode;
12
+ export declare class TreeNode implements ITreeNode {
13
+ static nextId: () => number;
14
+ static is(node: any): node is ITreeNode;
15
+ static getTreeNodeById(id: number): ITreeNodeOrCompositeTreeNode | undefined;
16
+ static getTreeNodeByPath(path: string): ITreeNodeOrCompositeTreeNode | undefined;
17
+ static setTreeNode(id: number, path: string, node: TreeNode): void;
18
+ static removeTreeNode(id: number, path: string): void;
19
+ static idToTreeNode: Map<number, ITreeNodeOrCompositeTreeNode>;
20
+ static pathToTreeNode: Map<string, ITreeNodeOrCompositeTreeNode>;
21
+ protected _uid: number;
22
+ protected _depth: number;
23
+ private _parent;
24
+ private _metadata;
25
+ private _disposed;
26
+ protected _watcher: ITreeWatcher;
27
+ protected _tree: ITree;
28
+ protected _visible: boolean;
29
+ protected constructor(tree: ITree, parent?: ICompositeTreeNode, watcher?: ITreeWatcher, optionalMetadata?: {
30
+ [key: string]: any;
31
+ }, options?: {
32
+ disableCache?: boolean;
33
+ });
34
+ get disposed(): boolean;
35
+ /**
36
+ * 获取基础信息
37
+ */
38
+ get depth(): number;
39
+ get parent(): ICompositeTreeNode | undefined;
40
+ set parent(node: ICompositeTreeNode | undefined);
41
+ get whenReady(): Promise<void>;
42
+ get type(): TreeNodeType;
43
+ get id(): number;
44
+ get name(): string;
45
+ set name(name: string);
46
+ get path(): string;
47
+ get accessibilityInformation(): IAccessibilityInformation;
48
+ getMetadata(withKey: string): any;
49
+ addMetadata(withKey: string, value: any): void;
50
+ removeMetadata(withKey: string): void;
51
+ /**
52
+ * 这里的move操作可能为移动,也可能为重命名
53
+ *
54
+ * @param {ICompositeTreeNode} to
55
+ * @param {string} [name=this.name]
56
+ * @returns
57
+ * @memberof TreeNode
58
+ */
59
+ mv(to: ICompositeTreeNode | null, name?: string): void;
60
+ get visible(): boolean;
61
+ setVisible(b: boolean): this;
62
+ protected dispose(): void;
63
+ }
64
+ export declare class CompositeTreeNode extends TreeNode implements ICompositeTreeNode {
65
+ private static defaultSortComparator;
66
+ static is(node: any): node is ICompositeTreeNode;
67
+ static isRoot(node: any): boolean;
68
+ protected _children: ITreeNodeOrCompositeTreeNode[] | null;
69
+ private _branchSize;
70
+ private _flattenedBranch;
71
+ private isExpanded;
72
+ private hardReloadPromise;
73
+ private hardReloadPResolver;
74
+ private refreshTasks;
75
+ private activeRefreshPromise;
76
+ private queuedRefreshPromise;
77
+ private queuedRefreshPromiseFactory;
78
+ private watchTerminator;
79
+ watchEvents: Map<string, IWatcherInfo>;
80
+ protected generatorWatcher(): ITreeWatcher;
81
+ constructor(tree: ITree, parent: ICompositeTreeNode | undefined, watcher?: ITreeWatcher, optionalMetadata?: {
82
+ [key: string]: any;
83
+ }, options?: {
84
+ disableCache?: boolean;
85
+ });
86
+ set name(name: string);
87
+ get name(): string;
88
+ get watcher(): ITreeWatcher;
89
+ get type(): TreeNodeType;
90
+ get children(): ITreeNodeOrCompositeTreeNode[] | null;
91
+ get expanded(): boolean;
92
+ /**
93
+ * 当前可见的分支数量
94
+ *
95
+ * 当节点为展开状态时,其整个分支(递归展平)由上一级的分支(根(位于数据层可见)或处于折叠状态的分支)拥有
96
+ * 当节点为折叠状态时,其整个分支(递归展平)由其上一级父目录展开该节点
97
+ *
98
+ * @readonly
99
+ * @memberof CompositeTreeNode
100
+ */
101
+ get branchSize(): number;
102
+ /**
103
+ * 获取当前节点的分支数,一般为顶层节点,如Root上获取
104
+ *
105
+ * @readonly
106
+ * @memberof CompositeTreeNode
107
+ */
108
+ get flattenedBranch(): number[] | null;
109
+ /**
110
+ * 确保此“目录”的子级已加载(不影响“展开”状态)
111
+ * 如果子级已经加载,则返回的Promise将立即解决
112
+ * 否则,将发出重新加载请求并返回Promise
113
+ * 一旦返回的Promise.resolve,“CompositeTreeNode#children” 便可以访问到对于节点
114
+ */
115
+ ensureLoaded(): Promise<void>;
116
+ setExpanded(ensureVisible?: boolean, quiet?: boolean): Promise<void>;
117
+ private getAllExpandedNodePath;
118
+ private getAllCollapsedNodePath;
119
+ private forceReloadChildrenQuiet;
120
+ expandedAll(collapsedPaths?: string[]): Promise<void>;
121
+ collapsedAll(expandedPaths?: string[]): Promise<void>;
122
+ setCollapsed(quiet?: boolean): void;
123
+ mv(to: ICompositeTreeNode, name?: string): void;
124
+ /**
125
+ * 在节点中插入新的节点
126
+ *
127
+ * 直接调用此方法将不会触发onWillHandleWatchEvent和onDidHandleWatchEvent事件
128
+ */
129
+ insertItem(item: ITreeNodeOrCompositeTreeNode): void;
130
+ /**
131
+ * 从父节点中移除节点
132
+ *
133
+ * 直接调用此方法将不会触发onWillHandleWatchEvent和onDidHandleWatchEvent事件
134
+ */
135
+ unlinkItem(item: ITreeNodeOrCompositeTreeNode, reparenting?: boolean): void;
136
+ /**
137
+ * 转换节点路径
138
+ */
139
+ private transferItem;
140
+ protected dispose(): void;
141
+ /**
142
+ * 设置扁平化的分支信息
143
+ */
144
+ protected setFlattenedBranch(leaves: number[] | null, withoutNotify?: boolean): void;
145
+ /**
146
+ * 展开分支节点
147
+ * @param branch 分支节点
148
+ */
149
+ protected expandBranch(branch: CompositeTreeNode, withoutNotify?: boolean): void;
150
+ /**
151
+ * 清理分支节点
152
+ * @param branch 分支节点
153
+ */
154
+ protected shrinkBranch(branch: CompositeTreeNode, withoutNotify?: boolean): void;
155
+ /**
156
+ * 加载节点信息
157
+ * @memberof CompositeTreeNode
158
+ */
159
+ hardReloadChildren(quiet?: boolean): Promise<void>;
160
+ /**
161
+ * 处理Watch事件,同时可通过外部手动调 g用节点更新函数进行节点替换,这里为通用的事件管理
162
+ * 如: transferItem,insertItem, unlinkItem等
163
+ * @private
164
+ * @memberof CompositeTreeNode
165
+ */
166
+ private handleWatchEvent;
167
+ refresh(paths?: string[]): Promise<unknown>;
168
+ private queue;
169
+ private doRefresh;
170
+ private mergeExpandedPaths;
171
+ private isItemVisibleAtRootSurface;
172
+ /**
173
+ * 检查节点是否可见,而不是被隐藏在节点中
174
+ *
175
+ * 这里的可见并不表示节点在当前视图中可见,而是在用户滚动到特定位置便可看见
176
+ *
177
+ * 隐藏在节点中可能的原因为其父节点中有一个以上处于折叠状态
178
+ */
179
+ isItemVisibleAtSurface(item: ITreeNodeOrCompositeTreeNode): boolean;
180
+ private transformToRelativePath;
181
+ /**
182
+ * 根据路径展开节点树
183
+ * @memberof CompositeTreeNode
184
+ */
185
+ forceLoadTreeNodeAtPath(path: string): Promise<ITreeNodeOrCompositeTreeNode | undefined>;
186
+ /**
187
+ * 根据节点获取节点ID下标位置
188
+ * @param {number} id
189
+ * @returns
190
+ * @memberof CompositeTreeNode
191
+ */
192
+ getIndexAtTreeNodeId(id: number): number;
193
+ /**
194
+ * 根据节点获取节点下标位置
195
+ * @param {ITreeNodeOrCompositeTreeNode} node
196
+ * @returns
197
+ * @memberof CompositeTreeNode
198
+ */
199
+ getIndexAtTreeNode(node: ITreeNodeOrCompositeTreeNode): number;
200
+ /**
201
+ * 根据下标位置获取节点
202
+ * @param {number} index
203
+ * @returns
204
+ * @memberof CompositeTreeNode
205
+ */
206
+ getTreeNodeAtIndex(index: number): ITreeNodeOrCompositeTreeNode | undefined;
207
+ /**
208
+ * 根据节点ID获取节点
209
+ * @param {number} id
210
+ * @returns
211
+ * @memberof CompositeTreeNode
212
+ */
213
+ getTreeNodeById(id: number): ITreeNodeOrCompositeTreeNode | undefined;
214
+ /**
215
+ * 根据节点路径获取节点
216
+ * @param {string} path
217
+ * @returns
218
+ * @memberof CompositeTreeNode
219
+ */
220
+ getTreeNodeByPath(path: string): ITreeNodeOrCompositeTreeNode | undefined;
221
+ }
222
+ //# sourceMappingURL=TreeNode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TreeNode.d.ts","sourceRoot":"","sources":["../../../src/recycle-tree/tree/TreeNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsC,YAAY,EAAE,4BAA4B,EAAE,SAAS,EAAE,kBAAkB,EAAoD,YAAY,EAAmB,KAAK,EAAc,YAAY,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AAGtR;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,GAAE,MAAU,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,YAIzG;AAED,oBAAY,2BAA2B,GAAG,QAAQ,GAAG,iBAAiB,CAAC;AAEvE,qBAAa,QAAS,YAAW,SAAS;IACxC,OAAc,MAAM,eAGf;WAES,EAAE,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,IAAI,SAAS;WAIhC,eAAe,CAAC,EAAE,EAAE,MAAM;WAI1B,iBAAiB,CAAC,IAAI,EAAE,MAAM;WAI9B,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ;WAKpD,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAKrD,OAAc,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,4BAA4B,CAAC,CAAa;IAClF,OAAc,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,4BAA4B,CAAC,CAAa;IAEpF,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,OAAO,CAAiC;IAEhD,OAAO,CAAC,SAAS,CAEf;IAEF,OAAO,CAAC,SAAS,CAAU;IAC3B,SAAS,CAAC,QAAQ,EAAE,YAAY,CAAC;IAEjC,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC;IACvB,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC;IAE5B,SAAS,aAAa,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,kBAAkB,EAAE,OAAO,CAAC,EAAE,YAAY,EAAE,gBAAgB,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAAE,OAAO,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,OAAO,CAAA;KAAE;IAkBvK,IAAI,QAAQ,YAEX;IAED;;OAEG;IACH,IAAI,KAAK,WAER;IAED,IAAI,MAAM,IAIO,kBAAkB,GAAG,SAAS,CAF9C;IAED,IAAI,MAAM,CAAC,IAAI,EAAE,kBAAkB,GAAG,SAAS,EAE9C;IAED,IAAI,SAAS,kBAGZ;IAED,IAAI,IAAI,iBAEP;IAED,IAAI,EAAE,WAEL;IAED,IAAI,IAAI,IAQO,MAAM,CAFpB;IAED,IAAI,IAAI,CAAC,IAAI,EAAE,MAAM,EAEpB;IAGD,IAAI,IAAI,IAAI,MAAM,CAKjB;IAED,IAAI,wBAAwB,IAAI,yBAAyB,CAKxD;IAEM,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,GAAG;IAIjC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAWvC,cAAc,CAAC,OAAO,EAAE,MAAM;IAQrC;;;;;;;OAOG;IACI,EAAE,CAAC,EAAE,EAAE,kBAAkB,GAAG,IAAI,EAAE,IAAI,GAAE,MAAkB;IAiCjE,IAAW,OAAO,IAAI,OAAO,CAE5B;IAEM,UAAU,CAAC,CAAC,EAAE,OAAO,GAAG,IAAI;IAKnC,SAAS,CAAC,OAAO;CAOlB;AAED,qBAAa,iBAAkB,SAAQ,QAAS,YAAW,kBAAkB;IAE3E,OAAO,CAAC,MAAM,CAAC,qBAAqB;WAWtB,EAAE,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,IAAI,kBAAkB;WAIzC,MAAM,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO;IAIxC,SAAS,CAAC,SAAS,EAAE,4BAA4B,EAAE,GAAG,IAAI,CAAQ;IAElE,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,gBAAgB,CAAkB;IAC1C,OAAO,CAAC,UAAU,CAAU;IAC5B,OAAO,CAAC,iBAAiB,CAAuB;IAChD,OAAO,CAAC,mBAAmB,CAAsB;IAEjD,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,oBAAoB,CAAsB;IAClD,OAAO,CAAC,oBAAoB,CAAsB;IAClD,OAAO,CAAC,2BAA2B,CAA8B;IAEjE,OAAO,CAAC,eAAe,CAAyB;IACzC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAE9C,SAAS,CAAC,gBAAgB;gBAuEd,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,kBAAkB,GAAG,SAAS,EAAE,OAAO,CAAC,EAAE,YAAY,EAAE,gBAAgB,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAAE,OAAO,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,OAAO,CAAA;KAAE;IAcxK,IAAI,IAAI,CAAC,IAAI,EAAE,MAAM,EASpB;IAED,IAAI,IAAI,IAXO,MAAM,CAiBpB;IAGD,IAAI,OAAO,iBAEV;IAED,IAAI,IAAI,iBAEP;IAED,IAAI,QAAQ,0CAEX;IAED,IAAI,QAAQ,YAEX;IAED;;;;;;;;OAQG;IACH,IAAI,UAAU,WAEb;IAED;;;;;OAKG;IACH,IAAI,eAAe,oBAElB;IAED;;;;;OAKG;IACU,YAAY;IAQZ,WAAW,CAAC,aAAa,GAAE,OAAc,EAAE,KAAK,GAAE,OAAe;IAgC9E,OAAO,CAAC,sBAAsB;IAgB9B,OAAO,CAAC,uBAAuB;YAoBjB,wBAAwB;IA+EzB,WAAW,CAAC,cAAc,GAAE,MAAM,EAAmC;IAoBrE,YAAY,CAAC,aAAa,GAAE,MAAM,EAAkC;IAqB1E,YAAY,CAAC,KAAK,GAAE,OAAe;IAkBnC,EAAE,CAAC,EAAE,EAAE,kBAAkB,EAAE,IAAI,GAAE,MAAkB;IAe1D;;;;OAIG;IACI,UAAU,CAAC,IAAI,EAAE,4BAA4B;IA4DpD;;;;OAIG;IACI,UAAU,CAAC,IAAI,EAAE,4BAA4B,EAAE,WAAW,CAAC,EAAE,OAAO,GAAG,IAAI;IAuClF;;OAEG;IACH,OAAO,CAAC,YAAY;IAqBpB,SAAS,CAAC,OAAO;IAqBjB;;OAEG;IACH,SAAS,CAAC,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,aAAa,CAAC,EAAE,OAAO;IAQ7E;;;OAGG;IACH,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,iBAAiB,EAAE,aAAa,CAAC,EAAE,OAAO;IAwBzE;;;OAGG;IACH,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,iBAAiB,EAAE,aAAa,CAAC,EAAE,OAAO;IAoBzE;;;OAGG;IACU,kBAAkB,CAAC,KAAK,CAAC,EAAE,OAAO;IAyC/C;;;;;OAKG;IACH,OAAO,CAAC,gBAAgB,CA6CvB;IAEY,OAAO,CAAC,KAAK,GAAE,MAAM,EAAkC;YAKtD,KAAK;YAqCL,SAAS;IAMvB,OAAO,CAAC,kBAAkB;IAgB1B,OAAO,CAAC,0BAA0B;IAQlC;;;;;;OAMG;IACI,sBAAsB,CAAC,IAAI,EAAE,4BAA4B,GAAG,OAAO;IAO1E,OAAO,CAAC,uBAAuB;IAO/B;;;OAGG;IACU,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,4BAA4B,GAAG,SAAS,CAAC;IA2ErG;;;;;OAKG;IACI,oBAAoB,CAAC,EAAE,EAAE,MAAM;IAOtC;;;;;OAKG;IACI,kBAAkB,CAAC,IAAI,EAAE,4BAA4B;IAO5D;;;;;OAKG;IACI,kBAAkB,CAAC,KAAK,EAAE,MAAM;IAKvC;;;;;OAKG;IACI,eAAe,CAAC,EAAE,EAAE,MAAM;IAIjC;;;;;KAKC;IACM,iBAAiB,CAAC,IAAI,EAAE,MAAM;CAGtC"}