@opensumi/ide-components 1.1.4-next-1641353261.0

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 (409) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +65 -0
  3. package/dist/fonts/loading-dark.svg +52 -0
  4. package/dist/fonts/loading-hc.svg +52 -0
  5. package/dist/fonts/loading.svg +52 -0
  6. package/dist/index.css +1 -0
  7. package/dist/index.js +27789 -0
  8. package/lib/badge/index.d.ts +4 -0
  9. package/lib/badge/index.d.ts.map +1 -0
  10. package/lib/badge/index.js +13 -0
  11. package/lib/badge/index.js.map +1 -0
  12. package/lib/badge/styles.less +17 -0
  13. package/lib/button/index.d.ts +54 -0
  14. package/lib/button/index.d.ts.map +1 -0
  15. package/lib/button/index.js +67 -0
  16. package/lib/button/index.js.map +1 -0
  17. package/lib/button/style.less +251 -0
  18. package/lib/checkbox/index.d.ts +9 -0
  19. package/lib/checkbox/index.d.ts.map +1 -0
  20. package/lib/checkbox/index.js +27 -0
  21. package/lib/checkbox/index.js.map +1 -0
  22. package/lib/checkbox/style.less +80 -0
  23. package/lib/click-outside/index.d.ts +6 -0
  24. package/lib/click-outside/index.d.ts.map +1 -0
  25. package/lib/click-outside/index.js +27 -0
  26. package/lib/click-outside/index.js.map +1 -0
  27. package/lib/common.d.ts +7 -0
  28. package/lib/common.d.ts.map +1 -0
  29. package/lib/common.js +11 -0
  30. package/lib/common.js.map +1 -0
  31. package/lib/dialog/index.d.ts +26 -0
  32. package/lib/dialog/index.d.ts.map +1 -0
  33. package/lib/dialog/index.js +30 -0
  34. package/lib/dialog/index.js.map +1 -0
  35. package/lib/dialog/styles.less +85 -0
  36. package/lib/dropdown/dropdown.d.ts +48 -0
  37. package/lib/dropdown/dropdown.d.ts.map +1 -0
  38. package/lib/dropdown/dropdown.js +80 -0
  39. package/lib/dropdown/dropdown.js.map +1 -0
  40. package/lib/dropdown/index.d.ts +5 -0
  41. package/lib/dropdown/index.d.ts.map +1 -0
  42. package/lib/dropdown/index.js +8 -0
  43. package/lib/dropdown/index.js.map +1 -0
  44. package/lib/dropdown/style.less +254 -0
  45. package/lib/icon/icon.d.ts +33 -0
  46. package/lib/icon/icon.d.ts.map +1 -0
  47. package/lib/icon/icon.js +70 -0
  48. package/lib/icon/icon.js.map +1 -0
  49. package/lib/icon/iconfont/iconManager.d.ts +189 -0
  50. package/lib/icon/iconfont/iconManager.d.ts.map +1 -0
  51. package/lib/icon/iconfont/iconManager.js +67 -0
  52. package/lib/icon/iconfont/iconManager.js.map +1 -0
  53. package/lib/icon/iconfont/iconMap.d.ts +162 -0
  54. package/lib/icon/iconfont/iconMap.d.ts.map +1 -0
  55. package/lib/icon/iconfont/iconMap.js +167 -0
  56. package/lib/icon/iconfont/iconMap.js.map +1 -0
  57. package/lib/icon/iconfont/iconfont.css +654 -0
  58. package/lib/icon/iconfont/iconfont.eot +0 -0
  59. package/lib/icon/iconfont/iconfont.html +1549 -0
  60. package/lib/icon/iconfont/iconfont.svg +337 -0
  61. package/lib/icon/iconfont/iconfont.ttf +0 -0
  62. package/lib/icon/iconfont/iconfont.woff +0 -0
  63. package/lib/icon/iconfont/iconfont.woff2 +0 -0
  64. package/lib/icon/iconfont-cn.d.ts +15 -0
  65. package/lib/icon/iconfont-cn.d.ts.map +1 -0
  66. package/lib/icon/iconfont-cn.js +76 -0
  67. package/lib/icon/iconfont-cn.js.map +1 -0
  68. package/lib/icon/index.d.ts +4 -0
  69. package/lib/icon/index.d.ts.map +1 -0
  70. package/lib/icon/index.js +9 -0
  71. package/lib/icon/index.js.map +1 -0
  72. package/lib/icon/styles.less +115 -0
  73. package/lib/icon/util.d.ts +29 -0
  74. package/lib/icon/util.d.ts.map +1 -0
  75. package/lib/icon/util.js +53 -0
  76. package/lib/icon/util.js.map +1 -0
  77. package/lib/index.d.ts +22 -0
  78. package/lib/index.d.ts.map +1 -0
  79. package/lib/index.js +25 -0
  80. package/lib/index.js.map +1 -0
  81. package/lib/input/HistoryInputBox.d.ts +38 -0
  82. package/lib/input/HistoryInputBox.d.ts.map +1 -0
  83. package/lib/input/HistoryInputBox.js +108 -0
  84. package/lib/input/HistoryInputBox.js.map +1 -0
  85. package/lib/input/Input.d.ts +43 -0
  86. package/lib/input/Input.d.ts.map +1 -0
  87. package/lib/input/Input.js +122 -0
  88. package/lib/input/Input.js.map +1 -0
  89. package/lib/input/ProxiedInput.d.ts +8 -0
  90. package/lib/input/ProxiedInput.d.ts.map +1 -0
  91. package/lib/input/ProxiedInput.js +67 -0
  92. package/lib/input/ProxiedInput.js.map +1 -0
  93. package/lib/input/TextArea.d.ts +6 -0
  94. package/lib/input/TextArea.d.ts.map +1 -0
  95. package/lib/input/TextArea.js +9 -0
  96. package/lib/input/TextArea.js.map +1 -0
  97. package/lib/input/ValidateInput.d.ts +20 -0
  98. package/lib/input/ValidateInput.d.ts.map +1 -0
  99. package/lib/input/ValidateInput.js +59 -0
  100. package/lib/input/ValidateInput.js.map +1 -0
  101. package/lib/input/index.d.ts +5 -0
  102. package/lib/input/index.d.ts.map +1 -0
  103. package/lib/input/index.js +8 -0
  104. package/lib/input/index.js.map +1 -0
  105. package/lib/input/input.less +83 -0
  106. package/lib/input/validate-input.less +88 -0
  107. package/lib/loading/index.d.ts +2 -0
  108. package/lib/loading/index.d.ts.map +1 -0
  109. package/lib/loading/index.js +5 -0
  110. package/lib/loading/index.js.map +1 -0
  111. package/lib/loading/loading.less +14 -0
  112. package/lib/loading/loading.view.d.ts +4 -0
  113. package/lib/loading/loading.view.d.ts.map +1 -0
  114. package/lib/loading/loading.view.js +9 -0
  115. package/lib/loading/loading.view.js.map +1 -0
  116. package/lib/loading/media/loading-dark.svg +52 -0
  117. package/lib/loading/media/loading-hc.svg +52 -0
  118. package/lib/loading/media/loading.svg +52 -0
  119. package/lib/locale-context-provider.d.ts +16 -0
  120. package/lib/locale-context-provider.d.ts.map +1 -0
  121. package/lib/locale-context-provider.js +26 -0
  122. package/lib/locale-context-provider.js.map +1 -0
  123. package/lib/menu/MenuContext.d.ts +8 -0
  124. package/lib/menu/MenuContext.d.ts.map +1 -0
  125. package/lib/menu/MenuContext.js +8 -0
  126. package/lib/menu/MenuContext.js.map +1 -0
  127. package/lib/menu/MenuItem.d.ts +29 -0
  128. package/lib/menu/MenuItem.d.ts.map +1 -0
  129. package/lib/menu/MenuItem.js +32 -0
  130. package/lib/menu/MenuItem.js.map +1 -0
  131. package/lib/menu/SubMenu.d.ts +30 -0
  132. package/lib/menu/SubMenu.d.ts.map +1 -0
  133. package/lib/menu/SubMenu.js +28 -0
  134. package/lib/menu/SubMenu.js.map +1 -0
  135. package/lib/menu/index.d.ts +64 -0
  136. package/lib/menu/index.d.ts.map +1 -0
  137. package/lib/menu/index.js +201 -0
  138. package/lib/menu/index.js.map +1 -0
  139. package/lib/menu/style.less +502 -0
  140. package/lib/message/index.d.ts +10 -0
  141. package/lib/message/index.d.ts.map +1 -0
  142. package/lib/message/index.js +19 -0
  143. package/lib/message/index.js.map +1 -0
  144. package/lib/message/message.d.ts +42 -0
  145. package/lib/message/message.d.ts.map +1 -0
  146. package/lib/message/message.js +127 -0
  147. package/lib/message/message.js.map +1 -0
  148. package/lib/message/style.less +76 -0
  149. package/lib/modal/Modal.d.ts +127 -0
  150. package/lib/modal/Modal.d.ts.map +1 -0
  151. package/lib/modal/Modal.js +87 -0
  152. package/lib/modal/Modal.js.map +1 -0
  153. package/lib/modal/index.d.ts +5 -0
  154. package/lib/modal/index.d.ts.map +1 -0
  155. package/lib/modal/index.js +8 -0
  156. package/lib/modal/index.js.map +1 -0
  157. package/lib/modal/locale.d.ts +8 -0
  158. package/lib/modal/locale.d.ts.map +1 -0
  159. package/lib/modal/locale.js +23 -0
  160. package/lib/modal/locale.js.map +1 -0
  161. package/lib/modal/style.less +168 -0
  162. package/lib/notification/index.d.ts +8 -0
  163. package/lib/notification/index.d.ts.map +1 -0
  164. package/lib/notification/index.js +80 -0
  165. package/lib/notification/index.js.map +1 -0
  166. package/lib/notification/notification.d.ts +44 -0
  167. package/lib/notification/notification.d.ts.map +1 -0
  168. package/lib/notification/notification.js +156 -0
  169. package/lib/notification/notification.js.map +1 -0
  170. package/lib/notification/notification.less +232 -0
  171. package/lib/overlay/index.d.ts +19 -0
  172. package/lib/overlay/index.d.ts.map +1 -0
  173. package/lib/overlay/index.js +14 -0
  174. package/lib/overlay/index.js.map +1 -0
  175. package/lib/overlay/styles.less +43 -0
  176. package/lib/popover/index.d.ts +28 -0
  177. package/lib/popover/index.d.ts.map +1 -0
  178. package/lib/popover/index.js +127 -0
  179. package/lib/popover/index.js.map +1 -0
  180. package/lib/popover/styles.less +136 -0
  181. package/lib/recycle-list/RecycleList.d.ts +105 -0
  182. package/lib/recycle-list/RecycleList.d.ts.map +1 -0
  183. package/lib/recycle-list/RecycleList.js +253 -0
  184. package/lib/recycle-list/RecycleList.js.map +1 -0
  185. package/lib/recycle-list/index.d.ts +2 -0
  186. package/lib/recycle-list/index.d.ts.map +1 -0
  187. package/lib/recycle-list/index.js +5 -0
  188. package/lib/recycle-list/index.js.map +1 -0
  189. package/lib/recycle-tree/RecycleTree.d.ts +255 -0
  190. package/lib/recycle-tree/RecycleTree.d.ts.map +1 -0
  191. package/lib/recycle-tree/RecycleTree.js +627 -0
  192. package/lib/recycle-tree/RecycleTree.js.map +1 -0
  193. package/lib/recycle-tree/TreeNodeRendererWrap.d.ts +37 -0
  194. package/lib/recycle-tree/TreeNodeRendererWrap.d.ts.map +1 -0
  195. package/lib/recycle-tree/TreeNodeRendererWrap.js +18 -0
  196. package/lib/recycle-tree/TreeNodeRendererWrap.js.map +1 -0
  197. package/lib/recycle-tree/basic/index.d.ts +7 -0
  198. package/lib/recycle-tree/basic/index.d.ts.map +1 -0
  199. package/lib/recycle-tree/basic/index.js +167 -0
  200. package/lib/recycle-tree/basic/index.js.map +1 -0
  201. package/lib/recycle-tree/basic/menubar-item.d.ts +7 -0
  202. package/lib/recycle-tree/basic/menubar-item.d.ts.map +1 -0
  203. package/lib/recycle-tree/basic/menubar-item.js +25 -0
  204. package/lib/recycle-tree/basic/menubar-item.js.map +1 -0
  205. package/lib/recycle-tree/basic/placements.d.ts +12 -0
  206. package/lib/recycle-tree/basic/placements.d.ts.map +1 -0
  207. package/lib/recycle-tree/basic/placements.js +17 -0
  208. package/lib/recycle-tree/basic/placements.js.map +1 -0
  209. package/lib/recycle-tree/basic/styles.less +245 -0
  210. package/lib/recycle-tree/basic/tree-node.d.ts +8 -0
  211. package/lib/recycle-tree/basic/tree-node.d.ts.map +1 -0
  212. package/lib/recycle-tree/basic/tree-node.define.d.ts +31 -0
  213. package/lib/recycle-tree/basic/tree-node.define.d.ts.map +1 -0
  214. package/lib/recycle-tree/basic/tree-node.define.js +75 -0
  215. package/lib/recycle-tree/basic/tree-node.define.js.map +1 -0
  216. package/lib/recycle-tree/basic/tree-node.js +103 -0
  217. package/lib/recycle-tree/basic/tree-node.js.map +1 -0
  218. package/lib/recycle-tree/basic/tree-service.d.ts +38 -0
  219. package/lib/recycle-tree/basic/tree-service.d.ts.map +1 -0
  220. package/lib/recycle-tree/basic/tree-service.js +153 -0
  221. package/lib/recycle-tree/basic/tree-service.js.map +1 -0
  222. package/lib/recycle-tree/basic/types.d.ts +227 -0
  223. package/lib/recycle-tree/basic/types.d.ts.map +1 -0
  224. package/lib/recycle-tree/basic/types.js +15 -0
  225. package/lib/recycle-tree/basic/types.js.map +1 -0
  226. package/lib/recycle-tree/decorators/Adaptive/index.d.ts +10 -0
  227. package/lib/recycle-tree/decorators/Adaptive/index.d.ts.map +1 -0
  228. package/lib/recycle-tree/decorators/Adaptive/index.js +93 -0
  229. package/lib/recycle-tree/decorators/Adaptive/index.js.map +1 -0
  230. package/lib/recycle-tree/decorators/Filter/filter.less +11 -0
  231. package/lib/recycle-tree/decorators/Filter/index.d.ts +26 -0
  232. package/lib/recycle-tree/decorators/Filter/index.d.ts.map +1 -0
  233. package/lib/recycle-tree/decorators/Filter/index.js +54 -0
  234. package/lib/recycle-tree/decorators/Filter/index.js.map +1 -0
  235. package/lib/recycle-tree/decorators/index.d.ts +3 -0
  236. package/lib/recycle-tree/decorators/index.d.ts.map +1 -0
  237. package/lib/recycle-tree/decorators/index.js +6 -0
  238. package/lib/recycle-tree/decorators/index.js.map +1 -0
  239. package/lib/recycle-tree/index.d.ts +8 -0
  240. package/lib/recycle-tree/index.d.ts.map +1 -0
  241. package/lib/recycle-tree/index.js +11 -0
  242. package/lib/recycle-tree/index.js.map +1 -0
  243. package/lib/recycle-tree/prompt/NewPromptHandle.d.ts +12 -0
  244. package/lib/recycle-tree/prompt/NewPromptHandle.d.ts.map +1 -0
  245. package/lib/recycle-tree/prompt/NewPromptHandle.js +21 -0
  246. package/lib/recycle-tree/prompt/NewPromptHandle.js.map +1 -0
  247. package/lib/recycle-tree/prompt/PromptHandle.d.ts +59 -0
  248. package/lib/recycle-tree/prompt/PromptHandle.d.ts.map +1 -0
  249. package/lib/recycle-tree/prompt/PromptHandle.js +200 -0
  250. package/lib/recycle-tree/prompt/PromptHandle.js.map +1 -0
  251. package/lib/recycle-tree/prompt/RenamePromptHandle.d.ts +10 -0
  252. package/lib/recycle-tree/prompt/RenamePromptHandle.d.ts.map +1 -0
  253. package/lib/recycle-tree/prompt/RenamePromptHandle.js +21 -0
  254. package/lib/recycle-tree/prompt/RenamePromptHandle.js.map +1 -0
  255. package/lib/recycle-tree/prompt/index.d.ts +4 -0
  256. package/lib/recycle-tree/prompt/index.d.ts.map +1 -0
  257. package/lib/recycle-tree/prompt/index.js +7 -0
  258. package/lib/recycle-tree/prompt/index.js.map +1 -0
  259. package/lib/recycle-tree/tree/Tree.d.ts +20 -0
  260. package/lib/recycle-tree/tree/Tree.d.ts.map +1 -0
  261. package/lib/recycle-tree/tree/Tree.js +39 -0
  262. package/lib/recycle-tree/tree/Tree.js.map +1 -0
  263. package/lib/recycle-tree/tree/TreeNode.d.ts +222 -0
  264. package/lib/recycle-tree/tree/TreeNode.d.ts.map +1 -0
  265. package/lib/recycle-tree/tree/TreeNode.js +1103 -0
  266. package/lib/recycle-tree/tree/TreeNode.js.map +1 -0
  267. package/lib/recycle-tree/tree/decoration/CompositeDecoration.d.ts +60 -0
  268. package/lib/recycle-tree/tree/decoration/CompositeDecoration.d.ts.map +1 -0
  269. package/lib/recycle-tree/tree/decoration/CompositeDecoration.js +339 -0
  270. package/lib/recycle-tree/tree/decoration/CompositeDecoration.js.map +1 -0
  271. package/lib/recycle-tree/tree/decoration/Decoration.d.ts +79 -0
  272. package/lib/recycle-tree/tree/decoration/Decoration.d.ts.map +1 -0
  273. package/lib/recycle-tree/tree/decoration/Decoration.js +183 -0
  274. package/lib/recycle-tree/tree/decoration/Decoration.js.map +1 -0
  275. package/lib/recycle-tree/tree/decoration/DecorationManager.d.ts +34 -0
  276. package/lib/recycle-tree/tree/decoration/DecorationManager.d.ts.map +1 -0
  277. package/lib/recycle-tree/tree/decoration/DecorationManager.js +168 -0
  278. package/lib/recycle-tree/tree/decoration/DecorationManager.js.map +1 -0
  279. package/lib/recycle-tree/tree/decoration/index.d.ts +4 -0
  280. package/lib/recycle-tree/tree/decoration/index.d.ts.map +1 -0
  281. package/lib/recycle-tree/tree/decoration/index.js +7 -0
  282. package/lib/recycle-tree/tree/decoration/index.js.map +1 -0
  283. package/lib/recycle-tree/tree/index.d.ts +5 -0
  284. package/lib/recycle-tree/tree/index.d.ts.map +1 -0
  285. package/lib/recycle-tree/tree/index.js +8 -0
  286. package/lib/recycle-tree/tree/index.js.map +1 -0
  287. package/lib/recycle-tree/tree/model/TreeModel.d.ts +50 -0
  288. package/lib/recycle-tree/tree/model/TreeModel.d.ts.map +1 -0
  289. package/lib/recycle-tree/tree/model/TreeModel.js +81 -0
  290. package/lib/recycle-tree/tree/model/TreeModel.js.map +1 -0
  291. package/lib/recycle-tree/tree/model/index.d.ts +2 -0
  292. package/lib/recycle-tree/tree/model/index.d.ts.map +1 -0
  293. package/lib/recycle-tree/tree/model/index.js +5 -0
  294. package/lib/recycle-tree/tree/model/index.js.map +1 -0
  295. package/lib/recycle-tree/tree/model/treeState/TreeStateManager.d.ts +65 -0
  296. package/lib/recycle-tree/tree/model/treeState/TreeStateManager.d.ts.map +1 -0
  297. package/lib/recycle-tree/tree/model/treeState/TreeStateManager.js +189 -0
  298. package/lib/recycle-tree/tree/model/treeState/TreeStateManager.js.map +1 -0
  299. package/lib/recycle-tree/tree/model/treeState/TreeStateWatcher.d.ts +15 -0
  300. package/lib/recycle-tree/tree/model/treeState/TreeStateWatcher.d.ts.map +1 -0
  301. package/lib/recycle-tree/tree/model/treeState/TreeStateWatcher.js +104 -0
  302. package/lib/recycle-tree/tree/model/treeState/TreeStateWatcher.js.map +1 -0
  303. package/lib/recycle-tree/tree/model/treeState/index.d.ts +4 -0
  304. package/lib/recycle-tree/tree/model/treeState/index.d.ts.map +1 -0
  305. package/lib/recycle-tree/tree/model/treeState/index.js +8 -0
  306. package/lib/recycle-tree/tree/model/treeState/index.js.map +1 -0
  307. package/lib/recycle-tree/tree/model/treeState/types.d.ts +21 -0
  308. package/lib/recycle-tree/tree/model/treeState/types.d.ts.map +1 -0
  309. package/lib/recycle-tree/tree/model/treeState/types.js +18 -0
  310. package/lib/recycle-tree/tree/model/treeState/types.js.map +1 -0
  311. package/lib/recycle-tree/types/index.d.ts +4 -0
  312. package/lib/recycle-tree/types/index.d.ts.map +1 -0
  313. package/lib/recycle-tree/types/index.js +7 -0
  314. package/lib/recycle-tree/types/index.js.map +1 -0
  315. package/lib/recycle-tree/types/tree-node.d.ts +70 -0
  316. package/lib/recycle-tree/types/tree-node.d.ts.map +1 -0
  317. package/lib/recycle-tree/types/tree-node.js +11 -0
  318. package/lib/recycle-tree/types/tree-node.js.map +1 -0
  319. package/lib/recycle-tree/types/tree.d.ts +8 -0
  320. package/lib/recycle-tree/types/tree.d.ts.map +1 -0
  321. package/lib/recycle-tree/types/tree.js +3 -0
  322. package/lib/recycle-tree/types/tree.js.map +1 -0
  323. package/lib/recycle-tree/types/watcher.d.ts +114 -0
  324. package/lib/recycle-tree/types/watcher.d.ts.map +1 -0
  325. package/lib/recycle-tree/types/watcher.js +46 -0
  326. package/lib/recycle-tree/types/watcher.js.map +1 -0
  327. package/lib/scrollbars/index.d.ts +14 -0
  328. package/lib/scrollbars/index.d.ts.map +1 -0
  329. package/lib/scrollbars/index.js +54 -0
  330. package/lib/scrollbars/index.js.map +1 -0
  331. package/lib/scrollbars/styles.less +41 -0
  332. package/lib/select/index.d.ts +119 -0
  333. package/lib/select/index.d.ts.map +1 -0
  334. package/lib/select/index.js +325 -0
  335. package/lib/select/index.js.map +1 -0
  336. package/lib/select/style.less +228 -0
  337. package/lib/style/base.less +541 -0
  338. package/lib/style/index.less +14 -0
  339. package/lib/style/mixins.less +135 -0
  340. package/lib/style/motion/fade.less +31 -0
  341. package/lib/style/motion/move.less +120 -0
  342. package/lib/style/motion/other.less +45 -0
  343. package/lib/style/motion/slide.less +120 -0
  344. package/lib/style/motion/swing.less +34 -0
  345. package/lib/style/motion/zoom.less +162 -0
  346. package/lib/style/variable.less +203 -0
  347. package/lib/tabs/index.d.ts +12 -0
  348. package/lib/tabs/index.d.ts.map +1 -0
  349. package/lib/tabs/index.js +24 -0
  350. package/lib/tabs/index.js.map +1 -0
  351. package/lib/tabs/style.less +34 -0
  352. package/lib/tooltip/index.d.ts +7 -0
  353. package/lib/tooltip/index.d.ts.map +1 -0
  354. package/lib/tooltip/index.js +58 -0
  355. package/lib/tooltip/index.js.map +1 -0
  356. package/lib/tooltip/style.less +40 -0
  357. package/lib/utils/deprecated.d.ts +3 -0
  358. package/lib/utils/deprecated.d.ts.map +1 -0
  359. package/lib/utils/deprecated.js +18 -0
  360. package/lib/utils/deprecated.js.map +1 -0
  361. package/lib/utils/disposable.d.ts +37 -0
  362. package/lib/utils/disposable.d.ts.map +1 -0
  363. package/lib/utils/disposable.js +138 -0
  364. package/lib/utils/disposable.js.map +1 -0
  365. package/lib/utils/event.d.ts +189 -0
  366. package/lib/utils/event.d.ts.map +1 -0
  367. package/lib/utils/event.js +560 -0
  368. package/lib/utils/event.js.map +1 -0
  369. package/lib/utils/index.d.ts +10 -0
  370. package/lib/utils/index.d.ts.map +1 -0
  371. package/lib/utils/index.js +13 -0
  372. package/lib/utils/index.js.map +1 -0
  373. package/lib/utils/iterator.d.ts +14 -0
  374. package/lib/utils/iterator.d.ts.map +1 -0
  375. package/lib/utils/iterator.js +9 -0
  376. package/lib/utils/iterator.js.map +1 -0
  377. package/lib/utils/linkedList.d.ts +18 -0
  378. package/lib/utils/linkedList.d.ts.map +1 -0
  379. package/lib/utils/linkedList.js +139 -0
  380. package/lib/utils/linkedList.js.map +1 -0
  381. package/lib/utils/motion.d.ts +24 -0
  382. package/lib/utils/motion.d.ts.map +1 -0
  383. package/lib/utils/motion.js +17 -0
  384. package/lib/utils/motion.js.map +1 -0
  385. package/lib/utils/os.d.ts +4 -0
  386. package/lib/utils/os.d.ts.map +1 -0
  387. package/lib/utils/os.js +22 -0
  388. package/lib/utils/os.js.map +1 -0
  389. package/lib/utils/path.d.ts +92 -0
  390. package/lib/utils/path.d.ts.map +1 -0
  391. package/lib/utils/path.js +1696 -0
  392. package/lib/utils/path.js.map +1 -0
  393. package/lib/utils/process.d.ts +6 -0
  394. package/lib/utils/process.d.ts.map +1 -0
  395. package/lib/utils/process.js +23 -0
  396. package/lib/utils/process.js.map +1 -0
  397. package/lib/utils/raf.d.ts +10 -0
  398. package/lib/utils/raf.d.ts.map +1 -0
  399. package/lib/utils/raf.js +33 -0
  400. package/lib/utils/raf.js.map +1 -0
  401. package/lib/utils/type.d.ts +4 -0
  402. package/lib/utils/type.d.ts.map +1 -0
  403. package/lib/utils/type.js +9 -0
  404. package/lib/utils/type.js.map +1 -0
  405. package/lib/utils/warning.d.ts +8 -0
  406. package/lib/utils/warning.d.ts.map +1 -0
  407. package/lib/utils/warning.js +39 -0
  408. package/lib/utils/warning.js.map +1 -0
  409. package/package.json +38 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TreeNode.js","sourceRoot":"","sources":["../../../src/recycle-tree/tree/TreeNode.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ import { Decoration } from './Decoration';
