effect 4.0.0-beta.5 → 4.0.0-beta.7

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 (482) hide show
  1. package/dist/Cache.d.ts +2 -2
  2. package/dist/Cache.d.ts.map +1 -1
  3. package/dist/Cache.js +1 -1
  4. package/dist/Cache.js.map +1 -1
  5. package/dist/Cause.d.ts +1 -1
  6. package/dist/Cause.d.ts.map +1 -1
  7. package/dist/Channel.d.ts.map +1 -1
  8. package/dist/Channel.js +6 -4
  9. package/dist/Channel.js.map +1 -1
  10. package/dist/Config.d.ts +3 -3
  11. package/dist/Config.js +3 -3
  12. package/dist/Config.js.map +1 -1
  13. package/dist/Data.d.ts +3 -2
  14. package/dist/Data.d.ts.map +1 -1
  15. package/dist/Data.js +9 -8
  16. package/dist/Data.js.map +1 -1
  17. package/dist/DateTime.d.ts +23 -161
  18. package/dist/DateTime.d.ts.map +1 -1
  19. package/dist/DateTime.js +6 -51
  20. package/dist/DateTime.js.map +1 -1
  21. package/dist/Duration.d.ts +12 -12
  22. package/dist/Duration.d.ts.map +1 -1
  23. package/dist/Duration.js +12 -12
  24. package/dist/Duration.js.map +1 -1
  25. package/dist/Effect.d.ts +13 -239
  26. package/dist/Effect.d.ts.map +1 -1
  27. package/dist/Effect.js +1 -119
  28. package/dist/Effect.js.map +1 -1
  29. package/dist/Encoding.d.ts +194 -0
  30. package/dist/Encoding.d.ts.map +1 -0
  31. package/dist/Encoding.js +352 -0
  32. package/dist/Encoding.js.map +1 -0
  33. package/dist/Equal.js.map +1 -1
  34. package/dist/FileSystem.js +2 -2
  35. package/dist/FileSystem.js.map +1 -1
  36. package/dist/Formatter.d.ts +131 -47
  37. package/dist/Formatter.d.ts.map +1 -1
  38. package/dist/Formatter.js +229 -51
  39. package/dist/Formatter.js.map +1 -1
  40. package/dist/Graph.d.ts.map +1 -1
  41. package/dist/Graph.js +2 -2
  42. package/dist/Graph.js.map +1 -1
  43. package/dist/JsonSchema.d.ts +299 -10
  44. package/dist/JsonSchema.d.ts.map +1 -1
  45. package/dist/JsonSchema.js +323 -4
  46. package/dist/JsonSchema.js.map +1 -1
  47. package/dist/Latch.d.ts +109 -0
  48. package/dist/Latch.d.ts.map +1 -0
  49. package/dist/Latch.js +72 -0
  50. package/dist/Latch.js.map +1 -0
  51. package/dist/LayerMap.d.ts +4 -4
  52. package/dist/LayerMap.d.ts.map +1 -1
  53. package/dist/LogLevel.d.ts +27 -0
  54. package/dist/LogLevel.d.ts.map +1 -1
  55. package/dist/LogLevel.js +28 -100
  56. package/dist/LogLevel.js.map +1 -1
  57. package/dist/Logger.d.ts +4 -4
  58. package/dist/Logger.d.ts.map +1 -1
  59. package/dist/Metric.d.ts +2 -2
  60. package/dist/Metric.d.ts.map +1 -1
  61. package/dist/Metric.js +1 -1
  62. package/dist/Metric.js.map +1 -1
  63. package/dist/Pipeable.d.ts +17 -0
  64. package/dist/Pipeable.d.ts.map +1 -1
  65. package/dist/Pipeable.js +19 -1
  66. package/dist/Pipeable.js.map +1 -1
  67. package/dist/Pool.d.ts +6 -4
  68. package/dist/Pool.d.ts.map +1 -1
  69. package/dist/Pool.js +7 -5
  70. package/dist/Pool.js.map +1 -1
  71. package/dist/PubSub.d.ts +3 -2
  72. package/dist/PubSub.d.ts.map +1 -1
  73. package/dist/PubSub.js +3 -2
  74. package/dist/PubSub.js.map +1 -1
  75. package/dist/Random.d.ts +1 -1
  76. package/dist/Random.d.ts.map +1 -1
  77. package/dist/Random.js +3 -12
  78. package/dist/Random.js.map +1 -1
  79. package/dist/RcMap.d.ts +2 -2
  80. package/dist/RcMap.d.ts.map +1 -1
  81. package/dist/RcMap.js +1 -1
  82. package/dist/RcMap.js.map +1 -1
  83. package/dist/RcRef.d.ts +1 -1
  84. package/dist/RcRef.d.ts.map +1 -1
  85. package/dist/Request.d.ts +1 -1
  86. package/dist/Request.d.ts.map +1 -1
  87. package/dist/Request.js +2 -1
  88. package/dist/Request.js.map +1 -1
  89. package/dist/RequestResolver.d.ts +6 -26
  90. package/dist/RequestResolver.d.ts.map +1 -1
  91. package/dist/RequestResolver.js +0 -20
  92. package/dist/RequestResolver.js.map +1 -1
  93. package/dist/Schedule.d.ts +22 -13
  94. package/dist/Schedule.d.ts.map +1 -1
  95. package/dist/Schedule.js +53 -25
  96. package/dist/Schedule.js.map +1 -1
  97. package/dist/Schema.d.ts +196 -46
  98. package/dist/Schema.d.ts.map +1 -1
  99. package/dist/Schema.js +385 -71
  100. package/dist/Schema.js.map +1 -1
  101. package/dist/SchemaGetter.d.ts +2 -2
  102. package/dist/SchemaGetter.d.ts.map +1 -1
  103. package/dist/SchemaGetter.js +12 -14
  104. package/dist/SchemaGetter.js.map +1 -1
  105. package/dist/SchemaRepresentation.d.ts +44 -43
  106. package/dist/SchemaRepresentation.d.ts.map +1 -1
  107. package/dist/SchemaRepresentation.js +5 -2
  108. package/dist/SchemaRepresentation.js.map +1 -1
  109. package/dist/SchemaTransformation.d.ts +37 -0
  110. package/dist/SchemaTransformation.d.ts.map +1 -1
  111. package/dist/SchemaTransformation.js +80 -0
  112. package/dist/SchemaTransformation.js.map +1 -1
  113. package/dist/ScopedCache.d.ts +2 -2
  114. package/dist/ScopedCache.d.ts.map +1 -1
  115. package/dist/ScopedCache.js +1 -1
  116. package/dist/ScopedCache.js.map +1 -1
  117. package/dist/Semaphore.d.ts +211 -0
  118. package/dist/Semaphore.d.ts.map +1 -0
  119. package/dist/{PartitionedSemaphore.js → Semaphore.js} +97 -13
  120. package/dist/Semaphore.js.map +1 -0
  121. package/dist/Stream.d.ts +19 -19
  122. package/dist/Stream.d.ts.map +1 -1
  123. package/dist/Stream.js +12 -11
  124. package/dist/Stream.js.map +1 -1
  125. package/dist/Struct.d.ts +16 -0
  126. package/dist/Struct.d.ts.map +1 -1
  127. package/dist/Struct.js +22 -0
  128. package/dist/Struct.js.map +1 -1
  129. package/dist/SubscriptionRef.d.ts +2 -1
  130. package/dist/SubscriptionRef.d.ts.map +1 -1
  131. package/dist/SubscriptionRef.js +2 -1
  132. package/dist/SubscriptionRef.js.map +1 -1
  133. package/dist/SynchronizedRef.d.ts +2 -1
  134. package/dist/SynchronizedRef.d.ts.map +1 -1
  135. package/dist/SynchronizedRef.js +2 -1
  136. package/dist/SynchronizedRef.js.map +1 -1
  137. package/dist/Types.d.ts +8 -0
  138. package/dist/Types.d.ts.map +1 -1
  139. package/dist/index.d.ts +148 -5
  140. package/dist/index.d.ts.map +1 -1
  141. package/dist/index.js +148 -5
  142. package/dist/index.js.map +1 -1
  143. package/dist/internal/core.js +11 -3
  144. package/dist/internal/core.js.map +1 -1
  145. package/dist/internal/dateTime.js +3 -11
  146. package/dist/internal/dateTime.js.map +1 -1
  147. package/dist/internal/effect.js +2 -2
  148. package/dist/internal/effect.js.map +1 -1
  149. package/dist/internal/random.d.ts +2 -0
  150. package/dist/internal/random.d.ts.map +1 -0
  151. package/dist/internal/random.js +13 -0
  152. package/dist/internal/random.js.map +1 -0
  153. package/dist/internal/rcRef.js +3 -2
  154. package/dist/internal/rcRef.js.map +1 -1
  155. package/dist/testing/TestClock.d.ts +7 -6
  156. package/dist/testing/TestClock.d.ts.map +1 -1
  157. package/dist/testing/TestClock.js +6 -4
  158. package/dist/testing/TestClock.js.map +1 -1
  159. package/dist/testing/TestSchema.d.ts +6 -6
  160. package/dist/testing/TestSchema.d.ts.map +1 -1
  161. package/dist/unstable/ai/AiError.d.ts +48 -48
  162. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  163. package/dist/unstable/ai/Chat.d.ts +3 -3
  164. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  165. package/dist/unstable/ai/Chat.js +4 -3
  166. package/dist/unstable/ai/Chat.js.map +1 -1
  167. package/dist/unstable/ai/LanguageModel.d.ts +2 -2
  168. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  169. package/dist/unstable/ai/McpSchema.d.ts +51 -51
  170. package/dist/unstable/ai/McpServer.d.ts +1 -1
  171. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  172. package/dist/unstable/ai/McpServer.js.map +1 -1
  173. package/dist/unstable/ai/Prompt.d.ts +20 -20
  174. package/dist/unstable/ai/Prompt.d.ts.map +1 -1
  175. package/dist/unstable/ai/Response.d.ts +26 -26
  176. package/dist/unstable/ai/Response.d.ts.map +1 -1
  177. package/dist/unstable/ai/Response.js +1 -1
  178. package/dist/unstable/ai/Response.js.map +1 -1
  179. package/dist/unstable/cli/CliError.d.ts +5 -5
  180. package/dist/unstable/cluster/ClusterCron.d.ts +1 -1
  181. package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
  182. package/dist/unstable/cluster/ClusterCron.js +1 -1
  183. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  184. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  185. package/dist/unstable/cluster/ClusterWorkflowEngine.js +2 -1
  186. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  187. package/dist/unstable/cluster/Entity.d.ts +5 -4
  188. package/dist/unstable/cluster/Entity.d.ts.map +1 -1
  189. package/dist/unstable/cluster/Entity.js.map +1 -1
  190. package/dist/unstable/cluster/EntityResource.d.ts +2 -2
  191. package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
  192. package/dist/unstable/cluster/Envelope.d.ts +1 -1
  193. package/dist/unstable/cluster/K8sHttpClient.d.ts +1 -1
  194. package/dist/unstable/cluster/K8sHttpClient.js +1 -1
  195. package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
  196. package/dist/unstable/cluster/Message.d.ts +5 -5
  197. package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
  198. package/dist/unstable/cluster/MessageStorage.js +2 -1
  199. package/dist/unstable/cluster/MessageStorage.js.map +1 -1
  200. package/dist/unstable/cluster/Reply.d.ts +3 -3
  201. package/dist/unstable/cluster/Runner.d.ts +1 -1
  202. package/dist/unstable/cluster/Runners.d.ts.map +1 -1
  203. package/dist/unstable/cluster/Runners.js +4 -3
  204. package/dist/unstable/cluster/Runners.js.map +1 -1
  205. package/dist/unstable/cluster/Sharding.d.ts +2 -2
  206. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  207. package/dist/unstable/cluster/Sharding.js +8 -6
  208. package/dist/unstable/cluster/Sharding.js.map +1 -1
  209. package/dist/unstable/cluster/ShardingConfig.d.ts +21 -21
  210. package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
  211. package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
  212. package/dist/unstable/cluster/SqlRunnerStorage.js +1 -1
  213. package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
  214. package/dist/unstable/cluster/internal/entityManager.js +5 -4
  215. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  216. package/dist/unstable/cluster/internal/entityReaper.js +2 -1
  217. package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
  218. package/dist/unstable/cluster/internal/resourceRef.js +2 -1
  219. package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
  220. package/dist/unstable/devtools/DevToolsSchema.d.ts +36 -36
  221. package/dist/unstable/encoding/Sse.d.ts +3 -3
  222. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  223. package/dist/unstable/encoding/Sse.js.map +1 -1
  224. package/dist/unstable/eventlog/EventJournal.d.ts +1 -1
  225. package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
  226. package/dist/unstable/eventlog/EventLog.js +2 -1
  227. package/dist/unstable/eventlog/EventLog.js.map +1 -1
  228. package/dist/unstable/eventlog/EventLogRemote.d.ts +5 -5
  229. package/dist/unstable/http/Cookies.d.ts +2 -2
  230. package/dist/unstable/http/Cookies.d.ts.map +1 -1
  231. package/dist/unstable/http/Cookies.js +2 -2
  232. package/dist/unstable/http/Cookies.js.map +1 -1
  233. package/dist/unstable/http/HttpClient.d.ts +4 -4
  234. package/dist/unstable/http/HttpClient.d.ts.map +1 -1
  235. package/dist/unstable/http/HttpClientRequest.d.ts +11 -11
  236. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  237. package/dist/unstable/http/HttpClientRequest.js +8 -1
  238. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  239. package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
  240. package/dist/unstable/http/HttpEffect.js +18 -26
  241. package/dist/unstable/http/HttpEffect.js.map +1 -1
  242. package/dist/unstable/http/HttpMethod.d.ts +4 -4
  243. package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
  244. package/dist/unstable/http/HttpMethod.js +3 -3
  245. package/dist/unstable/http/HttpMethod.js.map +1 -1
  246. package/dist/unstable/http/Multipart.d.ts +2 -2
  247. package/dist/unstable/http/UrlParams.d.ts +1 -1
  248. package/dist/unstable/httpapi/HttpApiBuilder.js +2 -2
  249. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  250. package/dist/unstable/httpapi/HttpApiScalar.d.ts +6 -0
  251. package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
  252. package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
  253. package/dist/unstable/observability/Otlp.d.ts +12 -12
  254. package/dist/unstable/observability/Otlp.d.ts.map +1 -1
  255. package/dist/unstable/observability/OtlpExporter.d.ts +2 -2
  256. package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
  257. package/dist/unstable/observability/OtlpExporter.js +1 -1
  258. package/dist/unstable/observability/OtlpExporter.js.map +1 -1
  259. package/dist/unstable/observability/OtlpLogger.d.ts +4 -4
  260. package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
  261. package/dist/unstable/observability/OtlpMetrics.d.ts +4 -4
  262. package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
  263. package/dist/unstable/observability/OtlpTracer.d.ts +4 -4
  264. package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
  265. package/dist/unstable/persistence/KeyValueStore.js +4 -4
  266. package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
  267. package/dist/unstable/persistence/Persistable.d.ts +2 -2
  268. package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
  269. package/dist/unstable/persistence/PersistedCache.d.ts +6 -5
  270. package/dist/unstable/persistence/PersistedCache.d.ts.map +1 -1
  271. package/dist/unstable/persistence/PersistedCache.js +2 -1
  272. package/dist/unstable/persistence/PersistedCache.js.map +1 -1
  273. package/dist/unstable/persistence/PersistedQueue.d.ts +12 -12
  274. package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
  275. package/dist/unstable/persistence/PersistedQueue.js +12 -11
  276. package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
  277. package/dist/unstable/persistence/Persistence.d.ts +1 -1
  278. package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
  279. package/dist/unstable/persistence/Persistence.js +2 -2
  280. package/dist/unstable/persistence/Persistence.js.map +1 -1
  281. package/dist/unstable/persistence/RateLimiter.d.ts +3 -3
  282. package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
  283. package/dist/unstable/persistence/RateLimiter.js +1 -1
  284. package/dist/unstable/persistence/RateLimiter.js.map +1 -1
  285. package/dist/unstable/process/ChildProcess.d.ts +1 -1
  286. package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
  287. package/dist/unstable/process/ChildProcessSpawner.d.ts +6 -0
  288. package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
  289. package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
  290. package/dist/unstable/reactivity/Atom.d.ts +6 -6
  291. package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
  292. package/dist/unstable/reactivity/Atom.js +3 -3
  293. package/dist/unstable/reactivity/Atom.js.map +1 -1
  294. package/dist/unstable/reactivity/AtomHttpApi.d.ts +1 -1
  295. package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
  296. package/dist/unstable/reactivity/AtomHttpApi.js +1 -1
  297. package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
  298. package/dist/unstable/reactivity/AtomRpc.d.ts +1 -1
  299. package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
  300. package/dist/unstable/reactivity/AtomRpc.js +1 -1
  301. package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
  302. package/dist/unstable/reactivity/index.d.ts +2 -2
  303. package/dist/unstable/reactivity/index.d.ts.map +1 -1
  304. package/dist/unstable/reactivity/index.js +2 -2
  305. package/dist/unstable/reactivity/index.js.map +1 -1
  306. package/dist/unstable/rpc/Rpc.d.ts +2 -2
  307. package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
  308. package/dist/unstable/rpc/RpcClient.d.ts +5 -26
  309. package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
  310. package/dist/unstable/rpc/RpcClient.js +6 -13
  311. package/dist/unstable/rpc/RpcClient.js.map +1 -1
  312. package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
  313. package/dist/unstable/rpc/RpcServer.js +5 -3
  314. package/dist/unstable/rpc/RpcServer.js.map +1 -1
  315. package/dist/unstable/rpc/Utils.d.ts.map +1 -1
  316. package/dist/unstable/rpc/Utils.js +2 -1
  317. package/dist/unstable/rpc/Utils.js.map +1 -1
  318. package/dist/unstable/socket/Socket.d.ts +4 -4
  319. package/dist/unstable/socket/Socket.d.ts.map +1 -1
  320. package/dist/unstable/socket/Socket.js +3 -2
  321. package/dist/unstable/socket/Socket.js.map +1 -1
  322. package/dist/unstable/sql/SqlModel.d.ts +2 -2
  323. package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
  324. package/dist/unstable/sql/SqlModel.js +3 -3
  325. package/dist/unstable/sql/SqlModel.js.map +1 -1
  326. package/dist/unstable/sql/SqlSchema.d.ts +16 -5
  327. package/dist/unstable/sql/SqlSchema.d.ts.map +1 -1
  328. package/dist/unstable/sql/SqlSchema.js +17 -7
  329. package/dist/unstable/sql/SqlSchema.js.map +1 -1
  330. package/dist/unstable/sql/Statement.js +0 -1
  331. package/dist/unstable/sql/Statement.js.map +1 -1
  332. package/dist/unstable/workers/Worker.d.ts.map +1 -1
  333. package/dist/unstable/workers/Worker.js +2 -1
  334. package/dist/unstable/workers/Worker.js.map +1 -1
  335. package/dist/unstable/workflow/DurableClock.d.ts +3 -3
  336. package/dist/unstable/workflow/DurableClock.d.ts.map +1 -1
  337. package/dist/unstable/workflow/DurableClock.js +3 -3
  338. package/dist/unstable/workflow/DurableClock.js.map +1 -1
  339. package/dist/unstable/workflow/DurableDeferred.js +2 -2
  340. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  341. package/dist/unstable/workflow/Workflow.d.ts +1 -1
  342. package/dist/unstable/workflow/WorkflowEngine.d.ts +2 -1
  343. package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
  344. package/dist/unstable/workflow/WorkflowEngine.js +2 -1
  345. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  346. package/package.json +1 -2
  347. package/src/Cache.ts +3 -3
  348. package/src/Cause.ts +1 -1
  349. package/src/Channel.ts +6 -4
  350. package/src/Config.ts +3 -3
  351. package/src/Data.ts +10 -9
  352. package/src/DateTime.ts +24 -164
  353. package/src/Duration.ts +15 -15
  354. package/src/Effect.ts +15 -261
  355. package/src/Encoding.ts +879 -0
  356. package/src/Equal.ts +2 -2
  357. package/src/FileSystem.ts +4 -4
  358. package/src/Formatter.ts +253 -51
  359. package/src/Graph.ts +8 -5
  360. package/src/JsonSchema.ts +383 -10
  361. package/src/Latch.ts +112 -0
  362. package/src/LayerMap.ts +5 -5
  363. package/src/LogLevel.ts +31 -0
  364. package/src/Logger.ts +5 -5
  365. package/src/Metric.ts +4 -4
  366. package/src/Pipeable.ts +32 -1
  367. package/src/Pool.ts +13 -11
  368. package/src/PubSub.ts +10 -9
  369. package/src/Random.ts +5 -14
  370. package/src/RcMap.ts +5 -5
  371. package/src/RcRef.ts +1 -1
  372. package/src/Request.ts +3 -2
  373. package/src/RequestResolver.ts +9 -29
  374. package/src/Schedule.ts +261 -140
  375. package/src/Schema.ts +571 -109
  376. package/src/SchemaGetter.ts +12 -14
  377. package/src/SchemaRepresentation.ts +5 -2
  378. package/src/SchemaTransformation.ts +104 -0
  379. package/src/ScopedCache.ts +3 -3
  380. package/src/Semaphore.ts +356 -0
  381. package/src/Stream.ts +43 -42
  382. package/src/Struct.ts +26 -0
  383. package/src/SubscriptionRef.ts +3 -2
  384. package/src/SynchronizedRef.ts +3 -2
  385. package/src/Types.ts +9 -0
  386. package/src/index.ts +151 -6
  387. package/src/internal/core.ts +10 -2
  388. package/src/internal/dateTime.ts +9 -30
  389. package/src/internal/effect.ts +24 -23
  390. package/src/internal/random.ts +20 -0
  391. package/src/internal/rcRef.ts +4 -3
  392. package/src/testing/TestClock.ts +13 -11
  393. package/src/testing/TestSchema.ts +8 -8
  394. package/src/unstable/ai/AiError.ts +2 -2
  395. package/src/unstable/ai/Chat.ts +12 -11
  396. package/src/unstable/ai/LanguageModel.ts +3 -3
  397. package/src/unstable/ai/McpServer.ts +2 -2
  398. package/src/unstable/ai/Prompt.ts +37 -37
  399. package/src/unstable/ai/Response.ts +25 -25
  400. package/src/unstable/cluster/ClusterCron.ts +2 -2
  401. package/src/unstable/cluster/ClusterWorkflowEngine.ts +3 -2
  402. package/src/unstable/cluster/Entity.ts +7 -6
  403. package/src/unstable/cluster/EntityResource.ts +4 -4
  404. package/src/unstable/cluster/Envelope.ts +1 -1
  405. package/src/unstable/cluster/K8sHttpClient.ts +1 -1
  406. package/src/unstable/cluster/MessageStorage.ts +3 -5
  407. package/src/unstable/cluster/Runners.ts +6 -5
  408. package/src/unstable/cluster/Sharding.ts +11 -9
  409. package/src/unstable/cluster/ShardingConfig.ts +10 -11
  410. package/src/unstable/cluster/SqlRunnerStorage.ts +1 -1
  411. package/src/unstable/cluster/internal/entityManager.ts +9 -8
  412. package/src/unstable/cluster/internal/entityReaper.ts +2 -1
  413. package/src/unstable/cluster/internal/resourceRef.ts +2 -1
  414. package/src/unstable/encoding/Sse.ts +2 -4
  415. package/src/unstable/eventlog/EventLog.ts +2 -1
  416. package/src/unstable/http/Cookies.ts +3 -3
  417. package/src/unstable/http/HttpClient.ts +4 -4
  418. package/src/unstable/http/HttpClientRequest.ts +15 -11
  419. package/src/unstable/http/HttpEffect.ts +17 -25
  420. package/src/unstable/http/HttpMethod.ts +16 -4
  421. package/src/unstable/http/Multipart.ts +2 -2
  422. package/src/unstable/http/UrlParams.ts +1 -1
  423. package/src/unstable/httpapi/HttpApiBuilder.ts +2 -2
  424. package/src/unstable/httpapi/HttpApiScalar.ts +6 -0
  425. package/src/unstable/observability/Otlp.ts +12 -12
  426. package/src/unstable/observability/OtlpExporter.ts +3 -3
  427. package/src/unstable/observability/OtlpLogger.ts +4 -4
  428. package/src/unstable/observability/OtlpMetrics.ts +4 -4
  429. package/src/unstable/observability/OtlpTracer.ts +4 -4
  430. package/src/unstable/persistence/KeyValueStore.ts +4 -4
  431. package/src/unstable/persistence/Persistable.ts +2 -2
  432. package/src/unstable/persistence/PersistedCache.ts +20 -9
  433. package/src/unstable/persistence/PersistedQueue.ts +25 -24
  434. package/src/unstable/persistence/Persistence.ts +3 -3
  435. package/src/unstable/persistence/RateLimiter.ts +4 -4
  436. package/src/unstable/process/ChildProcess.ts +1 -1
  437. package/src/unstable/process/ChildProcessSpawner.ts +6 -0
  438. package/src/unstable/reactivity/Atom.ts +13 -13
  439. package/src/unstable/reactivity/AtomHttpApi.ts +3 -3
  440. package/src/unstable/reactivity/AtomRpc.ts +3 -3
  441. package/src/unstable/reactivity/index.ts +2 -2
  442. package/src/unstable/rpc/Rpc.ts +3 -3
  443. package/src/unstable/rpc/RpcClient.ts +12 -54
  444. package/src/unstable/rpc/RpcServer.ts +6 -4
  445. package/src/unstable/rpc/Utils.ts +2 -1
  446. package/src/unstable/socket/Socket.ts +7 -6
  447. package/src/unstable/sql/SqlModel.ts +5 -5
  448. package/src/unstable/sql/SqlSchema.ts +41 -25
  449. package/src/unstable/sql/Statement.ts +0 -1
  450. package/src/unstable/workers/Worker.ts +2 -1
  451. package/src/unstable/workflow/DurableClock.ts +8 -8
  452. package/src/unstable/workflow/DurableDeferred.ts +2 -2
  453. package/src/unstable/workflow/WorkflowEngine.ts +3 -2
  454. package/dist/PartitionedSemaphore.d.ts +0 -52
  455. package/dist/PartitionedSemaphore.d.ts.map +0 -1
  456. package/dist/PartitionedSemaphore.js.map +0 -1
  457. package/dist/encoding/Base64.d.ts +0 -67
  458. package/dist/encoding/Base64.d.ts.map +0 -1
  459. package/dist/encoding/Base64.js +0 -146
  460. package/dist/encoding/Base64.js.map +0 -1
  461. package/dist/encoding/Base64Url.d.ts +0 -60
  462. package/dist/encoding/Base64Url.d.ts.map +0 -1
  463. package/dist/encoding/Base64Url.js +0 -89
  464. package/dist/encoding/Base64Url.js.map +0 -1
  465. package/dist/encoding/EncodingError.d.ts +0 -31
  466. package/dist/encoding/EncodingError.d.ts.map +0 -1
  467. package/dist/encoding/EncodingError.js +0 -22
  468. package/dist/encoding/EncodingError.js.map +0 -1
  469. package/dist/encoding/Hex.d.ts +0 -61
  470. package/dist/encoding/Hex.d.ts.map +0 -1
  471. package/dist/encoding/Hex.js +0 -115
  472. package/dist/encoding/Hex.js.map +0 -1
  473. package/dist/encoding/index.d.ts +0 -26
  474. package/dist/encoding/index.d.ts.map +0 -1
  475. package/dist/encoding/index.js +0 -27
  476. package/dist/encoding/index.js.map +0 -1
  477. package/src/PartitionedSemaphore.ts +0 -182
  478. package/src/encoding/Base64.ts +0 -366
  479. package/src/encoding/Base64Url.ts +0 -104
  480. package/src/encoding/EncodingError.ts +0 -35
  481. package/src/encoding/Hex.ts +0 -390
  482. package/src/encoding/index.ts +0 -31
