effect 4.0.0-beta.6 → 4.0.0-beta.60

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 (1475) hide show
  1. package/dist/Array.d.ts +213 -385
  2. package/dist/Array.d.ts.map +1 -1
  3. package/dist/Array.js +149 -102
  4. package/dist/Array.js.map +1 -1
  5. package/dist/BigDecimal.d.ts +82 -45
  6. package/dist/BigDecimal.d.ts.map +1 -1
  7. package/dist/BigDecimal.js +105 -52
  8. package/dist/BigDecimal.js.map +1 -1
  9. package/dist/BigInt.d.ts +39 -32
  10. package/dist/BigInt.d.ts.map +1 -1
  11. package/dist/BigInt.js +36 -33
  12. package/dist/BigInt.js.map +1 -1
  13. package/dist/Brand.d.ts +3 -5
  14. package/dist/Brand.d.ts.map +1 -1
  15. package/dist/Brand.js +1 -1
  16. package/dist/Brand.js.map +1 -1
  17. package/dist/Cache.d.ts +14 -45
  18. package/dist/Cache.d.ts.map +1 -1
  19. package/dist/Cache.js +21 -47
  20. package/dist/Cache.js.map +1 -1
  21. package/dist/Cause.d.ts +53 -22
  22. package/dist/Cause.d.ts.map +1 -1
  23. package/dist/Cause.js +108 -10
  24. package/dist/Cause.js.map +1 -1
  25. package/dist/Channel.d.ts +166 -48
  26. package/dist/Channel.d.ts.map +1 -1
  27. package/dist/Channel.js +176 -87
  28. package/dist/Channel.js.map +1 -1
  29. package/dist/Chunk.d.ts +112 -304
  30. package/dist/Chunk.d.ts.map +1 -1
  31. package/dist/Chunk.js +56 -88
  32. package/dist/Chunk.js.map +1 -1
  33. package/dist/Clock.d.ts +2 -2
  34. package/dist/Clock.d.ts.map +1 -1
  35. package/dist/Clock.js.map +1 -1
  36. package/dist/Combiner.d.ts +280 -13
  37. package/dist/Combiner.d.ts.map +1 -1
  38. package/dist/Combiner.js +198 -7
  39. package/dist/Combiner.js.map +1 -1
  40. package/dist/Config.d.ts +189 -29
  41. package/dist/Config.d.ts.map +1 -1
  42. package/dist/Config.js +85 -35
  43. package/dist/Config.js.map +1 -1
  44. package/dist/ConfigProvider.d.ts +6 -6
  45. package/dist/ConfigProvider.d.ts.map +1 -1
  46. package/dist/ConfigProvider.js +5 -5
  47. package/dist/ConfigProvider.js.map +1 -1
  48. package/dist/Console.d.ts +2 -2
  49. package/dist/Console.d.ts.map +1 -1
  50. package/dist/Console.js.map +1 -1
  51. package/dist/Context.d.ts +1150 -0
  52. package/dist/Context.d.ts.map +1 -0
  53. package/dist/{ServiceMap.js → Context.js} +181 -165
  54. package/dist/Context.js.map +1 -0
  55. package/dist/Cron.d.ts +11 -7
  56. package/dist/Cron.d.ts.map +1 -1
  57. package/dist/Cron.js +120 -63
  58. package/dist/Cron.js.map +1 -1
  59. package/dist/Data.d.ts +533 -365
  60. package/dist/Data.d.ts.map +1 -1
  61. package/dist/Data.js +125 -73
  62. package/dist/Data.js.map +1 -1
  63. package/dist/DateTime.d.ts +74 -255
  64. package/dist/DateTime.d.ts.map +1 -1
  65. package/dist/DateTime.js +17 -62
  66. package/dist/DateTime.js.map +1 -1
  67. package/dist/Deferred.d.ts +12 -5
  68. package/dist/Deferred.d.ts.map +1 -1
  69. package/dist/Deferred.js +13 -5
  70. package/dist/Deferred.js.map +1 -1
  71. package/dist/Duration.d.ts +74 -40
  72. package/dist/Duration.d.ts.map +1 -1
  73. package/dist/Duration.js +126 -87
  74. package/dist/Duration.js.map +1 -1
  75. package/dist/Effect.d.ts +1391 -927
  76. package/dist/Effect.d.ts.map +1 -1
  77. package/dist/Effect.js +472 -328
  78. package/dist/Effect.js.map +1 -1
  79. package/dist/Effectable.d.ts +29 -0
  80. package/dist/Effectable.d.ts.map +1 -0
  81. package/dist/Effectable.js +31 -0
  82. package/dist/Effectable.js.map +1 -0
  83. package/dist/Encoding.d.ts +1 -1
  84. package/dist/Equal.d.ts +276 -109
  85. package/dist/Equal.d.ts.map +1 -1
  86. package/dist/Equal.js +140 -48
  87. package/dist/Equal.js.map +1 -1
  88. package/dist/Equivalence.d.ts +60 -3
  89. package/dist/Equivalence.d.ts.map +1 -1
  90. package/dist/Equivalence.js +70 -13
  91. package/dist/Equivalence.js.map +1 -1
  92. package/dist/ErrorReporter.d.ts +374 -0
  93. package/dist/ErrorReporter.d.ts.map +1 -0
  94. package/dist/ErrorReporter.js +245 -0
  95. package/dist/ErrorReporter.js.map +1 -0
  96. package/dist/ExecutionPlan.d.ts +6 -6
  97. package/dist/ExecutionPlan.d.ts.map +1 -1
  98. package/dist/ExecutionPlan.js +4 -4
  99. package/dist/ExecutionPlan.js.map +1 -1
  100. package/dist/Exit.d.ts +24 -12
  101. package/dist/Exit.d.ts.map +1 -1
  102. package/dist/Exit.js +8 -4
  103. package/dist/Exit.js.map +1 -1
  104. package/dist/Fiber.d.ts +10 -8
  105. package/dist/Fiber.d.ts.map +1 -1
  106. package/dist/Fiber.js.map +1 -1
  107. package/dist/FiberHandle.d.ts +11 -10
  108. package/dist/FiberHandle.d.ts.map +1 -1
  109. package/dist/FiberHandle.js +12 -11
  110. package/dist/FiberHandle.js.map +1 -1
  111. package/dist/FiberMap.d.ts +22 -21
  112. package/dist/FiberMap.d.ts.map +1 -1
  113. package/dist/FiberMap.js +10 -10
  114. package/dist/FiberMap.js.map +1 -1
  115. package/dist/FiberSet.d.ts +2 -2
  116. package/dist/FiberSet.d.ts.map +1 -1
  117. package/dist/FiberSet.js +4 -4
  118. package/dist/FiberSet.js.map +1 -1
  119. package/dist/FileSystem.d.ts +20 -19
  120. package/dist/FileSystem.d.ts.map +1 -1
  121. package/dist/FileSystem.js +15 -11
  122. package/dist/FileSystem.js.map +1 -1
  123. package/dist/Filter.d.ts +4 -37
  124. package/dist/Filter.d.ts.map +1 -1
  125. package/dist/Filter.js +0 -13
  126. package/dist/Filter.js.map +1 -1
  127. package/dist/Formatter.d.ts +131 -47
  128. package/dist/Formatter.d.ts.map +1 -1
  129. package/dist/Formatter.js +243 -55
  130. package/dist/Formatter.js.map +1 -1
  131. package/dist/Function.d.ts +1 -9
  132. package/dist/Function.d.ts.map +1 -1
  133. package/dist/Function.js +2 -10
  134. package/dist/Function.js.map +1 -1
  135. package/dist/Graph.d.ts +65 -65
  136. package/dist/Graph.d.ts.map +1 -1
  137. package/dist/Graph.js +58 -60
  138. package/dist/Graph.js.map +1 -1
  139. package/dist/Hash.js +1 -1
  140. package/dist/Hash.js.map +1 -1
  141. package/dist/HashMap.d.ts +26 -19
  142. package/dist/HashMap.d.ts.map +1 -1
  143. package/dist/HashMap.js +7 -5
  144. package/dist/HashMap.js.map +1 -1
  145. package/dist/Inspectable.d.ts +0 -4
  146. package/dist/Inspectable.d.ts.map +1 -1
  147. package/dist/Inspectable.js +4 -13
  148. package/dist/Inspectable.js.map +1 -1
  149. package/dist/Iterable.d.ts +50 -50
  150. package/dist/Iterable.d.ts.map +1 -1
  151. package/dist/Iterable.js +106 -34
  152. package/dist/Iterable.js.map +1 -1
  153. package/dist/JsonSchema.d.ts +299 -10
  154. package/dist/JsonSchema.d.ts.map +1 -1
  155. package/dist/JsonSchema.js +323 -4
  156. package/dist/JsonSchema.js.map +1 -1
  157. package/dist/Latch.d.ts +69 -3
  158. package/dist/Latch.d.ts.map +1 -1
  159. package/dist/Latch.js +58 -0
  160. package/dist/Latch.js.map +1 -1
  161. package/dist/Layer.d.ts +599 -379
  162. package/dist/Layer.d.ts.map +1 -1
  163. package/dist/Layer.js +249 -180
  164. package/dist/Layer.js.map +1 -1
  165. package/dist/LayerMap.d.ts +27 -26
  166. package/dist/LayerMap.d.ts.map +1 -1
  167. package/dist/LayerMap.js +21 -18
  168. package/dist/LayerMap.js.map +1 -1
  169. package/dist/LogLevel.d.ts +32 -0
  170. package/dist/LogLevel.d.ts.map +1 -1
  171. package/dist/LogLevel.js +28 -100
  172. package/dist/LogLevel.js.map +1 -1
  173. package/dist/Logger.d.ts +31 -97
  174. package/dist/Logger.d.ts.map +1 -1
  175. package/dist/Logger.js +2 -3
  176. package/dist/Logger.js.map +1 -1
  177. package/dist/ManagedRuntime.d.ts +8 -8
  178. package/dist/ManagedRuntime.d.ts.map +1 -1
  179. package/dist/ManagedRuntime.js +34 -25
  180. package/dist/ManagedRuntime.js.map +1 -1
  181. package/dist/Metric.d.ts +23 -25
  182. package/dist/Metric.d.ts.map +1 -1
  183. package/dist/Metric.js +24 -26
  184. package/dist/Metric.js.map +1 -1
  185. package/dist/MutableHashMap.d.ts +7 -0
  186. package/dist/MutableHashMap.d.ts.map +1 -1
  187. package/dist/MutableHashMap.js +8 -0
  188. package/dist/MutableHashMap.js.map +1 -1
  189. package/dist/MutableHashSet.d.ts +7 -0
  190. package/dist/MutableHashSet.d.ts.map +1 -1
  191. package/dist/MutableHashSet.js +8 -0
  192. package/dist/MutableHashSet.js.map +1 -1
  193. package/dist/MutableList.d.ts.map +1 -1
  194. package/dist/MutableList.js +3 -0
  195. package/dist/MutableList.js.map +1 -1
  196. package/dist/Newtype.d.ts +291 -0
  197. package/dist/Newtype.d.ts.map +1 -0
  198. package/dist/Newtype.js +161 -0
  199. package/dist/Newtype.js.map +1 -0
  200. package/dist/Number.d.ts +74 -18
  201. package/dist/Number.d.ts.map +1 -1
  202. package/dist/Number.js +46 -18
  203. package/dist/Number.js.map +1 -1
  204. package/dist/Optic.d.ts +947 -18
  205. package/dist/Optic.d.ts.map +1 -1
  206. package/dist/Optic.js +454 -5
  207. package/dist/Optic.js.map +1 -1
  208. package/dist/Option.d.ts +25 -16
  209. package/dist/Option.d.ts.map +1 -1
  210. package/dist/Option.js +15 -9
  211. package/dist/Option.js.map +1 -1
  212. package/dist/Order.d.ts +6 -1
  213. package/dist/Order.d.ts.map +1 -1
  214. package/dist/Order.js +19 -14
  215. package/dist/Order.js.map +1 -1
  216. package/dist/PartitionedSemaphore.d.ts +183 -0
  217. package/dist/PartitionedSemaphore.d.ts.map +1 -0
  218. package/dist/PartitionedSemaphore.js +231 -0
  219. package/dist/PartitionedSemaphore.js.map +1 -0
  220. package/dist/Path.d.ts +2 -2
  221. package/dist/Path.d.ts.map +1 -1
  222. package/dist/Path.js +2 -2
  223. package/dist/Path.js.map +1 -1
  224. package/dist/PlatformError.d.ts +2 -2
  225. package/dist/Pool.d.ts +1 -1
  226. package/dist/Pool.d.ts.map +1 -1
  227. package/dist/Pool.js +5 -5
  228. package/dist/Pool.js.map +1 -1
  229. package/dist/Predicate.d.ts +1 -1
  230. package/dist/Predicate.d.ts.map +1 -1
  231. package/dist/PubSub.d.ts +5 -4
  232. package/dist/PubSub.d.ts.map +1 -1
  233. package/dist/PubSub.js +15 -8
  234. package/dist/PubSub.js.map +1 -1
  235. package/dist/Pull.d.ts.map +1 -1
  236. package/dist/Pull.js +1 -1
  237. package/dist/Pull.js.map +1 -1
  238. package/dist/Queue.d.ts +9 -6
  239. package/dist/Queue.d.ts.map +1 -1
  240. package/dist/Queue.js +7 -5
  241. package/dist/Queue.js.map +1 -1
  242. package/dist/Random.d.ts +36 -2
  243. package/dist/Random.d.ts.map +1 -1
  244. package/dist/Random.js +46 -35
  245. package/dist/Random.js.map +1 -1
  246. package/dist/RcMap.d.ts +4 -4
  247. package/dist/RcMap.d.ts.map +1 -1
  248. package/dist/RcMap.js +13 -13
  249. package/dist/RcMap.js.map +1 -1
  250. package/dist/RcRef.d.ts +1 -1
  251. package/dist/RcRef.d.ts.map +1 -1
  252. package/dist/Record.d.ts +63 -160
  253. package/dist/Record.d.ts.map +1 -1
  254. package/dist/Record.js +37 -56
  255. package/dist/Record.js.map +1 -1
  256. package/dist/Redactable.d.ts +139 -62
  257. package/dist/Redactable.d.ts.map +1 -1
  258. package/dist/Redactable.js +59 -55
  259. package/dist/Redactable.js.map +1 -1
  260. package/dist/Reducer.d.ts +166 -7
  261. package/dist/Reducer.d.ts.map +1 -1
  262. package/dist/Reducer.js +135 -1
  263. package/dist/Reducer.js.map +1 -1
  264. package/dist/References.d.ts +257 -229
  265. package/dist/References.d.ts.map +1 -1
  266. package/dist/References.js +240 -259
  267. package/dist/References.js.map +1 -1
  268. package/dist/Request.d.ts +5 -5
  269. package/dist/Request.d.ts.map +1 -1
  270. package/dist/Request.js.map +1 -1
  271. package/dist/RequestResolver.d.ts +25 -25
  272. package/dist/RequestResolver.d.ts.map +1 -1
  273. package/dist/RequestResolver.js +15 -16
  274. package/dist/RequestResolver.js.map +1 -1
  275. package/dist/Resource.d.ts +0 -3
  276. package/dist/Resource.d.ts.map +1 -1
  277. package/dist/Resource.js +5 -4
  278. package/dist/Resource.js.map +1 -1
  279. package/dist/Result.d.ts +1 -1
  280. package/dist/Result.d.ts.map +1 -1
  281. package/dist/Result.js +1 -2
  282. package/dist/Result.js.map +1 -1
  283. package/dist/Runtime.d.ts +66 -0
  284. package/dist/Runtime.d.ts.map +1 -1
  285. package/dist/Runtime.js +79 -6
  286. package/dist/Runtime.js.map +1 -1
  287. package/dist/Schedule.d.ts +174 -291
  288. package/dist/Schedule.d.ts.map +1 -1
  289. package/dist/Schedule.js +132 -120
  290. package/dist/Schedule.js.map +1 -1
  291. package/dist/Scheduler.d.ts +36 -125
  292. package/dist/Scheduler.d.ts.map +1 -1
  293. package/dist/Scheduler.js +37 -126
  294. package/dist/Scheduler.js.map +1 -1
  295. package/dist/Schema.d.ts +3213 -392
  296. package/dist/Schema.d.ts.map +1 -1
  297. package/dist/Schema.js +2058 -252
  298. package/dist/Schema.js.map +1 -1
  299. package/dist/SchemaAST.d.ts +13 -2
  300. package/dist/SchemaAST.d.ts.map +1 -1
  301. package/dist/SchemaAST.js +340 -257
  302. package/dist/SchemaAST.js.map +1 -1
  303. package/dist/SchemaGetter.d.ts +55 -13
  304. package/dist/SchemaGetter.d.ts.map +1 -1
  305. package/dist/SchemaGetter.js +73 -11
  306. package/dist/SchemaGetter.js.map +1 -1
  307. package/dist/SchemaIssue.d.ts.map +1 -1
  308. package/dist/SchemaIssue.js +29 -11
  309. package/dist/SchemaIssue.js.map +1 -1
  310. package/dist/SchemaParser.d.ts +44 -54
  311. package/dist/SchemaParser.d.ts.map +1 -1
  312. package/dist/SchemaParser.js +69 -4
  313. package/dist/SchemaParser.js.map +1 -1
  314. package/dist/SchemaRepresentation.d.ts +2 -2
  315. package/dist/SchemaRepresentation.d.ts.map +1 -1
  316. package/dist/SchemaRepresentation.js +63 -39
  317. package/dist/SchemaRepresentation.js.map +1 -1
  318. package/dist/SchemaTransformation.d.ts +245 -3
  319. package/dist/SchemaTransformation.d.ts.map +1 -1
  320. package/dist/SchemaTransformation.js +297 -33
  321. package/dist/SchemaTransformation.js.map +1 -1
  322. package/dist/Scope.d.ts +2 -2
  323. package/dist/Scope.d.ts.map +1 -1
  324. package/dist/Scope.js.map +1 -1
  325. package/dist/ScopedCache.d.ts +2 -2
  326. package/dist/ScopedCache.d.ts.map +1 -1
  327. package/dist/ScopedCache.js +5 -5
  328. package/dist/ScopedCache.js.map +1 -1
  329. package/dist/Semaphore.d.ts +148 -52
  330. package/dist/Semaphore.d.ts.map +1 -1
  331. package/dist/Semaphore.js +135 -117
  332. package/dist/Semaphore.js.map +1 -1
  333. package/dist/Sink.d.ts +22 -19
  334. package/dist/Sink.d.ts.map +1 -1
  335. package/dist/Sink.js +54 -7
  336. package/dist/Sink.js.map +1 -1
  337. package/dist/Stdio.d.ts +18 -6
  338. package/dist/Stdio.d.ts.map +1 -1
  339. package/dist/Stdio.js +20 -2
  340. package/dist/Stdio.js.map +1 -1
  341. package/dist/Stream.d.ts +465 -542
  342. package/dist/Stream.d.ts.map +1 -1
  343. package/dist/Stream.js +329 -145
  344. package/dist/Stream.js.map +1 -1
  345. package/dist/String.d.ts +114 -47
  346. package/dist/String.d.ts.map +1 -1
  347. package/dist/String.js +29 -47
  348. package/dist/String.js.map +1 -1
  349. package/dist/Struct.d.ts +7 -7
  350. package/dist/Struct.d.ts.map +1 -1
  351. package/dist/SubscriptionRef.d.ts +1 -2
  352. package/dist/SubscriptionRef.d.ts.map +1 -1
  353. package/dist/SubscriptionRef.js +83 -116
  354. package/dist/SubscriptionRef.js.map +1 -1
  355. package/dist/Terminal.d.ts +5 -4
  356. package/dist/Terminal.d.ts.map +1 -1
  357. package/dist/Terminal.js +2 -2
  358. package/dist/Terminal.js.map +1 -1
  359. package/dist/Tracer.d.ts +21 -20
  360. package/dist/Tracer.d.ts.map +1 -1
  361. package/dist/Tracer.js +13 -9
  362. package/dist/Tracer.js.map +1 -1
  363. package/dist/Trie.d.ts +44 -31
  364. package/dist/Trie.d.ts.map +1 -1
  365. package/dist/Trie.js +13 -9
  366. package/dist/Trie.js.map +1 -1
  367. package/dist/TxChunk.d.ts +4 -4
  368. package/dist/TxChunk.d.ts.map +1 -1
  369. package/dist/TxChunk.js +4 -4
  370. package/dist/TxChunk.js.map +1 -1
  371. package/dist/TxDeferred.d.ts +328 -0
  372. package/dist/TxDeferred.d.ts.map +1 -0
  373. package/dist/TxDeferred.js +197 -0
  374. package/dist/TxDeferred.js.map +1 -0
  375. package/dist/TxHashMap.d.ts +105 -86
  376. package/dist/TxHashMap.d.ts.map +1 -1
  377. package/dist/TxHashMap.js +51 -44
  378. package/dist/TxHashMap.js.map +1 -1
  379. package/dist/TxHashSet.d.ts +2 -2
  380. package/dist/TxHashSet.d.ts.map +1 -1
  381. package/dist/TxHashSet.js +16 -15
  382. package/dist/TxHashSet.js.map +1 -1
  383. package/dist/TxPriorityQueue.d.ts +609 -0
  384. package/dist/TxPriorityQueue.d.ts.map +1 -0
  385. package/dist/TxPriorityQueue.js +416 -0
  386. package/dist/TxPriorityQueue.js.map +1 -0
  387. package/dist/TxPubSub.d.ts +585 -0
  388. package/dist/TxPubSub.d.ts.map +1 -0
  389. package/dist/TxPubSub.js +521 -0
  390. package/dist/TxPubSub.js.map +1 -0
  391. package/dist/TxQueue.d.ts +1 -1
  392. package/dist/TxQueue.d.ts.map +1 -1
  393. package/dist/TxQueue.js +42 -57
  394. package/dist/TxQueue.js.map +1 -1
  395. package/dist/TxReentrantLock.d.ts +500 -0
  396. package/dist/TxReentrantLock.d.ts.map +1 -0
  397. package/dist/TxReentrantLock.js +481 -0
  398. package/dist/TxReentrantLock.js.map +1 -0
  399. package/dist/TxRef.d.ts +14 -20
  400. package/dist/TxRef.d.ts.map +1 -1
  401. package/dist/TxRef.js +8 -10
  402. package/dist/TxRef.js.map +1 -1
  403. package/dist/TxSemaphore.d.ts +162 -2
  404. package/dist/TxSemaphore.d.ts.map +1 -1
  405. package/dist/TxSemaphore.js +25 -10
  406. package/dist/TxSemaphore.js.map +1 -1
  407. package/dist/TxSubscriptionRef.d.ts +508 -0
  408. package/dist/TxSubscriptionRef.d.ts.map +1 -0
  409. package/dist/TxSubscriptionRef.js +293 -0
  410. package/dist/TxSubscriptionRef.js.map +1 -0
  411. package/dist/Types.d.ts +80 -22
  412. package/dist/Types.d.ts.map +1 -1
  413. package/dist/Unify.d.ts +8 -2
  414. package/dist/Unify.d.ts.map +1 -1
  415. package/dist/Unify.js.map +1 -1
  416. package/dist/Utils.d.ts +137 -65
  417. package/dist/Utils.d.ts.map +1 -1
  418. package/dist/Utils.js +38 -66
  419. package/dist/Utils.js.map +1 -1
  420. package/dist/index.d.ts +886 -71
  421. package/dist/index.d.ts.map +1 -1
  422. package/dist/index.js +886 -71
  423. package/dist/index.js.map +1 -1
  424. package/dist/internal/core.js.map +1 -1
  425. package/dist/internal/dateTime.js +77 -71
  426. package/dist/internal/dateTime.js.map +1 -1
  427. package/dist/internal/effect.js +488 -326
  428. package/dist/internal/effect.js.map +1 -1
  429. package/dist/internal/hashMap.js +7 -5
  430. package/dist/internal/hashMap.js.map +1 -1
  431. package/dist/internal/layer.js +3 -3
  432. package/dist/internal/layer.js.map +1 -1
  433. package/dist/internal/option.js +6 -0
  434. package/dist/internal/option.js.map +1 -1
  435. package/dist/internal/random.d.ts +2 -0
  436. package/dist/internal/random.d.ts.map +1 -0
  437. package/dist/internal/random.js +13 -0
  438. package/dist/internal/random.js.map +1 -0
  439. package/dist/internal/rcRef.js +9 -9
  440. package/dist/internal/rcRef.js.map +1 -1
  441. package/dist/internal/references.d.ts +2 -0
  442. package/dist/internal/references.d.ts.map +1 -0
  443. package/dist/internal/references.js +51 -0
  444. package/dist/internal/references.js.map +1 -0
  445. package/dist/internal/request.js +6 -6
  446. package/dist/internal/request.js.map +1 -1
  447. package/dist/internal/schedule.js +1 -1
  448. package/dist/internal/schedule.js.map +1 -1
  449. package/dist/internal/schema/annotations.js +2 -0
  450. package/dist/internal/schema/annotations.js.map +1 -1
  451. package/dist/internal/schema/representation.js +87 -109
  452. package/dist/internal/schema/representation.js.map +1 -1
  453. package/dist/internal/schema/schema.d.ts +10 -1
  454. package/dist/internal/schema/schema.d.ts.map +1 -1
  455. package/dist/internal/schema/schema.js +59 -1
  456. package/dist/internal/schema/schema.js.map +1 -1
  457. package/dist/internal/trie.js +8 -7
  458. package/dist/internal/trie.js.map +1 -1
  459. package/dist/testing/TestClock.d.ts +5 -5
  460. package/dist/testing/TestClock.d.ts.map +1 -1
  461. package/dist/testing/TestClock.js +2 -2
  462. package/dist/testing/TestClock.js.map +1 -1
  463. package/dist/testing/TestSchema.d.ts +267 -33
  464. package/dist/testing/TestSchema.d.ts.map +1 -1
  465. package/dist/testing/TestSchema.js +296 -23
  466. package/dist/testing/TestSchema.js.map +1 -1
  467. package/dist/testing/index.d.ts +64 -1
  468. package/dist/testing/index.d.ts.map +1 -1
  469. package/dist/testing/index.js +64 -1
  470. package/dist/testing/index.js.map +1 -1
  471. package/dist/unstable/ai/AiError.d.ts +127 -45
  472. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  473. package/dist/unstable/ai/AiError.js +29 -23
  474. package/dist/unstable/ai/AiError.js.map +1 -1
  475. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +1 -1
  476. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts.map +1 -1
  477. package/dist/unstable/ai/AnthropicStructuredOutput.js +9 -2
  478. package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
  479. package/dist/unstable/ai/Chat.d.ts +39 -11
  480. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  481. package/dist/unstable/ai/Chat.js +40 -47
  482. package/dist/unstable/ai/Chat.js.map +1 -1
  483. package/dist/unstable/ai/EmbeddingModel.d.ts +130 -0
  484. package/dist/unstable/ai/EmbeddingModel.d.ts.map +1 -0
  485. package/dist/unstable/ai/EmbeddingModel.js +127 -0
  486. package/dist/unstable/ai/EmbeddingModel.js.map +1 -0
  487. package/dist/unstable/ai/IdGenerator.d.ts +2 -2
  488. package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
  489. package/dist/unstable/ai/IdGenerator.js +2 -2
  490. package/dist/unstable/ai/IdGenerator.js.map +1 -1
  491. package/dist/unstable/ai/LanguageModel.d.ts +119 -49
  492. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  493. package/dist/unstable/ai/LanguageModel.js +260 -61
  494. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  495. package/dist/unstable/ai/McpSchema.d.ts +207 -112
  496. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  497. package/dist/unstable/ai/McpSchema.js +71 -19
  498. package/dist/unstable/ai/McpSchema.js.map +1 -1
  499. package/dist/unstable/ai/McpServer.d.ts +68 -15
  500. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  501. package/dist/unstable/ai/McpServer.js +225 -73
  502. package/dist/unstable/ai/McpServer.js.map +1 -1
  503. package/dist/unstable/ai/Model.d.ts +27 -9
  504. package/dist/unstable/ai/Model.d.ts.map +1 -1
  505. package/dist/unstable/ai/Model.js +25 -9
  506. package/dist/unstable/ai/Model.js.map +1 -1
  507. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +1 -1
  508. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts.map +1 -1
  509. package/dist/unstable/ai/OpenAiStructuredOutput.js +9 -1
  510. package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
  511. package/dist/unstable/ai/Prompt.d.ts +17 -17
  512. package/dist/unstable/ai/Prompt.d.ts.map +1 -1
  513. package/dist/unstable/ai/Prompt.js +6 -9
  514. package/dist/unstable/ai/Prompt.js.map +1 -1
  515. package/dist/unstable/ai/Response.d.ts +24 -24
  516. package/dist/unstable/ai/Response.d.ts.map +1 -1
  517. package/dist/unstable/ai/Response.js +7 -8
  518. package/dist/unstable/ai/Response.js.map +1 -1
  519. package/dist/unstable/ai/ResponseIdTracker.d.ts +38 -0
  520. package/dist/unstable/ai/ResponseIdTracker.d.ts.map +1 -0
  521. package/dist/unstable/ai/ResponseIdTracker.js +68 -0
  522. package/dist/unstable/ai/ResponseIdTracker.js.map +1 -0
  523. package/dist/unstable/ai/Telemetry.d.ts +35 -2
  524. package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
  525. package/dist/unstable/ai/Telemetry.js +2 -2
  526. package/dist/unstable/ai/Telemetry.js.map +1 -1
  527. package/dist/unstable/ai/Tokenizer.d.ts +2 -2
  528. package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
  529. package/dist/unstable/ai/Tokenizer.js +2 -2
  530. package/dist/unstable/ai/Tokenizer.js.map +1 -1
  531. package/dist/unstable/ai/Tool.d.ts +46 -16
  532. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  533. package/dist/unstable/ai/Tool.js +68 -22
  534. package/dist/unstable/ai/Tool.js.map +1 -1
  535. package/dist/unstable/ai/Toolkit.d.ts +4 -4
  536. package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
  537. package/dist/unstable/ai/Toolkit.js +14 -21
  538. package/dist/unstable/ai/Toolkit.js.map +1 -1
  539. package/dist/unstable/ai/index.d.ts +22 -1
  540. package/dist/unstable/ai/index.d.ts.map +1 -1
  541. package/dist/unstable/ai/index.js +22 -1
  542. package/dist/unstable/ai/index.js.map +1 -1
  543. package/dist/unstable/ai/internal/codec-transformer.js +5 -7
  544. package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
  545. package/dist/unstable/cli/Argument.d.ts +4 -7
  546. package/dist/unstable/cli/Argument.d.ts.map +1 -1
  547. package/dist/unstable/cli/Argument.js +1 -3
  548. package/dist/unstable/cli/Argument.js.map +1 -1
  549. package/dist/unstable/cli/CliError.d.ts +51 -63
  550. package/dist/unstable/cli/CliError.d.ts.map +1 -1
  551. package/dist/unstable/cli/CliError.js +32 -57
  552. package/dist/unstable/cli/CliError.js.map +1 -1
  553. package/dist/unstable/cli/CliOutput.d.ts +5 -4
  554. package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
  555. package/dist/unstable/cli/CliOutput.js +67 -12
  556. package/dist/unstable/cli/CliOutput.js.map +1 -1
  557. package/dist/unstable/cli/Command.d.ts +372 -59
  558. package/dist/unstable/cli/Command.d.ts.map +1 -1
  559. package/dist/unstable/cli/Command.js +328 -66
  560. package/dist/unstable/cli/Command.js.map +1 -1
  561. package/dist/unstable/cli/Completions.d.ts +97 -0
  562. package/dist/unstable/cli/Completions.d.ts.map +1 -0
  563. package/dist/unstable/cli/Completions.js +25 -0
  564. package/dist/unstable/cli/Completions.js.map +1 -0
  565. package/dist/unstable/cli/Flag.d.ts +4 -5
  566. package/dist/unstable/cli/Flag.d.ts.map +1 -1
  567. package/dist/unstable/cli/Flag.js +1 -1
  568. package/dist/unstable/cli/Flag.js.map +1 -1
  569. package/dist/unstable/cli/GlobalFlag.d.ts +125 -0
  570. package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -0
  571. package/dist/unstable/cli/GlobalFlag.js +118 -0
  572. package/dist/unstable/cli/GlobalFlag.js.map +1 -0
  573. package/dist/unstable/cli/HelpDoc.d.ts +81 -11
  574. package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
  575. package/dist/unstable/cli/Param.d.ts +34 -6
  576. package/dist/unstable/cli/Param.d.ts.map +1 -1
  577. package/dist/unstable/cli/Param.js +24 -14
  578. package/dist/unstable/cli/Param.js.map +1 -1
  579. package/dist/unstable/cli/Primitive.d.ts +2 -2
  580. package/dist/unstable/cli/Primitive.d.ts.map +1 -1
  581. package/dist/unstable/cli/Primitive.js +1 -1
  582. package/dist/unstable/cli/Primitive.js.map +1 -1
  583. package/dist/unstable/cli/Prompt.js +266 -86
  584. package/dist/unstable/cli/Prompt.js.map +1 -1
  585. package/dist/unstable/cli/index.d.ts +10 -0
  586. package/dist/unstable/cli/index.d.ts.map +1 -1
  587. package/dist/unstable/cli/index.js +10 -0
  588. package/dist/unstable/cli/index.js.map +1 -1
  589. package/dist/unstable/cli/internal/command.d.ts +41 -15
  590. package/dist/unstable/cli/internal/command.d.ts.map +1 -1
  591. package/dist/unstable/cli/internal/command.js +84 -47
  592. package/dist/unstable/cli/internal/command.js.map +1 -1
  593. package/dist/unstable/cli/internal/completions/bash.js.map +1 -1
  594. package/dist/unstable/cli/internal/completions/descriptor.d.ts +2 -0
  595. package/dist/unstable/cli/internal/completions/descriptor.d.ts.map +1 -0
  596. package/dist/unstable/cli/internal/completions/{CommandDescriptor.js → descriptor.js} +17 -5
  597. package/dist/unstable/cli/internal/completions/descriptor.js.map +1 -0
  598. package/dist/unstable/cli/internal/completions/fish.js.map +1 -1
  599. package/dist/unstable/cli/internal/completions/zsh.js.map +1 -1
  600. package/dist/unstable/cli/internal/config.js +42 -0
  601. package/dist/unstable/cli/internal/config.js.map +1 -1
  602. package/dist/unstable/cli/internal/help.d.ts +33 -0
  603. package/dist/unstable/cli/internal/help.d.ts.map +1 -0
  604. package/dist/unstable/cli/internal/help.js +125 -0
  605. package/dist/unstable/cli/internal/help.js.map +1 -0
  606. package/dist/unstable/cli/internal/parser.js +155 -58
  607. package/dist/unstable/cli/internal/parser.js.map +1 -1
  608. package/dist/unstable/cluster/ClusterCron.d.ts +1 -1
  609. package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
  610. package/dist/unstable/cluster/ClusterCron.js +1 -1
  611. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  612. package/dist/unstable/cluster/ClusterError.d.ts +7 -7
  613. package/dist/unstable/cluster/ClusterSchema.d.ts +28 -7
  614. package/dist/unstable/cluster/ClusterSchema.d.ts.map +1 -1
  615. package/dist/unstable/cluster/ClusterSchema.js +28 -8
  616. package/dist/unstable/cluster/ClusterSchema.js.map +1 -1
  617. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts +4 -2
  618. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  619. package/dist/unstable/cluster/ClusterWorkflowEngine.js +96 -63
  620. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  621. package/dist/unstable/cluster/DeliverAt.js +1 -1
  622. package/dist/unstable/cluster/DeliverAt.js.map +1 -1
  623. package/dist/unstable/cluster/Entity.d.ts +17 -16
  624. package/dist/unstable/cluster/Entity.d.ts.map +1 -1
  625. package/dist/unstable/cluster/Entity.js +31 -25
  626. package/dist/unstable/cluster/Entity.js.map +1 -1
  627. package/dist/unstable/cluster/EntityAddress.d.ts +2 -2
  628. package/dist/unstable/cluster/EntityAddress.d.ts.map +1 -1
  629. package/dist/unstable/cluster/EntityAddress.js +1 -1
  630. package/dist/unstable/cluster/EntityAddress.js.map +1 -1
  631. package/dist/unstable/cluster/EntityProxy.js +3 -3
  632. package/dist/unstable/cluster/EntityProxy.js.map +1 -1
  633. package/dist/unstable/cluster/EntityProxyServer.d.ts.map +1 -1
  634. package/dist/unstable/cluster/EntityProxyServer.js +6 -6
  635. package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
  636. package/dist/unstable/cluster/EntityResource.d.ts +4 -4
  637. package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
  638. package/dist/unstable/cluster/EntityResource.js +2 -2
  639. package/dist/unstable/cluster/EntityResource.js.map +1 -1
  640. package/dist/unstable/cluster/Envelope.d.ts +3 -3
  641. package/dist/unstable/cluster/HttpRunner.js +2 -2
  642. package/dist/unstable/cluster/HttpRunner.js.map +1 -1
  643. package/dist/unstable/cluster/K8sHttpClient.d.ts +4 -4
  644. package/dist/unstable/cluster/K8sHttpClient.d.ts.map +1 -1
  645. package/dist/unstable/cluster/K8sHttpClient.js +6 -6
  646. package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
  647. package/dist/unstable/cluster/Message.d.ts +16 -10
  648. package/dist/unstable/cluster/Message.d.ts.map +1 -1
  649. package/dist/unstable/cluster/Message.js +16 -8
  650. package/dist/unstable/cluster/Message.js.map +1 -1
  651. package/dist/unstable/cluster/MessageStorage.d.ts +46 -23
  652. package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
  653. package/dist/unstable/cluster/MessageStorage.js +40 -25
  654. package/dist/unstable/cluster/MessageStorage.js.map +1 -1
  655. package/dist/unstable/cluster/Reply.d.ts +7 -6
  656. package/dist/unstable/cluster/Reply.d.ts.map +1 -1
  657. package/dist/unstable/cluster/Reply.js +8 -7
  658. package/dist/unstable/cluster/Reply.js.map +1 -1
  659. package/dist/unstable/cluster/Runner.d.ts +1 -1
  660. package/dist/unstable/cluster/Runner.d.ts.map +1 -1
  661. package/dist/unstable/cluster/Runner.js +1 -1
  662. package/dist/unstable/cluster/Runner.js.map +1 -1
  663. package/dist/unstable/cluster/RunnerAddress.d.ts +1 -1
  664. package/dist/unstable/cluster/RunnerAddress.d.ts.map +1 -1
  665. package/dist/unstable/cluster/RunnerAddress.js +1 -1
  666. package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
  667. package/dist/unstable/cluster/RunnerHealth.d.ts +2 -2
  668. package/dist/unstable/cluster/RunnerHealth.d.ts.map +1 -1
  669. package/dist/unstable/cluster/RunnerHealth.js +2 -2
  670. package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
  671. package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
  672. package/dist/unstable/cluster/RunnerServer.js +10 -9
  673. package/dist/unstable/cluster/RunnerServer.js.map +1 -1
  674. package/dist/unstable/cluster/RunnerStorage.d.ts +12 -12
  675. package/dist/unstable/cluster/RunnerStorage.d.ts.map +1 -1
  676. package/dist/unstable/cluster/RunnerStorage.js +3 -3
  677. package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
  678. package/dist/unstable/cluster/Runners.d.ts +5 -4
  679. package/dist/unstable/cluster/Runners.d.ts.map +1 -1
  680. package/dist/unstable/cluster/Runners.js +16 -14
  681. package/dist/unstable/cluster/Runners.js.map +1 -1
  682. package/dist/unstable/cluster/ShardId.d.ts +35 -49
  683. package/dist/unstable/cluster/ShardId.d.ts.map +1 -1
  684. package/dist/unstable/cluster/ShardId.js +65 -67
  685. package/dist/unstable/cluster/ShardId.js.map +1 -1
  686. package/dist/unstable/cluster/Sharding.d.ts +4 -4
  687. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  688. package/dist/unstable/cluster/Sharding.js +59 -49
  689. package/dist/unstable/cluster/Sharding.js.map +1 -1
  690. package/dist/unstable/cluster/ShardingConfig.d.ts +28 -27
  691. package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
  692. package/dist/unstable/cluster/ShardingConfig.js +27 -27
  693. package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
  694. package/dist/unstable/cluster/SingletonAddress.d.ts +2 -2
  695. package/dist/unstable/cluster/Snowflake.d.ts +2 -2
  696. package/dist/unstable/cluster/Snowflake.d.ts.map +1 -1
  697. package/dist/unstable/cluster/Snowflake.js +2 -2
  698. package/dist/unstable/cluster/Snowflake.js.map +1 -1
  699. package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
  700. package/dist/unstable/cluster/SqlMessageStorage.js +24 -20
  701. package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
  702. package/dist/unstable/cluster/SqlRunnerStorage.d.ts.map +1 -1
  703. package/dist/unstable/cluster/SqlRunnerStorage.js +7 -7
  704. package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
  705. package/dist/unstable/cluster/internal/entityManager.js +30 -24
  706. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  707. package/dist/unstable/cluster/internal/entityReaper.js +2 -2
  708. package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
  709. package/dist/unstable/cluster/internal/resourceMap.js +3 -3
  710. package/dist/unstable/cluster/internal/resourceMap.js.map +1 -1
  711. package/dist/unstable/devtools/DevToolsClient.d.ts +2 -2
  712. package/dist/unstable/devtools/DevToolsClient.d.ts.map +1 -1
  713. package/dist/unstable/devtools/DevToolsClient.js +9 -8
  714. package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
  715. package/dist/unstable/devtools/DevToolsSchema.d.ts +4 -4
  716. package/dist/unstable/devtools/DevToolsSchema.d.ts.map +1 -1
  717. package/dist/unstable/devtools/DevToolsSchema.js +9 -2
  718. package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
  719. package/dist/unstable/encoding/Msgpack.d.ts +1 -1
  720. package/dist/unstable/encoding/Ndjson.d.ts +9 -9
  721. package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
  722. package/dist/unstable/encoding/Ndjson.js.map +1 -1
  723. package/dist/unstable/encoding/Sse.d.ts +3 -3
  724. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  725. package/dist/unstable/encoding/Sse.js +1 -1
  726. package/dist/unstable/encoding/Sse.js.map +1 -1
  727. package/dist/unstable/eventlog/Event.d.ts +0 -6
  728. package/dist/unstable/eventlog/Event.d.ts.map +1 -1
  729. package/dist/unstable/eventlog/Event.js +0 -5
  730. package/dist/unstable/eventlog/Event.js.map +1 -1
  731. package/dist/unstable/eventlog/EventGroup.d.ts +0 -2
  732. package/dist/unstable/eventlog/EventGroup.d.ts.map +1 -1
  733. package/dist/unstable/eventlog/EventGroup.js +0 -2
  734. package/dist/unstable/eventlog/EventGroup.js.map +1 -1
  735. package/dist/unstable/eventlog/EventJournal.d.ts +27 -10
  736. package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
  737. package/dist/unstable/eventlog/EventJournal.js +130 -71
  738. package/dist/unstable/eventlog/EventJournal.js.map +1 -1
  739. package/dist/unstable/eventlog/EventLog.d.ts +94 -37
  740. package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
  741. package/dist/unstable/eventlog/EventLog.js +225 -151
  742. package/dist/unstable/eventlog/EventLog.js.map +1 -1
  743. package/dist/unstable/eventlog/EventLogEncryption.d.ts +11 -9
  744. package/dist/unstable/eventlog/EventLogEncryption.d.ts.map +1 -1
  745. package/dist/unstable/eventlog/EventLogEncryption.js +15 -17
  746. package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
  747. package/dist/unstable/eventlog/EventLogMessage.d.ts +228 -0
  748. package/dist/unstable/eventlog/EventLogMessage.d.ts.map +1 -0
  749. package/dist/unstable/eventlog/EventLogMessage.js +214 -0
  750. package/dist/unstable/eventlog/EventLogMessage.js.map +1 -0
  751. package/dist/unstable/eventlog/EventLogRemote.d.ts +112 -194
  752. package/dist/unstable/eventlog/EventLogRemote.d.ts.map +1 -1
  753. package/dist/unstable/eventlog/EventLogRemote.js +168 -322
  754. package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
  755. package/dist/unstable/eventlog/EventLogServer.d.ts +26 -48
  756. package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
  757. package/dist/unstable/eventlog/EventLogServer.js +128 -199
  758. package/dist/unstable/eventlog/EventLogServer.js.map +1 -1
  759. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +60 -0
  760. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -0
  761. package/dist/unstable/eventlog/EventLogServerEncrypted.js +166 -0
  762. package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -0
  763. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +183 -0
  764. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -0
  765. package/dist/unstable/eventlog/EventLogServerUnencrypted.js +461 -0
  766. package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -0
  767. package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +117 -0
  768. package/dist/unstable/eventlog/EventLogSessionAuth.d.ts.map +1 -0
  769. package/dist/unstable/eventlog/EventLogSessionAuth.js +284 -0
  770. package/dist/unstable/eventlog/EventLogSessionAuth.js.map +1 -0
  771. package/dist/unstable/eventlog/{SqlEventLogJournal.d.ts → SqlEventJournal.d.ts} +2 -2
  772. package/dist/unstable/eventlog/SqlEventJournal.d.ts.map +1 -0
  773. package/dist/unstable/eventlog/{SqlEventLogJournal.js → SqlEventJournal.js} +28 -21
  774. package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -0
  775. package/dist/unstable/eventlog/{SqlEventLogServer.d.ts → SqlEventLogServerEncrypted.d.ts} +5 -5
  776. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.d.ts.map +1 -0
  777. package/dist/unstable/eventlog/{SqlEventLogServer.js → SqlEventLogServerEncrypted.js} +69 -27
  778. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -0
  779. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts +25 -0
  780. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -0
  781. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js +355 -0
  782. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -0
  783. package/dist/unstable/eventlog/index.d.ts +22 -2
  784. package/dist/unstable/eventlog/index.d.ts.map +1 -1
  785. package/dist/unstable/eventlog/index.js +22 -2
  786. package/dist/unstable/eventlog/index.js.map +1 -1
  787. package/dist/unstable/eventlog/internal/identityRootSecretDerivation.d.ts +2 -0
  788. package/dist/unstable/eventlog/internal/identityRootSecretDerivation.d.ts.map +1 -0
  789. package/dist/unstable/eventlog/internal/identityRootSecretDerivation.js +89 -0
  790. package/dist/unstable/eventlog/internal/identityRootSecretDerivation.js.map +1 -0
  791. package/dist/unstable/http/Cookies.d.ts +51 -6
  792. package/dist/unstable/http/Cookies.d.ts.map +1 -1
  793. package/dist/unstable/http/Cookies.js +27 -6
  794. package/dist/unstable/http/Cookies.js.map +1 -1
  795. package/dist/unstable/http/Etag.d.ts +2 -2
  796. package/dist/unstable/http/Etag.d.ts.map +1 -1
  797. package/dist/unstable/http/Etag.js +7 -3
  798. package/dist/unstable/http/Etag.js.map +1 -1
  799. package/dist/unstable/http/FetchHttpClient.d.ts +6 -3
  800. package/dist/unstable/http/FetchHttpClient.d.ts.map +1 -1
  801. package/dist/unstable/http/FetchHttpClient.js +5 -5
  802. package/dist/unstable/http/FetchHttpClient.js.map +1 -1
  803. package/dist/unstable/http/Headers.d.ts +24 -4
  804. package/dist/unstable/http/Headers.d.ts.map +1 -1
  805. package/dist/unstable/http/Headers.js +42 -13
  806. package/dist/unstable/http/Headers.js.map +1 -1
  807. package/dist/unstable/http/HttpBody.d.ts +1 -1
  808. package/dist/unstable/http/HttpClient.d.ts +125 -21
  809. package/dist/unstable/http/HttpClient.d.ts.map +1 -1
  810. package/dist/unstable/http/HttpClient.js +197 -19
  811. package/dist/unstable/http/HttpClient.js.map +1 -1
  812. package/dist/unstable/http/HttpClientError.d.ts +8 -8
  813. package/dist/unstable/http/HttpClientRequest.d.ts +43 -15
  814. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  815. package/dist/unstable/http/HttpClientRequest.js +131 -21
  816. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  817. package/dist/unstable/http/HttpClientResponse.d.ts +2 -1
  818. package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
  819. package/dist/unstable/http/HttpClientResponse.js +18 -3
  820. package/dist/unstable/http/HttpClientResponse.js.map +1 -1
  821. package/dist/unstable/http/HttpEffect.d.ts +13 -11
  822. package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
  823. package/dist/unstable/http/HttpEffect.js +51 -51
  824. package/dist/unstable/http/HttpEffect.js.map +1 -1
  825. package/dist/unstable/http/HttpIncomingMessage.d.ts +5 -4
  826. package/dist/unstable/http/HttpIncomingMessage.d.ts.map +1 -1
  827. package/dist/unstable/http/HttpIncomingMessage.js +6 -10
  828. package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
  829. package/dist/unstable/http/HttpMethod.d.ts +4 -4
  830. package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
  831. package/dist/unstable/http/HttpMethod.js +3 -3
  832. package/dist/unstable/http/HttpMethod.js.map +1 -1
  833. package/dist/unstable/http/HttpMiddleware.d.ts +4 -9
  834. package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
  835. package/dist/unstable/http/HttpMiddleware.js +47 -43
  836. package/dist/unstable/http/HttpMiddleware.js.map +1 -1
  837. package/dist/unstable/http/HttpPlatform.d.ts +2 -2
  838. package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
  839. package/dist/unstable/http/HttpPlatform.js +5 -4
  840. package/dist/unstable/http/HttpPlatform.js.map +1 -1
  841. package/dist/unstable/http/HttpRouter.d.ts +9 -8
  842. package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
  843. package/dist/unstable/http/HttpRouter.js +36 -36
  844. package/dist/unstable/http/HttpRouter.js.map +1 -1
  845. package/dist/unstable/http/HttpServer.d.ts +2 -2
  846. package/dist/unstable/http/HttpServer.d.ts.map +1 -1
  847. package/dist/unstable/http/HttpServer.js +4 -4
  848. package/dist/unstable/http/HttpServer.js.map +1 -1
  849. package/dist/unstable/http/HttpServerError.d.ts +22 -34
  850. package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
  851. package/dist/unstable/http/HttpServerError.js +39 -45
  852. package/dist/unstable/http/HttpServerError.js.map +1 -1
  853. package/dist/unstable/http/HttpServerRequest.d.ts +19 -7
  854. package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
  855. package/dist/unstable/http/HttpServerRequest.js +307 -13
  856. package/dist/unstable/http/HttpServerRequest.js.map +1 -1
  857. package/dist/unstable/http/HttpServerRespondable.d.ts +2 -2
  858. package/dist/unstable/http/HttpServerRespondable.d.ts.map +1 -1
  859. package/dist/unstable/http/HttpServerRespondable.js +5 -5
  860. package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
  861. package/dist/unstable/http/HttpServerResponse.d.ts +52 -5
  862. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  863. package/dist/unstable/http/HttpServerResponse.js +240 -5
  864. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  865. package/dist/unstable/http/HttpStaticServer.d.ts +69 -0
  866. package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -0
  867. package/dist/unstable/http/HttpStaticServer.js +353 -0
  868. package/dist/unstable/http/HttpStaticServer.js.map +1 -0
  869. package/dist/unstable/http/HttpTraceContext.d.ts +3 -2
  870. package/dist/unstable/http/HttpTraceContext.d.ts.map +1 -1
  871. package/dist/unstable/http/HttpTraceContext.js +27 -15
  872. package/dist/unstable/http/HttpTraceContext.js.map +1 -1
  873. package/dist/unstable/http/Multipart.d.ts +7 -7
  874. package/dist/unstable/http/Multipart.d.ts.map +1 -1
  875. package/dist/unstable/http/Multipart.js +7 -7
  876. package/dist/unstable/http/Multipart.js.map +1 -1
  877. package/dist/unstable/http/Url.d.ts +604 -0
  878. package/dist/unstable/http/Url.d.ts.map +1 -0
  879. package/dist/unstable/http/Url.js +256 -0
  880. package/dist/unstable/http/Url.js.map +1 -0
  881. package/dist/unstable/http/UrlParams.d.ts +18 -9
  882. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  883. package/dist/unstable/http/UrlParams.js +6 -7
  884. package/dist/unstable/http/UrlParams.js.map +1 -1
  885. package/dist/unstable/http/index.d.ts +8 -0
  886. package/dist/unstable/http/index.d.ts.map +1 -1
  887. package/dist/unstable/http/index.js +8 -0
  888. package/dist/unstable/http/index.js.map +1 -1
  889. package/dist/unstable/http/internal/preResponseHandler.d.ts +2 -0
  890. package/dist/unstable/http/internal/preResponseHandler.d.ts.map +1 -0
  891. package/dist/unstable/http/internal/preResponseHandler.js +10 -0
  892. package/dist/unstable/http/internal/preResponseHandler.js.map +1 -0
  893. package/dist/unstable/httpapi/HttpApi.d.ts +11 -11
  894. package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
  895. package/dist/unstable/httpapi/HttpApi.js +8 -8
  896. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  897. package/dist/unstable/httpapi/HttpApiBuilder.d.ts +12 -9
  898. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  899. package/dist/unstable/httpapi/HttpApiBuilder.js +59 -40
  900. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  901. package/dist/unstable/httpapi/HttpApiClient.d.ts +82 -7
  902. package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
  903. package/dist/unstable/httpapi/HttpApiClient.js +79 -11
  904. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  905. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +210 -105
  906. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
  907. package/dist/unstable/httpapi/HttpApiEndpoint.js +52 -47
  908. package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
  909. package/dist/unstable/httpapi/HttpApiError.d.ts +66 -29
  910. package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
  911. package/dist/unstable/httpapi/HttpApiError.js +138 -32
  912. package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
  913. package/dist/unstable/httpapi/HttpApiGroup.d.ts +9 -8
  914. package/dist/unstable/httpapi/HttpApiGroup.d.ts.map +1 -1
  915. package/dist/unstable/httpapi/HttpApiGroup.js +4 -4
  916. package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
  917. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +49 -17
  918. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
  919. package/dist/unstable/httpapi/HttpApiMiddleware.js +38 -8
  920. package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
  921. package/dist/unstable/httpapi/HttpApiSchema.d.ts +88 -9
  922. package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
  923. package/dist/unstable/httpapi/HttpApiSchema.js +86 -11
  924. package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
  925. package/dist/unstable/httpapi/HttpApiSecurity.d.ts +9 -6
  926. package/dist/unstable/httpapi/HttpApiSecurity.d.ts.map +1 -1
  927. package/dist/unstable/httpapi/HttpApiSecurity.js +6 -6
  928. package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
  929. package/dist/unstable/httpapi/OpenApi.d.ts +17 -25
  930. package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
  931. package/dist/unstable/httpapi/OpenApi.js +59 -60
  932. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  933. package/dist/unstable/observability/Otlp.d.ts +12 -12
  934. package/dist/unstable/observability/Otlp.d.ts.map +1 -1
  935. package/dist/unstable/observability/OtlpExporter.d.ts +2 -2
  936. package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
  937. package/dist/unstable/observability/OtlpExporter.js +8 -8
  938. package/dist/unstable/observability/OtlpExporter.js.map +1 -1
  939. package/dist/unstable/observability/OtlpLogger.d.ts +4 -4
  940. package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
  941. package/dist/unstable/observability/OtlpLogger.js +7 -4
  942. package/dist/unstable/observability/OtlpLogger.js.map +1 -1
  943. package/dist/unstable/observability/OtlpMetrics.d.ts +4 -4
  944. package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
  945. package/dist/unstable/observability/OtlpMetrics.js +2 -2
  946. package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
  947. package/dist/unstable/observability/OtlpSerialization.d.ts +2 -2
  948. package/dist/unstable/observability/OtlpSerialization.d.ts.map +1 -1
  949. package/dist/unstable/observability/OtlpSerialization.js +2 -2
  950. package/dist/unstable/observability/OtlpSerialization.js.map +1 -1
  951. package/dist/unstable/observability/OtlpTracer.d.ts +4 -4
  952. package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
  953. package/dist/unstable/observability/OtlpTracer.js +7 -3
  954. package/dist/unstable/observability/OtlpTracer.js.map +1 -1
  955. package/dist/unstable/observability/PrometheusMetrics.d.ts +3 -3
  956. package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
  957. package/dist/unstable/observability/PrometheusMetrics.js +4 -33
  958. package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
  959. package/dist/unstable/observability/internal/protobuf.js +4 -4
  960. package/dist/unstable/observability/internal/protobuf.js.map +1 -1
  961. package/dist/unstable/persistence/KeyValueStore.d.ts +24 -3
  962. package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
  963. package/dist/unstable/persistence/KeyValueStore.js +144 -2
  964. package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
  965. package/dist/unstable/persistence/Persistable.d.ts +2 -2
  966. package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
  967. package/dist/unstable/persistence/Persistable.js +1 -1
  968. package/dist/unstable/persistence/Persistable.js.map +1 -1
  969. package/dist/unstable/persistence/PersistedCache.d.ts +1 -2
  970. package/dist/unstable/persistence/PersistedCache.d.ts.map +1 -1
  971. package/dist/unstable/persistence/PersistedCache.js +10 -11
  972. package/dist/unstable/persistence/PersistedCache.js.map +1 -1
  973. package/dist/unstable/persistence/PersistedQueue.d.ts +16 -16
  974. package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
  975. package/dist/unstable/persistence/PersistedQueue.js +9 -9
  976. package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
  977. package/dist/unstable/persistence/Persistence.d.ts +5 -5
  978. package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
  979. package/dist/unstable/persistence/Persistence.js +5 -5
  980. package/dist/unstable/persistence/Persistence.js.map +1 -1
  981. package/dist/unstable/persistence/RateLimiter.d.ts +9 -9
  982. package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
  983. package/dist/unstable/persistence/RateLimiter.js +4 -4
  984. package/dist/unstable/persistence/RateLimiter.js.map +1 -1
  985. package/dist/unstable/persistence/Redis.d.ts +3 -3
  986. package/dist/unstable/persistence/Redis.d.ts.map +1 -1
  987. package/dist/unstable/persistence/Redis.js +2 -2
  988. package/dist/unstable/persistence/Redis.js.map +1 -1
  989. package/dist/unstable/process/ChildProcess.d.ts +5 -128
  990. package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
  991. package/dist/unstable/process/ChildProcess.js +1 -65
  992. package/dist/unstable/process/ChildProcess.js.map +1 -1
  993. package/dist/unstable/process/ChildProcessSpawner.d.ts +83 -8
  994. package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
  995. package/dist/unstable/process/ChildProcessSpawner.js +22 -2
  996. package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
  997. package/dist/unstable/reactivity/AsyncResult.d.ts +37 -17
  998. package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
  999. package/dist/unstable/reactivity/AsyncResult.js +9 -0
  1000. package/dist/unstable/reactivity/AsyncResult.js.map +1 -1
  1001. package/dist/unstable/reactivity/Atom.d.ts +108 -47
  1002. package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
  1003. package/dist/unstable/reactivity/Atom.js +105 -25
  1004. package/dist/unstable/reactivity/Atom.js.map +1 -1
  1005. package/dist/unstable/reactivity/AtomHttpApi.d.ts +25 -20
  1006. package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
  1007. package/dist/unstable/reactivity/AtomHttpApi.js +58 -26
  1008. package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
  1009. package/dist/unstable/reactivity/AtomRegistry.d.ts +8 -2
  1010. package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
  1011. package/dist/unstable/reactivity/AtomRegistry.js +57 -14
  1012. package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
  1013. package/dist/unstable/reactivity/AtomRpc.d.ts +12 -12
  1014. package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
  1015. package/dist/unstable/reactivity/AtomRpc.js +59 -31
  1016. package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
  1017. package/dist/unstable/reactivity/Reactivity.d.ts +2 -2
  1018. package/dist/unstable/reactivity/Reactivity.d.ts.map +1 -1
  1019. package/dist/unstable/reactivity/Reactivity.js +6 -6
  1020. package/dist/unstable/reactivity/Reactivity.js.map +1 -1
  1021. package/dist/unstable/rpc/Rpc.d.ts +137 -19
  1022. package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
  1023. package/dist/unstable/rpc/Rpc.js +99 -7
  1024. package/dist/unstable/rpc/Rpc.js.map +1 -1
  1025. package/dist/unstable/rpc/RpcClient.d.ts +26 -47
  1026. package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
  1027. package/dist/unstable/rpc/RpcClient.js +117 -75
  1028. package/dist/unstable/rpc/RpcClient.js.map +1 -1
  1029. package/dist/unstable/rpc/RpcClientError.d.ts +2 -2
  1030. package/dist/unstable/rpc/RpcGroup.d.ts +15 -11
  1031. package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
  1032. package/dist/unstable/rpc/RpcGroup.js +30 -20
  1033. package/dist/unstable/rpc/RpcGroup.js.map +1 -1
  1034. package/dist/unstable/rpc/RpcMiddleware.d.ts +12 -12
  1035. package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
  1036. package/dist/unstable/rpc/RpcMiddleware.js +5 -5
  1037. package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
  1038. package/dist/unstable/rpc/RpcSchema.d.ts +14 -1
  1039. package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
  1040. package/dist/unstable/rpc/RpcSchema.js +17 -2
  1041. package/dist/unstable/rpc/RpcSchema.js.map +1 -1
  1042. package/dist/unstable/rpc/RpcSerialization.d.ts +13 -2
  1043. package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
  1044. package/dist/unstable/rpc/RpcSerialization.js +60 -27
  1045. package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
  1046. package/dist/unstable/rpc/RpcServer.d.ts +8 -12
  1047. package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
  1048. package/dist/unstable/rpc/RpcServer.js +73 -43
  1049. package/dist/unstable/rpc/RpcServer.js.map +1 -1
  1050. package/dist/unstable/rpc/RpcWorker.d.ts +2 -2
  1051. package/dist/unstable/rpc/RpcWorker.d.ts.map +1 -1
  1052. package/dist/unstable/rpc/RpcWorker.js +4 -4
  1053. package/dist/unstable/rpc/RpcWorker.js.map +1 -1
  1054. package/dist/unstable/rpc/Utils.d.ts +6 -3
  1055. package/dist/unstable/rpc/Utils.d.ts.map +1 -1
  1056. package/dist/unstable/rpc/Utils.js +46 -5
  1057. package/dist/unstable/rpc/Utils.js.map +1 -1
  1058. package/dist/unstable/schema/Model.d.ts +24 -3
  1059. package/dist/unstable/schema/Model.d.ts.map +1 -1
  1060. package/dist/unstable/schema/Model.js +17 -4
  1061. package/dist/unstable/schema/Model.js.map +1 -1
  1062. package/dist/unstable/schema/VariantSchema.d.ts +7 -7
  1063. package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
  1064. package/dist/unstable/schema/VariantSchema.js +7 -18
  1065. package/dist/unstable/schema/VariantSchema.js.map +1 -1
  1066. package/dist/unstable/socket/Socket.d.ts +35 -15
  1067. package/dist/unstable/socket/Socket.d.ts.map +1 -1
  1068. package/dist/unstable/socket/Socket.js +34 -27
  1069. package/dist/unstable/socket/Socket.js.map +1 -1
  1070. package/dist/unstable/socket/SocketServer.d.ts +8 -5
  1071. package/dist/unstable/socket/SocketServer.d.ts.map +1 -1
  1072. package/dist/unstable/socket/SocketServer.js +2 -2
  1073. package/dist/unstable/socket/SocketServer.js.map +1 -1
  1074. package/dist/unstable/sql/Migrator.d.ts +1 -1
  1075. package/dist/unstable/sql/Migrator.d.ts.map +1 -1
  1076. package/dist/unstable/sql/Migrator.js +2 -2
  1077. package/dist/unstable/sql/Migrator.js.map +1 -1
  1078. package/dist/unstable/sql/SqlClient.d.ts +24 -6
  1079. package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
  1080. package/dist/unstable/sql/SqlClient.js +37 -32
  1081. package/dist/unstable/sql/SqlClient.js.map +1 -1
  1082. package/dist/unstable/sql/SqlConnection.d.ts +2 -2
  1083. package/dist/unstable/sql/SqlConnection.d.ts.map +1 -1
  1084. package/dist/unstable/sql/SqlConnection.js +5 -2
  1085. package/dist/unstable/sql/SqlConnection.js.map +1 -1
  1086. package/dist/unstable/sql/SqlError.d.ts +237 -17
  1087. package/dist/unstable/sql/SqlError.d.ts.map +1 -1
  1088. package/dist/unstable/sql/SqlError.js +260 -4
  1089. package/dist/unstable/sql/SqlError.js.map +1 -1
  1090. package/dist/unstable/sql/SqlModel.d.ts +8 -9
  1091. package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
  1092. package/dist/unstable/sql/SqlModel.js +12 -38
  1093. package/dist/unstable/sql/SqlModel.js.map +1 -1
  1094. package/dist/unstable/sql/SqlResolver.js +24 -17
  1095. package/dist/unstable/sql/SqlResolver.js.map +1 -1
  1096. package/dist/unstable/sql/SqlSchema.d.ts +17 -6
  1097. package/dist/unstable/sql/SqlSchema.d.ts.map +1 -1
  1098. package/dist/unstable/sql/SqlSchema.js +17 -7
  1099. package/dist/unstable/sql/SqlSchema.js.map +1 -1
  1100. package/dist/unstable/sql/Statement.d.ts +3 -5
  1101. package/dist/unstable/sql/Statement.d.ts.map +1 -1
  1102. package/dist/unstable/sql/Statement.js +14 -13
  1103. package/dist/unstable/sql/Statement.js.map +1 -1
  1104. package/dist/unstable/workers/Transferable.d.ts +4 -4
  1105. package/dist/unstable/workers/Transferable.d.ts.map +1 -1
  1106. package/dist/unstable/workers/Transferable.js +7 -7
  1107. package/dist/unstable/workers/Transferable.js.map +1 -1
  1108. package/dist/unstable/workers/Worker.d.ts +3 -3
  1109. package/dist/unstable/workers/Worker.d.ts.map +1 -1
  1110. package/dist/unstable/workers/Worker.js +6 -3
  1111. package/dist/unstable/workers/Worker.js.map +1 -1
  1112. package/dist/unstable/workers/WorkerError.d.ts +5 -5
  1113. package/dist/unstable/workers/WorkerRunner.d.ts +2 -2
  1114. package/dist/unstable/workers/WorkerRunner.d.ts.map +1 -1
  1115. package/dist/unstable/workers/WorkerRunner.js +5 -2
  1116. package/dist/unstable/workers/WorkerRunner.js.map +1 -1
  1117. package/dist/unstable/workflow/Activity.d.ts +8 -3
  1118. package/dist/unstable/workflow/Activity.d.ts.map +1 -1
  1119. package/dist/unstable/workflow/Activity.js +25 -11
  1120. package/dist/unstable/workflow/Activity.js.map +1 -1
  1121. package/dist/unstable/workflow/DurableClock.d.ts +3 -6
  1122. package/dist/unstable/workflow/DurableClock.d.ts.map +1 -1
  1123. package/dist/unstable/workflow/DurableClock.js +6 -6
  1124. package/dist/unstable/workflow/DurableClock.js.map +1 -1
  1125. package/dist/unstable/workflow/DurableDeferred.d.ts +2 -5
  1126. package/dist/unstable/workflow/DurableDeferred.d.ts.map +1 -1
  1127. package/dist/unstable/workflow/DurableDeferred.js +33 -15
  1128. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  1129. package/dist/unstable/workflow/Workflow.d.ts +12 -14
  1130. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  1131. package/dist/unstable/workflow/Workflow.js +30 -26
  1132. package/dist/unstable/workflow/Workflow.js.map +1 -1
  1133. package/dist/unstable/workflow/WorkflowEngine.d.ts +24 -7
  1134. package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
  1135. package/dist/unstable/workflow/WorkflowEngine.js +165 -16
  1136. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  1137. package/dist/unstable/workflow/WorkflowProxyServer.d.ts.map +1 -1
  1138. package/dist/unstable/workflow/WorkflowProxyServer.js +4 -4
  1139. package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
  1140. package/package.json +11 -10
  1141. package/src/Array.ts +304 -447
  1142. package/src/BigDecimal.ts +137 -82
  1143. package/src/BigInt.ts +53 -45
  1144. package/src/Brand.ts +3 -5
  1145. package/src/Cache.ts +27 -54
  1146. package/src/Cause.ts +57 -22
  1147. package/src/Channel.ts +687 -220
  1148. package/src/Chunk.ts +149 -331
  1149. package/src/Clock.ts +2 -2
  1150. package/src/Combiner.ts +280 -13
  1151. package/src/Config.ts +214 -52
  1152. package/src/ConfigProvider.ts +5 -5
  1153. package/src/Console.ts +2 -2
  1154. package/src/Context.ts +1454 -0
  1155. package/src/Cron.ts +155 -63
  1156. package/src/Data.ts +530 -368
  1157. package/src/DateTime.ts +77 -258
  1158. package/src/Deferred.ts +15 -6
  1159. package/src/Duration.ts +151 -81
  1160. package/src/Effect.ts +1581 -1050
  1161. package/src/Effectable.ts +47 -0
  1162. package/src/Equal.ts +293 -109
  1163. package/src/Equivalence.ts +114 -52
  1164. package/src/ErrorReporter.ts +458 -0
  1165. package/src/ExecutionPlan.ts +8 -9
  1166. package/src/Exit.ts +24 -12
  1167. package/src/Fiber.ts +17 -8
  1168. package/src/FiberHandle.ts +15 -14
  1169. package/src/FiberMap.ts +27 -27
  1170. package/src/FiberSet.ts +5 -5
  1171. package/src/FileSystem.ts +30 -26
  1172. package/src/Filter.ts +4 -62
  1173. package/src/Formatter.ts +268 -60
  1174. package/src/Function.ts +2 -10
  1175. package/src/Graph.ts +123 -112
  1176. package/src/Hash.ts +2 -2
  1177. package/src/HashMap.ts +26 -19
  1178. package/src/Inspectable.ts +2 -22
  1179. package/src/Iterable.ts +117 -63
  1180. package/src/JsonSchema.ts +383 -10
  1181. package/src/Latch.ts +85 -3
  1182. package/src/Layer.ts +728 -441
  1183. package/src/LayerMap.ts +38 -35
  1184. package/src/LogLevel.ts +37 -0
  1185. package/src/Logger.ts +35 -102
  1186. package/src/ManagedRuntime.ts +61 -48
  1187. package/src/Metric.ts +64 -66
  1188. package/src/MutableHashMap.ts +9 -0
  1189. package/src/MutableHashSet.ts +9 -0
  1190. package/src/MutableList.ts +3 -0
  1191. package/src/Newtype.ts +308 -0
  1192. package/src/Number.ts +98 -29
  1193. package/src/Optic.ts +948 -19
  1194. package/src/Option.ts +34 -24
  1195. package/src/Order.ts +39 -32
  1196. package/src/PartitionedSemaphore.ts +414 -0
  1197. package/src/Path.ts +2 -2
  1198. package/src/Pool.ts +9 -9
  1199. package/src/Predicate.ts +1 -1
  1200. package/src/PubSub.ts +20 -11
  1201. package/src/Pull.ts +1 -1
  1202. package/src/Queue.ts +11 -9
  1203. package/src/Random.ts +51 -14
  1204. package/src/RcMap.ts +19 -19
  1205. package/src/RcRef.ts +1 -1
  1206. package/src/Record.ts +94 -199
  1207. package/src/Redactable.ts +146 -72
  1208. package/src/Reducer.ts +166 -7
  1209. package/src/References.ts +283 -287
  1210. package/src/Request.ts +5 -5
  1211. package/src/RequestResolver.ts +34 -35
  1212. package/src/Resource.ts +6 -5
  1213. package/src/Result.ts +2 -4
  1214. package/src/Runtime.ts +102 -6
  1215. package/src/Schedule.ts +243 -336
  1216. package/src/Scheduler.ts +52 -129
  1217. package/src/Schema.ts +3769 -597
  1218. package/src/SchemaAST.ts +480 -302
  1219. package/src/SchemaGetter.ts +80 -24
  1220. package/src/SchemaIssue.ts +28 -15
  1221. package/src/SchemaParser.ts +100 -29
  1222. package/src/SchemaRepresentation.ts +57 -33
  1223. package/src/SchemaTransformation.ts +321 -32
  1224. package/src/Scope.ts +2 -2
  1225. package/src/ScopedCache.ts +8 -8
  1226. package/src/Semaphore.ts +268 -182
  1227. package/src/Sink.ts +89 -34
  1228. package/src/Stdio.ts +29 -6
  1229. package/src/Stream.ts +908 -752
  1230. package/src/String.ts +122 -69
  1231. package/src/Struct.ts +7 -7
  1232. package/src/SubscriptionRef.ts +98 -118
  1233. package/src/Terminal.ts +5 -4
  1234. package/src/Tracer.ts +23 -22
  1235. package/src/Trie.ts +44 -31
  1236. package/src/TxChunk.ts +26 -16
  1237. package/src/TxDeferred.ts +391 -0
  1238. package/src/TxHashMap.ts +347 -291
  1239. package/src/TxHashSet.ts +54 -61
  1240. package/src/TxPriorityQueue.ts +762 -0
  1241. package/src/TxPubSub.ts +787 -0
  1242. package/src/TxQueue.ts +221 -245
  1243. package/src/TxReentrantLock.ts +729 -0
  1244. package/src/TxRef.ts +31 -31
  1245. package/src/TxSemaphore.ts +203 -31
  1246. package/src/TxSubscriptionRef.ts +637 -0
  1247. package/src/Types.ts +75 -23
  1248. package/src/Unify.ts +26 -2
  1249. package/src/Utils.ts +137 -111
  1250. package/src/index.ts +896 -73
  1251. package/src/internal/core.ts +9 -10
  1252. package/src/internal/dateTime.ts +91 -96
  1253. package/src/internal/effect.ts +1168 -621
  1254. package/src/internal/hashMap.ts +12 -10
  1255. package/src/internal/layer.ts +7 -7
  1256. package/src/internal/option.ts +7 -0
  1257. package/src/internal/random.ts +20 -0
  1258. package/src/internal/rcRef.ts +12 -12
  1259. package/src/internal/references.ts +72 -0
  1260. package/src/internal/request.ts +8 -8
  1261. package/src/internal/schedule.ts +3 -1
  1262. package/src/internal/schema/annotations.ts +2 -0
  1263. package/src/internal/schema/representation.ts +82 -97
  1264. package/src/internal/schema/schema.ts +68 -1
  1265. package/src/internal/trie.ts +21 -15
  1266. package/src/testing/TestClock.ts +6 -6
  1267. package/src/testing/TestSchema.ts +333 -36
  1268. package/src/testing/index.ts +64 -1
  1269. package/src/unstable/ai/AiError.ts +111 -53
  1270. package/src/unstable/ai/AnthropicStructuredOutput.ts +7 -3
  1271. package/src/unstable/ai/Chat.ts +136 -88
  1272. package/src/unstable/ai/EmbeddingModel.ts +209 -0
  1273. package/src/unstable/ai/IdGenerator.ts +2 -2
  1274. package/src/unstable/ai/LanguageModel.ts +685 -255
  1275. package/src/unstable/ai/McpSchema.ts +84 -22
  1276. package/src/unstable/ai/McpServer.ts +307 -87
  1277. package/src/unstable/ai/Model.ts +44 -13
  1278. package/src/unstable/ai/OpenAiStructuredOutput.ts +9 -2
  1279. package/src/unstable/ai/Prompt.ts +23 -29
  1280. package/src/unstable/ai/Response.ts +29 -31
  1281. package/src/unstable/ai/ResponseIdTracker.ts +95 -0
  1282. package/src/unstable/ai/Telemetry.ts +2 -2
  1283. package/src/unstable/ai/Tokenizer.ts +2 -2
  1284. package/src/unstable/ai/Tool.ts +62 -36
  1285. package/src/unstable/ai/Toolkit.ts +17 -26
  1286. package/src/unstable/ai/index.ts +24 -1
  1287. package/src/unstable/ai/internal/codec-transformer.ts +3 -9
  1288. package/src/unstable/cli/Argument.ts +5 -8
  1289. package/src/unstable/cli/CliError.ts +67 -66
  1290. package/src/unstable/cli/CliOutput.ts +87 -15
  1291. package/src/unstable/cli/Command.ts +808 -193
  1292. package/src/unstable/cli/Completions.ts +107 -0
  1293. package/src/unstable/cli/Flag.ts +5 -6
  1294. package/src/unstable/cli/GlobalFlag.ts +242 -0
  1295. package/src/unstable/cli/HelpDoc.ts +91 -11
  1296. package/src/unstable/cli/Param.ts +54 -27
  1297. package/src/unstable/cli/Primitive.ts +2 -2
  1298. package/src/unstable/cli/Prompt.ts +275 -104
  1299. package/src/unstable/cli/index.ts +12 -0
  1300. package/src/unstable/cli/internal/command.ts +125 -64
  1301. package/src/unstable/cli/internal/completions/bash.ts +7 -7
  1302. package/src/unstable/cli/internal/completions/{CommandDescriptor.ts → descriptor.ts} +16 -58
  1303. package/src/unstable/cli/internal/completions/fish.ts +7 -7
  1304. package/src/unstable/cli/internal/completions/zsh.ts +8 -14
  1305. package/src/unstable/cli/internal/config.ts +49 -0
  1306. package/src/unstable/cli/internal/help.ts +171 -0
  1307. package/src/unstable/cli/internal/parser.ts +201 -84
  1308. package/src/unstable/cluster/ClusterCron.ts +2 -2
  1309. package/src/unstable/cluster/ClusterSchema.ts +38 -10
  1310. package/src/unstable/cluster/ClusterWorkflowEngine.ts +142 -80
  1311. package/src/unstable/cluster/DeliverAt.ts +1 -1
  1312. package/src/unstable/cluster/Entity.ts +58 -45
  1313. package/src/unstable/cluster/EntityAddress.ts +1 -1
  1314. package/src/unstable/cluster/EntityProxy.ts +3 -3
  1315. package/src/unstable/cluster/EntityProxyServer.ts +6 -6
  1316. package/src/unstable/cluster/EntityResource.ts +6 -6
  1317. package/src/unstable/cluster/HttpRunner.ts +2 -2
  1318. package/src/unstable/cluster/K8sHttpClient.ts +7 -7
  1319. package/src/unstable/cluster/Message.ts +30 -17
  1320. package/src/unstable/cluster/MessageStorage.ts +74 -45
  1321. package/src/unstable/cluster/Reply.ts +13 -10
  1322. package/src/unstable/cluster/Runner.ts +1 -1
  1323. package/src/unstable/cluster/RunnerAddress.ts +1 -1
  1324. package/src/unstable/cluster/RunnerHealth.ts +2 -2
  1325. package/src/unstable/cluster/RunnerServer.ts +11 -14
  1326. package/src/unstable/cluster/RunnerStorage.ts +9 -9
  1327. package/src/unstable/cluster/Runners.ts +22 -18
  1328. package/src/unstable/cluster/ShardId.ts +84 -74
  1329. package/src/unstable/cluster/Sharding.ts +75 -60
  1330. package/src/unstable/cluster/ShardingConfig.ts +39 -40
  1331. package/src/unstable/cluster/Snowflake.ts +2 -2
  1332. package/src/unstable/cluster/SqlMessageStorage.ts +29 -20
  1333. package/src/unstable/cluster/SqlRunnerStorage.ts +13 -7
  1334. package/src/unstable/cluster/internal/entityManager.ts +60 -41
  1335. package/src/unstable/cluster/internal/entityReaper.ts +2 -2
  1336. package/src/unstable/cluster/internal/resourceMap.ts +3 -3
  1337. package/src/unstable/devtools/DevToolsClient.ts +26 -21
  1338. package/src/unstable/devtools/DevToolsSchema.ts +16 -3
  1339. package/src/unstable/encoding/Ndjson.ts +17 -17
  1340. package/src/unstable/encoding/Sse.ts +3 -5
  1341. package/src/unstable/eventlog/Event.ts +0 -8
  1342. package/src/unstable/eventlog/EventGroup.ts +0 -4
  1343. package/src/unstable/eventlog/EventJournal.ts +148 -80
  1344. package/src/unstable/eventlog/EventLog.ts +360 -234
  1345. package/src/unstable/eventlog/EventLogEncryption.ts +18 -32
  1346. package/src/unstable/eventlog/EventLogMessage.ts +277 -0
  1347. package/src/unstable/eventlog/EventLogRemote.ts +264 -410
  1348. package/src/unstable/eventlog/EventLogServer.ts +183 -275
  1349. package/src/unstable/eventlog/EventLogServerEncrypted.ts +206 -0
  1350. package/src/unstable/eventlog/EventLogServerUnencrypted.ts +749 -0
  1351. package/src/unstable/eventlog/EventLogSessionAuth.ts +437 -0
  1352. package/src/unstable/eventlog/{SqlEventLogJournal.ts → SqlEventJournal.ts} +38 -22
  1353. package/src/unstable/eventlog/{SqlEventLogServer.ts → SqlEventLogServerEncrypted.ts} +110 -43
  1354. package/src/unstable/eventlog/SqlEventLogServerUnencrypted.ts +506 -0
  1355. package/src/unstable/eventlog/index.ts +27 -2
  1356. package/src/unstable/eventlog/internal/identityRootSecretDerivation.ts +153 -0
  1357. package/src/unstable/http/Cookies.ts +94 -11
  1358. package/src/unstable/http/Etag.ts +7 -5
  1359. package/src/unstable/http/FetchHttpClient.ts +5 -5
  1360. package/src/unstable/http/Headers.ts +70 -20
  1361. package/src/unstable/http/HttpClient.ts +385 -42
  1362. package/src/unstable/http/HttpClientRequest.ts +151 -39
  1363. package/src/unstable/http/HttpClientResponse.ts +24 -8
  1364. package/src/unstable/http/HttpEffect.ts +71 -77
  1365. package/src/unstable/http/HttpIncomingMessage.ts +9 -8
  1366. package/src/unstable/http/HttpMethod.ts +16 -4
  1367. package/src/unstable/http/HttpMiddleware.ts +50 -50
  1368. package/src/unstable/http/HttpPlatform.ts +5 -4
  1369. package/src/unstable/http/HttpRouter.ts +46 -46
  1370. package/src/unstable/http/HttpServer.ts +5 -11
  1371. package/src/unstable/http/HttpServerError.ts +45 -47
  1372. package/src/unstable/http/HttpServerRequest.ts +414 -23
  1373. package/src/unstable/http/HttpServerRespondable.ts +6 -6
  1374. package/src/unstable/http/HttpServerResponse.ts +351 -13
  1375. package/src/unstable/http/HttpStaticServer.ts +456 -0
  1376. package/src/unstable/http/HttpTraceContext.ts +31 -17
  1377. package/src/unstable/http/Multipart.ts +8 -8
  1378. package/src/unstable/http/Url.ts +650 -0
  1379. package/src/unstable/http/UrlParams.ts +30 -18
  1380. package/src/unstable/http/index.ts +10 -0
  1381. package/src/unstable/http/internal/preResponseHandler.ts +15 -0
  1382. package/src/unstable/httpapi/HttpApi.ts +22 -22
  1383. package/src/unstable/httpapi/HttpApiBuilder.ts +134 -54
  1384. package/src/unstable/httpapi/HttpApiClient.ts +185 -34
  1385. package/src/unstable/httpapi/HttpApiEndpoint.ts +225 -114
  1386. package/src/unstable/httpapi/HttpApiError.ts +129 -30
  1387. package/src/unstable/httpapi/HttpApiGroup.ts +18 -17
  1388. package/src/unstable/httpapi/HttpApiMiddleware.ts +95 -32
  1389. package/src/unstable/httpapi/HttpApiSchema.ts +106 -11
  1390. package/src/unstable/httpapi/HttpApiSecurity.ts +13 -13
  1391. package/src/unstable/httpapi/OpenApi.ts +74 -73
  1392. package/src/unstable/observability/Otlp.ts +12 -12
  1393. package/src/unstable/observability/OtlpExporter.ts +14 -10
  1394. package/src/unstable/observability/OtlpLogger.ts +13 -9
  1395. package/src/unstable/observability/OtlpMetrics.ts +6 -6
  1396. package/src/unstable/observability/OtlpSerialization.ts +2 -2
  1397. package/src/unstable/observability/OtlpTracer.ts +14 -10
  1398. package/src/unstable/observability/PrometheusMetrics.ts +5 -5
  1399. package/src/unstable/observability/internal/protobuf.ts +4 -4
  1400. package/src/unstable/persistence/KeyValueStore.ts +226 -3
  1401. package/src/unstable/persistence/Persistable.ts +3 -3
  1402. package/src/unstable/persistence/PersistedCache.ts +20 -17
  1403. package/src/unstable/persistence/PersistedQueue.ts +21 -21
  1404. package/src/unstable/persistence/Persistence.ts +7 -7
  1405. package/src/unstable/persistence/RateLimiter.ts +7 -7
  1406. package/src/unstable/persistence/Redis.ts +2 -2
  1407. package/src/unstable/process/ChildProcess.ts +6 -208
  1408. package/src/unstable/process/ChildProcessSpawner.ts +114 -15
  1409. package/src/unstable/reactivity/AsyncResult.ts +59 -17
  1410. package/src/unstable/reactivity/Atom.ts +280 -124
  1411. package/src/unstable/reactivity/AtomHttpApi.ts +127 -61
  1412. package/src/unstable/reactivity/AtomRegistry.ts +70 -16
  1413. package/src/unstable/reactivity/AtomRpc.ts +82 -37
  1414. package/src/unstable/reactivity/Reactivity.ts +6 -6
  1415. package/src/unstable/rpc/Rpc.ts +212 -32
  1416. package/src/unstable/rpc/RpcClient.ts +161 -142
  1417. package/src/unstable/rpc/RpcGroup.ts +51 -34
  1418. package/src/unstable/rpc/RpcMiddleware.ts +28 -22
  1419. package/src/unstable/rpc/RpcSchema.ts +24 -6
  1420. package/src/unstable/rpc/RpcSerialization.ts +97 -54
  1421. package/src/unstable/rpc/RpcServer.ts +91 -65
  1422. package/src/unstable/rpc/RpcWorker.ts +5 -5
  1423. package/src/unstable/rpc/Utils.ts +63 -4
  1424. package/src/unstable/schema/Model.ts +35 -6
  1425. package/src/unstable/schema/VariantSchema.ts +14 -27
  1426. package/src/unstable/socket/Socket.ts +102 -62
  1427. package/src/unstable/socket/SocketServer.ts +2 -2
  1428. package/src/unstable/sql/Migrator.ts +7 -5
  1429. package/src/unstable/sql/SqlClient.ts +48 -19
  1430. package/src/unstable/sql/SqlConnection.ts +2 -2
  1431. package/src/unstable/sql/SqlError.ts +365 -11
  1432. package/src/unstable/sql/SqlModel.ts +57 -85
  1433. package/src/unstable/sql/SqlResolver.ts +28 -20
  1434. package/src/unstable/sql/SqlSchema.ts +42 -26
  1435. package/src/unstable/sql/Statement.ts +21 -25
  1436. package/src/unstable/workers/Transferable.ts +17 -19
  1437. package/src/unstable/workers/Worker.ts +4 -4
  1438. package/src/unstable/workers/WorkerRunner.ts +2 -2
  1439. package/src/unstable/workflow/Activity.ts +36 -13
  1440. package/src/unstable/workflow/DurableClock.ts +11 -11
  1441. package/src/unstable/workflow/DurableDeferred.ts +36 -18
  1442. package/src/unstable/workflow/Workflow.ts +46 -35
  1443. package/src/unstable/workflow/WorkflowEngine.ts +236 -23
  1444. package/src/unstable/workflow/WorkflowProxyServer.ts +4 -4
  1445. package/dist/NullOr.d.ts +0 -149
  1446. package/dist/NullOr.d.ts.map +0 -1
  1447. package/dist/NullOr.js +0 -152
  1448. package/dist/NullOr.js.map +0 -1
  1449. package/dist/ServiceMap.d.ts +0 -1126
  1450. package/dist/ServiceMap.d.ts.map +0 -1
  1451. package/dist/ServiceMap.js.map +0 -1
  1452. package/dist/internal/schema/to-codec.d.ts +0 -2
  1453. package/dist/internal/schema/to-codec.d.ts.map +0 -1
  1454. package/dist/internal/schema/to-codec.js +0 -129
  1455. package/dist/internal/schema/to-codec.js.map +0 -1
  1456. package/dist/unstable/cli/internal/builtInFlags.d.ts +0 -7
  1457. package/dist/unstable/cli/internal/builtInFlags.d.ts.map +0 -1
  1458. package/dist/unstable/cli/internal/builtInFlags.js +0 -44
  1459. package/dist/unstable/cli/internal/builtInFlags.js.map +0 -1
  1460. package/dist/unstable/cli/internal/completions/CommandDescriptor.d.ts +0 -2
  1461. package/dist/unstable/cli/internal/completions/CommandDescriptor.d.ts.map +0 -1
  1462. package/dist/unstable/cli/internal/completions/CommandDescriptor.js.map +0 -1
  1463. package/dist/unstable/cli/internal/completions/Completions.d.ts +0 -2
  1464. package/dist/unstable/cli/internal/completions/Completions.d.ts.map +0 -1
  1465. package/dist/unstable/cli/internal/completions/Completions.js +0 -23
  1466. package/dist/unstable/cli/internal/completions/Completions.js.map +0 -1
  1467. package/dist/unstable/eventlog/SqlEventLogJournal.d.ts.map +0 -1
  1468. package/dist/unstable/eventlog/SqlEventLogJournal.js.map +0 -1
  1469. package/dist/unstable/eventlog/SqlEventLogServer.d.ts.map +0 -1
  1470. package/dist/unstable/eventlog/SqlEventLogServer.js.map +0 -1
  1471. package/src/NullOr.ts +0 -204
  1472. package/src/ServiceMap.ts +0 -1410
  1473. package/src/internal/schema/to-codec.ts +0 -148
  1474. package/src/unstable/cli/internal/builtInFlags.ts +0 -78
  1475. package/src/unstable/cli/internal/completions/Completions.ts +0 -31
