effect 3.4.8 → 3.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (696) hide show
  1. package/RcMap/package.json +6 -0
  2. package/RcRef/package.json +6 -0
  3. package/dist/cjs/Array.js +14 -37
  4. package/dist/cjs/Array.js.map +1 -1
  5. package/dist/cjs/BigDecimal.js +11 -34
  6. package/dist/cjs/BigDecimal.js.map +1 -1
  7. package/dist/cjs/BigInt.js +7 -30
  8. package/dist/cjs/BigInt.js.map +1 -1
  9. package/dist/cjs/Boolean.js +6 -29
  10. package/dist/cjs/Boolean.js.map +1 -1
  11. package/dist/cjs/Brand.js +6 -29
  12. package/dist/cjs/Brand.js.map +1 -1
  13. package/dist/cjs/Cache.js +3 -26
  14. package/dist/cjs/Cache.js.map +1 -1
  15. package/dist/cjs/Cause.js +26 -28
  16. package/dist/cjs/Cause.js.map +1 -1
  17. package/dist/cjs/Channel.js +6 -29
  18. package/dist/cjs/Channel.js.map +1 -1
  19. package/dist/cjs/ChildExecutorDecision.js +3 -26
  20. package/dist/cjs/ChildExecutorDecision.js.map +1 -1
  21. package/dist/cjs/Chunk.js +12 -35
  22. package/dist/cjs/Chunk.js.map +1 -1
  23. package/dist/cjs/Clock.js +4 -27
  24. package/dist/cjs/Clock.js.map +1 -1
  25. package/dist/cjs/Config.js +3 -26
  26. package/dist/cjs/Config.js.map +1 -1
  27. package/dist/cjs/ConfigError.js +3 -26
  28. package/dist/cjs/ConfigError.js.map +1 -1
  29. package/dist/cjs/ConfigProvider.js +3 -26
  30. package/dist/cjs/ConfigProvider.js.map +1 -1
  31. package/dist/cjs/ConfigProviderPathPatch.js +3 -26
  32. package/dist/cjs/ConfigProviderPathPatch.js.map +1 -1
  33. package/dist/cjs/Console.js +4 -27
  34. package/dist/cjs/Console.js.map +1 -1
  35. package/dist/cjs/Context.js +3 -26
  36. package/dist/cjs/Context.js.map +1 -1
  37. package/dist/cjs/Cron.js +13 -36
  38. package/dist/cjs/Cron.js.map +1 -1
  39. package/dist/cjs/Data.js +9 -30
  40. package/dist/cjs/Data.js.map +1 -1
  41. package/dist/cjs/DefaultServices.js +3 -26
  42. package/dist/cjs/DefaultServices.js.map +1 -1
  43. package/dist/cjs/Deferred.js +4 -27
  44. package/dist/cjs/Deferred.js.map +1 -1
  45. package/dist/cjs/Differ.js +10 -33
  46. package/dist/cjs/Differ.js.map +1 -1
  47. package/dist/cjs/Duration.js +33 -35
  48. package/dist/cjs/Duration.js.map +1 -1
  49. package/dist/cjs/Effect.js +16 -39
  50. package/dist/cjs/Effect.js.map +1 -1
  51. package/dist/cjs/Effectable.js +3 -26
  52. package/dist/cjs/Effectable.js.map +1 -1
  53. package/dist/cjs/Either.js +8 -31
  54. package/dist/cjs/Either.js.map +1 -1
  55. package/dist/cjs/Encoding.js +7 -30
  56. package/dist/cjs/Encoding.js.map +1 -1
  57. package/dist/cjs/Equal.js +5 -28
  58. package/dist/cjs/Equal.js.map +1 -1
  59. package/dist/cjs/Equivalence.js +1 -1
  60. package/dist/cjs/Equivalence.js.map +1 -1
  61. package/dist/cjs/ExecutionStrategy.js +3 -26
  62. package/dist/cjs/ExecutionStrategy.js.map +1 -1
  63. package/dist/cjs/Exit.js +3 -26
  64. package/dist/cjs/Exit.js.map +1 -1
  65. package/dist/cjs/Fiber.js +6 -29
  66. package/dist/cjs/Fiber.js.map +1 -1
  67. package/dist/cjs/FiberHandle.js +15 -38
  68. package/dist/cjs/FiberHandle.js.map +1 -1
  69. package/dist/cjs/FiberId.js +3 -26
  70. package/dist/cjs/FiberId.js.map +1 -1
  71. package/dist/cjs/FiberMap.js +17 -40
  72. package/dist/cjs/FiberMap.js.map +1 -1
  73. package/dist/cjs/FiberRef.js +6 -29
  74. package/dist/cjs/FiberRef.js.map +1 -1
  75. package/dist/cjs/FiberRefs.js +3 -26
  76. package/dist/cjs/FiberRefs.js.map +1 -1
  77. package/dist/cjs/FiberRefsPatch.js +3 -26
  78. package/dist/cjs/FiberRefsPatch.js.map +1 -1
  79. package/dist/cjs/FiberSet.js +16 -39
  80. package/dist/cjs/FiberSet.js.map +1 -1
  81. package/dist/cjs/FiberStatus.js +3 -26
  82. package/dist/cjs/FiberStatus.js.map +1 -1
  83. package/dist/cjs/GlobalValue.js +3 -26
  84. package/dist/cjs/GlobalValue.js.map +1 -1
  85. package/dist/cjs/GroupBy.js +3 -26
  86. package/dist/cjs/GroupBy.js.map +1 -1
  87. package/dist/cjs/Hash.js +4 -4
  88. package/dist/cjs/Hash.js.map +1 -1
  89. package/dist/cjs/HashMap.js +4 -27
  90. package/dist/cjs/HashMap.js.map +1 -1
  91. package/dist/cjs/HashSet.js +3 -26
  92. package/dist/cjs/HashSet.js.map +1 -1
  93. package/dist/cjs/Inspectable.js +1 -1
  94. package/dist/cjs/Inspectable.js.map +1 -1
  95. package/dist/cjs/Iterable.js +8 -31
  96. package/dist/cjs/Iterable.js.map +1 -1
  97. package/dist/cjs/KeyedPool.js +3 -26
  98. package/dist/cjs/KeyedPool.js.map +1 -1
  99. package/dist/cjs/Layer.js +11 -34
  100. package/dist/cjs/Layer.js.map +1 -1
  101. package/dist/cjs/List.js +13 -36
  102. package/dist/cjs/List.js.map +1 -1
  103. package/dist/cjs/LogLevel.js +6 -29
  104. package/dist/cjs/LogLevel.js.map +1 -1
  105. package/dist/cjs/LogSpan.js +3 -26
  106. package/dist/cjs/LogSpan.js.map +1 -1
  107. package/dist/cjs/Logger.js +17 -30
  108. package/dist/cjs/Logger.js.map +1 -1
  109. package/dist/cjs/ManagedRuntime.js +3 -26
  110. package/dist/cjs/ManagedRuntime.js.map +1 -1
  111. package/dist/cjs/Match.js +4 -27
  112. package/dist/cjs/Match.js.map +1 -1
  113. package/dist/cjs/MergeDecision.js +3 -26
  114. package/dist/cjs/MergeDecision.js.map +1 -1
  115. package/dist/cjs/MergeState.js +3 -26
  116. package/dist/cjs/MergeState.js.map +1 -1
  117. package/dist/cjs/MergeStrategy.js +3 -26
  118. package/dist/cjs/MergeStrategy.js.map +1 -1
  119. package/dist/cjs/Metric.js +4 -27
  120. package/dist/cjs/Metric.js.map +1 -1
  121. package/dist/cjs/MetricBoundaries.js +3 -26
  122. package/dist/cjs/MetricBoundaries.js.map +1 -1
  123. package/dist/cjs/MetricHook.js +3 -26
  124. package/dist/cjs/MetricHook.js.map +1 -1
  125. package/dist/cjs/MetricKey.js +3 -26
  126. package/dist/cjs/MetricKey.js.map +1 -1
  127. package/dist/cjs/MetricKeyType.js +3 -26
  128. package/dist/cjs/MetricKeyType.js.map +1 -1
  129. package/dist/cjs/MetricLabel.js +3 -26
  130. package/dist/cjs/MetricLabel.js.map +1 -1
  131. package/dist/cjs/MetricPair.js +3 -26
  132. package/dist/cjs/MetricPair.js.map +1 -1
  133. package/dist/cjs/MetricPolling.js +3 -26
  134. package/dist/cjs/MetricPolling.js.map +1 -1
  135. package/dist/cjs/MetricRegistry.js +3 -26
  136. package/dist/cjs/MetricRegistry.js.map +1 -1
  137. package/dist/cjs/MetricState.js +3 -26
  138. package/dist/cjs/MetricState.js.map +1 -1
  139. package/dist/cjs/Micro.js +15 -38
  140. package/dist/cjs/Micro.js.map +1 -1
  141. package/dist/cjs/ModuleVersion.js +3 -26
  142. package/dist/cjs/ModuleVersion.js.map +1 -1
  143. package/dist/cjs/MutableHashMap.js +8 -31
  144. package/dist/cjs/MutableHashMap.js.map +1 -1
  145. package/dist/cjs/MutableHashSet.js +6 -29
  146. package/dist/cjs/MutableHashSet.js.map +1 -1
  147. package/dist/cjs/MutableList.js +5 -28
  148. package/dist/cjs/MutableList.js.map +1 -1
  149. package/dist/cjs/MutableQueue.js +7 -30
  150. package/dist/cjs/MutableQueue.js.map +1 -1
  151. package/dist/cjs/MutableRef.js +6 -29
  152. package/dist/cjs/MutableRef.js.map +1 -1
  153. package/dist/cjs/Number.js +7 -30
  154. package/dist/cjs/Number.js.map +1 -1
  155. package/dist/cjs/Option.js +10 -33
  156. package/dist/cjs/Option.js.map +1 -1
  157. package/dist/cjs/Order.js +1 -1
  158. package/dist/cjs/Order.js.map +1 -1
  159. package/dist/cjs/Ordering.js +1 -1
  160. package/dist/cjs/Ordering.js.map +1 -1
  161. package/dist/cjs/Pool.js +3 -26
  162. package/dist/cjs/Pool.js.map +1 -1
  163. package/dist/cjs/Predicate.js +1 -1
  164. package/dist/cjs/Predicate.js.map +1 -1
  165. package/dist/cjs/PubSub.js +3 -26
  166. package/dist/cjs/PubSub.js.map +1 -1
  167. package/dist/cjs/Queue.js +3 -26
  168. package/dist/cjs/Queue.js.map +1 -1
  169. package/dist/cjs/Random.js +13 -28
  170. package/dist/cjs/Random.js.map +1 -1
  171. package/dist/cjs/RateLimiter.js +3 -26
  172. package/dist/cjs/RateLimiter.js.map +1 -1
  173. package/dist/cjs/RcMap.js +52 -0
  174. package/dist/cjs/RcMap.js.map +1 -0
  175. package/dist/cjs/RcRef.js +51 -0
  176. package/dist/cjs/RcRef.js.map +1 -0
  177. package/dist/cjs/Readable.js +6 -29
  178. package/dist/cjs/Readable.js.map +1 -1
  179. package/dist/cjs/Record.js +6 -29
  180. package/dist/cjs/Record.js.map +1 -1
  181. package/dist/cjs/RedBlackTree.js +4 -27
  182. package/dist/cjs/RedBlackTree.js.map +1 -1
  183. package/dist/cjs/Redacted.js +4 -27
  184. package/dist/cjs/Redacted.js.map +1 -1
  185. package/dist/cjs/Ref.js +3 -26
  186. package/dist/cjs/Ref.js.map +1 -1
  187. package/dist/cjs/Reloadable.js +3 -26
  188. package/dist/cjs/Reloadable.js.map +1 -1
  189. package/dist/cjs/Request.js +7 -30
  190. package/dist/cjs/Request.js.map +1 -1
  191. package/dist/cjs/RequestBlock.js +3 -26
  192. package/dist/cjs/RequestBlock.js.map +1 -1
  193. package/dist/cjs/RequestResolver.js +6 -29
  194. package/dist/cjs/RequestResolver.js.map +1 -1
  195. package/dist/cjs/Resource.js +3 -26
  196. package/dist/cjs/Resource.js.map +1 -1
  197. package/dist/cjs/Runtime.js +3 -26
  198. package/dist/cjs/Runtime.js.map +1 -1
  199. package/dist/cjs/RuntimeFlags.js +4 -27
  200. package/dist/cjs/RuntimeFlags.js.map +1 -1
  201. package/dist/cjs/RuntimeFlagsPatch.js +4 -27
  202. package/dist/cjs/RuntimeFlagsPatch.js.map +1 -1
  203. package/dist/cjs/STM.js +6 -29
  204. package/dist/cjs/STM.js.map +1 -1
  205. package/dist/cjs/Schedule.js +3 -26
  206. package/dist/cjs/Schedule.js.map +1 -1
  207. package/dist/cjs/ScheduleDecision.js +3 -26
  208. package/dist/cjs/ScheduleDecision.js.map +1 -1
  209. package/dist/cjs/ScheduleInterval.js +3 -26
  210. package/dist/cjs/ScheduleInterval.js.map +1 -1
  211. package/dist/cjs/ScheduleIntervals.js +3 -26
  212. package/dist/cjs/ScheduleIntervals.js.map +1 -1
  213. package/dist/cjs/Scheduler.js +5 -28
  214. package/dist/cjs/Scheduler.js.map +1 -1
  215. package/dist/cjs/Scope.js +4 -27
  216. package/dist/cjs/Scope.js.map +1 -1
  217. package/dist/cjs/ScopedCache.js +3 -26
  218. package/dist/cjs/ScopedCache.js.map +1 -1
  219. package/dist/cjs/ScopedRef.js +3 -26
  220. package/dist/cjs/ScopedRef.js.map +1 -1
  221. package/dist/cjs/Secret.js +3 -26
  222. package/dist/cjs/Secret.js.map +1 -1
  223. package/dist/cjs/SingleProducerAsyncInput.js +3 -26
  224. package/dist/cjs/SingleProducerAsyncInput.js.map +1 -1
  225. package/dist/cjs/Sink.js +3 -26
  226. package/dist/cjs/Sink.js.map +1 -1
  227. package/dist/cjs/SortedMap.js +10 -33
  228. package/dist/cjs/SortedMap.js.map +1 -1
  229. package/dist/cjs/SortedSet.js +9 -32
  230. package/dist/cjs/SortedSet.js.map +1 -1
  231. package/dist/cjs/Stream.js +1077 -32
  232. package/dist/cjs/Stream.js.map +1 -1
  233. package/dist/cjs/StreamHaltStrategy.js +3 -26
  234. package/dist/cjs/StreamHaltStrategy.js.map +1 -1
  235. package/dist/cjs/Streamable.js +4 -27
  236. package/dist/cjs/Streamable.js.map +1 -1
  237. package/dist/cjs/String.js +9 -32
  238. package/dist/cjs/String.js.map +1 -1
  239. package/dist/cjs/Struct.js +6 -29
  240. package/dist/cjs/Struct.js.map +1 -1
  241. package/dist/cjs/Subscribable.js +8 -31
  242. package/dist/cjs/Subscribable.js.map +1 -1
  243. package/dist/cjs/SubscriptionRef.js +5 -28
  244. package/dist/cjs/SubscriptionRef.js.map +1 -1
  245. package/dist/cjs/Supervisor.js +5 -28
  246. package/dist/cjs/Supervisor.js.map +1 -1
  247. package/dist/cjs/Symbol.js +4 -27
  248. package/dist/cjs/Symbol.js.map +1 -1
  249. package/dist/cjs/SynchronizedRef.js +5 -28
  250. package/dist/cjs/SynchronizedRef.js.map +1 -1
  251. package/dist/cjs/TArray.js +3 -26
  252. package/dist/cjs/TArray.js.map +1 -1
  253. package/dist/cjs/TDeferred.js +3 -26
  254. package/dist/cjs/TDeferred.js.map +1 -1
  255. package/dist/cjs/TMap.js +3 -26
  256. package/dist/cjs/TMap.js.map +1 -1
  257. package/dist/cjs/TPriorityQueue.js +3 -26
  258. package/dist/cjs/TPriorityQueue.js.map +1 -1
  259. package/dist/cjs/TPubSub.js +3 -26
  260. package/dist/cjs/TPubSub.js.map +1 -1
  261. package/dist/cjs/TQueue.js +3 -26
  262. package/dist/cjs/TQueue.js.map +1 -1
  263. package/dist/cjs/TRandom.js +3 -26
  264. package/dist/cjs/TRandom.js.map +1 -1
  265. package/dist/cjs/TReentrantLock.js +3 -26
  266. package/dist/cjs/TReentrantLock.js.map +1 -1
  267. package/dist/cjs/TRef.js +3 -26
  268. package/dist/cjs/TRef.js.map +1 -1
  269. package/dist/cjs/TSemaphore.js +3 -26
  270. package/dist/cjs/TSemaphore.js.map +1 -1
  271. package/dist/cjs/TSet.js +3 -26
  272. package/dist/cjs/TSet.js.map +1 -1
  273. package/dist/cjs/Take.js +3 -26
  274. package/dist/cjs/Take.js.map +1 -1
  275. package/dist/cjs/TestAnnotation.js +10 -33
  276. package/dist/cjs/TestAnnotation.js.map +1 -1
  277. package/dist/cjs/TestAnnotationMap.js +5 -28
  278. package/dist/cjs/TestAnnotationMap.js.map +1 -1
  279. package/dist/cjs/TestAnnotations.js +15 -38
  280. package/dist/cjs/TestAnnotations.js.map +1 -1
  281. package/dist/cjs/TestClock.js +25 -48
  282. package/dist/cjs/TestClock.js.map +1 -1
  283. package/dist/cjs/TestConfig.js +3 -26
  284. package/dist/cjs/TestConfig.js.map +1 -1
  285. package/dist/cjs/TestContext.js +7 -30
  286. package/dist/cjs/TestContext.js.map +1 -1
  287. package/dist/cjs/TestLive.js +5 -28
  288. package/dist/cjs/TestLive.js.map +1 -1
  289. package/dist/cjs/TestServices.js +15 -38
  290. package/dist/cjs/TestServices.js.map +1 -1
  291. package/dist/cjs/TestSized.js +4 -27
  292. package/dist/cjs/TestSized.js.map +1 -1
  293. package/dist/cjs/Tracer.js +4 -27
  294. package/dist/cjs/Tracer.js.map +1 -1
  295. package/dist/cjs/Trie.js +3 -26
  296. package/dist/cjs/Trie.js.map +1 -1
  297. package/dist/cjs/Tuple.js +6 -29
  298. package/dist/cjs/Tuple.js.map +1 -1
  299. package/dist/cjs/Unify.js +1 -1
  300. package/dist/cjs/Unify.js.map +1 -1
  301. package/dist/cjs/UpstreamPullRequest.js +3 -26
  302. package/dist/cjs/UpstreamPullRequest.js.map +1 -1
  303. package/dist/cjs/UpstreamPullStrategy.js +3 -26
  304. package/dist/cjs/UpstreamPullStrategy.js.map +1 -1
  305. package/dist/cjs/Utils.js +4 -4
  306. package/dist/cjs/Utils.js.map +1 -1
  307. package/dist/cjs/index.js +166 -185
  308. package/dist/cjs/index.js.map +1 -1
  309. package/dist/cjs/internal/blockedRequests.js +9 -32
  310. package/dist/cjs/internal/blockedRequests.js.map +1 -1
  311. package/dist/cjs/internal/cache.js +20 -43
  312. package/dist/cjs/internal/cache.js.map +1 -1
  313. package/dist/cjs/internal/cause.js +37 -44
  314. package/dist/cjs/internal/cause.js.map +1 -1
  315. package/dist/cjs/internal/channel/channelExecutor.js +21 -44
  316. package/dist/cjs/internal/channel/channelExecutor.js.map +1 -1
  317. package/dist/cjs/internal/channel/channelState.js +5 -28
  318. package/dist/cjs/internal/channel/channelState.js.map +1 -1
  319. package/dist/cjs/internal/channel/childExecutorDecision.js +5 -28
  320. package/dist/cjs/internal/channel/childExecutorDecision.js.map +1 -1
  321. package/dist/cjs/internal/channel/continuation.js +4 -27
  322. package/dist/cjs/internal/channel/continuation.js.map +1 -1
  323. package/dist/cjs/internal/channel/mergeDecision.js +5 -28
  324. package/dist/cjs/internal/channel/mergeDecision.js.map +1 -1
  325. package/dist/cjs/internal/channel/mergeState.js +5 -28
  326. package/dist/cjs/internal/channel/mergeState.js.map +1 -1
  327. package/dist/cjs/internal/channel/mergeStrategy.js +5 -28
  328. package/dist/cjs/internal/channel/mergeStrategy.js.map +1 -1
  329. package/dist/cjs/internal/channel/singleProducerAsyncInput.js +9 -32
  330. package/dist/cjs/internal/channel/singleProducerAsyncInput.js.map +1 -1
  331. package/dist/cjs/internal/channel/subexecutor.js +5 -28
  332. package/dist/cjs/internal/channel/subexecutor.js.map +1 -1
  333. package/dist/cjs/internal/channel/upstreamPullRequest.js +5 -28
  334. package/dist/cjs/internal/channel/upstreamPullRequest.js.map +1 -1
  335. package/dist/cjs/internal/channel/upstreamPullStrategy.js +5 -28
  336. package/dist/cjs/internal/channel/upstreamPullStrategy.js.map +1 -1
  337. package/dist/cjs/internal/channel.js +31 -54
  338. package/dist/cjs/internal/channel.js.map +1 -1
  339. package/dist/cjs/internal/clock.js +6 -29
  340. package/dist/cjs/internal/clock.js.map +1 -1
  341. package/dist/cjs/internal/completedRequestMap.js +2 -2
  342. package/dist/cjs/internal/completedRequestMap.js.map +1 -1
  343. package/dist/cjs/internal/concurrency.js +3 -26
  344. package/dist/cjs/internal/concurrency.js.map +1 -1
  345. package/dist/cjs/internal/config.js +17 -40
  346. package/dist/cjs/internal/config.js.map +1 -1
  347. package/dist/cjs/internal/configError.js +7 -30
  348. package/dist/cjs/internal/configError.js.map +1 -1
  349. package/dist/cjs/internal/configProvider/pathPatch.js +8 -31
  350. package/dist/cjs/internal/configProvider/pathPatch.js.map +1 -1
  351. package/dist/cjs/internal/configProvider.js +17 -40
  352. package/dist/cjs/internal/configProvider.js.map +1 -1
  353. package/dist/cjs/internal/console.js +9 -32
  354. package/dist/cjs/internal/console.js.map +1 -1
  355. package/dist/cjs/internal/context.js +10 -33
  356. package/dist/cjs/internal/context.js.map +1 -1
  357. package/dist/cjs/internal/core-effect.js +29 -57
  358. package/dist/cjs/internal/core-effect.js.map +1 -1
  359. package/dist/cjs/internal/core-stream.js +14 -37
  360. package/dist/cjs/internal/core-stream.js.map +1 -1
  361. package/dist/cjs/internal/core.js +47 -65
  362. package/dist/cjs/internal/core.js.map +1 -1
  363. package/dist/cjs/internal/data.js +5 -28
  364. package/dist/cjs/internal/data.js.map +1 -1
  365. package/dist/cjs/internal/dataSource.js +10 -33
  366. package/dist/cjs/internal/dataSource.js.map +1 -1
  367. package/dist/cjs/internal/defaultServices/console.js +4 -27
  368. package/dist/cjs/internal/defaultServices/console.js.map +1 -1
  369. package/dist/cjs/internal/defaultServices.js +14 -37
  370. package/dist/cjs/internal/defaultServices.js.map +1 -1
  371. package/dist/cjs/internal/deferred.js +3 -26
  372. package/dist/cjs/internal/deferred.js.map +1 -1
  373. package/dist/cjs/internal/differ/chunkPatch.js +6 -29
  374. package/dist/cjs/internal/differ/chunkPatch.js.map +1 -1
  375. package/dist/cjs/internal/differ/contextPatch.js +7 -30
  376. package/dist/cjs/internal/differ/contextPatch.js.map +1 -1
  377. package/dist/cjs/internal/differ/hashMapPatch.js +7 -30
  378. package/dist/cjs/internal/differ/hashMapPatch.js.map +1 -1
  379. package/dist/cjs/internal/differ/hashSetPatch.js +6 -29
  380. package/dist/cjs/internal/differ/hashSetPatch.js.map +1 -1
  381. package/dist/cjs/internal/differ/orPatch.js +7 -30
  382. package/dist/cjs/internal/differ/orPatch.js.map +1 -1
  383. package/dist/cjs/internal/differ/readonlyArrayPatch.js +6 -29
  384. package/dist/cjs/internal/differ/readonlyArrayPatch.js.map +1 -1
  385. package/dist/cjs/internal/differ.js +10 -33
  386. package/dist/cjs/internal/differ.js.map +1 -1
  387. package/dist/cjs/internal/doNotation.js +1 -1
  388. package/dist/cjs/internal/doNotation.js.map +1 -1
  389. package/dist/cjs/internal/effect/circular.js +24 -47
  390. package/dist/cjs/internal/effect/circular.js.map +1 -1
  391. package/dist/cjs/internal/effectable.js +8 -31
  392. package/dist/cjs/internal/effectable.js.map +1 -1
  393. package/dist/cjs/internal/either.js +9 -32
  394. package/dist/cjs/internal/either.js.map +1 -1
  395. package/dist/cjs/internal/encoding/base64.js +4 -27
  396. package/dist/cjs/internal/encoding/base64.js.map +1 -1
  397. package/dist/cjs/internal/encoding/base64Url.js +5 -28
  398. package/dist/cjs/internal/encoding/base64Url.js.map +1 -1
  399. package/dist/cjs/internal/encoding/common.js +1 -1
  400. package/dist/cjs/internal/encoding/common.js.map +1 -1
  401. package/dist/cjs/internal/encoding/hex.js +4 -27
  402. package/dist/cjs/internal/encoding/hex.js.map +1 -1
  403. package/dist/cjs/internal/executionStrategy.js +1 -1
  404. package/dist/cjs/internal/executionStrategy.js.map +1 -1
  405. package/dist/cjs/internal/fiber.js +17 -40
  406. package/dist/cjs/internal/fiber.js.map +1 -1
  407. package/dist/cjs/internal/fiberId.js +11 -34
  408. package/dist/cjs/internal/fiberId.js.map +1 -1
  409. package/dist/cjs/internal/fiberRefs/patch.js +6 -29
  410. package/dist/cjs/internal/fiberRefs/patch.js.map +1 -1
  411. package/dist/cjs/internal/fiberRefs.js +9 -32
  412. package/dist/cjs/internal/fiberRefs.js.map +1 -1
  413. package/dist/cjs/internal/fiberRuntime.js +58 -79
  414. package/dist/cjs/internal/fiberRuntime.js.map +1 -1
  415. package/dist/cjs/internal/fiberScope.js +5 -28
  416. package/dist/cjs/internal/fiberScope.js.map +1 -1
  417. package/dist/cjs/internal/fiberStatus.js +6 -29
  418. package/dist/cjs/internal/fiberStatus.js.map +1 -1
  419. package/dist/cjs/internal/groupBy.js +18 -41
  420. package/dist/cjs/internal/groupBy.js.map +1 -1
  421. package/dist/cjs/internal/hashMap/bitwise.js +1 -1
  422. package/dist/cjs/internal/hashMap/bitwise.js.map +1 -1
  423. package/dist/cjs/internal/hashMap/keySet.js +1 -1
  424. package/dist/cjs/internal/hashMap/keySet.js.map +1 -1
  425. package/dist/cjs/internal/hashMap/node.js +9 -32
  426. package/dist/cjs/internal/hashMap/node.js.map +1 -1
  427. package/dist/cjs/internal/hashMap.js +12 -35
  428. package/dist/cjs/internal/hashMap.js.map +1 -1
  429. package/dist/cjs/internal/hashSet.js +9 -32
  430. package/dist/cjs/internal/hashSet.js.map +1 -1
  431. package/dist/cjs/internal/keyedPool.js +14 -37
  432. package/dist/cjs/internal/keyedPool.js.map +1 -1
  433. package/dist/cjs/internal/layer/circular.js +12 -35
  434. package/dist/cjs/internal/layer/circular.js.map +1 -1
  435. package/dist/cjs/internal/layer.js +25 -48
  436. package/dist/cjs/internal/layer.js.map +1 -1
  437. package/dist/cjs/internal/logger-circular.js +9 -32
  438. package/dist/cjs/internal/logger-circular.js.map +1 -1
  439. package/dist/cjs/internal/logger.js +139 -61
  440. package/dist/cjs/internal/logger.js.map +1 -1
  441. package/dist/cjs/internal/managedRuntime.js +9 -32
  442. package/dist/cjs/internal/managedRuntime.js.map +1 -1
  443. package/dist/cjs/internal/matcher.js +6 -29
  444. package/dist/cjs/internal/matcher.js.map +1 -1
  445. package/dist/cjs/internal/metric/boundaries.js +9 -32
  446. package/dist/cjs/internal/metric/boundaries.js.map +1 -1
  447. package/dist/cjs/internal/metric/hook.js +9 -32
  448. package/dist/cjs/internal/metric/hook.js.map +1 -1
  449. package/dist/cjs/internal/metric/key.js +11 -34
  450. package/dist/cjs/internal/metric/key.js.map +1 -1
  451. package/dist/cjs/internal/metric/keyType.js +8 -31
  452. package/dist/cjs/internal/metric/keyType.js.map +1 -1
  453. package/dist/cjs/internal/metric/label.js +6 -29
  454. package/dist/cjs/internal/metric/label.js.map +1 -1
  455. package/dist/cjs/internal/metric/pair.js +1 -1
  456. package/dist/cjs/internal/metric/pair.js.map +1 -1
  457. package/dist/cjs/internal/metric/polling.js +8 -31
  458. package/dist/cjs/internal/metric/polling.js.map +1 -1
  459. package/dist/cjs/internal/metric/registry.js +8 -31
  460. package/dist/cjs/internal/metric/registry.js.map +1 -1
  461. package/dist/cjs/internal/metric/state.js +8 -31
  462. package/dist/cjs/internal/metric/state.js.map +1 -1
  463. package/dist/cjs/internal/metric.js +15 -38
  464. package/dist/cjs/internal/metric.js.map +1 -1
  465. package/dist/cjs/internal/option.js +7 -30
  466. package/dist/cjs/internal/option.js.map +1 -1
  467. package/dist/cjs/internal/pool.js +43 -42
  468. package/dist/cjs/internal/pool.js.map +1 -1
  469. package/dist/cjs/internal/pubsub.js +229 -72
  470. package/dist/cjs/internal/pubsub.js.map +1 -1
  471. package/dist/cjs/internal/query.js +10 -33
  472. package/dist/cjs/internal/query.js.map +1 -1
  473. package/dist/cjs/internal/queue.js +12 -35
  474. package/dist/cjs/internal/queue.js.map +1 -1
  475. package/dist/cjs/internal/random.js +9 -31
  476. package/dist/cjs/internal/random.js.map +1 -1
  477. package/dist/cjs/internal/rateLimiter.js +6 -29
  478. package/dist/cjs/internal/rateLimiter.js.map +1 -1
  479. package/dist/cjs/internal/rcMap.js +129 -0
  480. package/dist/cjs/internal/rcMap.js.map +1 -0
  481. package/dist/cjs/internal/rcRef.js +122 -0
  482. package/dist/cjs/internal/rcRef.js.map +1 -0
  483. package/dist/cjs/internal/redBlackTree/iterator.js +4 -27
  484. package/dist/cjs/internal/redBlackTree/iterator.js.map +1 -1
  485. package/dist/cjs/internal/redBlackTree.js +13 -36
  486. package/dist/cjs/internal/redBlackTree.js.map +1 -1
  487. package/dist/cjs/internal/redacted.js +8 -31
  488. package/dist/cjs/internal/redacted.js.map +1 -1
  489. package/dist/cjs/internal/ref.js +8 -31
  490. package/dist/cjs/internal/ref.js.map +1 -1
  491. package/dist/cjs/internal/reloadable.js +10 -33
  492. package/dist/cjs/internal/reloadable.js.map +1 -1
  493. package/dist/cjs/internal/request.js +7 -30
  494. package/dist/cjs/internal/request.js.map +1 -1
  495. package/dist/cjs/internal/resource.js +7 -30
  496. package/dist/cjs/internal/resource.js.map +1 -1
  497. package/dist/cjs/internal/ringBuffer.js +5 -28
  498. package/dist/cjs/internal/ringBuffer.js.map +1 -1
  499. package/dist/cjs/internal/runtime.js +23 -46
  500. package/dist/cjs/internal/runtime.js.map +1 -1
  501. package/dist/cjs/internal/runtimeFlags.js +5 -28
  502. package/dist/cjs/internal/runtimeFlags.js.map +1 -1
  503. package/dist/cjs/internal/runtimeFlagsPatch.js +1 -1
  504. package/dist/cjs/internal/runtimeFlagsPatch.js.map +1 -1
  505. package/dist/cjs/internal/schedule/decision.js +4 -27
  506. package/dist/cjs/internal/schedule/decision.js.map +1 -1
  507. package/dist/cjs/internal/schedule/interval.js +5 -28
  508. package/dist/cjs/internal/schedule/interval.js.map +1 -1
  509. package/dist/cjs/internal/schedule/intervals.js +7 -30
  510. package/dist/cjs/internal/schedule/intervals.js.map +1 -1
  511. package/dist/cjs/internal/schedule.js +21 -44
  512. package/dist/cjs/internal/schedule.js.map +1 -1
  513. package/dist/cjs/internal/scopedCache.js +19 -42
  514. package/dist/cjs/internal/scopedCache.js.map +1 -1
  515. package/dist/cjs/internal/scopedRef.js +10 -33
  516. package/dist/cjs/internal/scopedRef.js.map +1 -1
  517. package/dist/cjs/internal/secret.js +5 -28
  518. package/dist/cjs/internal/secret.js.map +1 -1
  519. package/dist/cjs/internal/singleShotGen.js.map +1 -1
  520. package/dist/cjs/internal/sink.js +22 -45
  521. package/dist/cjs/internal/sink.js.map +1 -1
  522. package/dist/cjs/internal/stm/core.js +30 -53
  523. package/dist/cjs/internal/stm/core.js.map +1 -1
  524. package/dist/cjs/internal/stm/stm/entry.js +3 -26
  525. package/dist/cjs/internal/stm/stm/entry.js.map +1 -1
  526. package/dist/cjs/internal/stm/stm/journal.js +3 -26
  527. package/dist/cjs/internal/stm/stm/journal.js.map +1 -1
  528. package/dist/cjs/internal/stm/stm/stmState.js +9 -32
  529. package/dist/cjs/internal/stm/stm/stmState.js.map +1 -1
  530. package/dist/cjs/internal/stm/stm/tExit.js +7 -30
  531. package/dist/cjs/internal/stm/stm/tExit.js.map +1 -1
  532. package/dist/cjs/internal/stm/stm/tryCommit.js +3 -26
  533. package/dist/cjs/internal/stm/stm/tryCommit.js.map +1 -1
  534. package/dist/cjs/internal/stm/stm/versioned.js.map +1 -1
  535. package/dist/cjs/internal/stm/stm.js +17 -40
  536. package/dist/cjs/internal/stm/stm.js.map +1 -1
  537. package/dist/cjs/internal/stm/tArray.js +9 -32
  538. package/dist/cjs/internal/stm/tArray.js.map +1 -1
  539. package/dist/cjs/internal/stm/tDeferred.js +8 -31
  540. package/dist/cjs/internal/stm/tDeferred.js.map +1 -1
  541. package/dist/cjs/internal/stm/tMap.js +15 -38
  542. package/dist/cjs/internal/stm/tMap.js.map +1 -1
  543. package/dist/cjs/internal/stm/tPriorityQueue.js +9 -32
  544. package/dist/cjs/internal/stm/tPriorityQueue.js.map +1 -1
  545. package/dist/cjs/internal/stm/tPubSub.js +12 -35
  546. package/dist/cjs/internal/stm/tPubSub.js.map +1 -1
  547. package/dist/cjs/internal/stm/tQueue.js +12 -35
  548. package/dist/cjs/internal/stm/tQueue.js.map +1 -1
  549. package/dist/cjs/internal/stm/tRandom.js +10 -33
  550. package/dist/cjs/internal/stm/tRandom.js.map +1 -1
  551. package/dist/cjs/internal/stm/tReentrantLock.js +10 -33
  552. package/dist/cjs/internal/stm/tReentrantLock.js.map +1 -1
  553. package/dist/cjs/internal/stm/tRef.js +7 -30
  554. package/dist/cjs/internal/stm/tRef.js.map +1 -1
  555. package/dist/cjs/internal/stm/tSemaphore.js +8 -31
  556. package/dist/cjs/internal/stm/tSemaphore.js.map +1 -1
  557. package/dist/cjs/internal/stm/tSet.js +10 -33
  558. package/dist/cjs/internal/stm/tSet.js.map +1 -1
  559. package/dist/cjs/internal/stream/emit.js +8 -31
  560. package/dist/cjs/internal/stream/emit.js.map +1 -1
  561. package/dist/cjs/internal/stream/haltStrategy.js +4 -27
  562. package/dist/cjs/internal/stream/haltStrategy.js.map +1 -1
  563. package/dist/cjs/internal/stream/handoff.js +7 -30
  564. package/dist/cjs/internal/stream/handoff.js.map +1 -1
  565. package/dist/cjs/internal/stream/pull.js +7 -30
  566. package/dist/cjs/internal/stream/pull.js.map +1 -1
  567. package/dist/cjs/internal/stream.js +103 -80
  568. package/dist/cjs/internal/stream.js.map +1 -1
  569. package/dist/cjs/internal/subscriptionRef.js +13 -36
  570. package/dist/cjs/internal/subscriptionRef.js.map +1 -1
  571. package/dist/cjs/internal/supervisor/patch.js +8 -31
  572. package/dist/cjs/internal/supervisor/patch.js.map +1 -1
  573. package/dist/cjs/internal/supervisor.js +8 -31
  574. package/dist/cjs/internal/supervisor.js.map +1 -1
  575. package/dist/cjs/internal/synchronizedRef.js +5 -28
  576. package/dist/cjs/internal/synchronizedRef.js.map +1 -1
  577. package/dist/cjs/internal/take.js +9 -32
  578. package/dist/cjs/internal/take.js.map +1 -1
  579. package/dist/cjs/internal/tracer.js +3 -26
  580. package/dist/cjs/internal/tracer.js.map +1 -1
  581. package/dist/cjs/internal/trie.js +9 -32
  582. package/dist/cjs/internal/trie.js.map +1 -1
  583. package/dist/cjs/internal/version.js +1 -1
  584. package/dist/dts/Cause.d.ts +40 -1
  585. package/dist/dts/Cause.d.ts.map +1 -1
  586. package/dist/dts/Channel.d.ts +3 -3
  587. package/dist/dts/Channel.d.ts.map +1 -1
  588. package/dist/dts/Config.d.ts +5 -0
  589. package/dist/dts/Config.d.ts.map +1 -1
  590. package/dist/dts/Console.d.ts +2 -4
  591. package/dist/dts/Console.d.ts.map +1 -1
  592. package/dist/dts/Duration.d.ts +5 -0
  593. package/dist/dts/Duration.d.ts.map +1 -1
  594. package/dist/dts/Logger.d.ts +15 -0
  595. package/dist/dts/Logger.d.ts.map +1 -1
  596. package/dist/dts/PubSub.d.ts +15 -4
  597. package/dist/dts/PubSub.d.ts.map +1 -1
  598. package/dist/dts/Random.d.ts +8 -0
  599. package/dist/dts/Random.d.ts.map +1 -1
  600. package/dist/dts/RcMap.d.ts +93 -0
  601. package/dist/dts/RcMap.d.ts.map +1 -0
  602. package/dist/dts/RcRef.d.ts +83 -0
  603. package/dist/dts/RcRef.d.ts.map +1 -0
  604. package/dist/dts/Stream.d.ts +1139 -29
  605. package/dist/dts/Stream.d.ts.map +1 -1
  606. package/dist/dts/index.d.ts +8 -0
  607. package/dist/dts/index.d.ts.map +1 -1
  608. package/dist/dts/internal/core-effect.d.ts.map +1 -1
  609. package/dist/dts/internal/fiberRuntime.d.ts.map +1 -1
  610. package/dist/dts/internal/logger.d.ts.map +1 -1
  611. package/dist/dts/internal/random.d.ts +1 -1
  612. package/dist/dts/internal/random.d.ts.map +1 -1
  613. package/dist/dts/internal/rcMap.d.ts +2 -0
  614. package/dist/dts/internal/rcMap.d.ts.map +1 -0
  615. package/dist/dts/internal/rcRef.d.ts +2 -0
  616. package/dist/dts/internal/rcRef.d.ts.map +1 -0
  617. package/dist/dts/internal/stream.d.ts +1 -0
  618. package/dist/dts/internal/stream.d.ts.map +1 -1
  619. package/dist/esm/Cause.js +21 -0
  620. package/dist/esm/Cause.js.map +1 -1
  621. package/dist/esm/Channel.js.map +1 -1
  622. package/dist/esm/Config.js.map +1 -1
  623. package/dist/esm/Console.js.map +1 -1
  624. package/dist/esm/Data.js +3 -1
  625. package/dist/esm/Data.js.map +1 -1
  626. package/dist/esm/Duration.js +20 -0
  627. package/dist/esm/Duration.js.map +1 -1
  628. package/dist/esm/Logger.js +10 -0
  629. package/dist/esm/Logger.js.map +1 -1
  630. package/dist/esm/PubSub.js.map +1 -1
  631. package/dist/esm/Random.js +8 -0
  632. package/dist/esm/Random.js.map +1 -1
  633. package/dist/esm/RcMap.js +44 -0
  634. package/dist/esm/RcMap.js.map +1 -0
  635. package/dist/esm/RcRef.js +43 -0
  636. package/dist/esm/RcRef.js.map +1 -0
  637. package/dist/esm/Stream.js +1102 -3
  638. package/dist/esm/Stream.js.map +1 -1
  639. package/dist/esm/index.js +8 -0
  640. package/dist/esm/index.js.map +1 -1
  641. package/dist/esm/internal/cause.js +21 -5
  642. package/dist/esm/internal/cause.js.map +1 -1
  643. package/dist/esm/internal/channel/channelExecutor.js.map +1 -1
  644. package/dist/esm/internal/channel.js.map +1 -1
  645. package/dist/esm/internal/core-effect.js +0 -5
  646. package/dist/esm/internal/core-effect.js.map +1 -1
  647. package/dist/esm/internal/core.js +11 -7
  648. package/dist/esm/internal/core.js.map +1 -1
  649. package/dist/esm/internal/defaultServices.js +1 -1
  650. package/dist/esm/internal/defaultServices.js.map +1 -1
  651. package/dist/esm/internal/fiberRuntime.js +2 -0
  652. package/dist/esm/internal/fiberRuntime.js.map +1 -1
  653. package/dist/esm/internal/logger.js +126 -26
  654. package/dist/esm/internal/logger.js.map +1 -1
  655. package/dist/esm/internal/pool.js +29 -5
  656. package/dist/esm/internal/pool.js.map +1 -1
  657. package/dist/esm/internal/pubsub.js +216 -36
  658. package/dist/esm/internal/pubsub.js.map +1 -1
  659. package/dist/esm/internal/random.js +2 -1
  660. package/dist/esm/internal/random.js.map +1 -1
  661. package/dist/esm/internal/rcMap.js +120 -0
  662. package/dist/esm/internal/rcMap.js.map +1 -0
  663. package/dist/esm/internal/rcRef.js +112 -0
  664. package/dist/esm/internal/rcRef.js.map +1 -0
  665. package/dist/esm/internal/stream.js +53 -8
  666. package/dist/esm/internal/stream.js.map +1 -1
  667. package/dist/esm/internal/version.js +1 -1
  668. package/package.json +17 -1
  669. package/src/Cause.ts +47 -1
  670. package/src/Channel.ts +3 -3
  671. package/src/Config.ts +6 -0
  672. package/src/Console.ts +2 -4
  673. package/src/Data.ts +1 -1
  674. package/src/Duration.ts +18 -0
  675. package/src/Logger.ts +19 -0
  676. package/src/PubSub.ts +11 -4
  677. package/src/Random.ts +9 -0
  678. package/src/RcMap.ts +103 -0
  679. package/src/RcRef.ts +91 -0
  680. package/src/Stream.ts +1158 -29
  681. package/src/index.ts +10 -0
  682. package/src/internal/cause.ts +26 -5
  683. package/src/internal/channel/channelExecutor.ts +1 -1
  684. package/src/internal/channel.ts +4 -3
  685. package/src/internal/core-effect.ts +0 -5
  686. package/src/internal/core.ts +19 -9
  687. package/src/internal/defaultServices.ts +1 -1
  688. package/src/internal/fiberRuntime.ts +6 -0
  689. package/src/internal/logger.ts +133 -27
  690. package/src/internal/pool.ts +36 -5
  691. package/src/internal/pubsub.ts +249 -58
  692. package/src/internal/random.ts +2 -1
  693. package/src/internal/rcMap.ts +213 -0
  694. package/src/internal/rcRef.ts +172 -0
  695. package/src/internal/stream.ts +325 -111
  696. package/src/internal/version.ts +1 -1
