@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
package/cjs/Fx/scoped.js CHANGED
@@ -1,52 +1,62 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  Object.defineProperty(exports, "__esModule", { value: true });
3
26
  exports.fiberScoped = exports.bracket = exports.managed = exports.scoped = void 0;
4
27
  const function_1 = require("hkt-ts/function");
5
- const Fx_js_1 = require("./Fx.js");
28
+ const Fx = __importStar(require("./Fx.js"));
6
29
  const Finalizer_js_1 = require("../Finalizer/Finalizer.js");
7
30
  const Scope_js_1 = require("../Scope/Scope.js");
8
31
  /**
9
32
  * Run a Scoped Fx within an isolated Scope, cleaning up those resources as soon as complete.
10
33
  */
11
34
  function scoped(scoped, strategy = Finalizer_js_1.ConcurrentStrategy) {
12
- return (0, Fx_js_1.Fx)(function* () {
13
- const { scope: fiberScope } = yield* Fx_js_1.getFiberContext;
35
+ return (0, function_1.pipe)(Fx.getFiberContext, Fx.flatMap(({ scope: fiberScope }) => {
14
36
  const scope = fiberScope.fork(strategy);
15
- return yield* (0, function_1.pipe)(scoped, (0, Fx_js_1.provideService)(Scope_js_1.Scope, scope), (0, Fx_js_1.ensuring)(scope.close));
16
- }, "Fx" + " node_modules/@typed/fx/src/Fx/scoped.ts:24:12");
37
+ return (0, function_1.pipe)(scoped, Fx.provideService(Scope_js_1.Scope, scope), Fx.ensuring(scope.close));
38
+ }));
17
39
  }
18
40
  exports.scoped = scoped;
19
41
  /**
20
42
  * Track a Resource within a given Scoped environment
21
43
  */
22
44
  function managed(acquire, release) {
23
- return (0, Fx_js_1.uninterruptable)((0, Fx_js_1.Fx)(function* () {
24
- const scope = yield* (0, Fx_js_1.ask)(Scope_js_1.Scope);
25
- const env = yield* (0, Fx_js_1.getEnv)();
26
- const a = yield* acquire;
27
- scope.ensuring(() => (0, function_1.pipe)(a, release, (0, Fx_js_1.provide)(env)));
28
- return a;
29
- }));
45
+ return (0, function_1.pipe)(Fx.ask(Scope_js_1.Scope), Fx.bindTo('scope'), Fx.bind('env', () => Fx.getEnv()), Fx.bind('a', () => acquire), Fx.tap(({ scope, env, a }) => Fx.fromLazy(() => scope.ensuring(() => (0, function_1.pipe)(a, release, Fx.provide(env))))), Fx.map(({ a }) => a), Fx.uninterruptable);
30
46
  }
31
47
  exports.managed = managed;
32
48
  /**
33
49
  * Perform an effect with an aquired resource with the release of that resource.
34
50
  */
35
51
  function bracket(acquire, withResource, release) {
36
- return (0, Fx_js_1.Fx)(function* () {
37
- const a = yield* managed(acquire, release);
38
- return yield* withResource(a);
39
- }, "Fx" + " node_modules/@typed/fx/src/Fx/scoped.ts:61:12");
52
+ return (0, function_1.pipe)(managed(acquire, release), Fx.flatMap(withResource));
40
53
  }
41
54
  exports.bracket = bracket;
42
55
  /**
43
56
  * Run a Scoped Fx within an isolated Scope, cleaning up those resources as soon as complete.
44
57
  */
45
58
  function fiberScoped(scoped) {
46
- return (0, Fx_js_1.Fx)(function* () {
47
- const { scope } = yield* Fx_js_1.getFiberContext;
48
- return yield* (0, function_1.pipe)(scoped, (0, Fx_js_1.provideService)(Scope_js_1.Scope, scope));
49
- }, "Fx" + " node_modules/@typed/fx/src/Fx/scoped.ts:72:12");
59
+ return (0, function_1.pipe)(Fx.getFiberContext, Fx.flatMap(({ scope }) => (0, function_1.pipe)(scoped, Fx.provideService(Scope_js_1.Scope, scope))));
50
60
  }
51
61
  exports.fiberScoped = fiberScoped;
52
62
  //# sourceMappingURL=scoped.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"scoped.js","sourceRoot":"","sources":["../../src/Fx/scoped.ts"],"names":[],"mappings":";;;AAAA,8CAAsC;AAEtC,mCASgB;AAEhB,4DAAmF;AACnF,gDAAwC;AAExC;;GAEG;AACH,SAAgB,MAAM,CACpB,MAA2B,EAC3B,WAAiC,iCAAkB;IAEnD,OAAO,IAAA,UAAE,EAAC,QAAQ,CAAC;QACjB,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC,CAAC,uBAAe,CAAA;QACpD,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAEvC,OAAO,KAAK,CAAC,CAAC,IAAA,eAAI,EAAC,MAAM,EAAE,IAAA,sBAAc,EAAC,gBAAK,EAAE,KAAK,CAAC,EAAE,IAAA,gBAAQ,EAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAA;IACjF,CAAC,0DAAC,CAAA;AACJ,CAAC;AAVD,wBAUC;AAED;;GAEG;AACH,SAAgB,OAAO,CACrB,OAAoB,EACpB,OAAyC;IAEzC,OAAO,IAAA,uBAAe,EACpB,IAAA,UAAE,EAAC,QAAQ,CAAC;QACV,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,IAAA,WAAG,EAAC,gBAAK,CAAC,CAAA;QAC/B,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,IAAA,cAAM,GAAU,CAAA;QAEnC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,OAAO,CAAA;QAExB,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAA,eAAI,EAAC,CAAC,EAAE,OAAO,EAAE,IAAA,eAAO,EAAC,GAAG,CAAC,CAAC,CAAC,CAAA;QAEpD,OAAO,CAAC,CAAA;IACV,CAAC,CAAC,CACH,CAAA;AACH,CAAC;AAhBD,0BAgBC;AAED;;GAEG;AACH,SAAgB,OAAO,CACrB,OAAoB,EACpB,YAAqC,EACrC,OAAyC;IAEzC,OAAO,IAAA,UAAE,EAAC,QAAQ,CAAC;QACjB,MAAM,CAAC,GAAM,KAAK,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QAE7C,OAAO,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;IAC/B,CAAC,0DAAC,CAAA;AACJ,CAAC;AAVD,0BAUC;AAED;;GAEG;AACH,SAAgB,WAAW,CAAU,MAA2B;IAC9D,OAAO,IAAA,UAAE,EAAC,QAAQ,CAAC;QACjB,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,CAAC,uBAAe,CAAA;QAExC,OAAO,KAAK,CAAC,CAAC,IAAA,eAAI,EAAC,MAAM,EAAE,IAAA,sBAAc,EAAC,gBAAK,EAAE,KAAK,CAAC,CAAC,CAAA;IAC1D,CAAC,0DAAC,CAAA;AACJ,CAAC;AAND,kCAMC"}