@@ -1,4 +1,5 @@
1
1
  import * as Arr from "../Array.js";
2
+ import * as Context from "../Context.js";
2
3
  import * as Duration from "../Duration.js";
3
4
  import * as Equal from "../Equal.js";
4
5
  import * as Filter from "../Filter.js";
@@ -12,15 +13,14 @@ import * as Order from "../Order.js";
12
13
  import { pipeArguments } from "../Pipeable.js";
13
14
  import { hasProperty, isIterable, isString, isTagged } from "../Predicate.js";
14
15
  import { currentFiberTypeId, redact } from "../Redactable.js";
15
- import { CurrentConcurrency, CurrentLogAnnotations, CurrentLogLevel, CurrentLogSpans, CurrentStackFrame, MinimumLogLevel, TracerEnabled, TracerSpanAnnotations, TracerSpanLinks, TracerTimingEnabled } from "../References.js";
16
16
  import * as Result from "../Result.js";
17
17
  import * as Scheduler from "../Scheduler.js";
18
- import * as ServiceMap from "../ServiceMap.js";
19
18
  import * as Tracer from "../Tracer.js";
20
19
  import { internalCall } from "../Utils.js";
21
- import { args, causeAnnotate, causeEmpty, causeFromReasons, CauseImpl, constEmptyAnnotations, contA, contAll, contE, Die, evaluate, exitDie, exitFail, exitFailCause, exitSucceed, ExitTypeId, Fail, InterruptorStackTrace, isCause, isDieReason, isEffect, isFailReason, isInterruptReason, isNoSuchElementError, makePrimitive, makePrimitiveProto, NoSuchElementError, ReasonBase, StackTraceKey as CauseStackTrace, TaggedError, withFiber, Yield } from "./core.js";
20
+ import { args, causeAnnotate, causeEmpty, causeFromReasons, CauseImpl, constEmptyAnnotations, contA, contAll, contE, evaluate, exitDie, exitFail, exitFailCause, exitSucceed, ExitTypeId, Fail, InterruptorStackTrace, isCause, isDieReason, isEffect, isFailReason, isInterruptReason, isNoSuchElementError, makePrimitive, makePrimitiveProto, NoSuchElementError, ReasonBase, StackTraceKey as CauseStackTrace, TaggedError, withFiber, Yield } from "./core.js";
22
21
  import * as doNotation from "./doNotation.js";
