@typed/fx 0.0.3 → 0.0.4

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 (643) hide show
  1. package/.eslintcache +1 -1
  2. package/.tracing-plugin/plugin.cjs +30 -0
  3. package/.tracing-plugin/plugin.d.ts.map +1 -1
  4. package/.tracing-plugin/plugin.js.map +1 -1
  5. package/cjs/Atomic/Atomic.d.ts +2 -2
  6. package/cjs/Atomic/Atomic.d.ts.map +1 -1
  7. package/cjs/Atomic/Atomic.js +1 -1
  8. package/cjs/Atomic/Atomic.js.map +1 -1
  9. package/cjs/Effect/Effect.d.ts +199 -0
  10. package/cjs/Effect/Effect.d.ts.map +1 -0
  11. package/cjs/Effect/Effect.js +66 -0
  12. package/cjs/Effect/Effect.js.map +1 -0
  13. package/cjs/Env/Env.d.ts.map +1 -1
  14. package/cjs/Env/Env.js +2 -55
  15. package/cjs/Env/Env.js.map +1 -1
  16. package/cjs/Exit/hkt.d.ts +11 -1
  17. package/cjs/Exit/hkt.d.ts.map +1 -1
  18. package/cjs/Exit/hkt.js +9 -3
  19. package/cjs/Exit/hkt.js.map +1 -1
  20. package/cjs/Fiber/Fiber.d.ts +8 -8
  21. package/cjs/Fiber/Fiber.d.ts.map +1 -1
  22. package/cjs/Fiber/Fiber.js +2 -9
  23. package/cjs/Fiber/Fiber.js.map +1 -1
  24. package/cjs/Fiber/fromExit.d.ts +4 -0
  25. package/cjs/Fiber/fromExit.d.ts.map +1 -0
  26. package/cjs/Fiber/fromExit.js +16 -0
  27. package/cjs/Fiber/fromExit.js.map +1 -0
  28. package/cjs/Fiber/hkt.d.ts +40 -0
  29. package/cjs/Fiber/hkt.d.ts.map +1 -0
  30. package/cjs/Fiber/hkt.js +101 -0
  31. package/cjs/Fiber/hkt.js.map +1 -0
  32. package/cjs/Fiber/index.d.ts +1 -0
  33. package/cjs/Fiber/index.d.ts.map +1 -1
  34. package/cjs/Fiber/index.js +1 -0
  35. package/cjs/Fiber/index.js.map +1 -1
  36. package/cjs/FiberContext/FiberContext.d.ts +5 -7
  37. package/cjs/FiberContext/FiberContext.d.ts.map +1 -1
  38. package/cjs/FiberContext/FiberContext.js +3 -5
  39. package/cjs/FiberContext/FiberContext.js.map +1 -1
  40. package/cjs/FiberId/FiberId.d.ts +1 -1
  41. package/cjs/FiberId/FiberId.d.ts.map +1 -1
  42. package/cjs/FiberRef/FiberRef.d.ts +2 -18
  43. package/cjs/FiberRef/FiberRef.d.ts.map +1 -1
  44. package/cjs/FiberRef/FiberRef.js +1 -34
  45. package/cjs/FiberRef/FiberRef.js.map +1 -1
  46. package/cjs/FiberRef/builtins.d.ts +22 -0
  47. package/cjs/FiberRef/builtins.d.ts.map +1 -0
  48. package/cjs/FiberRef/builtins.js +94 -0
  49. package/cjs/FiberRef/builtins.js.map +1 -0
  50. package/cjs/FiberRef/index.d.ts.map +1 -1
  51. package/cjs/FiberRef/index.js +0 -1
  52. package/cjs/FiberRef/index.js.map +1 -1
  53. package/cjs/FiberRefs/FiberRefs.d.ts +3 -1
  54. package/cjs/FiberRefs/FiberRefs.d.ts.map +1 -1
  55. package/cjs/FiberRefs/FiberRefs.js +5 -18
  56. package/cjs/FiberRefs/FiberRefs.js.map +1 -1
  57. package/cjs/FiberRuntime/FiberRuntime.d.ts +14 -14
  58. package/cjs/FiberRuntime/FiberRuntime.d.ts.map +1 -1
  59. package/cjs/FiberRuntime/FiberRuntime.js +159 -152
  60. package/cjs/FiberRuntime/FiberRuntime.js.map +1 -1
  61. package/cjs/Fx/Fx.d.ts +13 -12
  62. package/cjs/Fx/Fx.d.ts.map +1 -1
  63. package/cjs/Fx/Fx.js +52 -37
  64. package/cjs/Fx/Fx.js.map +1 -1
  65. package/cjs/Fx/Instruction.d.ts +33 -35
  66. package/cjs/Fx/Instruction.d.ts.map +1 -1
  67. package/cjs/Fx/Instruction.js +44 -26
  68. package/cjs/Fx/Instruction.js.map +1 -1
  69. package/cjs/Fx/fromLayer.d.ts +5 -0
  70. package/cjs/Fx/fromLayer.d.ts.map +1 -0
  71. package/cjs/Fx/fromLayer.js +33 -0
  72. package/cjs/Fx/fromLayer.js.map +1 -0
  73. package/cjs/Fx/index.d.ts +1 -0
  74. package/cjs/Fx/index.d.ts.map +1 -1
  75. package/cjs/Fx/index.js +1 -0
  76. package/cjs/Fx/index.js.map +1 -1
  77. package/cjs/Fx/join.d.ts +8 -2
  78. package/cjs/Fx/join.d.ts.map +1 -1
  79. package/cjs/Fx/join.js +9 -10
  80. package/cjs/Fx/join.js.map +1 -1
  81. package/cjs/Fx/logging.d.ts.map +1 -1
  82. package/cjs/Fx/logging.js +5 -4
  83. package/cjs/Fx/logging.js.map +1 -1
  84. package/cjs/Fx/run.d.ts +7 -2
  85. package/cjs/Fx/run.d.ts.map +1 -1
  86. package/cjs/Fx/run.js +9 -4
  87. package/cjs/Fx/run.js.map +1 -1
  88. package/cjs/Fx/scheduler.js +1 -1
  89. package/cjs/Fx/scheduler.js.map +1 -1
  90. package/cjs/Fx/scoped.d.ts +5 -5
  91. package/cjs/Fx/scoped.d.ts.map +1 -1
  92. package/cjs/Fx/scoped.js +30 -20
  93. package/cjs/Fx/scoped.js.map +1 -1
  94. package/cjs/Layer/Layer.d.ts +1 -0
  95. package/cjs/Layer/Layer.d.ts.map +1 -1
  96. package/cjs/Layer/Layer.js +7 -1
  97. package/cjs/Layer/Layer.js.map +1 -1
  98. package/cjs/Logger/Console.d.ts.map +1 -1
  99. package/cjs/Logger/Console.js +45 -17
  100. package/cjs/Logger/Console.js.map +1 -1
  101. package/cjs/Logger/Logger.d.ts +2 -1
  102. package/cjs/Logger/Logger.d.ts.map +1 -1
  103. package/cjs/Logger/Logger.js +2 -2
  104. package/cjs/Logger/Logger.js.map +1 -1
  105. package/cjs/Node/Runtime.d.ts +9 -0
  106. package/cjs/Node/Runtime.d.ts.map +1 -0
  107. package/cjs/Node/Runtime.js +20 -0
  108. package/cjs/Node/Runtime.js.map +1 -0
  109. package/cjs/Node/gracefulShutdown.d.ts +5 -0
  110. package/cjs/Node/gracefulShutdown.d.ts.map +1 -0
  111. package/cjs/Node/gracefulShutdown.js +66 -0
  112. package/cjs/Node/gracefulShutdown.js.map +1 -0
  113. package/cjs/Node/index.d.ts +3 -0
  114. package/cjs/Node/index.d.ts.map +1 -0
  115. package/cjs/{Ref → Node}/index.js +2 -2
  116. package/cjs/Node/index.js.map +1 -0
  117. package/cjs/Platform/Platform.d.ts +4 -2
  118. package/cjs/Platform/Platform.d.ts.map +1 -1
  119. package/cjs/Platform/Platform.js +5 -3
  120. package/cjs/Platform/Platform.js.map +1 -1
  121. package/cjs/Runtime/Runtime.d.ts +4 -4
  122. package/cjs/Runtime/Runtime.d.ts.map +1 -1
  123. package/cjs/Runtime/Runtime.js +1 -1
  124. package/cjs/Runtime/Runtime.js.map +1 -1
  125. package/cjs/Scheduler/RootScheduler.d.ts.map +1 -1
  126. package/cjs/Scheduler/RootScheduler.js +9 -8
  127. package/cjs/Scheduler/RootScheduler.js.map +1 -1
  128. package/cjs/Scheduler/Scheduler.d.ts +3 -2
  129. package/cjs/Scheduler/Scheduler.d.ts.map +1 -1
  130. package/cjs/Scheduler/Scheduler.js.map +1 -1
  131. package/cjs/Scheduler/index.d.ts +2 -0
  132. package/cjs/Scheduler/index.d.ts.map +1 -1
  133. package/cjs/Scheduler/index.js +17 -0
  134. package/cjs/Scheduler/index.js.map +1 -1
  135. package/cjs/Scheduler/{scheduled.d.ts → runSchedule.d.ts} +2 -2
  136. package/cjs/Scheduler/runSchedule.d.ts.map +1 -0
  137. package/cjs/Scheduler/{scheduled.js → runSchedule.js} +5 -5
  138. package/cjs/Scheduler/runSchedule.js.map +1 -0
  139. package/cjs/Scope/LocalScope.d.ts.map +1 -1
  140. package/cjs/Scope/LocalScope.js +4 -10
  141. package/cjs/Scope/LocalScope.js.map +1 -1
  142. package/cjs/Scope/ReleaseMap.d.ts +3 -3
  143. package/cjs/Scope/ReleaseMap.d.ts.map +1 -1
  144. package/cjs/Scope/ReleaseMap.js +45 -8
  145. package/cjs/Scope/ReleaseMap.js.map +1 -1
  146. package/cjs/Semaphore/Semaphore.d.ts +2 -1
  147. package/cjs/Semaphore/Semaphore.d.ts.map +1 -1
  148. package/cjs/Semaphore/Semaphore.js +14 -23
  149. package/cjs/Semaphore/Semaphore.js.map +1 -1
  150. package/cjs/Service/Id.d.ts +12 -1
  151. package/cjs/Service/Id.d.ts.map +1 -1
  152. package/cjs/Service/Id.js +11 -1
  153. package/cjs/Service/Id.js.map +1 -1
  154. package/cjs/Service/fn.d.ts +47 -0
  155. package/cjs/Service/fn.d.ts.map +1 -0
  156. package/cjs/Service/fn.js +19 -0
  157. package/cjs/Service/fn.js.map +1 -0
  158. package/cjs/Service/index.d.ts +1 -0
  159. package/cjs/Service/index.d.ts.map +1 -1
  160. package/cjs/Service/index.js +1 -0
  161. package/cjs/Service/index.js.map +1 -1
  162. package/cjs/Service/tagged.d.ts +10 -2
  163. package/cjs/Service/tagged.d.ts.map +1 -1
  164. package/cjs/Sink/Sink.d.ts +5 -5
  165. package/cjs/Sink/Sink.d.ts.map +1 -1
  166. package/cjs/Sink/Sink.js +11 -7
  167. package/cjs/Sink/Sink.js.map +1 -1
  168. package/cjs/Stream/Stream.d.ts +39 -6
  169. package/cjs/Stream/Stream.d.ts.map +1 -1
  170. package/cjs/Stream/Stream.js.map +1 -1
  171. package/cjs/Stream/bimap.d.ts +15 -0
  172. package/cjs/Stream/bimap.d.ts.map +1 -0
  173. package/cjs/Stream/bimap.js +74 -0
  174. package/cjs/Stream/bimap.js.map +1 -0
  175. package/cjs/Stream/continueWith.d.ts +27 -0
  176. package/cjs/Stream/continueWith.d.ts.map +1 -0
  177. package/cjs/Stream/continueWith.js +66 -0
  178. package/cjs/Stream/continueWith.js.map +1 -0
  179. package/cjs/Stream/drain.d.ts +3 -2
  180. package/cjs/Stream/drain.d.ts.map +1 -1
  181. package/cjs/Stream/drain.js +6 -6
  182. package/cjs/Stream/drain.js.map +1 -1
  183. package/cjs/Stream/empty.d.ts +3 -0
  184. package/cjs/Stream/empty.d.ts.map +1 -0
  185. package/cjs/Stream/empty.js +31 -0
  186. package/cjs/Stream/empty.js.map +1 -0
  187. package/cjs/Stream/flatMap.d.ts +15 -0
  188. package/cjs/Stream/flatMap.d.ts.map +1 -0
  189. package/cjs/Stream/flatMap.js +102 -0
  190. package/cjs/Stream/flatMap.js.map +1 -0
  191. package/cjs/Stream/flatMapFx.d.ts +4 -0
  192. package/cjs/Stream/flatMapFx.d.ts.map +1 -0
  193. package/cjs/Stream/flatMapFx.js +11 -0
  194. package/cjs/Stream/flatMapFx.js.map +1 -0
  195. package/cjs/Stream/fromCallback.d.ts +21 -0
  196. package/cjs/Stream/fromCallback.d.ts.map +1 -0
  197. package/cjs/Stream/fromCallback.js +65 -0
  198. package/cjs/Stream/fromCallback.js.map +1 -0
  199. package/cjs/Stream/fromFx.d.ts +12 -1
  200. package/cjs/Stream/fromFx.d.ts.map +1 -1
  201. package/cjs/Stream/fromFx.js +18 -4
  202. package/cjs/Stream/fromFx.js.map +1 -1
  203. package/cjs/Stream/hkt.d.ts +15 -0
  204. package/cjs/Stream/hkt.d.ts.map +1 -0
  205. package/cjs/Stream/hkt.js +42 -0
  206. package/cjs/Stream/hkt.js.map +1 -0
  207. package/cjs/Stream/index.d.ts +11 -0
  208. package/cjs/Stream/index.d.ts.map +1 -1
  209. package/cjs/Stream/index.js +11 -0
  210. package/cjs/Stream/index.js.map +1 -1
  211. package/cjs/Stream/map.d.ts +14 -0
  212. package/cjs/Stream/map.d.ts.map +1 -0
  213. package/cjs/Stream/map.js +30 -0
  214. package/cjs/Stream/map.js.map +1 -0
  215. package/cjs/Stream/periodic.d.ts +4 -0
  216. package/cjs/Stream/periodic.d.ts.map +1 -0
  217. package/cjs/Stream/periodic.js +32 -0
  218. package/cjs/Stream/periodic.js.map +1 -0
  219. package/cjs/Stream/run.d.ts +6 -0
  220. package/cjs/Stream/run.d.ts.map +1 -0
  221. package/cjs/{Ref/Ref.js → Stream/run.js} +10 -30
  222. package/cjs/Stream/run.js.map +1 -0
  223. package/cjs/Stream/scheduled.d.ts +5 -0
  224. package/cjs/Stream/scheduled.d.ts.map +1 -0
  225. package/cjs/Stream/scheduled.js +34 -0
  226. package/cjs/Stream/scheduled.js.map +1 -0
  227. package/cjs/Stream/tap.d.ts +4 -0
  228. package/cjs/Stream/tap.d.ts.map +1 -0
  229. package/cjs/Stream/tap.js +9 -0
  230. package/cjs/Stream/tap.js.map +1 -0
  231. package/cjs/Supervisor/Supervisor.d.ts +507 -0
  232. package/cjs/Supervisor/Supervisor.d.ts.map +1 -1
  233. package/cjs/Supervisor/Supervisor.js +2 -1
  234. package/cjs/Supervisor/Supervisor.js.map +1 -1
  235. package/cjs/Supervisor/index.d.ts +1 -0
  236. package/cjs/Supervisor/index.d.ts.map +1 -1
  237. package/cjs/Supervisor/index.js +1 -0
  238. package/cjs/Supervisor/index.js.map +1 -1
  239. package/cjs/Supervisor/maxFailures.d.ts +18 -0
  240. package/cjs/Supervisor/maxFailures.d.ts.map +1 -0
  241. package/cjs/Supervisor/maxFailures.js +72 -0
  242. package/cjs/Supervisor/maxFailures.js.map +1 -0
  243. package/cjs/Supervisor/trackIn.d.ts +6 -0
  244. package/cjs/Supervisor/trackIn.d.ts.map +1 -0
  245. package/cjs/Supervisor/trackIn.js +16 -0
  246. package/cjs/Supervisor/trackIn.js.map +1 -0
  247. package/cjs/Trace/Trace.d.ts +1 -1
  248. package/cjs/Trace/Trace.d.ts.map +1 -1
  249. package/cjs/Trace/Trace.js +8 -35
  250. package/cjs/Trace/Trace.js.map +1 -1
  251. package/cjs/Tracing/plugin.d.ts.map +1 -1
  252. package/cjs/Tracing/plugin.js +30 -0
  253. package/cjs/Tracing/plugin.js.map +1 -1
  254. package/cjs/_internal/suite.d.ts +12 -0
  255. package/cjs/_internal/suite.d.ts.map +1 -0
  256. package/cjs/_internal/suite.js +13 -0
  257. package/cjs/_internal/suite.js.map +1 -0
  258. package/cjs/index.d.ts +3 -1
  259. package/cjs/index.d.ts.map +1 -1
  260. package/cjs/index.js +4 -2
  261. package/cjs/index.js.map +1 -1
  262. package/coverage/tmp/coverage-14409-1663382601663-0.json +1 -0
  263. package/coverage/tmp/coverage-14414-1663382601571-0.json +1 -0
  264. package/coverage/tmp/coverage-14432-1663382601494-0.json +1 -0
  265. package/esm/Atomic/Atomic.d.ts +2 -2
  266. package/esm/Atomic/Atomic.d.ts.map +1 -1
  267. package/esm/Atomic/Atomic.js +1 -1
  268. package/esm/Atomic/Atomic.js.map +1 -1
  269. package/esm/Effect/Effect.d.ts +199 -0
  270. package/esm/Effect/Effect.d.ts.map +1 -0
  271. package/esm/Effect/Effect.js +50 -0
  272. package/esm/Effect/Effect.js.map +1 -0
  273. package/esm/Env/Env.d.ts.map +1 -1
  274. package/esm/Env/Env.js +2 -32
  275. package/esm/Env/Env.js.map +1 -1
  276. package/esm/Exit/hkt.d.ts +11 -1
  277. package/esm/Exit/hkt.d.ts.map +1 -1
  278. package/esm/Exit/hkt.js +9 -3
  279. package/esm/Exit/hkt.js.map +1 -1
  280. package/esm/Fiber/Fiber.d.ts +8 -8
  281. package/esm/Fiber/Fiber.d.ts.map +1 -1
  282. package/esm/Fiber/Fiber.js +3 -10
  283. package/esm/Fiber/Fiber.js.map +1 -1
  284. package/esm/Fiber/fromExit.d.ts +4 -0
  285. package/esm/Fiber/fromExit.d.ts.map +1 -0
  286. package/esm/Fiber/fromExit.js +12 -0
  287. package/esm/Fiber/fromExit.js.map +1 -0
  288. package/esm/Fiber/hkt.d.ts +40 -0
  289. package/esm/Fiber/hkt.d.ts.map +1 -0
  290. package/esm/Fiber/hkt.js +75 -0
  291. package/esm/Fiber/hkt.js.map +1 -0
  292. package/esm/Fiber/index.d.ts +1 -0
  293. package/esm/Fiber/index.d.ts.map +1 -1
  294. package/esm/Fiber/index.js +1 -0
  295. package/esm/Fiber/index.js.map +1 -1
  296. package/esm/FiberContext/FiberContext.d.ts +5 -7
  297. package/esm/FiberContext/FiberContext.d.ts.map +1 -1
  298. package/esm/FiberContext/FiberContext.js +3 -5
  299. package/esm/FiberContext/FiberContext.js.map +1 -1
  300. package/esm/FiberId/FiberId.d.ts +1 -1
  301. package/esm/FiberId/FiberId.d.ts.map +1 -1
  302. package/esm/FiberRef/FiberRef.d.ts +2 -18
  303. package/esm/FiberRef/FiberRef.d.ts.map +1 -1
  304. package/esm/FiberRef/FiberRef.js +1 -34
  305. package/esm/FiberRef/FiberRef.js.map +1 -1
  306. package/esm/FiberRef/builtins.d.ts +22 -0
  307. package/esm/FiberRef/builtins.d.ts.map +1 -0
  308. package/esm/FiberRef/builtins.js +67 -0
  309. package/esm/FiberRef/builtins.js.map +1 -0
  310. package/esm/FiberRef/index.d.ts.map +1 -1
  311. package/esm/FiberRef/index.js +0 -1
  312. package/esm/FiberRef/index.js.map +1 -1
  313. package/esm/FiberRefs/FiberRefs.d.ts +3 -1
  314. package/esm/FiberRefs/FiberRefs.d.ts.map +1 -1
  315. package/esm/FiberRefs/FiberRefs.js +5 -18
  316. package/esm/FiberRefs/FiberRefs.js.map +1 -1
  317. package/esm/FiberRuntime/FiberRuntime.d.ts +14 -14
  318. package/esm/FiberRuntime/FiberRuntime.d.ts.map +1 -1
  319. package/esm/FiberRuntime/FiberRuntime.js +160 -153
  320. package/esm/FiberRuntime/FiberRuntime.js.map +1 -1
  321. package/esm/Fx/Fx.d.ts +13 -12
  322. package/esm/Fx/Fx.d.ts.map +1 -1
  323. package/esm/Fx/Fx.js +49 -35
  324. package/esm/Fx/Fx.js.map +1 -1
  325. package/esm/Fx/Instruction.d.ts +33 -35
  326. package/esm/Fx/Instruction.d.ts.map +1 -1
  327. package/esm/Fx/Instruction.js +42 -24
  328. package/esm/Fx/Instruction.js.map +1 -1
  329. package/esm/Fx/fromLayer.d.ts +5 -0
  330. package/esm/Fx/fromLayer.d.ts.map +1 -0
  331. package/esm/Fx/fromLayer.js +6 -0
  332. package/esm/Fx/fromLayer.js.map +1 -0
  333. package/esm/Fx/index.d.ts +1 -0
  334. package/esm/Fx/index.d.ts.map +1 -1
  335. package/esm/Fx/index.js +1 -0
  336. package/esm/Fx/index.js.map +1 -1
  337. package/esm/Fx/join.d.ts +8 -2
  338. package/esm/Fx/join.d.ts.map +1 -1
  339. package/esm/Fx/join.js +6 -10
  340. package/esm/Fx/join.js.map +1 -1
  341. package/esm/Fx/logging.d.ts.map +1 -1
  342. package/esm/Fx/logging.js +3 -2
  343. package/esm/Fx/logging.js.map +1 -1
  344. package/esm/Fx/run.d.ts +7 -2
  345. package/esm/Fx/run.d.ts.map +1 -1
  346. package/esm/Fx/run.js +5 -0
  347. package/esm/Fx/run.js.map +1 -1
  348. package/esm/Fx/scheduler.js +1 -1
  349. package/esm/Fx/scheduler.js.map +1 -1
  350. package/esm/Fx/scoped.d.ts +5 -5
  351. package/esm/Fx/scoped.d.ts.map +1 -1
  352. package/esm/Fx/scoped.js +7 -20
  353. package/esm/Fx/scoped.js.map +1 -1
  354. package/esm/Layer/Layer.d.ts +1 -0
  355. package/esm/Layer/Layer.d.ts.map +1 -1
  356. package/esm/Layer/Layer.js +5 -0
  357. package/esm/Layer/Layer.js.map +1 -1
  358. package/esm/Logger/Console.d.ts.map +1 -1
  359. package/esm/Logger/Console.js +22 -17
  360. package/esm/Logger/Console.js.map +1 -1
  361. package/esm/Logger/Logger.d.ts +2 -1
  362. package/esm/Logger/Logger.d.ts.map +1 -1
  363. package/esm/Logger/Logger.js +2 -2
  364. package/esm/Logger/Logger.js.map +1 -1
  365. package/esm/Node/Runtime.d.ts +9 -0
  366. package/esm/Node/Runtime.d.ts.map +1 -0
  367. package/esm/Node/Runtime.js +17 -0
  368. package/esm/Node/Runtime.js.map +1 -0
  369. package/esm/Node/gracefulShutdown.d.ts +5 -0
  370. package/esm/Node/gracefulShutdown.d.ts.map +1 -0
  371. package/esm/Node/gracefulShutdown.js +36 -0
  372. package/esm/Node/gracefulShutdown.js.map +1 -0
  373. package/esm/Node/index.d.ts +3 -0
  374. package/esm/Node/index.d.ts.map +1 -0
  375. package/esm/Node/index.js +3 -0
  376. package/esm/Node/index.js.map +1 -0
  377. package/esm/Platform/Platform.d.ts +4 -2
  378. package/esm/Platform/Platform.d.ts.map +1 -1
  379. package/esm/Platform/Platform.js +5 -3
  380. package/esm/Platform/Platform.js.map +1 -1
  381. package/esm/Runtime/Runtime.d.ts +4 -4
  382. package/esm/Runtime/Runtime.d.ts.map +1 -1
  383. package/esm/Runtime/Runtime.js +1 -1
  384. package/esm/Runtime/Runtime.js.map +1 -1
  385. package/esm/Scheduler/RootScheduler.d.ts.map +1 -1
  386. package/esm/Scheduler/RootScheduler.js +7 -6
  387. package/esm/Scheduler/RootScheduler.js.map +1 -1
  388. package/esm/Scheduler/Scheduler.d.ts +3 -2
  389. package/esm/Scheduler/Scheduler.d.ts.map +1 -1
  390. package/esm/Scheduler/Scheduler.js.map +1 -1
  391. package/esm/Scheduler/index.d.ts +2 -0
  392. package/esm/Scheduler/index.d.ts.map +1 -1
  393. package/esm/Scheduler/index.js +2 -1
  394. package/esm/Scheduler/index.js.map +1 -1
  395. package/esm/Scheduler/{scheduled.d.ts → runSchedule.d.ts} +2 -2
  396. package/esm/Scheduler/runSchedule.d.ts.map +1 -0
  397. package/esm/Scheduler/{scheduled.js → runSchedule.js} +3 -3
  398. package/esm/Scheduler/runSchedule.js.map +1 -0
  399. package/esm/Scope/LocalScope.d.ts.map +1 -1
  400. package/esm/Scope/LocalScope.js +5 -11
  401. package/esm/Scope/LocalScope.js.map +1 -1
  402. package/esm/Scope/ReleaseMap.d.ts +3 -3
  403. package/esm/Scope/ReleaseMap.d.ts.map +1 -1
  404. package/esm/Scope/ReleaseMap.js +23 -9
  405. package/esm/Scope/ReleaseMap.js.map +1 -1
  406. package/esm/Semaphore/Semaphore.d.ts +2 -1
  407. package/esm/Semaphore/Semaphore.d.ts.map +1 -1
  408. package/esm/Semaphore/Semaphore.js +16 -25
  409. package/esm/Semaphore/Semaphore.js.map +1 -1
  410. package/esm/Service/Id.d.ts +12 -1
  411. package/esm/Service/Id.d.ts.map +1 -1
  412. package/esm/Service/Id.js +12 -2
  413. package/esm/Service/Id.js.map +1 -1
  414. package/esm/Service/fn.d.ts +47 -0
  415. package/esm/Service/fn.d.ts.map +1 -0
  416. package/esm/Service/fn.js +15 -0
  417. package/esm/Service/fn.js.map +1 -0
  418. package/esm/Service/index.d.ts +1 -0
  419. package/esm/Service/index.d.ts.map +1 -1
  420. package/esm/Service/index.js +1 -0
  421. package/esm/Service/index.js.map +1 -1
  422. package/esm/Service/tagged.d.ts +10 -2
  423. package/esm/Service/tagged.d.ts.map +1 -1
  424. package/esm/Sink/Sink.d.ts +5 -5
  425. package/esm/Sink/Sink.d.ts.map +1 -1
  426. package/esm/Sink/Sink.js +12 -8
  427. package/esm/Sink/Sink.js.map +1 -1
  428. package/esm/Stream/Stream.d.ts +39 -6
  429. package/esm/Stream/Stream.d.ts.map +1 -1
  430. package/esm/Stream/Stream.js.map +1 -1
  431. package/esm/Stream/bimap.d.ts +15 -0
  432. package/esm/Stream/bimap.d.ts.map +1 -0
  433. package/esm/Stream/bimap.js +46 -0
  434. package/esm/Stream/bimap.js.map +1 -0
  435. package/esm/Stream/continueWith.d.ts +27 -0
  436. package/esm/Stream/continueWith.d.ts.map +1 -0
  437. package/esm/Stream/continueWith.js +36 -0
  438. package/esm/Stream/continueWith.js.map +1 -0
  439. package/esm/Stream/drain.d.ts +3 -2
  440. package/esm/Stream/drain.d.ts.map +1 -1
  441. package/esm/Stream/drain.js +6 -6
  442. package/esm/Stream/drain.js.map +1 -1
  443. package/esm/Stream/empty.d.ts +3 -0
  444. package/esm/Stream/empty.d.ts.map +1 -0
  445. package/esm/Stream/empty.js +5 -0
  446. package/esm/Stream/empty.js.map +1 -0
  447. package/esm/Stream/flatMap.d.ts +15 -0
  448. package/esm/Stream/flatMap.d.ts.map +1 -0
  449. package/esm/Stream/flatMap.js +74 -0
  450. package/esm/Stream/flatMap.js.map +1 -0
  451. package/esm/Stream/flatMapFx.d.ts +4 -0
  452. package/esm/Stream/flatMapFx.d.ts.map +1 -0
  453. package/esm/Stream/flatMapFx.js +7 -0
  454. package/esm/Stream/flatMapFx.js.map +1 -0
  455. package/esm/Stream/fromCallback.d.ts +21 -0
  456. package/esm/Stream/fromCallback.d.ts.map +1 -0
  457. package/esm/Stream/fromCallback.js +37 -0
  458. package/esm/Stream/fromCallback.js.map +1 -0
  459. package/esm/Stream/fromFx.d.ts +12 -1
  460. package/esm/Stream/fromFx.d.ts.map +1 -1
  461. package/esm/Stream/fromFx.js +16 -2
  462. package/esm/Stream/fromFx.js.map +1 -1
  463. package/esm/Stream/hkt.d.ts +15 -0
  464. package/esm/Stream/hkt.d.ts.map +1 -0
  465. package/esm/Stream/hkt.js +16 -0
  466. package/esm/Stream/hkt.js.map +1 -0
  467. package/esm/Stream/index.d.ts +11 -0
  468. package/esm/Stream/index.d.ts.map +1 -1
  469. package/esm/Stream/index.js +11 -0
  470. package/esm/Stream/index.js.map +1 -1
  471. package/esm/Stream/map.d.ts +14 -0
  472. package/esm/Stream/map.d.ts.map +1 -0
  473. package/esm/Stream/map.js +25 -0
  474. package/esm/Stream/map.js.map +1 -0
  475. package/esm/Stream/periodic.d.ts +4 -0
  476. package/esm/Stream/periodic.d.ts.map +1 -0
  477. package/esm/Stream/periodic.js +5 -0
  478. package/esm/Stream/periodic.js.map +1 -0
  479. package/esm/Stream/run.d.ts +6 -0
  480. package/esm/Stream/run.d.ts.map +1 -0
  481. package/esm/Stream/run.js +9 -0
  482. package/esm/Stream/run.js.map +1 -0
  483. package/esm/Stream/scheduled.d.ts +5 -0
  484. package/esm/Stream/scheduled.d.ts.map +1 -0
  485. package/esm/Stream/scheduled.js +7 -0
  486. package/esm/Stream/scheduled.js.map +1 -0
  487. package/esm/Stream/tap.d.ts +4 -0
  488. package/esm/Stream/tap.d.ts.map +1 -0
  489. package/esm/Stream/tap.js +5 -0
  490. package/esm/Stream/tap.js.map +1 -0
  491. package/esm/Supervisor/Supervisor.d.ts +507 -0
  492. package/esm/Supervisor/Supervisor.d.ts.map +1 -1
  493. package/esm/Supervisor/Supervisor.js +2 -1
  494. package/esm/Supervisor/Supervisor.js.map +1 -1
  495. package/esm/Supervisor/index.d.ts +1 -0
  496. package/esm/Supervisor/index.d.ts.map +1 -1
  497. package/esm/Supervisor/index.js +1 -0
  498. package/esm/Supervisor/index.js.map +1 -1
  499. package/esm/Supervisor/maxFailures.d.ts +18 -0
  500. package/esm/Supervisor/maxFailures.d.ts.map +1 -0
  501. package/esm/Supervisor/maxFailures.js +45 -0
  502. package/esm/Supervisor/maxFailures.js.map +1 -0
  503. package/esm/Supervisor/trackIn.d.ts +6 -0
  504. package/esm/Supervisor/trackIn.d.ts.map +1 -0
  505. package/esm/Supervisor/trackIn.js +12 -0
  506. package/esm/Supervisor/trackIn.js.map +1 -0
  507. package/esm/Trace/Trace.d.ts +1 -1
  508. package/esm/Trace/Trace.d.ts.map +1 -1
  509. package/esm/Trace/Trace.js +8 -35
  510. package/esm/Trace/Trace.js.map +1 -1
  511. package/esm/Tracing/plugin.d.ts.map +1 -1
  512. package/esm/Tracing/plugin.js +30 -0
  513. package/esm/Tracing/plugin.js.map +1 -1
  514. package/esm/_internal/suite.d.ts +12 -0
  515. package/esm/_internal/suite.d.ts.map +1 -0
  516. package/esm/_internal/suite.js +8 -0
  517. package/esm/_internal/suite.js.map +1 -0
  518. package/esm/index.d.ts +3 -1
  519. package/esm/index.d.ts.map +1 -1
  520. package/esm/index.js +6 -2
  521. package/esm/index.js.map +1 -1
  522. package/package.json +269 -38
  523. package/readme.md +1 -2
  524. package/src/Atomic/Atomic.test.ts +33 -0
  525. package/src/Atomic/Atomic.ts +3 -3
  526. package/src/Effect/Effect.ts +109 -0
  527. package/src/Env/Env.ts +3 -51
  528. package/src/Exit/hkt.ts +18 -3
  529. package/src/Fiber/Fiber.ts +17 -16
  530. package/src/Fiber/fromExit.ts +14 -0
  531. package/src/Fiber/hkt.ts +125 -0
  532. package/src/Fiber/index.ts +1 -0
  533. package/src/FiberContext/FiberContext.ts +17 -16
  534. package/src/FiberId/FiberId.ts +1 -1
  535. package/src/FiberRef/FiberRef.ts +3 -63
  536. package/src/FiberRef/builtins.ts +114 -0
  537. package/src/FiberRef/index.ts +0 -1
  538. package/src/FiberRefs/FiberRefs.ts +11 -26
  539. package/src/FiberRuntime/FiberRuntime.ts +263 -245
  540. package/src/Fx/Fx.test.ts +52 -31
  541. package/src/Fx/Fx.ts +58 -34
  542. package/src/Fx/Instruction.ts +103 -60
  543. package/src/Fx/fromLayer.ts +8 -0
  544. package/src/Fx/index.ts +1 -0
  545. package/src/Fx/join.ts +23 -10
  546. package/src/Fx/logging.ts +5 -2
  547. package/src/Fx/run.ts +7 -1
  548. package/src/Fx/scheduler.ts +1 -1
  549. package/src/Fx/scoped.ts +35 -46
  550. package/src/Layer/Layer.ts +11 -5
  551. package/src/Logger/Console.test.ts +9 -5
  552. package/src/Logger/Console.ts +32 -17
  553. package/src/Logger/Logger.ts +4 -2
  554. package/src/Node/Runtime.ts +26 -0
  555. package/src/Node/gracefulShutdown.ts +54 -0
  556. package/src/Node/index.ts +2 -0
  557. package/src/Platform/Platform.ts +11 -5
  558. package/src/Runtime/Runtime.ts +7 -5
  559. package/src/Scheduler/RootScheduler.ts +18 -10
  560. package/src/Scheduler/Scheduler.ts +12 -5
  561. package/src/Scheduler/index.ts +2 -0
  562. package/src/Scheduler/{scheduled.ts → runSchedule.ts} +1 -1
  563. package/src/Scope/Closeable.test.ts +5 -1
  564. package/src/Scope/LocalScope.ts +13 -12
  565. package/src/Scope/ReleaseMap.ts +27 -9
  566. package/src/Semaphore/Semaphore.ts +28 -29
  567. package/src/Service/Id.ts +34 -2
  568. package/src/Service/fn.ts +41 -0
  569. package/src/Service/index.ts +1 -0
  570. package/src/Sink/Sink.ts +35 -21
  571. package/src/Stream/Stream.ts +43 -7
  572. package/src/Stream/_internal.test.ts +12 -0
  573. package/src/Stream/bimap.ts +59 -0
  574. package/src/Stream/continueWith.test.ts +23 -0
  575. package/src/Stream/continueWith.ts +65 -0
  576. package/src/Stream/drain.ts +15 -29
  577. package/src/Stream/empty.ts +8 -0
  578. package/src/Stream/flatMap.test.ts +43 -0
  579. package/src/Stream/flatMap.ts +102 -0
  580. package/src/Stream/flatMapFx.ts +12 -0
  581. package/src/Stream/fromCallback.test.ts +35 -0
  582. package/src/Stream/fromCallback.ts +65 -0
  583. package/src/Stream/fromFx.test.ts +3 -4
  584. package/src/Stream/fromFx.ts +34 -16
  585. package/src/Stream/hkt.ts +36 -0
  586. package/src/Stream/index.ts +11 -0
  587. package/src/Stream/logging.test.ts +24 -0
  588. package/src/Stream/map.ts +35 -0
  589. package/src/Stream/periodic.ts +9 -0
  590. package/src/Stream/run.ts +14 -0
  591. package/src/Stream/scheduled.test.ts +34 -0
  592. package/src/Stream/scheduled.ts +21 -0
  593. package/src/Stream/tap.ts +21 -0
  594. package/src/Supervisor/Supervisor.ts +14 -0
  595. package/src/Supervisor/index.ts +1 -0
  596. package/src/Supervisor/maxFailures.ts +86 -0
  597. package/src/Supervisor/trackIn.ts +33 -0
  598. package/src/Trace/Trace.ts +11 -45
  599. package/src/Tracing/plugin.ts +44 -0
  600. package/src/_internal/suite.ts +24 -0
  601. package/src/index.ts +3 -1
  602. package/cjs/Ref/Ref.d.ts +0 -40
  603. package/cjs/Ref/Ref.d.ts.map +0 -1
  604. package/cjs/Ref/Ref.js.map +0 -1
  605. package/cjs/Ref/atomic.d.ts +0 -5
  606. package/cjs/Ref/atomic.d.ts.map +0 -1
  607. package/cjs/Ref/atomic.js +0 -20
  608. package/cjs/Ref/atomic.js.map +0 -1
  609. package/cjs/Ref/index.d.ts +0 -3
  610. package/cjs/Ref/index.d.ts.map +0 -1
  611. package/cjs/Ref/index.js.map +0 -1
  612. package/cjs/Scheduler/scheduled.d.ts.map +0 -1
  613. package/cjs/Scheduler/scheduled.js.map +0 -1
  614. package/cjs/internal.d.ts +0 -18
  615. package/cjs/internal.d.ts.map +0 -1
  616. package/cjs/internal.js +0 -3
  617. package/cjs/internal.js.map +0 -1
  618. package/coverage/tmp/coverage-74826-1660784295157-0.json +0 -1
  619. package/coverage/tmp/coverage-74830-1660784295115-0.json +0 -1
  620. package/coverage/tmp/coverage-74836-1660784295074-0.json +0 -1
  621. package/esm/Ref/Ref.d.ts +0 -40
  622. package/esm/Ref/Ref.d.ts.map +0 -1
  623. package/esm/Ref/Ref.js +0 -30
  624. package/esm/Ref/Ref.js.map +0 -1
  625. package/esm/Ref/atomic.d.ts +0 -5
  626. package/esm/Ref/atomic.d.ts.map +0 -1
  627. package/esm/Ref/atomic.js +0 -16
  628. package/esm/Ref/atomic.js.map +0 -1
  629. package/esm/Ref/index.d.ts +0 -3
  630. package/esm/Ref/index.d.ts.map +0 -1
  631. package/esm/Ref/index.js +0 -3
  632. package/esm/Ref/index.js.map +0 -1
  633. package/esm/Scheduler/scheduled.d.ts.map +0 -1
  634. package/esm/Scheduler/scheduled.js.map +0 -1
  635. package/esm/internal.d.ts +0 -18
  636. package/esm/internal.d.ts.map +0 -1
  637. package/esm/internal.js +0 -2
  638. package/esm/internal.js.map +0 -1
  639. package/src/Ref/Ref.test.ts +0 -34
  640. package/src/Ref/Ref.ts +0 -76
  641. package/src/Ref/atomic.ts +0 -33
  642. package/src/Ref/index.ts +0 -2
  643. package/src/internal.ts +0 -33