2
+ import { DisposableCollection } from '../../../utils';
3
+ import { ITreeNodeOrCompositeTreeNode } from '../../types';
4
+ export declare class ClasslistComposite {
5
+ /**
6
+ * 注册样式变化监听函数
7
+ */
8
+ readonly addChangeListener: (namedCallback: () => void) => void;
9
+ /**
10
+ * 注销样式变化监听函数
11
+ */
12
+ readonly removeChangeListener: (namedCallback: () => void) => void;
13
+ classlist: ReadonlyArray<string>;
14
+ constructor(
15
+ /**
16
+ * 注册样式变化监听函数
17
+ */
18
+ addChangeListener: (namedCallback: () => void) => void,
19
+ /**
20
+ * 注销样式变化监听函数
21
+ */
22
+ removeChangeListener: (namedCallback: () => void) => void);
23
+ }
24
+ export declare enum CompositeDecorationType {
25
+ Applicable = 1,
26
+ Inheritable = 2
27
+ }
28
+ export declare enum ChangeReason {
29
+ UnTargetDecoration = 1,
30
+ TargetDecoration = 2
31
+ }
32
+ export declare class CompositeDecoration {
33
+ renderedDecorations: Map<Decoration, DisposableCollection>;
34
+ targetedDecorations: Set<Decoration>;
35
+ negatedDecorations: Set<Decoration>;
36
+ parent: CompositeDecoration;
37
+ compositeCssClasslist: ClasslistComposite;
38
+ private target;
39
+ private type;
40
+ private selfOwned;
41
+ private linkedComposites;
42
+ private classlistChangeCallbacks;
43
+ constructor(target: ITreeNodeOrCompositeTreeNode, type: CompositeDecorationType, parent?: CompositeDecoration);
44
+ changeParent(newParent?: CompositeDecoration): void;
45
+ add(decoration: Decoration): void;
46
+ remove(decoration: Decoration): void;
47
+ negate(decoration: Decoration): void;
48
+ unNegate(decoration: Decoration): void;
49
+ private selfOwn;
50
+ private parentOwn;
51
+ private processCompositeAlteration;
52
+ private recursiveRefresh;
53
+ private handleDecorationDidAddClassname;
54
+ private handleDecorationDidRemoveClassname;
55
+ private mergeDecorationClasslist;
56
+ private handleDecorationDisable;
57
+ private removeDecorationClasslist;
58
+ private notifyClasslistChange;
59
+ }
60
+ //# sourceMappingURL=CompositeDecoration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompositeDecoration.d.ts","sourceRoot":"","sources":["../../../../src/recycle-tree/tree/decoration/CompositeDecoration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAyC,MAAM,cAAc,CAAC;AACjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,4BAA4B,EAAE,MAAM,aAAa,CAAC;AAE3D,qBAAa,kBAAkB;IAG3B;;OAEG;aACa,iBAAiB,EAAE,CAAC,aAAa,EAAE,MAAM,IAAI,KAAK,IAAI;IACtE;;OAEG;aACa,oBAAoB,EAAE,CAAC,aAAa,EAAE,MAAM,IAAI,KAAK,IAAI;IATpE,SAAS,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;;IAEtC;;OAEG;IACa,iBAAiB,EAAE,CAAC,aAAa,EAAE,MAAM,IAAI,KAAK,IAAI;IACtE;;OAEG;IACa,oBAAoB,EAAE,CAAC,aAAa,EAAE,MAAM,IAAI,KAAK,IAAI;CAE5E;AAED,oBAAY,uBAAuB;IACjC,UAAU,IAAI;IACd,WAAW,IAAA;CACZ;AAED,oBAAY,YAAY;IACtB,kBAAkB,IAAI;IACtB,gBAAgB,IAAA;CACjB;AAED,qBAAa,mBAAmB;IACvB,mBAAmB,EAAE,GAAG,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAC;IAC3D,mBAAmB,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IACrC,kBAAkB,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;IAEpC,MAAM,EAAE,mBAAmB,CAAC;IAC5B,qBAAqB,EAAE,kBAAkB,CAAC;IAEjD,OAAO,CAAC,MAAM,CAA+B;IAC7C,OAAO,CAAC,IAAI,CAA0B;IACtC,OAAO,CAAC,SAAS,CAAU;IAC3B,OAAO,CAAC,gBAAgB,CAA2B;IACnD,OAAO,CAAC,wBAAwB,CAAkB;gBAEtC,MAAM,EAAE,4BAA4B,EAAE,IAAI,EAAE,uBAAuB,EAAE,MAAM,CAAC,EAAE,mBAAmB;IA0BtG,YAAY,CAAC,SAAS,CAAC,EAAE,mBAAmB;IAwB5C,GAAG,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IA6BjC,MAAM,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IAYpC,MAAM,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IA6BpC,QAAQ,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IAkB7C,OAAO,CAAC,OAAO;IAiCf,OAAO,CAAC,SAAS;IAejB,OAAO,CAAC,0BAA0B;IAoElC,OAAO,CAAC,gBAAgB;IAsDxB,OAAO,CAAC,+BAA+B,CAQrC;IAEF,OAAO,CAAC,kCAAkC,CAUxC;IAEF,OAAO,CAAC,wBAAwB,CAO9B;IAEF,OAAO,CAAC,uBAAuB,CAG7B;IACF,OAAO,CAAC,yBAAyB;IAejC,OAAO,CAAC,qBAAqB;CAY9B"}
@@ -0,0 +1,339 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CompositeDecoration = exports.ChangeReason = exports.CompositeDecorationType = exports.ClasslistComposite = void 0;
4
+ const Decoration_1 = require("./Decoration");
5
+ const utils_1 = require("../../../utils");
6
+ class ClasslistComposite {
7
+ constructor(
8
+ /**
9
+ * 注册样式变化监听函数
10
+ */
11
+ addChangeListener,
12
+ /**
13
+ * 注销样式变化监听函数
14
+ */
15
+ removeChangeListener) {
16
+ this.addChangeListener = addChangeListener;
17
+ this.removeChangeListener = removeChangeListener;
18
+ }
19
+ }
20
+ exports.ClasslistComposite = ClasslistComposite;
21
+ var CompositeDecorationType;
22
+ (function (CompositeDecorationType) {
23
+ CompositeDecorationType[CompositeDecorationType["Applicable"] = 1] = "Applicable";
24
+ CompositeDecorationType[CompositeDecorationType["Inheritable"] = 2] = "Inheritable";
25
+ })(CompositeDecorationType = exports.CompositeDecorationType || (exports.CompositeDecorationType = {}));
26
+ var ChangeReason;
27
+ (function (ChangeReason) {
28
+ ChangeReason[ChangeReason["UnTargetDecoration"] = 1] = "UnTargetDecoration";
29
+ ChangeReason[ChangeReason["TargetDecoration"] = 2] = "TargetDecoration";
30
+ })(ChangeReason = exports.ChangeReason || (exports.ChangeReason = {}));
31
+ class CompositeDecoration {
32
+ constructor(target, type, parent) {
33
+ this.handleDecorationDidAddClassname = (event) => {
34
+ const { classname } = event;
35
+ if (!this.selfOwned || !classname) {
36
+ return;
37
+ }
38
+ this.compositeCssClasslist.classlist.push(classname);
39
+ this.notifyClasslistChange();
40
+ };
41
+ this.handleDecorationDidRemoveClassname = (event) => {
42
+ const { classname } = event;
43
+ if (!this.selfOwned || !classname) {
44
+ return;
45
+ }
46
+ const idx = this.compositeCssClasslist.classlist.indexOf(classname);
47
+ if (idx > -1) {
48
+ this.compositeCssClasslist.classlist.splice(idx, 1);
49
+ this.notifyClasslistChange();
50
+ }
51
+ };
52
+ this.mergeDecorationClasslist = (event) => {
53
+ const { decoration } = event;
54
+ if (!this.selfOwned) {
55
+ return;
56
+ }
57
+ this.compositeCssClasslist.classlist.push(...decoration.cssClassList);
58
+ this.notifyClasslistChange();
59
+ };
60
+ this.handleDecorationDisable = (event) => {
61
+ const { decoration } = event;
62
+ this.removeDecorationClasslist(decoration);
63
+ };
64
+ this.target = target;
65
+ this.type = type;
66
+ this.linkedComposites = new Set();
67
+ this.classlistChangeCallbacks = new Set();
68
+ this.compositeCssClasslist = new ClasslistComposite(this.classlistChangeCallbacks.add.bind(this.classlistChangeCallbacks), this.classlistChangeCallbacks.delete.bind(this.classlistChangeCallbacks));
69
+ if (parent) {
70
+ this.selfOwned = false;
71
+ this.parent = parent;
72
+ this.renderedDecorations = parent.renderedDecorations;
73
+ this.compositeCssClasslist.classlist = parent.compositeCssClasslist.classlist;
74
+ parent.linkedComposites.add(this);
75
+ }
76
+ else {
77
+ this.renderedDecorations = new Map();
78
+ this.targetedDecorations = new Set();
79
+ this.negatedDecorations = new Set();
80
+ this.compositeCssClasslist.classlist = [];
81
+ this.selfOwned = true;
82
+ }
83
+ }
84
+ changeParent(newParent) {
85
+ if (!newParent) {
86
+ return;
87
+ }
88
+ if (!this.selfOwned) {
89
+ return this.parentOwn(newParent);
90
+ }
91
+ // 清除所有除了匹配的装饰器属性
92
+ for (const [decoration] of this.renderedDecorations) {
93
+ this.recursiveRefresh(this, false, ChangeReason.UnTargetDecoration, decoration, false);
94
+ }
95
+ if (this.parent !== newParent) {
96
+ this.parent.linkedComposites.delete(this);
97
+ this.parent = newParent;
98
+ newParent.linkedComposites.add(this);
99
+ }
100
+ // 然后添加所有除了不适用的继承装饰器
101
+ for (const [decoration] of newParent.renderedDecorations) {
102
+ this.recursiveRefresh(this, false, ChangeReason.TargetDecoration, decoration, false);
103
+ }
104
+ }
105
+ add(decoration) {
106
+ const applicationMode = decoration.appliedTargets.get(this.target);
107
+ const applicableToSelf = applicationMode &&
108
+ (applicationMode === Decoration_1.TargetMatchMode.Self || applicationMode === Decoration_1.TargetMatchMode.SelfAndChildren);
109
+ const applicableToChildren = applicationMode &&
110
+ (applicationMode === Decoration_1.TargetMatchMode.Children || applicationMode === Decoration_1.TargetMatchMode.SelfAndChildren);
111
+ if (this.type === CompositeDecorationType.Applicable && !applicableToSelf) {
112
+ return;
113
+ }
114
+ if (this.type === CompositeDecorationType.Inheritable && !applicableToChildren) {
115
+ return;
116
+ }
117
+ if (!this.selfOwned) {
118
+ this.selfOwn(ChangeReason.TargetDecoration, decoration);
119
+ this.targetedDecorations.add(decoration);
120
+ return;
121
+ }
122
+ if (this.targetedDecorations.has(decoration)) {
123
+ return;
124
+ }
125
+ this.targetedDecorations.add(decoration);
126
+ this.recursiveRefresh(this, false, ChangeReason.TargetDecoration, decoration);
127
+ }
128
+ remove(decoration) {
129
+ if (!this.selfOwned) {
130
+ return;
131
+ }
132
+ if (this.targetedDecorations.delete(decoration)) {
133
+ if (this.negatedDecorations.size === 0 && this.targetedDecorations.size === 0 && this.parent) {
134
+ return this.parentOwn(undefined, ChangeReason.UnTargetDecoration, decoration);
135
+ }
136
+ this.recursiveRefresh(this, false, ChangeReason.UnTargetDecoration, decoration);
137
+ }
138
+ }
139
+ negate(decoration) {
140
+ const negationMode = decoration.negatedTargets.get(this.target);
141
+ const negatedOnSelf = negationMode && (negationMode === Decoration_1.TargetMatchMode.Self || negationMode === Decoration_1.TargetMatchMode.SelfAndChildren);
142
+ const negatedOnChildren = negationMode && (negationMode === Decoration_1.TargetMatchMode.Children || negationMode === Decoration_1.TargetMatchMode.SelfAndChildren);
143
+ if (this.type === CompositeDecorationType.Applicable && !negatedOnSelf) {
144
+ return;
145
+ }
146
+ if (this.type === CompositeDecorationType.Inheritable && !negatedOnChildren) {
147
+ return;
148
+ }
149
+ if (!this.selfOwned) {
150
+ this.selfOwn(ChangeReason.UnTargetDecoration, decoration);
151
+ this.negatedDecorations.add(decoration);
152
+ return;
153
+ }
154
+ if (this.negatedDecorations.has(decoration)) {
155
+ return;
156
+ }
157
+ this.negatedDecorations.add(decoration);
158
+ if (this.renderedDecorations.has(decoration)) {
159
+ this.removeDecorationClasslist(decoration);
160
+ }
161
+ }
162
+ unNegate(decoration) {
163
+ if (!this.selfOwned) {
164
+ return;
165
+ }
166
+ if (this.negatedDecorations.delete(decoration)) {
167
+ if (this.negatedDecorations.size === 0 && this.targetedDecorations.size === 0 && this.parent) {
168
+ return this.parentOwn();
169
+ }
170
+ // 当前非父节点并且其父节点和其本身均不含有该装饰器
171
+ if (!this.renderedDecorations.has(decoration) &&
172
+ (this.parent.renderedDecorations.has(decoration) || decoration.appliedTargets.has(this.target))) {
173
+ this.recursiveRefresh(this, false, ChangeReason.TargetDecoration, decoration);
174
+ }
175
+ }
176
+ }
177
+ selfOwn(reason, decoration) {
178
+ if (this.selfOwned) {
179
+ throw new Error('CompositeDecoration is already self owned');
180
+ }
181
+ const parent = this.parent;
182
+ this.selfOwned = true;
183
+ this.compositeCssClasslist.classlist = [];
184
+ this.renderedDecorations = new Map();
185
+ this.targetedDecorations = new Set();
186
+ this.negatedDecorations = new Set();
187
+ // 首先处理所有继承的装饰器
188
+ for (const [inheritedDecoration] of parent.renderedDecorations) {
189
+ if (inheritedDecoration !== decoration) {
190
+ this.processCompositeAlteration(ChangeReason.TargetDecoration, inheritedDecoration);
191
+ }
192
+ }
193
+ // 当触发的为:not类型装饰器变化
194
+ if (reason === ChangeReason.UnTargetDecoration &&
195
+ // 父节点装饰器拥有此装饰器
196
+ this.parent.renderedDecorations.has(decoration) &&
197
+ // 本身不包含此装饰器
198
+ !this.renderedDecorations.has(decoration)) {
199
+ // 通知ClassList变化
200
+ this.notifyClasslistChange(false);
201
+ }
202
+ this.recursiveRefresh(this, true, reason, decoration);
203
+ }
204
+ parentOwn(newParent, reason, decoration) {
205
+ this.selfOwned = false;
206
+ this.targetedDecorations && this.targetedDecorations.clear();
207
+ this.negatedDecorations && this.negatedDecorations.clear();
208
+ if (newParent && this.parent !== newParent) {
209
+ if (this.parent) {
210
+ this.parent.linkedComposites.delete(this);
211
+ }
212
+ newParent.linkedComposites.add(this);
213
+ this.parent = newParent;
214
+ }
215
+ this.recursiveRefresh(this, true, reason, decoration);
216
+ }
217
+ processCompositeAlteration(reason, decoration) {
218
+ if (!this.selfOwned) {
219
+ throw new Error('CompositeDecoration is not self owned');
220
+ }
221
+ if (reason === ChangeReason.UnTargetDecoration) {
222
+ const disposable = this.renderedDecorations.get(decoration);
223
+ if (disposable) {
224
+ const applicationMode = decoration.appliedTargets.get(this.target);
225
+ const applicableToSelf = applicationMode &&
226
+ (applicationMode === Decoration_1.TargetMatchMode.Self || applicationMode === Decoration_1.TargetMatchMode.SelfAndChildren);
227
+ const applicableToChildren = applicationMode &&
228
+ (applicationMode === Decoration_1.TargetMatchMode.Children || applicationMode === Decoration_1.TargetMatchMode.SelfAndChildren);
229
+ if (applicableToSelf && this.type === CompositeDecorationType.Applicable) {
230
+ return false;
231
+ }
232
+ if (applicableToChildren && this.type === CompositeDecorationType.Inheritable) {
233
+ return false;
234
+ }
235
+ this.removeDecorationClasslist(decoration, false);
236
+ if (disposable) {
237
+ disposable.dispose();
238
+ }
239
+ return this.renderedDecorations.delete(decoration);
240
+ }
241
+ return false;
242
+ }
243
+ if (reason === ChangeReason.TargetDecoration) {
244
+ const negationMode = decoration.negatedTargets.get(this.target);
245
+ const negatedOnSelf = negationMode && (negationMode === Decoration_1.TargetMatchMode.Self || negationMode === Decoration_1.TargetMatchMode.SelfAndChildren);
246
+ const negatedOnChildren = negationMode && (negationMode === Decoration_1.TargetMatchMode.Children || negationMode === Decoration_1.TargetMatchMode.SelfAndChildren);
247
+ if (negatedOnSelf && this.type === CompositeDecorationType.Applicable) {
248
+ return false;
249
+ }
250
+ if (negatedOnChildren && this.type === CompositeDecorationType.Inheritable) {
251
+ return false;
252
+ }
253
+ if (!this.renderedDecorations.has(decoration)) {
254
+ const disposables = new utils_1.DisposableCollection();
255
+ disposables.push(decoration.onDidAddCSSClassname(this.handleDecorationDidAddClassname));
256
+ disposables.push(decoration.onDidRemoveCSSClassname(this.handleDecorationDidRemoveClassname));
257
+ disposables.push(decoration.onDidDisableDecoration(this.handleDecorationDisable));
258
+ disposables.push(decoration.onDidEnableDecoration(this.mergeDecorationClasslist));
259
+ this.renderedDecorations.set(decoration, disposables);
260
+ if (!decoration.disabled) {
261
+ this.compositeCssClasslist.classlist.push(...decoration.cssClassList);
262
+ return true;
263
+ }
264
+ return false;
265
+ }
266
+ }
267
+ return false;
268
+ }
269
+ recursiveRefresh(origin, updateReferences, reason, decoration, notifyListeners = true) {
270
+ // 更改当前manager引用的renderedDecorations及compositeCssClasslist.classlist
271
+ if (!this.selfOwned && updateReferences) {
272
+ this.renderedDecorations = this.parent.renderedDecorations;
273
+ this.compositeCssClasslist.classlist = this.parent.compositeCssClasslist.classlist;
274
+ }
275
+ if (this.selfOwned && updateReferences && origin !== this) {
276
+ // 清理所有装饰器逻辑
277
+ for (const [renderedDecoration] of this.renderedDecorations) {
278
+ this.processCompositeAlteration(ChangeReason.UnTargetDecoration, renderedDecoration);
279
+ }
280
+ // 添加继承的装饰器逻辑
281
+ for (const [inheritedDecoration] of this.parent.renderedDecorations) {
282
+ this.processCompositeAlteration(ChangeReason.TargetDecoration, inheritedDecoration);
283
+ }
284
+ if (notifyListeners) {
285
+ this.notifyClasslistChange(false);
286
+ }
287
+ }
288
+ else if (this.selfOwned &&
289
+ reason === ChangeReason.UnTargetDecoration &&
290
+ decoration &&
291
+ this.renderedDecorations.has(decoration)) {
292
+ this.processCompositeAlteration(reason, decoration);
293
+ if (notifyListeners) {
294
+ this.notifyClasslistChange(false);
295
+ }
296
+ }
297
+ else if (this.selfOwned &&
298
+ reason === ChangeReason.TargetDecoration &&
299
+ decoration &&
300
+ this.processCompositeAlteration(reason, decoration) &&
301
+ notifyListeners) {
302
+ this.notifyClasslistChange(false);
303
+ }
304
+ else if (!this.selfOwned && notifyListeners) {
305
+ this.notifyClasslistChange(false);
306
+ }
307
+ for (const linkedComposite of this.linkedComposites) {
308
+ linkedComposite.recursiveRefresh(origin, updateReferences, reason, decoration, notifyListeners);
309
+ }
310
+ }
311
+ removeDecorationClasslist(decoration, notifyAll = true) {
312
+ if (!this.selfOwned) {
313
+ return;
314
+ }
315
+ for (const classname of decoration.cssClassList) {
316
+ const idx = this.compositeCssClasslist.classlist.indexOf(classname);
317
+ if (idx > -1) {
318
+ this.compositeCssClasslist.classlist.splice(idx, 1);
319
+ }
320
+ }
321
+ if (notifyAll) {
322
+ this.notifyClasslistChange();
323
+ }
324
+ }
325
+ notifyClasslistChange(recursive = true) {
326
+ for (const cb of [...this.classlistChangeCallbacks]) {
327
+ cb();
328
+ }
329
+ if (recursive) {
330
+ for (const linkedComposite of this.linkedComposites) {
331
+ if (!linkedComposite.selfOwned) {
332
+ linkedComposite.notifyClasslistChange();
333
+ }
334
+ }
335
+ }
336
+ }
337
+ }
338
+ exports.CompositeDecoration = CompositeDecoration;
339
+ //# sourceMappingURL=CompositeDecoration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompositeDecoration.js","sourceRoot":"","sources":["../../../../src/recycle-tree/tree/decoration/CompositeDecoration.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,79 @@
1
+ import { IDisposable } from '../../../utils';
2
+ import { ITreeNode, ICompositeTreeNode } from '../../types';
3
+ export declare enum TargetMatchMode {
4
+ None = 1,
5
+ Self = 2,
6
+ Children = 3,
7
+ SelfAndChildren = 4
8
+ }
9
+ export interface IDecorationEventData {
10
+ decoration: Decoration;
11
+ classname?: string;
12
+ }
13
+ export interface IDecorationTargetChangeEventData {
14
+ decoration: Decoration;
15
+ target: ITreeNode | ICompositeTreeNode;
16
+ }
17
+ export declare class Decoration {
18
+ private _cssClassList;
19
+ private _appliedTargets;
20
+ private _negatedTargets;
21
+ private _disabled;
22
+ private appliedTargetsDisposables;
23
+ private negatedTargetsDisposables;
24
+ private onDidAddCSSClassnameEmitter;
25
+ private onDidRemoveCSSClassnameEmitter;
26
+ private onDidDisableDecorationEmitter;
27
+ private onDidEnableDecorationEmitter;
28
+ private onDidAddTargetEmitter;
29
+ private onDidRemoveTargetEmitter;
30
+ private onDidNegateTargetEmitter;
31
+ private onDidUnNegateTargetEmitter;
32
+ constructor(...cssClassList: string[]);
33
+ get disabled(): boolean;
34
+ set disabled(disabled: boolean);
35
+ get appliedTargets(): Map<ITreeNode | ICompositeTreeNode, TargetMatchMode>;
36
+ get negatedTargets(): Map<ITreeNode | ICompositeTreeNode, TargetMatchMode>;
37
+ get cssClassList(): Set<string>;
38
+ get onDidAddCSSClassname(): import("../../../utils").Event<IDecorationEventData>;
39
+ get onDidRemoveCSSClassname(): import("../../../utils").Event<IDecorationEventData>;
40
+ get onDidDisableDecoration(): import("../../../utils").Event<IDecorationEventData>;
41
+ get onDidEnableDecoration(): import("../../../utils").Event<IDecorationEventData>;
42
+ get onDidAddTarget(): import("../../../utils").Event<IDecorationTargetChangeEventData>;
43
+ get onDidRemoveTarget(): import("../../../utils").Event<IDecorationTargetChangeEventData>;
44
+ get onDidNegateTarget(): import("../../../utils").Event<IDecorationTargetChangeEventData>;
45
+ get onDidUnNegateTarget(): import("../../../utils").Event<IDecorationTargetChangeEventData>;
46
+ addCSSClass(className: string): void;
47
+ removeCSSClass(className: string): void;
48
+ /**
49
+ * 判断当前装饰器是否包含指定的对象绑定
50
+ * @param target
51
+ */
52
+ hasTarget(target: ITreeNode | ICompositeTreeNode): boolean;
53
+ /**
54
+ * 为当前装饰器绑定对象
55
+ * @param target
56
+ * @param flags
57
+ */
58
+ addTarget(target: ITreeNode | ICompositeTreeNode, flags?: TargetMatchMode): IDisposable | undefined;
59
+ /**
60
+ * 为当前装饰器移除对象绑定
61
+ * @param target
62
+ * @param flags
63
+ */
64
+ removeTarget(target: ITreeNode | ICompositeTreeNode): void;
65
+ /**
66
+ * 否定装饰器绑定
67
+ * negate 表示 :not修饰符
68
+ * 定义节点不应用样式
69
+ * @param target
70
+ * @param flags
71
+ */
72
+ negateTarget(target: ITreeNode | ICompositeTreeNode, flags?: TargetMatchMode): IDisposable | undefined;
73
+ /**
74
+ * 取消否定装饰器绑定
75
+ * @param target
76
+ */
77
+ unNegateTarget(target: ITreeNode | ICompositeTreeNode): void;
78
+ }
79
+ //# sourceMappingURL=Decoration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Decoration.d.ts","sourceRoot":"","sources":["../../../../src/recycle-tree/tree/decoration/Decoration.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAuB,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAE5D,oBAAY,eAAe;IACzB,IAAI,IAAI;IAER,IAAI,IAAA;IAEJ,QAAQ,IAAA;IAER,eAAe,IAAA;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gCAAgC;IAC/C,UAAU,EAAE,UAAU,CAAC;IACvB,MAAM,EAAE,SAAS,GAAG,kBAAkB,CAAC;CACxC;AAED,qBAAa,UAAU;IACrB,OAAO,CAAC,aAAa,CAAc;IACnC,OAAO,CAAC,eAAe,CAAmE;IAC1F,OAAO,CAAC,eAAe,CAAmE;IAE1F,OAAO,CAAC,SAAS,CAAS;IAE1B,OAAO,CAAC,yBAAyB,CAAuE;IACxG,OAAO,CAAC,yBAAyB,CAAuE;IAExG,OAAO,CAAC,2BAA2B,CAAgD;IACnF,OAAO,CAAC,8BAA8B,CAAgD;IACtF,OAAO,CAAC,6BAA6B,CAAgD;IACrF,OAAO,CAAC,4BAA4B,CAAgD;IACpF,OAAO,CAAC,qBAAqB,CAA4D;IACzF,OAAO,CAAC,wBAAwB,CAA4D;IAC5F,OAAO,CAAC,wBAAwB,CAA4D;IAC5F,OAAO,CAAC,0BAA0B,CAA4D;gBAElF,GAAG,YAAY,EAAE,MAAM,EAAE;IAYrC,IAAI,QAAQ,IAIW,OAAO,CAF7B;IAED,IAAI,QAAQ,CAAC,QAAQ,EAAE,OAAO,EAO7B;IAED,IAAI,cAAc,yDAEjB;IAED,IAAI,cAAc,yDAEjB;IAED,IAAI,YAAY,gBAEf;IAED,IAAI,oBAAoB,yDAEvB;IAED,IAAI,uBAAuB,yDAE1B;IAED,IAAI,sBAAsB,yDAEzB;IAED,IAAI,qBAAqB,yDAExB;IAED,IAAI,cAAc,qEAEjB;IAED,IAAI,iBAAiB,qEAEpB;IAED,IAAI,iBAAiB,qEAEpB;IAED,IAAI,mBAAmB,qEAEtB;IAEM,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAQpC,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAQ9C;;;OAGG;IACI,SAAS,CAAC,MAAM,EAAE,SAAS,GAAG,kBAAkB;IAKvD;;;;OAIG;IACI,SAAS,CACd,MAAM,EAAE,SAAS,GAAG,kBAAkB,EACtC,KAAK,GAAE,eAAsC,GAC5C,WAAW,GAAG,SAAS;IAiB1B;;;;OAIG;IACI,YAAY,CAAC,MAAM,EAAE,SAAS,GAAG,kBAAkB,GAAG,IAAI;IAUjE;;;;;;OAMG;IACI,YAAY,CACjB,MAAM,EAAE,SAAS,GAAG,kBAAkB,EACtC,KAAK,GAAE,eAAsC,GAC5C,WAAW,GAAG,SAAS;IAiB1B;;;OAGG;IACI,cAAc,CAAC,MAAM,EAAE,SAAS,GAAG,kBAAkB,GAAG,IAAI;CASpE"}