@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,560 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WaitUntilEvent = exports.PauseableEmitter = exports.Emitter = exports.setGlobalLeakWarningThreshold = exports.Event = void 0;
4
+ const linkedList_1 = require("./linkedList");
5
+ var Event;
6
+ (function (Event) {
7
+ const _disposable = { dispose() { } };
8
+ Event.None = () => _disposable;
9
+ /**
10
+ * Given an event, returns another event which only fires once.
11
+ */
12
+ function once(event) {
13
+ return (listener, thisArgs = null, disposables) => {
14
+ // we need this, in case the event fires during the listener call
15
+ let didFire = false;
16
+ const result = event((e) => {
17
+ if (didFire) {
18
+ return;
19
+ }
20
+ else if (result) {
21
+ result.dispose();
22
+ }
23
+ else {
24
+ didFire = true;
25
+ }
26
+ return listener.call(thisArgs, e);
27
+ }, null, disposables);
28
+ if (didFire) {
29
+ result.dispose();
30
+ }
31
+ return result;
32
+ };
33
+ }
34
+ Event.once = once;
35
+ /**
36
+ * Given an event and a `map` function, returns another event which maps each element
37
+ * throught the mapping function.
38
+ */
39
+ function map(event, map) {
40
+ return snapshot((listener, thisArgs = null, disposables) => event((i) => listener.call(thisArgs, map(i)), null, disposables));
41
+ }
42
+ Event.map = map;
43
+ /**
44
+ * Given an event and an `each` function, returns another identical event and calls
45
+ * the `each` function per each element.
46
+ */
47
+ function forEach(event, each) {
48
+ return snapshot((listener, thisArgs = null, disposables) => event((i) => {
49
+ each(i);
50
+ listener.call(thisArgs, i);
51
+ }, null, disposables));
52
+ }
53
+ Event.forEach = forEach;
54
+ function filter(event, filter) {
55
+ return snapshot((listener, thisArgs = null, disposables) => event((e) => filter(e) && listener.call(thisArgs, e), null, disposables));
56
+ }
57
+ Event.filter = filter;
58
+ /**
59
+ * Given an event, returns the same event but typed as `Event<void>`.
60
+ */
61
+ function signal(event) {
62
+ return event;
63
+ }
64
+ Event.signal = signal;
65
+ /**
66
+ * Given an event and a `merge` function, returns another event which maps each element
67
+ * and the cummulative result throught the `merge` function. Similar to `map`, but with memory.
68
+ */
69
+ function reduce(event, merge, initial) {
70
+ let output = initial;
71
+ return map(event, (e) => {
72
+ output = merge(output, e);
73
+ return output;
74
+ });
75
+ }
76
+ Event.reduce = reduce;
77
+ /**
78
+ * Given a chain of event processing functions (filter, map, etc), each
79
+ * function will be invoked per event & per listener. Snapshotting an event
80
+ * chain allows each function to be invoked just once per event.
81
+ */
82
+ function snapshot(event) {
83
+ let listener;
84
+ const emitter = new Emitter({
85
+ onFirstListenerAdd() {
86
+ listener = event(emitter.fire, emitter);
87
+ },
88
+ onLastListenerRemove() {
89
+ listener.dispose();
90
+ },
91
+ });
92
+ return emitter.event;
93
+ }
94
+ Event.snapshot = snapshot;
95
+ function debounce(event, merge, delay = 100, leading = false, leakWarningThreshold) {
96
+ let subscription;
97
+ let output;
98
+ let handle;
99
+ let numDebouncedCalls = 0;
100
+ const emitter = new Emitter({
101
+ leakWarningThreshold,
102
+ onFirstListenerAdd() {
103
+ subscription = event((cur) => {
104
+ numDebouncedCalls++;
105
+ output = merge(output, cur);
106
+ if (leading && !handle) {
107
+ emitter.fire(output);
108
+ }
109
+ clearTimeout(handle);
110
+ handle = setTimeout(() => {
111
+ const _output = output;
112
+ output = undefined;
113
+ handle = undefined;
114
+ if (!leading || numDebouncedCalls > 1) {
115
+ emitter.fire(_output);
116
+ }
117
+ numDebouncedCalls = 0;
118
+ }, delay);
119
+ });
120
+ },
121
+ onLastListenerRemove() {
122
+ subscription.dispose();
123
+ },
124
+ });
125
+ return emitter.event;
126
+ }
127
+ Event.debounce = debounce;
128
+ /**
129
+ * Given an event, it returns another event which fires only once and as soon as
130
+ * the input event emits. The event data is the number of millis it took for the
131
+ * event to fire.
132
+ */
133
+ function stopwatch(event) {
134
+ const start = new Date().getTime();
135
+ return map(once(event), (_) => new Date().getTime() - start);
136
+ }
137
+ Event.stopwatch = stopwatch;
138
+ /**
139
+ * Given an event, it returns another event which fires only when the event
140
+ * element changes.
141
+ */
142
+ function latch(event) {
143
+ let firstCall = true;
144
+ let cache;
145
+ return filter(event, (value) => {
146
+ const shouldEmit = firstCall || value !== cache;
147
+ firstCall = false;
148
+ cache = value;
149
+ return shouldEmit;
150
+ });
151
+ }
152
+ Event.latch = latch;
153
+ /**
154
+ * Buffers the provided event until a first listener comes
155
+ * along, at which point fire all the events at once and
156
+ * pipe the event from then on.
157
+ *
158
+ * ```typescript
159
+ * const emitter = new Emitter<number>();
160
+ * const event = emitter.event;
161
+ * const bufferedEvent = buffer(event);
162
+ *
163
+ * emitter.fire(1);
164
+ * emitter.fire(2);
165
+ * emitter.fire(3);
166
+ * // nothing...
167
+ *
168
+ * const listener = bufferedEvent(num => console.log(num));
169
+ * // 1, 2, 3
170
+ *
171
+ * emitter.fire(4);
172
+ * // 4
173
+ * ```
174
+ */
175
+ function buffer(event, nextTick = false, _buffer = []) {
176
+ let buffer = _buffer.slice();
177
+ let listener = event((e) => {
178
+ if (buffer) {
179
+ buffer.push(e);
180
+ }
181
+ else {
182
+ emitter.fire(e);
183
+ }
184
+ });
185
+ const flush = () => {
186
+ if (buffer) {
187
+ buffer.forEach((e) => emitter.fire(e));
188
+ }
189
+ buffer = null;
190
+ };
191
+ const emitter = new Emitter({
192
+ onFirstListenerAdd() {
193
+ if (!listener) {
194
+ listener = event((e) => emitter.fire(e));
195
+ }
196
+ },
197
+ onFirstListenerDidAdd() {
198
+ if (buffer) {
199
+ if (nextTick) {
200
+ setTimeout(flush);
201
+ }
202
+ else {
203
+ flush();
204
+ }
205
+ }
206
+ },
207
+ onLastListenerRemove() {
208
+ if (listener) {
209
+ listener.dispose();
210
+ }
211
+ listener = null;
212
+ },
213
+ });
214
+ return emitter.event;
215
+ }
216
+ Event.buffer = buffer;
217
+ class ChainableEvent {
218
+ constructor(event) {
219
+ this.event = event;
220
+ }
221
+ map(fn) {
222
+ return new ChainableEvent(map(this.event, fn));
223
+ }
224
+ forEach(fn) {
225
+ return new ChainableEvent(forEach(this.event, fn));
226
+ }
227
+ filter(fn) {
228
+ return new ChainableEvent(filter(this.event, fn));
229
+ }
230
+ reduce(merge, initial) {
231
+ return new ChainableEvent(reduce(this.event, merge, initial));
232
+ }
233
+ latch() {
234
+ return new ChainableEvent(latch(this.event));
235
+ }
236
+ on(listener, thisArgs, disposables) {
237
+ return this.event(listener, thisArgs, disposables);
238
+ }
239
+ once(listener, thisArgs, disposables) {
240
+ return once(this.event)(listener, thisArgs, disposables);
241
+ }
242
+ }
243
+ function chain(event) {
244
+ return new ChainableEvent(event);
245
+ }
246
+ Event.chain = chain;
247
+ function fromNodeEventEmitter(emitter, eventName, map = (id) => id) {
248
+ const fn = (...args) => result.fire(map(...args));
249
+ const onFirstListenerAdd = () => emitter.on(eventName, fn);
250
+ const onLastListenerRemove = () => emitter.removeListener(eventName, fn);
251
+ const result = new Emitter({ onFirstListenerAdd, onLastListenerRemove });
252
+ return result.event;
253
+ }
254
+ Event.fromNodeEventEmitter = fromNodeEventEmitter;
255
+ function fromPromise(promise) {
256
+ const emitter = new Emitter();
257
+ let shouldEmit = false;
258
+ promise
259
+ .then(undefined, () => null)
260
+ .then(() => {
261
+ if (!shouldEmit) {
262
+ setTimeout(() => emitter.fire(undefined), 0);
263
+ }
264
+ else {
265
+ emitter.fire(undefined);
266
+ }
267
+ });
268
+ shouldEmit = true;
269
+ return emitter.event;
270
+ }
271
+ Event.fromPromise = fromPromise;
272
+ function toPromise(event) {
273
+ return new Promise((c) => once(event)(c));
274
+ }
275
+ Event.toPromise = toPromise;
276
+ })(Event = exports.Event || (exports.Event = {}));
277
+ let _globalLeakWarningThreshold = -1;
278
+ function setGlobalLeakWarningThreshold(n) {
279
+ const oldValue = _globalLeakWarningThreshold;
280
+ _globalLeakWarningThreshold = n;
281
+ return {
282
+ dispose() {
283
+ _globalLeakWarningThreshold = oldValue;
284
+ },
285
+ };
286
+ }
287
+ exports.setGlobalLeakWarningThreshold = setGlobalLeakWarningThreshold;
288
+ class LeakageMonitor {
289
+ constructor(customThreshold, name = Math.random().toString(18).slice(2, 5)) {
290
+ this.customThreshold = customThreshold;
291
+ this.name = name;
292
+ this._warnCountdown = 0;
293
+ }
294
+ dispose() {
295
+ if (this._stacks) {
296
+ this._stacks.clear();
297
+ }
298
+ }
299
+ check(listenerCount) {
300
+ let threshold = _globalLeakWarningThreshold;
301
+ if (typeof this.customThreshold === 'number') {
302
+ threshold = this.customThreshold;
303
+ }
304
+ if (threshold <= 0 || listenerCount < threshold) {
305
+ return undefined;
306
+ }
307
+ if (!this._stacks) {
308
+ this._stacks = new Map();
309
+ }
310
+ const stack = new Error().stack.split('\n').slice(3).join('\n');
311
+ const count = this._stacks.get(stack) || 0;
312
+ this._stacks.set(stack, count + 1);
313
+ this._warnCountdown -= 1;
314
+ if (this._warnCountdown <= 0) {
315
+ // only warn on first exceed and then every time the limit
316
+ // is exceeded by 50% again
317
+ this._warnCountdown = threshold * 0.5;
318
+ // find most frequent listener and print warning
319
+ let topStack;
320
+ let topCount = 0;
321
+ this._stacks.forEach((count, stack) => {
322
+ if (!topStack || topCount < count) {
323
+ topStack = stack;
324
+ topCount = count;
325
+ }
326
+ });
327
+ console.warn(`[${this.name}] potential listener LEAK detected, having ${listenerCount} listeners already. MOST frequent listener (${topCount}):`);
328
+ console.warn(topStack);
329
+ }
330
+ return () => {
331
+ const count = this._stacks.get(stack) || 0;
332
+ this._stacks.set(stack, count - 1);
333
+ };
334
+ }
335
+ }
336
+ class Emitter {
337
+ constructor(options) {
338
+ this._disposed = false;
339
+ this._options = options;
340
+ this._leakageMon =
341
+ _globalLeakWarningThreshold > 0
342
+ ? new LeakageMonitor(this._options && this._options.leakWarningThreshold)
343
+ : undefined;
344
+ }
345
+ /**
346
+ * For the public to allow to subscribe
347
+ * to events from this Emitter
348
+ */
349
+ get event() {
350
+ if (!this._event) {
351
+ this._event = (listener, thisArgs, disposables) => {
352
+ if (!this._listeners) {
353
+ this._listeners = new linkedList_1.LinkedList();
354
+ }
355
+ const firstListener = this._listeners.isEmpty();
356
+ if (firstListener && this._options && this._options.onFirstListenerAdd) {
357
+ this._options.onFirstListenerAdd(this);
358
+ }
359
+ const remove = this._listeners.push(!thisArgs ? listener : [listener, thisArgs]);
360
+ if (firstListener && this._options && this._options.onFirstListenerDidAdd) {
361
+ this._options.onFirstListenerDidAdd(this);
362
+ }
363
+ if (this._options && this._options.onListenerDidAdd) {
364
+ this._options.onListenerDidAdd(this, listener, thisArgs);
365
+ }
366
+ // check and record this emitter for potential leakage
367
+ let removeMonitor;
368
+ if (this._leakageMon) {
369
+ removeMonitor = this._leakageMon.check(this._listeners.size);
370
+ }
371
+ const result = {
372
+ dispose: () => {
373
+ if (removeMonitor) {
374
+ removeMonitor();
375
+ }
376
+ result.dispose = Emitter._noop;
377
+ if (!this._disposed) {
378
+ remove();
379
+ if (this._options && this._options.onLastListenerRemove) {
380
+ const hasListeners = this._listeners && !this._listeners.isEmpty();
381
+ if (!hasListeners) {
382
+ this._options.onLastListenerRemove(this);
383
+ }
384
+ }
385
+ }
386
+ },
387
+ };
388
+ if (Array.isArray(disposables)) {
389
+ disposables.push(result);
390
+ }
391
+ return result;
392
+ };
393
+ }
394
+ return this._event;
395
+ }
396
+ /**
397
+ * To be kept private to fire an event to
398
+ * subscribers
399
+ */
400
+ fire(event) {
401
+ if (this._listeners) {
402
+ // put all [listener,event]-pairs into delivery queue
403
+ // then emit all event. an inner/nested event might be
404
+ // the driver of this
405
+ if (!this._deliveryQueue) {
406
+ this._deliveryQueue = new linkedList_1.LinkedList();
407
+ }
408
+ for (let iter = this._listeners.iterator(), e = iter.next(); !e.done; e = iter.next()) {
409
+ this._deliveryQueue.push([e.value, event]);
410
+ }
411
+ while (this._deliveryQueue.size > 0) {
412
+ const [listener, event] = this._deliveryQueue.shift();
413
+ if (typeof listener === 'function') {
414
+ listener.call(undefined, event);
415
+ }
416
+ else {
417
+ listener[0].call(listener[1], event);
418
+ }
419
+ }
420
+ }
421
+ }
422
+ /**
423
+ * 发送一个异步事件,等待所有监听器返回,并收集返回值
424
+ * @param e
425
+ * @param timeout
426
+ */
427
+ async fireAndAwait(event, timeout = 2000) {
428
+ if (this._listeners) {
429
+ if (!this._deliveryQueue) {
430
+ this._deliveryQueue = new linkedList_1.LinkedList();
431
+ }
432
+ for (let iter = this._listeners.iterator(), e = iter.next(); !e.done; e = iter.next()) {
433
+ this._deliveryQueue.push([e.value, event]);
434
+ }
435
+ const promises = [];
436
+ const timeoutPromise = new Promise((resolve) => {
437
+ setTimeout(() => {
438
+ resolve({
439
+ err: new Error('timeout'),
440
+ });
441
+ }, timeout);
442
+ });
443
+ while (this._deliveryQueue.size > 0) {
444
+ const [listener, event] = this._deliveryQueue.shift();
445
+ const promise = (async () => {
446
+ try {
447
+ if (typeof listener === 'function') {
448
+ return {
449
+ result: (await listener.call(undefined, event)),
450
+ };
451
+ }
452
+ else {
453
+ return {
454
+ result: (await listener[0].call(listener[1], event)),
455
+ };
456
+ }
457
+ }
458
+ catch (e) {
459
+ return {
460
+ err: e,
461
+ };
462
+ }
463
+ })();
464
+ promises.push(Promise.race([timeoutPromise, promise]));
465
+ }
466
+ return Promise.all(promises);
467
+ }
468
+ else {
469
+ return [];
470
+ }
471
+ }
472
+ get listenerSize() {
473
+ return this._listeners ? this._listeners.size : 0;
474
+ }
475
+ dispose() {
476
+ if (this._listeners) {
477
+ this._listeners.clear();
478
+ }
479
+ if (this._deliveryQueue) {
480
+ this._deliveryQueue.clear();
481
+ }
482
+ if (this._leakageMon) {
483
+ this._leakageMon.dispose();
484
+ }
485
+ this._disposed = true;
486
+ }
487
+ }
488
+ exports.Emitter = Emitter;
489
+ Emitter._noop = () => { };
490
+ class PauseableEmitter extends Emitter {
491
+ constructor(options) {
492
+ super(options);
493
+ this._isPaused = 0;
494
+ this._eventQueue = new linkedList_1.LinkedList();
495
+ this._mergeFn = options && options.merge;
496
+ }
497
+ pause() {
498
+ this._isPaused++;
499
+ }
500
+ resume() {
501
+ if (this._isPaused !== 0 && --this._isPaused === 0) {
502
+ if (this._mergeFn) {
503
+ // use the merge function to create a single composite
504
+ // event. make a copy in case firing pauses this emitter
505
+ const events = this._eventQueue.toArray();
506
+ this._eventQueue.clear();
507
+ super.fire(this._mergeFn(events));
508
+ }
509
+ else {
510
+ // no merging, fire each event individually and test
511
+ // that this emitter isn't paused halfway through
512
+ while (!this._isPaused && this._eventQueue.size !== 0) {
513
+ super.fire(this._eventQueue.shift());
514
+ }
515
+ }
516
+ }
517
+ }
518
+ fire(event) {
519
+ if (this._listeners) {
520
+ if (this._isPaused !== 0) {
521
+ this._eventQueue.push(event);
522
+ }
523
+ else {
524
+ super.fire(event);
525
+ }
526
+ }
527
+ }
528
+ }
529
+ exports.PauseableEmitter = PauseableEmitter;
530
+ var WaitUntilEvent;
531
+ (function (WaitUntilEvent) {
532
+ async function fire(emitter, event, timeout) {
533
+ const waitables = [];
534
+ const asyncEvent = Object.assign(event, {
535
+ waitUntil: (thenable) => {
536
+ if (Object.isFrozen(waitables)) {
537
+ throw new Error('waitUntil cannot be called asynchronously.');
538
+ }
539
+ waitables.push(thenable);
540
+ },
541
+ });
542
+ emitter.fire(asyncEvent);
543
+ // Asynchronous calls to `waitUntil` should fail.
544
+ Object.freeze(waitables);
545
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
546
+ // @ts-ignore
547
+ delete asyncEvent['waitUntil'];
548
+ if (!waitables.length) {
549
+ return;
550
+ }
551
+ if (timeout !== undefined) {
552
+ await Promise.race([Promise.all(waitables), new Promise((resolve) => setTimeout(resolve, timeout))]);
553
+ }
554
+ else {
555
+ await Promise.all(waitables);
556
+ }
557
+ }
558
+ WaitUntilEvent.fire = fire;
559
+ })(WaitUntilEvent = exports.WaitUntilEvent || (exports.WaitUntilEvent = {}));
560
+ //# sourceMappingURL=event.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event.js","sourceRoot":"","sources":["../../src/utils/event.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ export * from './deprecated';
2
+ export * from './disposable';
3
+ export * from './event';
4
+ export * from './iterator';
5
+ export * from './linkedList';
6
+ export * from './warning';
7
+ export * from './os';
8
+ export * from './process';
9
+ export * from './path';
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,MAAM,CAAC;AACrB,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ (0, tslib_1.__exportStar)(require("./deprecated"), exports);
5
+ (0, tslib_1.__exportStar)(require("./disposable"), exports);
6
+ (0, tslib_1.__exportStar)(require("./event"), exports);
7
+ (0, tslib_1.__exportStar)(require("./iterator"), exports);
8
+ (0, tslib_1.__exportStar)(require("./linkedList"), exports);
9
+ (0, tslib_1.__exportStar)(require("./warning"), exports);
10
+ (0, tslib_1.__exportStar)(require("./os"), exports);
11
+ (0, tslib_1.__exportStar)(require("./process"), exports);
12
+ (0, tslib_1.__exportStar)(require("./path"), exports);
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;AAAA,4DAA6B;AAC7B,4DAA6B;AAC7B,uDAAwB;AACxB,0DAA2B;AAC3B,4DAA6B;AAC7B,yDAA0B;AAC1B,oDAAqB;AACrB,yDAA0B;AAC1B,sDAAuB"}
@@ -0,0 +1,14 @@
1
+ export interface IteratorDefinedResult<T> {
2
+ readonly done: false;
3
+ readonly value: T;
4
+ }
5
+ export interface IteratorUndefinedResult {
6
+ readonly done: true;
7
+ readonly value: undefined;
8
+ }
9
+ export declare const FIN: IteratorUndefinedResult;
10
+ export declare type IteratorResult<T> = IteratorDefinedResult<T> | IteratorUndefinedResult;
11
+ export interface Iterator<T> {
12
+ next(): IteratorResult<T>;
13
+ }
14
+ //# sourceMappingURL=iterator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"iterator.d.ts","sourceRoot":"","sources":["../../src/utils/iterator.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,qBAAqB,CAAC,CAAC;IACtC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;CACnB;AACD,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;CAC3B;AACD,eAAO,MAAM,GAAG,EAAE,uBAA0D,CAAC;AAC7E,oBAAY,cAAc,CAAC,CAAC,IAAI,qBAAqB,CAAC,CAAC,CAAC,GAAG,uBAAuB,CAAC;AAEnF,MAAM,WAAW,QAAQ,CAAC,CAAC;IACzB,IAAI,IAAI,cAAc,CAAC,CAAC,CAAC,CAAC;CAC3B"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ /* ---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Microsoft Corporation. All rights reserved.
4
+ * Licensed under the MIT License. See License.txt in the project root for license information.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.FIN = void 0;
8
+ exports.FIN = { done: true, value: undefined };
9
+ //# sourceMappingURL=iterator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"iterator.js","sourceRoot":"","sources":["../../src/utils/iterator.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;;;AAUnF,QAAA,GAAG,GAA4B,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { Iterator } from './iterator';
2
+ export declare class LinkedList<E> {
3
+ private _first;
4
+ private _last;
5
+ private _size;
6
+ get size(): number;
7
+ isEmpty(): boolean;
8
+ clear(): void;
9
+ unshift(element: E): () => void;
10
+ push(element: E): () => void;
11
+ private _insert;
12
+ shift(): E | undefined;
13
+ pop(): E | undefined;
14
+ private _remove;
15
+ iterator(): Iterator<E>;
16
+ toArray(): E[];
17
+ }
18
+ //# sourceMappingURL=linkedList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"linkedList.d.ts","sourceRoot":"","sources":["../../src/utils/linkedList.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAuB,MAAM,YAAY,CAAC;AAgB3D,qBAAa,UAAU,CAAC,CAAC;IACvB,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,KAAK,CAA2B;IACxC,OAAO,CAAC,KAAK,CAAK;IAElB,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,OAAO,IAAI,OAAO;IAIlB,KAAK,IAAI,IAAI;IAMb,OAAO,CAAC,OAAO,EAAE,CAAC,GAAG,MAAM,IAAI;IAI/B,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,MAAM,IAAI;IAI5B,OAAO,CAAC,OAAO;IA6Bf,KAAK,IAAI,CAAC,GAAG,SAAS;IAUtB,GAAG,IAAI,CAAC,GAAG,SAAS;IAUpB,OAAO,CAAC,OAAO;IAwBf,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC;IAoBvB,OAAO,IAAI,CAAC,EAAE;CAOf"}