@@ -4,42 +4,19 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.unsafeMakeSubscription = exports.unsafeMakePubSub = exports.unbounded = exports.subscribe = exports.sliding = exports.size = exports.shutdown = exports.publishAll = exports.publish = exports.makePubSub = exports.isShutdown = exports.isFull = exports.isEmpty = exports.dropping = exports.capacity = exports.bounded = exports.awaitShutdown = exports.SlidingStrategy = exports.DroppingStrategy = void 0;
7
- var Chunk = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../Chunk.js"));
8
- var _Function = /*#__PURE__*/require("../Function.js");
9
- var MutableQueue = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../MutableQueue.js"));
10
- var MutableRef = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../MutableRef.js"));
11
- var _Number = /*#__PURE__*/require("../Number.js");
12
- var Option = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../Option.js"));
13
- var _Pipeable = /*#__PURE__*/require("../Pipeable.js");
14
- var core = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./core.js"));
15
- var executionStrategy = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./executionStrategy.js"));
16
- var fiberRuntime = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./fiberRuntime.js"));
17
- var queue = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./queue.js"));
18
- function _getRequireWildcardCache(e) {
19
- if ("function" != typeof WeakMap) return null;
20
- var r = new WeakMap(),
21
- t = new WeakMap();
22
- return (_getRequireWildcardCache = function (e) {
23
- return e ? t : r;
24
- })(e);
25
- }
26
- function _interopRequireWildcard(e, r) {
27
- if (!r && e && e.__esModule) return e;
28
- if (null === e || "object" != typeof e && "function" != typeof e) return {
29
- default: e
30
- };
31
- var t = _getRequireWildcardCache(r);
32
- if (t && t.has(e)) return t.get(e);
33
- var n = {
34
- __proto__: null
35
- },
36
- a = Object.defineProperty && Object.getOwnPropertyDescriptor;
37
- for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) {
38
- var i = a ? Object.getOwnPropertyDescriptor(e, u) : null;
39
- i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u];
40
- }
41
- return n.default = e, t && t.set(e, n), n;
42
- }
7
+ var Chunk = _interopRequireWildcard(require("../Chunk.js"));
8
+ var _Function = require("../Function.js");
9
+ var MutableQueue = _interopRequireWildcard(require("../MutableQueue.js"));
10
+ var MutableRef = _interopRequireWildcard(require("../MutableRef.js"));
11
+ var _Number = require("../Number.js");
12
+ var Option = _interopRequireWildcard(require("../Option.js"));
13
+ var _Pipeable = require("../Pipeable.js");
14
+ var core = _interopRequireWildcard(require("./core.js"));
15
+ var executionStrategy = _interopRequireWildcard(require("./executionStrategy.js"));
16
+ var fiberRuntime = _interopRequireWildcard(require("./fiberRuntime.js"));
17
+ var queue = _interopRequireWildcard(require("./queue.js"));
18
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
19
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
43
20
  const AbsentValue = /*#__PURE__*/Symbol.for("effect/PubSub/AbsentValue");