23
22
  import * as InternalMetric from "./metric.js";
23
+ import { CurrentConcurrency, CurrentErrorReporters, CurrentLogAnnotations, CurrentLogLevel, CurrentLogSpans, CurrentStackFrame, MinimumLogLevel, TracerEnabled, TracerSpanAnnotations, TracerSpanLinks, TracerTimingEnabled } from "./references.js";
24
24
  import { addSpanStackTrace, makeStackCleaner } from "./tracer.js";
25
25
  import { version } from "./version.js";
26
26
  // ----------------------------------------------------------------------------
@@ -111,9 +111,9 @@ export const causeInterruptors = self => {
111
111
  };
112
112
  const emptySet = /*#__PURE__*/new Set();
113
113
  /** @internal */
114
- export const hasInterruptsOnly = self => self.reasons.every(isInterruptReason);
114
+ export const hasInterruptsOnly = self => self.reasons.length > 0 && self.reasons.every(isInterruptReason);
115
115
  /** @internal */
116
- export const reasonAnnotations = self => ServiceMap.makeUnsafe(self.annotations);
116
+ export const reasonAnnotations = self => Context.makeUnsafe(self.annotations);
117
117
  /** @internal */
118
118
  export const causeAnnotations = self => {
119
119
  const map = new Map();
@@ -124,7 +124,7 @@ export const causeAnnotations = self => {
124
124
  }
125
125
  }
