effect 4.0.0-beta.2 → 4.0.0-beta.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (881) hide show
  1. package/dist/Array.d.ts +127 -299
  2. package/dist/Array.d.ts.map +1 -1
  3. package/dist/Array.js +102 -62
  4. package/dist/Array.js.map +1 -1
  5. package/dist/Cache.d.ts +2 -2
  6. package/dist/Cache.d.ts.map +1 -1
  7. package/dist/Cache.js +6 -5
  8. package/dist/Cache.js.map +1 -1
  9. package/dist/Cause.d.ts +1 -1
  10. package/dist/Cause.d.ts.map +1 -1
  11. package/dist/Channel.d.ts +116 -30
  12. package/dist/Channel.d.ts.map +1 -1
  13. package/dist/Channel.js +82 -37
  14. package/dist/Channel.js.map +1 -1
  15. package/dist/Chunk.d.ts +54 -247
  16. package/dist/Chunk.d.ts.map +1 -1
  17. package/dist/Chunk.js +36 -67
  18. package/dist/Chunk.js.map +1 -1
  19. package/dist/Combiner.d.ts +280 -13
  20. package/dist/Combiner.d.ts.map +1 -1
  21. package/dist/Combiner.js +198 -7
  22. package/dist/Combiner.js.map +1 -1
  23. package/dist/Config.d.ts +165 -9
  24. package/dist/Config.d.ts.map +1 -1
  25. package/dist/Config.js +62 -7
  26. package/dist/Config.js.map +1 -1
  27. package/dist/ConfigProvider.d.ts +1 -1
  28. package/dist/Cron.d.ts +1 -1
  29. package/dist/Data.d.ts +534 -365
  30. package/dist/Data.d.ts.map +1 -1
  31. package/dist/Data.js +132 -79
  32. package/dist/Data.js.map +1 -1
  33. package/dist/DateTime.d.ts +23 -161
  34. package/dist/DateTime.d.ts.map +1 -1
  35. package/dist/DateTime.js +6 -51
  36. package/dist/DateTime.js.map +1 -1
  37. package/dist/Duration.d.ts +12 -12
  38. package/dist/Duration.d.ts.map +1 -1
  39. package/dist/Duration.js +12 -12
  40. package/dist/Duration.js.map +1 -1
  41. package/dist/Effect.d.ts +829 -692
  42. package/dist/Effect.d.ts.map +1 -1
  43. package/dist/Effect.js +263 -251
  44. package/dist/Effect.js.map +1 -1
  45. package/dist/Encoding.d.ts +194 -0
  46. package/dist/Encoding.d.ts.map +1 -0
  47. package/dist/Encoding.js +352 -0
  48. package/dist/Encoding.js.map +1 -0
  49. package/dist/Equal.d.ts +276 -109
  50. package/dist/Equal.d.ts.map +1 -1
  51. package/dist/Equal.js +124 -48
  52. package/dist/Equal.js.map +1 -1
  53. package/dist/ErrorReporter.d.ts +376 -0
  54. package/dist/ErrorReporter.d.ts.map +1 -0
  55. package/dist/ErrorReporter.js +246 -0
  56. package/dist/ErrorReporter.js.map +1 -0
  57. package/dist/Fiber.d.ts +2 -2
  58. package/dist/Fiber.d.ts.map +1 -1
  59. package/dist/Fiber.js.map +1 -1
  60. package/dist/FileSystem.d.ts +1 -1
  61. package/dist/FileSystem.d.ts.map +1 -1
  62. package/dist/FileSystem.js +5 -5
  63. package/dist/FileSystem.js.map +1 -1
  64. package/dist/Filter.d.ts +30 -34
  65. package/dist/Filter.d.ts.map +1 -1
  66. package/dist/Filter.js +15 -13
  67. package/dist/Filter.js.map +1 -1
  68. package/dist/Formatter.d.ts +131 -47
  69. package/dist/Formatter.d.ts.map +1 -1
  70. package/dist/Formatter.js +229 -51
  71. package/dist/Formatter.js.map +1 -1
  72. package/dist/Graph.d.ts +1 -1
  73. package/dist/Graph.d.ts.map +1 -1
  74. package/dist/Graph.js +5 -8
  75. package/dist/Graph.js.map +1 -1
  76. package/dist/HashMap.d.ts +15 -14
  77. package/dist/HashMap.d.ts.map +1 -1
  78. package/dist/HashMap.js +4 -4
  79. package/dist/HashMap.js.map +1 -1
  80. package/dist/Iterable.d.ts +40 -39
  81. package/dist/Iterable.d.ts.map +1 -1
  82. package/dist/Iterable.js +94 -22
  83. package/dist/Iterable.js.map +1 -1
  84. package/dist/JsonSchema.d.ts +299 -10
  85. package/dist/JsonSchema.d.ts.map +1 -1
  86. package/dist/JsonSchema.js +323 -4
  87. package/dist/JsonSchema.js.map +1 -1
  88. package/dist/Latch.d.ts +109 -0
  89. package/dist/Latch.d.ts.map +1 -0
  90. package/dist/Latch.js +72 -0
  91. package/dist/Latch.js.map +1 -0
  92. package/dist/Layer.d.ts +9 -9
  93. package/dist/Layer.d.ts.map +1 -1
  94. package/dist/Layer.js.map +1 -1
  95. package/dist/LayerMap.d.ts +4 -4
  96. package/dist/LayerMap.d.ts.map +1 -1
  97. package/dist/LogLevel.d.ts +32 -0
  98. package/dist/LogLevel.d.ts.map +1 -1
  99. package/dist/LogLevel.js +28 -100
  100. package/dist/LogLevel.js.map +1 -1
  101. package/dist/Logger.d.ts +29 -95
  102. package/dist/Logger.d.ts.map +1 -1
  103. package/dist/Logger.js +2 -3
  104. package/dist/Logger.js.map +1 -1
  105. package/dist/ManagedRuntime.d.ts +1 -1
  106. package/dist/ManagedRuntime.js +1 -1
  107. package/dist/Metric.d.ts +2 -2
  108. package/dist/Metric.d.ts.map +1 -1
  109. package/dist/Metric.js +1 -1
  110. package/dist/Metric.js.map +1 -1
  111. package/dist/Optic.d.ts +947 -18
  112. package/dist/Optic.d.ts.map +1 -1
  113. package/dist/Optic.js +454 -5
  114. package/dist/Optic.js.map +1 -1
  115. package/dist/Option.d.ts +22 -15
  116. package/dist/Option.d.ts.map +1 -1
  117. package/dist/Option.js +14 -7
  118. package/dist/Option.js.map +1 -1
  119. package/dist/Pipeable.d.ts +17 -0
  120. package/dist/Pipeable.d.ts.map +1 -1
  121. package/dist/Pipeable.js +19 -1
  122. package/dist/Pipeable.js.map +1 -1
  123. package/dist/PlatformError.d.ts +10 -9
  124. package/dist/PlatformError.d.ts.map +1 -1
  125. package/dist/PlatformError.js +2 -2
  126. package/dist/PlatformError.js.map +1 -1
  127. package/dist/Pool.d.ts +6 -4
  128. package/dist/Pool.d.ts.map +1 -1
  129. package/dist/Pool.js +7 -5
  130. package/dist/Pool.js.map +1 -1
  131. package/dist/PubSub.d.ts +3 -2
  132. package/dist/PubSub.d.ts.map +1 -1
  133. package/dist/PubSub.js +3 -2
  134. package/dist/PubSub.js.map +1 -1
  135. package/dist/Pull.d.ts.map +1 -1
  136. package/dist/Pull.js +1 -1
  137. package/dist/Pull.js.map +1 -1
  138. package/dist/Queue.d.ts.map +1 -1
  139. package/dist/Queue.js +0 -1
  140. package/dist/Queue.js.map +1 -1
  141. package/dist/Random.d.ts +35 -1
  142. package/dist/Random.d.ts.map +1 -1
  143. package/dist/Random.js +46 -12
  144. package/dist/Random.js.map +1 -1
  145. package/dist/RcMap.d.ts +2 -2
  146. package/dist/RcMap.d.ts.map +1 -1
  147. package/dist/RcMap.js +1 -1
  148. package/dist/RcMap.js.map +1 -1
  149. package/dist/RcRef.d.ts +1 -1
  150. package/dist/RcRef.d.ts.map +1 -1
  151. package/dist/Record.d.ts +24 -120
  152. package/dist/Record.d.ts.map +1 -1
  153. package/dist/Record.js +21 -41
  154. package/dist/Record.js.map +1 -1
  155. package/dist/Reducer.d.ts +166 -7
  156. package/dist/Reducer.d.ts.map +1 -1
  157. package/dist/Reducer.js +135 -1
  158. package/dist/Reducer.js.map +1 -1
  159. package/dist/References.d.ts +3 -3
  160. package/dist/References.d.ts.map +1 -1
  161. package/dist/Request.d.ts +1 -1
  162. package/dist/Request.d.ts.map +1 -1
  163. package/dist/Request.js +2 -1
  164. package/dist/Request.js.map +1 -1
  165. package/dist/RequestResolver.d.ts +6 -26
  166. package/dist/RequestResolver.d.ts.map +1 -1
  167. package/dist/RequestResolver.js +0 -20
  168. package/dist/RequestResolver.js.map +1 -1
  169. package/dist/Result.d.ts +12 -0
  170. package/dist/Result.d.ts.map +1 -1
  171. package/dist/Result.js +12 -0
  172. package/dist/Result.js.map +1 -1
  173. package/dist/Schedule.d.ts +47 -20
  174. package/dist/Schedule.d.ts.map +1 -1
  175. package/dist/Schedule.js +94 -34
  176. package/dist/Schedule.js.map +1 -1
  177. package/dist/Schema.d.ts +266 -50
  178. package/dist/Schema.d.ts.map +1 -1
  179. package/dist/Schema.js +426 -74
  180. package/dist/Schema.js.map +1 -1
  181. package/dist/SchemaAST.d.ts.map +1 -1
  182. package/dist/SchemaAST.js +7 -6
  183. package/dist/SchemaAST.js.map +1 -1
  184. package/dist/SchemaGetter.d.ts +2 -2
  185. package/dist/SchemaGetter.d.ts.map +1 -1
  186. package/dist/SchemaGetter.js +12 -14
  187. package/dist/SchemaGetter.js.map +1 -1
  188. package/dist/SchemaParser.d.ts +5 -0
  189. package/dist/SchemaParser.d.ts.map +1 -1
  190. package/dist/SchemaParser.js +10 -0
  191. package/dist/SchemaParser.js.map +1 -1
  192. package/dist/SchemaRepresentation.d.ts +44 -43
  193. package/dist/SchemaRepresentation.d.ts.map +1 -1
  194. package/dist/SchemaRepresentation.js +43 -24
  195. package/dist/SchemaRepresentation.js.map +1 -1
  196. package/dist/SchemaTransformation.d.ts +107 -3
  197. package/dist/SchemaTransformation.d.ts.map +1 -1
  198. package/dist/SchemaTransformation.js +159 -4
  199. package/dist/SchemaTransformation.js.map +1 -1
  200. package/dist/ScopedCache.d.ts +2 -2
  201. package/dist/ScopedCache.d.ts.map +1 -1
  202. package/dist/ScopedCache.js +1 -1
  203. package/dist/ScopedCache.js.map +1 -1
  204. package/dist/Semaphore.d.ts +211 -0
  205. package/dist/Semaphore.d.ts.map +1 -0
  206. package/dist/{PartitionedSemaphore.js → Semaphore.js} +97 -13
  207. package/dist/Semaphore.js.map +1 -0
  208. package/dist/ServiceMap.d.ts +39 -30
  209. package/dist/ServiceMap.d.ts.map +1 -1
  210. package/dist/ServiceMap.js +3 -3
  211. package/dist/ServiceMap.js.map +1 -1
  212. package/dist/Sink.d.ts +13 -13
  213. package/dist/Sink.d.ts.map +1 -1
  214. package/dist/Sink.js +53 -6
  215. package/dist/Sink.js.map +1 -1
  216. package/dist/Stream.d.ts +235 -423
  217. package/dist/Stream.d.ts.map +1 -1
  218. package/dist/Stream.js +124 -77
  219. package/dist/Stream.js.map +1 -1
  220. package/dist/Struct.d.ts +16 -0
  221. package/dist/Struct.d.ts.map +1 -1
  222. package/dist/Struct.js +22 -0
  223. package/dist/Struct.js.map +1 -1
  224. package/dist/SubscriptionRef.d.ts +2 -1
  225. package/dist/SubscriptionRef.d.ts.map +1 -1
  226. package/dist/SubscriptionRef.js +2 -1
  227. package/dist/SubscriptionRef.js.map +1 -1
  228. package/dist/SynchronizedRef.d.ts +2 -1
  229. package/dist/SynchronizedRef.d.ts.map +1 -1
  230. package/dist/SynchronizedRef.js +2 -1
  231. package/dist/SynchronizedRef.js.map +1 -1
  232. package/dist/Trie.d.ts +18 -17
  233. package/dist/Trie.d.ts.map +1 -1
  234. package/dist/Trie.js +5 -5
  235. package/dist/Trie.js.map +1 -1
  236. package/dist/TxChunk.d.ts +37 -37
  237. package/dist/TxChunk.d.ts.map +1 -1
  238. package/dist/TxChunk.js +3 -3
  239. package/dist/TxChunk.js.map +1 -1
  240. package/dist/TxDeferred.d.ts +328 -0
  241. package/dist/TxDeferred.d.ts.map +1 -0
  242. package/dist/TxDeferred.js +196 -0
  243. package/dist/TxDeferred.js.map +1 -0
  244. package/dist/TxHashMap.d.ts +84 -83
  245. package/dist/TxHashMap.d.ts.map +1 -1
  246. package/dist/TxHashMap.js +24 -24
  247. package/dist/TxHashMap.js.map +1 -1
  248. package/dist/TxHashSet.d.ts +35 -35
  249. package/dist/TxHashSet.d.ts.map +1 -1
  250. package/dist/TxHashSet.js +14 -14
  251. package/dist/TxHashSet.js.map +1 -1
  252. package/dist/TxPriorityQueue.d.ts +609 -0
  253. package/dist/TxPriorityQueue.d.ts.map +1 -0
  254. package/dist/TxPriorityQueue.js +415 -0
  255. package/dist/TxPriorityQueue.js.map +1 -0
  256. package/dist/TxPubSub.d.ts +585 -0
  257. package/dist/TxPubSub.d.ts.map +1 -0
  258. package/dist/TxPubSub.js +521 -0
  259. package/dist/TxPubSub.js.map +1 -0
  260. package/dist/TxQueue.d.ts +32 -32
  261. package/dist/TxQueue.d.ts.map +1 -1
  262. package/dist/TxQueue.js +26 -26
  263. package/dist/TxQueue.js.map +1 -1
  264. package/dist/TxReentrantLock.d.ts +523 -0
  265. package/dist/TxReentrantLock.d.ts.map +1 -0
  266. package/dist/TxReentrantLock.js +504 -0
  267. package/dist/TxReentrantLock.js.map +1 -0
  268. package/dist/TxRef.d.ts +34 -34
  269. package/dist/TxRef.d.ts.map +1 -1
  270. package/dist/TxRef.js +21 -14
  271. package/dist/TxRef.js.map +1 -1
  272. package/dist/TxSemaphore.d.ts +8 -8
  273. package/dist/TxSemaphore.d.ts.map +1 -1
  274. package/dist/TxSemaphore.js +7 -7
  275. package/dist/TxSemaphore.js.map +1 -1
  276. package/dist/TxSubscriptionRef.d.ts +508 -0
  277. package/dist/TxSubscriptionRef.d.ts.map +1 -0
  278. package/dist/TxSubscriptionRef.js +293 -0
  279. package/dist/TxSubscriptionRef.js.map +1 -0
  280. package/dist/Types.d.ts +84 -6
  281. package/dist/Types.d.ts.map +1 -1
  282. package/dist/index.d.ts +591 -20
  283. package/dist/index.d.ts.map +1 -1
  284. package/dist/index.js +591 -20
  285. package/dist/index.js.map +1 -1
  286. package/dist/internal/core.js +11 -3
  287. package/dist/internal/core.js.map +1 -1
  288. package/dist/internal/dateTime.js +3 -11
  289. package/dist/internal/dateTime.js.map +1 -1
  290. package/dist/internal/effect.js +263 -99
  291. package/dist/internal/effect.js.map +1 -1
  292. package/dist/internal/hashMap.js +5 -4
  293. package/dist/internal/hashMap.js.map +1 -1
  294. package/dist/internal/random.d.ts +2 -0
  295. package/dist/internal/random.d.ts.map +1 -0
  296. package/dist/internal/random.js +13 -0
  297. package/dist/internal/random.js.map +1 -0
  298. package/dist/internal/rcRef.js +3 -2
  299. package/dist/internal/rcRef.js.map +1 -1
  300. package/dist/internal/request.js +2 -2
  301. package/dist/internal/request.js.map +1 -1
  302. package/dist/internal/schema/annotations.js +2 -0
  303. package/dist/internal/schema/annotations.js.map +1 -1
  304. package/dist/internal/schema/schema.js +1 -0
  305. package/dist/internal/schema/schema.js.map +1 -1
  306. package/dist/internal/trie.js +5 -4
  307. package/dist/internal/trie.js.map +1 -1
  308. package/dist/testing/TestClock.d.ts +7 -6
  309. package/dist/testing/TestClock.d.ts.map +1 -1
  310. package/dist/testing/TestClock.js +6 -4
  311. package/dist/testing/TestClock.js.map +1 -1
  312. package/dist/testing/TestSchema.d.ts +8 -8
  313. package/dist/testing/TestSchema.d.ts.map +1 -1
  314. package/dist/testing/TestSchema.js.map +1 -1
  315. package/dist/unstable/ai/AiError.d.ts +128 -48
  316. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  317. package/dist/unstable/ai/AiError.js +11 -12
  318. package/dist/unstable/ai/AiError.js.map +1 -1
  319. package/dist/unstable/ai/Chat.d.ts +3 -3
  320. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  321. package/dist/unstable/ai/Chat.js +4 -3
  322. package/dist/unstable/ai/Chat.js.map +1 -1
  323. package/dist/unstable/ai/LanguageModel.d.ts +4 -2
  324. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  325. package/dist/unstable/ai/LanguageModel.js +86 -14
  326. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  327. package/dist/unstable/ai/McpSchema.d.ts +163 -87
  328. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  329. package/dist/unstable/ai/McpSchema.js +49 -12
  330. package/dist/unstable/ai/McpSchema.js.map +1 -1
  331. package/dist/unstable/ai/McpServer.d.ts +1 -1
  332. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  333. package/dist/unstable/ai/McpServer.js +35 -7
  334. package/dist/unstable/ai/McpServer.js.map +1 -1
  335. package/dist/unstable/ai/Model.d.ts +25 -7
  336. package/dist/unstable/ai/Model.d.ts.map +1 -1
  337. package/dist/unstable/ai/Model.js +22 -6
  338. package/dist/unstable/ai/Model.js.map +1 -1
  339. package/dist/unstable/ai/Prompt.d.ts +20 -20
  340. package/dist/unstable/ai/Prompt.d.ts.map +1 -1
  341. package/dist/unstable/ai/Response.d.ts +26 -26
  342. package/dist/unstable/ai/Response.d.ts.map +1 -1
  343. package/dist/unstable/ai/Response.js +1 -1
  344. package/dist/unstable/ai/Response.js.map +1 -1
  345. package/dist/unstable/ai/Tool.d.ts +19 -3
  346. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  347. package/dist/unstable/ai/Tool.js +14 -9
  348. package/dist/unstable/ai/Tool.js.map +1 -1
  349. package/dist/unstable/ai/index.d.ts +1 -1
  350. package/dist/unstable/ai/index.js +1 -1
  351. package/dist/unstable/cli/CliError.d.ts +5 -5
  352. package/dist/unstable/cli/CliOutput.js +59 -6
  353. package/dist/unstable/cli/CliOutput.js.map +1 -1
  354. package/dist/unstable/cli/Command.d.ts +276 -19
  355. package/dist/unstable/cli/Command.d.ts.map +1 -1
  356. package/dist/unstable/cli/Command.js +234 -36
  357. package/dist/unstable/cli/Command.js.map +1 -1
  358. package/dist/unstable/cli/GlobalFlag.d.ts +125 -0
  359. package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -0
  360. package/dist/unstable/cli/GlobalFlag.js +118 -0
  361. package/dist/unstable/cli/GlobalFlag.js.map +1 -0
  362. package/dist/unstable/cli/HelpDoc.d.ts +70 -2
  363. package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
  364. package/dist/unstable/cli/index.d.ts +4 -0
  365. package/dist/unstable/cli/index.d.ts.map +1 -1
  366. package/dist/unstable/cli/index.js +4 -0
  367. package/dist/unstable/cli/index.js.map +1 -1
  368. package/dist/unstable/cli/internal/command.d.ts +17 -8
  369. package/dist/unstable/cli/internal/command.d.ts.map +1 -1
  370. package/dist/unstable/cli/internal/command.js +32 -23
  371. package/dist/unstable/cli/internal/command.js.map +1 -1
  372. package/dist/unstable/cli/internal/completions/CommandDescriptor.js +7 -2
  373. package/dist/unstable/cli/internal/completions/CommandDescriptor.js.map +1 -1
  374. package/dist/unstable/cli/internal/help.d.ts +33 -0
  375. package/dist/unstable/cli/internal/help.d.ts.map +1 -0
  376. package/dist/unstable/cli/internal/help.js +107 -0
  377. package/dist/unstable/cli/internal/help.js.map +1 -0
  378. package/dist/unstable/cli/internal/parser.js +29 -36
  379. package/dist/unstable/cli/internal/parser.js.map +1 -1
  380. package/dist/unstable/cluster/ClusterCron.d.ts +1 -1
  381. package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
  382. package/dist/unstable/cluster/ClusterCron.js +1 -1
  383. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  384. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  385. package/dist/unstable/cluster/ClusterWorkflowEngine.js +4 -3
  386. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  387. package/dist/unstable/cluster/Entity.d.ts +7 -6
  388. package/dist/unstable/cluster/Entity.d.ts.map +1 -1
  389. package/dist/unstable/cluster/Entity.js.map +1 -1
  390. package/dist/unstable/cluster/EntityResource.d.ts +2 -2
  391. package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
  392. package/dist/unstable/cluster/Envelope.d.ts +1 -1
  393. package/dist/unstable/cluster/K8sHttpClient.d.ts +1 -1
  394. package/dist/unstable/cluster/K8sHttpClient.js +4 -4
  395. package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
  396. package/dist/unstable/cluster/Message.d.ts +10 -10
  397. package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
  398. package/dist/unstable/cluster/MessageStorage.js +2 -1
  399. package/dist/unstable/cluster/MessageStorage.js.map +1 -1
  400. package/dist/unstable/cluster/Reply.d.ts +6 -6
  401. package/dist/unstable/cluster/Runner.d.ts +1 -1
  402. package/dist/unstable/cluster/Runners.d.ts.map +1 -1
  403. package/dist/unstable/cluster/Runners.js +4 -3
  404. package/dist/unstable/cluster/Runners.js.map +1 -1
  405. package/dist/unstable/cluster/Sharding.d.ts +2 -2
  406. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  407. package/dist/unstable/cluster/Sharding.js +9 -7
  408. package/dist/unstable/cluster/Sharding.js.map +1 -1
  409. package/dist/unstable/cluster/ShardingConfig.d.ts +21 -21
  410. package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
  411. package/dist/unstable/cluster/ShardingConfig.js +20 -20
  412. package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
  413. package/dist/unstable/cluster/SqlRunnerStorage.js +1 -1
  414. package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
  415. package/dist/unstable/cluster/internal/entityManager.js +5 -4
  416. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  417. package/dist/unstable/cluster/internal/entityReaper.js +2 -1
  418. package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
  419. package/dist/unstable/cluster/internal/resourceRef.js +2 -1
  420. package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
  421. package/dist/unstable/devtools/DevToolsSchema.d.ts +36 -36
  422. package/dist/unstable/encoding/Msgpack.d.ts +1 -1
  423. package/dist/unstable/encoding/Ndjson.d.ts +1 -1
  424. package/dist/unstable/encoding/Sse.d.ts +4 -4
  425. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  426. package/dist/unstable/encoding/Sse.js +1 -1
  427. package/dist/unstable/encoding/Sse.js.map +1 -1
  428. package/dist/unstable/eventlog/EventJournal.d.ts +2 -2
  429. package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
  430. package/dist/unstable/eventlog/EventLog.js +2 -1
  431. package/dist/unstable/eventlog/EventLog.js.map +1 -1
  432. package/dist/unstable/eventlog/EventLogRemote.d.ts +6 -6
  433. package/dist/unstable/http/Cookies.d.ts +3 -3
  434. package/dist/unstable/http/Cookies.d.ts.map +1 -1
  435. package/dist/unstable/http/Cookies.js +2 -2
  436. package/dist/unstable/http/Cookies.js.map +1 -1
  437. package/dist/unstable/http/Headers.d.ts.map +1 -1
  438. package/dist/unstable/http/Headers.js +27 -10
  439. package/dist/unstable/http/Headers.js.map +1 -1
  440. package/dist/unstable/http/HttpBody.d.ts +17 -2
  441. package/dist/unstable/http/HttpBody.d.ts.map +1 -1
  442. package/dist/unstable/http/HttpBody.js +28 -1
  443. package/dist/unstable/http/HttpBody.js.map +1 -1
  444. package/dist/unstable/http/HttpClient.d.ts +37 -13
  445. package/dist/unstable/http/HttpClient.d.ts.map +1 -1
  446. package/dist/unstable/http/HttpClient.js +4 -4
  447. package/dist/unstable/http/HttpClient.js.map +1 -1
  448. package/dist/unstable/http/HttpClientError.d.ts +7 -7
  449. package/dist/unstable/http/HttpClientRequest.d.ts +27 -11
  450. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  451. package/dist/unstable/http/HttpClientRequest.js +15 -3
  452. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  453. package/dist/unstable/http/HttpEffect.d.ts +3 -8
  454. package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
  455. package/dist/unstable/http/HttpEffect.js +42 -56
  456. package/dist/unstable/http/HttpEffect.js.map +1 -1
  457. package/dist/unstable/http/HttpMethod.d.ts +4 -4
  458. package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
  459. package/dist/unstable/http/HttpMethod.js +3 -3
  460. package/dist/unstable/http/HttpMethod.js.map +1 -1
  461. package/dist/unstable/http/HttpMiddleware.d.ts +1 -6
  462. package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
  463. package/dist/unstable/http/HttpMiddleware.js +8 -17
  464. package/dist/unstable/http/HttpMiddleware.js.map +1 -1
  465. package/dist/unstable/http/HttpServerError.d.ts +20 -33
  466. package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
  467. package/dist/unstable/http/HttpServerError.js +37 -44
  468. package/dist/unstable/http/HttpServerError.js.map +1 -1
  469. package/dist/unstable/http/HttpServerRequest.d.ts +1 -1
  470. package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
  471. package/dist/unstable/http/HttpServerRespondable.d.ts +2 -2
  472. package/dist/unstable/http/HttpServerRespondable.d.ts.map +1 -1
  473. package/dist/unstable/http/HttpServerRespondable.js +5 -5
  474. package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
  475. package/dist/unstable/http/HttpServerResponse.d.ts +2 -1
  476. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  477. package/dist/unstable/http/HttpServerResponse.js +3 -1
  478. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  479. package/dist/unstable/http/Multipart.d.ts +3 -3
  480. package/dist/unstable/http/UrlParams.d.ts +14 -6
  481. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  482. package/dist/unstable/http/UrlParams.js +1 -1
  483. package/dist/unstable/http/UrlParams.js.map +1 -1
  484. package/dist/unstable/http/internal/preResponseHandler.d.ts +2 -0
  485. package/dist/unstable/http/internal/preResponseHandler.d.ts.map +1 -0
  486. package/dist/unstable/http/internal/preResponseHandler.js +10 -0
  487. package/dist/unstable/http/internal/preResponseHandler.js.map +1 -0
  488. package/dist/unstable/httpapi/HttpApi.d.ts +3 -3
  489. package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
  490. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  491. package/dist/unstable/httpapi/HttpApiBuilder.d.ts +11 -5
  492. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  493. package/dist/unstable/httpapi/HttpApiBuilder.js +23 -12
  494. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  495. package/dist/unstable/httpapi/HttpApiClient.d.ts +7 -2
  496. package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
  497. package/dist/unstable/httpapi/HttpApiClient.js +3 -3
  498. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  499. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +31 -44
  500. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
  501. package/dist/unstable/httpapi/HttpApiEndpoint.js +15 -24
  502. package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
  503. package/dist/unstable/httpapi/HttpApiError.d.ts +11 -0
  504. package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
  505. package/dist/unstable/httpapi/HttpApiError.js +29 -9
  506. package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
  507. package/dist/unstable/httpapi/HttpApiGroup.d.ts +3 -3
  508. package/dist/unstable/httpapi/HttpApiGroup.d.ts.map +1 -1
  509. package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
  510. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +4 -4
  511. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
  512. package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
  513. package/dist/unstable/httpapi/HttpApiScalar.d.ts +6 -0
  514. package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
  515. package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
  516. package/dist/unstable/httpapi/HttpApiSecurity.d.ts +2 -2
  517. package/dist/unstable/httpapi/HttpApiSecurity.d.ts.map +1 -1
  518. package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
  519. package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
  520. package/dist/unstable/httpapi/OpenApi.js +32 -21
  521. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  522. package/dist/unstable/observability/Otlp.d.ts +12 -12
  523. package/dist/unstable/observability/Otlp.d.ts.map +1 -1
  524. package/dist/unstable/observability/OtlpExporter.d.ts +2 -2
  525. package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
  526. package/dist/unstable/observability/OtlpExporter.js +1 -1
  527. package/dist/unstable/observability/OtlpExporter.js.map +1 -1
  528. package/dist/unstable/observability/OtlpLogger.d.ts +4 -4
  529. package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
  530. package/dist/unstable/observability/OtlpLogger.js +7 -4
  531. package/dist/unstable/observability/OtlpLogger.js.map +1 -1
  532. package/dist/unstable/observability/OtlpMetrics.d.ts +4 -4
  533. package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
  534. package/dist/unstable/observability/OtlpTracer.d.ts +4 -4
  535. package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
  536. package/dist/unstable/persistence/KeyValueStore.d.ts +1 -1
  537. package/dist/unstable/persistence/KeyValueStore.js +6 -6
  538. package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
  539. package/dist/unstable/persistence/Persistable.d.ts +2 -2
  540. package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
  541. package/dist/unstable/persistence/PersistedCache.d.ts +6 -5
  542. package/dist/unstable/persistence/PersistedCache.d.ts.map +1 -1
  543. package/dist/unstable/persistence/PersistedCache.js +2 -1
  544. package/dist/unstable/persistence/PersistedCache.js.map +1 -1
  545. package/dist/unstable/persistence/PersistedQueue.d.ts +12 -12
  546. package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
  547. package/dist/unstable/persistence/PersistedQueue.js +12 -11
  548. package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
  549. package/dist/unstable/persistence/Persistence.d.ts +1 -1
  550. package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
  551. package/dist/unstable/persistence/Persistence.js +2 -2
  552. package/dist/unstable/persistence/Persistence.js.map +1 -1
  553. package/dist/unstable/persistence/RateLimiter.d.ts +3 -3
  554. package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
  555. package/dist/unstable/persistence/RateLimiter.js +1 -1
  556. package/dist/unstable/persistence/RateLimiter.js.map +1 -1
  557. package/dist/unstable/process/ChildProcess.d.ts +5 -128
  558. package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
  559. package/dist/unstable/process/ChildProcess.js +1 -65
  560. package/dist/unstable/process/ChildProcess.js.map +1 -1
  561. package/dist/unstable/process/ChildProcessSpawner.d.ts +45 -7
  562. package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
  563. package/dist/unstable/process/ChildProcessSpawner.js +21 -1
  564. package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
  565. package/dist/unstable/reactivity/Atom.d.ts +10 -10
  566. package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
  567. package/dist/unstable/reactivity/Atom.js +16 -13
  568. package/dist/unstable/reactivity/Atom.js.map +1 -1
  569. package/dist/unstable/reactivity/AtomHttpApi.d.ts +8 -8
  570. package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
  571. package/dist/unstable/reactivity/AtomHttpApi.js +3 -3
  572. package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
  573. package/dist/unstable/reactivity/AtomRegistry.d.ts +6 -0
  574. package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
  575. package/dist/unstable/reactivity/AtomRegistry.js +24 -7
  576. package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
  577. package/dist/unstable/reactivity/AtomRpc.d.ts +1 -1
  578. package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
  579. package/dist/unstable/reactivity/AtomRpc.js +1 -1
  580. package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
  581. package/dist/unstable/reactivity/Hydration.d.ts +39 -0
  582. package/dist/unstable/reactivity/Hydration.d.ts.map +1 -0
  583. package/dist/unstable/reactivity/Hydration.js +76 -0
  584. package/dist/unstable/reactivity/Hydration.js.map +1 -0
  585. package/dist/unstable/reactivity/index.d.ts +4 -0
  586. package/dist/unstable/reactivity/index.d.ts.map +1 -1
  587. package/dist/unstable/reactivity/index.js +4 -0
  588. package/dist/unstable/reactivity/index.js.map +1 -1
  589. package/dist/unstable/rpc/Rpc.d.ts +4 -4
  590. package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
  591. package/dist/unstable/rpc/Rpc.js.map +1 -1
  592. package/dist/unstable/rpc/RpcClient.d.ts +5 -26
  593. package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
  594. package/dist/unstable/rpc/RpcClient.js +6 -13
  595. package/dist/unstable/rpc/RpcClient.js.map +1 -1
  596. package/dist/unstable/rpc/RpcGroup.d.ts +2 -2
  597. package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
  598. package/dist/unstable/rpc/RpcGroup.js.map +1 -1
  599. package/dist/unstable/rpc/RpcMiddleware.d.ts +3 -3
  600. package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
  601. package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
  602. package/dist/unstable/rpc/RpcSchema.d.ts +13 -0
  603. package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
  604. package/dist/unstable/rpc/RpcSchema.js +14 -0
  605. package/dist/unstable/rpc/RpcSchema.js.map +1 -1
  606. package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
  607. package/dist/unstable/rpc/RpcSerialization.js +34 -9
  608. package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
  609. package/dist/unstable/rpc/RpcServer.d.ts +0 -7
  610. package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
  611. package/dist/unstable/rpc/RpcServer.js +15 -15
  612. package/dist/unstable/rpc/RpcServer.js.map +1 -1
  613. package/dist/unstable/rpc/Utils.d.ts.map +1 -1
  614. package/dist/unstable/rpc/Utils.js +2 -1
  615. package/dist/unstable/rpc/Utils.js.map +1 -1
  616. package/dist/unstable/schema/Model.d.ts +1 -1
  617. package/dist/unstable/schema/Model.d.ts.map +1 -1
  618. package/dist/unstable/schema/VariantSchema.d.ts +3 -3
  619. package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
  620. package/dist/unstable/schema/VariantSchema.js +3 -3
  621. package/dist/unstable/schema/VariantSchema.js.map +1 -1
  622. package/dist/unstable/socket/Socket.d.ts +4 -4
  623. package/dist/unstable/socket/Socket.d.ts.map +1 -1
  624. package/dist/unstable/socket/Socket.js +6 -5
  625. package/dist/unstable/socket/Socket.js.map +1 -1
  626. package/dist/unstable/socket/SocketServer.d.ts +3 -3
  627. package/dist/unstable/sql/Migrator.d.ts +1 -1
  628. package/dist/unstable/sql/SqlClient.d.ts +1 -1
  629. package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
  630. package/dist/unstable/sql/SqlError.d.ts +14 -14
  631. package/dist/unstable/sql/SqlError.d.ts.map +1 -1
  632. package/dist/unstable/sql/SqlError.js +9 -3
  633. package/dist/unstable/sql/SqlError.js.map +1 -1
  634. package/dist/unstable/sql/SqlModel.d.ts +2 -2
  635. package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
  636. package/dist/unstable/sql/SqlModel.js +3 -3
  637. package/dist/unstable/sql/SqlModel.js.map +1 -1
  638. package/dist/unstable/sql/SqlSchema.d.ts +16 -5
  639. package/dist/unstable/sql/SqlSchema.d.ts.map +1 -1
  640. package/dist/unstable/sql/SqlSchema.js +17 -7
  641. package/dist/unstable/sql/SqlSchema.js.map +1 -1
  642. package/dist/unstable/sql/Statement.js +0 -1
  643. package/dist/unstable/sql/Statement.js.map +1 -1
  644. package/dist/unstable/workers/Worker.d.ts.map +1 -1
  645. package/dist/unstable/workers/Worker.js +2 -1
  646. package/dist/unstable/workers/Worker.js.map +1 -1
  647. package/dist/unstable/workflow/DurableClock.d.ts +3 -3
  648. package/dist/unstable/workflow/DurableClock.d.ts.map +1 -1
  649. package/dist/unstable/workflow/DurableClock.js +3 -3
  650. package/dist/unstable/workflow/DurableClock.js.map +1 -1
  651. package/dist/unstable/workflow/DurableDeferred.js +2 -2
  652. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  653. package/dist/unstable/workflow/Workflow.d.ts +3 -3
  654. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  655. package/dist/unstable/workflow/Workflow.js +1 -1
  656. package/dist/unstable/workflow/Workflow.js.map +1 -1
  657. package/dist/unstable/workflow/WorkflowEngine.d.ts +12 -1
  658. package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
  659. package/dist/unstable/workflow/WorkflowEngine.js +137 -1
  660. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  661. package/package.json +2 -2
  662. package/src/Array.ts +190 -342
  663. package/src/Cache.ts +9 -8
  664. package/src/Cause.ts +1 -1
  665. package/src/Channel.ts +554 -138
  666. package/src/Chunk.ts +81 -268
  667. package/src/Combiner.ts +280 -13
  668. package/src/Config.ts +183 -21
  669. package/src/Data.ts +538 -374
  670. package/src/DateTime.ts +24 -164
  671. package/src/Duration.ts +15 -15
  672. package/src/Effect.ts +991 -800
  673. package/src/Encoding.ts +879 -0
  674. package/src/Equal.ts +278 -111
  675. package/src/ErrorReporter.ts +459 -0
  676. package/src/Fiber.ts +9 -2
  677. package/src/FileSystem.ts +7 -8
  678. package/src/Filter.ts +48 -58
  679. package/src/Formatter.ts +253 -51
  680. package/src/Graph.ts +24 -11
  681. package/src/HashMap.ts +15 -14
  682. package/src/Iterable.ts +105 -50
  683. package/src/JsonSchema.ts +383 -10
  684. package/src/Latch.ts +112 -0
  685. package/src/Layer.ts +11 -15
  686. package/src/LayerMap.ts +5 -5
  687. package/src/LogLevel.ts +37 -0
  688. package/src/Logger.ts +33 -100
  689. package/src/ManagedRuntime.ts +1 -1
  690. package/src/Metric.ts +4 -4
  691. package/src/Optic.ts +948 -19
  692. package/src/Option.ts +30 -20
  693. package/src/Pipeable.ts +32 -1
  694. package/src/PlatformError.ts +5 -5
  695. package/src/Pool.ts +13 -11
  696. package/src/PubSub.ts +10 -9
  697. package/src/Pull.ts +1 -1
  698. package/src/Queue.ts +0 -1
  699. package/src/Random.ts +51 -14
  700. package/src/RcMap.ts +5 -5
  701. package/src/RcRef.ts +1 -1
  702. package/src/Record.ts +43 -152
  703. package/src/Reducer.ts +166 -7
  704. package/src/References.ts +4 -4
  705. package/src/Request.ts +3 -2
  706. package/src/RequestResolver.ts +9 -29
  707. package/src/Result.ts +13 -0
  708. package/src/Schedule.ts +318 -160
  709. package/src/Schema.ts +661 -116
  710. package/src/SchemaAST.ts +7 -6
  711. package/src/SchemaGetter.ts +12 -14
  712. package/src/SchemaParser.ts +11 -0
  713. package/src/SchemaRepresentation.ts +43 -24
  714. package/src/SchemaTransformation.ts +189 -4
  715. package/src/ScopedCache.ts +3 -3
  716. package/src/Semaphore.ts +356 -0
  717. package/src/ServiceMap.ts +47 -38
  718. package/src/Sink.ts +78 -26
  719. package/src/Stream.ts +566 -601
  720. package/src/Struct.ts +26 -0
  721. package/src/SubscriptionRef.ts +3 -2
  722. package/src/SynchronizedRef.ts +3 -2
  723. package/src/Trie.ts +18 -17
  724. package/src/TxChunk.ts +72 -53
  725. package/src/TxDeferred.ts +394 -0
  726. package/src/TxHashMap.ts +332 -285
  727. package/src/TxHashSet.ts +111 -116
  728. package/src/TxPriorityQueue.ts +767 -0
  729. package/src/TxPubSub.ts +789 -0
  730. package/src/TxQueue.ts +241 -251
  731. package/src/TxReentrantLock.ts +753 -0
  732. package/src/TxRef.ts +50 -38
  733. package/src/TxSemaphore.ts +29 -32
  734. package/src/TxSubscriptionRef.ts +639 -0
  735. package/src/Types.ts +78 -2
  736. package/src/index.ts +600 -21
  737. package/src/internal/core.ts +12 -5
  738. package/src/internal/dateTime.ts +9 -30
  739. package/src/internal/effect.ts +744 -265
  740. package/src/internal/hashMap.ts +9 -7
  741. package/src/internal/random.ts +20 -0
  742. package/src/internal/rcRef.ts +4 -3
  743. package/src/internal/request.ts +2 -2
  744. package/src/internal/schema/annotations.ts +2 -0
  745. package/src/internal/schema/schema.ts +1 -0
  746. package/src/internal/trie.ts +16 -9
  747. package/src/testing/TestClock.ts +13 -11
  748. package/src/testing/TestSchema.ts +10 -10
  749. package/src/unstable/ai/AiError.ts +97 -44
  750. package/src/unstable/ai/Chat.ts +12 -11
  751. package/src/unstable/ai/LanguageModel.ts +129 -25
  752. package/src/unstable/ai/McpSchema.ts +59 -13
  753. package/src/unstable/ai/McpServer.ts +48 -9
  754. package/src/unstable/ai/Model.ts +40 -9
  755. package/src/unstable/ai/Prompt.ts +37 -37
  756. package/src/unstable/ai/Response.ts +25 -25
  757. package/src/unstable/ai/Tool.ts +19 -13
  758. package/src/unstable/ai/index.ts +1 -1
  759. package/src/unstable/cli/CliOutput.ts +75 -6
  760. package/src/unstable/cli/Command.ts +501 -60
  761. package/src/unstable/cli/GlobalFlag.ts +243 -0
  762. package/src/unstable/cli/HelpDoc.ts +80 -2
  763. package/src/unstable/cli/index.ts +5 -0
  764. package/src/unstable/cli/internal/command.ts +50 -34
  765. package/src/unstable/cli/internal/completions/CommandDescriptor.ts +7 -2
  766. package/src/unstable/cli/internal/help.ts +146 -0
  767. package/src/unstable/cli/internal/parser.ts +33 -54
  768. package/src/unstable/cluster/ClusterCron.ts +2 -2
  769. package/src/unstable/cluster/ClusterWorkflowEngine.ts +5 -4
  770. package/src/unstable/cluster/Entity.ts +11 -10
  771. package/src/unstable/cluster/EntityResource.ts +4 -4
  772. package/src/unstable/cluster/Envelope.ts +1 -1
  773. package/src/unstable/cluster/K8sHttpClient.ts +5 -5
  774. package/src/unstable/cluster/MessageStorage.ts +3 -5
  775. package/src/unstable/cluster/Runners.ts +6 -5
  776. package/src/unstable/cluster/Sharding.ts +12 -10
  777. package/src/unstable/cluster/ShardingConfig.ts +30 -31
  778. package/src/unstable/cluster/SqlRunnerStorage.ts +1 -1
  779. package/src/unstable/cluster/internal/entityManager.ts +9 -8
  780. package/src/unstable/cluster/internal/entityReaper.ts +2 -1
  781. package/src/unstable/cluster/internal/resourceRef.ts +2 -1
  782. package/src/unstable/encoding/Sse.ts +3 -5
  783. package/src/unstable/eventlog/EventLog.ts +2 -1
  784. package/src/unstable/http/Cookies.ts +3 -3
  785. package/src/unstable/http/Headers.ts +28 -13
  786. package/src/unstable/http/HttpBody.ts +42 -1
  787. package/src/unstable/http/HttpClient.ts +58 -23
  788. package/src/unstable/http/HttpClientRequest.ts +38 -13
  789. package/src/unstable/http/HttpEffect.ts +46 -68
  790. package/src/unstable/http/HttpMethod.ts +16 -4
  791. package/src/unstable/http/HttpMiddleware.ts +9 -24
  792. package/src/unstable/http/HttpServerError.ts +42 -45
  793. package/src/unstable/http/HttpServerRequest.ts +1 -1
  794. package/src/unstable/http/HttpServerRespondable.ts +6 -6
  795. package/src/unstable/http/HttpServerResponse.ts +4 -2
  796. package/src/unstable/http/Multipart.ts +2 -2
  797. package/src/unstable/http/UrlParams.ts +20 -5
  798. package/src/unstable/http/internal/preResponseHandler.ts +15 -0
  799. package/src/unstable/httpapi/HttpApi.ts +5 -5
  800. package/src/unstable/httpapi/HttpApiBuilder.ts +77 -21
  801. package/src/unstable/httpapi/HttpApiClient.ts +14 -6
  802. package/src/unstable/httpapi/HttpApiEndpoint.ts +67 -83
  803. package/src/unstable/httpapi/HttpApiError.ts +30 -9
  804. package/src/unstable/httpapi/HttpApiGroup.ts +6 -6
  805. package/src/unstable/httpapi/HttpApiMiddleware.ts +4 -4
  806. package/src/unstable/httpapi/HttpApiScalar.ts +6 -0
  807. package/src/unstable/httpapi/HttpApiSecurity.ts +3 -3
  808. package/src/unstable/httpapi/OpenApi.ts +41 -23
  809. package/src/unstable/observability/Otlp.ts +12 -12
  810. package/src/unstable/observability/OtlpExporter.ts +3 -3
  811. package/src/unstable/observability/OtlpLogger.ts +13 -9
  812. package/src/unstable/observability/OtlpMetrics.ts +4 -4
  813. package/src/unstable/observability/OtlpTracer.ts +4 -4
  814. package/src/unstable/persistence/KeyValueStore.ts +6 -6
  815. package/src/unstable/persistence/Persistable.ts +2 -2
  816. package/src/unstable/persistence/PersistedCache.ts +20 -9
  817. package/src/unstable/persistence/PersistedQueue.ts +25 -24
  818. package/src/unstable/persistence/Persistence.ts +3 -3
  819. package/src/unstable/persistence/RateLimiter.ts +4 -4
  820. package/src/unstable/process/ChildProcess.ts +6 -208
  821. package/src/unstable/process/ChildProcessSpawner.ts +75 -14
  822. package/src/unstable/reactivity/Atom.ts +27 -25
  823. package/src/unstable/reactivity/AtomHttpApi.ts +21 -20
  824. package/src/unstable/reactivity/AtomRegistry.ts +31 -7
  825. package/src/unstable/reactivity/AtomRpc.ts +3 -3
  826. package/src/unstable/reactivity/Hydration.ts +112 -0
  827. package/src/unstable/reactivity/index.ts +5 -0
  828. package/src/unstable/rpc/Rpc.ts +6 -6
  829. package/src/unstable/rpc/RpcClient.ts +12 -54
  830. package/src/unstable/rpc/RpcGroup.ts +4 -4
  831. package/src/unstable/rpc/RpcMiddleware.ts +3 -3
  832. package/src/unstable/rpc/RpcSchema.ts +17 -0
  833. package/src/unstable/rpc/RpcSerialization.ts +44 -9
  834. package/src/unstable/rpc/RpcServer.ts +21 -30
  835. package/src/unstable/rpc/Utils.ts +2 -1
  836. package/src/unstable/schema/VariantSchema.ts +6 -6
  837. package/src/unstable/socket/Socket.ts +16 -17
  838. package/src/unstable/sql/SqlClient.ts +1 -1
  839. package/src/unstable/sql/SqlError.ts +11 -9
  840. package/src/unstable/sql/SqlModel.ts +5 -5
  841. package/src/unstable/sql/SqlSchema.ts +41 -25
  842. package/src/unstable/sql/Statement.ts +0 -1
  843. package/src/unstable/workers/Worker.ts +2 -1
  844. package/src/unstable/workflow/DurableClock.ts +8 -8
  845. package/src/unstable/workflow/DurableDeferred.ts +2 -2
  846. package/src/unstable/workflow/Workflow.ts +6 -2
  847. package/src/unstable/workflow/WorkflowEngine.ts +185 -2
  848. package/dist/PartitionedSemaphore.d.ts +0 -52
  849. package/dist/PartitionedSemaphore.d.ts.map +0 -1
  850. package/dist/PartitionedSemaphore.js.map +0 -1
  851. package/dist/encoding/Base64.d.ts +0 -67
  852. package/dist/encoding/Base64.d.ts.map +0 -1
  853. package/dist/encoding/Base64.js +0 -146
  854. package/dist/encoding/Base64.js.map +0 -1
  855. package/dist/encoding/Base64Url.d.ts +0 -60
  856. package/dist/encoding/Base64Url.d.ts.map +0 -1
  857. package/dist/encoding/Base64Url.js +0 -89
  858. package/dist/encoding/Base64Url.js.map +0 -1
  859. package/dist/encoding/EncodingError.d.ts +0 -31
  860. package/dist/encoding/EncodingError.d.ts.map +0 -1
  861. package/dist/encoding/EncodingError.js +0 -22
  862. package/dist/encoding/EncodingError.js.map +0 -1
  863. package/dist/encoding/Hex.d.ts +0 -61
  864. package/dist/encoding/Hex.d.ts.map +0 -1
  865. package/dist/encoding/Hex.js +0 -115
  866. package/dist/encoding/Hex.js.map +0 -1
  867. package/dist/encoding/index.d.ts +0 -26
  868. package/dist/encoding/index.d.ts.map +0 -1
  869. package/dist/encoding/index.js +0 -27
  870. package/dist/encoding/index.js.map +0 -1
  871. package/dist/unstable/cli/internal/builtInFlags.d.ts +0 -7
  872. package/dist/unstable/cli/internal/builtInFlags.d.ts.map +0 -1
  873. package/dist/unstable/cli/internal/builtInFlags.js +0 -44
  874. package/dist/unstable/cli/internal/builtInFlags.js.map +0 -1
  875. package/src/PartitionedSemaphore.ts +0 -182
  876. package/src/encoding/Base64.ts +0 -366
  877. package/src/encoding/Base64Url.ts +0 -104
  878. package/src/encoding/EncodingError.ts +0 -35
  879. package/src/encoding/Hex.ts +0 -390
  880. package/src/encoding/index.ts +0 -31
  881. package/src/unstable/cli/internal/builtInFlags.ts +0 -78
