@idlebox/common 1.4.20 → 1.4.21

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 (450) hide show
  1. package/lib/array/{arrayDiff.d.ts → diff.d.ts} +1 -1
  2. package/lib/array/diff.d.ts.map +1 -0
  3. package/lib/array/{arrayDiff.js → diff.js} +1 -1
  4. package/lib/array/diff.js.map +1 -0
  5. package/lib/array/{arraySame.d.ts → is-same.d.ts} +1 -1
  6. package/lib/array/is-same.d.ts.map +1 -0
  7. package/lib/array/{arraySame.js → is-same.js} +1 -1
  8. package/lib/array/is-same.js.map +1 -0
  9. package/lib/array/{normalizeArray.d.ts → normalize.d.ts} +1 -1
  10. package/lib/array/normalize.d.ts.map +1 -0
  11. package/lib/array/{normalizeArray.js → normalize.js} +1 -1
  12. package/lib/array/normalize.js.map +1 -0
  13. package/lib/array/{sortAlpha.d.ts → sort-alpha.d.ts} +1 -1
  14. package/lib/array/sort-alpha.d.ts.map +1 -0
  15. package/lib/array/{sortAlpha.js → sort-alpha.js} +1 -1
  16. package/lib/array/sort-alpha.js.map +1 -0
  17. package/lib/array/{arrayUnique.d.ts → unique.d.ts} +1 -1
  18. package/lib/array/unique.d.ts.map +1 -0
  19. package/lib/array/{arrayUnique.js → unique.js} +1 -1
  20. package/lib/array/unique.js.map +1 -0
  21. package/lib/autoindex.d.ts +147 -136
  22. package/lib/autoindex.d.ts.map +1 -1
  23. package/lib/autoindex.js +172 -157
  24. package/lib/autoindex.js.map +1 -1
  25. package/lib/date/{isInvalid.d.ts → is-invalid.d.ts} +1 -1
  26. package/lib/date/is-invalid.d.ts.map +1 -0
  27. package/lib/date/{isInvalid.js → is-invalid.js} +1 -1
  28. package/lib/date/is-invalid.js.map +1 -0
  29. package/lib/date/{timeString.d.ts → to-string.d.ts} +5 -5
  30. package/lib/date/to-string.d.ts.map +1 -0
  31. package/lib/date/{timeString.js → to-string.js} +24 -25
  32. package/lib/date/to-string.js.map +1 -0
  33. package/lib/debugging/{tryInspect.d.ts → inspect.d.ts} +2 -2
  34. package/lib/debugging/inspect.d.ts.map +1 -0
  35. package/lib/debugging/{tryInspect.js → inspect.js} +1 -1
  36. package/lib/debugging/inspect.js.map +1 -0
  37. package/lib/debugging/object-with-name.d.ts +38 -0
  38. package/lib/debugging/object-with-name.d.ts.map +1 -0
  39. package/lib/debugging/object-with-name.js +41 -0
  40. package/lib/debugging/object-with-name.js.map +1 -0
  41. package/lib/debugging/serializable.js +1 -1
  42. package/lib/debugging/serializable.js.map +1 -1
  43. package/lib/error/convert-unknown.d.ts +2 -0
  44. package/lib/error/convert-unknown.d.ts.map +1 -0
  45. package/lib/error/convert-unknown.js +9 -0
  46. package/lib/error/convert-unknown.js.map +1 -0
  47. package/lib/error/{getFrame.d.ts → get-frame.d.ts} +2 -2
  48. package/lib/error/get-frame.d.ts.map +1 -0
  49. package/lib/error/{getFrame.js → get-frame.js} +1 -1
  50. package/lib/error/get-frame.js.map +1 -0
  51. package/lib/error/{pretty.d.ts → pretty.nodejs.d.ts} +2 -1
  52. package/lib/error/pretty.nodejs.d.ts.map +1 -0
  53. package/lib/error/{pretty.js → pretty.nodejs.js} +3 -3
  54. package/lib/error/pretty.nodejs.js.map +1 -0
  55. package/lib/error/{stackTrace.d.ts → stack-trace.d.ts} +1 -1
  56. package/lib/error/stack-trace.d.ts.map +1 -0
  57. package/lib/error/{stackTrace.js → stack-trace.js} +1 -1
  58. package/lib/error/stack-trace.js.map +1 -0
  59. package/lib/function/{asyncCallbackList.d.ts → callback-list.async.d.ts} +3 -3
  60. package/lib/function/callback-list.async.d.ts.map +1 -0
  61. package/lib/function/{asyncCallbackList.js → callback-list.async.js} +3 -7
  62. package/lib/function/callback-list.async.js.map +1 -0
  63. package/lib/function/{callbackList.d.ts → callback-list.d.ts} +1 -1
  64. package/lib/function/callback-list.d.ts.map +1 -0
  65. package/lib/function/callback-list.delay.d.ts +15 -0
  66. package/lib/function/callback-list.delay.d.ts.map +1 -0
  67. package/lib/function/callback-list.delay.js +22 -0
  68. package/lib/function/callback-list.delay.js.map +1 -0
  69. package/lib/function/{callbackList.js → callback-list.js} +2 -2
  70. package/lib/function/callback-list.js.map +1 -0
  71. package/lib/legacy/rename.d.ts +13 -0
  72. package/lib/legacy/rename.d.ts.map +1 -0
  73. package/lib/legacy/rename.js +13 -0
  74. package/lib/legacy/rename.js.map +1 -0
  75. package/lib/lifecycle/cancellation/driver.browser.d.ts.map +1 -0
  76. package/lib/lifecycle/cancellation/driver.browser.js.map +1 -0
  77. package/lib/lifecycle/cancellation/driver.common.d.ts.map +1 -0
  78. package/lib/lifecycle/{promise/cancellationToken → cancellation}/driver.common.js +1 -1
  79. package/lib/lifecycle/cancellation/driver.common.js.map +1 -0
  80. package/lib/lifecycle/{promise/cancellationToken → cancellation}/source.d.ts +3 -3
  81. package/lib/lifecycle/cancellation/source.d.ts.map +1 -0
  82. package/lib/lifecycle/{promise/cancellationToken → cancellation}/source.js +2 -2
  83. package/lib/lifecycle/cancellation/source.js.map +1 -0
  84. package/lib/lifecycle/dispose/async-disposable.d.ts +17 -0
  85. package/lib/lifecycle/dispose/async-disposable.d.ts.map +1 -0
  86. package/lib/lifecycle/dispose/async-disposable.js +42 -0
  87. package/lib/lifecycle/dispose/async-disposable.js.map +1 -0
  88. package/lib/lifecycle/dispose/bridges/function.d.ts +17 -0
  89. package/lib/lifecycle/dispose/bridges/function.d.ts.map +1 -0
  90. package/lib/lifecycle/dispose/bridges/function.js +29 -0
  91. package/lib/lifecycle/dispose/bridges/function.js.map +1 -0
  92. package/lib/lifecycle/dispose/bridges/native.d.ts +10 -0
  93. package/lib/lifecycle/dispose/bridges/native.d.ts.map +1 -0
  94. package/lib/lifecycle/dispose/bridges/native.js +13 -0
  95. package/lib/lifecycle/dispose/bridges/native.js.map +1 -0
  96. package/lib/lifecycle/dispose/bridges/streams.d.ts +21 -0
  97. package/lib/lifecycle/dispose/bridges/streams.d.ts.map +1 -0
  98. package/lib/lifecycle/dispose/bridges/streams.js +60 -0
  99. package/lib/lifecycle/dispose/bridges/streams.js.map +1 -0
  100. package/lib/lifecycle/dispose/debug.js +17 -3
  101. package/lib/lifecycle/dispose/debug.js.map +1 -1
  102. package/lib/lifecycle/dispose/disposable.d.ts +22 -0
  103. package/lib/lifecycle/dispose/disposable.d.ts.map +1 -0
  104. package/lib/lifecycle/dispose/disposable.js +120 -0
  105. package/lib/lifecycle/dispose/disposable.js.map +1 -0
  106. package/lib/lifecycle/dispose/disposableEvent.d.ts +9 -14
  107. package/lib/lifecycle/dispose/disposableEvent.d.ts.map +1 -1
  108. package/lib/lifecycle/dispose/disposableEvent.js +14 -64
  109. package/lib/lifecycle/dispose/disposableEvent.js.map +1 -1
  110. package/lib/lifecycle/dispose/disposedError.d.ts +9 -4
  111. package/lib/lifecycle/dispose/disposedError.d.ts.map +1 -1
  112. package/lib/lifecycle/dispose/disposedError.js +28 -13
  113. package/lib/lifecycle/dispose/disposedError.js.map +1 -1
  114. package/lib/lifecycle/dispose/sync-disposable.d.ts +21 -0
  115. package/lib/lifecycle/dispose/sync-disposable.d.ts.map +1 -0
  116. package/lib/lifecycle/dispose/sync-disposable.js +52 -0
  117. package/lib/lifecycle/dispose/sync-disposable.js.map +1 -0
  118. package/lib/lifecycle/event/event.d.ts +18 -33
  119. package/lib/lifecycle/event/event.d.ts.map +1 -1
  120. package/lib/lifecycle/event/event.js +75 -69
  121. package/lib/lifecycle/event/event.js.map +1 -1
  122. package/lib/lifecycle/event/memorized.d.ts +4 -3
  123. package/lib/lifecycle/event/memorized.d.ts.map +1 -1
  124. package/lib/lifecycle/event/memorized.js +9 -10
  125. package/lib/lifecycle/event/memorized.js.map +1 -1
  126. package/lib/lifecycle/event/type.d.ts +47 -0
  127. package/lib/lifecycle/event/type.d.ts.map +1 -0
  128. package/lib/lifecycle/event/type.js +2 -0
  129. package/lib/lifecycle/event/type.js.map +1 -0
  130. package/lib/lifecycle/{dispose/lifecycle.global.d.ts → global/global-lifecycle.d.ts} +3 -15
  131. package/lib/lifecycle/global/global-lifecycle.d.ts.map +1 -0
  132. package/lib/lifecycle/{dispose/lifecycle.global.js → global/global-lifecycle.js} +8 -21
  133. package/lib/lifecycle/global/global-lifecycle.js.map +1 -0
  134. package/lib/log/logger.js +1 -1
  135. package/lib/log/logger.js.map +1 -1
  136. package/lib/{mapSet/customSet.d.ts → map-and-set/custom-set.d.ts} +4 -8
  137. package/lib/map-and-set/custom-set.d.ts.map +1 -0
  138. package/lib/{mapSet/customSet.js → map-and-set/custom-set.js} +6 -20
  139. package/lib/map-and-set/custom-set.js.map +1 -0
  140. package/lib/map-and-set/required-map.d.ts +28 -0
  141. package/lib/map-and-set/required-map.d.ts.map +1 -0
  142. package/lib/map-and-set/required-map.js +42 -0
  143. package/lib/map-and-set/required-map.js.map +1 -0
  144. package/lib/object/objectSame.js +1 -1
  145. package/lib/object/objectSame.js.map +1 -1
  146. package/lib/path/pathArray.js +1 -1
  147. package/lib/path/pathArray.js.map +1 -1
  148. package/lib/platform/globalSingleton.js +1 -1
  149. package/lib/platform/globalSingleton.js.map +1 -1
  150. package/lib/platform/os.d.ts.map +1 -1
  151. package/lib/platform/os.js +1 -1
  152. package/lib/platform/os.js.map +1 -1
  153. package/lib/promise/{awaitIterator.d.ts → await-iterator.d.ts} +1 -1
  154. package/lib/promise/await-iterator.d.ts.map +1 -0
  155. package/lib/promise/{awaitIterator.js → await-iterator.js} +1 -1
  156. package/lib/promise/await-iterator.js.map +1 -0
  157. package/lib/{lifecycle/promise/deferredPromise.d.ts → promise/deferred-promise.d.ts} +14 -6
  158. package/lib/promise/deferred-promise.d.ts.map +1 -0
  159. package/lib/{lifecycle/promise/deferredPromise.js → promise/deferred-promise.js} +57 -16
  160. package/lib/promise/deferred-promise.js.map +1 -0
  161. package/lib/promise/{promiseBool.d.ts → promise-bool.d.ts} +1 -1
  162. package/lib/promise/promise-bool.d.ts.map +1 -0
  163. package/lib/promise/{promiseBool.js → promise-bool.js} +1 -1
  164. package/lib/promise/promise-bool.js.map +1 -0
  165. package/lib/promise/{promiseCollection.d.ts → promise-list.d.ts} +3 -3
  166. package/lib/promise/promise-list.d.ts.map +1 -0
  167. package/lib/promise/{promiseCollection.js → promise-list.js} +3 -3
  168. package/lib/promise/promise-list.js.map +1 -0
  169. package/lib/reflection/classes/pointer.d.ts +5 -0
  170. package/lib/reflection/classes/pointer.d.ts.map +1 -0
  171. package/lib/reflection/classes/pointer.js +49 -0
  172. package/lib/reflection/classes/pointer.js.map +1 -0
  173. package/lib/reflection/classes/singleton.d.ts +10 -2
  174. package/lib/reflection/classes/singleton.d.ts.map +1 -1
  175. package/lib/reflection/classes/singleton.js +29 -21
  176. package/lib/reflection/classes/singleton.js.map +1 -1
  177. package/lib/reflection/methods/bind.d.ts +1 -4
  178. package/lib/reflection/methods/bind.d.ts.map +1 -1
  179. package/lib/reflection/methods/bind.js +17 -23
  180. package/lib/reflection/methods/bind.js.map +1 -1
  181. package/lib/reflection/methods/memorize.d.ts +7 -4
  182. package/lib/reflection/methods/memorize.d.ts.map +1 -1
  183. package/lib/reflection/methods/memorize.js +27 -23
  184. package/lib/reflection/methods/memorize.js.map +1 -1
  185. package/lib/schedule/extendable-timer.d.ts +16 -0
  186. package/lib/schedule/extendable-timer.d.ts.map +1 -0
  187. package/lib/schedule/extendable-timer.js +45 -0
  188. package/lib/schedule/extendable-timer.js.map +1 -0
  189. package/lib/{lifecycle/timeout → schedule}/interval.d.ts +3 -3
  190. package/lib/schedule/interval.d.ts.map +1 -0
  191. package/lib/{lifecycle/timeout → schedule}/interval.js +3 -3
  192. package/lib/schedule/interval.js.map +1 -0
  193. package/lib/schedule/local-type.d.ts +3 -0
  194. package/lib/schedule/local-type.d.ts.map +1 -0
  195. package/lib/schedule/local-type.js +2 -0
  196. package/lib/schedule/local-type.js.map +1 -0
  197. package/lib/schedule/scheduler.d.ts +4 -0
  198. package/lib/schedule/scheduler.d.ts.map +1 -0
  199. package/lib/schedule/scheduler.js +3 -0
  200. package/lib/schedule/scheduler.js.map +1 -0
  201. package/lib/{lifecycle/timeout → schedule}/timeout.d.ts +2 -3
  202. package/lib/schedule/timeout.d.ts.map +1 -0
  203. package/lib/{lifecycle/timeout → schedule}/timeout.js +5 -11
  204. package/lib/schedule/timeout.js.map +1 -0
  205. package/lib/state/{StateMachine.d.ts → simple-state-machine.d.ts} +1 -1
  206. package/lib/state/simple-state-machine.d.ts.map +1 -0
  207. package/lib/state/{StateMachine.js → simple-state-machine.js} +1 -1
  208. package/lib/state/simple-state-machine.js.map +1 -0
  209. package/lib/string/{castCase.d.ts → case-cast.d.ts} +1 -1
  210. package/lib/string/case-cast.d.ts.map +1 -0
  211. package/lib/string/{castCase.js → case-cast.js} +1 -1
  212. package/lib/string/case-cast.js.map +1 -0
  213. package/lib/string/{escapeRegexp.d.ts → escape-regexp.d.ts} +1 -1
  214. package/lib/string/escape-regexp.d.ts.map +1 -0
  215. package/lib/string/{escapeRegexp.js → escape-regexp.js} +1 -1
  216. package/lib/string/escape-regexp.js.map +1 -0
  217. package/lib/string/{sizeString.d.ts → human-bytes.d.ts} +1 -1
  218. package/lib/string/human-bytes.d.ts.map +1 -0
  219. package/lib/string/{sizeString.js → human-bytes.js} +1 -1
  220. package/lib/string/human-bytes.js.map +1 -0
  221. package/lib/tsconfig.tsbuildinfo +1 -1
  222. package/lib/typing-helper/callback.d.ts +5 -0
  223. package/lib/typing-helper/callback.d.ts.map +1 -0
  224. package/lib/typing-helper/callback.js +2 -0
  225. package/lib/typing-helper/callback.js.map +1 -0
  226. package/lib/typing-helper/deep.partial.d.ts.map +1 -0
  227. package/lib/typing-helper/deep.partial.js.map +1 -0
  228. package/lib/typing-helper/deep.readonly.d.ts.map +1 -0
  229. package/lib/typing-helper/deep.readonly.js.map +1 -0
  230. package/lib/typing-helper/deep.required.d.ts.map +1 -0
  231. package/lib/typing-helper/deep.required.js.map +1 -0
  232. package/lib/typing-helper/deep.writable.d.ts.map +1 -0
  233. package/lib/typing-helper/deep.writable.js.map +1 -0
  234. package/lib/typing-helper/literal.d.ts.map +1 -0
  235. package/lib/{typingHelper → typing-helper}/literal.js.map +1 -1
  236. package/package.json +5 -4
  237. package/src/autoindex.ts +236 -219
  238. package/src/date/{timeString.ts → to-string.ts} +28 -29
  239. package/src/debugging/{tryInspect.ts → inspect.ts} +1 -1
  240. package/src/debugging/object-with-name.ts +64 -0
  241. package/src/debugging/serializable.ts +1 -1
  242. package/src/error/convert-unknown.ts +9 -0
  243. package/src/error/{getFrame.ts → get-frame.ts} +1 -1
  244. package/src/error/{pretty.ts → pretty.nodejs.ts} +3 -2
  245. package/src/function/{asyncCallbackList.ts → callback-list.async.ts} +2 -7
  246. package/src/function/callback-list.delay.ts +29 -0
  247. package/src/function/{callbackList.ts → callback-list.ts} +1 -1
  248. package/src/legacy/rename.ts +15 -0
  249. package/src/lifecycle/{promise/cancellationToken → cancellation}/driver.browser.ts +3 -4
  250. package/src/lifecycle/{promise/cancellationToken → cancellation}/driver.common.ts +3 -2
  251. package/src/lifecycle/{promise/cancellationToken → cancellation}/source.ts +4 -4
  252. package/src/lifecycle/dispose/async-disposable.ts +41 -0
  253. package/src/lifecycle/dispose/bridges/function.ts +31 -0
  254. package/src/lifecycle/dispose/bridges/native.ts +23 -0
  255. package/src/lifecycle/dispose/bridges/streams.ts +70 -0
  256. package/src/lifecycle/dispose/debug.ts +22 -4
  257. package/src/lifecycle/dispose/disposable.ts +162 -0
  258. package/src/lifecycle/dispose/disposableEvent.ts +20 -86
  259. package/src/lifecycle/dispose/disposedError.ts +34 -17
  260. package/src/lifecycle/dispose/sync-disposable.ts +53 -0
  261. package/src/lifecycle/event/event.ts +84 -81
  262. package/src/lifecycle/event/memorized.ts +13 -12
  263. package/src/lifecycle/event/type.ts +55 -0
  264. package/src/lifecycle/global/global-lifecycle.ts +49 -0
  265. package/src/log/logger.ts +1 -1
  266. package/src/{mapSet/customSet.ts → map-and-set/custom-set.ts} +7 -26
  267. package/src/{mapSet/extendMap.ts → map-and-set/required-map.ts} +21 -6
  268. package/src/object/objectSame.ts +1 -1
  269. package/src/path/pathArray.ts +1 -1
  270. package/src/platform/globalSingleton.ts +1 -1
  271. package/src/platform/os.ts +1 -1
  272. package/src/{lifecycle/promise/deferredPromise.ts → promise/deferred-promise.ts} +68 -27
  273. package/src/promise/{promiseCollection.ts → promise-list.ts} +2 -2
  274. package/src/reflection/classes/pointer.ts +54 -0
  275. package/src/reflection/classes/singleton.ts +30 -21
  276. package/src/reflection/methods/bind.ts +15 -23
  277. package/src/reflection/methods/memorize.ts +30 -23
  278. package/src/schedule/extendable-timer.ts +49 -0
  279. package/src/{lifecycle/timeout → schedule}/interval.ts +4 -4
  280. package/src/schedule/local-type.ts +2 -0
  281. package/src/schedule/scheduler.ts +8 -0
  282. package/src/{lifecycle/timeout → schedule}/timeout.ts +7 -13
  283. package/src/state/{StateMachine.ts → simple-state-machine.ts} +3 -4
  284. package/src/tsconfig.json +3 -1
  285. package/src/typing-helper/callback.ts +4 -0
  286. package/lib/array/arrayDiff.d.ts.map +0 -1
  287. package/lib/array/arrayDiff.js.map +0 -1
  288. package/lib/array/arraySame.d.ts.map +0 -1
  289. package/lib/array/arraySame.js.map +0 -1
  290. package/lib/array/arrayUnique.d.ts.map +0 -1
  291. package/lib/array/arrayUnique.js.map +0 -1
  292. package/lib/array/normalizeArray.d.ts.map +0 -1
  293. package/lib/array/normalizeArray.js.map +0 -1
  294. package/lib/array/sortAlpha.d.ts.map +0 -1
  295. package/lib/array/sortAlpha.js.map +0 -1
  296. package/lib/date/isInvalid.d.ts.map +0 -1
  297. package/lib/date/isInvalid.js.map +0 -1
  298. package/lib/date/timeString.d.ts.map +0 -1
  299. package/lib/date/timeString.js.map +0 -1
  300. package/lib/debugging/tryInspect.d.ts.map +0 -1
  301. package/lib/debugging/tryInspect.js.map +0 -1
  302. package/lib/error/convertUnknown.d.ts +0 -2
  303. package/lib/error/convertUnknown.d.ts.map +0 -1
  304. package/lib/error/convertUnknown.js +0 -9
  305. package/lib/error/convertUnknown.js.map +0 -1
  306. package/lib/error/getFrame.d.ts.map +0 -1
  307. package/lib/error/getFrame.js.map +0 -1
  308. package/lib/error/pretty.d.ts.map +0 -1
  309. package/lib/error/pretty.js.map +0 -1
  310. package/lib/error/stackTrace.d.ts.map +0 -1
  311. package/lib/error/stackTrace.js.map +0 -1
  312. package/lib/function/asyncCallbackList.d.ts.map +0 -1
  313. package/lib/function/asyncCallbackList.js.map +0 -1
  314. package/lib/function/callbackList.d.ts.map +0 -1
  315. package/lib/function/callbackList.js.map +0 -1
  316. package/lib/function/delayCallbackList.d.ts +0 -17
  317. package/lib/function/delayCallbackList.d.ts.map +0 -1
  318. package/lib/function/delayCallbackList.js +0 -36
  319. package/lib/function/delayCallbackList.js.map +0 -1
  320. package/lib/function/functionName.d.ts +0 -26
  321. package/lib/function/functionName.d.ts.map +0 -1
  322. package/lib/function/functionName.js +0 -27
  323. package/lib/function/functionName.js.map +0 -1
  324. package/lib/lifecycle/dispose/bridges/rxjs.d.ts +0 -8
  325. package/lib/lifecycle/dispose/bridges/rxjs.d.ts.map +0 -1
  326. package/lib/lifecycle/dispose/bridges/rxjs.js +0 -4
  327. package/lib/lifecycle/dispose/bridges/rxjs.js.map +0 -1
  328. package/lib/lifecycle/dispose/lifecycle.async.d.ts +0 -37
  329. package/lib/lifecycle/dispose/lifecycle.async.d.ts.map +0 -1
  330. package/lib/lifecycle/dispose/lifecycle.async.js +0 -111
  331. package/lib/lifecycle/dispose/lifecycle.async.js.map +0 -1
  332. package/lib/lifecycle/dispose/lifecycle.d.ts +0 -32
  333. package/lib/lifecycle/dispose/lifecycle.d.ts.map +0 -1
  334. package/lib/lifecycle/dispose/lifecycle.global.d.ts.map +0 -1
  335. package/lib/lifecycle/dispose/lifecycle.global.js.map +0 -1
  336. package/lib/lifecycle/dispose/lifecycle.js +0 -67
  337. package/lib/lifecycle/dispose/lifecycle.js.map +0 -1
  338. package/lib/lifecycle/dispose/lifecycle.sync.d.ts +0 -45
  339. package/lib/lifecycle/dispose/lifecycle.sync.d.ts.map +0 -1
  340. package/lib/lifecycle/dispose/lifecycle.sync.js +0 -115
  341. package/lib/lifecycle/dispose/lifecycle.sync.js.map +0 -1
  342. package/lib/lifecycle/promise/cancel.d.ts +0 -10
  343. package/lib/lifecycle/promise/cancel.d.ts.map +0 -1
  344. package/lib/lifecycle/promise/cancel.js +0 -15
  345. package/lib/lifecycle/promise/cancel.js.map +0 -1
  346. package/lib/lifecycle/promise/cancellationToken/driver.browser.d.ts.map +0 -1
  347. package/lib/lifecycle/promise/cancellationToken/driver.browser.js.map +0 -1
  348. package/lib/lifecycle/promise/cancellationToken/driver.common.d.ts.map +0 -1
  349. package/lib/lifecycle/promise/cancellationToken/driver.common.js.map +0 -1
  350. package/lib/lifecycle/promise/cancellationToken/source.d.ts.map +0 -1
  351. package/lib/lifecycle/promise/cancellationToken/source.js.map +0 -1
  352. package/lib/lifecycle/promise/deferredPromise.d.ts.map +0 -1
  353. package/lib/lifecycle/promise/deferredPromise.js.map +0 -1
  354. package/lib/lifecycle/timeout/interval.d.ts.map +0 -1
  355. package/lib/lifecycle/timeout/interval.js.map +0 -1
  356. package/lib/lifecycle/timeout/timeout.d.ts.map +0 -1
  357. package/lib/lifecycle/timeout/timeout.js.map +0 -1
  358. package/lib/lifecycle/timeout/timeoutError.d.ts +0 -11
  359. package/lib/lifecycle/timeout/timeoutError.d.ts.map +0 -1
  360. package/lib/lifecycle/timeout/timeoutError.js +0 -16
  361. package/lib/lifecycle/timeout/timeoutError.js.map +0 -1
  362. package/lib/mapSet/customSet.d.ts.map +0 -1
  363. package/lib/mapSet/customSet.js.map +0 -1
  364. package/lib/mapSet/extendMap.d.ts +0 -21
  365. package/lib/mapSet/extendMap.d.ts.map +0 -1
  366. package/lib/mapSet/extendMap.js +0 -26
  367. package/lib/mapSet/extendMap.js.map +0 -1
  368. package/lib/promise/awaitIterator.d.ts.map +0 -1
  369. package/lib/promise/awaitIterator.js.map +0 -1
  370. package/lib/promise/finishAllPromise.d.ts +0 -13
  371. package/lib/promise/finishAllPromise.d.ts.map +0 -1
  372. package/lib/promise/finishAllPromise.js +0 -37
  373. package/lib/promise/finishAllPromise.js.map +0 -1
  374. package/lib/promise/promiseBool.d.ts.map +0 -1
  375. package/lib/promise/promiseBool.js.map +0 -1
  376. package/lib/promise/promiseCollection.d.ts.map +0 -1
  377. package/lib/promise/promiseCollection.js.map +0 -1
  378. package/lib/promise/timeoutPromiseCollection.d.ts +0 -7
  379. package/lib/promise/timeoutPromiseCollection.d.ts.map +0 -1
  380. package/lib/promise/timeoutPromiseCollection.js +0 -20
  381. package/lib/promise/timeoutPromiseCollection.js.map +0 -1
  382. package/lib/reflection/classes/hookClass.d.ts +0 -11
  383. package/lib/reflection/classes/hookClass.d.ts.map +0 -1
  384. package/lib/reflection/classes/hookClass.js +0 -34
  385. package/lib/reflection/classes/hookClass.js.map +0 -1
  386. package/lib/reflection/methods/initOnRead.d.ts +0 -7
  387. package/lib/reflection/methods/initOnRead.d.ts.map +0 -1
  388. package/lib/reflection/methods/initOnRead.js +0 -11
  389. package/lib/reflection/methods/initOnRead.js.map +0 -1
  390. package/lib/state/StateMachine.d.ts.map +0 -1
  391. package/lib/state/StateMachine.js.map +0 -1
  392. package/lib/string/castCase.d.ts.map +0 -1
  393. package/lib/string/castCase.js.map +0 -1
  394. package/lib/string/escapeRegexp.d.ts.map +0 -1
  395. package/lib/string/escapeRegexp.js.map +0 -1
  396. package/lib/string/sizeString.d.ts.map +0 -1
  397. package/lib/string/sizeString.js.map +0 -1
  398. package/lib/typingHelper/deep.partial.d.ts.map +0 -1
  399. package/lib/typingHelper/deep.partial.js.map +0 -1
  400. package/lib/typingHelper/deep.readonly.d.ts.map +0 -1
  401. package/lib/typingHelper/deep.readonly.js.map +0 -1
  402. package/lib/typingHelper/deep.required.d.ts.map +0 -1
  403. package/lib/typingHelper/deep.required.js.map +0 -1
  404. package/lib/typingHelper/deep.writable.d.ts.map +0 -1
  405. package/lib/typingHelper/deep.writable.js.map +0 -1
  406. package/lib/typingHelper/literal.d.ts.map +0 -1
  407. package/src/error/convertUnknown.ts +0 -9
  408. package/src/function/delayCallbackList.ts +0 -45
  409. package/src/function/functionName.ts +0 -44
  410. package/src/lifecycle/dispose/bridges/rxjs.ts +0 -6
  411. package/src/lifecycle/dispose/lifecycle.async.ts +0 -134
  412. package/src/lifecycle/dispose/lifecycle.global.ts +0 -66
  413. package/src/lifecycle/dispose/lifecycle.sync.ts +0 -133
  414. package/src/lifecycle/dispose/lifecycle.ts +0 -94
  415. package/src/lifecycle/promise/cancel.ts +0 -16
  416. package/src/lifecycle/timeout/timeoutError.ts +0 -18
  417. package/src/promise/finishAllPromise.ts +0 -50
  418. package/src/promise/timeoutPromiseCollection.ts +0 -22
  419. package/src/reflection/classes/hookClass.ts +0 -47
  420. package/src/reflection/methods/initOnRead.ts +0 -11
  421. /package/lib/lifecycle/{promise/cancellationToken → cancellation}/driver.browser.d.ts +0 -0
  422. /package/lib/lifecycle/{promise/cancellationToken → cancellation}/driver.browser.js +0 -0
  423. /package/lib/lifecycle/{promise/cancellationToken → cancellation}/driver.common.d.ts +0 -0
  424. /package/lib/{typingHelper → typing-helper}/deep.partial.d.ts +0 -0
  425. /package/lib/{typingHelper → typing-helper}/deep.partial.js +0 -0
  426. /package/lib/{typingHelper → typing-helper}/deep.readonly.d.ts +0 -0
  427. /package/lib/{typingHelper → typing-helper}/deep.readonly.js +0 -0
  428. /package/lib/{typingHelper → typing-helper}/deep.required.d.ts +0 -0
  429. /package/lib/{typingHelper → typing-helper}/deep.required.js +0 -0
  430. /package/lib/{typingHelper → typing-helper}/deep.writable.d.ts +0 -0
  431. /package/lib/{typingHelper → typing-helper}/deep.writable.js +0 -0
  432. /package/lib/{typingHelper → typing-helper}/literal.d.ts +0 -0
  433. /package/lib/{typingHelper → typing-helper}/literal.js +0 -0
  434. /package/src/array/{arrayDiff.ts → diff.ts} +0 -0
  435. /package/src/array/{arraySame.ts → is-same.ts} +0 -0
  436. /package/src/array/{normalizeArray.ts → normalize.ts} +0 -0
  437. /package/src/array/{sortAlpha.ts → sort-alpha.ts} +0 -0
  438. /package/src/array/{arrayUnique.ts → unique.ts} +0 -0
  439. /package/src/date/{isInvalid.ts → is-invalid.ts} +0 -0
  440. /package/src/error/{stackTrace.ts → stack-trace.ts} +0 -0
  441. /package/src/promise/{awaitIterator.ts → await-iterator.ts} +0 -0
  442. /package/src/promise/{promiseBool.ts → promise-bool.ts} +0 -0
  443. /package/src/string/{castCase.ts → case-cast.ts} +0 -0
  444. /package/src/string/{escapeRegexp.ts → escape-regexp.ts} +0 -0
  445. /package/src/string/{sizeString.ts → human-bytes.ts} +0 -0
  446. /package/src/{typingHelper → typing-helper}/deep.partial.ts +0 -0
  447. /package/src/{typingHelper → typing-helper}/deep.readonly.ts +0 -0
  448. /package/src/{typingHelper → typing-helper}/deep.required.ts +0 -0
  449. /package/src/{typingHelper → typing-helper}/deep.writable.ts +0 -0
  450. /package/src/{typingHelper → typing-helper}/literal.ts +0 -0
