effect 4.0.0-beta.93 → 4.0.0-beta.97

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 (488) hide show
  1. package/dist/Array.d.ts.map +1 -1
  2. package/dist/BigDecimal.d.ts.map +1 -1
  3. package/dist/BigDecimal.js.map +1 -1
  4. package/dist/BigInt.d.ts.map +1 -1
  5. package/dist/Boolean.d.ts.map +1 -1
  6. package/dist/Brand.d.ts.map +1 -1
  7. package/dist/Cache.d.ts.map +1 -1
  8. package/dist/Cause.d.ts.map +1 -1
  9. package/dist/Channel.d.ts.map +1 -1
  10. package/dist/ChannelSchema.d.ts.map +1 -1
  11. package/dist/Chunk.d.ts.map +1 -1
  12. package/dist/Combiner.d.ts.map +1 -1
  13. package/dist/Config.d.ts +1 -1
  14. package/dist/Config.d.ts.map +1 -1
  15. package/dist/Config.js.map +1 -1
  16. package/dist/ConfigProvider.d.ts +44 -6
  17. package/dist/ConfigProvider.d.ts.map +1 -1
  18. package/dist/ConfigProvider.js +63 -24
  19. package/dist/ConfigProvider.js.map +1 -1
  20. package/dist/Console.d.ts.map +1 -1
  21. package/dist/Context.d.ts.map +1 -1
  22. package/dist/Cron.d.ts +4 -1
  23. package/dist/Cron.d.ts.map +1 -1
  24. package/dist/Cron.js +98 -53
  25. package/dist/Cron.js.map +1 -1
  26. package/dist/Crypto.d.ts.map +1 -1
  27. package/dist/Data.d.ts.map +1 -1
  28. package/dist/DateTime.d.ts +12 -12
  29. package/dist/DateTime.d.ts.map +1 -1
  30. package/dist/Deferred.d.ts.map +1 -1
  31. package/dist/Duration.d.ts.map +1 -1
  32. package/dist/Effect.d.ts +130 -0
  33. package/dist/Effect.d.ts.map +1 -1
  34. package/dist/Effect.js +43 -0
  35. package/dist/Effect.js.map +1 -1
  36. package/dist/Effectable.d.ts.map +1 -1
  37. package/dist/Encoding.d.ts.map +1 -1
  38. package/dist/Equal.d.ts.map +1 -1
  39. package/dist/Equivalence.d.ts.map +1 -1
  40. package/dist/ErrorReporter.d.ts.map +1 -1
  41. package/dist/ExecutionPlan.d.ts +2 -2
  42. package/dist/ExecutionPlan.d.ts.map +1 -1
  43. package/dist/Fiber.d.ts.map +1 -1
  44. package/dist/FiberHandle.d.ts +8 -8
  45. package/dist/FiberHandle.d.ts.map +1 -1
  46. package/dist/FiberMap.d.ts +8 -8
  47. package/dist/FiberMap.d.ts.map +1 -1
  48. package/dist/FiberSet.d.ts +4 -4
  49. package/dist/FiberSet.d.ts.map +1 -1
  50. package/dist/FileSystem.d.ts +7 -0
  51. package/dist/FileSystem.d.ts.map +1 -1
  52. package/dist/FileSystem.js +3 -0
  53. package/dist/FileSystem.js.map +1 -1
  54. package/dist/Filter.d.ts.map +1 -1
  55. package/dist/Function.d.ts.map +1 -1
  56. package/dist/Graph.d.ts.map +1 -1
  57. package/dist/Graph.js.map +1 -1
  58. package/dist/Hash.d.ts.map +1 -1
  59. package/dist/HashMap.d.ts.map +1 -1
  60. package/dist/HashRing.d.ts.map +1 -1
  61. package/dist/Inspectable.d.ts.map +1 -1
  62. package/dist/Inspectable.js.map +1 -1
  63. package/dist/Iterable.d.ts.map +1 -1
  64. package/dist/Latch.d.ts.map +1 -1
  65. package/dist/Layer.d.ts +1 -1
  66. package/dist/Layer.d.ts.map +1 -1
  67. package/dist/Layer.js +6 -3
  68. package/dist/Layer.js.map +1 -1
  69. package/dist/LayerMap.d.ts.map +1 -1
  70. package/dist/LayerMap.js +1 -1
  71. package/dist/LayerMap.js.map +1 -1
  72. package/dist/LayerRef.d.ts +252 -0
  73. package/dist/LayerRef.d.ts.map +1 -0
  74. package/dist/LayerRef.js +171 -0
  75. package/dist/LayerRef.js.map +1 -0
  76. package/dist/LogLevel.d.ts.map +1 -1
  77. package/dist/Logger.d.ts.map +1 -1
  78. package/dist/ManagedRuntime.d.ts.map +1 -1
  79. package/dist/Metric.d.ts.map +1 -1
  80. package/dist/MutableHashMap.d.ts.map +1 -1
  81. package/dist/MutableHashSet.d.ts.map +1 -1
  82. package/dist/MutableList.d.ts.map +1 -1
  83. package/dist/MutableRef.d.ts.map +1 -1
  84. package/dist/NonEmptyIterable.d.ts.map +1 -1
  85. package/dist/Number.d.ts.map +1 -1
  86. package/dist/Optic.d.ts.map +1 -1
  87. package/dist/Option.d.ts.map +1 -1
  88. package/dist/Order.d.ts.map +1 -1
  89. package/dist/Ordering.d.ts.map +1 -1
  90. package/dist/PartitionedSemaphore.d.ts.map +1 -1
  91. package/dist/Pipeable.d.ts.map +1 -1
  92. package/dist/PlatformError.d.ts.map +1 -1
  93. package/dist/Pool.d.ts.map +1 -1
  94. package/dist/PrimaryKey.d.ts.map +1 -1
  95. package/dist/PubSub.d.ts.map +1 -1
  96. package/dist/Pull.d.ts.map +1 -1
  97. package/dist/Queue.d.ts.map +1 -1
  98. package/dist/Random.d.ts.map +1 -1
  99. package/dist/RcMap.d.ts.map +1 -1
  100. package/dist/Record.d.ts.map +1 -1
  101. package/dist/Redactable.d.ts.map +1 -1
  102. package/dist/Redacted.d.ts.map +1 -1
  103. package/dist/Ref.d.ts.map +1 -1
  104. package/dist/RegExp.d.ts.map +1 -1
  105. package/dist/Request.d.ts +1 -1
  106. package/dist/Request.d.ts.map +1 -1
  107. package/dist/RequestResolver.d.ts.map +1 -1
  108. package/dist/Resource.d.ts.map +1 -1
  109. package/dist/Result.d.ts.map +1 -1
  110. package/dist/Runtime.d.ts.map +1 -1
  111. package/dist/Schedule.d.ts +1206 -4013
  112. package/dist/Schedule.d.ts.map +1 -1
  113. package/dist/Schedule.js +244 -1348
  114. package/dist/Schedule.js.map +1 -1
  115. package/dist/Scheduler.d.ts.map +1 -1
  116. package/dist/Scheduler.js.map +1 -1
  117. package/dist/Schema.d.ts +123 -30
  118. package/dist/Schema.d.ts.map +1 -1
  119. package/dist/Schema.js +40 -0
  120. package/dist/Schema.js.map +1 -1
  121. package/dist/SchemaAST.d.ts.map +1 -1
  122. package/dist/SchemaAST.js.map +1 -1
  123. package/dist/SchemaGetter.d.ts.map +1 -1
  124. package/dist/SchemaIssue.d.ts.map +1 -1
  125. package/dist/SchemaIssue.js.map +1 -1
  126. package/dist/SchemaParser.d.ts +1 -1
  127. package/dist/SchemaParser.d.ts.map +1 -1
  128. package/dist/SchemaParser.js.map +1 -1
  129. package/dist/SchemaRepresentation.d.ts +106 -106
  130. package/dist/SchemaTransformation.d.ts +38 -2
  131. package/dist/SchemaTransformation.d.ts.map +1 -1
  132. package/dist/SchemaTransformation.js +38 -2
  133. package/dist/SchemaTransformation.js.map +1 -1
  134. package/dist/ScopedCache.d.ts.map +1 -1
  135. package/dist/ScopedRef.d.ts.map +1 -1
  136. package/dist/Semaphore.d.ts.map +1 -1
  137. package/dist/Sink.d.ts.map +1 -1
  138. package/dist/Stdio.d.ts.map +1 -1
  139. package/dist/Stream.d.ts +2 -2
  140. package/dist/Stream.d.ts.map +1 -1
  141. package/dist/Stream.js +1 -1
  142. package/dist/String.d.ts.map +1 -1
  143. package/dist/String.js.map +1 -1
  144. package/dist/Struct.d.ts.map +1 -1
  145. package/dist/SubscriptionRef.d.ts.map +1 -1
  146. package/dist/SynchronizedRef.d.ts.map +1 -1
  147. package/dist/Take.d.ts.map +1 -1
  148. package/dist/Terminal.d.ts.map +1 -1
  149. package/dist/Tracer.d.ts.map +1 -1
  150. package/dist/Trie.d.ts.map +1 -1
  151. package/dist/Tuple.d.ts.map +1 -1
  152. package/dist/TxChunk.d.ts.map +1 -1
  153. package/dist/TxDeferred.d.ts.map +1 -1
  154. package/dist/TxHashMap.d.ts.map +1 -1
  155. package/dist/TxHashSet.d.ts.map +1 -1
  156. package/dist/TxPriorityQueue.d.ts.map +1 -1
  157. package/dist/TxPubSub.d.ts.map +1 -1
  158. package/dist/TxQueue.d.ts.map +1 -1
  159. package/dist/TxReentrantLock.d.ts.map +1 -1
  160. package/dist/TxRef.d.ts.map +1 -1
  161. package/dist/TxSemaphore.d.ts.map +1 -1
  162. package/dist/TxSubscriptionRef.d.ts.map +1 -1
  163. package/dist/Types.d.ts +1 -1
  164. package/dist/Types.d.ts.map +1 -1
  165. package/dist/UndefinedOr.d.ts.map +1 -1
  166. package/dist/Utils.d.ts.map +1 -1
  167. package/dist/internal/effect.js +2 -0
  168. package/dist/internal/effect.js.map +1 -1
  169. package/dist/internal/schema/schema.d.ts.map +1 -1
  170. package/dist/testing/TestClock.d.ts.map +1 -1
  171. package/dist/testing/TestConsole.d.ts.map +1 -1
  172. package/dist/testing/TestSchema.d.ts +2 -2
  173. package/dist/testing/TestSchema.d.ts.map +1 -1
  174. package/dist/testing/TestSchema.js.map +1 -1
  175. package/dist/unstable/ai/AiError.d.ts +1 -1
  176. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  177. package/dist/unstable/ai/Chat.d.ts +2 -2
  178. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  179. package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
  180. package/dist/unstable/ai/LanguageModel.d.ts +2 -2
  181. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  182. package/dist/unstable/ai/McpSchema.d.ts +221 -221
  183. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  184. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  185. package/dist/unstable/ai/Model.d.ts.map +1 -1
  186. package/dist/unstable/ai/Prompt.d.ts.map +1 -1
  187. package/dist/unstable/ai/Response.d.ts.map +1 -1
  188. package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
  189. package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
  190. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  191. package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
  192. package/dist/unstable/cli/Argument.d.ts +2 -2
  193. package/dist/unstable/cli/Argument.d.ts.map +1 -1
  194. package/dist/unstable/cli/Argument.js.map +1 -1
  195. package/dist/unstable/cli/CliError.d.ts.map +1 -1
  196. package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
  197. package/dist/unstable/cli/Command.d.ts.map +1 -1
  198. package/dist/unstable/cli/Completions.d.ts.map +1 -1
  199. package/dist/unstable/cli/Flag.d.ts +2 -2
  200. package/dist/unstable/cli/Flag.d.ts.map +1 -1
  201. package/dist/unstable/cli/Flag.js.map +1 -1
  202. package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -1
  203. package/dist/unstable/cli/Param.d.ts +2 -2
  204. package/dist/unstable/cli/Param.d.ts.map +1 -1
  205. package/dist/unstable/cli/Param.js.map +1 -1
  206. package/dist/unstable/cli/Primitive.d.ts.map +1 -1
  207. package/dist/unstable/cli/Primitive.js.map +1 -1
  208. package/dist/unstable/cli/Prompt.d.ts.map +1 -1
  209. package/dist/unstable/cli/Prompt.js.map +1 -1
  210. package/dist/unstable/cli/internal/ansi.d.ts.map +1 -1
  211. package/dist/unstable/cli/internal/ansi.js.map +1 -1
  212. package/dist/unstable/cli/internal/command.d.ts.map +1 -1
  213. package/dist/unstable/cli/internal/help.d.ts.map +1 -1
  214. package/dist/unstable/cli/internal/parser.js.map +1 -1
  215. package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
  216. package/dist/unstable/cluster/ClusterCron.js +1 -1
  217. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  218. package/dist/unstable/cluster/ClusterError.d.ts.map +1 -1
  219. package/dist/unstable/cluster/ClusterSchema.d.ts +1 -1
  220. package/dist/unstable/cluster/ClusterSchema.d.ts.map +1 -1
  221. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts +1 -1
  222. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  223. package/dist/unstable/cluster/ClusterWorkflowEngine.js +2 -1
  224. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  225. package/dist/unstable/cluster/DeliverAt.d.ts.map +1 -1
  226. package/dist/unstable/cluster/Entity.d.ts.map +1 -1
  227. package/dist/unstable/cluster/Entity.js +5 -3
  228. package/dist/unstable/cluster/Entity.js.map +1 -1
  229. package/dist/unstable/cluster/EntityAddress.d.ts.map +1 -1
  230. package/dist/unstable/cluster/EntityId.d.ts.map +1 -1
  231. package/dist/unstable/cluster/EntityProxy.d.ts.map +1 -1
  232. package/dist/unstable/cluster/EntityProxyServer.d.ts.map +1 -1
  233. package/dist/unstable/cluster/EntityType.d.ts.map +1 -1
  234. package/dist/unstable/cluster/Envelope.d.ts.map +1 -1
  235. package/dist/unstable/cluster/HttpRunner.d.ts.map +1 -1
  236. package/dist/unstable/cluster/MachineId.d.ts.map +1 -1
  237. package/dist/unstable/cluster/Message.d.ts.map +1 -1
  238. package/dist/unstable/cluster/MessageStorage.d.ts +25 -29
  239. package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
  240. package/dist/unstable/cluster/Reply.d.ts.map +1 -1
  241. package/dist/unstable/cluster/Runner.d.ts.map +1 -1
  242. package/dist/unstable/cluster/RunnerAddress.d.ts.map +1 -1
  243. package/dist/unstable/cluster/RunnerHealth.d.ts.map +1 -1
  244. package/dist/unstable/cluster/RunnerServer.d.ts +1 -1
  245. package/dist/unstable/cluster/RunnerStorage.d.ts.map +1 -1
  246. package/dist/unstable/cluster/Runners.d.ts +8 -8
  247. package/dist/unstable/cluster/ShardId.d.ts.map +1 -1
  248. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  249. package/dist/unstable/cluster/Sharding.js +6 -5
  250. package/dist/unstable/cluster/Sharding.js.map +1 -1
  251. package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
  252. package/dist/unstable/cluster/ShardingRegistrationEvent.d.ts +6 -8
  253. package/dist/unstable/cluster/ShardingRegistrationEvent.d.ts.map +1 -1
  254. package/dist/unstable/cluster/SingleRunner.d.ts.map +1 -1
  255. package/dist/unstable/cluster/Singleton.d.ts.map +1 -1
  256. package/dist/unstable/cluster/SingletonAddress.d.ts.map +1 -1
  257. package/dist/unstable/cluster/Snowflake.d.ts +1 -1
  258. package/dist/unstable/cluster/Snowflake.d.ts.map +1 -1
  259. package/dist/unstable/cluster/Snowflake.js +1 -1
  260. package/dist/unstable/cluster/Snowflake.js.map +1 -1
  261. package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
  262. package/dist/unstable/cluster/SqlRunnerStorage.d.ts +1 -1
  263. package/dist/unstable/cluster/SqlRunnerStorage.d.ts.map +1 -1
  264. package/dist/unstable/cluster/internal/entityManager.js +14 -14
  265. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  266. package/dist/unstable/cluster/internal/resourceMap.js +39 -14
  267. package/dist/unstable/cluster/internal/resourceMap.js.map +1 -1
  268. package/dist/unstable/devtools/DevTools.d.ts.map +1 -1
  269. package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
  270. package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
  271. package/dist/unstable/encoding/Sse.d.ts +2 -2
  272. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  273. package/dist/unstable/eventlog/Event.d.ts.map +1 -1
  274. package/dist/unstable/eventlog/EventGroup.d.ts.map +1 -1
  275. package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
  276. package/dist/unstable/eventlog/EventJournal.js.map +1 -1
  277. package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
  278. package/dist/unstable/eventlog/EventLog.js +2 -2
  279. package/dist/unstable/eventlog/EventLog.js.map +1 -1
  280. package/dist/unstable/eventlog/EventLogEncryption.d.ts.map +1 -1
  281. package/dist/unstable/eventlog/EventLogMessage.d.ts.map +1 -1
  282. package/dist/unstable/eventlog/EventLogRemote.d.ts +21 -21
  283. package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
  284. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +1 -1
  285. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +3 -4
  286. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
  287. package/dist/unstable/eventlog/EventLogSessionAuth.d.ts.map +1 -1
  288. package/dist/unstable/eventlog/SqlEventJournal.d.ts.map +1 -1
  289. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.d.ts.map +1 -1
  290. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -1
  291. package/dist/unstable/http/Cookies.d.ts +1 -1
  292. package/dist/unstable/http/Cookies.d.ts.map +1 -1
  293. package/dist/unstable/http/Etag.d.ts.map +1 -1
  294. package/dist/unstable/http/Headers.d.ts.map +1 -1
  295. package/dist/unstable/http/HttpBody.d.ts.map +1 -1
  296. package/dist/unstable/http/HttpClient.d.ts.map +1 -1
  297. package/dist/unstable/http/HttpClientError.d.ts +1 -1
  298. package/dist/unstable/http/HttpClientError.d.ts.map +1 -1
  299. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  300. package/dist/unstable/http/HttpClientResponse.d.ts +1 -1
  301. package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
  302. package/dist/unstable/http/HttpClientResponse.js.map +1 -1
  303. package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
  304. package/dist/unstable/http/HttpIncomingMessage.d.ts +2 -2
  305. package/dist/unstable/http/HttpIncomingMessage.d.ts.map +1 -1
  306. package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
  307. package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
  308. package/dist/unstable/http/HttpMiddleware.d.ts +1 -1
  309. package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
  310. package/dist/unstable/http/HttpRouter.d.ts +4 -4
  311. package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
  312. package/dist/unstable/http/HttpRouter.js.map +1 -1
  313. package/dist/unstable/http/HttpServer.d.ts.map +1 -1
  314. package/dist/unstable/http/HttpServerError.d.ts +1 -1
  315. package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
  316. package/dist/unstable/http/HttpServerRequest.d.ts +8 -8
  317. package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
  318. package/dist/unstable/http/HttpServerRequest.js.map +1 -1
  319. package/dist/unstable/http/HttpServerRespondable.d.ts.map +1 -1
  320. package/dist/unstable/http/HttpServerResponse.d.ts +1 -1
  321. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  322. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  323. package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -1
  324. package/dist/unstable/http/HttpTraceContext.d.ts.map +1 -1
  325. package/dist/unstable/http/Multipart.d.ts +4 -3
  326. package/dist/unstable/http/Multipart.d.ts.map +1 -1
  327. package/dist/unstable/http/Multipart.js.map +1 -1
  328. package/dist/unstable/http/Url.d.ts.map +1 -1
  329. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  330. package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
  331. package/dist/unstable/httpapi/HttpApi.js +2 -4
  332. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  333. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  334. package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
  335. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  336. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +26 -26
  337. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
  338. package/dist/unstable/httpapi/HttpApiError.d.ts +1 -1
  339. package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
  340. package/dist/unstable/httpapi/HttpApiGroup.d.ts.map +1 -1
  341. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
  342. package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
  343. package/dist/unstable/httpapi/HttpApiSchema.d.ts +1 -1
  344. package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
  345. package/dist/unstable/httpapi/HttpApiSecurity.d.ts.map +1 -1
  346. package/dist/unstable/httpapi/HttpApiSwagger.d.ts.map +1 -1
  347. package/dist/unstable/httpapi/HttpApiTest.d.ts +1 -1
  348. package/dist/unstable/observability/Otlp.d.ts.map +1 -1
  349. package/dist/unstable/observability/OtlpExporter.js +3 -1
  350. package/dist/unstable/observability/OtlpExporter.js.map +1 -1
  351. package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
  352. package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
  353. package/dist/unstable/observability/OtlpResource.d.ts.map +1 -1
  354. package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
  355. package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
  356. package/dist/unstable/observability/internal/otlpEnv.d.ts.map +1 -1
  357. package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
  358. package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
  359. package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
  360. package/dist/unstable/persistence/PersistedQueue.d.ts +1 -1
  361. package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
  362. package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
  363. package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
  364. package/dist/unstable/persistence/Redis.d.ts.map +1 -1
  365. package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
  366. package/dist/unstable/process/ChildProcess.js.map +1 -1
  367. package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
  368. package/dist/unstable/reactivity/AsyncResult.d.ts +2 -2
  369. package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
  370. package/dist/unstable/reactivity/Atom.d.ts +4 -4
  371. package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
  372. package/dist/unstable/reactivity/Atom.js.map +1 -1
  373. package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
  374. package/dist/unstable/reactivity/AtomRef.d.ts.map +1 -1
  375. package/dist/unstable/reactivity/AtomRegistry.d.ts +2 -2
  376. package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
  377. package/dist/unstable/reactivity/AtomRegistry.js +28 -37
  378. package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
  379. package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
  380. package/dist/unstable/reactivity/Hydration.d.ts.map +1 -1
  381. package/dist/unstable/reactivity/Reactivity.d.ts.map +1 -1
  382. package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
  383. package/dist/unstable/rpc/RpcClient.d.ts +2 -1
  384. package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
  385. package/dist/unstable/rpc/RpcClient.js +5 -5
  386. package/dist/unstable/rpc/RpcClient.js.map +1 -1
  387. package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
  388. package/dist/unstable/rpc/RpcMessage.d.ts +7 -7
  389. package/dist/unstable/rpc/RpcMessage.d.ts.map +1 -1
  390. package/dist/unstable/rpc/RpcMessage.js +2 -2
  391. package/dist/unstable/rpc/RpcMessage.js.map +1 -1
  392. package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
  393. package/dist/unstable/rpc/RpcSchema.d.ts +1 -1
  394. package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
  395. package/dist/unstable/rpc/RpcSerialization.js +8 -8
  396. package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
  397. package/dist/unstable/rpc/RpcServer.d.ts +2 -2
  398. package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
  399. package/dist/unstable/rpc/RpcServer.js +5 -5
  400. package/dist/unstable/rpc/RpcServer.js.map +1 -1
  401. package/dist/unstable/rpc/RpcWorker.d.ts.map +1 -1
  402. package/dist/unstable/rpc/Utils.d.ts.map +1 -1
  403. package/dist/unstable/schema/Model.d.ts +24 -38
  404. package/dist/unstable/schema/Model.d.ts.map +1 -1
  405. package/dist/unstable/schema/VariantSchema.d.ts +1 -1
  406. package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
  407. package/dist/unstable/socket/Socket.d.ts +1 -1
  408. package/dist/unstable/socket/Socket.d.ts.map +1 -1
  409. package/dist/unstable/socket/SocketServer.d.ts.map +1 -1
  410. package/dist/unstable/sql/Migrator.d.ts.map +1 -1
  411. package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
  412. package/dist/unstable/sql/SqlError.d.ts +2 -2
  413. package/dist/unstable/sql/SqlError.d.ts.map +1 -1
  414. package/dist/unstable/sql/SqlError.js.map +1 -1
  415. package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
  416. package/dist/unstable/sql/SqlResolver.d.ts.map +1 -1
  417. package/dist/unstable/sql/SqlSchema.d.ts.map +1 -1
  418. package/dist/unstable/sql/SqlStream.d.ts.map +1 -1
  419. package/dist/unstable/sql/Statement.d.ts.map +1 -1
  420. package/dist/unstable/workers/Transferable.d.ts.map +1 -1
  421. package/dist/unstable/workers/Worker.d.ts.map +1 -1
  422. package/dist/unstable/workers/WorkerError.d.ts.map +1 -1
  423. package/dist/unstable/workflow/Activity.d.ts +1 -1
  424. package/dist/unstable/workflow/Activity.d.ts.map +1 -1
  425. package/dist/unstable/workflow/Activity.js +1 -1
  426. package/dist/unstable/workflow/Activity.js.map +1 -1
  427. package/dist/unstable/workflow/DurableClock.d.ts.map +1 -1
  428. package/dist/unstable/workflow/DurableDeferred.d.ts.map +1 -1
  429. package/dist/unstable/workflow/DurableQueue.d.ts.map +1 -1
  430. package/dist/unstable/workflow/DurableQueue.js +1 -1
  431. package/dist/unstable/workflow/DurableQueue.js.map +1 -1
  432. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  433. package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
  434. package/dist/unstable/workflow/WorkflowEngine.js +1 -1
  435. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  436. package/dist/unstable/workflow/WorkflowProxy.d.ts.map +1 -1
  437. package/dist/unstable/workflow/WorkflowProxyServer.d.ts.map +1 -1
  438. package/package.json +11 -12
  439. package/src/Config.ts +1 -1
  440. package/src/ConfigProvider.ts +79 -27
  441. package/src/Cron.ts +109 -57
  442. package/src/Effect.ts +131 -0
  443. package/src/FileSystem.ts +13 -0
  444. package/src/Layer.ts +6 -6
  445. package/src/LayerMap.ts +1 -1
  446. package/src/LayerRef.ts +379 -0
  447. package/src/Schedule.ts +1437 -4445
  448. package/src/Schema.ts +133 -33
  449. package/src/SchemaParser.ts +2 -2
  450. package/src/SchemaTransformation.ts +42 -2
  451. package/src/Stream.ts +1 -1
  452. package/src/internal/effect.ts +19 -0
  453. package/src/testing/TestSchema.ts +2 -2
  454. package/src/unstable/ai/Chat.ts +1 -1
  455. package/src/unstable/ai/LanguageModel.ts +3 -3
  456. package/src/unstable/cli/Argument.ts +14 -7
  457. package/src/unstable/cli/Flag.ts +6 -3
  458. package/src/unstable/cli/Param.ts +6 -3
  459. package/src/unstable/cli/Primitive.ts +2 -2
  460. package/src/unstable/cluster/ClusterCron.ts +4 -3
  461. package/src/unstable/cluster/ClusterWorkflowEngine.ts +5 -3
  462. package/src/unstable/cluster/Entity.ts +13 -14
  463. package/src/unstable/cluster/Sharding.ts +137 -134
  464. package/src/unstable/cluster/Snowflake.ts +2 -2
  465. package/src/unstable/cluster/internal/entityManager.ts +27 -25
  466. package/src/unstable/cluster/internal/resourceMap.ts +59 -25
  467. package/src/unstable/encoding/Sse.ts +3 -3
  468. package/src/unstable/eventlog/EventLog.ts +4 -3
  469. package/src/unstable/http/HttpClientResponse.ts +2 -3
  470. package/src/unstable/http/HttpIncomingMessage.ts +4 -5
  471. package/src/unstable/http/HttpRouter.ts +8 -10
  472. package/src/unstable/http/HttpServerRequest.ts +20 -19
  473. package/src/unstable/http/HttpServerResponse.ts +2 -2
  474. package/src/unstable/http/Multipart.ts +3 -3
  475. package/src/unstable/httpapi/HttpApi.ts +2 -4
  476. package/src/unstable/httpapi/HttpApiClient.ts +2 -2
  477. package/src/unstable/httpapi/HttpApiEndpoint.ts +7 -7
  478. package/src/unstable/httpapi/HttpApiSchema.ts +1 -1
  479. package/src/unstable/observability/OtlpExporter.ts +1 -1
  480. package/src/unstable/reactivity/Atom.ts +10 -7
  481. package/src/unstable/reactivity/AtomRegistry.ts +35 -44
  482. package/src/unstable/rpc/RpcClient.ts +10 -9
  483. package/src/unstable/rpc/RpcMessage.ts +8 -9
  484. package/src/unstable/rpc/RpcSerialization.ts +16 -16
  485. package/src/unstable/rpc/RpcServer.ts +5 -5
  486. package/src/unstable/workflow/Activity.ts +6 -5
  487. package/src/unstable/workflow/DurableQueue.ts +4 -3
  488. package/src/unstable/workflow/WorkflowEngine.ts +4 -3