@@ -15,12 +15,13 @@ export class Supervisor {
15
15
  this.onSuspended = onSuspended;
16
16
  this.onRunning = onRunning;
17
17
  }
18
+ extend = (overrides) => new Supervisor((overrides.value ? overrides.value(this.value) : this.value), overrides.onStart ? overrides.onStart(this.onStart) : this.onStart, overrides.onEnd ? overrides.onEnd(this.onEnd) : this.onEnd, overrides.onInstruction ? overrides.onInstruction(this.onInstruction) : this.onInstruction, overrides.onSuspended ? overrides.onSuspended(this.onSuspended) : this.onSuspended, overrides.onRunning ? overrides.onRunning(this.onRunning) : this.onRunning);
18
19
  }
19
20
  export const None = new (class None extends Supervisor {
20
21
  })(unit);
21
22
  export const isNone = (supervisor) => supervisor === None;
22
23
  export function and(second) {
23
- return (first) => new Supervisor(zipAll([first.value, second.value], "zipAll" + " node_modules/@typed/fx/src/Supervisor/Supervisor.ts:27:13"), (fiber, fx) => {
24
+ return (first) => new Supervisor(zipAll([first.value, second.value]), (fiber, fx) => {
24
25
  first.onStart(fiber, fx);
25
26
  second.onStart(fiber, fx);
26
27
  }, (fiber, exit) => {
@@ -1 +1 @@
1
- {"version":3,"file":"Supervisor.js","sourceRoot":"","sources":["../../src/Supervisor/Supervisor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAIlC,OAAO,EAAa,IAAI,EAAE,MAAM,EAAE,oBAAkB;AAGpD,MAAM,OAAO,UAAU;IAEV;IACA;IACA;IACA;IACA;IACA;IANX,YACW,KAAY,EACZ,UAAoD,SAAS,EAC7D,QAAsD,SAAS,EAC/D,gBAA4E,SAAS,EACrF,cAA6C,SAAS,EACtD,YAA2C,SAAS;QALpD,UAAK,GAAL,KAAK,CAAO;QACZ,YAAO,GAAP,OAAO,CAAsD;QAC7D,UAAK,GAAL,KAAK,CAA0D;QAC/D,kBAAa,GAAb,aAAa,CAAwE;QACrF,gBAAW,GAAX,WAAW,CAA2C;QACtD,cAAS,GAAT,SAAS,CAA2C;IAC5D,CAAC;CACL;AAED,MAAM,CAAC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,IAAK,SAAQ,UAAe;CAAG,CAAC,CAAC,IAAI,CAAC,CAAA;AAGrE,MAAM,CAAC,MAAM,MAAM,GAAG,CAAI,UAAyB,EAAsB,EAAE,CAAC,UAAU,KAAK,IAAI,CAAA;AAE/F,MAAM,UAAU,GAAG,CAAI,MAAqB;IAC1C,OAAO,CAAI,KAAoB,EAAE,EAAE,CACjC,IAAI,UAAU,CACZ,MAAM,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,0EAAC,EACnC,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;QACZ,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QACxB,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;IAC3B,CAAC,EACD,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QACd,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QACxB,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IAC3B,CAAC,EACD,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACf,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;QACjC,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;IACpC,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;QACR,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;QACxB,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;IAC3B,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;QACR,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;QACtB,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;IACzB,CAAC,CACF,CAAA;AACL,CAAC"}
1
+ {"version":3,"file":"Supervisor.js","sourceRoot":"","sources":["../../src/Supervisor/Supervisor.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,3 @@
1
1
  export * from './Supervisor.js';
2
+ export * from './trackIn.js';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Supervisor/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Supervisor/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA"}
@@ -1,2 +1,3 @@
1
1
  export * from './Supervisor.js';
2
+ export * from './trackIn.js';
2
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Supervisor/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Supervisor/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA"}
@@ -0,0 +1,18 @@
1
+ import * as Maybe from 'hkt-ts/Maybe';
2
+ import { NonNegativeInteger } from 'hkt-ts/number';
3
+ import { Supervisor } from './Supervisor.js';
4
+ import * as Exit from "../Exit/Exit.js";
5
+ import { AnyLiveFiber } from "../Fiber/Fiber.js";
6
+ import { FiberId } from "../FiberId/index.js";
7
+ import { AnyFx } from "../Fx/index.js";
8
+ import { ImmutableMap } from "../ImmutableMap/ImmutableMap.js";
9
+ export interface FiberFailureState {
10
+ readonly fx: AnyFx;
11
+ readonly fiber: AnyLiveFiber;
12
+ readonly exit: Maybe.Maybe<Exit.AnyExit>;
13
+ readonly failures: NonNegativeInteger;
14
+ }
15
+ export interface FiberFailuresState extends ImmutableMap<FiberId.Live, FiberFailureState> {
16
+ }
17
+ export declare function maxFailures(maxFailures: NonNegativeInteger): Supervisor<FiberFailuresState>;
18
+ //# sourceMappingURL=maxFailures.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"maxFailures.d.ts","sourceRoot":"","sources":["../../src/Supervisor/maxFailures.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAElD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAG5C,OAAO,KAAK,IAAI,wBAAsB;AACtC,OAAO,EAAE,YAAY,EAAE,0BAAwB;AAC/C,OAAO,EAAE,OAAO,EAAE,4BAA0B;AAE5C,OAAO,EAAE,KAAK,EAAY,uBAAqB;AAC/C,OAAO,EAAE,YAAY,EAAE,wCAAsC;AAI7D,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAA;IAClB,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAA;IAC5B,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACxC,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAA;CACtC;AAED,MAAM,WAAW,kBAAmB,SAAQ,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,iBAAiB,CAAC;CAAG;AAE5F,wBAAgB,WAAW,CAAC,WAAW,EAAE,kBAAkB,GAAG,UAAU,CAAC,kBAAkB,CAAC,CA0D3F"}
@@ -0,0 +1,45 @@
1
+ import { pipe } from 'hkt-ts';
2
+ import { isRight } from 'hkt-ts/Either';
3
+ import * as Maybe from 'hkt-ts/Maybe';
4
+ import { First } from 'hkt-ts/Typeclass/Associative';
5
+ import { NonNegativeInteger } from 'hkt-ts/number';
6
+ import { Supervisor } from './Supervisor.js';
7
+ import { Atomic, update } from "../Atomic/Atomic.js";
8
+ import * as Exit from "../Exit/Exit.js";
9
+ import { FiberRuntime } from "../FiberRuntime/FiberRuntime.js";
10
+ import { fromLazy } from "../Fx/index.js";
11
+ import { ImmutableMap } from "../ImmutableMap/ImmutableMap.js";
12
+ const concatExitSeq = Exit.makeSequentialAssociative(First).concat;
13
+ export function maxFailures(maxFailures) {
14
+ const state = Atomic(ImmutableMap());
15
+ return new Supervisor(fromLazy(state.get), (fiber, fx) => {
16
+ pipe(state, update((fibers) => {
17
+ return fibers.has(fiber.id)
18
+ ? fibers
19
+ : fibers.set(fiber.id, {
20
+ fx,
21
+ fiber,
22
+ exit: Maybe.Nothing,
23
+ failures: NonNegativeInteger(0),
24
+ });
25
+ }));
26
+ }, (fiber, exit) => {
27
+ pipe(state, update((fibers) => pipe(fibers.get(fiber.id), Maybe.match(() => fibers, (s) => {
28
+ const nextIteration = NonNegativeInteger(s.failures + 1);
29
+ // If we succeeded, remove the fiber from state.
30
+ if (isRight(exit) || nextIteration > maxFailures) {
31
+ return fibers.remove(fiber.id);
32
+ }
33
+ // Retry this Fx
34
+ const nextFiber = new FiberRuntime(s.fx, s.fiber.context.fork());
35
+ nextFiber.startAsync();
36
+ return fibers.set(fiber.id, {
37
+ ...s,
38
+ exit: pipe(s.exit, Maybe.map((e) => concatExitSeq(e, exit)), Maybe.orElse(() => Maybe.Just(exit))),
39
+ fiber: nextFiber,
40
+ failures: nextIteration,
41
+ });
42
+ }))));
43
+ });
44
+ }
45
+ //# sourceMappingURL=maxFailures.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"maxFailures.js","sourceRoot":"","sources":["../../src/Supervisor/maxFailures.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAA;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAElD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAE5C,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,4BAA0B;AACnD,OAAO,KAAK,IAAI,wBAAsB;AAGtC,OAAO,EAAE,YAAY,EAAE,wCAAsC;AAC7D,OAAO,EAAS,QAAQ,EAAE,uBAAqB;AAC/C,OAAO,EAAE,YAAY,EAAE,wCAAsC;AAE7D,MAAM,aAAa,GAAG,IAAI,CAAC,yBAAyB,CAAW,KAAK,CAAC,CAAC,MAAM,CAAA;AAW5E,MAAM,UAAU,WAAW,CAAC,WAA+B;IACzD,MAAM,KAAK,GAAG,MAAM,CAAqB,YAAY,EAAE,CAAC,CAAA;IAExD,OAAO,IAAI,UAAU,CACnB,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EACnB,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;QACZ,IAAI,CACF,KAAK,EACL,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE;YAChB,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzB,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE;oBACnB,EAAE;oBACF,KAAK;oBACL,IAAI,EAAE,KAAK,CAAC,OAAO;oBACnB,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAAC;iBAChC,CAAC,CAAA;QACR,CAAC,CAAC,CACH,CAAA;IACH,CAAC,EACD,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QACd,IAAI,CACF,KAAK,EACL,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAChB,IAAI,CACF,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EACpB,KAAK,CAAC,KAAK,CACT,GAAG,EAAE,CAAC,MAAM,EACZ,CAAC,CAAC,EAAE,EAAE;YACJ,MAAM,aAAa,GAAG,kBAAkB,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAA;YAExD,gDAAgD;YAChD,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,aAAa,GAAG,WAAW,EAAE;gBAChD,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;aAC/B;YAED,gBAAgB;YAChB,MAAM,SAAS,GAAG,IAAI,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAA;YAEhE,SAAS,CAAC,UAAU,EAAE,CAAA;YAEtB,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE;gBAC1B,GAAG,CAAC;gBACJ,IAAI,EAAE,IAAI,CACR,CAAC,CAAC,IAAI,EACN,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EACxC,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CACrC;gBACD,KAAK,EAAE,SAAS;gBAChB,QAAQ,EAAE,aAAa;aACxB,CAAC,CAAA;QACJ,CAAC,CACF,CACF,CACF,CACF,CAAA;IACH,CAAC,CACF,CAAA;AACH,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { Supervisor } from './Supervisor.js';
2
+ import { Atomic } from "../Atomic/Atomic.js";
3
+ import { AnyLiveFiber } from "../Fiber/Fiber.js";
4
+ import { FiberId } from "../FiberId/FiberId.js";
5
+ export declare function trackIn(fibers?: Atomic<ReadonlyMap<FiberId.Live, AnyLiveFiber>>): Supervisor<ReadonlyMap<FiberId.Live, AnyLiveFiber>>;
6
+ //# sourceMappingURL=trackIn.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trackIn.d.ts","sourceRoot":"","sources":["../../src/Supervisor/trackIn.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAE5C,OAAO,EAAE,MAAM,EAAU,4BAA0B;AACnD,OAAO,EAAE,YAAY,EAAE,0BAAwB;AAC/C,OAAO,EAAE,OAAO,EAAE,8BAA4B;AAG9C,wBAAgB,OAAO,CACrB,MAAM,GAAE,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,YAAY,CAAC,CAE1C,GACX,UAAU,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAmBrD"}
@@ -0,0 +1,12 @@
1
+ import { pipe } from 'hkt-ts/function';
2
+ import { Supervisor } from './Supervisor.js';
3
+ import { Atomic, update } from "../Atomic/Atomic.js";
4
+ import { fromLazy } from "../Fx/Fx.js";
5
+ export function trackIn(fibers = Atomic(new Map())) {
6
+ return new Supervisor(fromLazy(() => fibers.get()), (fiber) => {
7
+ pipe(fibers, update((fibers) => new Map([...fibers, [fiber.id, fiber]])));
8
+ }, (fiber) => {
9
+ pipe(fibers, update((fibers) => new Map([...fibers].filter(([id]) => id.sequenceNumber !== fiber.id.sequenceNumber))));
10
+ });
11
+ }
12
+ //# sourceMappingURL=trackIn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trackIn.js","sourceRoot":"","sources":["../../src/Supervisor/trackIn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAEtC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAE5C,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,4BAA0B;AAGnD,OAAO,EAAE,QAAQ,EAAE,oBAAkB;AAErC,MAAM,UAAU,OAAO,CACrB,SAA0D,MAAM,CAE9D,IAAI,GAAG,EAAE,CAAC;IAEZ,OAAO,IAAI,UAAU,CACnB,QAAQ,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,EAC5B,CAAC,KAAK,EAAE,EAAE;QACR,IAAI,CACF,MAAM,EACN,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAC5D,CAAA;IACH,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;QACR,IAAI,CACF,MAAM,EACN,MAAM,CACJ,CAAC,MAAM,EAAE,EAAE,CACT,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,cAAc,KAAK,KAAK,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CACvF,CACF,CAAA;IACH,CAAC,CACF,CAAA;AACH,CAAC"}
@@ -34,5 +34,5 @@ export declare function trimOverlappingTraces(current: Trace, incoming: Trace):
34
34
  export interface StackTrace extends Stack<Trace> {
35
35
  }
36
36
  export declare function getTraceUpTo(trace: StackTrace, amount: number): Trace;
37
- export declare function getTrimmedTrace<E>(cause: Cause<E>, stackTrace: StackTrace): Trace;
37
+ export declare function getTrimmedTrace<E>(cause: Cause<E>, stackTrace: StackTrace, targetObject?: Function): Trace;
38
38
  //# sourceMappingURL=Trace.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Trace.d.ts","sourceRoot":"","sources":["../../src/Trace/Trace.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,8BAA8B,CAAA;AACrD,OAAO,KAAK,CAAC,MAAM,wBAAwB,CAAA;AAC3C,OAAO,KAAK,CAAC,MAAM,qBAAqB,CAAA;AACxC,OAAO,KAAK,CAAC,MAAM,2BAA2B,CAAA;AAC9C,OAAO,KAAK,CAAC,MAAM,sBAAsB,CAAA;AAIzC,OAAO,KAAK,EAAE,KAAK,EAAE,0BAAwB;AAC7C,OAAO,EAAE,KAAK,EAAE,0BAAwB;AACxC,OAAO,KAAK,UAAU,+BAA6B;AAEnD,oBAAY,KAAK,GAAG,UAAU,GAAG,eAAe,CAAA;AAIhD,eAAO,MAAM,mBAAmB,UAAW,MAAM,YAAmC,CAAA;AAEpF,yBAAiB,KAAK,CAAC;IACd,MAAM,OAAO;;wCAGH,QAAQ,oBAC+C,CAAA;IAEjE,MAAM,MAAM,UAAW,MAAM,KAAG,eAqBtC,CAAA;CACF;AAED,eAAO,MAAM,UAAU;;CAEb,CAAA;AAEV,oBAAY,UAAU,GAAG,OAAO,UAAU,CAAA;AAE1C,qBAAa,eAAe;IAGd,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,WAAW;IAFnD,QAAQ,CAAC,GAAG,qBAAoB;gBAEX,MAAM,EAAE,UAAU,CAAC,WAAW;CACpD;AAED,eAAO,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAMzB,CAAA;AAEF,eAAO,MAAM,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAW3B,CAAA;AAEF,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC,KAAK,CAYhD,CAAA;AAED,eAAO,MAAM,MAAM,wCAAqB,CAAA;AAExC,eAAO,MAAM,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAGtC,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAO/B,CAAA;AAEF,eAAO,MAAM,KAAK,sBAAc,CAAA;AAEhC,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,GAAG,KAAK,CAiB5E;AAgDD,MAAM,WAAW,UAAW,SAAQ,KAAK,CAAC,KAAK,CAAC;CAAG;AAGnD,wBAAgB,YAAY,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,KAAK,CAcrE;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,SASzE"}
1
+ {"version":3,"file":"Trace.d.ts","sourceRoot":"","sources":["../../src/Trace/Trace.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,8BAA8B,CAAA;AACrD,OAAO,KAAK,CAAC,MAAM,wBAAwB,CAAA;AAC3C,OAAO,KAAK,CAAC,MAAM,qBAAqB,CAAA;AACxC,OAAO,KAAK,CAAC,MAAM,2BAA2B,CAAA;AAC9C,OAAO,KAAK,CAAC,MAAM,sBAAsB,CAAA;AAIzC,OAAO,KAAK,EAAE,KAAK,EAAE,0BAAwB;AAC7C,OAAO,EAAE,KAAK,EAAE,0BAAwB;AACxC,OAAO,KAAK,UAAU,+BAA6B;AAEnD,oBAAY,KAAK,GAAG,UAAU,GAAG,eAAe,CAAA;AAIhD,eAAO,MAAM,mBAAmB,UAAW,MAAM,YAAmC,CAAA;AAEpF,yBAAiB,KAAK,CAAC;IACd,MAAM,OAAO;;wCAGH,QAAQ,oBAC+C,CAAA;IAEjE,MAAM,MAAM,UAAW,MAAM,KAAG,eAqBtC,CAAA;CACF;AAED,eAAO,MAAM,UAAU;;CAEb,CAAA;AAEV,oBAAY,UAAU,GAAG,OAAO,UAAU,CAAA;AAE1C,qBAAa,eAAe;IAGd,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,WAAW;IAFnD,QAAQ,CAAC,GAAG,qBAAoB;gBAEX,MAAM,EAAE,UAAU,CAAC,WAAW;CACpD;AAED,eAAO,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAMzB,CAAA;AAEF,eAAO,MAAM,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAW3B,CAAA;AAEF,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC,KAAK,CAYhD,CAAA;AAED,eAAO,MAAM,MAAM,wCAAqB,CAAA;AAExC,eAAO,MAAM,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAGtC,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAO/B,CAAA;AAEF,eAAO,MAAM,KAAK,sBAAc,CAAA;AAEhC,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,GAAG,KAAK,CAc5E;AAWD,MAAM,WAAW,UAAW,SAAQ,KAAK,CAAC,KAAK,CAAC;CAAG;AAGnD,wBAAgB,YAAY,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,KAAK,CAcrE;AAED,wBAAgB,eAAe,CAAC,CAAC,EAC/B,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,EACf,UAAU,EAAE,UAAU,EAEtB,YAAY,CAAC,EAAE,QAAQ,SAUxB"}
@@ -1,5 +1,6 @@
1
1
  import { pipe } from 'hkt-ts';
2
2
  import * as A from 'hkt-ts/Array';
3
+ import { not } from 'hkt-ts/Predicate';
3
4
  import * as D from 'hkt-ts/Typeclass/Debug';
4
5
  import * as E from 'hkt-ts/Typeclass/Eq';
5
6
  import * as O from 'hkt-ts/Typeclass/Ord';
@@ -90,44 +91,14 @@ export function trimOverlappingTraces(current, incoming) {
90
91
  if (incoming.tag === EmptyTrace.tag) {
91
92
  return current;
92
93
  }
93
- const frames = trimOverlappingFrames(current.frames.slice(0, incoming.frames.length), // Only compare the same amount of values
94
- incoming.frames);
94
+ const frames = trimOverlappingFrames(current.frames, incoming.frames);
95
95
  return frames.length === 0
96
96
  ? EmptyTrace
97
97
  : new StackFrameTrace(trimOverlappingFrames(current.frames, incoming.frames));
98
98
  }
99
99
  function trimOverlappingFrames(current, incoming) {
100
- // Clone our Array for mutation
101
- const outgoing = [...incoming];
102
- let cIndex = current.length - 1;
103
- let iIndex = 0;
104
- let deleted = 0;
105
- for (; cIndex > -1 && iIndex < incoming.length;) {
106
- const c = current[cIndex];
107
- const i = incoming[iIndex];
108
- // If neither are Runtime instructions, lets just break early
109
- if (!(c.tag === 'Runtime' || i.tag === 'Runtime')) {
110
- break;
111
- }
112
- // Skip over custom/instrumented traces
113
- if (c.tag !== 'Runtime') {
114
- cIndex--;
115
- continue;
116
- }
117
- if (i.tag !== 'Runtime') {
118
- iIndex++;
119
- continue;
120
- }
121
- // If we don't have a match, just break
122
- if (!StackFrame.Eq.equals(c, i)) {
123
- break;
124
- }
125
- // Remove this Trace
126
- outgoing.splice(iIndex - deleted++, 1);
127
- cIndex--;
128
- iIndex++;
129
- }
130
- return outgoing;
100
+ const intersected = A.intersection(E.DeepEquals)(incoming)(current.slice(0, incoming.length));
101
+ return incoming.filter(not((a) => A.contains(E.DeepEquals)(a)(intersected)));
131
102
  }
132
103
  // Traverse up the Stack<Trace> for a set amount of StackFrames.
133
104
  export function getTraceUpTo(trace, amount) {
@@ -141,11 +112,13 @@ export function getTraceUpTo(trace, amount) {
141
112
  }
142
113
  return frames.length > 0 ? new StackFrameTrace(frames) : EmptyTrace;
143
114
  }
144
- export function getTrimmedTrace(cause, stackTrace) {
115
+ export function getTrimmedTrace(cause, stackTrace,
116
+ // eslint-disable-next-line @typescript-eslint/ban-types
117
+ targetObject) {
145
118
  const error = (cause.tag === 'Unexpected' || cause.tag === 'Expected') && cause.error instanceof Error
146
119
  ? cause.error
147
120
  : new Error();
148
- const trace = Trace.runtime(error, getTrimmedTrace);
121
+ const trace = Trace.runtime(error, targetObject);
149
122
  const toCompare = getTraceUpTo(stackTrace, trace.frames.length);
150
123
  return trimOverlappingTraces(toCompare, trace);
151
124
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Trace.js","sourceRoot":"","sources":["../../src/Trace/Trace.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Trace.js","sourceRoot":"","sources":["../../src/Trace/Trace.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/Tracing/plugin.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AACzC,OAAO,EAAE,MAAM,YAAY,CAAA;AAM3B,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,YAAY,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CACjE;AAED,eAAO,MAAM,sBAAsB,YAAa,GAAG,OAAO,UAAU,oBAAoB,WAIzE,GAAG,qBAAqB,kBACf,GAAG,UAAU,KAAG,GAAG,UAmF1C,CAAA;;AAED,wBAAuD"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/Tracing/plugin.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AACzC,OAAO,EAAE,MAAM,YAAY,CAAA;AAM3B,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,YAAY,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CACjE;AAED,eAAO,MAAM,sBAAsB,YAAa,GAAG,OAAO,UAAU,oBAAoB,WAIzE,GAAG,qBAAqB,kBACf,GAAG,UAAU,KAAG,GAAG,UA+H1C,CAAA;;AAED,wBAAuD"}
@@ -48,6 +48,36 @@ export const makeTracingTransformer = (program, config) => {
48
48
  ]
49
49
  : node.arguments);
50
50
  }
51
+ if (ts.isNewExpression(node)) {
52
+ // Continue processing any arguments that might be CallExpressions
53
+ const processedArguments = ts.visitNodes(node.arguments, visitor);
54
+ // Resolve signature to get the declaration parameters.
55
+ const signature = checker.getResolvedSignature(node) ?? getSignatureIfSole(checker, node.expression);
56
+ const signatureDeclaration = signature?.getDeclaration();
57
+ const declarationParameters = Array.from(signatureDeclaration?.parameters || []);
58
+ // Grab the last argument and last declaration parameter.
59
+ const lastParameter = processedArguments
60
+ ? processedArguments[processedArguments.length - 1]
61
+ : null;
62
+ const lastDeclarationParameter = declarationParameters[declarationParameters.length - 1];
63
+ // Check if this function should append a trace, and how.
64
+ const isTraceLastParameter = lastDeclarationParameter?.name.getText() === '__trace';
65
+ const haveNotProvidedTrace = processedArguments?.length === declarationParameters.length - 1;
66
+ const traceIsMissingLocation = processedArguments?.length === declarationParameters.length && lastParameter
67
+ ? lastParameter.getText(sourceFile) !== '__trace' &&
68
+ !isInstrumentedTrace(lastParameter.getText(sourceFile))
69
+ : false;
70
+ const shouldAppendTrace = isTraceLastParameter && (haveNotProvidedTrace || traceIsMissingLocation);
71
+ return ts.factory.updateNewExpression(node, ts.visitNode(node.expression, visitor), node.typeArguments, shouldAppendTrace
72
+ ? haveNotProvidedTrace
73
+ ? [...(node.arguments ?? []), getTrace(node.expression)] // Append new Trace
74
+ : [
75
+ // Ammend existing custom Trace with line numbers
76
+ ...(node.arguments ?? []).slice(0, -1),
77
+ getTrace(node.expression, lastParameter.getText(sourceFile)),
78
+ ]
79
+ : node.arguments);
80
+ }
51
81
  // Ensure we traverse through variable declarations
52
82
  if (ts.isVariableDeclaration(node)) {
53
83
  return ts.factory.updateVariableDeclaration(node, node.name, node.exclamationToken, node.type, ts.visitEachChild(node.initializer, visitor, ctx));
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/Tracing/plugin.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,sDAAsD;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AAG/B,OAAO,EAAE,MAAM,YAAY,CAAA;AAE3B,MAAM,kBAAkB,GAAG,6BAA6B,CAAA;AAExD,MAAM,mBAAmB,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AAO7E,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,OAAmB,EAAE,MAA4B,EAAE,EAAE;IAC1F,MAAM,OAAO,GAAG,OAAO,CAAC,cAAc,EAAE,CAAA;IACxC,MAAM,IAAI,GAAG,MAAM,EAAE,IAAI,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,EAAE,CAAA;IAElF,OAAO,CAAC,GAA6B,EAAE,EAAE;QACvC,OAAO,CAAC,UAAyB,EAAiB,EAAE;YAClD,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,YAAY,CAAC,CAAA;YAEvF,SAAS,QAAQ,CAAC,IAAa,EAAE,YAAqB;gBACpD,MAAM,OAAO,GAAG,UAAU,CAAC,6BAA6B,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;gBAEvE,mGAAmG;gBACnG,sDAAsD;gBACtD,MAAM,UAAU,GAAG,EAAE,CAAC,OAAO,CAAC,sBAAsB,CAClD,EAAE,CAAC,OAAO,CAAC,mBAAmB,CAC5B,YAAY,CAAC,CAAC,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAC7D,EACD,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAC/C,EAAE,CAAC,OAAO,CAAC,mBAAmB,CAC5B,IAAI,QAAQ,IAAI,OAAO,CAAC,IAAI,GAAG,CAAC,IAAI,OAAO,CAAC,SAAS,GAAG,CAAC,EAAE,CAC5D,CACF,CAAA;gBAED,OAAO,UAAU,CAAA;YACnB,CAAC;YAED,SAAS,OAAO,CAAC,IAAa;gBAC5B,IAAI,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE;oBAC7B,kEAAkE;oBAClE,MAAM,kBAAkB,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;oBAEjE,uDAAuD;oBACvD,MAAM,SAAS,GACb,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;oBACpF,MAAM,oBAAoB,GAAG,SAAS,EAAE,cAAc,EAAE,CAAA;oBACxD,MAAM,qBAAqB,GAAG,KAAK,CAAC,IAAI,CAAC,oBAAoB,EAAE,UAAU,IAAI,EAAE,CAAC,CAAA;oBAEhF,yDAAyD;oBACzD,MAAM,aAAa,GAAG,kBAAkB,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;oBACvE,MAAM,wBAAwB,GAAG,qBAAqB,CAAC,qBAAqB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;oBAExF,yDAAyD;oBACzD,MAAM,oBAAoB,GAAG,wBAAwB,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,SAAS,CAAA;oBACnF,MAAM,oBAAoB,GACxB,kBAAkB,CAAC,MAAM,KAAK,qBAAqB,CAAC,MAAM,GAAG,CAAC,CAAA;oBAChE,MAAM,sBAAsB,GAC1B,kBAAkB,CAAC,MAAM,KAAK,qBAAqB,CAAC,MAAM,IAAI,aAAa;wBACzE,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,SAAS;4BAC/C,CAAC,mBAAmB,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;wBACzD,CAAC,CAAC,KAAK,CAAA;oBACX,MAAM,iBAAiB,GACrB,oBAAoB,IAAI,CAAC,oBAAoB,IAAI,sBAAsB,CAAC,CAAA;oBAE1E,4BAA4B;oBAC5B,OAAO,EAAE,CAAC,OAAO,CAAC,oBAAoB,CACpC,IAAI,EACJ,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,yBAAyB;oBACjE,IAAI,CAAC,aAAa,EAClB,iBAAiB;wBACf,CAAC,CAAC,oBAAoB;4BACpB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,mBAAmB;4BACpE,CAAC,CAAC;gCACE,iDAAiD;gCACjD,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gCAC9B,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;6BAC7D;wBACL,CAAC,CAAC,IAAI,CAAC,SAAS,CACnB,CAAA;iBACF;gBAED,mDAAmD;gBACnD,IAAI,EAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE;oBAClC,OAAO,EAAE,CAAC,OAAO,CAAC,yBAAyB,CACzC,IAAI,EACJ,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,IAAI,EACT,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,GAAG,CAAC,CAClD,CAAA;iBACF;gBAED,+CAA+C;gBAC/C,OAAO,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,CAAA;YAC9C,CAAC;YAED,OAAO,EAAE,CAAC,cAAc,CAAC,UAAU,EAAE,OAAO,EAAE,GAAG,CAAC,CAAA;QACpD,CAAC,CAAA;IACH,CAAC,CAAA;AACH,CAAC,CAAA;AAED,eAAe,sBAAwC,CAAA;AAEvD,SAAS,kBAAkB,CACzB,OAAuB,EACvB,IAAmB;IAEnB,MAAM,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,iBAAiB,EAAE,CAAA;IAE9D,IAAI,EAAE,EAAE,MAAM,KAAK,CAAC,EAAE;QACpB,OAAO,SAAS,CAAA;KACjB;IAED,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;AAChB,CAAC;AAED,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;AAEzB,SAAS,cAAc,CAAC,CAAS;IAC/B,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;QAClB,OAAO,CAAC,CAAA;KACT;IAED,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;QACzB,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;KACf;IAED,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE;QACpC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;KACnB;IAED,OAAO,CAAC,CAAA;AACV,CAAC;AAED,SAAS,YAAY,CACnB,IAAY,EACZ,YAAuD;IAEvD,IAAI,CAAC,YAAY,EAAE;QACjB,OAAO,IAAI,CAAA;KACZ;IAED,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,YAAY,EAAE;QACrC,MAAM,SAAS,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;QAEvC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;KACnC;IAED,OAAO,IAAI,CAAA;AACb,CAAC"}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/Tracing/plugin.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { SuiteFunction } from 'mocha';
2
+ declare global {
3
+ export interface ImportMeta {
4
+ readonly env: {
5
+ readonly url: string;
6
+ };
7
+ }
8
+ }
9
+ export declare const getFileName: (url: string) => string;
10
+ export declare const getDirname: (url: string) => string;
11
+ export declare const testSuite: SuiteFunction;
12
+ //# sourceMappingURL=suite.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"suite.d.ts","sourceRoot":"","sources":["../../src/_internal/suite.ts"],"names":[],"mappings":"AAEA,OAAO,EAAiC,aAAa,EAAE,MAAM,OAAO,CAAA;AAEpE,OAAO,CAAC,MAAM,CAAC;IACb,MAAM,WAAW,UAAU;QACzB,QAAQ,CAAC,GAAG,EAAE;YACZ,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;SACrB,CAAA;KACF;CACF;AAED,eAAO,MAAM,WAAW,QAAS,MAAM,WAA0B,CAAA;AACjE,eAAO,MAAM,UAAU,QAAS,MAAM,WAAmC,CAAA;AAEzE,eAAO,MAAM,SAAS,EAAE,aAQvB,CAAA"}
@@ -0,0 +1,8 @@
1
+ import { dirname } from 'path';
2
+ export const getFileName = (url) => new URL(url).pathname;
3
+ export const getDirname = (url) => dirname(new URL(url).pathname);
4
+ export const testSuite = Object.assign((title, fn) => fn ? describe(getFileName(title), fn) : describe(getFileName(title)), {
5
+ only: ((title, fn) => describe.only(getFileName(title), fn)),
6
+ skip: (title, fn) => describe.skip(getFileName(title), fn),
7
+ });
8
+ //# sourceMappingURL=suite.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"suite.js","sourceRoot":"","sources":["../../src/_internal/suite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAY9B,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAA;AACjE,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAA;AAEzE,MAAM,CAAC,MAAM,SAAS,GAAkB,MAAM,CAAC,MAAM,CACnD,CAAC,KAAa,EAAE,EAA0B,EAAE,EAAE,CAC5C,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EACtE;IACE,IAAI,EAAE,CAAC,CAAC,KAAa,EAAE,EAAyB,EAAE,EAAE,CAClD,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAA2B;IAClE,IAAI,EAAE,CAAC,KAAa,EAAE,EAAyB,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;CAC1F,CACF,CAAA"}
package/esm/index.d.ts CHANGED
@@ -16,11 +16,13 @@ export * as Finalizer from './Finalizer/index.js';
16
16
  export * as Future from './Future/index.js';
17
17
  export * as Fx from './Fx/index.js';
18
18
  export * from './Fx/index.js';
19
+ export * as ImmutableMap from './ImmutableMap/index.js';
19
20
  export * as Layer from './Layer/index.js';
20
21
  export * as Logger from './Logger/index.js';
21
22
  export * as Platform from './Platform/index.js';
22
- export * as Ref from './Ref/index.js';
23
+ export * as Runtime from './Runtime/index.js';
23
24
  export * as Schedule from './Schedule/index.js';
25
+ export * as Scheduler from './Scheduler/index.js';
24
26
  export * as Scope from './Scope/index.js';
25
27
  export * as Semaphore from './Semaphore/index.js';
26
28
  export * as Service from './Service/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,KAAK,UAAU,MAAM,uBAAuB,CAAA;AACnD,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAA;AAC/C,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAA;AACrC,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,KAAK,YAAY,MAAM,yBAAyB,CAAA;AACvD,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAA;AAC/C,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,YAAY,MAAM,yBAAyB,CAAA;AACvD,OAAO,KAAK,WAAW,MAAM,wBAAwB,CAAA;AACrD,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,EAAE,MAAM,eAAe,CAAA;AACnC,cAAc,eAAe,CAAA;AAC7B,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAA;AAC/C,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAA;AACrC,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAA;AAC/C,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,KAAK,UAAU,MAAM,uBAAuB,CAAA;AACnD,OAAO,KAAK,UAAU,MAAM,uBAAuB,CAAA;AACnD,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAA;AACvC,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAA;AAC/C,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,KAAK,UAAU,MAAM,uBAAuB,CAAA;AACnD,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAA;AAC/C,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAA;AACrC,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,KAAK,YAAY,MAAM,yBAAyB,CAAA;AACvD,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAA;AAC/C,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,YAAY,MAAM,yBAAyB,CAAA;AACvD,OAAO,KAAK,WAAW,MAAM,wBAAwB,CAAA;AACrD,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,EAAE,MAAM,eAAe,CAAA;AACnC,cAAc,eAAe,CAAA;AAC7B,OAAO,KAAK,YAAY,MAAM,yBAAyB,CAAA;AACvD,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAA;AAC/C,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAA;AAC/C,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,KAAK,UAAU,MAAM,uBAAuB,CAAA;AACnD,OAAO,KAAK,UAAU,MAAM,uBAAuB,CAAA;AACnD,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAA;AACvC,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAA;AAC/C,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA"}
package/esm/index.js CHANGED
@@ -33,16 +33,20 @@ export { Future_1 as Future };
33
33
  import * as Fx_1 from './Fx/index.js';
34
34
  export { Fx_1 as Fx };
35
35
  export * from './Fx/index.js';
36
+ import * as ImmutableMap_1 from './ImmutableMap/index.js';
37
+ export { ImmutableMap_1 as ImmutableMap };
36
38
  import * as Layer_1 from './Layer/index.js';
37
39
  export { Layer_1 as Layer };
38
40
  import * as Logger_1 from './Logger/index.js';
39
41
  export { Logger_1 as Logger };
40
42
  import * as Platform_1 from './Platform/index.js';
41
43
  export { Platform_1 as Platform };
42
- import * as Ref_1 from './Ref/index.js';
43
- export { Ref_1 as Ref };
44
+ import * as Runtime_1 from './Runtime/index.js';
45
+ export { Runtime_1 as Runtime };
44
46
  import * as Schedule_1 from './Schedule/index.js';
45
47
  export { Schedule_1 as Schedule };
48
+ import * as Scheduler_1 from './Scheduler/index.js';
49
+ export { Scheduler_1 as Scheduler };
46
50
  import * as Scope_1 from './Scope/index.js';
47
51
  export { Scope_1 as Scope };
48
52
  import * as Semaphore_1 from './Semaphore/index.js';
package/esm/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"0BAAwB,mBAAmB;qBAA/B,MAAM;yBACK,kBAAkB;oBAA7B,KAAK;yBACM,kBAAkB;oBAA7B,KAAK;8BACW,uBAAuB;yBAAvC,UAAU;4BACI,qBAAqB;uBAAnC,QAAQ;uBACC,gBAAgB;kBAAzB,GAAG;wBACO,iBAAiB;mBAA3B,IAAI;yBACO,kBAAkB;oBAA7B,KAAK;gCACa,yBAAyB;2BAA3C,YAAY;2BACC,oBAAoB;sBAAjC,OAAO;4BACO,qBAAqB;uBAAnC,QAAQ;6BACO,sBAAsB;wBAArC,SAAS;gCACS,yBAAyB;2BAA3C,YAAY;+BACK,wBAAwB;0BAAzC,WAAW;6BACI,sBAAsB;wBAArC,SAAS;0BACG,mBAAmB;qBAA/B,MAAM;sBACE,eAAe;iBAAvB,EAAE;AACd,cAAc,eAAe,CAAA;yBACN,kBAAkB;oBAA7B,KAAK;0BACO,mBAAmB;qBAA/B,MAAM;4BACQ,qBAAqB;uBAAnC,QAAQ;uBACC,gBAAgB;kBAAzB,GAAG;4BACW,qBAAqB;uBAAnC,QAAQ;yBACG,kBAAkB;oBAA7B,KAAK;6BACU,sBAAsB;wBAArC,SAAS;2BACI,oBAAoB;sBAAjC,OAAO;yBACI,kBAAkB;oBAA7B,KAAK;8BACW,uBAAuB;yBAAvC,UAAU;8BACM,uBAAuB;yBAAvC,UAAU;0BACE,mBAAmB;qBAA/B,MAAM;wBACI,iBAAiB;mBAA3B,IAAI;4BACU,qBAAqB;uBAAnC,QAAQ;yBACG,kBAAkB;oBAA7B,KAAK;yBACM,kBAAkB;oBAA7B,KAAK"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"0BAAwB,mBAAmB;qBAA/B,MAAM;yBACK,kBAAkB;oBAA7B,KAAK;yBACM,kBAAkB;oBAA7B,KAAK;8BACW,uBAAuB;yBAAvC,UAAU;4BACI,qBAAqB;uBAAnC,QAAQ;uBACC,gBAAgB;kBAAzB,GAAG;wBACO,iBAAiB;mBAA3B,IAAI;yBACO,kBAAkB;oBAA7B,KAAK;gCACa,yBAAyB;2BAA3C,YAAY;2BACC,oBAAoB;sBAAjC,OAAO;4BACO,qBAAqB;uBAAnC,QAAQ;6BACO,sBAAsB;wBAArC,SAAS;gCACS,yBAAyB;2BAA3C,YAAY;+BACK,wBAAwB;0BAAzC,WAAW;6BACI,sBAAsB;wBAArC,SAAS;0BACG,mBAAmB;qBAA/B,MAAM;sBACE,eAAe;iBAAvB,EAAE;AACd,cAAc,eAAe,CAAA;gCACC,yBAAyB;2BAA3C,YAAY;yBACD,kBAAkB;oBAA7B,KAAK;0BACO,mBAAmB;qBAA/B,MAAM;4BACQ,qBAAqB;uBAAnC,QAAQ;2BACK,oBAAoB;sBAAjC,OAAO;4BACO,qBAAqB;uBAAnC,QAAQ;6BACO,sBAAsB;wBAArC,SAAS;yBACE,kBAAkB;oBAA7B,KAAK;6BACU,sBAAsB;wBAArC,SAAS;2BACI,oBAAoB;sBAAjC,OAAO;yBACI,kBAAkB;oBAA7B,KAAK;8BACW,uBAAuB;yBAAvC,UAAU;8BACM,uBAAuB;yBAAvC,UAAU;0BACE,mBAAmB;qBAA/B,MAAM;wBACI,iBAAiB;mBAA3B,IAAI;4BACU,qBAAqB;uBAAnC,QAAQ;yBACG,kBAAkB;oBAA7B,KAAK;yBACM,kBAAkB;oBAA7B,KAAK"}