package/src/Chunk.ts CHANGED
@@ -72,6 +72,7 @@ import * as RA from "./Array.ts"
72
72
  import type { NonEmptyReadonlyArray } from "./Array.ts"
73
73
  import * as Equal from "./Equal.ts"
74
74
  import * as Equivalence from "./Equivalence.ts"
75
+ import type * as Filter from "./Filter.ts"
75
76
  import { format } from "./Formatter.ts"
76
77
  import { dual, identity, pipe } from "./Function.ts"
77
78
  import * as Hash from "./Hash.ts"
@@ -84,6 +85,7 @@ import * as Order from "./Order.ts"
84
85
  import type { Pipeable } from "./Pipeable.ts"
85
86
  import { pipeArguments } from "./Pipeable.ts"
86
87
  import { hasProperty, type Predicate, type Refinement } from "./Predicate.ts"
88
+ import * as R from "./Result.ts"
87
89
  import type { Result } from "./Result.ts"
88
90
  import type { Covariant, NoInfer } from "./Types.ts"
89
91
  import * as UndefinedOr from "./UndefinedOr.ts"
@@ -1515,19 +1517,19 @@ export const appendAll: {
1515
1517
  * @example
1516
1518
  * ```ts
1517
1519
  * import { Chunk } from "effect"
1518
- * import * as Option from "effect/Option"
1520
+ * import * as Result from "effect/Result"
1519
1521
  *
1520
1522
  * const chunk = Chunk.make("1", "2", "hello", "3", "world")
1521
1523
  * const numbers = Chunk.filterMap(chunk, (str) => {
1522
1524
  * const num = parseInt(str)
1523
- * return isNaN(num) ? Option.none() : Option.some(num)
1525
+ * return isNaN(num) ? Result.failVoid : Result.succeed(num)
1524
1526
  * })
1525
1527
  * console.log(Chunk.toArray(numbers)) // [1, 2, 3]
1526
1528
  *
1527
1529
  * // With index parameter
1528
1530
  * const evenIndexNumbers = Chunk.filterMap(chunk, (str, i) => {
1529
1531
  * const num = parseInt(str)
1530
- * return isNaN(num) || i % 2 !== 0 ? Option.none() : Option.some(num)
1532
+ * return isNaN(num) || i % 2 !== 0 ? Result.failVoid : Result.succeed(num)
1531
1533
  * })
1532
1534
  * console.log(Chunk.toArray(evenIndexNumbers)) // [1]
1533
1535
  * ```
@@ -1542,19 +1544,19 @@ export const filterMap: {
1542
1544
  * @example
1543
1545
  * ```ts
1544
1546
  * import { Chunk } from "effect"
1545
- * import * as Option from "effect/Option"
1547
+ * import * as Result from "effect/Result"
1546
1548
  *
1547
1549
  * const chunk = Chunk.make("1", "2", "hello", "3", "world")
1548
1550
  * const numbers = Chunk.filterMap(chunk, (str) => {
1549
1551
  * const num = parseInt(str)
1550
- * return isNaN(num) ? Option.none() : Option.some(num)
1552
+ * return isNaN(num) ? Result.failVoid : Result.succeed(num)
1551
1553
  * })
1552
1554
  * console.log(Chunk.toArray(numbers)) // [1, 2, 3]
1553
1555
  *
1554
1556
  * // With index parameter
1555
1557
  * const evenIndexNumbers = Chunk.filterMap(chunk, (str, i) => {
1556
1558
  * const num = parseInt(str)
1557
- * return isNaN(num) || i % 2 !== 0 ? Option.none() : Option.some(num)
1559
+ * return isNaN(num) || i % 2 !== 0 ? Result.failVoid : Result.succeed(num)
1558
1560
  * })
1559
1561
  * console.log(Chunk.toArray(evenIndexNumbers)) // [1]
1560
1562
  * ```
@@ -1562,26 +1564,26 @@ export const filterMap: {
1562
1564
  * @since 2.0.0
1563
1565
  * @category filtering
1564
1566
  */
1565
- <A, B>(f: (a: A, i: number) => Option<B>): (self: Chunk<A>) => Chunk<B>
1567
+ <A, B, X>(f: Filter.Filter<A, B, X, [i: number]>): (self: Chunk<A>) => Chunk<B>
1566
1568
  /**
1567
1569
  * Returns a filtered and mapped subset of the elements.
1568
1570
  *
1569
1571
  * @example
1570
1572
  * ```ts
1571
1573
  * import { Chunk } from "effect"
1572
- * import * as Option from "effect/Option"
1574
+ * import * as Result from "effect/Result"
1573
1575
  *
1574
1576
  * const chunk = Chunk.make("1", "2", "hello", "3", "world")
1575
1577
  * const numbers = Chunk.filterMap(chunk, (str) => {
1576
1578
  * const num = parseInt(str)
1577
- * return isNaN(num) ? Option.none() : Option.some(num)
1579
+ * return isNaN(num) ? Result.failVoid : Result.succeed(num)
1578
1580
  * })
1579
1581
  * console.log(Chunk.toArray(numbers)) // [1, 2, 3]
1580
1582
  *
1581
1583
  * // With index parameter
1582
1584
  * const evenIndexNumbers = Chunk.filterMap(chunk, (str, i) => {
1583
1585
  * const num = parseInt(str)
1584
- * return isNaN(num) || i % 2 !== 0 ? Option.none() : Option.some(num)
1586
+ * return isNaN(num) || i % 2 !== 0 ? Result.failVoid : Result.succeed(num)
1585
1587
  * })
1586
1588
  * console.log(Chunk.toArray(evenIndexNumbers)) // [1]
1587
1589
  * ```
@@ -1589,16 +1591,16 @@ export const filterMap: {
1589
1591
  * @since 2.0.0
1590
1592
  * @category filtering
1591
1593
  */
1592
- <A, B>(self: Chunk<A>, f: (a: A, i: number) => Option<B>): Chunk<B>
1594
+ <A, B, X>(self: Chunk<A>, f: Filter.Filter<A, B, X, [i: number]>): Chunk<B>
1593
1595
  } = dual(
1594
1596
  2,
1595
- <A, B>(self: Chunk<A>, f: (a: A, i: number) => Option<B>): Chunk<B> => {
1597
+ <A, B, X>(self: Chunk<A>, f: Filter.Filter<A, B, X, [i: number]>): Chunk<B> => {
1596
1598
  const as = RA.fromIterable(self)
1597
1599
  const out: Array<B> = []
1598
1600
  for (let i = 0; i < as.length; i++) {
1599
- const o = f(as[i], i)
1600
- if (O.isSome(o)) {
1601
- out.push(o.value)
1601
+ const result = f(as[i], i)
1602
+ if (R.isSuccess(result)) {
1603
+ out.push(result.success)
1602
1604
  }
1603
1605
  }
1604
1606
  return fromArrayUnsafe(out)
@@ -1716,17 +1718,17 @@ export const filter: {
1716
1718
  )
1717
1719
 
1718
1720
  /**
1719
- * Transforms all elements of the chunk for as long as the specified function returns some value
1721
+ * Transforms all elements of the chunk for as long as the specified function succeeds.
1720
1722
  *
1721
1723
  * @example
1722
1724
  * ```ts
1723
1725
  * import { Chunk } from "effect"
1724
- * import * as Option from "effect/Option"
1726
+ * import * as Result from "effect/Result"
1725
1727
  *
1726
1728
  * const chunk = Chunk.make("1", "2", "hello", "3", "4")
1727
1729
  * const result = Chunk.filterMapWhile(chunk, (s) => {
1728
1730
  * const num = parseInt(s)
1729
- * return isNaN(num) ? Option.none() : Option.some(num)
1731
+ * return isNaN(num) ? Result.failVoid : Result.succeed(num)
1730
1732
  * })
1731
1733
  * console.log(Chunk.toArray(result)) // [1, 2]
1732
1734
  * // Stops at "hello" and doesn't process "3", "4"
@@ -1734,7 +1736,7 @@ export const filter: {
1734
1736
  * // Compare with regular filterMap
1735
1737
  * const allNumbers = Chunk.filterMap(chunk, (s) => {
1736
1738
  * const num = parseInt(s)
1737
- * return isNaN(num) ? Option.none() : Option.some(num)
1739
+ * return isNaN(num) ? Result.failVoid : Result.succeed(num)
1738
1740
  * })
1739
1741
  * console.log(Chunk.toArray(allNumbers)) // [1, 2, 3, 4]
1740
1742
  * ```
@@ -1744,17 +1746,17 @@ export const filter: {
1744
1746
  */
1745
1747
  export const filterMapWhile: {
1746
1748
  /**
1747
- * Transforms all elements of the chunk for as long as the specified function returns some value
1749
+ * Transforms all elements of the chunk for as long as the specified function succeeds.
1748
1750
  *
1749
1751
  * @example
1750
1752
  * ```ts
1751
1753
  * import { Chunk } from "effect"
1752
- * import * as Option from "effect/Option"
1754
+ * import * as Result from "effect/Result"
1753
1755
  *
1754
1756
  * const chunk = Chunk.make("1", "2", "hello", "3", "4")
1755
1757
  * const result = Chunk.filterMapWhile(chunk, (s) => {
1756
1758
  * const num = parseInt(s)
1757
- * return isNaN(num) ? Option.none() : Option.some(num)
1759
+ * return isNaN(num) ? Result.failVoid : Result.succeed(num)
1758
1760
  * })
1759
1761
  * console.log(Chunk.toArray(result)) // [1, 2]
1760
1762
  * // Stops at "hello" and doesn't process "3", "4"
@@ -1762,7 +1764,7 @@ export const filterMapWhile: {
1762
1764
  * // Compare with regular filterMap
1763
1765
  * const allNumbers = Chunk.filterMap(chunk, (s) => {
1764
1766
  * const num = parseInt(s)
1765
- * return isNaN(num) ? Option.none() : Option.some(num)
1767
+ * return isNaN(num) ? Result.failVoid : Result.succeed(num)
1766
1768
  * })
1767
1769
  * console.log(Chunk.toArray(allNumbers)) // [1, 2, 3, 4]
1768
1770
  * ```
@@ -1770,19 +1772,19 @@ export const filterMapWhile: {
1770
1772
  * @since 2.0.0
1771
1773
  * @category filtering
1772
1774
  */
1773
- <A, B>(f: (a: A) => Option<B>): (self: Chunk<A>) => Chunk<B>
1775
+ <A, B, X>(f: Filter.Filter<A, B, X>): (self: Chunk<A>) => Chunk<B>
1774
1776
  /**
1775
- * Transforms all elements of the chunk for as long as the specified function returns some value
1777
+ * Transforms all elements of the chunk for as long as the specified function succeeds.
1776
1778
  *
1777
1779
  * @example
1778
1780
  * ```ts
1779
1781
  * import { Chunk } from "effect"
1780
- * import * as Option from "effect/Option"
1782
+ * import * as Result from "effect/Result"
1781
1783
  *
1782
1784
  * const chunk = Chunk.make("1", "2", "hello", "3", "4")
1783
1785
  * const result = Chunk.filterMapWhile(chunk, (s) => {
1784
1786
  * const num = parseInt(s)
1785
- * return isNaN(num) ? Option.none() : Option.some(num)
1787
+ * return isNaN(num) ? Result.failVoid : Result.succeed(num)
1786
1788
  * })
1787
1789
  * console.log(Chunk.toArray(result)) // [1, 2]
1788
1790
  * // Stops at "hello" and doesn't process "3", "4"
@@ -1790,7 +1792,7 @@ export const filterMapWhile: {
1790
1792
  * // Compare with regular filterMap
1791
1793
  * const allNumbers = Chunk.filterMap(chunk, (s) => {
1792
1794
  * const num = parseInt(s)
1793
- * return isNaN(num) ? Option.none() : Option.some(num)
1795
+ * return isNaN(num) ? Result.failVoid : Result.succeed(num)
1794
1796
  * })
1795
1797
  * console.log(Chunk.toArray(allNumbers)) // [1, 2, 3, 4]
1796
1798
  * ```
@@ -1798,13 +1800,13 @@ export const filterMapWhile: {
1798
1800
  * @since 2.0.0
1799
1801
  * @category filtering
1800
1802
  */
1801
- <A, B>(self: Chunk<A>, f: (a: A) => Option<B>): Chunk<B>
1802
- } = dual(2, <A, B>(self: Chunk<A>, f: (a: A) => Option<B>): Chunk<B> => {
1803
+ <A, B, X>(self: Chunk<A>, f: Filter.Filter<A, B, X>): Chunk<B>
1804
+ } = dual(2, <A, B, X>(self: Chunk<A>, f: Filter.Filter<A, B, X>): Chunk<B> => {
1803
1805
  const out: Array<B> = []
1804
1806
  for (const a of self) {
1805
- const b = f(a)
1806
- if (O.isSome(b)) {
1807
- out.push(b.value)
1807
+ const result = f(a)
1808
+ if (R.isSuccess(result)) {
1809
+ out.push(result.success)
1808
1810
  } else {
1809
1811
  break
1810
1812
  }
@@ -1829,7 +1831,15 @@ export const filterMapWhile: {
1829
1831
  * @category filtering
1830
1832
  * @since 2.0.0
1831
1833
  */
1832
- export const compact = <A>(self: Chunk<Option<A>>): Chunk<A> => filterMap(self, identity)
1834
+ export const compact = <A>(self: Chunk<Option<A>>): Chunk<A> => {
1835
+ const out: Array<A> = []
1836
+ for (const option of self) {
1837
+ if (O.isSome(option)) {
1838
+ out.push(option.value)
1839
+ }
1840
+ }
1841
+ return fromArrayUnsafe(out)
1842
+ }
1833
1843
 
1834
1844
  /**
1835
1845
  * Applies a function to each element in a chunk and returns a new chunk containing the concatenated mapped elements.
@@ -2769,31 +2779,21 @@ export const mapAccum: {
2769
2779
  })
2770
2780
 
2771
2781
  /**
2772
- * Separate elements based on a predicate that also exposes the index of the element.
2782
+ * Splits a chunk using a `Filter` into failures and successes.
2783
+ *
2784
+ * - Returns `[excluded, satisfying]`.
2785
+ * - The filter receives `(element, index)`.
2773
2786
  *
2774
2787
  * @example
2775
2788
  * ```ts
2776
- * import { Chunk } from "effect"
2789
+ * import { Chunk, Result } from "effect"
2777
2790
  *
2778
- * const chunk = Chunk.make(1, 2, 3, 4, 5, 6)
2779
- * const [odds, evens] = Chunk.partition(chunk, (n) => n % 2 === 0)
2780
- * console.log(Chunk.toArray(odds)) // [1, 3, 5]
2781
- * console.log(Chunk.toArray(evens)) // [2, 4, 6]
2782
- *
2783
- * // With index parameter
2784
- * const words = Chunk.make("a", "bb", "ccc", "dddd")
2785
- * const [short, long] = Chunk.partition(words, (word, i) => word.length > i)
2786
- * console.log(Chunk.toArray(short)) // ["a", "bb"]
2787
- * console.log(Chunk.toArray(long)) // ["ccc", "dddd"]
2788
- *
2789
- * // With refinement
2790
- * const mixed = Chunk.make("hello", 42, "world", 100)
2791
- * const [strings, numbers] = Chunk.partition(
2792
- * mixed,
2793
- * (x): x is number => typeof x === "number"
2791
+ * const [excluded, satisfying] = Chunk.partition(Chunk.make(1, -2, 3), (n, i) =>
2792
+ * n > 0 ? Result.succeed(n + i) : Result.fail(`negative:${n}`)
2794
2793
  * )
2795
- * console.log(Chunk.toArray(strings)) // ["hello", "world"]
2796
- * console.log(Chunk.toArray(numbers)) // [42, 100]
2794
+ *
2795
+ * console.log(Chunk.toArray(excluded)) // ["negative:-2"]
2796
+ * console.log(Chunk.toArray(satisfying)) // [1, 5]
2797
2797
  * ```
2798
2798
  *
2799
2799
  * @category filtering
@@ -2801,247 +2801,60 @@ export const mapAccum: {
2801
2801
  */
2802
2802
  export const partition: {
2803
2803
  /**
2804
- * Separate elements based on a predicate that also exposes the index of the element.
2804
+ * Splits a chunk using a `Filter` into failures and successes.
2805
2805
  *
2806
- * @example
2807
- * ```ts
2808
- * import { Chunk } from "effect"
2809
- *
2810
- * const chunk = Chunk.make(1, 2, 3, 4, 5, 6)
2811
- * const [odds, evens] = Chunk.partition(chunk, (n) => n % 2 === 0)
2812
- * console.log(Chunk.toArray(odds)) // [1, 3, 5]
2813
- * console.log(Chunk.toArray(evens)) // [2, 4, 6]
2814
- *
2815
- * // With index parameter
2816
- * const words = Chunk.make("a", "bb", "ccc", "dddd")
2817
- * const [short, long] = Chunk.partition(words, (word, i) => word.length > i)
2818
- * console.log(Chunk.toArray(short)) // ["a", "bb"]
2819
- * console.log(Chunk.toArray(long)) // ["ccc", "dddd"]
2820
- *
2821
- * // With refinement
2822
- * const mixed = Chunk.make("hello", 42, "world", 100)
2823
- * const [strings, numbers] = Chunk.partition(
2824
- * mixed,
2825
- * (x): x is number => typeof x === "number"
2826
- * )
2827
- * console.log(Chunk.toArray(strings)) // ["hello", "world"]
2828
- * console.log(Chunk.toArray(numbers)) // [42, 100]
2829
- * ```
2830
- *
2831
- * @category filtering
2832
- * @since 2.0.0
2833
- */
2834
- <A, B extends A>(refinement: (a: NoInfer<A>, i: number) => a is B): (self: Chunk<A>) => [excluded: Chunk<Exclude<A, B>>, satisfying: Chunk<B>]
2835
- /**
2836
- * Separate elements based on a predicate that also exposes the index of the element.
2806
+ * - Returns `[excluded, satisfying]`.
2807
+ * - The filter receives `(element, index)`.
2837
2808
  *
2838
2809
  * @example
2839
2810
  * ```ts
2840
- * import { Chunk } from "effect"
2811
+ * import { Chunk, Result } from "effect"
2841
2812
  *
2842
- * const chunk = Chunk.make(1, 2, 3, 4, 5, 6)
2843
- * const [odds, evens] = Chunk.partition(chunk, (n) => n % 2 === 0)
2844
- * console.log(Chunk.toArray(odds)) // [1, 3, 5]
2845
- * console.log(Chunk.toArray(evens)) // [2, 4, 6]
2846
- *
2847
- * // With index parameter
2848
- * const words = Chunk.make("a", "bb", "ccc", "dddd")
2849
- * const [short, long] = Chunk.partition(words, (word, i) => word.length > i)
2850
- * console.log(Chunk.toArray(short)) // ["a", "bb"]
2851
- * console.log(Chunk.toArray(long)) // ["ccc", "dddd"]
2852
- *
2853
- * // With refinement
2854
- * const mixed = Chunk.make("hello", 42, "world", 100)
2855
- * const [strings, numbers] = Chunk.partition(
2856
- * mixed,
2857
- * (x): x is number => typeof x === "number"
2813
+ * const [excluded, satisfying] = Chunk.partition(Chunk.make(1, -2, 3), (n, i) =>
2814
+ * n > 0 ? Result.succeed(n + i) : Result.fail(`negative:${n}`)
2858
2815
  * )
2859
- * console.log(Chunk.toArray(strings)) // ["hello", "world"]
2860
- * console.log(Chunk.toArray(numbers)) // [42, 100]
2861
- * ```
2862
- *
2863
- * @category filtering
2864
- * @since 2.0.0
2865
- */
2866
- <A>(predicate: (a: NoInfer<A>, i: number) => boolean): (self: Chunk<A>) => [excluded: Chunk<A>, satisfying: Chunk<A>]
2867
- /**
2868
- * Separate elements based on a predicate that also exposes the index of the element.
2869
- *
2870
- * @example
2871
- * ```ts
2872
- * import { Chunk } from "effect"
2873
2816
  *
2874
- * const chunk = Chunk.make(1, 2, 3, 4, 5, 6)
2875
- * const [odds, evens] = Chunk.partition(chunk, (n) => n % 2 === 0)
2876
- * console.log(Chunk.toArray(odds)) // [1, 3, 5]
2877
- * console.log(Chunk.toArray(evens)) // [2, 4, 6]
2878
- *
2879
- * // With index parameter
2880
- * const words = Chunk.make("a", "bb", "ccc", "dddd")
2881
- * const [short, long] = Chunk.partition(words, (word, i) => word.length > i)
2882
- * console.log(Chunk.toArray(short)) // ["a", "bb"]
2883
- * console.log(Chunk.toArray(long)) // ["ccc", "dddd"]
2884
- *
2885
- * // With refinement
2886
- * const mixed = Chunk.make("hello", 42, "world", 100)
2887
- * const [strings, numbers] = Chunk.partition(
2888
- * mixed,
2889
- * (x): x is number => typeof x === "number"
2890
- * )
2891
- * console.log(Chunk.toArray(strings)) // ["hello", "world"]
2892
- * console.log(Chunk.toArray(numbers)) // [42, 100]
2817
+ * console.log(Chunk.toArray(excluded)) // ["negative:-2"]
2818
+ * console.log(Chunk.toArray(satisfying)) // [1, 5]
2893
2819
  * ```
2894
2820
  *
2895
2821
  * @category filtering
2896
2822
  * @since 2.0.0
2897
2823
  */
2898
- <A, B extends A>(self: Chunk<A>, refinement: (a: A, i: number) => a is B): [excluded: Chunk<Exclude<A, B>>, satisfying: Chunk<B>]
2824
+ <A, Pass, Fail>(f: Filter.Filter<NoInfer<A>, Pass, Fail, [i: number]>): (self: Chunk<A>) => [excluded: Chunk<Fail>, satisfying: Chunk<Pass>]
2899
2825
  /**
2900
- * Separate elements based on a predicate that also exposes the index of the element.
2826
+ * Splits a chunk using a `Filter` into failures and successes.
2827
+ *
2828
+ * - Returns `[excluded, satisfying]`.
2829
+ * - The filter receives `(element, index)`.
2901
2830
  *
2902
2831
  * @example
2903
2832
  * ```ts
2904
- * import { Chunk } from "effect"
2905
- *
2906
- * const chunk = Chunk.make(1, 2, 3, 4, 5, 6)
2907
- * const [odds, evens] = Chunk.partition(chunk, (n) => n % 2 === 0)
2908
- * console.log(Chunk.toArray(odds)) // [1, 3, 5]
2909
- * console.log(Chunk.toArray(evens)) // [2, 4, 6]
2910
- *
2911
- * // With index parameter
2912
- * const words = Chunk.make("a", "bb", "ccc", "dddd")
2913
- * const [short, long] = Chunk.partition(words, (word, i) => word.length > i)
2914
- * console.log(Chunk.toArray(short)) // ["a", "bb"]
2915
- * console.log(Chunk.toArray(long)) // ["ccc", "dddd"]
2833
+ * import { Chunk, Result } from "effect"
2916
2834
  *
2917
- * // With refinement
2918
- * const mixed = Chunk.make("hello", 42, "world", 100)
2919
- * const [strings, numbers] = Chunk.partition(
2920
- * mixed,
2921
- * (x): x is number => typeof x === "number"
2835
+ * const [excluded, satisfying] = Chunk.partition(Chunk.make(1, -2, 3), (n, i) =>
2836
+ * n > 0 ? Result.succeed(n + i) : Result.fail(`negative:${n}`)
2922
2837
  * )
2923
- * console.log(Chunk.toArray(strings)) // ["hello", "world"]
2924
- * console.log(Chunk.toArray(numbers)) // [42, 100]
2838
+ *
2839
+ * console.log(Chunk.toArray(excluded)) // ["negative:-2"]
2840
+ * console.log(Chunk.toArray(satisfying)) // [1, 5]
2925
2841
  * ```
2926
2842
  *
2927
2843
  * @category filtering
2928
2844
  * @since 2.0.0
2929
2845
  */
2930
- <A>(self: Chunk<A>, predicate: (a: A, i: number) => boolean): [excluded: Chunk<A>, satisfying: Chunk<A>]
2846
+ <A, Pass, Fail>(self: Chunk<A>, f: Filter.Filter<A, Pass, Fail, [i: number]>): [excluded: Chunk<Fail>, satisfying: Chunk<Pass>]
2931
2847
  } = dual(
2932
2848
  2,
2933
- <A>(self: Chunk<A>, predicate: (a: A, i: number) => boolean): [excluded: Chunk<A>, satisfying: Chunk<A>] =>
2934
- pipe(
2935
- RA.partition(toReadonlyArray(self), predicate),
2936
- ([l, r]) => [fromArrayUnsafe(l), fromArrayUnsafe(r)]
2937
- )
2849
+ <A, Pass, Fail>(
2850
+ self: Chunk<A>,
2851
+ f: Filter.Filter<A, Pass, Fail, [i: number]>
2852
+ ): [excluded: Chunk<Fail>, satisfying: Chunk<Pass>] => {
2853
+ const [excluded, satisfying] = RA.partition(self, f)
2854
+ return [fromArrayUnsafe(excluded), fromArrayUnsafe(satisfying)]
2855
+ }
2938
2856
  )
2939
2857
 
2940
- /**
2941
- * Partitions the elements of this chunk into two chunks using f.
2942
- *
2943
- * @example
2944
- * ```ts
2945
- * import { Chunk } from "effect"
2946
- * import * as Result from "effect/Result"
2947
- *
2948
- * const chunk = Chunk.make("1", "hello", "2", "world", "3")
2949
- * const [errors, numbers] = Chunk.partitionMap(chunk, (str) => {
2950
- * const num = parseInt(str)
2951
- * return isNaN(num)
2952
- * ? Result.fail(`"${str}" is not a number`)
2953
- * : Result.succeed(num)
2954
- * })
2955
- *
2956
- * console.log(Chunk.toArray(errors)) // ['"hello" is not a number', '"world" is not a number']
2957
- * console.log(Chunk.toArray(numbers)) // [1, 2, 3]
2958
- *
2959
- * // All successes
2960
- * const validNumbers = Chunk.make("1", "2", "3")
2961
- * const [noErrors, allNumbers] = Chunk.partitionMap(
2962
- * validNumbers,
2963
- * (str) => Result.succeed(parseInt(str))
2964
- * )
2965
- * console.log(Chunk.toArray(noErrors)) // []
2966
- * console.log(Chunk.toArray(allNumbers)) // [1, 2, 3]
2967
- * ```
2968
- *
2969
- * @category filtering
2970
- * @since 2.0.0
2971
- */
2972
- export const partitionMap: {
2973
- /**
2974
- * Partitions the elements of this chunk into two chunks using f.
2975
- *
2976
- * @example
2977
- * ```ts
2978
- * import { Chunk } from "effect"
2979
- * import * as Result from "effect/Result"
2980
- *
2981
- * const chunk = Chunk.make("1", "hello", "2", "world", "3")
2982
- * const [errors, numbers] = Chunk.partitionMap(chunk, (str) => {
2983
- * const num = parseInt(str)
2984
- * return isNaN(num)
2985
- * ? Result.fail(`"${str}" is not a number`)
2986
- * : Result.succeed(num)
2987
- * })
2988
- *
2989
- * console.log(Chunk.toArray(errors)) // ['"hello" is not a number', '"world" is not a number']
2990
- * console.log(Chunk.toArray(numbers)) // [1, 2, 3]
2991
- *
2992
- * // All successes
2993
- * const validNumbers = Chunk.make("1", "2", "3")
2994
- * const [noErrors, allNumbers] = Chunk.partitionMap(
2995
- * validNumbers,
2996
- * (str) => Result.succeed(parseInt(str))
2997
- * )
2998
- * console.log(Chunk.toArray(noErrors)) // []
2999
- * console.log(Chunk.toArray(allNumbers)) // [1, 2, 3]
3000
- * ```
3001
- *
3002
- * @category filtering
3003
- * @since 2.0.0
3004
- */
3005
- <A, B, C>(f: (a: A) => Result<C, B>): (self: Chunk<A>) => [left: Chunk<B>, right: Chunk<C>]
3006
- /**
3007
- * Partitions the elements of this chunk into two chunks using f.
3008
- *
3009
- * @example
3010
- * ```ts
3011
- * import { Chunk } from "effect"
3012
- * import * as Result from "effect/Result"
3013
- *
3014
- * const chunk = Chunk.make("1", "hello", "2", "world", "3")
3015
- * const [errors, numbers] = Chunk.partitionMap(chunk, (str) => {
3016
- * const num = parseInt(str)
3017
- * return isNaN(num)
3018
- * ? Result.fail(`"${str}" is not a number`)
3019
- * : Result.succeed(num)
3020
- * })
3021
- *
3022
- * console.log(Chunk.toArray(errors)) // ['"hello" is not a number', '"world" is not a number']
3023
- * console.log(Chunk.toArray(numbers)) // [1, 2, 3]
3024
- *
3025
- * // All successes
3026
- * const validNumbers = Chunk.make("1", "2", "3")
3027
- * const [noErrors, allNumbers] = Chunk.partitionMap(
3028
- * validNumbers,
3029
- * (str) => Result.succeed(parseInt(str))
3030
- * )
3031
- * console.log(Chunk.toArray(noErrors)) // []
3032
- * console.log(Chunk.toArray(allNumbers)) // [1, 2, 3]
3033
- * ```
3034
- *
3035
- * @category filtering
3036
- * @since 2.0.0
3037
- */
3038
- <A, B, C>(self: Chunk<A>, f: (a: A) => Result<C, B>): [left: Chunk<B>, right: Chunk<C>]
3039
- } = dual(2, <A, B, C>(self: Chunk<A>, f: (a: A) => Result<C, B>): [left: Chunk<B>, right: Chunk<C>] =>
3040
- pipe(
3041
- RA.partitionMap(toReadonlyArray(self), f),
3042
- ([l, r]) => [fromArrayUnsafe(l), fromArrayUnsafe(r)]
3043
- ))
3044
-
3045
2858
  /**
3046
2859
  * Partitions the elements of this chunk into two chunks.
3047
2860
  *