@@ -93,10 +93,9 @@ export const schemaJson = <
93
93
  readonly headers?: Readonly<Record<string, string | undefined>> | undefined
94
94
  readonly body?: unknown
95
95
  },
96
- RD,
97
- RE
96
+ RD
98
97
  >(
99
- schema: Schema.Codec<A, I, RD, RE>,
98
+ schema: Schema.ConstraintCodec<A, I, RD, unknown>,
100
99
  options?: ParseOptions | undefined
101
100
  ) => {
102
101
  const decode = Schema.decodeEffect(Schema.toCodecJson(schema).annotate({ options }))
@@ -78,10 +78,9 @@ export const schemaBodyJson = <S extends Schema.Constraint>(schema: S, options?:
78
78
  export const schemaBodyUrlParams = <
79
79
  A,
80
80
  I extends Readonly<Record<string, string | ReadonlyArray<string> | undefined>>,
81
- RD,
82
- RE
81
+ RD
83
82
  >(
84
- schema: Schema.Codec<A, I, RD, RE>,
83
+ schema: Schema.ConstraintCodec<A, I, RD, unknown>,
85
84
  options?: ParseOptions | undefined
86
85
  ) => {
87
86
  const decode = UrlParams.schemaRecord.pipe(
@@ -98,8 +97,8 @@ export const schemaBodyUrlParams = <
98
97
  * @category schemas
99
98
  * @since 4.0.0
100
99
  */
101
- export const schemaHeaders = <A, I extends Readonly<Record<string, string | undefined>>, RD, RE>(
102
- schema: Schema.Codec<A, I, RD, RE>,
100
+ export const schemaHeaders = <A, I extends Readonly<Record<string, string | undefined>>, RD>(
101
+ schema: Schema.ConstraintCodec<A, I, RD, unknown>,
103
102
  options?: ParseOptions | undefined
104
103
  ) => {
105
104
  const decode = Schema.decodeUnknownEffect(schema)
@@ -313,10 +313,9 @@ export const schemaJson = <
313
313
  readonly searchParams: Readonly<Record<string, string | ReadonlyArray<string> | undefined>>
314
314
  readonly body: any
315
315
  }>,
316
- RD,
317
- RE
316
+ RD
318
317
  >(
319
- schema: Schema.Codec<A, I, RD, RE>,
318
+ schema: Schema.ConstraintCodec<A, I, RD, unknown>,
320
319
  options?: ParseOptions | undefined
321
320
  ): Effect.Effect<
322
321
  A,
@@ -368,10 +367,9 @@ export const schemaNoBody = <
368
367
  readonly pathParams: Readonly<Record<string, string | undefined>>
369
368
  readonly searchParams: Readonly<Record<string, string | ReadonlyArray<string> | undefined>>
370
369
  }>,
371
- RD,
372
- RE
370
+ RD
373
371
  >(
374
- schema: Schema.Codec<A, I, RD, RE>,
372
+ schema: Schema.ConstraintCodec<A, I, RD, unknown>,
375
373
  options?: ParseOptions | undefined
376
374
  ): Effect.Effect<
377
375
  A,
@@ -410,8 +408,8 @@ export const schemaNoBody = <
410
408
  * @category schemas
411
409
  * @since 4.0.0
412
410
  */
413
- export const schemaParams = <A, I extends Readonly<Record<string, string | ReadonlyArray<string> | undefined>>, RD, RE>(
414
- schema: Schema.Codec<A, I, RD, RE>,
411
+ export const schemaParams = <A, I extends Readonly<Record<string, string | ReadonlyArray<string> | undefined>>, RD>(
412
+ schema: Schema.ConstraintCodec<A, I, RD, unknown>,
415
413
  options?: ParseOptions | undefined
416
414
  ): Effect.Effect<A, Schema.SchemaError, HttpServerRequest.ParsedSearchParams | RouteContext | RD> => {
417
415
  const parse = Schema.decodeUnknownEffect(schema)
@@ -429,8 +427,8 @@ export const schemaParams = <A, I extends Readonly<Record<string, string | Reado
429
427
  * @category schemas
430
428
  * @since 4.0.0
431
429
  */
432
- export const schemaPathParams = <A, I extends Readonly<Record<string, string | undefined>>, RD, RE>(
433
- schema: Schema.Codec<A, I, RD, RE>,
430
+ export const schemaPathParams = <A, I extends Readonly<Record<string, string | undefined>>, RD>(
431
+ schema: Schema.ConstraintCodec<A, I, RD, unknown>,
434
432
  options?: ParseOptions | undefined
435
433
  ): Effect.Effect<A, Schema.SchemaError, RouteContext | RD> => {
436
434
  const parse = Schema.decodeUnknownEffect(schema)
@@ -191,8 +191,8 @@ export const upgradeChannel = <IE = never>(): Channel.Channel<
191
191
  * @category schemas
192
192
  * @since 4.0.0
193
193
  */
194
- export const schemaCookies = <A, I extends Readonly<Record<string, string | undefined>>, RD, RE>(
195
- schema: Schema.Codec<A, I, RD, RE>,
194
+ export const schemaCookies = <A, I extends Readonly<Record<string, string | undefined>>, RD>(
195
+ schema: Schema.ConstraintCodec<A, I, RD, unknown>,
196
196
  options?: ParseOptions | undefined
197
197
  ): Effect.Effect<A, Schema.SchemaError, RD | HttpServerRequest> => {
198
198
  const parse = Schema.decodeUnknownEffect(schema)
@@ -205,8 +205,8 @@ export const schemaCookies = <A, I extends Readonly<Record<string, string | unde
205
205
  * @category schemas
206
206
  * @since 4.0.0
207
207
  */
208
- export const schemaHeaders = <A, I extends Readonly<Record<string, string | undefined>>, RD, RE>(
209
- schema: Schema.Codec<A, I, RD, RE>,
208
+ export const schemaHeaders = <A, I extends Readonly<Record<string, string | undefined>>, RD>(
209
+ schema: Schema.ConstraintCodec<A, I, RD, unknown>,
210
210
  options?: ParseOptions | undefined
211
211
  ): Effect.Effect<A, Schema.SchemaError, HttpServerRequest | RD> => {
212
212
  const parse = Schema.decodeUnknownEffect(schema)
@@ -222,10 +222,9 @@ export const schemaHeaders = <A, I extends Readonly<Record<string, string | unde
222
222
  export const schemaSearchParams = <
223
223
  A,
224
224
  I extends Readonly<Record<string, string | ReadonlyArray<string> | undefined>>,
225
- RD,
226
- RE
225
+ RD
227
226
  >(
228
- schema: Schema.Codec<A, I, RD, RE>,
227
+ schema: Schema.ConstraintCodec<A, I, RD, unknown>,
229
228
  options?: ParseOptions | undefined
230
229
  ): Effect.Effect<A, Schema.SchemaError, ParsedSearchParams | RD> => {
231
230
  const parse = Schema.decodeUnknownEffect(schema)
@@ -242,8 +241,8 @@ export const schemaSearchParams = <
242
241
  * @category schemas
243
242
  * @since 4.0.0
244
243
  */
245
- export const schemaBodyJson = <A, I, RD, RE>(
246
- schema: Schema.Codec<A, I, RD, RE>,
244
+ export const schemaBodyJson = <A, RD>(
245
+ schema: Schema.ConstraintDecoder<A, RD>,
247
246
  options?: ParseOptions | undefined
248
247
  ): Effect.Effect<A, HttpServerError | Schema.SchemaError, HttpServerRequest | RD> => {
249
248
  const parse = HttpIncomingMessage.schemaBodyJson(schema, options)
@@ -265,12 +264,15 @@ const isMultipart = (request: HttpServerRequest) =>
265
264
  * @category schemas
266
265
  * @since 4.0.0
267
266
  */
268
- export const schemaBodyForm = <A, I extends Partial<Multipart.Persisted>, RD, RE>(
269
- schema: Schema.Codec<A, I, RD, RE>,
267
+ export const schemaBodyForm = <A, I extends Partial<Multipart.Persisted>, RD>(
268
+ schema: Schema.ConstraintCodec<A, I, RD, unknown>,
270
269
  options?: ParseOptions | undefined
271
270
  ) => {
272
271
  const parseMultipart = Multipart.schemaPersisted(schema)
273
- const parseUrlParams = HttpIncomingMessage.schemaBodyUrlParams(schema as Schema.Codec<A, any, RD, RE>, options)
272
+ const parseUrlParams = HttpIncomingMessage.schemaBodyUrlParams(
273
+ schema as Schema.ConstraintCodec<A, any, RD, unknown>,
274
+ options
275
+ )
274
276
  return Effect.flatMap(HttpServerRequest, (request): Effect.Effect<
275
277
  A,
276
278
  Multipart.MultipartError | Schema.SchemaError | HttpServerError,
@@ -293,10 +295,9 @@ export const schemaBodyForm = <A, I extends Partial<Multipart.Persisted>, RD, RE
293
295
  export const schemaBodyUrlParams = <
294
296
  A,
295
297
  I extends Readonly<Record<string, string | ReadonlyArray<string> | undefined>>,
296
- RD,
297
- RE
298
+ RD
298
299
  >(
299
- schema: Schema.Codec<A, I, RD, RE>,
300
+ schema: Schema.ConstraintCodec<A, I, RD, unknown>,
300
301
  options?: ParseOptions | undefined
301
302
  ): Effect.Effect<A, HttpServerError | Schema.SchemaError, HttpServerRequest | RD> => {
302
303
  const parse = HttpIncomingMessage.schemaBodyUrlParams(schema, options)
@@ -315,8 +316,8 @@ export const schemaBodyUrlParams = <
315
316
  * @category schemas
316
317
  * @since 4.0.0
317
318
  */
318
- export const schemaBodyMultipart = <A, I extends Partial<Multipart.Persisted>, RD, RE>(
319
- schema: Schema.Codec<A, I, RD, RE>,
319
+ export const schemaBodyMultipart = <A, I extends Partial<Multipart.Persisted>, RD>(
320
+ schema: Schema.ConstraintCodec<A, I, RD, unknown>,
320
321
  options?: ParseOptions | undefined
321
322
  ): Effect.Effect<
322
323
  A,
@@ -342,8 +343,8 @@ export const schemaBodyMultipart = <A, I extends Partial<Multipart.Persisted>, R
342
343
  * @category schemas
343
344
  * @since 4.0.0
344
345
  */
345
- export const schemaBodyFormJson = <A, I, RD, RE>(
346
- schema: Schema.Codec<A, I, RD, RE>,
346
+ export const schemaBodyFormJson = <A, RD>(
347
+ schema: Schema.ConstraintDecoder<A, RD>,
347
348
  options?: ParseOptions | undefined
348
349
  ) => {
349
350
  const parseMultipart = Multipart.schemaJson(schema, options)
@@ -334,8 +334,8 @@ export const json = (
334
334
  * @category constructors
335
335
  * @since 4.0.0
336
336
  */
337
- export const schemaJson = <A, I, RD, RE>(
338
- schema: Schema.Codec<A, I, RD, RE>,
337
+ export const schemaJson = <A, RE>(
338
+ schema: Schema.ConstraintCodec<A, unknown, unknown, RE>,
339
339
  options?: ParseOptions | undefined
340
340
  ) => {
341
341
  const encode = Body.jsonSchema(schema, options)
@@ -333,8 +333,8 @@ export const SingleFileSchema: Schema.decodeTo<PersistedFileSchema, Schema.$Arra
333
333
  * @category schemas
334
334
  * @since 4.0.0
335
335
  */
336
- export const schemaPersisted = <A, I extends Partial<Persisted>, RD, RE>(
337
- schema: Schema.Codec<A, I, RD, RE>
336
+ export const schemaPersisted = <A, I extends Partial<Persisted>, RD>(
337
+ schema: Schema.ConstraintCodec<A, I, RD, unknown>
338
338
  ): (input: unknown, options?: ParseOptions) => Effect.Effect<A, Schema.SchemaError, RD> =>
339
339
  Schema.decodeUnknownEffect(schema)
340
340
 
@@ -349,7 +349,7 @@ export const schemaPersisted = <A, I extends Partial<Persisted>, RD, RE>(
349
349
  * @category schemas
350
350
  * @since 4.0.0
351
351
  */
352
- export const schemaJson = <A, I, RD, RE>(schema: Schema.Codec<A, I, RD, RE>, options?: ParseOptions | undefined): {
352
+ export const schemaJson = <A, RD>(schema: Schema.ConstraintDecoder<A, RD>, options?: ParseOptions | undefined): {
353
353
  (
354
354
  field: string
355
355
  ): (persisted: Persisted) => Effect.Effect<A, Schema.SchemaError, RD>
@@ -186,9 +186,7 @@ const makeProto = <Id extends string, Groups extends HttpApiGroup.Any>(
186
186
  ): HttpApi<Id, Groups> => {
187
187
  function HttpApi() {}
188
188
  Object.setPrototypeOf(HttpApi, Proto)
189
- HttpApi.groups = options.groups
190
- HttpApi.annotations = options.annotations
191
- return HttpApi as any
189
+ return Object.assign(HttpApi, options) as any
192
190
  }
193
191
 
194
192
  /**
@@ -206,7 +204,7 @@ const makeProto = <Id extends string, Groups extends HttpApiGroup.Any>(
206
204
  export const make = <const Id extends string>(identifier: Id): HttpApi<Id, never> =>
207
205
  makeProto({
208
206
  identifier,
209
- groups: new Map() as any,
207
+ groups: {},
210
208
  annotations: Context.empty()
211
209
  })
212
210
 
@@ -636,10 +636,10 @@ export const urlBuilder = <Api extends HttpApi.Any>(api: Api, options?: {
636
636
  const makeUrl = compilePath(endpoint.path)
637
637
  const encodeParams = endpoint.params === undefined
638
638
  ? undefined
639
- : Schema.encodeSync(endpoint.params as Schema.Codec<unknown, unknown>)
639
+ : Schema.encodeSync(endpoint.params as unknown as Schema.ConstraintEncoder<unknown>)
640
640
  const encodeQuery = endpoint.query === undefined
641
641
  ? undefined
642
- : Schema.encodeSync(endpoint.query as Schema.Codec<unknown, unknown>)
642
+ : Schema.encodeSync(endpoint.query as unknown as Schema.ConstraintEncoder<unknown>)
643
643
 
644
644
  const endpointBuilder = (request?: {
645
645
  readonly params?: unknown
@@ -1037,8 +1037,8 @@ function makeProto<
1037
1037
  * @since 4.0.0
1038
1038
  */
1039
1039
  export type ParamsConstraint =
1040
- | Record<string, Schema.Codec<unknown, string | undefined, unknown, unknown>>
1041
- | Schema.Codec<unknown, Record<string, string | undefined>, unknown, unknown>
1040
+ | Record<string, Schema.Encoder<string | undefined, unknown>>
1041
+ | Schema.Encoder<Record<string, string | undefined>, unknown>
1042
1042
 
1043
1043
  /**
1044
1044
  * Constraint for header schemas: each header must encode to `string | undefined`,
@@ -1048,8 +1048,8 @@ export type ParamsConstraint =
1048
1048
  * @since 4.0.0
1049
1049
  */
1050
1050
  export type HeadersConstraint =
1051
- | Record<string, Schema.Codec<unknown, string | undefined, unknown, unknown>>
1052
- | Schema.Codec<unknown, Record<string, string | undefined>, unknown, unknown>
1051
+ | Record<string, Schema.Encoder<string | undefined, unknown>>
1052
+ | Schema.Encoder<Record<string, string | undefined>, unknown>
1053
1053
 
1054
1054
  /**
1055
1055
  * Constraint for query schemas: each field must encode to `string`, an array of
@@ -1059,8 +1059,8 @@ export type HeadersConstraint =
1059
1059
  * @since 4.0.0
1060
1060
  */
1061
1061
  export type QueryConstraint =
1062
- | Record<string, Schema.Codec<unknown, string | ReadonlyArray<string> | undefined, unknown, unknown>>
1063
- | Schema.Codec<unknown, string | ReadonlyArray<string> | undefined, unknown, unknown>
1062
+ | Record<string, Schema.Encoder<string | ReadonlyArray<string> | undefined, unknown>>
1063
+ | Schema.Encoder<string | ReadonlyArray<string> | undefined, unknown>
1064
1064
 
1065
1065
  /**
1066
1066
  * Payload schema depends on the HTTP method:
@@ -1075,7 +1075,7 @@ export type QueryConstraint =
1075
1075
  */
1076
1076
  export type PayloadConstraint<Method extends HttpMethod> = Method extends HttpMethod.NoBody ? Record<
1077
1077
  string,
1078
- Schema.Codec<unknown, string | ReadonlyArray<string> | undefined, unknown, unknown>
1078
+ Schema.Encoder<string | ReadonlyArray<string> | undefined, unknown>
1079
1079
  > :
1080
1080
  Schema.Top | ReadonlyArray<Schema.Top>
1081
1081
 
@@ -325,7 +325,7 @@ export interface StreamSse<
325
325
  * @since 4.0.0
326
326
  */
327
327
  export interface SseEventFromData<Data extends Schema.Constraint> extends
328
- Schema.Codec<
328
+ Schema.ConstraintCodec<
329
329
  {
330
330
  readonly id: string | undefined
331
331
  readonly event: string
@@ -25,7 +25,7 @@ import type { HttpBody } from "../http/HttpBody.ts"
25
25
 
26
26
  const policy = Schedule.forever.pipe(
27
27
  Schedule.passthrough,
28
- Schedule.addDelay((error) => {
28
+ Schedule.addDelay(({ output: error }) => {
29
29
  if (
30
30
  HttpClientError.isHttpClientError(error)
31
31
  && error.reason._tag === "StatusCodeError"
@@ -2604,7 +2604,7 @@ export const refreshOnWindowFocus: <A extends Atom<any>>(self: A) => WithoutSeri
2604
2604
  * @category KeyValueStore
2605
2605
  * @since 4.0.0
2606
2606
  */
2607
- export const kvs = <S extends Schema.Codec<any, any>, const Mode extends "sync" | "async" = never>(options: {
2607
+ export const kvs = <S extends Schema.ConstraintCodec<any, any>, const Mode extends "sync" | "async" = never>(options: {
2608
2608
  readonly runtime: AtomRuntime<KeyValueStore.KeyValueStore, any>
2609
2609
  readonly key: string
2610
2610
  readonly schema: S
@@ -2669,9 +2669,12 @@ export const kvs = <S extends Schema.Codec<any, any>, const Mode extends "sync"
2669
2669
  * @category search params
2670
2670
  * @since 4.0.0
2671
2671
  */
2672
- export const searchParam = <S extends Schema.Codec<any, string> = never>(name: string, options?: {
2673
- readonly schema?: S | undefined
2674
- }): Writable<[S] extends [never] ? string : Option.Option<S["Type"]>> => {
2672
+ export const searchParam = <S extends Schema.ConstraintCodec<any, string> = never>(
2673
+ name: string,
2674
+ options?: {
2675
+ readonly schema?: S | undefined
2676
+ }
2677
+ ): Writable<[S] extends [never] ? string : Option.Option<S["Type"]>> => {
2675
2678
  const decode = options?.schema && Schema.decodeExit(options.schema)
2676
2679
  const encode = options?.schema && Schema.encodeExit(options.schema)
2677
2680
  return writable(
@@ -2986,7 +2989,7 @@ export const serializable: {
2986
2989
  * @category combinators
2987
2990
  * @since 4.0.0
2988
2991
  */
2989
- <R extends Atom<any>, S extends Schema.Codec<Type<R>, any>>(
2992
+ <R extends Atom<any>, S extends Schema.ConstraintCodec<Type<R>, any>>(
2990
2993
  options: {
2991
2994
  readonly key: string
2992
2995
  readonly schema: S
@@ -3003,7 +3006,7 @@ export const serializable: {
3003
3006
  * @category combinators
3004
3007
  * @since 4.0.0
3005
3008
  */
3006
- <R extends Atom<any>, S extends Schema.Codec<Type<R>, any>>(
3009
+ <R extends Atom<any>, S extends Schema.ConstraintCodec<Type<R>, any>>(
3007
3010
  self: R,
3008
3011
  options: {
3009
3012
  readonly key: string
@@ -3012,7 +3015,7 @@ export const serializable: {
3012
3015
  ): R & Serializable<S>
3013
3016
  } = dual(2, <R extends Atom<any>, A, I>(self: R, options: {
3014
3017
  readonly key: string
3015
- readonly schema: Schema.Codec<A, I>
3018
+ readonly schema: Schema.ConstraintCodec<A, I>
3016
3019
  }): R & Serializable<any> => {
3017
3020
  const codecJson = Schema.toCodecJson(options.schema)
3018
3021
  return Object.assign(Object.create(Object.getPrototypeOf(self)), {
@@ -96,8 +96,8 @@ export interface AtomRegistry {
96
96
  export interface Node<A> {
97
97
  readonly atom: Atom.Atom<A>
98
98
  readonly value: () => A
99
- parents: Array<Node<any>>
100
- children: Array<Node<any>>
99
+ parents: Set<Node<any>>
100
+ children: Set<Node<any>>
101
101
  listeners: Set<() => void>
102
102
  currentState(): "uninitialized" | "stale" | "valid" | "removed"
103
103
  }
@@ -713,10 +713,10 @@ class NodeImpl<A> {
713
713
  writeContext: WriteContextImpl<A>
714
714
  preserveInitialValueOnBuild = false
715
715
 
716
- parents: Array<NodeImpl<any>> = []
717
- previousParents: Array<NodeImpl<any>> | undefined
718
- children: Array<NodeImpl<any>> = []
719
- listeners: Set<() => void> = new Set()
716
+ parents = new Set<NodeImpl<any>>()
717
+ previousParents: Set<NodeImpl<any>> | undefined
718
+ children = new Set<NodeImpl<any>>()
719
+ listeners = new Set<() => void>()
720
720
  skipInvalidation = false
721
721
 
722
722
  currentState() {
@@ -733,7 +733,7 @@ class NodeImpl<A> {
733
733
  }
734
734
 
735
735
  get canBeRemoved(): boolean {
736
- return !this.atom.keepAlive && this.listeners.size === 0 && this.children.length === 0 && this.state !== 0
736
+ return !this.atom.keepAlive && this.listeners.size === 0 && this.children.size === 0 && this.state !== 0
737
737
  }
738
738
 
739
739
  _value: A = undefined as any
@@ -753,10 +753,10 @@ class NodeImpl<A> {
753
753
  if (this.previousParents) {
754
754
  const parents = this.previousParents
755
755
  this.previousParents = undefined
756
- for (let i = 0; i < parents.length; i++) {
757
- parents[i].removeChild(this)
758
- if (parents[i].canBeRemoved) {
759
- this.registry.scheduleNodeRemoval(parents[i])
756
+ for (const parent of parents) {
757
+ parent.removeChild(this)
758
+ if (parent.canBeRemoved) {
759
+ this.registry.scheduleNodeRemoval(parent)
760
760
  }
761
761
  }
762
762
  }
@@ -826,19 +826,16 @@ class NodeImpl<A> {
826
826
  }
827
827
 
828
828
  addParent(parent: NodeImpl<any>): void {
829
- this.parents.push(parent)
829
+ this.parents.add(parent)
830
830
  if (this.previousParents !== undefined) {
831
- const index = this.previousParents.indexOf(parent)
832
- if (index !== -1) {
833
- this.previousParents[index] = this.previousParents[this.previousParents.length - 1]
834
- if (this.previousParents.pop() === undefined) {
835
- this.previousParents = undefined
836
- }
831
+ this.previousParents.delete(parent)
832
+ if (this.previousParents.size === 0) {
833
+ this.previousParents = undefined
837
834
  }
838
835
  }
839
836
 
840
- if (parent.children.indexOf(this) === -1) {
841
- parent.children.push(this)
837
+ if (!parent.children.has(this)) {
838
+ parent.children.add(this)
842
839
  if (parent.skipInvalidation) {
843
840
  parent.skipInvalidation = false
844
841
  }
@@ -846,11 +843,7 @@ class NodeImpl<A> {
846
843
  }
847
844
 
848
845
  removeChild(child: NodeImpl<any>): void {
849
- const index = this.children.indexOf(child)
850
- if (index !== -1) {
851
- this.children[index] = this.children[this.children.length - 1]
852
- this.children.pop()
853
- }
846
+ this.children.delete(child)
854
847
  }
855
848
 
856
849
  invalidate(): void {
@@ -870,14 +863,14 @@ class NodeImpl<A> {
870
863
  }
871
864
 
872
865
  invalidateChildren(): void {
873
- if (this.children.length === 0) {
866
+ if (this.children.size === 0) {
874
867
  return
875
868
  }
876
869
 
877
870
  const children = this.children
878
- this.children = []
879
- for (let i = 0; i < children.length; i++) {
880
- children[i].invalidate()
871
+ this.children = new Set()
872
+ for (const child of children) {
873
+ child.invalidate()
881
874
  }
882
875
  }
883
876
 
@@ -895,9 +888,9 @@ class NodeImpl<A> {
895
888
  this.lifetime = undefined
896
889
  }
897
890
 
898
- if (this.parents.length !== 0) {
891
+ if (this.parents.size !== 0) {
899
892
  this.previousParents = this.parents
900
- this.parents = []
893
+ this.parents = new Set()
901
894
  }
902
895
  }
903
896
 
@@ -917,10 +910,10 @@ class NodeImpl<A> {
917
910
 
918
911
  const parents = this.previousParents
919
912
  this.previousParents = undefined
920
- for (let i = 0; i < parents.length; i++) {
921
- parents[i].removeChild(this)
922
- if (parents[i].canBeRemoved) {
923
- this.registry.removeNode(parents[i])
913
+ for (const parent of parents) {
914
+ parent.removeChild(this)
915
+ if (parent.canBeRemoved) {
916
+ this.registry.removeNode(parent)
924
917
  }
925
918
  }
926
919
  }
@@ -931,19 +924,18 @@ class NodeImpl<A> {
931
924
  }
932
925
  }
933
926
 
934
- function childrenAreActive(children: Array<NodeImpl<any>>): boolean {
935
- if (children.length === 0) {
927
+ function childrenAreActive(children: Set<NodeImpl<any>>): boolean {
928
+ if (children.size === 0) {
936
929
  return false
937
930
  }
938
- let current: Array<NodeImpl<any>> | undefined = children
939
- let stack: Array<Array<NodeImpl<any>>> | undefined
931
+ let current: Set<NodeImpl<any>> | undefined = children
932
+ let stack: Array<Set<NodeImpl<any>>> | undefined
940
933
  let stackIndex = 0
941
934
  while (current !== undefined) {
942
- for (let i = 0, len = current.length; i < len; i++) {
943
- const child = current[i]
935
+ for (const child of current) {
944
936
  if (!child.atom.lazy || child.listeners.size > 0) {
945
937
  return true
946
- } else if (child.children.length > 0) {
938
+ } else if (child.children.size > 0) {
947
939
  if (stack === undefined) {
948
940
  stack = [child.children]
949
941
  } else {
@@ -1233,8 +1225,7 @@ function batchRebuildNode(node: NodeImpl<any>) {
1233
1225
  return
1234
1226
  }
1235
1227
 
1236
- for (let i = 0; i < node.parents.length; i++) {
1237
- const parent = node.parents[i]
1228
+ for (const parent of node.parents) {
1238
1229
  if (parent.state !== NodeState.valid) {
1239
1230
  batchRebuildNode(parent)
1240
1231
  }
@@ -204,7 +204,7 @@ export declare namespace RpcClient {
204
204
  */
205
205
  export type FromGroup<Group, E = never> = RpcClient<RpcGroup.Rpcs<Group>, E>
206
206
 
207
- let requestIdCounter = BigInt(0)
207
+ let requestIdCounter = 0
208
208
 
209
209
  /**
210
210
  * Creates an RPC client for an already-decoded message channel, returning the
@@ -681,7 +681,7 @@ export const make: <Rpcs extends Rpc.Any, const Flatten extends boolean = false>
681
681
  Effect.flatMap((payload) =>
682
682
  send(clientId, {
683
683
  ...message,
684
- id: String(message.id),
684
+ id: message.id,
685
685
  payload,
686
686
  headers: Object.entries(message.headers)
687
687
  }, collector && collector.readUnsafe())
@@ -693,7 +693,7 @@ export const make: <Rpcs extends Rpc.Any, const Flatten extends boolean = false>
693
693
  if (!entry) return Effect.void
694
694
  return send(clientId, {
695
695
  _tag: "Ack",
696
- requestId: String(message.requestId)
696
+ requestId: message.requestId
697
697
  }) as Effect.Effect<void, RpcClientError>
698
698
  }
699
699
  case "Interrupt": {
@@ -702,7 +702,7 @@ export const make: <Rpcs extends Rpc.Any, const Flatten extends boolean = false>
702
702
  entries.delete(message.requestId)
703
703
  return send(clientId, {
704
704
  _tag: "Interrupt",
705
- requestId: String(message.requestId)
705
+ requestId: message.requestId
706
706
  }) as Effect.Effect<void, RpcClientError>
707
707
  }
708
708
  case "Eof": {
@@ -1030,7 +1030,7 @@ export const makeProtocolSocket = (options?: {
1030
1030
  const socket = yield* Socket.Socket
1031
1031
  const serialization = yield* RpcSerialization.RpcSerialization
1032
1032
  const hooks = yield* Effect.serviceOption(ConnectionHooks)
1033
- const requestClientMap = new Map<string, number>()
1033
+ const requestClientMap = new Map<string | number, number>()
1034
1034
 
1035
1035
  const write = yield* socket.writer
1036
1036
 
@@ -1150,9 +1150,10 @@ export const makeProtocolSocket = (options?: {
1150
1150
  }
1151
1151
  }))
1152
1152
 
1153
- const defaultRetryPolicy = Schedule.exponential(500, 1.5).pipe(
1154
- Schedule.either(Schedule.spaced(5000))
1155
- )
1153
+ const defaultRetryPolicy = Schedule.min([
1154
+ Schedule.exponential(500, 1.5),
1155
+ Schedule.spaced(5000)
1156
+ ])
1156
1157
 
1157
1158
  const makePinger = Effect.fnUntraced(function*<A, E, R>(writePing: Effect.Effect<A, E, R>) {
1158
1159
  let recievedPong = true
@@ -1224,7 +1225,7 @@ export const makeProtocolWorker = (
1224
1225
  const initialMessage = yield* Effect.serviceOption(RpcWorker.InitialMessage)
1225
1226
  const hooks = yield* Effect.serviceOption(ConnectionHooks)
1226
1227
 
1227
- const entries = new Map<string, {
1228
+ const entries = new Map<string | number, {
1228
1229
  readonly clientId: number
1229
1230
  readonly worker: Worker.Worker<FromServerEncoded, FromClientEncoded | RpcWorker.InitialMessage.Encoded>
1230
1231
  readonly latch: Latch.Latch