126
126
  }
127
- return ServiceMap.makeUnsafe(map);
127
+ return Context.makeUnsafe(map);
128
128
  };
129
129
  /** @internal */
130
130
  export const causeCombine = /*#__PURE__*/dual(2, (self, that) => {
@@ -201,7 +201,8 @@ export const causePrettyErrors = self => {
201
201
  Error.stackTraceLimit = prevStackLimit;
202
202
  return errors;
203
203
  };
204
- const causePrettyError = (original, annotations) => {
204
+ /** @internal */
205
+ export const causePrettyError = (original, annotations) => {
205
206
  const kind = typeof original;
206
207
  let error;
207
208
  if (original && kind === "object") {
@@ -321,28 +322,11 @@ const fiberIdStore = {
321
322
  };
322
323
  /** @internal */
323
324
  export const getCurrentFiber = () => globalThis[currentFiberTypeId];
324
- const keepAlive = /*#__PURE__*/(() => {
325
- let count = 0;
326
- let running = undefined;
327
- return {
328
- increment() {
329
- count++;
330
- running ??= globalThis.setInterval(constVoid, 2_147_483_647);
331
- },
332
- decrement() {
333
- count--;
334
- if (count === 0 && running !== undefined) {
335
- globalThis.clearInterval(running);
336
- running = undefined;
337
- }
338
- }
339
- };
340
- })();
341
325
  /** @internal */
342
326
  export class FiberImpl {
343
- constructor(services, interruptible = true) {
327
+ constructor(context, interruptible = true) {
344
328
  this[FiberTypeId] = fiberVariance;
345
- this.setServices(services);
329
+ this.setContext(context);
346
330
  this.id = ++fiberIdStore.id;
347
331
  this.currentOpCount = 0;
348
332
  this.currentLoopCount = 0;
@@ -366,8 +350,8 @@ export class FiberImpl {
366
350
  _children;
367
351
  _interruptedCause;
368
352
  _yielded;
369
- // set in setServices
370
- services;
353
+ // set in setContext
354
+ context;
371
355
  currentScheduler;
372
356
  currentTracerContext;
373
357
  currentSpan;
@@ -376,8 +360,13 @@ export class FiberImpl {
376
360
  currentStackFrame;
377
361
  runtimeMetrics;
378
362
  maxOpsBeforeYield;
363
+ currentPreventYield;
364
+ _dispatcher = undefined;
365
+ get currentDispatcher() {
366
+ return this._dispatcher ??= this.currentScheduler.makeDispatcher();
367
+ }
379
368
  getRef(ref) {
380
- return ServiceMap.getReferenceUnsafe(this.services, ref);
369
+ return Context.getReferenceUnsafe(this.context, ref);
381
370
  }
382
371
  addObserver(cb) {
383
372
  if (this._exit) {
@@ -398,7 +387,7 @@ export class FiberImpl {
398
387
  }
399
388
  let cause = causeInterrupt(fiberId);
400
389
  if (this.currentStackFrame) {
401
- cause = causeAnnotate(cause, ServiceMap.make(CauseStackTrace, this.currentStackFrame));
390
+ cause = causeAnnotate(cause, Context.make(CauseStackTrace, this.currentStackFrame));
402
391
  }
403
392
  if (annotations) {
404
393
  cause = causeAnnotate(cause, annotations);
@@ -412,7 +401,7 @@ export class FiberImpl {
412
401
  return this._exit;
413
402
  }
414
403
  evaluate(effect) {
415
- this.runtimeMetrics?.recordFiberStart(this.services);
404
+ this.runtimeMetrics?.recordFiberStart(this.context);
416
405
  if (this._exit) {
417
406
  return;
418
407
  } else if (this._yielded !== undefined) {
@@ -431,7 +420,7 @@ export class FiberImpl {
431
420
  return this.evaluate(flatMap(interruptChildren, () => exit));
432
421
  }
433
422
  this._exit = exit;
434
- this.runtimeMetrics?.recordFiberEnd(this.services, this._exit);
423
+ this.runtimeMetrics?.recordFiberEnd(this.context, this._exit);
435
424
  for (let i = 0; i < this._observers.length; i++) {
436
425
  this._observers[i](exit);
437
426
  }
@@ -447,7 +436,7 @@ export class FiberImpl {
447
436
  try {
448
437
  while (true) {
449
438
  this.currentOpCount++;
450
- if (!yielding && this.currentScheduler.shouldYield(this)) {
439
+ if (!yielding && !this.currentPreventYield && this.currentScheduler.shouldYield(this)) {
451
440
  yielding = true;
452
441
  const prev = current;
453
442
  current = flatMap(yieldNow, () => prev);
@@ -498,16 +487,21 @@ export class FiberImpl {
498
487
  pipe() {
499
488
  return pipeArguments(this, arguments);
500
489
  }
501
- setServices(services) {
502
- this.services = services;
503
- this.currentScheduler = this.getRef(Scheduler.Scheduler);
504
- this.currentSpan = services.mapUnsafe.get(Tracer.ParentSpanKey);
490
+ setContext(context) {
491
+ this.context = context;
492
+ const scheduler = this.getRef(Scheduler.Scheduler);
493
+ if (scheduler !== this.currentScheduler) {
494
+ this.currentScheduler = scheduler;
495
+ this._dispatcher = undefined;
496
+ }
497
+ this.currentSpan = context.mapUnsafe.get(Tracer.ParentSpanKey);
505
498
  this.currentLogLevel = this.getRef(CurrentLogLevel);
506
499
  this.minimumLogLevel = this.getRef(MinimumLogLevel);
507
- this.currentStackFrame = services.mapUnsafe.get(CurrentStackFrame.key);
500
+ this.currentStackFrame = context.mapUnsafe.get(CurrentStackFrame.key);
508
501
  this.maxOpsBeforeYield = this.getRef(Scheduler.MaxOpsBeforeYield);
509
- this.runtimeMetrics = services.mapUnsafe.get(InternalMetric.FiberRuntimeMetricsKey);
510
- const currentTracer = services.mapUnsafe.get(Tracer.TracerKey);
502
+ this.currentPreventYield = this.getRef(Scheduler.PreventSchedulerYield);
503
+ this.runtimeMetrics = context.mapUnsafe.get(InternalMetric.FiberRuntimeMetricsKey);
504
+ const currentTracer = context.mapUnsafe.get(Tracer.TracerKey);
511
505
  this.currentTracerContext = currentTracer ? currentTracer["context"] : undefined;
512
506
  }
513
507
  get currentSpanLocal() {
@@ -521,7 +515,7 @@ const fiberStackAnnotations = fiber => {
521
515
  if (!fiber.currentStackFrame) return undefined;
522
516
  const annotations = new Map();
523
517
  annotations.set(CauseStackTrace.key, fiber.currentStackFrame);
524
- return ServiceMap.makeUnsafe(annotations);
518
+ return Context.makeUnsafe(annotations);
525
519
  };
526
520
  const fiberInterruptChildren = fiber => {
527
521
  if (fiber._children === undefined || fiber._children.size === 0) {
@@ -574,6 +568,7 @@ export const fiberJoin = self => {
574
568
  /** @internal */
575
569
  export const fiberJoinAll = self => callback(resume => {
576
570
  const fibers = Array.from(self);
571
+ if (fibers.length === 0) return resume(succeed(Arr.empty()));
577
572
  const out = new Array(fibers.length);
578
573
  const cancels = Arr.empty();
579
574
  let done = 0;
@@ -597,8 +592,10 @@ export const fiberJoinAll = self => callback(resume => {
597
592
  /** @internal */
598
593
  export const fiberInterrupt = self => withFiber(fiber => fiberInterruptAs(self, fiber.id));
599
594
  /** @internal */
600
- export const fiberInterruptAs = /*#__PURE__*/dual(2, (self, fiberId) => withFiber(parent => {
601
- self.interruptUnsafe(fiberId, fiberStackAnnotations(parent));
595
+ export const fiberInterruptAs = /*#__PURE__*/dual(args => hasProperty(args[0], FiberTypeId), (self, fiberId, annotations) => withFiber(parent => {
596
+ let ann = fiberStackAnnotations(parent);
597
+ ann = ann && annotations ? Context.merge(ann, annotations) : ann ?? annotations;
598
+ self.interruptUnsafe(fiberId, ann);
602
599
  return asVoid(fiberAwait(self));
603
600
  }));
604
601
  /** @internal */
@@ -650,7 +647,7 @@ export const yieldNowWith = /*#__PURE__*/makePrimitive({
650
647
  op: "Yield",
651
648
  [evaluate](fiber) {
652
649
  let resumed = false;
653
- fiber.currentScheduler.scheduleTask(() => {
650
+ fiber.currentDispatcher.scheduleTask(() => {
654
651
  if (resumed) return;
655
652
  fiber.evaluate(exitVoid);
656
653
  }, this[args] ?? 0);
@@ -726,10 +723,8 @@ const callbackOptions = /*#__PURE__*/makePrimitive({
726
723
  }, controller?.signal);
727
724
  if (yielded !== false) return yielded;
728
725
  yielded = true;
729
- keepAlive.increment();
730
726
  fiber._yielded = () => {
731
727
  resumed = true;
732
- keepAlive.decrement();
733
728
  };
734
729
  if (controller === undefined && onCancel === undefined) {
735
730
  return Yield;
@@ -762,7 +757,7 @@ export const never = /*#__PURE__*/callback(constVoid);
762
757
  export const gen = (...args) => suspend(() => fromIteratorUnsafe(args.length === 1 ? args[0]() : args[1].call(args[0].self)));
763
758
  /** @internal */
764
759
  export const fnUntraced = (body, ...pipeables) => {
765
- return pipeables.length === 0 ? function () {
760
+ const fn = pipeables.length === 0 ? function () {
766
761
  return suspend(() => fromIteratorUnsafe(body.apply(this, arguments)));
767
762
  } : function () {
768
763
  let effect = suspend(() => fromIteratorUnsafe(body.apply(this, arguments)));
@@ -771,7 +766,12 @@ export const fnUntraced = (body, ...pipeables) => {
771
766
  }
772
767
  return effect;
773
768
  };
769
+ return defineFunctionLength(body.length, fn);
774
770
  };
771
+ const defineFunctionLength = (length, fn) => Object.defineProperty(fn, "length", {
772
+ value: length,
773
+ configurable: true
774
+ });
775
775
  const fnStackCleaner = /*#__PURE__*/makeStackCleaner(2);
776
776
  /** @internal */
777
777
  export const fn = function () {
@@ -789,7 +789,7 @@ export const fn = function () {
789
789
  };
790
790
  const makeFn = (name, bodyOrOptions, defError, pipeables, addSpan, spanOptions) => {
791
791
  const body = typeof bodyOrOptions === "function" ? bodyOrOptions : pipeables.pop().bind(bodyOrOptions.self);
792
- return function (...args) {
792
+ return defineFunctionLength(body.length, function (...args) {
793
793
  let result = suspend(() => {
794
794
  const iter = body.apply(this, arguments);
795
795
  return isEffect(iter) ? iter : fromIteratorUnsafe(iter);
@@ -813,10 +813,10 @@ const makeFn = (name, bodyOrOptions, defError, pipeables, addSpan, spanOptions)
813
813
  parent: prev
814
814
  }
815
815
  }));
816
- };
816
+ });
817
817
  };
818
818
  /** @internal */
819
- export const fnUntracedEager = (body, ...pipeables) => pipeables.length === 0 ? function () {
819
+ export const fnUntracedEager = (body, ...pipeables) => defineFunctionLength(body.length, pipeables.length === 0 ? function () {
820
820
  return fromIteratorEagerUnsafe(() => body.apply(this, arguments));
821
821
  } : function () {
822
822
  let effect = fromIteratorEagerUnsafe(() => body.apply(this, arguments));
@@ -824,7 +824,7 @@ export const fnUntracedEager = (body, ...pipeables) => pipeables.length === 0 ?
824
824
  effect = pipeable(effect);
825
825
  }
826
826
  return effect;
827
- };
827
+ });
828
828
  const fromIteratorEagerUnsafe = evaluate => {
829
829
  try {
830
830
  const iterator = evaluate();
@@ -1107,52 +1107,36 @@ export const exitFindErrorOption = self => {
1107
1107
  /** @internal */
1108
1108
  export const service = fromYieldable;
1109
1109
  /** @internal */
1110
- export const serviceOption = service => withFiber(fiber => succeed(ServiceMap.getOption(fiber.services, service)));
1110
+ export const serviceOption = service => withFiber(fiber => succeed(Context.getOption(fiber.context, service)));
1111
1111
  /** @internal */
1112
- export const serviceOptional = service => withFiber(fiber => fiber.services.mapUnsafe.has(service.key) ? succeed(ServiceMap.getUnsafe(fiber.services, service)) : fail(new NoSuchElementError()));
1112
+ export const serviceOptional = service => withFiber(fiber => fiber.context.mapUnsafe.has(service.key) ? succeed(Context.getUnsafe(fiber.context, service)) : fail(new NoSuchElementError()));
1113
1113
  /** @internal */
1114
- export const updateServices = /*#__PURE__*/dual(2, (self, f) => withFiber(fiber => {
1115
- const prev = fiber.services;
1116
- const nextServices = f(prev);
1117
- if (prev === nextServices) return self;
1118
- fiber.setServices(nextServices);
1119
- const newServices = new Map();
1120
- for (const [key, value] of fiber.services.mapUnsafe) {
1121
- if (!prev.mapUnsafe.has(key) || value !== prev.mapUnsafe.get(key)) {
1122
- newServices.set(key, value);
1123
- }
1124
- }
1114
+ export const updateContext = /*#__PURE__*/dual(2, (self, f) => withFiber(fiber => {
1115
+ const prevContext = fiber.context;
1116
+ const nextContext = f(prevContext);
1117
+ if (prevContext === nextContext) return self;
1118
+ fiber.setContext(nextContext);
1125
1119
  return onExitPrimitive(self, () => {
1126
- const map = new Map(fiber.services.mapUnsafe);
1127
- for (const [key, value] of newServices) {
1128
- if (value !== map.get(key)) continue;
1129
- if (prev.mapUnsafe.has(key)) {
1130
- map.set(key, prev.mapUnsafe.get(key));
1131
- } else {
1132
- map.delete(key);
1133
- }
1134
- }
1135
- fiber.setServices(ServiceMap.makeUnsafe(map));
1120
+ fiber.setContext(prevContext);
1136
1121
  return undefined;
1137
1122
  });
1138
1123
  }));
1139
1124
  /** @internal */
1140
- export const updateService = /*#__PURE__*/dual(3, (self, service, f) => withFiber(fiber => {
1141
- const prev = ServiceMap.getUnsafe(fiber.services, service);
1125
+ export const updateService = /*#__PURE__*/dual(3, (self, service, f) => updateContext(self, s => {
1126
+ const prev = Context.getUnsafe(s, service);
1142
1127
  const next = f(prev);
1143
- if (prev === next) return self;
1144
- fiber.setServices(ServiceMap.add(fiber.services, service, next));
1145
- return onExit(self, () => sync(() => fiber.setServices(ServiceMap.add(fiber.services, service, prev))));
1128
+ if (prev === next) return s;
1129
+ return Context.add(s, service, next);
1146
1130
  }));
1147
1131
  /** @internal */
1148
- export const services = () => getServiceMap;
1149
- const getServiceMap = /*#__PURE__*/withFiber(fiber => succeed(fiber.services));
1132
+ export const context = () => getContext;
1133
+ const getContext = /*#__PURE__*/withFiber(fiber => succeed(fiber.context));
1150
1134
  /** @internal */
1151
- export const servicesWith = f => withFiber(fiber => f(fiber.services));
1135
+ export const contextWith = f => withFiber(fiber => f(fiber.context));
1152
1136
  /** @internal */
1153
- export const provideServices = /*#__PURE__*/dual(2, (self, services) => {
1137
+ export const provideContext = /*#__PURE__*/dual(2, (self, context) => {
1154
1138
  if (effectIsExit(self)) return self;
1155
- return updateServices(self, ServiceMap.merge(services));
1139
+ return updateContext(self, Context.merge(context));
1156
1140
  });
1157
1141
  /** @internal */
1158
1142
  export const provideService = function () {
@@ -1161,11 +1145,10 @@ export const provideService = function () {
1161
1145
  }
1162
1146
  return dual(3, (self, service, impl) => provideServiceImpl(self, service, impl)).apply(this, arguments);
1163
1147
  };
1164
- const provideServiceImpl = (self, service, implementation) => withFiber(fiber => {
1165
- const prev = ServiceMap.getOption(fiber.services, service);
1166
- if (prev._tag === "Some" && prev.value === implementation) return self;
1167
- fiber.setServices(ServiceMap.add(fiber.services, service, implementation));
1168
- return onExit(self, () => sync(() => fiber.setServices(ServiceMap.addOrOmit(fiber.services, service, prev))));
1148
+ const provideServiceImpl = (self, service, implementation) => updateContext(self, s => {
1149
+ const prev = s.mapUnsafe.get(service.key);
1150
+ if (prev === implementation) return s;
1151
+ return Context.add(s, service, implementation);
1169
1152
  });
1170
1153
  /** @internal */
1171
1154
  export const provideServiceEffect = /*#__PURE__*/dual(3, (self, service, acquire) => flatMap(acquire, implementation => provideService(self, service, implementation)));
@@ -1186,7 +1169,7 @@ export const zipWith = /*#__PURE__*/dual(args => isEffect(args[1]), (self, that,
1186
1169
  // filtering & conditionals
1187
1170
  // ----------------------------------------------------------------------------
1188
1171
  /* @internal */
1189
- export const filterOrFail = /*#__PURE__*/dual(args => isEffect(args[0]), (self, filter, orFailWith) => filterOrElse(self, filter, orFailWith ? a => fail(orFailWith(a)) : () => fail(new NoSuchElementError())));
1172
+ export const filterOrFail = /*#__PURE__*/dual(args => isEffect(args[0]), (self, predicate, orFailWith) => filterOrElse(self, predicate, orFailWith ? a => fail(orFailWith(a)) : () => fail(new NoSuchElementError())));
1190
1173
  /** @internal */
1191
1174
  export const when = /*#__PURE__*/dual(2, (self, condition) => flatMap(condition, pass => pass ? asSome(self) : succeedNone));
1192
1175
  // ----------------------------------------------------------------------------
@@ -1222,40 +1205,61 @@ const OnFailureProto = /*#__PURE__*/makePrimitiveProto({
1222
1205
  }
1223
1206
  });
1224
1207
  /** @internal */
1225
- export const catchCauseIf = /*#__PURE__*/dual(3, (self, filter, f) => catchCause(self, cause => {
1226
- const eb = Filter.apply(filter, cause);
1227
- return !Result.isFailure(eb) ? internalCall(() => f(eb.success, cause)) : failCause(eb.failure);
1208
+ export const catchCauseIf = /*#__PURE__*/dual(3, (self, predicate, f) => catchCause(self, cause => {
1209
+ if (!predicate(cause)) {
1210
+ return failCause(cause);
1211
+ }
1212
+ return internalCall(() => f(cause));
1228
1213
  }));
1229
1214
  /** @internal */
1230
- export const catch_ = /*#__PURE__*/dual(2, (self, f) => catchCauseIf(self, findError, e => f(e)));
1215
+ export const catchCauseFilter = /*#__PURE__*/dual(3, (self, filter, f) => catchCause(self, cause => {
1216
+ const eb = filter(cause);
1217
+ return Result.isFailure(eb) ? failCause(eb.failure) : internalCall(() => f(eb.success, cause));
1218
+ }));
1219
+ /** @internal */
1220
+ export const catch_ = /*#__PURE__*/dual(2, (self, f) => catchCauseFilter(self, findError, e => f(e)));
1231
1221
  /** @internal */
1232
1222
  export const catchNoSuchElement = self => matchEffect(self, {
1233
1223
  onFailure: error => isNoSuchElementError(error) ? succeedNone : fail(error),
1234
1224
  onSuccess: succeedSome
1235
1225
  });
1236
1226
  /** @internal */
1237
- export const catchDefect = /*#__PURE__*/dual(2, (self, f) => catchCauseIf(self, findDefect, f));
1227
+ export const catchDefect = /*#__PURE__*/dual(2, (self, f) => catchCauseFilter(self, findDefect, f));
1238
1228
  /** @internal */
1239
1229
  export const tapCause = /*#__PURE__*/dual(2, (self, f) => catchCause(self, cause => andThen(internalCall(() => f(cause)), failCause(cause))));
1240
1230
  /** @internal */
1241
- export const tapCauseIf = /*#__PURE__*/dual(3, (self, filter, f) => catchCauseIf(self, cause => {
1242
- const result = Filter.apply(filter, cause);
1243
- return Result.isFailure(result) ? Result.fail(cause) : result;
1244
- }, (failure, cause) => andThen(internalCall(() => f(failure, cause)), failCause(cause))));
1231
+ export const tapCauseIf = /*#__PURE__*/dual(3, (self, predicate, f) => catchCauseIf(self, predicate, cause => andThen(internalCall(() => f(cause)), failCause(cause))));
1245
1232
  /** @internal */
1246
- export const tapError = /*#__PURE__*/dual(2, (self, f) => tapCauseIf(self, findError, e => f(e)));
1233
+ export const tapCauseFilter = /*#__PURE__*/dual(3, (self, filter, f) => catchCause(self, cause => {
1234
+ const result = filter(cause);
1235
+ if (Result.isFailure(result)) {
1236
+ return failCause(cause);
1237
+ }
1238
+ return andThen(internalCall(() => f(result.success, cause)), failCause(cause));
1239
+ }));
1240
+ /** @internal */
1241
+ export const tapError = /*#__PURE__*/dual(2, (self, f) => tapCauseFilter(self, findError, e => f(e)));
1247
1242
  /** @internal */
1248
1243
  export const tapErrorTag = /*#__PURE__*/dual(3, (self, k, f) => {
1249
1244
  const predicate = Array.isArray(k) ? e => hasProperty(e, "_tag") && k.includes(e._tag) : isTagged(k);
1250
1245
  return tapError(self, error => predicate(error) ? f(error) : void_);
1251
1246
  });
1252
1247
  /** @internal */
1253
- export const tapDefect = /*#__PURE__*/dual(2, (self, f) => tapCauseIf(self, findDefect, _ => f(_)));
1248
+ export const tapDefect = /*#__PURE__*/dual(2, (self, f) => tapCauseFilter(self, findDefect, _ => f(_)));
1249
+ /** @internal */
1250
+ export const catchIf = /*#__PURE__*/dual(args => isEffect(args[0]), (self, predicate, f, orElse) => catchCause(self, cause => {
1251
+ const error = findError(cause);
1252
+ if (Result.isFailure(error)) return failCause(error.failure);
1253
+ if (!predicate(error.success)) {
1254
+ return orElse ? internalCall(() => orElse(error.success)) : failCause(cause);
1255
+ }
1256
+ return internalCall(() => f(error.success));
1257
+ }));
1254
1258
  /** @internal */
1255
- export const catchIf = /*#__PURE__*/dual(args => isEffect(args[0]), (self, filter, f, orElse) => catchCause(self, cause => {
1259
+ export const catchFilter = /*#__PURE__*/dual(args => isEffect(args[0]), (self, filter, f, orElse) => catchCause(self, cause => {
1256
1260
  const error = findError(cause);
1257
1261
  if (Result.isFailure(error)) return failCause(error.failure);
1258
- const result = Filter.apply(filter, error.success);
1262
+ const result = filter(error.success);
1259
1263
  if (Result.isFailure(result)) {
1260
1264
  return orElse ? internalCall(() => orElse(result.failure)) : failCause(cause);
1261
1265
  }
@@ -1269,7 +1273,7 @@ export const catchTag = /*#__PURE__*/dual(args => isEffect(args[0]), (self, k, f
1269
1273
  /** @internal */
1270
1274
  export const catchTags = /*#__PURE__*/dual(args => isEffect(args[0]), (self, cases, orElse) => {
1271
1275
  let keys;
1272
- return catchIf(self, e => {
1276
+ return catchFilter(self, e => {
1273
1277
  keys ??= Object.keys(cases);
1274
1278
  return hasProperty(e, "_tag") && isString(e["_tag"]) && keys.includes(e["_tag"]) ? Result.succeed(e) : Result.fail(e);
1275
1279
  }, e => internalCall(() => cases[e["_tag"]](e)), orElse);
@@ -1277,8 +1281,8 @@ export const catchTags = /*#__PURE__*/dual(args => isEffect(args[0]), (self, cas
1277
1281
  /** @internal */
1278
1282
  export const catchReason = /*#__PURE__*/dual(args => isEffect(args[0]), (self, errorTag, reasonTag, f, orElse) => catchIf(self, e => isTagged(e, errorTag) && hasProperty(e, "reason"), e => {
1279
1283
  const reason = e.reason;
1280
- if (isTagged(reason, reasonTag)) return f(reason);
1281
- return orElse ? internalCall(() => orElse(reason)) : fail(e);
1284
+ if (isTagged(reason, reasonTag)) return f(reason, e);
1285
+ return orElse ? internalCall(() => orElse(reason, e)) : fail(e);
1282
1286
  }));
1283
1287
  /** @internal */
1284
1288
  export const catchReasons = /*#__PURE__*/dual(args => isEffect(args[0]), (self, errorTag, cases, orElse) => {
@@ -1287,13 +1291,13 @@ export const catchReasons = /*#__PURE__*/dual(args => isEffect(args[0]), (self,
1287
1291
  const reason = e.reason;
1288
1292
  keys ??= Object.keys(cases);
1289
1293
  if (keys.includes(reason._tag)) {
1290
- return internalCall(() => cases[reason._tag](reason));
1294
+ return internalCall(() => cases[reason._tag](reason, e));
1291
1295
  }
1292
- return orElse ? internalCall(() => orElse(reason)) : fail(e);
1296
+ return orElse ? internalCall(() => orElse(reason, e)) : fail(e);
1293
1297
  });
1294
1298
  });
1295
1299
  /** @internal */
1296
- export const unwrapReason = /*#__PURE__*/dual(2, (self, errorTag) => catchIf(self, e => {
1300
+ export const unwrapReason = /*#__PURE__*/dual(2, (self, errorTag) => catchFilter(self, e => {
1297
1301
  if (isTagged(e, errorTag) && hasProperty(e, "reason")) {
1298
1302
  return Result.succeed(e.reason);
1299
1303
  }
@@ -1326,7 +1330,7 @@ export const ignore = /*#__PURE__*/dual(args => isEffect(args[0]), (self, option
1326
1330
  return matchCauseEffect(self, {
1327
1331
  onFailure(cause) {
1328
1332
  const failure = findFail(cause);
1329
- return Result.isFailure(failure) ? failCause(failure.failure) : logEffect(cause);
1333
+ return Result.isFailure(failure) ? failCause(failure.failure) : options.message === undefined ? logEffect(cause) : logEffect(options.message, cause);
1330
1334
  },
1331
1335
  onSuccess: _ => void_
1332
1336
  });
@@ -1341,7 +1345,7 @@ export const ignoreCause = /*#__PURE__*/dual(args => isEffect(args[0]), (self, o
1341
1345
  }
1342
1346
  const logEffect = logWithLevel(options.log === true ? undefined : options.log);
1343
1347
  return matchCauseEffect(self, {
1344
- onFailure: logEffect,
1348
+ onFailure: cause => options.message === undefined ? logEffect(cause) : logEffect(options.message, cause),
1345
1349
  onSuccess: _ => void_
1346
1350
  });
1347
1351
  });
@@ -1443,11 +1447,11 @@ export const isSuccess = /*#__PURE__*/matchEager({
1443
1447
  /** @internal */
1444
1448
  export const delay = /*#__PURE__*/dual(2, (self, duration) => andThen(sleep(duration), self));
1445
1449
  /** @internal */
1446
- export const timeoutOrElse = /*#__PURE__*/dual(2, (self, options) => raceFirst(self, flatMap(sleep(options.duration), options.onTimeout)));
1450
+ export const timeoutOrElse = /*#__PURE__*/dual(2, (self, options) => raceFirst(self, flatMap(sleep(options.duration), options.orElse)));
1447
1451
  /** @internal */
1448
1452
  export const timeout = /*#__PURE__*/dual(2, (self, duration) => timeoutOrElse(self, {
1449
1453
  duration,
1450
- onTimeout: () => fail(new TimeoutError())
1454
+ orElse: () => fail(new TimeoutError())
1451
1455
  }));
1452
1456
  /** @internal */
1453
1457
  export const timeoutOption = /*#__PURE__*/dual(2, (self, duration) => raceFirst(asSome(self), as(sleep(duration), Option.none())));
@@ -1464,7 +1468,7 @@ export const ScopeTypeId = "~effect/Scope";
1464
1468
  /** @internal */
1465
1469
  export const ScopeCloseableTypeId = "~effect/Scope/Closeable";
1466
1470
  /** @internal */
1467
- export const scopeTag = /*#__PURE__*/ServiceMap.Service("effect/Scope");
1471
+ export const scopeTag = /*#__PURE__*/Context.Service("effect/Scope");
1468
1472
  /** @internal */
1469
1473
  export const scopeClose = (self, exit_) => suspend(() => scopeCloseUnsafe(self, exit_) ?? void_);
1470
1474
  /** @internal */
@@ -1568,11 +1572,11 @@ export const scope = /*#__PURE__*/scopeTag.asEffect();
1568
1572
  export const provideScope = /*#__PURE__*/provideService(scopeTag);
1569
1573
  /** @internal */
1570
1574
  export const scoped = self => withFiber(fiber => {
1571
- const prev = ServiceMap.getOption(fiber.services, scopeTag);
1575
+ const prev = fiber.context;
1572
1576
  const scope = scopeMakeUnsafe();
1573
- fiber.setServices(ServiceMap.add(fiber.services, scopeTag, scope));
1577
+ fiber.setContext(Context.add(fiber.context, scopeTag, scope));
1574
1578
  return onExitPrimitive(self, exit => {
1575
- fiber.setServices(ServiceMap.addOrOmit(fiber.services, scopeTag, prev));
1579
+ fiber.setContext(prev);
1576
1580
  return scopeCloseUnsafe(scope, exit);
1577
1581
  });
1578
1582
  });
@@ -1584,9 +1588,9 @@ export const scopedWith = f => suspend(() => {
1584
1588
  return onExit(f(scope), exit => suspend(() => scopeCloseUnsafe(scope, exit) ?? void_));
1585
1589
  });
1586
1590
  /** @internal */
1587
- export const acquireRelease = (acquire, release) => uninterruptible(flatMap(scope, scope => tap(acquire, a => scopeAddFinalizerExit(scope, exit => internalCall(() => release(a, exit))))));
1591
+ export const acquireRelease = (acquire, release, options) => contextWith(context => uninterruptibleMask(restore => flatMap(scope, scope => tap(options?.interruptible ? restore(acquire) : acquire, a => scopeAddFinalizerExit(scope, exit => provideContext(release(a, exit), context))))));
1588
1592
  /** @internal */
1589
- export const addFinalizer = finalizer => flatMap(scope, scope => servicesWith(services => scopeAddFinalizerExit(scope, exit => provideServices(finalizer(exit), services))));
1593
+ export const addFinalizer = finalizer => flatMap(scope, scope => contextWith(context => scopeAddFinalizerExit(scope, exit => provideContext(finalizer(exit), context))));
1590
1594
  /** @internal */
1591
1595
  export const onExitPrimitive = /*#__PURE__*/makePrimitive({
1592
1596
  op: "OnExit",
@@ -1617,19 +1621,36 @@ export const onExit = /*#__PURE__*/dual(2, onExitPrimitive);
1617
1621
  /** @internal */
1618
1622
  export const ensuring = /*#__PURE__*/dual(2, (self, finalizer) => onExit(self, _ => finalizer));
1619
1623
  /** @internal */
1620
- export const onExitIf = /*#__PURE__*/dual(3, (self, filter, f) => onExit(self, exit => {
1621
- const pass = Filter.apply(filter, exit);
1622
- return Result.isFailure(pass) ? void_ : f(pass.success, exit);
1624
+ export const onExitIf = /*#__PURE__*/dual(3, (self, predicate, f) => onExit(self, exit => {
1625
+ if (!predicate(exit)) {
1626
+ return void_;
1627
+ }
1628
+ return f(exit);
1629
+ }));
1630
+ /** @internal */
1631
+ export const onExitFilter = /*#__PURE__*/dual(3, (self, filter, f) => onExit(self, exit => {
1632
+ const b = filter(exit);
1633
+ return Result.isFailure(b) ? void_ : f(b.success, exit);
1623
1634
  }));
1624
1635
  /** @internal */
1625
- export const onError = /*#__PURE__*/dual(2, (self, f) => onExitIf(self, exitFilterCause, f));
1636
+ export const onError = /*#__PURE__*/dual(2, (self, f) => onExitFilter(self, exitFilterCause, f));
1626
1637
  /** @internal */
1627
- export const onErrorIf = /*#__PURE__*/dual(3, (self, filter, f) => onExitIf(self, exit => {
1628
- if (exit._tag !== "Failure") return Result.fail(exit);
1629
- return Filter.apply(filter, exit.cause);
1630
- }, (eb, exit) => f(eb, exit.cause)));
1638
+ export const onErrorIf = /*#__PURE__*/dual(3, (self, predicate, f) => onExitIf(self, exit => {
1639
+ if (exit._tag !== "Failure") {
1640
+ return false;
1641
+ }
1642
+ return predicate(exit.cause);
1643
+ }, exit => f(exit.cause)));
1644
+ /** @internal */
1645
+ export const onErrorFilter = /*#__PURE__*/dual(3, (self, filter, f) => onExit(self, exit => {
1646
+ if (exit._tag !== "Failure") {
1647
+ return void_;
1648
+ }
1649
+ const result = filter(exit.cause);
1650
+ return Result.isFailure(result) ? void_ : f(result.success, exit.cause);
1651
+ }));
1631
1652
  /** @internal */
1632
- export const onInterrupt = /*#__PURE__*/dual(2, (self, finalizer) => onErrorIf(causeFilterInterruptors, finalizer)(self));
1653
+ export const onInterrupt = /*#__PURE__*/dual(2, (self, finalizer) => onErrorFilter(causeFilterInterruptors, finalizer)(self));
1633
1654
  /** @internal */
1634
1655
  export const acquireUseRelease = (acquire, use, release) => uninterruptibleMask(restore => flatMap(acquire, a => onExitPrimitive(restore(use(a)), exit => release(a, exit), true)));
1635
1656
  // ----------------------------------------------------------------------------
@@ -1637,7 +1658,7 @@ export const acquireUseRelease = (acquire, use, release) => uninterruptibleMask(
1637
1658
  // ----------------------------------------------------------------------------
1638
1659
  /** @internal */
1639
1660
  export const cachedInvalidateWithTTL = /*#__PURE__*/dual(2, (self, ttl) => sync(() => {
1640
- const ttlMillis = Duration.toMillis(Duration.fromDurationInputUnsafe(ttl));
1661
+ const ttlMillis = Duration.toMillis(Duration.fromInputUnsafe(ttl));
1641
1662
  const isFinite = Number.isFinite(ttlMillis);
1642
1663
  const latch = makeLatchUnsafe(false);
1643
1664
  let expiresAt = 0;
@@ -1645,14 +1666,15 @@ export const cachedInvalidateWithTTL = /*#__PURE__*/dual(2, (self, ttl) => sync(
1645
1666
  let exit;
1646
1667
  const wait = flatMap(latch.await, () => exit);
1647
1668
  return [withFiber(fiber => {
1648
- const now = isFinite ? fiber.getRef(ClockRef).currentTimeMillisUnsafe() : 0;
1669
+ const clock = fiber.getRef(ClockRef);
1670
+ const now = isFinite ? clock.currentTimeMillisUnsafe() : 0;
1649
1671
  if (running || now < expiresAt) return exit ?? wait;
1650
1672
  running = true;
1651
1673
  latch.closeUnsafe();
1652
1674
  exit = undefined;
1653
1675
  return onExit(self, exit_ => sync(() => {
1654
1676
  running = false;
1655
- expiresAt = now + ttlMillis;
1677
+ expiresAt = clock.currentTimeMillisUnsafe() + ttlMillis;
1656
1678
  exit = exit_;
1657
1679
  latch.openUnsafe();
1658
1680
  }));
@@ -1711,6 +1733,8 @@ export const interruptibleMask = f => withFiber(fiber => {
1711
1733
  fiber._stack.push(setInterruptibleFalse);
1712
1734
  return f(uninterruptible);
1713
1735
  });
1736
+ /** @internal */
1737
+ export const abortSignal = /*#__PURE__*/map(/*#__PURE__*/acquireRelease(/*#__PURE__*/sync(() => new AbortController()), controller => sync(() => controller.abort())), _ => _.signal);
1714
1738
  // ========================================================================
1715
1739
  // collecting & elements
1716
1740
  // ========================================================================
@@ -1732,7 +1756,54 @@ export const all = (arg, options) => {
1732
1756
  });
1733
1757
  };
1734
1758
  /** @internal */
1735
- export const partition = /*#__PURE__*/dual(args => isIterable(args[0]) && !isEffect(args[0]), (elements, f, options) => map(forEach(elements, (a, i) => result(f(a, i)), options), results => Arr.partitionMap(results, identity)));
1759
+ export const partition = /*#__PURE__*/dual(args => isIterable(args[0]) && !isEffect(args[0]), (elements, f, options) => map(forEach(elements, (a, i) => result(f(a, i)), options), results => Arr.partition(results, identity)));
1760
+ /** @internal */
1761
+ export const validate = /*#__PURE__*/dual(args => isIterable(args[0]) && !isEffect(args[0]), (elements, f, options) => flatMap(partition(elements, f, {
1762
+ concurrency: options?.concurrency
1763
+ }), ([excluded, satisfying]) => {
1764
+ if (Arr.isArrayNonEmpty(excluded)) {
1765
+ return fail(excluded);
1766
+ }
1767
+ return options?.discard ? void_ : succeed(satisfying);
1768
+ }));
1769
+ /** @internal */
1770
+ export const findFirst = /*#__PURE__*/dual(args => isIterable(args[0]) && !isEffect(args[0]), (elements, predicate) => suspend(() => {
1771
+ const iterator = elements[Symbol.iterator]();
1772
+ const next = iterator.next();
1773
+ if (!next.done) {
1774
+ return findFirstLoop(iterator, 0, predicate, next.value);
1775
+ }
1776
+ return succeed(Option.none());
1777
+ }));
1778
+ const findFirstLoop = (iterator, index, predicate, value) => flatMap(predicate(value, index), keep => {
1779
+ if (keep) {
1780
+ return succeed(Option.some(value));
1781
+ }
1782
+ const next = iterator.next();
1783
+ if (!next.done) {
1784
+ return findFirstLoop(iterator, index + 1, predicate, next.value);
1785
+ }
1786
+ return succeed(Option.none());
1787
+ });
1788
+ /** @internal */
1789
+ export const findFirstFilter = /*#__PURE__*/dual(args => isIterable(args[0]) && !isEffect(args[0]), (elements, filter) => suspend(() => {
1790
+ const iterator = elements[Symbol.iterator]();
1791
+ const next = iterator.next();
1792
+ if (!next.done) {
1793
+ return findFirstFilterLoop(iterator, 0, filter, next.value);
1794
+ }
1795
+ return succeed(Option.none());
1796
+ }));
1797
+ const findFirstFilterLoop = (iterator, index, filter, value) => flatMap(filter(value, index), result => {
1798
+ if (Result.isSuccess(result)) {
1799
+ return succeed(Option.some(result.success));
1800
+ }
1801
+ const next = iterator.next();
1802
+ if (!next.done) {
1803
+ return findFirstFilterLoop(iterator, index + 1, filter, next.value);
1804
+ }
1805
+ return succeed(Option.none());
1806
+ });
1736
1807
  /** @internal */
1737
1808
  export const whileLoop = /*#__PURE__*/makePrimitive({
1738
1809
  op: "While",
@@ -1765,70 +1836,13 @@ export const forEach = /*#__PURE__*/dual(args => typeof args[1] === "function",
1765
1836
  return options?.discard ? void_ : succeed([]);
1766
1837
  }
1767
1838
  const out = options?.discard ? undefined : new Array(length);
1768
- let index = 0;
1769
- const annotations = fiberStackAnnotations(parent);
1770
- return callback(resume => {
1771
- const fibers = new Set();
1772
- const failures = [];
1773
- let failed = false;
1774
- let inProgress = 0;
1775
- let doneCount = 0;
1776
- let pumping = false;
1777
- let interrupted = false;
1778
- function pump() {
1779
- pumping = true;
1780
- while (inProgress < concurrency && index < length) {
1781
- const currentIndex = index;
1782
- const item = items[currentIndex];
1783
- index++;
1784
- inProgress++;
1785
- try {
1786
- const child = forkUnsafe(parent, f(item, currentIndex), true, true, "inherit");
1787
- fibers.add(child);
1788
- child.addObserver(exit => {
1789
- if (interrupted) {
1790
- return;
1791
- }
1792
- fibers.delete(child);
1793
- if (exit._tag === "Failure") {
1794
- if (!failed) {
1795
- failed = true;
1796
- length = index;
1797
- failures.push(...exit.cause.reasons);
1798
- fibers.forEach(fiber => fiber.interruptUnsafe(parent.id, annotations));
1799
- } else {
1800
- for (const f of exit.cause.reasons) {
1801
- if (f._tag === "Interrupt") continue;
1802
- failures.push(f);
1803
- }
1804
- }
1805
- } else if (out !== undefined) {
1806
- out[currentIndex] = exit.value;
1807
- }
1808
- doneCount++;
1809
- inProgress--;
1810
- if (doneCount === length) {
1811
- resume(failures.length > 0 ? exitFailCause(causeFromReasons(failures)) : succeed(out));
1812
- } else if (!pumping && !failed && inProgress < concurrency) {
1813
- pump();
1814
- }
1815
- });
1816
- } catch (err) {
1817
- failed = true;
1818
- length = index;
1819
- failures.push(new Die(err));
1820
- fibers.forEach(fiber => fiber.interruptUnsafe(parent.id, annotations));
1821
- }
1822
- }
1823
- pumping = false;
1824
- }
1825
- pump();
1826
- return suspend(() => {
1827
- interrupted = true;
1828
- index = length;
1829
- return fiberInterruptAll(fibers);
1830
- });
1839
+ const eff = forEachConcurrent({
1840
+ f,
1841
+ out
1842
+ }, items, {
1843
+ concurrency
1831
1844
  });
1845
+ return eff ? as(eff, out) : succeed(out);
1832
1846
  }));
1833
1847
  const forEachSequential = (iterable, f, options) => suspend(() => {
1834
1848
  const out = options?.discard ? undefined : [];
@@ -1844,31 +1858,151 @@ const forEachSequential = (iterable, f, options) => suspend(() => {
1844
1858
  }
1845
1859
  }), out);
1846
1860
  });
1861
+ const iterateEagerImpl = options => {
1862
+ const onItem = options.onItem;
1863
+ const step = options.step;
1864
+ return (state, items, opts) => {
1865
+ let index = opts?.start ?? 0;
1866
+ const end = opts?.end ?? items.length;
1867
+ const concurrency = opts?.concurrency ?? 1;
1868
+ let done = false;
1869
+ let parentFiber;
1870
+ let fibers;
1871
+ let resume;
1872
+ let interrupted = false;
1873
+ let terminal;
1874
+ let effect;
1875
+ const go = () => {
1876
+ let paused = false;
1877
+ for (; !terminal && index < end; index++) {
1878
+ const item = items[index];
1879
+ const eff = effect ?? onItem(state, item, index);
1880
+ // fast case (already an exit)
1881
+ if (effectIsExit(eff)) {
1882
+ terminal = step(state, item, eff, index);
1883
+ if (terminal) break;
1884
+ // Use flatMap for concurrency of 1
1885
+ } else if (concurrency === 1) {
1886
+ return flatMap(exit(eff), exit => {
1887
+ terminal = step(state, item, exit, index);
1888
+ index++;
1889
+ return terminal ?? go() ?? void_;
1890
+ });
1891
+ // We have an effect, so enter "async" mode
1892
+ } else if (!parentFiber) {
1893
+ return callback(cb => {
1894
+ parentFiber = getCurrentFiber();
1895
+ effect = eff;
1896
+ resume = cb;
1897
+ const result = go();
1898
+ if (result) return cb(result);
1899
+ return suspend(() => {
1900
+ terminal = exitVoid;
1901
+ interrupted = true;
1902
+ return fibers ? fiberInterruptAll(fibers) : void_;
1903
+ });
1904
+ });
1905
+ // Fork the effect with concurrency > 1
1906
+ } else {
1907
+ // Clear the temporary effect from capturing the parentFiber
1908
+ effect = undefined;
1909
+ const fiber = forkUnsafe(parentFiber, eff, true, true, "inherit");
1910
+ if (fiber._exit) {
1911
+ terminal = step(state, item, fiber._exit, index);
1912
+ if (terminal) break;
1913
+ continue;
1914
+ }
1915
+ // Add the fiber to the Set
1916
+ if (fibers) fibers.add(fiber);else fibers = new Set([fiber]);
1917
+ const currentIndex = index;
1918
+ fiber.addObserver(exit => {
1919
+ fibers.delete(fiber);
1920
+ if (terminal) {
1921
+ if (!interrupted && exit._tag === "Failure") {
1922
+ for (const reason of exit.cause.reasons) {
1923
+ if (reason._tag === "Interrupt") continue;else if (terminal._tag === "Failure") {
1924
+ ;
1925
+ terminal.cause.reasons.push(reason);
1926
+ } else {
1927
+ terminal = exitFailCause(causeFromReasons([reason]));
1928
+ }
1929
+ }
1930
+ }
1931
+ } else {
1932
+ const result = step(state, item, exit, currentIndex);
1933
+ if (result) {
1934
+ terminal = result._tag === "Failure" ? exitFailCause(causeFromReasons(result.cause.reasons.slice())) : result;
1935
+ go();
1936
+ }
1937
+ }
1938
+ if (paused) {
1939
+ const eff = go();
1940
+ if (eff) resume(eff);
1941
+ } else if (done && fibers.size === 0) {
1942
+ resume(terminal ?? void_);
1943
+ }
1944
+ });
1945
+ // Check if we have reached the concurrency limit
1946
+ if (fibers.size < concurrency) continue;
1947
+ paused = true;
1948
+ index++;
1949
+ return;
1950
+ }
1951
+ }
1952
+ done = true;
1953
+ if (terminal) {
1954
+ if (fibers && fibers.size > 0) {
1955
+ const annotations = fiberStackAnnotations(parentFiber);
1956
+ fibers.forEach(f => f.interruptUnsafe(parentFiber.id, annotations));
1957
+ return;
1958
+ }
1959
+ if (resume || terminal._tag === "Failure") {
1960
+ return terminal;
1961
+ }
1962
+ } else if (resume) {
1963
+ if (!fibers) {
1964
+ return exitVoid;
1965
+ } else if (fibers.size === 0) {
1966
+ resume(void_);
1967
+ }
1968
+ }
1969
+ };
1970
+ return go();
1971
+ };
1972
+ };
1973
+ /** @internal */
1974
+ export const iterateEager = () => iterateEagerImpl;
1975
+ const forEachConcurrent = /*#__PURE__*/iterateEagerImpl({
1976
+ onItem(state, item, index) {
1977
+ return state.f(item, index);
1978
+ },
1979
+ step(state, _, exit, index) {
1980
+ if (exit._tag === "Failure") return exit;else if (state.out) {
1981
+ state.out[index] = exit.value;
1982
+ }
1983
+ }
1984
+ });
1847
1985
  /* @internal */
1848
- export const filterOrElse = /*#__PURE__*/dual(3, (self, filter, orElse) => flatMap(self, a => {
1849
- const result = Filter.apply(filter, a);
1986
+ export const filterOrElse = /*#__PURE__*/dual(3, (self, predicate, orElse) => flatMap(self, a => predicate(a) ? succeed(a) : orElse(a)));
1987
+ /** @internal */
1988
+ export const filterMapOrElse = /*#__PURE__*/dual(3, (self, filter, orElse) => flatMap(self, a => {
1989
+ const result = filter(a);
1850
1990
  return Result.isFailure(result) ? orElse(result.failure) : succeed(result.success);
1851
1991
  }));
1992
+ /* @internal */
1993
+ export const filterMapOrFail = /*#__PURE__*/dual(args => isEffect(args[0]), (self, filter, orFailWith) => filterMapOrElse(self, filter, orFailWith ? x => fail(orFailWith(x)) : () => fail(new NoSuchElementError())));
1852
1994
  /** @internal */
1853
- export const filter = /*#__PURE__*/dual(args => isIterable(args[0]) && !isEffect(args[0]), (elements, filter, options) => suspend(() => {
1995
+ export const filter = /*#__PURE__*/dual(args => isIterable(args[0]) && !isEffect(args[0]), (elements, predicate, options) => suspend(() => {
1854
1996
  const out = [];
1855
1997
  return as(forEach(elements, (a, i) => {
1856
- const result = filter(a, i);
1998
+ const result = predicate(a, i);
1857
1999
  if (typeof result === "boolean") {
1858
2000
  if (result) out.push(a);
1859
2001
  return void_;
1860
2002
  }
1861
- if (!isEffect(result)) {
1862
- if (!Result.isFailure(result)) {
1863
- out.push(result.success);
1864
- }
1865
- return void_;
1866
- }
1867
- return map(result, r => {
1868
- if (typeof r === "boolean") {
1869
- if (r) out.push(a);
1870
- } else if (!Result.isFailure(r)) {
1871
- out.push(r.success);
2003
+ return map(result, keep => {
2004
+ if (keep) {
2005
+ out.push(a);
1872
2006
  }
1873
2007
  });
1874
2008
  }, {
@@ -1876,6 +2010,29 @@ export const filter = /*#__PURE__*/dual(args => isIterable(args[0]) && !isEffect
1876
2010
  concurrency: options?.concurrency
1877
2011
  }), out);
1878
2012
  }));
2013
+ /** @internal */
2014
+ export const filterMap = /*#__PURE__*/dual(args => isIterable(args[0]) && !isEffect(args[0]), (elements, filter) => suspend(() => {
2015
+ const out = [];
2016
+ for (const a of elements) {
2017
+ const result = filter(a);
2018
+ if (Result.isSuccess(result)) {
2019
+ out.push(result.success);
2020
+ }
2021
+ }
2022
+ return succeed(out);
2023
+ }));
2024
+ /** @internal */
2025
+ export const filterMapEffect = /*#__PURE__*/dual(args => isIterable(args[0]) && !isEffect(args[0]), (elements, filter, options) => suspend(() => {
2026
+ const out = [];
2027
+ return as(forEach(elements, a => map(filter(a), result => {
2028
+ if (Result.isSuccess(result)) {
2029
+ out.push(result.success);
2030
+ }
2031
+ }), {
2032
+ discard: true,
2033
+ concurrency: options?.concurrency
2034
+ }), out);
2035
+ }));
1879
2036
  // ----------------------------------------------------------------------------
1880
2037
  // do notation
1881
2038
  // ----------------------------------------------------------------------------
@@ -1900,11 +2057,11 @@ export const forkChild = /*#__PURE__*/dual(args => isEffect(args[0]), (self, opt
1900
2057
  /** @internal */
1901
2058
  export const forkUnsafe = (parent, effect, immediate = false, daemon = false, uninterruptible = false) => {
1902
2059
  const interruptible = uninterruptible === "inherit" ? parent.interruptible : !uninterruptible;
1903
- const child = new FiberImpl(parent.services, interruptible);
2060
+ const child = new FiberImpl(parent.context, interruptible);
1904
2061
  if (immediate) {
1905
2062
  child.evaluate(effect);
1906
2063
  } else {
1907
- parent.currentScheduler.scheduleTask(() => child.evaluate(effect), 0);
2064
+ parent.currentDispatcher.scheduleTask(() => child.evaluate(effect), 0);
1908
2065
  }
1909
2066
  if (!daemon && !child._exit) {
1910
2067
  parent.children().add(child);
@@ -1948,9 +2105,8 @@ export const forkScoped = /*#__PURE__*/dual(args => isEffect(args[0]), (self, op
1948
2105
  // execution
1949
2106
  // ----------------------------------------------------------------------------
1950
2107
  /** @internal */
1951
- export const runForkWith = services => (effect, options) => {
1952
- const scheduler = options?.scheduler || !services.mapUnsafe.has(Scheduler.Scheduler.key) && new Scheduler.MixedScheduler();
1953
- const fiber = new FiberImpl(scheduler ? ServiceMap.add(services, Scheduler.Scheduler, scheduler) : services, options?.uninterruptible !== true);
2108
+ export const runForkWith = context => (effect, options) => {
2109
+ const fiber = new FiberImpl(options?.scheduler ? Context.add(context, Scheduler.Scheduler, options.scheduler) : context, options?.uninterruptible !== true);
1954
2110
  fiber.evaluate(effect);
1955
2111
  if (fiber._exit) return fiber;
1956
2112
  if (options?.signal) {
@@ -1964,6 +2120,9 @@ export const runForkWith = services => (effect, options) => {
1964
2120
  fiber.addObserver(() => options.signal.removeEventListener("abort", abort));
1965
2121
  }
1966
2122
  }
2123
+ if (options?.onFiberStart) {
2124
+ options.onFiberStart(fiber);
2125
+ }
1967
2126
  return fiber;
1968
2127
  };
1969
2128
  /** @internal */
@@ -1980,10 +2139,10 @@ export const fiberRunIn = /*#__PURE__*/dual(2, (self, scope) => {
1980
2139
  return self;
1981
2140
  });
1982
2141
  /** @internal */
1983
- export const runFork = /*#__PURE__*/runForkWith(/*#__PURE__*/ServiceMap.empty());
2142
+ export const runFork = /*#__PURE__*/runForkWith(/*#__PURE__*/Context.empty());
1984
2143
  /** @internal */
1985
- export const runCallbackWith = services => {
1986
- const runFork = runForkWith(services);
2144
+ export const runCallbackWith = context => {
2145
+ const runFork = runForkWith(context);
1987
2146
  return (effect, options) => {
1988
2147
  const fiber = runFork(effect, options);
1989
2148
  if (options?.onExit) {
@@ -1995,10 +2154,10 @@ export const runCallbackWith = services => {
1995
2154
  };
1996
2155
  };
1997
2156
  /** @internal */
1998
- export const runCallback = /*#__PURE__*/runCallbackWith(/*#__PURE__*/ServiceMap.empty());
2157
+ export const runCallback = /*#__PURE__*/runCallbackWith(/*#__PURE__*/Context.empty());
1999
2158
  /** @internal */
2000
- export const runPromiseExitWith = services => {
2001
- const runFork = runForkWith(services);
2159
+ export const runPromiseExitWith = context => {
2160
+ const runFork = runForkWith(context);
2002
2161
  return (effect, options) => {
2003
2162
  const fiber = runFork(effect, options);
2004
2163
  return new Promise(resolve => {
@@ -2007,10 +2166,10 @@ export const runPromiseExitWith = services => {
2007
2166
  };
2008
2167
  };
2009
2168
  /** @internal */
2010
- export const runPromiseExit = /*#__PURE__*/runPromiseExitWith(/*#__PURE__*/ServiceMap.empty());
2169
+ export const runPromiseExit = /*#__PURE__*/runPromiseExitWith(/*#__PURE__*/Context.empty());
2011
2170
  /** @internal */
2012
- export const runPromiseWith = services => {
2013
- const runPromiseExit = runPromiseExitWith(services);
2171
+ export const runPromiseWith = context => {
2172
+ const runPromiseExit = runPromiseExitWith(context);
2014
2173
  return (effect, options) => runPromiseExit(effect, options).then(exit => {
2015
2174
  if (exit._tag === "Failure") {
2016
2175
  throw causeSquash(exit.cause);
@@ -2019,25 +2178,25 @@ export const runPromiseWith = services => {
2019
2178
  });
2020
2179
  };
2021
2180
  /** @internal */
2022
- export const runPromise = /*#__PURE__*/runPromiseWith(/*#__PURE__*/ServiceMap.empty());
2181
+ export const runPromise = /*#__PURE__*/runPromiseWith(/*#__PURE__*/Context.empty());
2023
2182
  /** @internal */
2024
- export const runSyncExitWith = services => {
2025
- const runFork = runForkWith(services);
2183
+ export const runSyncExitWith = context => {
2184
+ const runFork = runForkWith(context);
2026
2185
  return effect => {
2027
2186
  if (effectIsExit(effect)) return effect;
2028
2187
  const scheduler = new Scheduler.MixedScheduler("sync");
2029
2188
  const fiber = runFork(effect, {
2030
2189
  scheduler
2031
2190
  });
2032
- scheduler.flush();
2033
- return fiber._exit ?? exitDie(fiber);
2191
+ fiber.currentDispatcher?.flush();
2192
+ return fiber._exit ?? exitDie(new AsyncFiberError(fiber));
2034
2193
  };
2035
2194
  };
2036
2195
  /** @internal */
2037
- export const runSyncExit = /*#__PURE__*/runSyncExitWith(/*#__PURE__*/ServiceMap.empty());
2196
+ export const runSyncExit = /*#__PURE__*/runSyncExitWith(/*#__PURE__*/Context.empty());
2038
2197
  /** @internal */
2039
- export const runSyncWith = services => {
2040
- const runSyncExit = runSyncExitWith(services);
2198
+ export const runSyncWith = context => {
2199
+ const runSyncExit = runSyncExitWith(context);
2041
2200
  return effect => {
2042
2201
  const exit = runSyncExit(effect);
2043
2202
  if (exit._tag === "Failure") throw causeSquash(exit.cause);
@@ -2045,79 +2204,7 @@ export const runSyncWith = services => {
2045
2204
  };
2046
2205
  };
2047
2206
  /** @internal */
2048
- export const runSync = /*#__PURE__*/runSyncWith(/*#__PURE__*/ServiceMap.empty());
2049
- // ----------------------------------------------------------------------------
2050
- // Semaphore
2051
- // ----------------------------------------------------------------------------
2052
- /** @internal */
2053
- class Semaphore {
2054
- waiters = /*#__PURE__*/new Set();
2055
- taken = 0;
2056
- permits;
2057
- constructor(permits) {
2058
- this.permits = permits;
2059
- }
2060
- get free() {
2061
- return this.permits - this.taken;
2062
- }
2063
- take = n => callback(resume => {
2064
- if (this.free < n) {
2065
- const observer = () => {
2066
- if (this.free < n) {
2067
- return;
2068
- }
2069
- this.waiters.delete(observer);
2070
- this.taken += n;
2071
- resume(succeed(n));
2072
- };
2073
- this.waiters.add(observer);
2074
- return sync(() => {
2075
- this.waiters.delete(observer);
2076
- });
2077
- }
2078
- this.taken += n;
2079
- return resume(succeed(n));
2080
- });
2081
- updateTakenUnsafe(fiber, f) {
2082
- this.taken = f(this.taken);
2083
- if (this.waiters.size > 0) {
2084
- fiber.currentScheduler.scheduleTask(() => {
2085
- const iter = this.waiters.values();
2086
- let item = iter.next();
2087
- while (item.done === false && this.free > 0) {
2088
- item.value();
2089
- item = iter.next();
2090
- }
2091
- }, 0);
2092
- }
2093
- return succeed(this.free);
2094
- }
2095
- updateTaken(f) {
2096
- return withFiber(fiber => this.updateTakenUnsafe(fiber, f));
2097
- }
2098
- resize = permits => asVoid(withFiber(fiber => {
2099
- this.permits = permits;
2100
- if (this.free < 0) {
2101
- return void_;
2102
- }
2103
- return this.updateTakenUnsafe(fiber, taken => taken);
2104
- }));
2105
- release = n => this.updateTaken(taken => taken - n);
2106
- releaseAll = /*#__PURE__*/this.updateTaken(_ => 0);
2107
- withPermits = n => self => uninterruptibleMask(restore => flatMap(restore(this.take(n)), permits => ensuring(restore(self), this.release(permits))));
2108
- withPermit = /*#__PURE__*/this.withPermits(1);
2109
- withPermitsIfAvailable = n => self => uninterruptibleMask(restore => suspend(() => {
2110
- if (this.free < n) {
2111
- return succeedNone;
2112
- }
2113
- this.taken += n;
2114
- return ensuring(restore(asSome(self)), this.release(n));
2115
- }));
2116
- }
2117
- /** @internal */
2118
- export const makeSemaphoreUnsafe = permits => new Semaphore(permits);
2119
- /** @internal */
2120
- export const makeSemaphore = permits => sync(() => makeSemaphoreUnsafe(permits));
2207
+ export const runSync = /*#__PURE__*/runSyncWith(/*#__PURE__*/Context.empty());
2121
2208
  const succeedTrue = /*#__PURE__*/succeed(true);
2122
2209
  const succeedFalse = /*#__PURE__*/succeed(false);
2123
2210
  class Latch {
@@ -2132,7 +2219,7 @@ class Latch {
2132
2219
  return succeedTrue;
2133
2220
  }
2134
2221
  this.scheduled = true;
2135
- fiber.currentScheduler.scheduleTask(this.flushWaiters, 0);
2222
+ fiber.currentDispatcher.scheduleTask(this.flushWaiters, 0);
2136
2223
  return succeedTrue;
2137
2224
  }
2138
2225
  flushWaiters = () => {
@@ -2148,7 +2235,7 @@ class Latch {
2148
2235
  this.isOpen = true;
2149
2236
  return this.scheduleUnsafe(fiber);
2150
2237
  });
2151
- release = /*#__PURE__*/withFiber(fiber => this.open ? succeedFalse : this.scheduleUnsafe(fiber));
2238
+ release = /*#__PURE__*/withFiber(fiber => this.isOpen ? succeedFalse : this.scheduleUnsafe(fiber));
2152
2239
  openUnsafe() {
2153
2240
  if (this.isOpen) return false;
2154
2241
  this.isOpen = true;
@@ -2173,7 +2260,7 @@ class Latch {
2173
2260
  return true;
2174
2261
  }
2175
2262
  close = /*#__PURE__*/sync(() => this.closeUnsafe());
2176
- whenOpen = self => andThen(this.await, self);
2263
+ whenOpen = self => flatMap(this.await, () => self);
2177
2264
  }
2178
2265
  /** @internal */
2179
2266
  export const makeLatchUnsafe = open => new Latch(open ?? false);
@@ -2213,20 +2300,19 @@ const NoopSpanProto = {
2213
2300
  /** @internal */
2214
2301
  export const noopSpan = options => Object.assign(Object.create(NoopSpanProto), options);
2215
2302
  const filterDisablePropagation = span => {
2216
- if (span) {
2217
- return ServiceMap.get(span.annotations, Tracer.DisablePropagation) ? span._tag === "Span" ? filterDisablePropagation(span.parent) : undefined : span;
2218
- }
2303
+ if (!span) return Option.none();
2304
+ return Context.get(span.annotations, Tracer.DisablePropagation) ? span._tag === "Span" ? filterDisablePropagation(Option.getOrUndefined(span.parent)) : Option.none() : Option.some(span);
2219
2305
  };
2220
2306
  /** @internal */
2221
2307
  export const makeSpanUnsafe = (fiber, name, options) => {
2222
- const disablePropagation = !fiber.getRef(TracerEnabled) || options?.annotations && ServiceMap.get(options.annotations, Tracer.DisablePropagation);
2223
- const parent = options?.parent ?? (options?.root ? undefined : filterDisablePropagation(fiber.currentSpan));
2308
+ const disablePropagation = !fiber.getRef(TracerEnabled) || options?.annotations && Context.get(options.annotations, Tracer.DisablePropagation);
2309
+ const parent = options?.parent !== undefined ? Option.some(options.parent) : options?.root ? Option.none() : filterDisablePropagation(fiber.currentSpan);
2224
2310
  let span;
2225
2311
  if (disablePropagation) {
2226
2312
  span = noopSpan({
2227
2313
  name,
2228
2314
  parent,
2229
- annotations: ServiceMap.add(options?.annotations ?? ServiceMap.empty(), Tracer.DisablePropagation, true)
2315
+ annotations: Context.add(options?.annotations ?? Context.empty(), Tracer.DisablePropagation, true)
2230
2316
  });
2231
2317
  } else {
2232
2318
  const tracer = fiber.getRef(Tracer.Tracer);
@@ -2239,12 +2325,12 @@ export const makeSpanUnsafe = (fiber, name, options) => {
2239
2325
  span = tracer.span({
2240
2326
  name,
2241
2327
  parent,
2242
- annotations: options?.annotations ?? ServiceMap.empty(),
2328
+ annotations: options?.annotations ?? Context.empty(),
2243
2329
  links,
2244
- startTime: timingEnabled ? clock.currentTimeNanosUnsafe() : 0n,
2330
+ startTime: timingEnabled ? clock.currentTimeNanosUnsafe() : BigInt(0),
2245
2331
  kind: options?.kind ?? "internal",
2246
- root: options?.root ?? options?.parent === undefined,
2247
- sampled: options?.sampled ?? (parent?.sampled === false ? false : !isLogLevelGreaterThan(fiber.getRef(Tracer.MinimumTraceLevel), level))
2332
+ root: options?.root ?? Option.isNone(parent),
2333
+ sampled: options?.sampled ?? (Option.isSome(parent) && parent.value.sampled === false ? false : !isLogLevelGreaterThan(fiber.getRef(Tracer.MinimumTraceLevel), level))
2248
2334
  });
2249
2335
  for (const [key, value] of Object.entries(annotationsFromEnv)) {
2250
2336
  span.attribute(key, value);
@@ -2261,7 +2347,7 @@ export const makeSpanUnsafe = (fiber, name, options) => {
2261
2347
  export const makeSpan = (name, options) => withFiber(fiber => succeed(makeSpanUnsafe(fiber, name, options)));
2262
2348
  /** @internal */
2263
2349
  export const makeSpanScoped = (name, options) => uninterruptible(withFiber(fiber => {
2264
- const scope = ServiceMap.getUnsafe(fiber.services, scopeTag);
2350
+ const scope = Context.getUnsafe(fiber.context, scopeTag);
2265
2351
  const span = makeSpanUnsafe(fiber, name, options ?? {});
2266
2352
  const clock = fiber.getRef(ClockRef);
2267
2353
  const timingEnabled = fiber.getRef(TracerTimingEnabled);
@@ -2383,7 +2469,7 @@ export const currentParentSpan = /*#__PURE__*/serviceOptional(Tracer.ParentSpan)
2383
2469
  // Clock
2384
2470
  // ----------------------------------------------------------------------------
2385
2471
  /** @internal */
2386
- export const ClockRef = /*#__PURE__*/ServiceMap.Reference("effect/Clock", {
2472
+ export const ClockRef = /*#__PURE__*/Context.Reference("effect/Clock", {
2387
2473
  defaultValue: () => new ClockImpl()
2388
2474
  });
2389
2475
  const MAX_TIMER_MILLIS = 2 ** 31 - 1;
@@ -2427,7 +2513,7 @@ const processOrPerformanceNow = /*#__PURE__*/function () {
2427
2513
  /** @internal */
2428
2514
  export const clockWith = f => withFiber(fiber => f(fiber.getRef(ClockRef)));
2429
2515
  /** @internal */
2430
- export const sleep = duration => clockWith(clock => clock.sleep(Duration.fromDurationInputUnsafe(duration)));
2516
+ export const sleep = duration => clockWith(clock => clock.sleep(Duration.fromInputUnsafe(duration)));
2431
2517
  /** @internal */
2432
2518
  export const currentTimeMillis = /*#__PURE__*/clockWith(clock => clock.currentTimeMillis);
2433
2519
  /** @internal */
@@ -2475,6 +2561,20 @@ export class ExceededCapacityError extends /*#__PURE__*/TaggedError("ExceededCap
2475
2561
  }
2476
2562
  }
2477
2563
  /** @internal */
2564
+ export const AsyncFiberErrorTypeId = "~effect/Cause/AsyncFiberError";
2565
+ /** @internal */
2566
+ export const isAsyncFiberError = u => hasProperty(u, AsyncFiberErrorTypeId);
2567
+ /** @internal */
2568
+ export class AsyncFiberError extends /*#__PURE__*/TaggedError("AsyncFiberError") {
2569
+ [AsyncFiberErrorTypeId] = AsyncFiberErrorTypeId;
2570
+ constructor(fiber) {
2571
+ super({
2572
+ message: "An asynchronous Effect was executed with Effect.runSync",
2573
+ fiber
2574
+ });
2575
+ }
2576
+ }
2577
+ /** @internal */
2478
2578
  export const UnknownErrorTypeId = "~effect/Cause/UnknownError";
2479
2579
  /** @internal */
2480
2580
  export const isUnknownError = u => hasProperty(u, UnknownErrorTypeId);
@@ -2492,7 +2592,7 @@ export class UnknownError extends /*#__PURE__*/TaggedError("UnknownError") {
2492
2592
  // Console
2493
2593
  // ----------------------------------------------------------------------------
2494
2594
  /** @internal */
2495
- export const ConsoleRef = /*#__PURE__*/ServiceMap.Reference("effect/Console/CurrentConsole", {
2595
+ export const ConsoleRef = /*#__PURE__*/Context.Reference("effect/Console/CurrentConsole", {
2496
2596
  defaultValue: () => globalThis.console
2497
2597
  });
2498
2598
  // ----------------------------------------------------------------------------
@@ -2527,14 +2627,46 @@ export const isLogLevelGreaterThan = /*#__PURE__*/Order.isGreaterThan(LogLevelOr
2527
2627
  // Logger
2528
2628
  // ----------------------------------------------------------------------------
2529
2629
  /** @internal */
2530
- export const CurrentLoggers = /*#__PURE__*/ServiceMap.Reference("effect/Loggers/CurrentLoggers", {
2630
+ export const CurrentLoggers = /*#__PURE__*/Context.Reference("effect/Loggers/CurrentLoggers", {
2531
2631
  defaultValue: () => new Set([defaultLogger, tracerLogger])
2532
2632
  });
2533
2633
  /** @internal */
2534
- export const LogToStderr = /*#__PURE__*/ServiceMap.Reference("effect/Logger/LogToStderr", {
2634
+ export const LogToStderr = /*#__PURE__*/Context.Reference("effect/Logger/LogToStderr", {
2535
2635
  defaultValue: constFalse
2536
2636
  });
2537
2637
  /** @internal */
2638
+ export const annotateLogsScoped = function () {
2639
+ const entries = typeof arguments[0] === "string" ? [[arguments[0], arguments[1]]] : Object.entries(arguments[0]);
2640
+ return uninterruptible(withFiber(fiber => {
2641
+ const prev = fiber.getRef(CurrentLogAnnotations);
2642
+ const next = {
2643
+ ...prev
2644
+ };
2645
+ for (let i = 0; i < entries.length; i++) {
2646
+ const [key, value] = entries[i];
2647
+ next[key] = value;
2648
+ }
2649
+ fiber.setContext(Context.add(fiber.context, CurrentLogAnnotations, next));
2650
+ return scopeAddFinalizerExit(Context.getUnsafe(fiber.context, scopeTag), _ => {
2651
+ const current = fiber.getRef(CurrentLogAnnotations);
2652
+ const next = {
2653
+ ...current
2654
+ };
2655
+ for (let i = 0; i < entries.length; i++) {
2656
+ const [key, value] = entries[i];
2657
+ if (current[key] !== value) continue;
2658
+ if (key in prev) {
2659
+ next[key] = prev[key];
2660
+ } else {
2661
+ delete next[key];
2662
+ }
2663
+ }
2664
+ fiber.setContext(Context.add(fiber.context, CurrentLogAnnotations, next));
2665
+ return void_;
2666
+ });
2667
+ }));
2668
+ };
2669
+ /** @internal */
2538
2670
  export const LoggerTypeId = "~effect/Logger";
2539
2671
  const LoggerProto = {
2540
2672
  [LoggerTypeId]: {
@@ -2684,7 +2816,7 @@ export const consolePretty = options => {
2684
2816
  };
2685
2817
  const prettyLoggerTty = options => {
2686
2818
  const processIsBun = typeof process === "object" && "isBun" in process && process.isBun === true;
2687
- const color = options.colors && processStdoutIsTTY ? withColor : withColorNoop;
2819
+ const color = options.colors ? withColor : withColorNoop;
2688
2820
  return loggerMake(({
2689
2821
  cause,
2690
2822
  date,
@@ -2693,6 +2825,7 @@ const prettyLoggerTty = options => {
2693
2825
  message: message_
2694
2826
  }) => {
2695
2827
  const console = fiber.getRef(ConsoleRef);
2828
+ // oxlint-disable-next-line no-console
2696
2829
  const log = fiber.getRef(LogToStderr) ? console.error : console.log;
2697
2830
  const message = Array.isArray(message_) ? message_.slice() : [message_];
2698
2831
  let firstLine = color(`[${options.formatDate(date)}]`, colors.white) + ` ${color(logLevel.toUpperCase(), ...logLevelColors[logLevel])}` + ` (#${fiber.id})`;
@@ -2711,6 +2844,7 @@ const prettyLoggerTty = options => {
2711
2844
  }
2712
2845
  }
2713
2846
  log(firstLine);
2847
+ // oxlint-disable-next-line no-console
2714
2848
  if (!processIsBun) console.group();
2715
2849
  if (cause.reasons.length > 0) {
2716
2850
  log(causePretty(cause));
@@ -2724,6 +2858,7 @@ const prettyLoggerTty = options => {
2724
2858
  for (const [key, value] of Object.entries(annotations)) {
2725
2859
  log(color(`${key}:`, colors.bold, colors.white), redact(value));
2726
2860
  }
2861
+ // oxlint-disable-next-line no-console
2727
2862
  if (!processIsBun) console.groupEnd();
2728
2863
  });
2729
2864
  };
@@ -2764,12 +2899,15 @@ const prettyLoggerBrowser = options => {
2764
2899
  messageIndex++;
2765
2900
  }
2766
2901
  }
2902
+ // oxlint-disable-next-line no-console
2767
2903
  console.groupCollapsed(firstLine, ...firstParams);
2768
2904
  if (cause.reasons.length > 0) {
2905
+ // oxlint-disable-next-line no-console
2769
2906
  console.error(causePretty(cause));
2770
2907
  }
2771
2908
  if (messageIndex < message.length) {
2772
2909
  for (; messageIndex < message.length; messageIndex++) {
2910
+ // oxlint-disable-next-line no-console
2773
2911
  console.log(redact(message[messageIndex]));
2774
2912
  }
2775
2913
  }
@@ -2777,11 +2915,14 @@ const prettyLoggerBrowser = options => {
2777
2915
  for (const [key, value] of Object.entries(annotations)) {
2778
2916
  const redacted = redact(value);
2779
2917
  if (options.colors) {
2918
+ // oxlint-disable-next-line no-console
2780
2919
  console.log(`%c${key}:`, "color:gray", redacted);
2781
2920
  } else {
2921
+ // oxlint-disable-next-line no-console
2782
2922
  console.log(`${key}:`, redacted);
2783
2923
  }
2784
2924
  }
2925
+ // oxlint-disable-next-line no-console
2785
2926
  console.groupEnd();
2786
2927
  });
2787
2928
  };
@@ -2795,7 +2936,7 @@ export const defaultLogger = /*#__PURE__*/loggerMake(({
2795
2936
  }) => {
2796
2937
  const message_ = Array.isArray(message) ? message.slice() : [message];
2797
2938
  if (cause.reasons.length > 0) {
2798
- message_.unshift(causePretty(cause));
2939
+ message_.push(causePretty(cause));
2799
2940
  }
2800
2941
  const now = date.getTime();
2801
2942
  const spans = fiber.getRef(CurrentLogSpans);
@@ -2808,6 +2949,7 @@ export const defaultLogger = /*#__PURE__*/loggerMake(({
2808
2949
  message_.push(annotations);
2809
2950
  }
2810
2951
  const console = fiber.getRef(ConsoleRef);
2952
+ // oxlint-disable-next-line no-console
2811
2953
  const log = fiber.getRef(LogToStderr) ? console.error : console.log;
2812
2954
  log(`[${defaultDateFormat(date)}] ${logLevel.toUpperCase()} (#${fiber.id})${spanString}:`, ...message_);
2813
2955
  });
@@ -2841,4 +2983,24 @@ export function interruptChildrenPatch() {
2841
2983
  const undefined_ = /*#__PURE__*/succeed(undefined);
2842
2984
  /** @internal */
2843
2985
  export { undefined_ as undefined };
2986
+ // ----------------------------------------------------------------------------
2987
+ // ErrorReporter
2988
+ // ----------------------------------------------------------------------------
2989
+ /** @internal */
2990
+ export const withErrorReporting = /*#__PURE__*/dual(args => isEffect(args[0]), (self, options) => onError(self, cause => withFiber(fiber => {
2991
+ reportCauseUnsafe(fiber, cause, options?.defectsOnly);
2992
+ return void_;
2993
+ })));
2994
+ /** @internal */
2995
+ export const reportCauseUnsafe = (fiber, cause, defectsOnly) => {
2996
+ const reporters = fiber.getRef(CurrentErrorReporters);
2997
+ if (reporters.size === 0) return;
2998
+ if (defectsOnly && !hasDies(cause)) return;
2999
+ const opts = {
3000
+ cause,
3001
+ fiber,
3002
+ timestamp: fiber.getRef(ClockRef).currentTimeNanosUnsafe()
3003
+ };
3004
+ reporters.forEach(reporter => reporter.report(opts));
3005
+ };
2844
3006
  //# sourceMappingURL=effect.js.map