@@ -3,4 +3,4 @@
3
3
  * resolve with false when `p` reject (and drop error)
4
4
  */
5
5
  export declare function promiseBool(p: Promise<any>): Promise<boolean>;
6
- //# sourceMappingURL=promiseBool.d.ts.map
6
+ //# sourceMappingURL=promise-bool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promise-bool.d.ts","sourceRoot":"","sources":["../../src/promise/promise-bool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAK7D"}
@@ -5,4 +5,4 @@
5
5
  export function promiseBool(p) {
6
6
  return p.then(() => true, () => false);
7
7
  }
8
- //# sourceMappingURL=promiseBool.js.map
8
+ //# sourceMappingURL=promise-bool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promise-bool.js","sourceRoot":"","sources":["../../src/promise/promise-bool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,CAAe;IAC1C,OAAO,CAAC,CAAC,IAAI,CACZ,GAAG,EAAE,CAAC,IAAI,EACV,GAAG,EAAE,CAAC,KAAK,CACX,CAAC;AACH,CAAC"}
@@ -1,11 +1,11 @@
1
- import { DeferredPromise } from '../lifecycle/promise/deferredPromise.js';
1
+ import { DeferredPromise } from './deferred-promise.js';
2
2
  export declare class PromiseCollection {
3
3
  protected readonly promiseList: Record<string, DeferredPromise<any>>;
4
4
  size(): number;
5
- create(id: string): Promise<any> & import("../autoindex.js").IProgressHolder<any, any>;
5
+ create(id: string): Promise<any> & import("./deferred-promise.js").IProgressHolder<any, any>;
6
6
  has(id: string): boolean;
7
7
  done(id: string, data: any): void;
8
8
  error(id: string, e: Error): void;
9
9
  dispose(): void;
10
10
  }