@@ -81,6 +81,8 @@
81
81
  *
82
82
  * @since 4.0.0
83
83
  */
84
+ import * as BigDecimal from "./BigDecimal.js";
85
+ import * as DateTime from "./DateTime.js";
84
86
  import * as Duration from "./Duration.js";
85
87
  import * as Effect from "./Effect.js";
86
88
  import * as Option from "./Option.js";
@@ -932,6 +934,29 @@ export const urlFromString = /*#__PURE__*/transformOrFail({
932
934
  }),
933
935
  encode: url => Effect.succeed(url.href)
934
936
  });
937
+ /**
938
+ * Decodes a `string` into a `BigDecimal` and encodes a `BigDecimal` back to
939
+ * its string representation.
940
+ *
941
+ * When to use this:
942
+ * - Parsing decimal number strings from APIs or user input.
943
+ *
944
+ * Behavior:
945
+ * - Decode: calls `BigDecimal.fromString(s)`. Fails with `InvalidValue` if the
946
+ * string is not a valid BigDecimal representation.
947
+ * - Encode: returns `BigDecimal.format(bd)`.
948
+ *
949
+ * @since 4.0.0
950
+ */
951
+ export const bigDecimalFromString = /*#__PURE__*/transformOrFail({
952
+ decode: s => {
953
+ const result = BigDecimal.fromString(s);
954
+ return result === undefined ? Effect.fail(new Issue.InvalidValue(Option.some(s), {
955
+ message: `Invalid BigDecimal string: ${s}`
956
+ })) : Effect.succeed(result);
957
+ },
958
+ encode: bd => Effect.succeed(BigDecimal.format(bd))
959
+ });
935
960
  /**
936
961
  * Decodes a Base64-encoded `string` into a `Uint8Array` and encodes a
937
962
  * `Uint8Array` back to a Base64 string.
@@ -1045,4 +1070,59 @@ export const fromFormData = /*#__PURE__*/new Transformation(/*#__PURE__*/Getter.
1045
1070
  * @since 4.0.0
1046
1071
  */
1047
1072
  export const fromURLSearchParams = /*#__PURE__*/new Transformation(/*#__PURE__*/Getter.decodeURLSearchParams(), /*#__PURE__*/Getter.encodeURLSearchParams());
1073
+ /**
1074
+ * @since 4.0.0
1075
+ */
1076
+ export const timeZoneOffsetFromNumber = /*#__PURE__*/transform({
1077
+ decode: n => DateTime.zoneMakeOffset(n),
1078
+ encode: tz => tz.offset
1079
+ });
1080
+ /**
1081
+ * @since 4.0.0
1082
+ */
1083
+ export const timeZoneNamedFromString = /*#__PURE__*/transformOrFail({
1084
+ decode: s => {
1085
+ const result = DateTime.zoneMakeNamed(s);
1086
+ return result === undefined ? Effect.fail(new Issue.InvalidValue(Option.some(s), {
1087
+ message: `Invalid IANA time zone: ${s}`
1088
+ })) : Effect.succeed(result);
1089
+ },
1090
+ encode: tz => Effect.succeed(tz.id)
1091
+ });
1092
+ /**
1093
+ * @since 4.0.0
1094
+ */
1095
+ export const timeZoneFromString = /*#__PURE__*/transformOrFail({
1096
+ decode: s => {
1097
+ const result = DateTime.zoneFromString(s);
1098
+ return result === undefined ? Effect.fail(new Issue.InvalidValue(Option.some(s), {
1099
+ message: `Invalid time zone: ${s}`
1100
+ })) : Effect.succeed(result);
1101
+ },
1102
+ encode: tz => Effect.succeed(DateTime.zoneToString(tz))
1103
+ });
1104
+ /**
1105
+ * @since 4.0.0
1106
+ */
1107
+ export const dateTimeUtcFromString = /*#__PURE__*/transformOrFail({
1108
+ decode: s => {
1109
+ const result = DateTime.make(s);
1110
+ return result === undefined ? Effect.fail(new Issue.InvalidValue(Option.some(s), {
1111
+ message: "Invalid DateTime input"
1112
+ })) : Effect.succeed(DateTime.toUtc(result));
1113
+ },
1114
+ encode: utc => Effect.succeed(DateTime.formatIso(utc))
1115
+ });
1116
+ /**
1117
+ * @since 4.0.0
1118
+ */
1119
+ export const dateTimeZonedFromString = /*#__PURE__*/transformOrFail({
1120
+ decode: s => {
1121
+ const result = DateTime.makeZonedFromString(s);
1122
+ return result === undefined ? Effect.fail(new Issue.InvalidValue(Option.some(s), {
1123
+ message: `Invalid zoned DateTime string: ${s}`
1124
+ })) : Effect.succeed(result);
1125
+ },
1126
+ encode: zoned => Effect.succeed(DateTime.formatIsoZoned(zoned))
1127
+ });
1048
1128
  //# sourceMappingURL=SchemaTransformation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SchemaTransformation.js","names":["Duration","Effect","Option","Predicate","Getter","Issue","Middleware","_tag","decode","encode","constructor","flip","TypeId","Transformation","compose","other","isTransformation","u","hasProperty","make","options","transformOrFail","transform","transformOptional","trim","passthrough","snakeToCamel","camelToSnake","toLowerCase","toUpperCase","capitalize","uncapitalize","splitKeyValue","joinKeyValue","passthrough_","passthroughSupertype","passthroughSubtype","numberFromString","Number","String","bigintFromString","BigInt","durationFromNanos","i","succeed","nanos","a","toNanos","isUndefined","fail","InvalidValue","some","message","durationFromMillis","millis","toMillis","errorFromErrorJsonEncoded","err","Error","name","stack","e","includeStack","optionFromNullOr","fromNullOr","getOrNull","optionFromOptionalKey","flatten","optionFromOptional","ot","pipe","filter","isNotUndefined","urlFromString","s","try","URL","catch","globalThis","url","href","uint8ArrayFromBase64String","decodeBase64","encodeBase64","fromJsonString","parseJson","stringifyJson","fromFormData","decodeFormData","encodeFormData","fromURLSearchParams","decodeURLSearchParams","encodeURLSearchParams"],"sources":["../src/SchemaTransformation.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"SchemaTransformation.js","names":["BigDecimal","DateTime","Duration","Effect","Option","Predicate","Getter","Issue","Middleware","_tag","decode","encode","constructor","flip","TypeId","Transformation","compose","other","isTransformation","u","hasProperty","make","options","transformOrFail","transform","transformOptional","trim","passthrough","snakeToCamel","camelToSnake","toLowerCase","toUpperCase","capitalize","uncapitalize","splitKeyValue","joinKeyValue","passthrough_","passthroughSupertype","passthroughSubtype","numberFromString","Number","String","bigintFromString","BigInt","durationFromNanos","i","succeed","nanos","a","toNanos","isUndefined","fail","InvalidValue","some","message","durationFromMillis","millis","toMillis","errorFromErrorJsonEncoded","err","Error","name","stack","e","includeStack","optionFromNullOr","fromNullOr","getOrNull","optionFromOptionalKey","flatten","optionFromOptional","ot","pipe","filter","isNotUndefined","urlFromString","s","try","URL","catch","globalThis","url","href","bigDecimalFromString","result","fromString","undefined","bd","format","uint8ArrayFromBase64String","decodeBase64","encodeBase64","fromJsonString","parseJson","stringifyJson","fromFormData","decodeFormData","encodeFormData","fromURLSearchParams","decodeURLSearchParams","encodeURLSearchParams","timeZoneOffsetFromNumber","n","zoneMakeOffset","tz","offset","timeZoneNamedFromString","zoneMakeNamed","id","timeZoneFromString","zoneFromString","zoneToString","dateTimeUtcFromString","toUtc","utc","formatIso","dateTimeZonedFromString","makeZonedFromString","zoned","formatIsoZoned"],"sources":["../src/SchemaTransformation.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -48,7 +48,7 @@ export interface Entry<A, E> {
48
48
  export declare const makeWith: <Key, A, E = never, R = never, ServiceMode extends "lookup" | "construction" = never>(options: {
49
49
  readonly lookup: (key: Key) => Effect.Effect<A, E, R | Scope.Scope>;
50
50
  readonly capacity: number;
51
- readonly timeToLive?: ((exit: Exit.Exit<A, E>, key: Key) => Duration.DurationInput) | undefined;
51
+ readonly timeToLive?: ((exit: Exit.Exit<A, E>, key: Key) => Duration.Input) | undefined;
52
52
  readonly requireServicesAt?: ServiceMode | undefined;
53
53
  }) => Effect.Effect<ScopedCache<Key, A, E, "lookup" extends ServiceMode ? Exclude<R, Scope.Scope> : never>, never, ("lookup" extends ServiceMode ? never : R) | Scope.Scope>;
54
54
  /**
@@ -58,7 +58,7 @@ export declare const makeWith: <Key, A, E = never, R = never, ServiceMode extend
58
58
  export declare const make: <Key, A, E = never, R = never, ServiceMode extends "lookup" | "construction" = never>(options: {
59
59
  readonly lookup: (key: Key) => Effect.Effect<A, E, R | Scope.Scope>;
60
60
  readonly capacity: number;
61
- readonly timeToLive?: Duration.DurationInput | undefined;
61
+ readonly timeToLive?: Duration.Input | undefined;
62
62
  readonly requireServicesAt?: ServiceMode | undefined;
63
63
  }) => Effect.Effect<ScopedCache<Key, A, E, "lookup" extends ServiceMode ? Exclude<R, Scope.Scope> : never>, never, ("lookup" extends ServiceMode ? never : R) | Scope.Scope>;
64
64
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"ScopedCache.d.ts","sourceRoot":"","sources":["../src/ScopedCache.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,KAAK,MAAM,MAAM,aAAa,CAAA;AAC1C,OAAO,KAAK,KAAK,IAAI,MAAM,WAAW,CAAA;AAMtC,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAGnC,QAAA,MAAM,MAAM,wBAAwB,CAAA;AAEpC;;;GAGG;AACH,MAAM,WAAW,WAAW,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,EAAE,GAAG,CAAC,CAAC,GAAG,KAAK,CAAE,SAAQ,QAAQ;IAClG,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,MAAM,CAAA;IAChC,KAAK,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAA;IACnE,QAAQ,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,KAAK,QAAQ,CAAC,QAAQ,CAAA;CAC5E;AAED;;;GAGG;AACH,MAAM,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,GAAG,EAAE,cAAc,CAAC,cAAc,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;CAC5D,GAAG;IACF,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;CACxB,CAAA;AAED;;;;;;GAMG;AACH,MAAM,WAAW,KAAK,CAAC,CAAC,EAAE,CAAC;IACzB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAA;IAC7B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAC1C,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAA;CAChC;AAED;;;GAGG;AACH,eAAO,MAAM,QAAQ,GACnB,GAAG,EACH,CAAC,EACD,CAAC,GAAG,KAAK,EACT,CAAC,GAAG,KAAK,EACT,WAAW,SAAS,QAAQ,GAAG,cAAc,GAAG,KAAK,EACrD,SAAS;IACT,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAA;IACnE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,KAAK,QAAQ,CAAC,aAAa,CAAC,GAAG,SAAS,CAAA;IAC/F,QAAQ,CAAC,iBAAiB,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;CACrD,KAAG,MAAM,CAAC,MAAM,CACf,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,QAAQ,SAAS,WAAW,GAAG,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,EACtF,KAAK,EACL,CAAC,QAAQ,SAAS,WAAW,GAAG,KAAK,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CA0BtD,CAAA;AAEJ;;;GAGG;AACH,eAAO,MAAM,IAAI,GACf,GAAG,EACH,CAAC,EACD,CAAC,GAAG,KAAK,EACT,CAAC,GAAG,KAAK,EACT,WAAW,SAAS,QAAQ,GAAG,cAAc,GAAG,KAAK,EAErD,SAAS;IACP,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAA;IACnE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,UAAU,CAAC,EAAE,QAAQ,CAAC,aAAa,GAAG,SAAS,CAAA;IACxD,QAAQ,CAAC,iBAAiB,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;CACrD,KACA,MAAM,CAAC,MAAM,CACd,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,QAAQ,SAAS,WAAW,GAAG,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,EACtF,KAAK,EACL,CAAC,QAAQ,SAAS,WAAW,GAAG,KAAK,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAKtD,CAAA;AAgBJ;;;GAGG;AACH,eAAO,MAAM,GAAG,EAAE;IAChB;;;OAGG;IACH,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IACrF;;;OAGG;IACH,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;CA+ClF,CAAA;AA4BD;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE;IACtB;;;OAGG;IACH,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IACjG;;;OAGG;IACH,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;CAY9F,CAAA;AA4BD;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,EAAE;IACvB;;;;;;OAMG;IACH,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;IAC9F;;;;;;OAMG;IACH,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;CAkB3F,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,GAAG,EAAE;IAChB;;;;;;OAMG;IACH,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IAC5F;;;;;;OAMG;IACH,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;CA0CzF,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,GAAG,EAAE;IAChB;;;;;OAKG;IACH,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACrF;;;;;OAKG;IACH,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;CAOlF,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,UAAU,EAAE;IACvB;;;;;OAKG;IACH,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IAClF;;;;;OAKG;IACH,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;CAc5E,CAAA;AAEJ;;;;;;GAMG;AACH,eAAO,MAAM,cAAc,EAAE;IAC3B;;;;;;OAMG;IACH,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IAChH;;;;;;OAMG;IACH,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;CAyB7G,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,OAAO,EAAE;IACpB;;;;;;;;OAQG;IACH,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IACrF;;;;;;;;OAQG;IACH,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;CA2DlF,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,aAAa,GAAI,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAM5F,CAAA;AAcJ;;;;;;;;;GASG;AACH,eAAO,MAAM,IAAI,GAAI,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CACE,CAAA;AAE3F;;;;;GAKG;AACH,eAAO,MAAM,IAAI,GAAI,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAgBzF,CAAA;AAEJ;;;;;;GAMG;AACH,eAAO,MAAM,MAAM,GAAI,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CACnC,CAAA;AAE1D;;;;;;;GAOG;AACH,eAAO,MAAM,OAAO,GAAI,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAqBjG,CAAA"}
1
+ {"version":3,"file":"ScopedCache.d.ts","sourceRoot":"","sources":["../src/ScopedCache.ts"],"names":[],"mappings":"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"}
@@ -29,7 +29,7 @@ export const makeWith = options => effect.servicesWith(services => {
29
29
  map
30
30
  };
31
31
  self.capacity = options.capacity;
32
- self.timeToLive = options.timeToLive ? (exit, key) => Duration.fromDurationInputUnsafe(options.timeToLive(exit, key)) : defaultTimeToLive;
32
+ self.timeToLive = options.timeToLive ? (exit, key) => Duration.fromInputUnsafe(options.timeToLive(exit, key)) : defaultTimeToLive;
33
33
  return effect.as(Scope.addFinalizer(scope, core.withFiber(fiber => {
34
34
  self.state = {
35
35
  _tag: "Closed"
@@ -1 +1 @@
1
- {"version":3,"file":"ScopedCache.js","names":["Arr","Deferred","Duration","Fiber","dual","identity","core","PipeInspectableProto","effect","MutableHashMap","Option","Predicate","Scope","ServiceMap","TypeId","makeWith","options","servicesWith","services","scope","get","self","Object","create","Proto","lookup","key","updateServices","input","merge","map","empty","state","_tag","capacity","timeToLive","exit","fromDurationInputUnsafe","defaultTimeToLive","as","addFinalizer","withFiber","fiber","invalidateAllImpl","make","toJSON","_id","_","_key","infinity","uninterruptibleMask","restore","interrupt","oentry","isSome","hasExpired","value","remove","set","await","deferred","makeUnsafe","entry","expiresAt","undefined","checkCapacity","pipe","flatMap","close","exitVoid","provide","onExit","doneUnsafe","ttl","isFinite","getRef","ClockRef","currentTimeMillisUnsafe","toMillis","void","parent","Number","diff","size","fibers","push","forkUnsafe","fiberAwaitAll","getOption","getImpl","asSome","succeedNone","isRead","isNone","succeed","getSuccess","uninterruptible","exitIsSuccess","some","none","exitSucceed","check","has","isNotUndefined","invalidate","suspend","invalidateWhen","f","catch_","refresh","fnUntraced","getCurrent","newEntry","invalidateAll","clear","sync","keys","now","length","values","entries","arr","isExit","exitIsFailure"],"sources":["../src/ScopedCache.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ScopedCache.js","names":["Arr","Deferred","Duration","Fiber","dual","identity","core","PipeInspectableProto","effect","MutableHashMap","Option","Predicate","Scope","ServiceMap","TypeId","makeWith","options","servicesWith","services","scope","get","self","Object","create","Proto","lookup","key","updateServices","input","merge","map","empty","state","_tag","capacity","timeToLive","exit","fromInputUnsafe","defaultTimeToLive","as","addFinalizer","withFiber","fiber","invalidateAllImpl","make","toJSON","_id","_","_key","infinity","uninterruptibleMask","restore","interrupt","oentry","isSome","hasExpired","value","remove","set","await","deferred","makeUnsafe","entry","expiresAt","undefined","checkCapacity","pipe","flatMap","close","exitVoid","provide","onExit","doneUnsafe","ttl","isFinite","getRef","ClockRef","currentTimeMillisUnsafe","toMillis","void","parent","Number","diff","size","fibers","push","forkUnsafe","fiberAwaitAll","getOption","getImpl","asSome","succeedNone","isRead","isNone","succeed","getSuccess","uninterruptible","exitIsSuccess","some","none","exitSucceed","check","has","isNotUndefined","invalidate","suspend","invalidateWhen","f","catch_","refresh","fnUntraced","getCurrent","newEntry","invalidateAll","clear","sync","keys","now","length","values","entries","arr","isExit","exitIsFailure"],"sources":["../src/ScopedCache.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,211 @@
1
+ /**
2
+ * @since 2.0.0
3
+ */
4
+ import * as Effect from "./Effect.ts";
5
+ import * as Option from "./Option.ts";
6
+ /**
7
+ * @category models
8
+ * @since 2.0.0
9
+ * @example
10
+ * ```ts
11
+ * import { Effect, Semaphore } from "effect"
12
+ *
13
+ * // Create and use a semaphore for controlling concurrent access
14
+ * const program = Effect.gen(function*() {
15
+ * const semaphore = yield* Semaphore.make(2)
16
+ *
17
+ * return yield* semaphore.withPermits(1)(
18
+ * Effect.succeed("Resource accessed")
19
+ * )
20
+ * })
21
+ * ```
22
+ */
23
+ export interface Semaphore {
24
+ /**
25
+ * Adjusts the number of permits available in the semaphore.
26
+ */
27
+ resize(permits: number): Effect.Effect<void>;
28
+ /**
29
+ * Runs an effect with the given number of permits and releases the permits
30
+ * when the effect completes.
31
+ *
32
+ * **Details**
33
+ *
34
+ * This function acquires the specified number of permits before executing
35
+ * the provided effect. Once the effect finishes, the permits are released.
36
+ * If insufficient permits are available, the function will wait until they
37
+ * are released by other tasks.
38
+ */
39
+ withPermits(permits: number): <A, E, R>(self: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
40
+ /**
41
+ * Runs an effect with the given number of permits and releases the permits
42
+ * when the effect completes.
43
+ *
44
+ * **Details**
45
+ *
46
+ * This function acquires the specified number of permits before executing
47
+ * the provided effect. Once the effect finishes, the permits are released.
48
+ * If insufficient permits are available, the function will wait until they
49
+ * are released by other tasks.
50
+ */
51
+ withPermit<A, E, R>(self: Effect.Effect<A, E, R>): Effect.Effect<A, E, R>;
52
+ /**
53
+ * Runs an effect only if the specified number of permits are immediately
54
+ * available.
55
+ *
56
+ * **Details**
57
+ *
58
+ * This function attempts to acquire the specified number of permits. If they
59
+ * are available, it runs the effect and releases the permits after the effect
60
+ * completes. If permits are not available, the effect does not execute, and
61
+ * the result is `Option.none`.
62
+ */
63
+ withPermitsIfAvailable(permits: number): <A, E, R>(self: Effect.Effect<A, E, R>) => Effect.Effect<Option.Option<A>, E, R>;
64
+ /**
65
+ * Acquires the specified number of permits and returns the resulting
66
+ * available permits, suspending the task if they are not yet available.
67
+ * Concurrent pending `take` calls are processed in a first-in, first-out manner.
68
+ */
69
+ take(permits: number): Effect.Effect<number>;
70
+ /**
71
+ * Releases the specified number of permits and returns the resulting
72
+ * available permits.
73
+ */
74
+ release(permits: number): Effect.Effect<number>;
75
+ /**
76
+ * Releases all permits held by this semaphore and returns the resulting available permits.
77
+ */
78
+ releaseAll: Effect.Effect<number>;
79
+ }
80
+ /**
81
+ * Unsafely creates a new Semaphore.
82
+ *
83
+ * **Previously Known As**
84
+ *
85
+ * This API replaces the following from Effect 3.x:
86
+ *
87
+ * - `Effect.makeSemaphoreUnsafe`
88
+ *
89
+ * @example
90
+ * ```ts
91
+ * import { Effect, Semaphore } from "effect"
92
+ *
93
+ * const semaphore = Semaphore.makeUnsafe(3)
94
+ *
95
+ * const task = (id: number) =>
96
+ * semaphore.withPermits(1)(
97
+ * Effect.gen(function*() {
98
+ * yield* Effect.log(`Task ${id} started`)
99
+ * yield* Effect.sleep("1 second")
100
+ * yield* Effect.log(`Task ${id} completed`)
101
+ * })
102
+ * )
103
+ *
104
+ * // Only 3 tasks can run concurrently
105
+ * const program = Effect.all([
106
+ * task(1),
107
+ * task(2),
108
+ * task(3),
109
+ * task(4),
110
+ * task(5)
111
+ * ], { concurrency: "unbounded" })
112
+ * ```
113
+ *
114
+ * @since 2.0.0
115
+ * @category constructors
116
+ */
117
+ export declare const makeUnsafe: (permits: number) => Semaphore;
118
+ /**
119
+ * Creates a new Semaphore.
120
+ *
121
+ * **Previously Known As**
122
+ *
123
+ * This API replaces the following from Effect 3.x:
124
+ *
125
+ * - `Effect.makeSemaphore`
126
+ *
127
+ * @example
128
+ * ```ts
129
+ * import { Effect, Semaphore } from "effect"
130
+ *
131
+ * const program = Effect.gen(function*() {
132
+ * const semaphore = yield* Semaphore.make(2)
133
+ *
134
+ * const task = (id: number) =>
135
+ * semaphore.withPermits(1)(
136
+ * Effect.gen(function*() {
137
+ * yield* Effect.log(`Task ${id} acquired permit`)
138
+ * yield* Effect.sleep("1 second")
139
+ * yield* Effect.log(`Task ${id} releasing permit`)
140
+ * })
141
+ * )
142
+ *
143
+ * // Run 4 tasks, but only 2 can run concurrently
144
+ * yield* Effect.all([task(1), task(2), task(3), task(4)])
145
+ * })
146
+ * ```
147
+ *
148
+ * @since 2.0.0
149
+ * @category constructors
150
+ */
151
+ export declare const make: (permits: number) => Effect.Effect<Semaphore>;
152
+ /**
153
+ * @since 3.19.4
154
+ * @category models
155
+ */
156
+ export declare const PartitionedTypeId: PartitionedTypeId;
157
+ /**
158
+ * @since 3.19.4
159
+ * @category models
160
+ */
161
+ export type PartitionedTypeId = "~effect/PartitionedSemaphore";
162
+ /**
163
+ * A `Partitioned` semaphore controls access to a shared permit pool while
164
+ * tracking waiters by partition key.
165
+ *
166
+ * Waiting permits are distributed across partitions in round-robin order.
167
+ *
168
+ * **Previously Known As**
169
+ *
170
+ * This API replaces the following from Effect 3.x:
171
+ *
172
+ * - `PartitionedSemaphore.PartitionedSemaphore`
173
+ *
174
+ * @since 3.19.4
175
+ * @category models
176
+ */
177
+ export interface Partitioned<in K> {
178
+ readonly [PartitionedTypeId]: PartitionedTypeId;
179
+ readonly withPermits: (key: K, permits: number) => <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
180
+ }
181
+ /**
182
+ * Creates a `Partitioned` semaphore unsafely.
183
+ *
184
+ * **Previously Known As**
185
+ *
186
+ * This API replaces the following from Effect 3.x:
187
+ *
188
+ * - `PartitionedSemaphore.makeUnsafe`
189
+ *
190
+ * @since 3.19.4
191
+ * @category constructors
192
+ */
193
+ export declare const makePartitionedUnsafe: <K = unknown>(options: {
194
+ readonly permits: number;
195
+ }) => Partitioned<K>;
196
+ /**
197
+ * Creates a `Partitioned` semaphore.
198
+ *
199
+ * **Previously Known As**
200
+ *
201
+ * This API replaces the following from Effect 3.x:
202
+ *
203
+ * - `PartitionedSemaphore.make`
204
+ *
205
+ * @since 3.19.4
206
+ * @category constructors
207
+ */
208
+ export declare const makePartitioned: <K = unknown>(options: {
209
+ readonly permits: number;
210
+ }) => Effect.Effect<Partitioned<K>>;
211
+ //# sourceMappingURL=Semaphore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Semaphore.d.ts","sourceRoot":"","sources":["../src/Semaphore.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAGrC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,SAAS;IACxB;;OAEG;IACH,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IAE5C;;;;;;;;;;OAUG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IAE/F;;;;;;;;;;OAUG;IACH,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IAEzE;;;;;;;;;;OAUG;IACH,sBAAsB,CACpB,OAAO,EAAE,MAAM,GACd,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IAEnF;;;;OAIG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAE5C;;;OAGG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAE/C;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;CAClC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,eAAO,MAAM,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,SAAwC,CAAA;AAEtF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,eAAO,MAAM,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,SAAS,CAA0B,CAAA;AAMzF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,iBAAkD,CAAA;AAElF;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,8BAA8B,CAAA;AAE9D;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,WAAW,CAAC,EAAE,CAAC,CAAC;IAC/B,QAAQ,CAAC,CAAC,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;IAC/C,QAAQ,CAAC,WAAW,EAAE,CACpB,GAAG,EAAE,CAAC,EACN,OAAO,EAAE,MAAM,KACZ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;CACzE;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,qBAAqB,GAAI,CAAC,GAAG,OAAO,EAAE,SAAS;IAC1D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB,KAAG,WAAW,CAAC,CAAC,CAyHhB,CAAA;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,eAAe,GAAI,CAAC,GAAG,OAAO,EAAE,SAAS;IACpD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB,KAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAyD,CAAA"}
@@ -1,28 +1,107 @@
1
1
  /**
2
- * @since 3.19.4
3
- * @experimental
2
+ * @since 2.0.0
4
3
  */
5
4
  import * as Effect from "./Effect.js";
5
+ import * as internal from "./internal/effect.js";
6
6
  import * as MutableHashMap from "./MutableHashMap.js";
7
7
  import * as Option from "./Option.js";
8
+ /**
9
+ * Unsafely creates a new Semaphore.
10
+ *
11
+ * **Previously Known As**
12
+ *
13
+ * This API replaces the following from Effect 3.x:
14
+ *
15
+ * - `Effect.makeSemaphoreUnsafe`
16
+ *
17
+ * @example
18
+ * ```ts
19
+ * import { Effect, Semaphore } from "effect"
20
+ *
21
+ * const semaphore = Semaphore.makeUnsafe(3)
22
+ *
23
+ * const task = (id: number) =>
24
+ * semaphore.withPermits(1)(
25
+ * Effect.gen(function*() {
26
+ * yield* Effect.log(`Task ${id} started`)
27
+ * yield* Effect.sleep("1 second")
28
+ * yield* Effect.log(`Task ${id} completed`)
29
+ * })
30
+ * )
31
+ *
32
+ * // Only 3 tasks can run concurrently
33
+ * const program = Effect.all([
34
+ * task(1),
35
+ * task(2),
36
+ * task(3),
37
+ * task(4),
38
+ * task(5)
39
+ * ], { concurrency: "unbounded" })
40
+ * ```
41
+ *
42
+ * @since 2.0.0
43
+ * @category constructors
44
+ */
45
+ export const makeUnsafe = internal.makeSemaphoreUnsafe;
46
+ /**
47
+ * Creates a new Semaphore.
48
+ *
49
+ * **Previously Known As**
50
+ *
51
+ * This API replaces the following from Effect 3.x:
52
+ *
53
+ * - `Effect.makeSemaphore`
54
+ *
55
+ * @example
56
+ * ```ts
57
+ * import { Effect, Semaphore } from "effect"
58
+ *
59
+ * const program = Effect.gen(function*() {
60
+ * const semaphore = yield* Semaphore.make(2)
61
+ *
62
+ * const task = (id: number) =>
63
+ * semaphore.withPermits(1)(
64
+ * Effect.gen(function*() {
65
+ * yield* Effect.log(`Task ${id} acquired permit`)
66
+ * yield* Effect.sleep("1 second")
67
+ * yield* Effect.log(`Task ${id} releasing permit`)
68
+ * })
69
+ * )
70
+ *
71
+ * // Run 4 tasks, but only 2 can run concurrently
72
+ * yield* Effect.all([task(1), task(2), task(3), task(4)])
73
+ * })
74
+ * ```
75
+ *
76
+ * @since 2.0.0
77
+ * @category constructors
78
+ */
79
+ export const make = internal.makeSemaphore;
80
+ // -----------------------------------------------------------------------------
81
+ // Partitioned
82
+ // -----------------------------------------------------------------------------
8
83
  /**
9
84
  * @since 3.19.4
10
85
  * @category models
11
- * @experimental
12
86
  */
13
- export const TypeId = "~effect/PartitionedSemaphore";
87
+ export const PartitionedTypeId = "~effect/PartitionedSemaphore";
14
88
  /**
15
- * Creates a `PartitionedSemaphore` unsafely.
89
+ * Creates a `Partitioned` semaphore unsafely.
90
+ *
91
+ * **Previously Known As**
92
+ *
93
+ * This API replaces the following from Effect 3.x:
94
+ *
95
+ * - `PartitionedSemaphore.makeUnsafe`
16
96
  *
17
97
  * @since 3.19.4
18
98
  * @category constructors
19
- * @experimental
20
99
  */
21
- export const makeUnsafe = options => {
100
+ export const makePartitionedUnsafe = options => {
22
101
  const maxPermits = Math.max(0, options.permits);
23
102
  if (!Number.isFinite(maxPermits)) {
24
103
  return {
25
- [TypeId]: TypeId,
104
+ [PartitionedTypeId]: PartitionedTypeId,
26
105
  withPermits: () => effect => effect
27
106
  };
28
107
  }
@@ -100,7 +179,7 @@ export const makeUnsafe = options => {
100
179
  }
101
180
  };
102
181
  return {
103
- [TypeId]: TypeId,
182
+ [PartitionedTypeId]: PartitionedTypeId,
104
183
  withPermits: (key, permits) => {
105
184
  const takePermits = take(key, permits);
106
185
  return effect => Effect.uninterruptibleMask(restore => Effect.flatMap(restore(takePermits), () => Effect.ensuring(restore(effect), Effect.sync(() => releaseUnsafe(permits)))));
@@ -108,11 +187,16 @@ export const makeUnsafe = options => {
108
187
  };
109
188
  };
110
189
  /**
111
- * Creates a `PartitionedSemaphore`.
190
+ * Creates a `Partitioned` semaphore.
191
+ *
192
+ * **Previously Known As**
193
+ *
194
+ * This API replaces the following from Effect 3.x:
195
+ *
196
+ * - `PartitionedSemaphore.make`
112
197
  *
113
198
  * @since 3.19.4
114
199
  * @category constructors
115
- * @experimental
116
200
  */
117
- export const make = options => Effect.sync(() => makeUnsafe(options));
118
- //# sourceMappingURL=PartitionedSemaphore.js.map
201
+ export const makePartitioned = options => Effect.sync(() => makePartitionedUnsafe(options));
202
+ //# sourceMappingURL=Semaphore.js.map