44
21
  const addSubscribers = (subscription, pollers) => subscribers => {
45
22
  if (!subscribers.has(subscription)) {
@@ -59,16 +36,28 @@ const removeSubscribers = (subscription, pollers) => subscribers => {
59
36
  }
60
37
  };
61
38
  /** @internal */
62
- const bounded = requestedCapacity => (0, _Function.pipe)(core.sync(() => makeBoundedPubSub(requestedCapacity)), core.flatMap(atomicPubSub => makePubSub(atomicPubSub, new BackPressureStrategy())));
39
+ const bounded = capacity => core.suspend(() => {
40
+ const pubsub = makeBoundedPubSub(capacity);
41
+ return makePubSub(pubsub, new BackPressureStrategy());
42
+ });
63
43
  /** @internal */
64
44
  exports.bounded = bounded;
65
- const dropping = requestedCapacity => (0, _Function.pipe)(core.sync(() => makeBoundedPubSub(requestedCapacity)), core.flatMap(atomicPubSub => makePubSub(atomicPubSub, new DroppingStrategy())));
45
+ const dropping = capacity => core.suspend(() => {
46
+ const pubsub = makeBoundedPubSub(capacity);
47
+ return makePubSub(pubsub, new DroppingStrategy());
48
+ });
66
49
  /** @internal */
67
50
  exports.dropping = dropping;
68
- const sliding = requestedCapacity => (0, _Function.pipe)(core.sync(() => makeBoundedPubSub(requestedCapacity)), core.flatMap(atomicPubSub => makePubSub(atomicPubSub, new SlidingStrategy())));
51
+ const sliding = capacity => core.suspend(() => {
52
+ const pubsub = makeBoundedPubSub(capacity);
53
+ return makePubSub(pubsub, new SlidingStrategy());
54
+ });
69
55
  /** @internal */
70
56
  exports.sliding = sliding;
71
- const unbounded = () => (0, _Function.pipe)(core.sync(() => makeUnboundedPubSub()), core.flatMap(atomicPubSub => makePubSub(atomicPubSub, new DroppingStrategy())));
57
+ const unbounded = options => core.suspend(() => {
58
+ const pubsub = makeUnboundedPubSub(options);
59
+ return makePubSub(pubsub, new DroppingStrategy());
60
+ });
72
61
  /** @internal */
73
62
  exports.unbounded = unbounded;
74
63
  const capacity = self => self.capacity();
@@ -99,43 +88,48 @@ const publishAll = exports.publishAll = /*#__PURE__*/(0, _Function.dual)(2, (sel
99
88
  const subscribe = self => self.subscribe;
100
89
  /** @internal */
101
90
  exports.subscribe = subscribe;
102
- const makeBoundedPubSub = requestedCapacity => {
103
- ensureCapacity(requestedCapacity);
104
- if (requestedCapacity === 1) {
105
- return new BoundedPubSubSingle();
106
- } else if ((0, _Number.nextPow2)(requestedCapacity) === requestedCapacity) {
107
- return new BoundedPubSubPow2(requestedCapacity);
91
+ const makeBoundedPubSub = capacity => {
92
+ const options = typeof capacity === "number" ? {
93
+ capacity
94
+ } : capacity;
95
+ ensureCapacity(options.capacity);
96
+ const replayBuffer = options.replay && options.replay > 0 ? new ReplayBuffer(Math.ceil(options.replay)) : undefined;
97
+ if (options.capacity === 1) {
98
+ return new BoundedPubSubSingle(replayBuffer);
99
+ } else if ((0, _Number.nextPow2)(options.capacity) === options.capacity) {
100
+ return new BoundedPubSubPow2(options.capacity, replayBuffer);
108
101
  } else {
109
- return new BoundedPubSubArb(requestedCapacity);
102
+ return new BoundedPubSubArb(options.capacity, replayBuffer);
110
103
  }
111
104
  };
112
105
  /** @internal */
113
- const makeUnboundedPubSub = () => {
114
- return new UnboundedPubSub();
115
- };
106
+ const makeUnboundedPubSub = options => new UnboundedPubSub(options?.replay ? new ReplayBuffer(options.replay) : undefined);
116
107
  /** @internal */
117
108
  const makeSubscription = (pubsub, subscribers, strategy) => core.map(core.deferredMake(), deferred => unsafeMakeSubscription(pubsub, subscribers, pubsub.subscribe(), MutableQueue.unbounded(), deferred, MutableRef.make(false), strategy));
118
109
  /** @internal */
119
- const unsafeMakeSubscription = (pubsub, subscribers, subscription, pollers, shutdownHook, shutdownFlag, strategy) => {
120
- return new SubscriptionImpl(pubsub, subscribers, subscription, pollers, shutdownHook, shutdownFlag, strategy);
121
- };
110
+ const unsafeMakeSubscription = (pubsub, subscribers, subscription, pollers, shutdownHook, shutdownFlag, strategy) => new SubscriptionImpl(pubsub, subscribers, subscription, pollers, shutdownHook, shutdownFlag, strategy, pubsub.replayWindow());
122
111
  /** @internal */
123
112
  exports.unsafeMakeSubscription = unsafeMakeSubscription;
124
113
  class BoundedPubSubArb {
114
+ capacity;
115
+ replayBuffer;
125
116
  array;
126
117
  publisherIndex = 0;
127
118
  subscribers;
128
119
  subscriberCount = 0;
129
120
  subscribersIndex = 0;
130
- capacity;
131
- constructor(requestedCapacity) {
121
+ constructor(capacity, replayBuffer) {
122
+ this.capacity = capacity;
123
+ this.replayBuffer = replayBuffer;
132
124
  this.array = Array.from({
133
- length: requestedCapacity
125
+ length: capacity
134
126
  });
135
127
  this.subscribers = Array.from({
136
- length: requestedCapacity
128
+ length: capacity
137
129
  });
138
- this.capacity = requestedCapacity;
130
+ }
131
+ replayWindow() {
132
+ return this.replayBuffer ? new ReplayWindowImpl(this.replayBuffer) : emptyReplayWindow;
139
133
  }
140
134
  isEmpty() {
141
135
  return this.publisherIndex === this.subscribersIndex;
@@ -156,10 +150,16 @@ class BoundedPubSubArb {
156
150
  this.subscribers[index] = this.subscriberCount;
157
151
  this.publisherIndex += 1;
158
152
  }
153
+ if (this.replayBuffer) {
154
+ this.replayBuffer.offer(value);
155
+ }
159
156
  return true;
160
157
  }
161
158
  publishAll(elements) {
162
159
  if (this.subscriberCount === 0) {
160
+ if (this.replayBuffer) {
161
+ this.replayBuffer.offerAll(elements);
162
+ }
163
163
  return Chunk.empty();
164
164
  }
165
165
  const chunk = Chunk.fromIterable(elements);
@@ -178,6 +178,9 @@ class BoundedPubSubArb {
178
178
  this.array[index] = a;
179
179
  this.subscribers[index] = this.subscriberCount;
180
180
  this.publisherIndex += 1;
181
+ if (this.replayBuffer) {
182
+ this.replayBuffer.offer(a);
183
+ }
181
184
  }
182
185
  return Chunk.drop(chunk, iteratorIndex);
183
186
  }
@@ -188,6 +191,9 @@ class BoundedPubSubArb {
188
191
  this.subscribers[index] = 0;
189
192
  this.subscribersIndex += 1;
190
193
  }
194
+ if (this.replayBuffer) {
195
+ this.replayBuffer.slide();
196
+ }
191
197
  }
192
198
  subscribe() {
193
199
  this.subscriberCount += 1;
@@ -274,22 +280,27 @@ class BoundedPubSubArbSubscription {
274
280
  }
275
281
  /** @internal */
276
282
  class BoundedPubSubPow2 {
283
+ capacity;
284
+ replayBuffer;
277
285
  array;
278
286
  mask;
279
287
  publisherIndex = 0;
280
288
  subscribers;
281
289
  subscriberCount = 0;
282
290
  subscribersIndex = 0;
283
- capacity;
284
- constructor(requestedCapacity) {
291
+ constructor(capacity, replayBuffer) {
292
+ this.capacity = capacity;
293
+ this.replayBuffer = replayBuffer;
285
294
  this.array = Array.from({
286
- length: requestedCapacity
295
+ length: capacity
287
296
  });
288
- this.mask = requestedCapacity - 1;
297
+ this.mask = capacity - 1;
289
298
  this.subscribers = Array.from({
290
- length: requestedCapacity
299
+ length: capacity
291
300
  });
292
- this.capacity = requestedCapacity;
301
+ }
302
+ replayWindow() {
303
+ return this.replayBuffer ? new ReplayWindowImpl(this.replayBuffer) : emptyReplayWindow;
293
304
  }
294
305
  isEmpty() {
295
306
  return this.publisherIndex === this.subscribersIndex;
@@ -310,10 +321,16 @@ class BoundedPubSubPow2 {
310
321
  this.subscribers[index] = this.subscriberCount;
311
322
  this.publisherIndex += 1;
312
323
  }
324
+ if (this.replayBuffer) {
325
+ this.replayBuffer.offer(value);
326
+ }
313
327
  return true;
314
328
  }
315
329
  publishAll(elements) {
316
330
  if (this.subscriberCount === 0) {
331
+ if (this.replayBuffer) {
332
+ this.replayBuffer.offerAll(elements);
333
+ }
317
334
  return Chunk.empty();
318
335
  }
319
336
  const chunk = Chunk.fromIterable(elements);
@@ -332,6 +349,9 @@ class BoundedPubSubPow2 {
332
349
  this.array[index] = elem;
333
350
  this.subscribers[index] = this.subscriberCount;
334
351
  this.publisherIndex += 1;
352
+ if (this.replayBuffer) {
353
+ this.replayBuffer.offer(elem);
354
+ }
335
355
  }
336
356
  return Chunk.drop(chunk, iteratorIndex);
337
357
  }
@@ -342,6 +362,9 @@ class BoundedPubSubPow2 {
342
362
  this.subscribers[index] = 0;
343
363
  this.subscribersIndex += 1;
344
364
  }
365
+ if (this.replayBuffer) {
366
+ this.replayBuffer.slide();
367
+ }
345
368
  }
346
369
  subscribe() {
347
370
  this.subscriberCount += 1;
@@ -429,11 +452,18 @@ class BoundedPubSubPow2Subscription {
429
452
  }
430
453
  /** @internal */
431
454
  class BoundedPubSubSingle {
455
+ replayBuffer;
432
456
  publisherIndex = 0;
433
457
  subscriberCount = 0;
434
458
  subscribers = 0;
435
459
  value = AbsentValue;
436
460
  capacity = 1;
461
+ constructor(replayBuffer) {
462
+ this.replayBuffer = replayBuffer;
463
+ }
464
+ replayWindow() {
465
+ return this.replayBuffer ? new ReplayWindowImpl(this.replayBuffer) : emptyReplayWindow;
466
+ }
437
467
  pipe() {
438
468
  return (0, _Pipeable.pipeArguments)(this, arguments);
439
469
  }
@@ -455,10 +485,16 @@ class BoundedPubSubSingle {
455
485
  this.subscribers = this.subscriberCount;
456
486
  this.publisherIndex += 1;
457
487
  }
488
+ if (this.replayBuffer) {
489
+ this.replayBuffer.offer(value);
490
+ }
458
491
  return true;
459
492
  }
460
493
  publishAll(elements) {
461
494
  if (this.subscriberCount === 0) {
495
+ if (this.replayBuffer) {
496
+ this.replayBuffer.offerAll(elements);
497
+ }
462
498
  return Chunk.empty();
463
499
  }
464
500
  const chunk = Chunk.fromIterable(elements);
@@ -476,6 +512,9 @@ class BoundedPubSubSingle {
476
512
  this.subscribers = 0;
477
513
  this.value = AbsentValue;
478
514
  }
515
+ if (this.replayBuffer) {
516
+ this.replayBuffer.slide();
517
+ }
479
518
  }
480
519
  subscribe() {
481
520
  this.subscriberCount += 1;
@@ -537,6 +576,7 @@ class BoundedPubSubSingleSubscription {
537
576
  }
538
577
  /** @internal */
539
578
  class UnboundedPubSub {
579
+ replayBuffer;
540
580
  publisherHead = {
541
581
  value: AbsentValue,
542
582
  subscribers: 0,
@@ -546,6 +586,12 @@ class UnboundedPubSub {
546
586
  publisherIndex = 0;
547
587
  subscribersIndex = 0;
548
588
  capacity = Number.MAX_SAFE_INTEGER;
589
+ constructor(replayBuffer) {
590
+ this.replayBuffer = replayBuffer;
591
+ }
592
+ replayWindow() {
593
+ return this.replayBuffer ? new ReplayWindowImpl(this.replayBuffer) : emptyReplayWindow;
594
+ }
549
595
  isEmpty() {
550
596
  return this.publisherHead === this.publisherTail;
551
597
  }
@@ -566,6 +612,9 @@ class UnboundedPubSub {
566
612
  this.publisherTail = this.publisherTail.next;
567
613
  this.publisherIndex += 1;
568
614
  }
615
+ if (this.replayBuffer) {
616
+ this.replayBuffer.offer(value);
617
+ }
569
618
  return true;
570
619
  }
571
620
  publishAll(elements) {
@@ -573,6 +622,8 @@ class UnboundedPubSub {
573
622
  for (const a of elements) {
574
623
  this.publish(a);
575
624
  }
625
+ } else if (this.replayBuffer) {
626
+ this.replayBuffer.offerAll(elements);
576
627
  }
577
628
  return Chunk.empty();
578
629
  }
@@ -582,6 +633,9 @@ class UnboundedPubSub {
582
633
  this.publisherHead.value = AbsentValue;
583
634
  this.subscribersIndex += 1;
584
635
  }
636
+ if (this.replayBuffer) {
637
+ this.replayBuffer.slide();
638
+ }
585
639
  }
586
640
  subscribe() {
587
641
  this.publisherTail.subscribers += 1;
@@ -696,8 +750,9 @@ class SubscriptionImpl {
696
750
  shutdownHook;
697
751
  shutdownFlag;
698
752
  strategy;
753
+ replayWindow;
699
754
  [queue.DequeueTypeId] = queue.dequeueVariance;
700
- constructor(pubsub, subscribers, subscription, pollers, shutdownHook, shutdownFlag, strategy) {
755
+ constructor(pubsub, subscribers, subscription, pollers, shutdownHook, shutdownFlag, strategy, replayWindow) {
701
756
  this.pubsub = pubsub;
702
757
  this.subscribers = subscribers;
703
758
  this.subscription = subscription;
@@ -705,6 +760,7 @@ class SubscriptionImpl {
705
760
  this.shutdownHook = shutdownHook;
706
761
  this.shutdownFlag = shutdownFlag;
707
762
  this.strategy = strategy;
763
+ this.replayWindow = replayWindow;
708
764
  }
709
765
  pipe() {
710
766
  return (0, _Pipeable.pipeArguments)(this, arguments);
@@ -716,16 +772,16 @@ class SubscriptionImpl {
716
772
  return !MutableRef.get(this.shutdownFlag);
717
773
  }
718
774
  get size() {
719
- return core.suspend(() => MutableRef.get(this.shutdownFlag) ? core.interrupt : core.succeed(this.subscription.size()));
775
+ return core.suspend(() => MutableRef.get(this.shutdownFlag) ? core.interrupt : core.succeed(this.subscription.size() + this.replayWindow.remaining));
720
776
  }
721
777
  unsafeSize() {
722
778
  if (MutableRef.get(this.shutdownFlag)) {
723
779
  return Option.none();
724
780
  }
725
- return Option.some(this.subscription.size());
781
+ return Option.some(this.subscription.size() + this.replayWindow.remaining);
726
782
  }
727
783
  get isFull() {
728
- return core.map(this.size, size => size === this.capacity());
784
+ return core.suspend(() => MutableRef.get(this.shutdownFlag) ? core.interrupt : core.succeed(this.subscription.size() === this.capacity()));
729
785
  }
730
786
  get isEmpty() {
731
787
  return core.map(this.size, size => size === 0);
@@ -751,6 +807,10 @@ class SubscriptionImpl {
751
807
  if (MutableRef.get(this.shutdownFlag)) {
752
808
  return core.interrupt;
753
809
  }
810
+ if (this.replayWindow.remaining > 0) {
811
+ const message = this.replayWindow.take();
812
+ return core.succeed(message);
813
+ }
754
814
  const message = MutableQueue.isEmpty(this.pollers) ? this.subscription.poll(MutableQueue.EmptyMutableQueue) : MutableQueue.EmptyMutableQueue;
755
815
  if (message === MutableQueue.EmptyMutableQueue) {
756
816
  const deferred = core.deferredUnsafeMake(state.id());
@@ -773,6 +833,9 @@ class SubscriptionImpl {
773
833
  }
774
834
  const as = MutableQueue.isEmpty(this.pollers) ? unsafePollAllSubscription(this.subscription) : Chunk.empty();
775
835
  this.strategy.unsafeOnPubSubEmptySpace(this.pubsub, this.subscribers);
836
+ if (this.replayWindow.remaining > 0) {
837
+ return core.succeed(Chunk.appendAll(this.replayWindow.takeAll(), as));
838
+ }
776
839
  return core.succeed(as);
777
840
  });
778
841
  }
@@ -781,9 +844,17 @@ class SubscriptionImpl {
781
844
  if (MutableRef.get(this.shutdownFlag)) {
782
845
  return core.interrupt;
783
846
  }
847
+ let replay = undefined;
848
+ if (this.replayWindow.remaining >= max) {
849
+ const as = this.replayWindow.takeN(max);
850
+ return core.succeed(as);
851
+ } else if (this.replayWindow.remaining > 0) {
852
+ replay = this.replayWindow.takeAll();
853
+ max = max - replay.length;
854
+ }
784
855
  const as = MutableQueue.isEmpty(this.pollers) ? unsafePollN(this.subscription, max) : Chunk.empty();
785
856
  this.strategy.unsafeOnPubSubEmptySpace(this.pubsub, this.subscribers);
786
- return core.succeed(as);
857
+ return replay ? core.succeed(Chunk.appendAll(replay, as)) : core.succeed(as);
787
858
  });
788
859
  }
789
860
  takeBetween(min, max) {
@@ -910,9 +981,7 @@ class PubSubImpl {
910
981
  const makePubSub = (pubsub, strategy) => core.flatMap(fiberRuntime.scopeMake(), scope => core.map(core.deferredMake(), deferred => unsafeMakePubSub(pubsub, new Map(), scope, deferred, MutableRef.make(false), strategy)));
911
982
  /** @internal */
912
983
  exports.makePubSub = makePubSub;
913
- const unsafeMakePubSub = (pubsub, subscribers, scope, shutdownHook, shutdownFlag, strategy) => {
914
- return new PubSubImpl(pubsub, subscribers, scope, shutdownHook, shutdownFlag, strategy);
915
- };
984
+ const unsafeMakePubSub = (pubsub, subscribers, scope, shutdownHook, shutdownFlag, strategy) => new PubSubImpl(pubsub, subscribers, scope, shutdownHook, shutdownFlag, strategy);
916
985
  /** @internal */
917
986
  exports.unsafeMakePubSub = unsafeMakePubSub;
918
987
  const ensureCapacity = capacity => {
@@ -1123,4 +1192,92 @@ const unsafeStrategyCompleteSubscribers = (strategy, pubsub, subscribers) => {
1123
1192
  }
1124
1193
  }
1125
1194
  };
1195
+ class ReplayBuffer {
1196
+ capacity;
1197
+ constructor(capacity) {
1198
+ this.capacity = capacity;
1199
+ }
1200
+ head = {
1201
+ value: AbsentValue,
1202
+ next: null
1203
+ };
1204
+ tail = this.head;
1205
+ size = 0;
1206
+ index = 0;
1207
+ slide() {
1208
+ this.index++;
1209
+ }
1210
+ offer(a) {
1211
+ this.tail.value = a;
1212
+ this.tail.next = {
1213
+ value: AbsentValue,
1214
+ next: null
1215
+ };
1216
+ this.tail = this.tail.next;
1217
+ if (this.size === this.capacity) {
1218
+ this.head = this.head.next;
1219
+ } else {
1220
+ this.size += 1;
1221
+ }
1222
+ }
1223
+ offerAll(as) {
1224
+ for (const a of as) {
1225
+ this.offer(a);
1226
+ }
1227
+ }
1228
+ }
1229
+ class ReplayWindowImpl {
1230
+ buffer;
1231
+ head;
1232
+ index;
1233
+ remaining;
1234
+ constructor(buffer) {
1235
+ this.buffer = buffer;
1236
+ this.index = buffer.index;
1237
+ this.remaining = buffer.size;
1238
+ this.head = buffer.head;
1239
+ }
1240
+ fastForward() {
1241
+ while (this.index < this.buffer.index) {
1242
+ this.head = this.head.next;
1243
+ this.index++;
1244
+ }
1245
+ }
1246
+ take() {
1247
+ if (this.remaining === 0) {
1248
+ return undefined;
1249
+ } else if (this.index < this.buffer.index) {
1250
+ this.fastForward();
1251
+ }
1252
+ this.remaining--;
1253
+ const value = this.head.value;
1254
+ this.head = this.head.next;
1255
+ return value;
1256
+ }
1257
+ takeN(n) {
1258
+ if (this.remaining === 0) {
1259
+ return Chunk.empty();
1260
+ } else if (this.index < this.buffer.index) {
1261
+ this.fastForward();
1262
+ }
1263
+ const len = Math.min(n, this.remaining);
1264
+ const items = new Array(len);
1265
+ for (let i = 0; i < len; i++) {
1266
+ const value = this.head.value;
1267
+ this.head = this.head.next;
1268
+ items[i] = value;
1269
+ }
1270
+ this.remaining -= len;
1271
+ return Chunk.unsafeFromArray(items);
1272
+ }
1273
+ takeAll() {
1274
+ return this.takeN(this.remaining);
1275
+ }
1276
+ }
1277
+ const emptyReplayWindow = {
1278
+ remaining: 0,
1279
+ take: () => undefined,
1280
+ takeN: () => Chunk.empty(),
1281
+ takeAll: () => Chunk.empty()
1282
+ };
1126
1283
  //# sourceMappingURL=pubsub.js.map