11
- //# sourceMappingURL=promiseCollection.d.ts.map
11
+ //# sourceMappingURL=promise-list.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promise-list.d.ts","sourceRoot":"","sources":["../../src/promise/promise-list.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,qBAAa,iBAAiB;IAC7B,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,CAAM;IAE1E,IAAI;IAIJ,MAAM,CAAC,EAAE,EAAE,MAAM;IASjB,GAAG,CAAC,EAAE,EAAE,MAAM;IAId,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG;IAK1B,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK;IAK1B,OAAO;CAMP"}
@@ -1,5 +1,5 @@
1
- import { CanceledError } from '../lifecycle/promise/cancel.js';
2
- import { DeferredPromise } from '../lifecycle/promise/deferredPromise.js';
1
+ import { CanceledError } from '@idlebox/errors';
2
+ import { DeferredPromise } from './deferred-promise.js';
3
3
  export class PromiseCollection {
4
4
  promiseList = {};
5
5
  size() {
@@ -31,4 +31,4 @@ export class PromiseCollection {
31
31
  }
32
32
  }
33
33
  }
34
- //# sourceMappingURL=promiseCollection.js.map
34
+ //# sourceMappingURL=promise-list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promise-list.js","sourceRoot":"","sources":["../../src/promise/promise-list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,MAAM,OAAO,iBAAiB;IACV,WAAW,GAAyC,EAAE,CAAC;IAE1E,IAAI;QACH,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC;IAC7C,CAAC;IAED,MAAM,CAAC,EAAU;QAChB,IAAI,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,6BAA6B,EAAE,EAAE,CAAC,CAAC;QACpD,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,eAAe,EAAO,CAAC;QACvC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;QAC3B,OAAO,GAAG,CAAC,CAAC,CAAC;IACd,CAAC;IAED,GAAG,CAAC,EAAU;QACb,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED,IAAI,CAAC,EAAU,EAAE,IAAS;QACzB,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,EAAU,EAAE,CAAQ;QACzB,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED,OAAO;QACN,MAAM,CAAC,GAAG,IAAI,aAAa,EAAE,CAAC;QAC9B,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YAChD,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACnB,CAAC;IACF,CAAC;CACD"}
@@ -0,0 +1,5 @@
1
+ export type Ref<T = any> = {
2
+ reference: T;
3
+ };
4
+ export declare function Pointer<T>(_object: Ref<T>): T;
5
+ //# sourceMappingURL=pointer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pointer.d.ts","sourceRoot":"","sources":["../../../src/reflection/classes/pointer.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI;IAAE,SAAS,EAAE,CAAC,CAAA;CAAE,CAAC;AAE5C,wBAAgB,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAmD7C"}
@@ -0,0 +1,49 @@
1
+ export function Pointer(_object) {
2
+ const object = _object;
3
+ return new Proxy({}, {
4
+ apply(_, thisArg, argArray) {
5
+ return Reflect.apply(object.reference, thisArg, argArray);
6
+ },
7
+ construct(_, argArray, new_) {
8
+ return Reflect.construct(object.reference, argArray, new_);
9
+ },
10
+ defineProperty(_, property, attributes) {
11
+ return Reflect.defineProperty(object.reference, property, attributes);
12
+ },
13
+ deleteProperty(_, p) {
14
+ return Reflect.deleteProperty(object.reference, p);
15
+ },
16
+ get(_, p, _receiver) {
17
+ const value = object.reference[p];
18
+ if (typeof value === 'function') {
19
+ return value.bind(object.reference);
20
+ }
21
+ return value;
22
+ },
23
+ getOwnPropertyDescriptor(_, p) {
24
+ return Reflect.getOwnPropertyDescriptor(object.reference, p);
25
+ },
26
+ getPrototypeOf(_) {
27
+ return Reflect.getPrototypeOf(object);
28
+ },
29
+ has(_, p) {
30
+ return Reflect.has(object.reference, p);
31
+ },
32
+ isExtensible(_) {
33
+ return Reflect.isExtensible(object);
34
+ },
35
+ ownKeys(_) {
36
+ return Reflect.ownKeys(object);
37
+ },
38
+ preventExtensions(_) {
39
+ return Reflect.preventExtensions(object);
40
+ },
41
+ set(_, p, newValue, receiver) {
42
+ return Reflect.set(object.reference, p, newValue, receiver);
43
+ },
44
+ setPrototypeOf(_, v) {
45
+ return Reflect.setPrototypeOf(object.reference, v);
46
+ },
47
+ });
48
+ }
49
+ //# sourceMappingURL=pointer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pointer.js","sourceRoot":"","sources":["../../../src/reflection/classes/pointer.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,OAAO,CAAI,OAAe;IACzC,MAAM,MAAM,GAAG,OAAc,CAAC;IAE9B,OAAO,IAAI,KAAK,CACf,EAAE,EACF;QACC,KAAK,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ;YACzB,OAAO,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC3D,CAAC;QACD,SAAS,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI;YAC1B,OAAO,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;QAC5D,CAAC;QACD,cAAc,CAAC,CAAC,EAAE,QAAQ,EAAE,UAAU;YACrC,OAAO,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;QACvE,CAAC;QACD,cAAc,CAAC,CAAC,EAAE,CAAC;YAClB,OAAO,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;QACpD,CAAC;QACD,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS;YAClB,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAClC,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;gBACjC,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACrC,CAAC;YACD,OAAO,KAAK,CAAC;QACd,CAAC;QACD,wBAAwB,CAAC,CAAC,EAAE,CAAC;YAC5B,OAAO,OAAO,CAAC,wBAAwB,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;QAC9D,CAAC;QACD,cAAc,CAAC,CAAC;YACf,OAAO,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACvC,CAAC;QACD,GAAG,CAAC,CAAC,EAAE,CAAC;YACP,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;QACzC,CAAC;QACD,YAAY,CAAC,CAAC;YACb,OAAO,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,CAAC,CAAC;YACR,OAAO,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC;QACD,iBAAiB,CAAC,CAAC;YAClB,OAAO,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC1C,CAAC;QACD,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ;YAC3B,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC7D,CAAC;QACD,cAAc,CAAC,CAAC,EAAE,CAAC;YAClB,OAAO,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;QACpD,CAAC;KACD,CACM,CAAC;AACV,CAAC"}
@@ -1,7 +1,15 @@
1
1
  export declare const singletonSymbol: unique symbol;