1
+ {"version":3,"file":"scoped.js","sourceRoot":"","sources":["../../src/Fx/scoped.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAsC;AAEtC,4CAA6B;AAE7B,4DAAmF;AACnF,gDAAwC;AAExC;;GAEG;AACH,SAAgB,MAAM,CACpB,MAA8B,EAC9B,WAAiC,iCAAkB;IAEnD,OAAO,IAAA,eAAI,EACT,EAAE,CAAC,eAAe,EAClB,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE;QACnC,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAEvC,OAAO,IAAA,eAAI,EAAC,MAAM,EAAE,EAAE,CAAC,cAAc,CAAC,gBAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAA;IAChF,CAAC,CAAC,CACH,CAAA;AACH,CAAC;AAZD,wBAYC;AAED;;GAEG;AACH,SAAgB,OAAO,CACrB,OAAuB,EACvB,OAA4C;IAE5C,OAAO,IAAA,eAAI,EACT,EAAE,CAAC,GAAG,CAAC,gBAAK,CAAC,EACb,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAClB,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,MAAM,EAAU,CAAC,EACzC,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,EAC3B,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAC3B,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAA,eAAI,EAAC,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAC3E,EACD,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EACpB,EAAE,CAAC,eAAe,CACnB,CAAA;AACH,CAAC;AAfD,0BAeC;AAED;;GAEG;AACH,SAAgB,OAAO,CACrB,OAAuB,EACvB,YAAwC,EACxC,OAA4C;IAE5C,OAAO,IAAA,eAAI,EAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAA;AAClE,CAAC;AAND,0BAMC;AAED;;GAEG;AACH,SAAgB,WAAW,CACzB,MAA8B;IAE9B,OAAO,IAAA,eAAI,EACT,EAAE,CAAC,eAAe,EAClB,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,IAAA,eAAI,EAAC,MAAM,EAAE,EAAE,CAAC,cAAc,CAAC,gBAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CACzE,CAAA;AACH,CAAC;AAPD,kCAOC"}
@@ -11,4 +11,5 @@ export declare type ErrorsOf<T> = T extends Layer<infer _R, infer _E, infer _A>
11
11
  export declare type OutputOf<T> = T extends Layer<infer _R, infer _E, infer _A> ? _A : never;
12
12
  export declare function Layer<R, E, A>(service: Service<A>, build: Layer<R, E, A>['build']): Layer<R, E, A>;
13
13
  export declare function fromFx<S, R, E, A extends S>(s: Service<S>, fx: Fx.Fx<R | Scope, E, A>): Layer<R, E, S>;
14
+ export declare function orElse<E, A, R2, E2, B extends A>(orElse: (e: E) => Layer<R2, E2, B>): <R>(layer: Layer<R, E, A>) => Layer<R2 | R, E2, A>;
14
15
  //# sourceMappingURL=Layer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Layer.d.ts","sourceRoot":"","sources":["../../src/Layer/Layer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAkB;AAChC,OAAO,EAAE,KAAK,EAAE,0BAAwB;AACxC,OAAO,EAAE,OAAO,EAAE,8BAA4B;AAO9C,MAAM,WAAW,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;IAC5B,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;CACjD;AAED,oBAAY,QAAQ,GAChB,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GACpB,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,GACxB,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,GACtB,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,CAAA;AAG1B,oBAAY,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,CAAA;AACvF,oBAAY,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,CAAA;AACpF,oBAAY,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,CAAA;AAGpF,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAC3B,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EACnB,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAC7B,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAKhB;AAED,wBAAgB,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,EACzC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,EACb,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,GACzB,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAEhB"}
1
+ {"version":3,"file":"Layer.d.ts","sourceRoot":"","sources":["../../src/Layer/Layer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAkB;AAChC,OAAO,EAAE,KAAK,EAAE,0BAAwB;AACxC,OAAO,EAAE,OAAO,EAAE,8BAA4B;AAE9C,MAAM,WAAW,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;IAC5B,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;CACjD;AAED,oBAAY,QAAQ,GAChB,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GACpB,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,GACxB,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,GACtB,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,CAAA;AAG1B,oBAAY,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,CAAA;AACvF,oBAAY,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,CAAA;AACpF,oBAAY,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,CAAA;AAGpF,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAC3B,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EACnB,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAC7B,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAKhB;AAED,wBAAgB,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,EACzC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,EACb,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,GACzB,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAEhB;AAED,wBAAgB,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,sDASnF"}
@@ -23,7 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.fromFx = exports.Layer = void 0;
26
+ exports.orElse = exports.fromFx = exports.Layer = void 0;
27
27
  const function_1 = require("hkt-ts/function");
28
28
  const Fx = __importStar(require("../Fx/Fx.js"));
29
29
  const Scope_js_1 = require("../Scope/Scope.js");
@@ -39,4 +39,10 @@ function fromFx(s, fx) {
39
39
  return Layer(s, (scope) => (0, function_1.pipe)(fx, Fx.provideService(Scope_js_1.Scope, scope)));
40
40
  }
41
41
  exports.fromFx = fromFx;
42
+ function orElse(orElse) {
43
+ return (layer) => {
44
+ return Layer(layer.service, (scope) => (0, function_1.pipe)(layer.build(scope), Fx.orElse((e) => orElse(e).build(scope))));
45
+ };
46
+ }
47
+ exports.orElse = orElse;
42
48
  //# sourceMappingURL=Layer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Layer.js","sourceRoot":"","sources":["../../src/Layer/Layer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAsC;AAEtC,gDAAgC;AAChC,gDAAwC;AAuBxC,qDAAqD;AAErD,SAAgB,KAAK,CACnB,OAAmB,EACnB,KAA8B;IAE9B,OAAO;QACL,OAAO;QACP,KAAK;KACN,CAAA;AACH,CAAC;AARD,sBAQC;AAED,SAAgB,MAAM,CACpB,CAAa,EACb,EAA0B;IAE1B,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAA,eAAI,EAAC,EAAE,EAAE,EAAE,CAAC,cAAc,CAAC,gBAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;AACvE,CAAC;AALD,wBAKC"}
1
+ {"version":3,"file":"Layer.js","sourceRoot":"","sources":["../../src/Layer/Layer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAsC;AAEtC,gDAAgC;AAChC,gDAAwC;AAkBxC,qDAAqD;AAErD,SAAgB,KAAK,CACnB,OAAmB,EACnB,KAA8B;IAE9B,OAAO;QACL,OAAO;QACP,KAAK;KACN,CAAA;AACH,CAAC;AARD,sBAQC;AAED,SAAgB,MAAM,CACpB,CAAa,EACb,EAA0B;IAE1B,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAA,eAAI,EAAC,EAAE,EAAE,EAAE,CAAC,cAAc,CAAC,gBAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;AACvE,CAAC;AALD,wBAKC;AAED,SAAgB,MAAM,CAA4B,MAAkC;IAClF,OAAO,CAAI,KAAqB,EAAwB,EAAE;QACxD,OAAO,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACpC,IAAA,eAAI,EACF,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,EAClB,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CACzC,CACF,CAAA;IACH,CAAC,CAAA;AACH,CAAC;AATD,wBASC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Console.d.ts","sourceRoot":"","sources":["../../src/Logger/Console.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAOpC,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAqBxC,CAAA"}
1
+ {"version":3,"file":"Console.d.ts","sourceRoot":"","sources":["../../src/Logger/Console.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAQpC,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAkCxC,CAAA"}
@@ -1,28 +1,57 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  Object.defineProperty(exports, "__esModule", { value: true });
3
26
  exports.Console = void 0;
27
+ const hkt_ts_1 = require("hkt-ts");
4
28
  const LogLevel_js_1 = require("./LogLevel.js");
5
29
  const index_js_1 = require("../Clock/index.js");
6
30
  const Duration_js_1 = require("../Duration/Duration.js");
7
- const Fx_js_1 = require("../Fx/Fx.js");
31
+ const Fx = __importStar(require("../Fx/Fx.js"));
8
32
  const index_js_2 = require("../Time/index.js");
33
+ const Trace = __importStar(require("../Trace/index.js"));
9
34
  exports.Console = {
10
- log: (input, level, id, logSpans, logAnnotations) => (0, Fx_js_1.Fx)(function* () {
35
+ log: (input, level, id, logSpans, logAnnotations, trace) => Fx.lazy(() => {
11
36
  if (level === LogLevel_js_1.LogLevel.None) {
12
- return;
37
+ return Fx.unit;
13
38
  }
14
- const { platform } = yield* Fx_js_1.getFiberContext;
15
- const now = platform.timer.getCurrentTime();
16
- const message = [
17
- `timestamp=${getIsoString(now, platform.timer)}`,
18
- `level=${formatLogLevel(level)}`,
19
- `fiber=${id.sequenceNumber}`,
20
- ...logSpans.map(formatLogSpan(now)),
21
- ...logAnnotations.map(formatlogAnnotation),
22
- `message=${input}`,
23
- ].join('; ');
24
- logWithLevel(message, level);
25
- }, "Fx" + " node_modules/@typed/fx/src/Logger/Console.ts:13:7"),
39
+ return (0, hkt_ts_1.pipe)(Fx.getPlatform, Fx.flatMap((platform) => Fx.lazy(() => {
40
+ const now = platform.timer.getCurrentTime();
41
+ const message = [
42
+ `timestamp=${getIsoString(now, platform.timer)}`,
43
+ `level=${formatLogLevel(level)}`,
44
+ `fiber=${id.sequenceNumber}`,
45
+ ...logSpans.map(formatLogSpan(now)),
46
+ ...logAnnotations.map(formatlogAnnotation),
47
+ `message=${input}`,
48
+ ].join('; ');
49
+ logWithLevel(trace.tag !== 'EmptyTrace'
50
+ ? message + '\n ' + Trace.debug(trace).replaceAll('\n', '\n ')
51
+ : message, level);
52
+ return Fx.unit;
53
+ })));
54
+ }, "Fx.lazy" + " node_modules/@typed/fx/src/Logger/Console.ts:16:12"),
26
55
  };
27
56
  function formatLogLevel(level) {
28
57
  switch (level) {
@@ -54,9 +83,8 @@ function logWithLevel(message, level) {
54
83
  case LogLevel_js_1.LogLevel.Info:
55
84
  return console.info(message);
56
85
  case LogLevel_js_1.LogLevel.Log:
57
- return console.log(message);
58
86
  case LogLevel_js_1.LogLevel.Trace:
59
- return console.trace(message);
87
+ return console.log(message);
60
88
  case LogLevel_js_1.LogLevel.Debug:
61
89
  return console.debug(message);
62
90
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Console.js","sourceRoot":"","sources":["../../src/Logger/Console.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Console.js","sourceRoot":"","sources":["../../src/Logger/Console.ts"],"names":[],"mappings":"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"}
@@ -9,8 +9,9 @@ import { LogLevel } from './LogLevel.js';
9
9
  import { LogSpan } from './LogSpan.js';
10
10
  import { FiberId } from "../FiberId/FiberId.js";
11
11
  import * as Fx from "../Fx/Fx.js";
12
+ import { Trace } from "../Trace/Trace.js";
12
13
  export interface Logger<A, B> {
13
- readonly log: (input: A, level: LogLevel, id: FiberId.Live, logSpans: ReadonlyArray<LogSpan>, logAnnotations: ReadonlyArray<LogAnnotation>) => Fx.Of<B>;
14
+ readonly log: (input: A, level: LogLevel, id: FiberId.Live, logSpans: ReadonlyArray<LogSpan>, logAnnotations: ReadonlyArray<LogAnnotation>, trace: Trace) => Fx.Of<B>;
14
15
  }
15
16
  export declare function Logger<A, B>(log: Logger<A, B>['log']): Logger<A, B>;
16
17
  export declare function both<A, C>(second: Logger<A, C>): <B>(first: Logger<A, B>) => Logger<A, readonly [B, C]>;
@@ -1 +1 @@
1
- {"version":3,"file":"Logger.d.ts","sourceRoot":"","sources":["../../src/Logger/Logger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAQ,MAAM,QAAQ,CAAA;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AACtC,OAAO,EAAQ,KAAK,EAAW,MAAM,cAAc,CAAA;AACnD,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAA;AAC/C,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAA;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AAEpC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC,OAAO,EAAE,OAAO,EAAE,8BAA4B;AAC9C,OAAO,KAAK,EAAE,oBAAkB;AAKhC,MAAM,WAAW,MAAM,CAAC,CAAC,EAAE,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,CACZ,KAAK,EAAE,CAAC,EACR,KAAK,EAAE,QAAQ,EACf,EAAE,EAAE,OAAO,CAAC,IAAI,EAChB,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,EAChC,cAAc,EAAE,aAAa,CAAC,aAAa,CAAC,KACzC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;CACd;AAED,wBAAgB,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAEnE;AAED,wBAAgB,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,0DAG9C;AAED,wBAAgB,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,uDAGhD;AAED,MAAM,WAAW,SAAU,SAAQ,IAAI;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;CACtD;AAED,eAAO,MAAM,SAAS,EAAE,CAAC,CAAC,UAAU,CAAC,SAAS,CAO7C,CAAA;AAED,eAAO,MAAM,KAAK,sFAAkB,CAAA;AAEpC,eAAO,MAAM,SAAS,mEAAyB,CAAA;AAC/C,eAAO,MAAM,GAAG,mEAAmB,CAAA;AAEnC,eAAO,MAAM,SAAS,EAAE,CAAC,CAAC,UAAU,CAAC,SAAS,CAE7C,CAAA;AAED,eAAO,MAAM,MAAM,mGAAsB,CAAA;AACzC,eAAO,MAAM,IAAI,mEAAoB,CAAA;AACrC,eAAO,MAAM,KAAK,yDAAqB,CAAA;AACvC,eAAO,MAAM,MAAM,uDAAsB,CAAA;AAEzC,eAAO,MAAM,cAAc,sBACL,QAAQ,KAAK,OAAO,wDAatC,CAAA"}
1
+ {"version":3,"file":"Logger.d.ts","sourceRoot":"","sources":["../../src/Logger/Logger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAQ,MAAM,QAAQ,CAAA;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AACtC,OAAO,EAAQ,KAAK,EAAW,MAAM,cAAc,CAAA;AACnD,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAA;AAC/C,OAAO,KAAK,CAAC,MAAM,4BAA4B,CAAA;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AAEpC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC,OAAO,EAAE,OAAO,EAAE,8BAA4B;AAC9C,OAAO,KAAK,EAAE,oBAAkB;AAChC,OAAO,EAAE,KAAK,EAAE,0BAAwB;AAKxC,MAAM,WAAW,MAAM,CAAC,CAAC,EAAE,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,CACZ,KAAK,EAAE,CAAC,EACR,KAAK,EAAE,QAAQ,EACf,EAAE,EAAE,OAAO,CAAC,IAAI,EAChB,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,EAChC,cAAc,EAAE,aAAa,CAAC,aAAa,CAAC,EAC5C,KAAK,EAAE,KAAK,KACT,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;CACd;AAED,wBAAgB,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAEnE;AAED,wBAAgB,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,0DAG9C;AAED,wBAAgB,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,uDAGhD;AAED,MAAM,WAAW,SAAU,SAAQ,IAAI;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;CACtD;AAED,eAAO,MAAM,SAAS,EAAE,CAAC,CAAC,UAAU,CAAC,SAAS,CAO7C,CAAA;AAED,eAAO,MAAM,KAAK,sFAAkB,CAAA;AAEpC,eAAO,MAAM,SAAS,mEAAyB,CAAA;AAC/C,eAAO,MAAM,GAAG,mEAAmB,CAAA;AAEnC,eAAO,MAAM,SAAS,EAAE,CAAC,CAAC,UAAU,CAAC,SAAS,CAE7C,CAAA;AAED,eAAO,MAAM,MAAM,mGAAsB,CAAA;AACzC,eAAO,MAAM,IAAI,mEAAoB,CAAA;AACrC,eAAO,MAAM,KAAK,yDAAqB,CAAA;AACvC,eAAO,MAAM,MAAM,uDAAsB,CAAA;AAEzC,eAAO,MAAM,cAAc,sBACL,QAAQ,KAAK,OAAO,wDAatC,CAAA"}
@@ -42,7 +42,7 @@ function either(second) {
42
42
  }
43
43
  exports.either = either;
44
44
  exports.Divariant = {
45
- dimap: (f, g) => (logger) => Logger((i, level, id, logSpans, logAnnotations) => Fx.map(g)(logger.log(f(i), level, id, logSpans, logAnnotations))),
45
+ dimap: (f, g) => (logger) => Logger((i, level, id, logSpans, logAnnotations, trace) => Fx.map(g)(logger.log(f(i), level, id, logSpans, logAnnotations, trace))),
46
46
  };
47
47
  exports.dimap = exports.Divariant.dimap;
48
48
  exports.contramap = D.contramap(exports.Divariant);
@@ -60,7 +60,7 @@ const filterLogLevel = (predicate) => (logger) => ({
60
60
  return (0, hkt_ts_1.pipe)(logger.log(...args), Fx.map((a) => (0, Maybe_1.Just)(a)));
61
61
  }
62
62
  return Fx.now(Maybe_1.Nothing);
63
- }, "Fx.lazy" + " node_modules/@typed/fx/src/Logger/Logger.ts:73:14"),
63
+ }, "Fx.lazy" + " node_modules/@typed/fx/src/Logger/Logger.ts:75:14"),
64
64
  });
65
65
  exports.filterLogLevel = filterLogLevel;
66
66
  //# sourceMappingURL=Logger.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Logger.js","sourceRoot":"","sources":["../../src/Logger/Logger.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mCAA2C;AAE3C,wCAAmD;AACnD,8DAA+C;AAC/C,8DAA+C;AAQ/C,gDAAgC;AAehC,SAAgB,MAAM,CAAO,GAAwB;IACnD,OAAO,EAAE,GAAG,EAAE,CAAA;AAChB,CAAC;AAFD,wBAEC;AAED,SAAgB,IAAI,CAAO,MAAoB;IAC7C,OAAO,CAAI,KAAmB,EAA8B,EAAE,CAC5D,MAAM,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;AACzE,CAAC;AAHD,oBAGC;AAED,SAAgB,MAAM,CAAO,MAAoB;IAC/C,OAAO,CAAI,KAAmB,EAA2B,EAAE,CACzD,MAAM,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;AAC3E,CAAC;AAHD,wBAGC;AAMY,QAAA,SAAS,GAA4B;IAChD,KAAK,EACH,CAAa,CAAc,EAAE,CAAc,EAAE,EAAE,CAC/C,CAAC,MAAoB,EAAE,EAAE,CACvB,MAAM,CAAC,CAAC,CAAI,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,CACnD,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC,CACjE;CACN,CAAA;AAEY,QAAA,KAAK,GAAG,iBAAS,CAAC,KAAK,CAAA;AAEvB,QAAA,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,iBAAS,CAAC,CAAA;AAClC,QAAA,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,iBAAS,CAAC,CAAA;AAEtB,QAAA,SAAS,GAA4B;IAChD,GAAG,EAAH,WAAG;CACJ,CAAA;AAEY,QAAA,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,iBAAS,CAAC,CAAA;AAC5B,QAAA,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,iBAAS,CAAC,CAAA;AACxB,QAAA,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,iBAAS,CAAC,CAAA;AAC1B,QAAA,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,iBAAS,CAAC,CAAA;AAElC,MAAM,cAAc,GACzB,CAAC,SAAuC,EAAE,EAAE,CAC5C,CAAO,MAAoB,EAAuB,EAAE,CAAC,CAAC;IACpD,GAAG,EAAE,CAAC,GAAG,IAAI,EAAmB,EAAE,CAChC,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QACX,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;YACtB,OAAO,IAAA,aAAI,EACT,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,EACnB,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,YAAI,EAAC,CAAC,CAAa,CAAC,CACnC,CAAA;SACF;QAED,OAAO,EAAE,CAAC,GAAG,CAAW,eAAO,CAAC,CAAA;IAClC,CAAC,mEAAC;CACL,CAAC,CAAA;AAdS,QAAA,cAAc,kBAcvB"}
1
+ {"version":3,"file":"Logger.js","sourceRoot":"","sources":["../../src/Logger/Logger.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mCAA2C;AAE3C,wCAAmD;AACnD,8DAA+C;AAC/C,8DAA+C;AAQ/C,gDAAgC;AAiBhC,SAAgB,MAAM,CAAO,GAAwB;IACnD,OAAO,EAAE,GAAG,EAAE,CAAA;AAChB,CAAC;AAFD,wBAEC;AAED,SAAgB,IAAI,CAAO,MAAoB;IAC7C,OAAO,CAAI,KAAmB,EAA8B,EAAE,CAC5D,MAAM,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;AACzE,CAAC;AAHD,oBAGC;AAED,SAAgB,MAAM,CAAO,MAAoB;IAC/C,OAAO,CAAI,KAAmB,EAA2B,EAAE,CACzD,MAAM,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;AAC3E,CAAC;AAHD,wBAGC;AAMY,QAAA,SAAS,GAA4B;IAChD,KAAK,EACH,CAAa,CAAc,EAAE,CAAc,EAAE,EAAE,CAC/C,CAAC,MAAoB,EAAE,EAAE,CACvB,MAAM,CAAC,CAAC,CAAI,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,KAAK,EAAE,EAAE,CAC1D,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC,CACxE;CACN,CAAA;AAEY,QAAA,KAAK,GAAG,iBAAS,CAAC,KAAK,CAAA;AAEvB,QAAA,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,iBAAS,CAAC,CAAA;AAClC,QAAA,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,iBAAS,CAAC,CAAA;AAEtB,QAAA,SAAS,GAA4B;IAChD,GAAG,EAAH,WAAG;CACJ,CAAA;AAEY,QAAA,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,iBAAS,CAAC,CAAA;AAC5B,QAAA,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,iBAAS,CAAC,CAAA;AACxB,QAAA,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,iBAAS,CAAC,CAAA;AAC1B,QAAA,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,iBAAS,CAAC,CAAA;AAElC,MAAM,cAAc,GACzB,CAAC,SAAuC,EAAE,EAAE,CAC5C,CAAO,MAAoB,EAAuB,EAAE,CAAC,CAAC;IACpD,GAAG,EAAE,CAAC,GAAG,IAAI,EAAmB,EAAE,CAChC,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QACX,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;YACtB,OAAO,IAAA,aAAI,EACT,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,EACnB,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,YAAI,EAAC,CAAC,CAAa,CAAC,CACnC,CAAA;SACF;QAED,OAAO,EAAE,CAAC,GAAG,CAAW,eAAO,CAAC,CAAA;IAClC,CAAC,mEAAC;CACL,CAAC,CAAA;AAdS,QAAA,cAAc,kBAcvB"}
@@ -0,0 +1,9 @@
1
+ import { Atomic } from "../Atomic/index.js";
2
+ import { AnyLiveFiber } from "../Fiber/Fiber.js";
3
+ import { FiberId } from "../FiberId/FiberId.js";
4
+ import { Runtime } from "../Runtime/Runtime.js";
5
+ export declare const NodeFibers: Atomic<ReadonlyMap<FiberId.Live, AnyLiveFiber>>;
6
+ export declare const NodeSupervisor: import("../Supervisor/Supervisor.js").Supervisor<ReadonlyMap<FiberId.Live, AnyLiveFiber>>;
7
+ export declare const NodeRuntime: Runtime<never>;
8
+ export declare const runMainNode: <E = never, A = any>(fx: import("../Fx/Fx.js").Fx<never, E, A>) => Promise<A>, runMainNodeExit: <E = never, A = any>(fx: import("../Fx/Fx.js").Fx<never, E, A>) => Promise<import("../Exit/Exit.js").Exit<E, A>>, runMainNodeFiber: <E = never, A = any>(fx: import("../Fx/Fx.js").Fx<never, E, A>) => import("../Fiber/Fiber.js").Live<E, A>;
9
+ //# sourceMappingURL=Runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Runtime.d.ts","sourceRoot":"","sources":["../../src/Node/Runtime.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,2BAAyB;AAC1C,OAAO,EAAE,YAAY,EAAE,0BAAwB;AAE/C,OAAO,EAAE,OAAO,EAAE,8BAA4B;AAE9C,OAAO,EAAE,OAAO,EAAE,8BAA4B;AAG9C,eAAO,MAAM,UAAU,iDAA6D,CAAA;AACpF,eAAO,MAAM,cAAc,2FAA+B,CAAA;AAC1D,eAAO,MAAM,WAAW,gBAOvB,CAAA;AAED,eAAO,MACA,WAAW,iFACP,eAAe,oHACd,gBAAgB,2GACb,CAAA"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.runMainNodeFiber = exports.runMainNodeExit = exports.runMainNode = exports.NodeRuntime = exports.NodeSupervisor = exports.NodeFibers = void 0;
4
+ const gracefulShutdown_js_1 = require("./gracefulShutdown.js");
5
+ const index_js_1 = require("../Atomic/index.js");
6
+ const FiberContext_js_1 = require("../FiberContext/FiberContext.js");
7
+ const FiberId_js_1 = require("../FiberId/FiberId.js");
8
+ const run_js_1 = require("../Fx/run.js");
9
+ const Runtime_js_1 = require("../Runtime/Runtime.js");
10
+ const GlobalScope_js_1 = require("../Scope/GlobalScope.js");
11
+ exports.NodeFibers = (0, index_js_1.Atomic)(new Map());
12
+ exports.NodeSupervisor = (0, gracefulShutdown_js_1.gracefulShutdown)(exports.NodeFibers);
13
+ exports.NodeRuntime = (0, Runtime_js_1.Runtime)((0, FiberContext_js_1.FiberContext)({
14
+ platform: run_js_1.MainPlatform,
15
+ id: FiberId_js_1.FiberId.None,
16
+ scope: GlobalScope_js_1.GlobalScope,
17
+ supervisor: exports.NodeSupervisor,
18
+ }));
19
+ exports.runMainNode = exports.NodeRuntime.run, exports.runMainNodeExit = exports.NodeRuntime.runExit, exports.runMainNodeFiber = exports.NodeRuntime.runFiber;
20
+ //# sourceMappingURL=Runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Runtime.js","sourceRoot":"","sources":["../../src/Node/Runtime.ts"],"names":[],"mappings":";;;AAAA,+DAAwD;AAExD,iDAA0C;AAE1C,qEAA6D;AAC7D,sDAA8C;AAC9C,yCAA0C;AAC1C,sDAA8C;AAC9C,4DAAoD;AAEvC,QAAA,UAAU,GAAG,IAAA,iBAAM,EAA0C,IAAI,GAAG,EAAE,CAAC,CAAA;AACvE,QAAA,cAAc,GAAG,IAAA,sCAAgB,EAAC,kBAAU,CAAC,CAAA;AAC7C,QAAA,WAAW,GAAG,IAAA,oBAAO,EAChC,IAAA,8BAAY,EAAC;IACX,QAAQ,EAAE,qBAAY;IACtB,EAAE,EAAE,oBAAO,CAAC,IAAI;IAChB,KAAK,EAAE,4BAAW;IAClB,UAAU,EAAE,sBAAc;CAC3B,CAAC,CACH,CAAA;AAGM,mBAAW,GAGd,mBAAW,MAFJ,uBAAe,GAEtB,mBAAW,UADH,wBAAgB,GACxB,mBAAW,UAAA"}
@@ -0,0 +1,5 @@
1
+ import { Atomic } from "../Atomic/Atomic.js";
2
+ import { AnyLiveFiber } from "../Fiber/Fiber.js";
3
+ import { FiberId } from "../FiberId/FiberId.js";
4
+ export declare function gracefulShutdown(fibers?: Atomic<ReadonlyMap<FiberId.Live, AnyLiveFiber>>): import("../Supervisor/Supervisor.js").Supervisor<ReadonlyMap<FiberId.Live, AnyLiveFiber>>;
5
+ //# sourceMappingURL=gracefulShutdown.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gracefulShutdown.d.ts","sourceRoot":"","sources":["../../src/Node/gracefulShutdown.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,4BAA0B;AAE3C,OAAO,EAAE,YAAY,EAAE,0BAAwB;AAC/C,OAAO,EAAE,OAAO,EAAE,8BAA4B;AAM9C,wBAAgB,gBAAgB,CAC9B,MAAM,GAAE,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,YAAY,CAAC,CAE1C,6FAuCb"}
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.gracefulShutdown = void 0;
30
+ const node_process_1 = __importDefault(require("node:process"));
31
+ const Atomic_js_1 = require("../Atomic/Atomic.js");
32
+ const Duration = __importStar(require("../Duration/Duration.js"));
33
+ const FiberId_js_1 = require("../FiberId/FiberId.js");
34
+ const index_js_1 = require("../Fx/index.js");
35
+ const trackIn_js_1 = require("../Supervisor/trackIn.js");
36
+ const DELAY = Duration.toMilliseconds(Duration.Duration(1, Duration.Unit.Hour)).value;
37
+ function gracefulShutdown(fibers = (0, Atomic_js_1.Atomic)(new Map())) {
38
+ // Used to forcefully keep the process (e.g. Node.js) alive even when fibers are idle.
39
+ let id;
40
+ const gracefulExit = () => void (0, index_js_1.runMain)((0, index_js_1.zipAll)(Array.from(fibers.get().values()).map((fiber) => fiber.interruptAs(FiberId_js_1.FiberId.None)))).then(() => node_process_1.default.exit(0), () => node_process_1.default.exit(1));
41
+ return (0, trackIn_js_1.trackIn)(fibers).extend({
42
+ onStart: (parent) => (fiber, fx) => {
43
+ parent(fiber, fx);
44
+ if (!id) {
45
+ // Force the process to stay alive, even when fibers are idle.
46
+ id = setTimeout(() => {
47
+ id = undefined;
48
+ }, DELAY);
49
+ // Add a listener to the process to gracefully exit when the process is killed.
50
+ node_process_1.default.addListener('SIGTERM', gracefulExit);
51
+ node_process_1.default.addListener('SIGINT', gracefulExit);
52
+ }
53
+ },
54
+ onEnd: (parent) => (fiber, exit) => {
55
+ parent(fiber, exit);
56
+ if (fibers.get().size === 0 && id) {
57
+ clearTimeout(id);
58
+ id = undefined;
59
+ node_process_1.default.removeListener('SIGTERM', gracefulExit);
60
+ node_process_1.default.removeListener('SIGINT', gracefulExit);
61
+ }
62
+ },
63
+ });
64
+ }
65
+ exports.gracefulShutdown = gracefulShutdown;
66
+ //# sourceMappingURL=gracefulShutdown.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gracefulShutdown.js","sourceRoot":"","sources":["../../src/Node/gracefulShutdown.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gEAAkC;AAElC,mDAA2C;AAC3C,kEAAkD;AAElD,sDAA8C;AAC9C,6CAA+C;AAC/C,yDAAiD;AAEjD,MAAM,KAAK,GAAG,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAA;AAErF,SAAgB,gBAAgB,CAC9B,SAA0D,IAAA,kBAAM,EAE9D,IAAI,GAAG,EAAE,CAAC;IAEZ,sFAAsF;IACtF,IAAI,EAA6C,CAAA;IAEjD,MAAM,YAAY,GAAG,GAAG,EAAE,CACxB,KAAK,IAAA,kBAAO,EACV,IAAA,iBAAM,EAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,oBAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAC1F,CAAC,IAAI,CACJ,GAAG,EAAE,CAAC,sBAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EACrB,GAAG,EAAE,CAAC,sBAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CACtB,CAAA;IAEH,OAAO,IAAA,oBAAO,EAAC,MAAM,CAAC,CAAC,MAAM,CAAC;QAC5B,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YACjC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;YAEjB,IAAI,CAAC,EAAE,EAAE;gBACP,8DAA8D;gBAC9D,EAAE,GAAG,UAAU,CAAC,GAAG,EAAE;oBACnB,EAAE,GAAG,SAAS,CAAA;gBAChB,CAAC,EAAE,KAAK,CAAC,CAAA;gBAET,+EAA+E;gBAC/E,sBAAO,CAAC,WAAW,CAAC,SAAS,EAAE,YAAY,CAAC,CAAA;gBAC5C,sBAAO,CAAC,WAAW,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAA;aAC5C;QACH,CAAC;QACD,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YACjC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;YAEnB,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE;gBACjC,YAAY,CAAC,EAAE,CAAC,CAAA;gBAChB,EAAE,GAAG,SAAS,CAAA;gBACd,sBAAO,CAAC,cAAc,CAAC,SAAS,EAAE,YAAY,CAAC,CAAA;gBAC/C,sBAAO,CAAC,cAAc,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAA;aAC/C;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AA1CD,4CA0CC"}
@@ -0,0 +1,3 @@
1
+ export * from './gracefulShutdown.js';
2
+ export * from './Runtime.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Node/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,cAAc,CAAA"}
@@ -14,6 +14,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./atomic.js"), exports);
18
- __exportStar(require("./Ref.js"), exports);
17
+ __exportStar(require("./gracefulShutdown.js"), exports);
18
+ __exportStar(require("./Runtime.js"), exports);
19
19
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Node/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAqC;AACrC,+CAA4B"}
@@ -1,14 +1,16 @@
1
1
  import { NonNegativeInteger } from 'hkt-ts/number';
2
2
  import { AtomicCounter } from "../Atomic/AtomicCounter.js";
3
+ import { Renderer } from "../Cause/Renderer.js";
3
4
  import * as Timer from "../Timer/Timer.js";
4
5
  export interface Platform {
5
6
  readonly sequenceNumber: AtomicCounter;
6
7
  readonly maxOpCount: NonNegativeInteger;
7
8
  readonly maxTraceCount: NonNegativeInteger;
8
9
  readonly timer: Timer.Timer;
10
+ readonly renderer: Renderer<any>;
9
11
  readonly reportFailure: (message: string) => void;
10
12
  readonly fork: () => Platform;
11
13
  }
12
- export declare function Platform(sequenceNumber?: AtomicCounter, maxOpCount?: NonNegativeInteger, maxTraceCount?: NonNegativeInteger, timer?: Timer.Timer, reportFailure?: (message: string) => void): Platform;
13
- export declare function fork(platform: Platform): Platform;
14
+ export declare function Platform(sequenceNumber?: AtomicCounter, maxOpCount?: NonNegativeInteger, maxTraceCount?: NonNegativeInteger, timer?: Timer.Timer, renderer?: Renderer<any>, reportFailure?: (message: string) => void): Platform;
15
+ export declare function fork(platform: Platform, overrides?: Partial<Omit<Platform, 'fork'>>): Platform;
14
16
  //# sourceMappingURL=Platform.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Platform.d.ts","sourceRoot":"","sources":["../../src/Platform/Platform.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAElD,OAAO,EAAE,aAAa,EAAE,mCAAiC;AAEzD,OAAO,KAAK,KAAK,0BAAwB;AAEzC,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,cAAc,EAAE,aAAa,CAAA;IACtC,QAAQ,CAAC,UAAU,EAAE,kBAAkB,CAAA;IACvC,QAAQ,CAAC,aAAa,EAAE,kBAAkB,CAAA;IAC1C,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAA;IAC3B,QAAQ,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IACjD,QAAQ,CAAC,IAAI,EAAE,MAAM,QAAQ,CAAA;CAC9B;AAED,wBAAgB,QAAQ,CACtB,cAAc,GAAE,aAA+B,EAC/C,UAAU,GAAE,kBAA4C,EACxD,aAAa,GAAE,kBAA2C,EAC1D,KAAK,GAAE,KAAK,CAAC,KAAyB,EACtC,aAAa,GAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAoB,GACvD,QAAQ,CAWV;AAED,wBAAgB,IAAI,CAAC,QAAQ,EAAE,QAAQ,GAAG,QAAQ,CAOjD"}
1
+ {"version":3,"file":"Platform.d.ts","sourceRoot":"","sources":["../../src/Platform/Platform.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAElD,OAAO,EAAE,aAAa,EAAE,mCAAiC;AACzD,OAAO,EAAE,QAAQ,EAAmB,6BAA2B;AAE/D,OAAO,KAAK,KAAK,0BAAwB;AAEzC,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,cAAc,EAAE,aAAa,CAAA;IACtC,QAAQ,CAAC,UAAU,EAAE,kBAAkB,CAAA;IACvC,QAAQ,CAAC,aAAa,EAAE,kBAAkB,CAAA;IAC1C,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAA;IAChC,QAAQ,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IACjD,QAAQ,CAAC,IAAI,EAAE,MAAM,QAAQ,CAAA;CAC9B;AAED,wBAAgB,QAAQ,CACtB,cAAc,GAAE,aAA+B,EAC/C,UAAU,GAAE,kBAA4C,EACxD,aAAa,GAAE,kBAA2C,EAC1D,KAAK,GAAE,KAAK,CAAC,KAAyB,EACtC,QAAQ,GAAE,QAAQ,CAAC,GAAG,CAAmB,EACzC,aAAa,GAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAoB,GACvD,QAAQ,CAYV;AAED,wBAAgB,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,GAAG,QAAQ,CAS9F"}
@@ -26,22 +26,24 @@ Object.defineProperty(exports, "__esModule", { value: true });
26
26
  exports.fork = exports.Platform = void 0;
27
27
  const number_1 = require("hkt-ts/number");
28
28
  const AtomicCounter_js_1 = require("../Atomic/AtomicCounter.js");
29
+ const Renderer_js_1 = require("../Cause/Renderer.js");
29
30
  const SetTimeoutTimer_js_1 = require("../Timer/SetTimeoutTimer.js");
30
31
  const Timer = __importStar(require("../Timer/Timer.js"));
31
- function Platform(sequenceNumber = (0, AtomicCounter_js_1.AtomicCounter)(), maxOpCount = (0, number_1.NonNegativeInteger)(500), maxTraceCount = (0, number_1.NonNegativeInteger)(50), timer = (0, SetTimeoutTimer_js_1.SetTimeoutTimer)(), reportFailure = console.error) {
32
+ function Platform(sequenceNumber = (0, AtomicCounter_js_1.AtomicCounter)(), maxOpCount = (0, number_1.NonNegativeInteger)(500), maxTraceCount = (0, number_1.NonNegativeInteger)(50), timer = (0, SetTimeoutTimer_js_1.SetTimeoutTimer)(), renderer = Renderer_js_1.defaultRenderer, reportFailure = console.error) {
32
33
  const platform = {
33
34
  sequenceNumber,
34
35
  maxOpCount,
35
36
  maxTraceCount,
36
37
  timer,
38
+ renderer,
37
39
  reportFailure,
38
40
  fork: () => fork(platform),
39
41
  };
40
42
  return platform;
41
43
  }
42
44
  exports.Platform = Platform;
43
- function fork(platform) {
44
- return Platform(platform.sequenceNumber, platform.maxOpCount, platform.maxTraceCount, Timer.fork(platform.timer));
45
+ function fork(platform, overrides) {
46
+ return Platform(overrides?.sequenceNumber ?? platform.sequenceNumber, overrides?.maxOpCount ?? platform.maxOpCount, overrides?.maxTraceCount ?? platform.maxTraceCount, overrides?.timer ?? Timer.fork(platform.timer), overrides?.renderer ?? platform.renderer, overrides?.reportFailure ?? platform.reportFailure);
45
47
  }
46
48
  exports.fork = fork;
47
49
  //# sourceMappingURL=Platform.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Platform.js","sourceRoot":"","sources":["../../src/Platform/Platform.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAAkD;AAElD,iEAAyD;AACzD,oEAA4D;AAC5D,yDAAyC;AAWzC,SAAgB,QAAQ,CACtB,iBAAgC,IAAA,gCAAa,GAAE,EAC/C,aAAiC,IAAA,2BAAkB,EAAC,GAAG,CAAC,EACxD,gBAAoC,IAAA,2BAAkB,EAAC,EAAE,CAAC,EAC1D,QAAqB,IAAA,oCAAe,GAAE,EACtC,gBAA2C,OAAO,CAAC,KAAK;IAExD,MAAM,QAAQ,GAAa;QACzB,cAAc;QACd,UAAU;QACV,aAAa;QACb,KAAK;QACL,aAAa;QACb,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC;KAC3B,CAAA;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC;AAjBD,4BAiBC;AAED,SAAgB,IAAI,CAAC,QAAkB;IACrC,OAAO,QAAQ,CACb,QAAQ,CAAC,cAAc,EACvB,QAAQ,CAAC,UAAU,EACnB,QAAQ,CAAC,aAAa,EACtB,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAC3B,CAAA;AACH,CAAC;AAPD,oBAOC"}
1
+ {"version":3,"file":"Platform.js","sourceRoot":"","sources":["../../src/Platform/Platform.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAAkD;AAElD,iEAAyD;AACzD,sDAA+D;AAC/D,oEAA4D;AAC5D,yDAAyC;AAYzC,SAAgB,QAAQ,CACtB,iBAAgC,IAAA,gCAAa,GAAE,EAC/C,aAAiC,IAAA,2BAAkB,EAAC,GAAG,CAAC,EACxD,gBAAoC,IAAA,2BAAkB,EAAC,EAAE,CAAC,EAC1D,QAAqB,IAAA,oCAAe,GAAE,EACtC,WAA0B,6BAAe,EACzC,gBAA2C,OAAO,CAAC,KAAK;IAExD,MAAM,QAAQ,GAAa;QACzB,cAAc;QACd,UAAU;QACV,aAAa;QACb,KAAK;QACL,QAAQ;QACR,aAAa;QACb,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC;KAC3B,CAAA;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC;AAnBD,4BAmBC;AAED,SAAgB,IAAI,CAAC,QAAkB,EAAE,SAA2C;IAClF,OAAO,QAAQ,CACb,SAAS,EAAE,cAAc,IAAI,QAAQ,CAAC,cAAc,EACpD,SAAS,EAAE,UAAU,IAAI,QAAQ,CAAC,UAAU,EAC5C,SAAS,EAAE,aAAa,IAAI,QAAQ,CAAC,aAAa,EAClD,SAAS,EAAE,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAC9C,SAAS,EAAE,QAAQ,IAAI,QAAQ,CAAC,QAAQ,EACxC,SAAS,EAAE,aAAa,IAAI,QAAQ,CAAC,aAAa,CACnD,CAAA;AACH,CAAC;AATD,oBASC"}
@@ -3,9 +3,9 @@ import { Live } from "../Fiber/Fiber.js";
3
3
  import { FiberContext } from "../FiberContext/FiberContext.js";
4
4
  import { Fx } from "../Fx/Fx.js";
5
5
  export interface Runtime<R> {
6
- readonly runFiber: <E, A>(fx: Fx<R, E, A>) => Live<E, A>;
7
- readonly runExit: <E, A>(fx: Fx<R, E, A>) => Promise<Exit<E, A>>;
8
- readonly run: <E, A>(fx: Fx<R, E, A>) => Promise<A>;
6
+ readonly runFiber: <E = never, A = any>(fx: Fx<R, E, A>) => Live<E, A>;
7
+ readonly runExit: <E = never, A = any>(fx: Fx<R, E, A>) => Promise<Exit<E, A>>;
8
+ readonly run: <E = never, A = any>(fx: Fx<R, E, A>) => Promise<A>;
9
9
  }
10
- export declare function Runtime<R>(context: FiberContext): Runtime<R>;
10
+ export declare function Runtime<R = never>(context: FiberContext): Runtime<R>;
11
11
  //# sourceMappingURL=Runtime.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Runtime.d.ts","sourceRoot":"","sources":["../../src/Runtime/Runtime.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAE,wBAAsB;AACrC,OAAO,EAAE,IAAI,EAAE,0BAAwB;AACvC,OAAO,EAAE,YAAY,EAAE,wCAAsC;AAE7D,OAAO,EAAE,EAAE,EAAE,oBAAkB;AAE/B,MAAM,WAAW,OAAO,CAAC,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IACxD,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAChE,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAA;CACpD;AAED,wBAAgB,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,CAAC,CAAC,CA4B5D"}
1
+ {"version":3,"file":"Runtime.d.ts","sourceRoot":"","sources":["../../src/Runtime/Runtime.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAE,wBAAsB;AACrC,OAAO,EAAE,IAAI,EAAE,0BAAwB;AACvC,OAAO,EAAE,YAAY,EAAE,wCAAsC;AAE7D,OAAO,EAAE,EAAE,EAAE,oBAAkB;AAE/B,MAAM,WAAW,OAAO,CAAC,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IACtE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC9E,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAA;CAClE;AAED,wBAAgB,OAAO,CAAC,CAAC,GAAG,KAAK,EAAE,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,CAAC,CAAC,CA8BpE"}
@@ -19,7 +19,7 @@ function Runtime(context) {
19
19
  }),
20
20
  run: (fx) => new Promise((resolve, reject) => {
21
21
  const r = new FiberRuntime_js_1.FiberRuntime(fx, context.fork());
22
- r.addObserver((0, Either_1.match)((cause) => reject(new CauseError_js_1.CauseError(cause, context.renderer)), resolve));
22
+ r.addObserver((0, Either_1.match)((cause) => reject(new CauseError_js_1.CauseError(cause, context.platform.renderer)), resolve));
23
23
  r.startSync();
24
24
  return r;
25
25
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"Runtime.js","sourceRoot":"","sources":["../../src/Runtime/Runtime.ts"],"names":[],"mappings":";;;AAAA,0CAAqC;AAErC,0DAAkD;AAIlD,qEAA6D;AAS7D,SAAgB,OAAO,CAAI,OAAqB;IAC9C,OAAO;QACL,QAAQ,EAAE,CAAO,EAAe,EAAE,EAAE;YAClC,MAAM,CAAC,GAAG,IAAI,8BAAY,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAA;YAE9C,CAAC,CAAC,UAAU,EAAE,CAAA;YAEd,OAAO,CAAC,CAAA;QACV,CAAC;QACD,OAAO,EAAE,CAAO,EAAe,EAAE,EAAE,CACjC,IAAI,OAAO,CAAa,CAAC,OAAO,EAAE,EAAE;YAClC,MAAM,CAAC,GAAG,IAAI,8BAAY,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAA;YAE9C,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;YACtB,CAAC,CAAC,SAAS,EAAE,CAAA;YAEb,OAAO,CAAC,CAAA;QACV,CAAC,CAAC;QACJ,GAAG,EAAE,CAAO,EAAe,EAAE,EAAE,CAC7B,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACjC,MAAM,CAAC,GAAG,IAAI,8BAAY,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAA;YAE9C,CAAC,CAAC,WAAW,CAAC,IAAA,cAAK,EAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,0BAAU,CAAC,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAA;YACzF,CAAC,CAAC,SAAS,EAAE,CAAA;YAEb,OAAO,CAAC,CAAA;QACV,CAAC,CAAC;KACL,CAAA;AACH,CAAC;AA5BD,0BA4BC"}
1
+ {"version":3,"file":"Runtime.js","sourceRoot":"","sources":["../../src/Runtime/Runtime.ts"],"names":[],"mappings":";;;AAAA,0CAAqC;AAErC,0DAAkD;AAIlD,qEAA6D;AAS7D,SAAgB,OAAO,CAAY,OAAqB;IACtD,OAAO;QACL,QAAQ,EAAE,CAAO,EAAe,EAAE,EAAE;YAClC,MAAM,CAAC,GAAG,IAAI,8BAAY,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAA;YAE9C,CAAC,CAAC,UAAU,EAAE,CAAA;YAEd,OAAO,CAAC,CAAA;QACV,CAAC;QACD,OAAO,EAAE,CAAO,EAAe,EAAE,EAAE,CACjC,IAAI,OAAO,CAAa,CAAC,OAAO,EAAE,EAAE;YAClC,MAAM,CAAC,GAAG,IAAI,8BAAY,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAA;YAE9C,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;YACtB,CAAC,CAAC,SAAS,EAAE,CAAA;YAEb,OAAO,CAAC,CAAA;QACV,CAAC,CAAC;QACJ,GAAG,EAAE,CAAO,EAAe,EAAE,EAAE,CAC7B,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACjC,MAAM,CAAC,GAAG,IAAI,8BAAY,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAA;YAE9C,CAAC,CAAC,WAAW,CACX,IAAA,cAAK,EAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,0BAAU,CAAC,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC,CACpF,CAAA;YACD,CAAC,CAAC,SAAS,EAAE,CAAA;YAEb,OAAO,CAAC,CAAA;QACV,CAAC,CAAC;KACL,CAAA;AACH,CAAC;AA9BD,0BA8BC"}
@@ -1 +1 @@
1
- {"version":3,"file":"RootScheduler.d.ts","sourceRoot":"","sources":["../../src/Scheduler/RootScheduler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAmB1C,OAAO,EAAE,KAAK,EAAE,0BAAwB;AAExC,wBAAgB,aAAa,CAAC,KAAK,GAAE,KAAyB,GAAG,SAAS,CAEzE"}
1
+ {"version":3,"file":"RootScheduler.d.ts","sourceRoot":"","sources":["../../src/Scheduler/RootScheduler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAoB1C,OAAO,EAAE,KAAK,EAAE,0BAAwB;AAExC,wBAAgB,aAAa,CAAC,KAAK,GAAE,KAAyB,GAAG,SAAS,CAEzE"}
@@ -1,10 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.RootScheduler = void 0;
4
+ const hkt_ts_1 = require("hkt-ts");
4
5
  const callbackScheduler_js_1 = require("./callbackScheduler.js");
5
- const scheduled_js_1 = require("./scheduled.js");
6
+ const runSchedule_js_1 = require("./runSchedule.js");
6
7
  const index_js_1 = require("../Clock/index.js");
7
- const FiberRef_js_1 = require("../FiberRef/FiberRef.js");
8
+ const builtins_js_1 = require("../FiberRef/builtins.js");
8
9
  const FiberRefs_js_1 = require("../FiberRefs/FiberRefs.js");
9
10
  const FiberRuntime_js_1 = require("../FiberRuntime/FiberRuntime.js");
10
11
  const Future_js_1 = require("../Future/Future.js");
@@ -30,16 +31,16 @@ class RootSchedulerImpl {
30
31
  return task.wait;
31
32
  };
32
33
  }
33
- asap = (fx, env, context) => {
34
- (0, FiberRefs_js_1.setFiberRef)(FiberRef_js_1.CurrentEnv, env)(context.fiberRefs);
35
- const runtime = new FiberRuntime_js_1.FiberRuntime(this.runAt(fx, (0, index_js_2.Delay)(0)), context);
34
+ asap = (fx, env, context, transform = hkt_ts_1.identity) => {
35
+ (0, FiberRefs_js_1.setFiberRef)(builtins_js_1.CurrentEnv, env)(context.fiberRefs);
36
+ const runtime = new FiberRuntime_js_1.FiberRuntime(this.runAt(transform(fx), (0, index_js_2.Delay)(0)), context);
36
37
  // Safe to call sync since it will be run by the Timeline.
37
38
  runtime.startSync();
38
39
  return runtime;
39
40
  };
40
- schedule = (fx, schedule, env, context) => {
41
- (0, FiberRefs_js_1.setFiberRef)(FiberRef_js_1.CurrentEnv, env)(context.fiberRefs);
42
- const runtime = new FiberRuntime_js_1.FiberRuntime((0, scheduled_js_1.scheduled)(fx, schedule, this.timer, this.runAt), context);
41
+ schedule = (fx, env, schedule, context, transform = hkt_ts_1.identity) => {
42
+ (0, FiberRefs_js_1.setFiberRef)(builtins_js_1.CurrentEnv, env)(context.fiberRefs);
43
+ const runtime = new FiberRuntime_js_1.FiberRuntime((0, runSchedule_js_1.runSchedule)(transform(fx), schedule, this.timer, this.runAt), context);
43
44
  // Safe to call sync since it will be run by the Timeline.
44
45
  runtime.startSync();
45
46
  return runtime;