2
2
  export declare enum SingletonType {
3
3
  Throw = 0,
4
- Return = 1
4
+ ReturnSame = 1
5
5
  }
6
- export declare function singleton(type?: SingletonType): ClassDecorator;
6
+ type AnyClass = new (...args: any) => any;
7
+ /**
8
+ * 单例类修饰器
9
+ * @param type
10
+ * @returns
11
+ */
12
+ export declare function singleton(type?: SingletonType): <T extends AnyClass>(Class: T, ctx: ClassDecoratorContext) => T;
13
+ export declare function createSingleton<T>(Class: new () => T): T;
14
+ export {};
7
15
  //# sourceMappingURL=singleton.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"singleton.d.ts","sourceRoot":"","sources":["../../../src/reflection/classes/singleton.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe,eAA6B,CAAC;AAE1D,oBAAY,aAAa;IACxB,KAAK,IAAI;IACT,MAAM,IAAI;CACV;AAED,wBAAgB,SAAS,CAAC,IAAI,GAAE,aAAoC,GAAG,cAAc,CAsBpF"}
1
+ {"version":3,"file":"singleton.d.ts","sourceRoot":"","sources":["../../../src/reflection/classes/singleton.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe,eAA+B,CAAC;AAE5D,oBAAY,aAAa;IACxB,KAAK,IAAI;IACT,UAAU,IAAI;CACd;AAED,KAAK,QAAQ,GAAG,KAAK,GAAG,IAAI,EAAE,GAAG,KAAK,GAAG,CAAC;AAE1C;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,IAAI,GAAE,aAAwC,IAC/D,CAAC,SAAS,QAAQ,EAAE,OAAO,CAAC,EAAE,KAAK,qBAAqB,KAAG,CAAC,CAgBpE;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,CAKxD"}
@@ -1,30 +1,38 @@
1
- import { hookClass } from './hookClass.js';
2
- export const singletonSymbol = Symbol('@gongt/singleton');
1
+ import { definePrivateConstant } from '../../autoindex.js';
2
+ export const singletonSymbol = Symbol('@idlebox/singleton');
3
3
  export var SingletonType;
4
4
  (function (SingletonType) {
5
5
  SingletonType[SingletonType["Throw"] = 0] = "Throw";
6
- SingletonType[SingletonType["Return"] = 1] = "Return";
6
+ SingletonType[SingletonType["ReturnSame"] = 1] = "ReturnSame";
7
7
  })(SingletonType || (SingletonType = {}));
8
- export function singleton(type = SingletonType.Return) {
9
- return (target) => {
10
- const hook = hookClass(target);
11
- if (!hook.beforeConstruct) {
12
- hook.beforeConstruct = [];
13
- }
14
- if (!hook.afterConstruct) {
15
- hook.afterConstruct = [];
16
- }
17
- hook.beforeConstruct.push((cls) => {
18
- if (cls[singletonSymbol]) {
19
- if (type === SingletonType.Return) {
20
- return cls[singletonSymbol];
8
+ /**
9
+ * 单例类修饰器
10
+ * @param type
11
+ * @returns
12
+ */
13
+ export function singleton(type = SingletonType.ReturnSame) {
14
+ return (Class, ctx) => {
15
+ if (ctx.kind !== 'class')
16
+ throw new Error(`this decorator can only be applied to classes`);
17
+ const name = ctx.name;
18
+ return new Proxy(Class, {
19
+ construct(target, args) {
20
+ const exists = Class[singletonSymbol];
21
+ if (exists) {
22
+ if (type === SingletonType.Throw)
23
+ throw new Error(`can not recreate singleton class #${name}`);
24
+ return exists;
21
25
  }
22
- throw new Error(`Duplicate new singleton class [${target.name}]`);
23
- }
24
- });
25
- hook.afterConstruct.push((obj) => {
26
- target[singletonSymbol] = obj;
26
+ const instance = Reflect.construct(target, args);
27
+ return instance;
28
+ },
27
29
  });
28
30
  };
29
31
  }
32
+ export function createSingleton(Class) {
33
+ if (!Class[singletonSymbol]) {
34
+ definePrivateConstant(Class, singletonSymbol, new Class());
35
+ }
36
+ return Class[singletonSymbol];
37
+ }
30
38
  //# sourceMappingURL=singleton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"singleton.js","sourceRoot":"","sources":["../../../src/reflection/classes/singleton.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAE1D,MAAM,CAAN,IAAY,aAGX;AAHD,WAAY,aAAa;IACxB,mDAAS,CAAA;IACT,qDAAU,CAAA;AACX,CAAC,EAHW,aAAa,KAAb,aAAa,QAGxB;AAED,MAAM,UAAU,SAAS,CAAC,OAAsB,aAAa,CAAC,MAAM;IACnE,OAAO,CAAC,MAAW,EAAO,EAAE;QAC3B,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;QAC/B,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAC3B,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;QAC3B,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YAC1B,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;QAC1B,CAAC;QAED,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YACjC,IAAI,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;gBAC1B,IAAI,IAAI,KAAK,aAAa,CAAC,MAAM,EAAE,CAAC;oBACnC,OAAO,GAAG,CAAC,eAAe,CAAC,CAAC;gBAC7B,CAAC;gBACD,MAAM,IAAI,KAAK,CAAC,kCAAkC,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;YACnE,CAAC;QACF,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YAChC,MAAM,CAAC,eAAe,CAAC,GAAG,GAAG,CAAC;QAC/B,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"singleton.js","sourceRoot":"","sources":["../../../src/reflection/classes/singleton.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAE5D,MAAM,CAAN,IAAY,aAGX;AAHD,WAAY,aAAa;IACxB,mDAAS,CAAA;IACT,6DAAc,CAAA;AACf,CAAC,EAHW,aAAa,KAAb,aAAa,QAGxB;AAID;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAAC,OAAsB,aAAa,CAAC,UAAU;IACvE,OAAO,CAAqB,KAAQ,EAAE,GAA0B,EAAK,EAAE;QACtE,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QAE3F,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;QACtB,OAAO,IAAI,KAAK,CAAC,KAAK,EAAE;YACvB,SAAS,CAAC,MAAM,EAAE,IAAI;gBACrB,MAAM,MAAM,GAAI,KAAa,CAAC,eAAe,CAAC,CAAC;gBAC/C,IAAI,MAAM,EAAE,CAAC;oBACZ,IAAI,IAAI,KAAK,aAAa,CAAC,KAAK;wBAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,IAAI,EAAE,CAAC,CAAC;oBAC/F,OAAO,MAAM,CAAC;gBACf,CAAC;gBACD,MAAM,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBACjD,OAAO,QAAQ,CAAC;YACjB,CAAC;SACD,CAAC,CAAC;IACJ,CAAC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,eAAe,CAAI,KAAkB;IACpD,IAAI,CAAE,KAAa,CAAC,eAAe,CAAC,EAAE,CAAC;QACtC,qBAAqB,CAAC,KAAK,EAAE,eAAe,EAAE,IAAI,KAAK,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,OAAQ,KAAa,CAAC,eAAe,CAAC,CAAC;AACxC,CAAC"}
@@ -1,5 +1,2 @@
1
- /**
2
- * Auto bind `this` to class method
3
- */
4
- export declare const bindThis: MethodDecorator;
1
+ export declare function bindThis(method: Function, context: ClassMethodDecoratorContext): (((this: any, ...args: any[]) => any) & import("../../autoindex.js").NamedObject) | undefined;
5
2
  //# sourceMappingURL=bind.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bind.d.ts","sourceRoot":"","sources":["../../../src/reflection/methods/bind.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,eAqBtB,CAAC"}
1
+ {"version":3,"file":"bind.d.ts","sourceRoot":"","sources":["../../../src/reflection/methods/bind.ts"],"names":[],"mappings":"AAEA,wBAAgB,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,2BAA2B,YAKL,GAAG,WAAW,GAAG,EAAE,kEAS5F"}
@@ -1,25 +1,19 @@
1
- /**
2
- * Auto bind `this` to class method
3
- */
4
- export const bindThis = (_target, propertyKey, descriptor) => {
5
- const oldFunc = descriptor.value;
6
- if (typeof oldFunc === 'function') {
7
- return {
8
- enumerable: true,
9
- configurable: true,
10
- get: function () {
11
- delete this[propertyKey];
12
- const fn = oldFunc.bind(this);
13
- Object.defineProperty(this, propertyKey, {
14
- value: fn,
15
- writable: false,
16
- enumerable: true,
17
- configurable: false,
18
- });
19
- return fn;
20
- },
21
- };
1
+ import { nameObject } from '../../autoindex.js';
2
+ export function bindThis(method, context) {
3
+ if (context.kind !== 'method')
4
+ throw new Error(`this decorator can only be applied to classes`);
5
+ if (context.static)
6
+ throw new TypeError('this decorator not supported on static methods.');
7
+ if (context.private) {
8
+ return nameObject(`${context.name.toString()}.bounded`, function (...args) {
9
+ return method.apply(this, args);
10
+ });
22
11
  }
23
- throw new TypeError('@bindThis can only use with method, but not property.');
24
- };
12
+ else {
13
+ context.addInitializer(function () {
14
+ this[context.name] = nameObject(`${context.name.toString()}.bounded`, method.bind(this));
15
+ });
16
+ return undefined;
17
+ }
18
+ }
25
19
  //# sourceMappingURL=bind.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bind.js","sourceRoot":"","sources":["../../../src/reflection/methods/bind.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAoB,CAAI,OAAe,EAAE,WAA4B,EAAE,UAAsC,EAAE,EAAE;IACrI,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC;IACjC,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE,CAAC;QACnC,OAAO;YACN,UAAU,EAAE,IAAI;YAChB,YAAY,EAAE,IAAI;YAClB,GAAG,EAAE;gBACJ,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC;gBAEzB,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC9B,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE;oBACxC,KAAK,EAAE,EAAE;oBACT,QAAQ,EAAE,KAAK;oBACf,UAAU,EAAE,IAAI;oBAChB,YAAY,EAAE,KAAK;iBACnB,CAAC,CAAC;gBACH,OAAO,EAAE,CAAC;YACX,CAAC;SACD,CAAC;IACH,CAAC;IACD,MAAM,IAAI,SAAS,CAAC,uDAAuD,CAAC,CAAC;AAC9E,CAAC,CAAC"}
1
+ {"version":3,"file":"bind.js","sourceRoot":"","sources":["../../../src/reflection/methods/bind.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,MAAM,UAAU,QAAQ,CAAC,MAAgB,EAAE,OAAoC;IAC9E,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IAEhG,IAAI,OAAO,CAAC,MAAM;QAAE,MAAM,IAAI,SAAS,CAAC,iDAAiD,CAAC,CAAC;IAC3F,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACrB,OAAO,UAAU,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAqB,GAAG,IAAW;YAC1F,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;IACJ,CAAC;SAAM,CAAC;QACP,OAAO,CAAC,cAAc,CAAC;YACtB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1F,CAAC,CAAC,CAAC;QACH,OAAO,SAAS,CAAC;IAClB,CAAC;AACF,CAAC"}
@@ -1,8 +1,11 @@
1
- export declare const memorizeValueSymbol: unique symbol;
2
1
  /**
3
- * Decorate class method/getter
2
+ * Decorate class method
4
3
  *
5
- * remember first return value of method/getter, directlly return memorized value when call it again
4
+ * remember first return value of method, directly return memorized value when call it again
6
5
  */
7
- export declare const memo: MethodDecorator;
6
+ export declare function memo<T extends (...args: any[]) => any>(method: T, context: ClassMethodDecoratorContext): T;
7
+ /**
8
+ * remove memo from object
9
+ */
10
+ export declare function forgetMemorized<T>(self: T, methodName: keyof T): void;
8
11
  //# sourceMappingURL=memorize.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"memorize.d.ts","sourceRoot":"","sources":["../../../src/reflection/methods/memorize.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,eAAiC,CAAC;AAElE;;;;GAIG;AACH,eAAO,MAAM,IAAI,EAAE,eAqBlB,CAAC"}
1
+ {"version":3,"file":"memorize.d.ts","sourceRoot":"","sources":["../../../src/reflection/methods/memorize.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,wBAAgB,IAAI,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,2BAA2B,GAAG,CAAC,CAe1G;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,GAAG,IAAI,CAMrE"}
@@ -1,28 +1,32 @@
1
- export const memorizeValueSymbol = Symbol('@gongt/memorizeValue');
1
+ import { definePrivateConstant, nameObject } from '../../autoindex.js';
2
+ const memoizeSymbol = Symbol('@gongt/memorize');
2
3
  /**
3
- * Decorate class method/getter
4
+ * Decorate class method
4
5
  *
5
- * remember first return value of method/getter, directlly return memorized value when call it again
6
+ * remember first return value of method, directly return memorized value when call it again
6
7
  */
7
- export const memo = (_target, propertyKey, descriptor) => {
8
- const original = (descriptor.value ? descriptor.value : descriptor.get);
9
- if (descriptor.set || typeof original !== 'function') {
10
- throw new TypeError('@memo should only use on method, or getter. Not property and setter.');
11
- }
12
- if (descriptor.get) {
13
- descriptor.get = function memo_getter() {
14
- const value = original.call(this, arguments);
15
- Object.defineProperty(this, propertyKey, { value });
16
- return value;
17
- };
18
- }
19
- else {
20
- descriptor.value = function memo_method() {
21
- const value = original.call(this, arguments);
22
- Object.defineProperty(this, propertyKey, { value: () => value });
23
- return value;
24
- };
8
+ export function memo(method, context) {
9
+ context.addInitializer(function () {
10
+ definePrivateConstant(this, memoizeSymbol, {});
11
+ });
12
+ const wrapMethod = nameObject(context.name.toString(), function (...args) {
13
+ if (!this[memoizeSymbol][context.name]) {
14
+ const val = method.apply(this, args);
15
+ this[memoizeSymbol][context.name] = val;
16
+ }
17
+ return this[memoizeSymbol][context.name];
18
+ });
19
+ definePrivateConstant(wrapMethod, memoizeSymbol, true);
20
+ return wrapMethod;
21
+ }
22
+ /**
23
+ * remove memo from object
24
+ */
25
+ export function forgetMemorized(self, methodName) {
26
+ const method = self[methodName];
27
+ if (!method[memoizeSymbol]) {
28
+ throw new Error('Method is not decorated by @memo');
25
29
  }
26
- return descriptor;
27
- };
30
+ delete self[memoizeSymbol][methodName];
31
+ }
28
32
  //# sourceMappingURL=memorize.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"memorize.js","sourceRoot":"","sources":["../../../src/reflection/methods/memorize.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAC;AAElE;;;;GAIG;AACH,MAAM,CAAC,MAAM,IAAI,GAAoB,CAAI,OAAe,EAAE,WAA4B,EAAE,UAAsC,EAAE,EAAE;IACjI,MAAM,QAAQ,GAAa,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAQ,CAAC;IACzF,IAAI,UAAU,CAAC,GAAG,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE,CAAC;QACtD,MAAM,IAAI,SAAS,CAAC,sEAAsE,CAAC,CAAC;IAC7F,CAAC;IAED,IAAI,UAAU,CAAC,GAAG,EAAE,CAAC;QACpB,UAAU,CAAC,GAAG,GAAG,SAAS,WAAW;YACpC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YAC7C,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YACpD,OAAO,KAAK,CAAC;QACd,CAAC,CAAC;IACH,CAAC;SAAM,CAAC;QACP,UAAU,CAAC,KAAK,GAAG,SAAS,WAAW;YACtC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YAC7C,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC;YACjE,OAAO,KAAK,CAAC;QACd,CAAQ,CAAC;IACV,CAAC;IAED,OAAO,UAAU,CAAC;AACnB,CAAC,CAAC"}
1
+ {"version":3,"file":"memorize.js","sourceRoot":"","sources":["../../../src/reflection/methods/memorize.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEvE,MAAM,aAAa,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAEhD;;;;GAIG;AACH,MAAM,UAAU,IAAI,CAAoC,MAAS,EAAE,OAAoC;IACtG,OAAO,CAAC,cAAc,CAAC;QACtB,qBAAqB,CAAC,IAAI,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,UAAqB,GAAG,IAAS;QACvF,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACxC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACrC,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;QACzC,CAAC;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,qBAAqB,CAAC,UAAU,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;IACvD,OAAO,UAAiB,CAAC;AAC1B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAI,IAAO,EAAE,UAAmB;IAC9D,MAAM,MAAM,GAAQ,IAAI,CAAC,UAAU,CAAC,CAAC;IACrC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACrD,CAAC;IACD,OAAQ,IAAY,CAAC,aAAa,CAAC,CAAC,UAAU,CAAC,CAAC;AACjD,CAAC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * 反复推迟的 setTimeout
3
+ */
4
+ export declare class ExtendableTimer {
5
+ private readonly durationMs;
6
+ private readonly dfd;
7
+ private tmr?;
8
+ constructor(durationMs: number);
9
+ start(): void;
10
+ renew(): void;
11
+ private _set;
12
+ cancel(): void;
13
+ get p(): Promise<void>;
14
+ get onSchedule(): <TResult1 = void, TResult2 = never>(onfulfilled?: ((value: void) => TResult1 | PromiseLike<TResult1>) | null | undefined, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | null | undefined) => Promise<TResult1 | TResult2>;
15
+ }
16
+ //# sourceMappingURL=extendable-timer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extendable-timer.d.ts","sourceRoot":"","sources":["../../src/schedule/extendable-timer.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,qBAAa,eAAe;IAIf,OAAO,CAAC,QAAQ,CAAC,UAAU;IAHvC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAA+B;IACnD,OAAO,CAAC,GAAG,CAAC,CAAc;gBAEG,UAAU,EAAE,MAAM;IAE/C,KAAK;IAQL,KAAK;IAOL,OAAO,CAAC,IAAI;IAMZ,MAAM;IAON,IAAI,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAErB;IAED,IAAI,UAAU,mPAGb;CACD"}
@@ -0,0 +1,45 @@
1
+ import { DeferredPromise } from '../promise/deferred-promise.js';
2
+ /**
3
+ * 反复推迟的 setTimeout
4
+ */
5
+ export class ExtendableTimer {
6
+ durationMs;
7
+ dfd = new DeferredPromise();
8
+ tmr;
9
+ constructor(durationMs) {
10
+ this.durationMs = durationMs;
11
+ }
12
+ start() {
13
+ if (this.tmr) {
14
+ this.renew();
15
+ }
16
+ else {
17
+ this._set();
18
+ }
19
+ }
20
+ renew() {
21
+ if (!this.tmr)
22
+ return;
23
+ clearTimeout(this.tmr);
24
+ this._set();
25
+ }
26
+ _set() {
27
+ this.tmr = setTimeout(() => {
28
+ this.dfd.complete();
29
+ }, this.durationMs);
30
+ }
31
+ cancel() {
32
+ if (this.tmr) {
33
+ clearTimeout(this.tmr);
34
+ this.tmr = undefined;
35
+ }
36
+ }
37
+ get p() {
38
+ return this.dfd.p;
39
+ }
40
+ get onSchedule() {
41
+ const p = this.dfd.p;
42
+ return p.then.bind(p);
43
+ }
44
+ }
45
+ //# sourceMappingURL=extendable-timer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extendable-timer.js","sourceRoot":"","sources":["../../src/schedule/extendable-timer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAGjE;;GAEG;AACH,MAAM,OAAO,eAAe;IAIE;IAHZ,GAAG,GAAG,IAAI,eAAe,EAAQ,CAAC;IAC3C,GAAG,CAAe;IAE1B,YAA6B,UAAkB;QAAlB,eAAU,GAAV,UAAU,CAAQ;IAAG,CAAC;IAEnD,KAAK;QACJ,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACd,IAAI,CAAC,KAAK,EAAE,CAAC;QACd,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,IAAI,EAAE,CAAC;QACb,CAAC;IACF,CAAC;IAED,KAAK;QACJ,IAAI,CAAC,IAAI,CAAC,GAAG;YAAE,OAAO;QAEtB,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACvB,IAAI,CAAC,IAAI,EAAE,CAAC;IACb,CAAC;IAEO,IAAI;QACX,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,EAAE;YAC1B,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QACrB,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACrB,CAAC;IAED,MAAM;QACL,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACd,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvB,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC;QACtB,CAAC;IACF,CAAC;IAED,IAAI,CAAC;QACJ,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACnB,CAAC;IAED,IAAI,UAAU;QACb,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACrB,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC;CACD"}
@@ -1,4 +1,4 @@
1
- import { Disposable } from '../dispose/lifecycle.sync.js';
1
+ import { EnhancedDisposable } from '../lifecycle/dispose/sync-disposable.js';
2
2
  /**
3
3
  * @param unref defaults to `false`, when true, call `unref()` on the timer.
4
4
  * can not set to `true` on other platform.
@@ -12,11 +12,11 @@ export declare function interval(ms: number, action: () => void, unref?: boolean
12
12
  *
13
13
  * mainly use for pause/resume several times.
14
14
  */
15
- export declare class Interval extends Disposable {
15
+ export declare class Interval extends EnhancedDisposable {
16
16
  private readonly ms;
17
17
  private readonly unref;
18
18
  private readonly _emitter;
19
- readonly onTick: import("../event/event.js").EventRegister<void>;
19
+ readonly onTick: import("../autoindex.js").EventRegister<void>;
20
20
  private timer?;
21
21
  constructor(ms: number, unref?: boolean);
22
22
  fire(): void;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interval.d.ts","sourceRoot":"","sources":["../../src/schedule/interval.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAK7E;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,IAAI,EAAE,KAAK,UAAQ;;EAYrE;AAED;;;;GAIG;AACH,qBAAa,QAAS,SAAQ,kBAAkB;IAM9C,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,KAAK;IANvB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuC;IAChE,SAAgB,MAAM,gDAAuB;IAC7C,OAAO,CAAC,KAAK,CAAC,CAAc;gBAGV,EAAE,EAAE,MAAM,EACV,KAAK,UAAQ;IAM/B,IAAI;IAIJ,MAAM;IAKN,KAAK;IAKI,OAAO;CAIhB"}
@@ -1,5 +1,5 @@
1
- import { Disposable } from '../dispose/lifecycle.sync.js';
2
- import { Emitter } from '../event/event.js';
1
+ import { EnhancedDisposable } from '../lifecycle/dispose/sync-disposable.js';
2
+ import { Emitter } from '../lifecycle/event/event.js';
3
3
  /**
4
4
  * @param unref defaults to `false`, when true, call `unref()` on the timer.
5
5
  * can not set to `true` on other platform.
@@ -24,7 +24,7 @@ export function interval(ms, action, unref = false) {
24
24
  *
25
25
  * mainly use for pause/resume several times.
26
26
  */
27
- export class Interval extends Disposable {
27
+ export class Interval extends EnhancedDisposable {
28
28
  ms;
29
29
  unref;
30
30
  _emitter = this._register(new Emitter());
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interval.js","sourceRoot":"","sources":["../../src/schedule/interval.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAItD;;;;GAIG;AACH,MAAM,UAAU,QAAQ,CAAC,EAAU,EAAE,MAAkB,EAAE,KAAK,GAAG,KAAK;IACrE,IAAI,KAAK,GAAuB,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACxD,oCAAoC;IACpC,IAAI,KAAK;QAAG,KAAa,CAAC,KAAK,EAAE,CAAC;IAElC,OAAO;QACN,OAAO,EAAE,GAAG,EAAE;YACb,IAAI,CAAC,KAAK;gBAAE,OAAO;YACnB,aAAa,CAAC,KAAK,CAAC,CAAC;YACrB,KAAK,GAAG,SAAS,CAAC;QACnB,CAAC;KACD,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,OAAO,QAAS,SAAQ,kBAAkB;IAM7B;IACA;IAND,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,OAAO,EAAQ,CAAC,CAAC;IAChD,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;IACrC,KAAK,CAAe;IAE5B,YACkB,EAAU,EACV,QAAQ,KAAK;QAE9B,KAAK,EAAE,CAAC;QAHS,OAAE,GAAF,EAAE,CAAQ;QACV,UAAK,GAAL,KAAK,CAAQ;QAG9B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,IAAI;QACH,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC;IAED,MAAM;QACL,IAAI,IAAI,CAAC,KAAK;YAAE,OAAO;QACvB,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACvD,CAAC;IAED,KAAK;QACJ,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO;QACxB,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IACtB,CAAC;IAEQ,OAAO;QACf,IAAI,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QACrC,OAAO,KAAK,CAAC,OAAO,EAAE,CAAC;IACxB,CAAC;CACD"}
@@ -0,0 +1,3 @@
1
+ export type TimeoutType = ReturnType<typeof setTimeout>;
2
+ export type IntervalType = ReturnType<typeof setInterval>;
3
+ //# sourceMappingURL=local-type.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-type.d.ts","sourceRoot":"","sources":["../../src/schedule/local-type.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;AACxD,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=local-type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-type.js","sourceRoot":"","sources":["../../src/schedule/local-type.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ type ITaskScheduler = (task: Function) => void;
2
+ export declare const scheduler: ITaskScheduler;
3
+ export {};
4
+ //# sourceMappingURL=scheduler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduler.d.ts","sourceRoot":"","sources":["../../src/schedule/scheduler.ts"],"names":[],"mappings":"AAEA,KAAK,cAAc,GAAG,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;AAK/C,eAAO,MAAM,SAAS,EAAE,cAA6E,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { isNodeJs } from '../platform/os.js';
2
+ export const scheduler = isNodeJs ? process.nextTick : (queueMicrotask ?? setTimeout);
3
+ //# sourceMappingURL=scheduler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../../src/schedule/scheduler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAO7C,MAAM,CAAC,MAAM,SAAS,GAAmB,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,cAAc,IAAI,UAAU,CAAC,CAAC"}
@@ -1,4 +1,3 @@
1
- import { DeferredPromise } from '../promise/deferredPromise.js';
2
1
  /**
3
2
  * @param unref defaults to `false`, when true, call `unref()` on the timer.
4
3
  * can not set to `true` on other platform.
@@ -11,6 +10,6 @@ export declare function timeout(ms: number, error?: string, unref?: boolean): Pr
11
10
  * @returns promise resolve after specific time
12
11
  */
13
12
  export declare function sleep(ms: number, unref?: boolean): Promise<void>;
14
- export declare function timeoutPromise<T>(ms: number, p: PromiseLike<T> | DeferredPromise<T>): PromiseLike<T>;
15
- export declare function timeoutPromise<T>(ms: number, message: string, p: PromiseLike<T> | DeferredPromise<T>): PromiseLike<T>;
13
+ export declare function raceTimeout<T>(ms: number, p: PromiseLike<T>): PromiseLike<T>;
14
+ export declare function raceTimeout<T>(ms: number, message: string, p: PromiseLike<T>): PromiseLike<T>;
16
15
  //# sourceMappingURL=timeout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timeout.d.ts","sourceRoot":"","sources":["../../src/schedule/timeout.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,SAAgB,EAAE,KAAK,UAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAOxF;AAED;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAO9D;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;AAC9E,wBAAgB,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC"}
@@ -1,5 +1,4 @@
1
- import { DeferredPromise } from '../promise/deferredPromise.js';
2
- import { TimeoutError } from './timeoutError.js';
1
+ import { TimeoutError } from '@idlebox/errors';
3
2
  /**
4
3
  * @param unref defaults to `false`, when true, call `unref()` on the timer.
5
4
  * can not set to `true` on other platform.
@@ -36,18 +35,13 @@ export function sleep(ms, unref = false) {
36
35
  * @param p the promise
37
36
  * @returns
38
37
  */
39
- export function timeoutPromise(ms, message, p) {
38
+ export function raceTimeout(ms, message, p) {
40
39
  let msg;
41
- if (typeof message !== 'string') {
42
- p = message;
43
- msg = undefined;
40
+ if (p) {
41
+ return Promise.race([p, timeout(ms, msg, true)]);
44
42
  }
45
43
  else {
46
- msg = message;
44
+ return Promise.race([message, timeout(ms, msg, true)]);
47
45
  }
48
- if (p instanceof DeferredPromise) {
49
- return Promise.race([p.p, timeout(ms, msg)]);
50
- }
51
- return Promise.race([p, timeout(ms, msg)]);
52
46
  }
53
47
  //# sourceMappingURL=timeout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timeout.js","sourceRoot":"","sources":["../../src/schedule/timeout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C;;;;GAIG;AACH,MAAM,UAAU,OAAO,CAAC,EAAU,EAAE,KAAK,GAAG,aAAa,EAAE,KAAK,GAAG,KAAK;IACvE,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;QAChC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC7B,MAAM,CAAC,IAAI,YAAY,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;QACrC,CAAC,EAAE,EAAE,CAAC,CAAC;QACP,IAAI,KAAK;YAAG,KAAa,CAAC,KAAK,EAAE,CAAC;IACnC,CAAC,CAAC,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,KAAK,CAAC,EAAU,EAAE,KAAK,GAAG,KAAK;IAC9C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC9B,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC7B,OAAO,EAAE,CAAC;QACX,CAAC,EAAE,EAAE,CAAC,CAAC;QACP,IAAI,KAAK;YAAG,KAAa,CAAC,KAAK,EAAE,CAAC;IACnC,CAAC,CAAC,CAAC;AACJ,CAAC;AAKD;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CAAI,EAAU,EAAE,OAAgC,EAAE,CAAkB;IAC9F,IAAI,GAAuB,CAAC;IAC5B,IAAI,CAAC,EAAE,CAAC;QACP,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAClD,CAAC;SAAM,CAAC;QACP,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,OAAc,EAAE,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAC/D,CAAC;AACF,CAAC"}
@@ -16,4 +16,4 @@ export declare class SimpleStateMachine<StateType, EventType> {
16
16
  change(event: EventType): void;
17
17
  }
18
18
  export {};
19
- //# sourceMappingURL=StateMachine.d.ts.map
19
+ //# sourceMappingURL=simple-state-machine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simple-state-machine.d.ts","sourceRoot":"","sources":["../../src/state/simple-state-machine.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,WAAW,CAAC,SAAS,EAAE,SAAS,IAAI,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;AAElG,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC,CAAC;AAE7D,MAAM,WAAW,iBAAiB,CAAC,SAAS,EAAE,SAAS;IACtD,IAAI,EAAE,SAAS,CAAC;IAChB,EAAE,EAAE,SAAS,CAAC;IACd,MAAM,EAAE,SAAS,CAAC;CAClB;AAED,qBAAa,kBAAkB,CAAC,SAAS,EAAE,SAAS;IACnD,UAAkB,YAAY,EAAE,SAAS,CAAC;IAC1C,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAE5D,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA0D;IACzF,SAAgB,aAAa,mFAAgC;gBAEjD,KAAK,EAAE,WAAW,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,UAAU,EAAE,SAAS;IAK3E,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS;IAMjC,OAAO;IAIP,MAAM,CAAC,KAAK,EAAE,SAAS;CAavB"}