effect 4.0.0-beta.0 → 4.0.0-beta.10
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.
- package/dist/Cache.d.ts +2 -2
- package/dist/Cache.d.ts.map +1 -1
- package/dist/Cache.js +1 -1
- package/dist/Cache.js.map +1 -1
- package/dist/Cause.d.ts +1 -1
- package/dist/Cause.d.ts.map +1 -1
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +6 -4
- package/dist/Channel.js.map +1 -1
- package/dist/Combiner.d.ts +280 -13
- package/dist/Combiner.d.ts.map +1 -1
- package/dist/Combiner.js +198 -7
- package/dist/Combiner.js.map +1 -1
- package/dist/Config.d.ts +3 -3
- package/dist/Config.js +3 -3
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.d.ts +1 -1
- package/dist/Cron.d.ts +1 -1
- package/dist/Data.d.ts +534 -365
- package/dist/Data.d.ts.map +1 -1
- package/dist/Data.js +132 -79
- package/dist/Data.js.map +1 -1
- package/dist/DateTime.d.ts +23 -161
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/DateTime.js +6 -51
- package/dist/DateTime.js.map +1 -1
- package/dist/Duration.d.ts +12 -12
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +12 -12
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +175 -240
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +73 -119
- package/dist/Effect.js.map +1 -1
- package/dist/Encoding.d.ts +194 -0
- package/dist/Encoding.d.ts.map +1 -0
- package/dist/Encoding.js +352 -0
- package/dist/Encoding.js.map +1 -0
- package/dist/Equal.d.ts +276 -109
- package/dist/Equal.d.ts.map +1 -1
- package/dist/Equal.js +124 -48
- package/dist/Equal.js.map +1 -1
- package/dist/FileSystem.d.ts +1 -1
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js +5 -5
- package/dist/FileSystem.js.map +1 -1
- package/dist/Filter.d.ts +30 -1
- package/dist/Filter.d.ts.map +1 -1
- package/dist/Filter.js +15 -0
- package/dist/Filter.js.map +1 -1
- package/dist/Formatter.d.ts +131 -47
- package/dist/Formatter.d.ts.map +1 -1
- package/dist/Formatter.js +229 -51
- package/dist/Formatter.js.map +1 -1
- package/dist/Graph.d.ts +1 -1
- package/dist/Graph.d.ts.map +1 -1
- package/dist/Graph.js +2 -2
- package/dist/Graph.js.map +1 -1
- package/dist/JsonSchema.d.ts +299 -10
- package/dist/JsonSchema.d.ts.map +1 -1
- package/dist/JsonSchema.js +323 -4
- package/dist/JsonSchema.js.map +1 -1
- package/dist/Latch.d.ts +109 -0
- package/dist/Latch.d.ts.map +1 -0
- package/dist/Latch.js +72 -0
- package/dist/Latch.js.map +1 -0
- package/dist/LayerMap.d.ts +4 -4
- package/dist/LayerMap.d.ts.map +1 -1
- package/dist/LogLevel.d.ts +27 -0
- package/dist/LogLevel.d.ts.map +1 -1
- package/dist/LogLevel.js +28 -100
- package/dist/LogLevel.js.map +1 -1
- package/dist/Logger.d.ts +4 -4
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Metric.d.ts +2 -2
- package/dist/Metric.d.ts.map +1 -1
- package/dist/Metric.js +1 -1
- package/dist/Metric.js.map +1 -1
- package/dist/Optic.d.ts +947 -18
- package/dist/Optic.d.ts.map +1 -1
- package/dist/Optic.js +454 -5
- package/dist/Optic.js.map +1 -1
- package/dist/Pipeable.d.ts +17 -0
- package/dist/Pipeable.d.ts.map +1 -1
- package/dist/Pipeable.js +19 -1
- package/dist/Pipeable.js.map +1 -1
- package/dist/PlatformError.d.ts +10 -9
- package/dist/PlatformError.d.ts.map +1 -1
- package/dist/PlatformError.js +2 -2
- package/dist/PlatformError.js.map +1 -1
- package/dist/Pool.d.ts +6 -4
- package/dist/Pool.d.ts.map +1 -1
- package/dist/Pool.js +7 -5
- package/dist/Pool.js.map +1 -1
- package/dist/PubSub.d.ts +3 -2
- package/dist/PubSub.d.ts.map +1 -1
- package/dist/PubSub.js +3 -2
- package/dist/PubSub.js.map +1 -1
- package/dist/Random.d.ts +18 -1
- package/dist/Random.d.ts.map +1 -1
- package/dist/Random.js +29 -12
- package/dist/Random.js.map +1 -1
- package/dist/RcMap.d.ts +2 -2
- package/dist/RcMap.d.ts.map +1 -1
- package/dist/RcMap.js +1 -1
- package/dist/RcMap.js.map +1 -1
- package/dist/RcRef.d.ts +1 -1
- package/dist/RcRef.d.ts.map +1 -1
- package/dist/Reducer.d.ts +166 -7
- package/dist/Reducer.d.ts.map +1 -1
- package/dist/Reducer.js +135 -1
- package/dist/Reducer.js.map +1 -1
- package/dist/Request.d.ts +1 -1
- package/dist/Request.d.ts.map +1 -1
- package/dist/Request.js +2 -1
- package/dist/Request.js.map +1 -1
- package/dist/RequestResolver.d.ts +6 -26
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +0 -20
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Result.d.ts +12 -0
- package/dist/Result.d.ts.map +1 -1
- package/dist/Result.js +12 -0
- package/dist/Result.js.map +1 -1
- package/dist/Schedule.d.ts +33 -14
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +65 -24
- package/dist/Schedule.js.map +1 -1
- package/dist/Schema.d.ts +199 -49
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +386 -72
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaGetter.d.ts +2 -2
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +12 -14
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaRepresentation.d.ts +44 -43
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +43 -24
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +37 -0
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +80 -0
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/ScopedCache.d.ts +2 -2
- package/dist/ScopedCache.d.ts.map +1 -1
- package/dist/ScopedCache.js +1 -1
- package/dist/ScopedCache.js.map +1 -1
- package/dist/Semaphore.d.ts +211 -0
- package/dist/Semaphore.d.ts.map +1 -0
- package/dist/{PartitionedSemaphore.js → Semaphore.js} +97 -13
- package/dist/Semaphore.js.map +1 -0
- package/dist/Stream.d.ts +19 -19
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +12 -11
- package/dist/Stream.js.map +1 -1
- package/dist/Struct.d.ts +16 -0
- package/dist/Struct.d.ts.map +1 -1
- package/dist/Struct.js +22 -0
- package/dist/Struct.js.map +1 -1
- package/dist/SubscriptionRef.d.ts +2 -1
- package/dist/SubscriptionRef.d.ts.map +1 -1
- package/dist/SubscriptionRef.js +2 -1
- package/dist/SubscriptionRef.js.map +1 -1
- package/dist/SynchronizedRef.d.ts +2 -1
- package/dist/SynchronizedRef.d.ts.map +1 -1
- package/dist/SynchronizedRef.js +2 -1
- package/dist/SynchronizedRef.js.map +1 -1
- package/dist/Types.d.ts +14 -6
- package/dist/Types.d.ts.map +1 -1
- package/dist/index.d.ts +499 -19
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +499 -19
- package/dist/index.js.map +1 -1
- package/dist/internal/core.js +11 -3
- package/dist/internal/core.js.map +1 -1
- package/dist/internal/dateTime.js +3 -11
- package/dist/internal/dateTime.js.map +1 -1
- package/dist/internal/effect.js +37 -22
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/random.d.ts +2 -0
- package/dist/internal/random.d.ts.map +1 -0
- package/dist/internal/random.js +13 -0
- package/dist/internal/random.js.map +1 -0
- package/dist/internal/rcRef.js +3 -2
- package/dist/internal/rcRef.js.map +1 -1
- package/dist/testing/TestClock.d.ts +7 -6
- package/dist/testing/TestClock.d.ts.map +1 -1
- package/dist/testing/TestClock.js +6 -4
- package/dist/testing/TestClock.js.map +1 -1
- package/dist/testing/TestSchema.d.ts +6 -6
- package/dist/testing/TestSchema.d.ts.map +1 -1
- package/dist/unstable/ai/AiError.d.ts +48 -48
- package/dist/unstable/ai/AiError.d.ts.map +1 -1
- package/dist/unstable/ai/Chat.d.ts +3 -3
- package/dist/unstable/ai/Chat.d.ts.map +1 -1
- package/dist/unstable/ai/Chat.js +4 -3
- package/dist/unstable/ai/Chat.js.map +1 -1
- package/dist/unstable/ai/LanguageModel.d.ts +2 -2
- package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
- package/dist/unstable/ai/McpSchema.d.ts +51 -51
- package/dist/unstable/ai/McpServer.d.ts +1 -1
- package/dist/unstable/ai/McpServer.d.ts.map +1 -1
- package/dist/unstable/ai/McpServer.js.map +1 -1
- package/dist/unstable/ai/Prompt.d.ts +20 -20
- package/dist/unstable/ai/Prompt.d.ts.map +1 -1
- package/dist/unstable/ai/Response.d.ts +26 -26
- package/dist/unstable/ai/Response.d.ts.map +1 -1
- package/dist/unstable/ai/Response.js +1 -1
- package/dist/unstable/ai/Response.js.map +1 -1
- package/dist/unstable/cli/CliError.d.ts +5 -5
- package/dist/unstable/cli/Prompt.js +2 -2
- package/dist/unstable/cli/Prompt.js.map +1 -1
- package/dist/unstable/cluster/ClusterCron.d.ts +1 -1
- package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterCron.js +1 -1
- package/dist/unstable/cluster/ClusterCron.js.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.js +2 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/unstable/cluster/Entity.d.ts +5 -4
- package/dist/unstable/cluster/Entity.d.ts.map +1 -1
- package/dist/unstable/cluster/Entity.js.map +1 -1
- package/dist/unstable/cluster/EntityResource.d.ts +2 -2
- package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
- package/dist/unstable/cluster/Envelope.d.ts +1 -1
- package/dist/unstable/cluster/K8sHttpClient.d.ts +1 -1
- package/dist/unstable/cluster/K8sHttpClient.js +1 -1
- package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
- package/dist/unstable/cluster/Message.d.ts +10 -10
- package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/MessageStorage.js +2 -1
- package/dist/unstable/cluster/MessageStorage.js.map +1 -1
- package/dist/unstable/cluster/Reply.d.ts +6 -6
- package/dist/unstable/cluster/Runner.d.ts +1 -1
- package/dist/unstable/cluster/Runners.d.ts.map +1 -1
- package/dist/unstable/cluster/Runners.js +4 -3
- package/dist/unstable/cluster/Runners.js.map +1 -1
- package/dist/unstable/cluster/Sharding.d.ts +2 -2
- package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
- package/dist/unstable/cluster/Sharding.js +8 -6
- package/dist/unstable/cluster/Sharding.js.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.d.ts +21 -21
- package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
- package/dist/unstable/cluster/SqlRunnerStorage.js +1 -1
- package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/internal/entityManager.js +5 -4
- package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
- package/dist/unstable/cluster/internal/entityReaper.js +2 -1
- package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
- package/dist/unstable/cluster/internal/resourceRef.js +2 -1
- package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
- package/dist/unstable/devtools/DevToolsSchema.d.ts +36 -36
- package/dist/unstable/encoding/Msgpack.d.ts +1 -1
- package/dist/unstable/encoding/Ndjson.d.ts +1 -1
- package/dist/unstable/encoding/Sse.d.ts +4 -4
- package/dist/unstable/encoding/Sse.d.ts.map +1 -1
- package/dist/unstable/encoding/Sse.js.map +1 -1
- package/dist/unstable/eventlog/EventJournal.d.ts +2 -2
- package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLog.js +2 -1
- package/dist/unstable/eventlog/EventLog.js.map +1 -1
- package/dist/unstable/eventlog/EventLogRemote.d.ts +6 -6
- package/dist/unstable/http/Cookies.d.ts +3 -3
- package/dist/unstable/http/Cookies.d.ts.map +1 -1
- package/dist/unstable/http/Cookies.js +2 -2
- package/dist/unstable/http/Cookies.js.map +1 -1
- package/dist/unstable/http/HttpBody.d.ts +17 -2
- package/dist/unstable/http/HttpBody.d.ts.map +1 -1
- package/dist/unstable/http/HttpBody.js +28 -1
- package/dist/unstable/http/HttpBody.js.map +1 -1
- package/dist/unstable/http/HttpClient.d.ts +11 -11
- package/dist/unstable/http/HttpClient.d.ts.map +1 -1
- package/dist/unstable/http/HttpClient.js +4 -4
- package/dist/unstable/http/HttpClient.js.map +1 -1
- package/dist/unstable/http/HttpClientError.d.ts +7 -7
- package/dist/unstable/http/HttpClientRequest.d.ts +27 -11
- package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientRequest.js +15 -3
- package/dist/unstable/http/HttpClientRequest.js.map +1 -1
- package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
- package/dist/unstable/http/HttpEffect.js +18 -26
- package/dist/unstable/http/HttpEffect.js.map +1 -1
- package/dist/unstable/http/HttpMethod.d.ts +4 -4
- package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
- package/dist/unstable/http/HttpMethod.js +3 -3
- package/dist/unstable/http/HttpMethod.js.map +1 -1
- package/dist/unstable/http/HttpMiddleware.d.ts +1 -6
- package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/unstable/http/HttpMiddleware.js +4 -9
- package/dist/unstable/http/HttpMiddleware.js.map +1 -1
- package/dist/unstable/http/HttpServerError.d.ts +6 -6
- package/dist/unstable/http/HttpServerResponse.js +1 -1
- package/dist/unstable/http/HttpServerResponse.js.map +1 -1
- package/dist/unstable/http/Multipart.d.ts +3 -3
- package/dist/unstable/http/UrlParams.d.ts +14 -6
- package/dist/unstable/http/UrlParams.d.ts.map +1 -1
- package/dist/unstable/http/UrlParams.js +1 -1
- package/dist/unstable/http/UrlParams.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.js +5 -5
- package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.js +3 -3
- package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +21 -39
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.js +15 -24
- package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiScalar.d.ts +6 -0
- package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
- package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/OpenApi.js +18 -16
- package/dist/unstable/httpapi/OpenApi.js.map +1 -1
- package/dist/unstable/observability/Otlp.d.ts +12 -12
- package/dist/unstable/observability/Otlp.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpExporter.d.ts +2 -2
- package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpExporter.js +1 -1
- package/dist/unstable/observability/OtlpExporter.js.map +1 -1
- package/dist/unstable/observability/OtlpLogger.d.ts +4 -4
- package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.d.ts +4 -4
- package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpTracer.d.ts +4 -4
- package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.d.ts +1 -1
- package/dist/unstable/persistence/KeyValueStore.js +6 -6
- package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
- package/dist/unstable/persistence/Persistable.d.ts +2 -2
- package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
- package/dist/unstable/persistence/PersistedCache.d.ts +6 -5
- package/dist/unstable/persistence/PersistedCache.d.ts.map +1 -1
- package/dist/unstable/persistence/PersistedCache.js +2 -1
- package/dist/unstable/persistence/PersistedCache.js.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.d.ts +12 -12
- package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.js +12 -11
- package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
- package/dist/unstable/persistence/Persistence.d.ts +1 -1
- package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
- package/dist/unstable/persistence/Persistence.js +2 -2
- package/dist/unstable/persistence/Persistence.js.map +1 -1
- package/dist/unstable/persistence/RateLimiter.d.ts +3 -3
- package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
- package/dist/unstable/persistence/RateLimiter.js +1 -1
- package/dist/unstable/persistence/RateLimiter.js.map +1 -1
- package/dist/unstable/process/ChildProcess.d.ts +2 -2
- package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.d.ts +6 -0
- package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
- package/dist/unstable/reactivity/Atom.d.ts +6 -6
- package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
- package/dist/unstable/reactivity/Atom.js +15 -12
- package/dist/unstable/reactivity/Atom.js.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.d.ts +6 -6
- package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.js +3 -3
- package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.d.ts +1 -1
- package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.js +1 -1
- package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
- package/dist/unstable/reactivity/Hydration.d.ts +39 -0
- package/dist/unstable/reactivity/Hydration.d.ts.map +1 -0
- package/dist/unstable/reactivity/Hydration.js +76 -0
- package/dist/unstable/reactivity/Hydration.js.map +1 -0
- package/dist/unstable/reactivity/index.d.ts +4 -0
- package/dist/unstable/reactivity/index.d.ts.map +1 -1
- package/dist/unstable/reactivity/index.js +4 -0
- package/dist/unstable/reactivity/index.js.map +1 -1
- package/dist/unstable/rpc/Rpc.d.ts +2 -2
- package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClient.d.ts +5 -26
- package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClient.js +6 -13
- package/dist/unstable/rpc/RpcClient.js.map +1 -1
- package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcServer.js +5 -3
- package/dist/unstable/rpc/RpcServer.js.map +1 -1
- package/dist/unstable/rpc/Utils.d.ts.map +1 -1
- package/dist/unstable/rpc/Utils.js +2 -1
- package/dist/unstable/rpc/Utils.js.map +1 -1
- package/dist/unstable/schema/Model.d.ts +4 -4
- package/dist/unstable/schema/Model.d.ts.map +1 -1
- package/dist/unstable/schema/VariantSchema.d.ts +2 -2
- package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
- package/dist/unstable/schema/VariantSchema.js +13 -2
- package/dist/unstable/schema/VariantSchema.js.map +1 -1
- package/dist/unstable/socket/Socket.d.ts +4 -4
- package/dist/unstable/socket/Socket.d.ts.map +1 -1
- package/dist/unstable/socket/Socket.js +3 -2
- package/dist/unstable/socket/Socket.js.map +1 -1
- package/dist/unstable/socket/SocketServer.d.ts +3 -3
- package/dist/unstable/sql/Migrator.d.ts +1 -1
- package/dist/unstable/sql/SqlError.d.ts +2 -2
- package/dist/unstable/sql/SqlModel.d.ts +2 -2
- package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
- package/dist/unstable/sql/SqlSchema.d.ts +24 -1
- package/dist/unstable/sql/SqlSchema.d.ts.map +1 -1
- package/dist/unstable/sql/SqlSchema.js +24 -3
- package/dist/unstable/sql/SqlSchema.js.map +1 -1
- package/dist/unstable/sql/Statement.js +0 -1
- package/dist/unstable/sql/Statement.js.map +1 -1
- package/dist/unstable/workers/Worker.d.ts.map +1 -1
- package/dist/unstable/workers/Worker.js +2 -1
- package/dist/unstable/workers/Worker.js.map +1 -1
- package/dist/unstable/workflow/DurableClock.d.ts +3 -3
- package/dist/unstable/workflow/DurableClock.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableClock.js +3 -3
- package/dist/unstable/workflow/DurableClock.js.map +1 -1
- package/dist/unstable/workflow/DurableDeferred.js +2 -2
- package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
- package/dist/unstable/workflow/Workflow.d.ts +2 -2
- package/dist/unstable/workflow/WorkflowEngine.d.ts +2 -1
- package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.js +2 -1
- package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
- package/package.json +2 -2
- package/src/Cache.ts +3 -3
- package/src/Cause.ts +1 -1
- package/src/Channel.ts +6 -4
- package/src/Combiner.ts +280 -13
- package/src/Config.ts +3 -3
- package/src/Data.ts +538 -374
- package/src/DateTime.ts +24 -164
- package/src/Duration.ts +15 -15
- package/src/Effect.ts +202 -261
- package/src/Encoding.ts +879 -0
- package/src/Equal.ts +278 -111
- package/src/FileSystem.ts +7 -8
- package/src/Filter.ts +48 -1
- package/src/Formatter.ts +253 -51
- package/src/Graph.ts +8 -5
- package/src/JsonSchema.ts +383 -10
- package/src/Latch.ts +112 -0
- package/src/LayerMap.ts +5 -5
- package/src/LogLevel.ts +31 -0
- package/src/Logger.ts +5 -5
- package/src/Metric.ts +4 -4
- package/src/Optic.ts +948 -19
- package/src/Pipeable.ts +32 -1
- package/src/PlatformError.ts +5 -5
- package/src/Pool.ts +13 -11
- package/src/PubSub.ts +10 -9
- package/src/Random.ts +33 -14
- package/src/RcMap.ts +5 -5
- package/src/RcRef.ts +1 -1
- package/src/Reducer.ts +166 -7
- package/src/Request.ts +3 -2
- package/src/RequestResolver.ts +9 -29
- package/src/Result.ts +13 -0
- package/src/Schedule.ts +279 -140
- package/src/Schema.ts +575 -113
- package/src/SchemaGetter.ts +12 -14
- package/src/SchemaRepresentation.ts +43 -24
- package/src/SchemaTransformation.ts +104 -0
- package/src/ScopedCache.ts +3 -3
- package/src/Semaphore.ts +356 -0
- package/src/Stream.ts +43 -42
- package/src/Struct.ts +26 -0
- package/src/SubscriptionRef.ts +3 -2
- package/src/SynchronizedRef.ts +3 -2
- package/src/Types.ts +12 -2
- package/src/index.ts +502 -20
- package/src/internal/core.ts +12 -5
- package/src/internal/dateTime.ts +9 -30
- package/src/internal/effect.ts +70 -37
- package/src/internal/random.ts +20 -0
- package/src/internal/rcRef.ts +4 -3
- package/src/testing/TestClock.ts +13 -11
- package/src/testing/TestSchema.ts +8 -8
- package/src/unstable/ai/AiError.ts +2 -2
- package/src/unstable/ai/Chat.ts +12 -11
- package/src/unstable/ai/LanguageModel.ts +3 -3
- package/src/unstable/ai/McpServer.ts +2 -2
- package/src/unstable/ai/Prompt.ts +37 -37
- package/src/unstable/ai/Response.ts +25 -25
- package/src/unstable/cli/Prompt.ts +2 -2
- package/src/unstable/cluster/ClusterCron.ts +2 -2
- package/src/unstable/cluster/ClusterWorkflowEngine.ts +3 -2
- package/src/unstable/cluster/Entity.ts +7 -6
- package/src/unstable/cluster/EntityResource.ts +4 -4
- package/src/unstable/cluster/Envelope.ts +1 -1
- package/src/unstable/cluster/K8sHttpClient.ts +1 -1
- package/src/unstable/cluster/MessageStorage.ts +3 -5
- package/src/unstable/cluster/Runners.ts +6 -5
- package/src/unstable/cluster/Sharding.ts +11 -9
- package/src/unstable/cluster/ShardingConfig.ts +10 -11
- package/src/unstable/cluster/SqlRunnerStorage.ts +1 -1
- package/src/unstable/cluster/internal/entityManager.ts +9 -8
- package/src/unstable/cluster/internal/entityReaper.ts +2 -1
- package/src/unstable/cluster/internal/resourceRef.ts +2 -1
- package/src/unstable/encoding/Sse.ts +2 -4
- package/src/unstable/eventlog/EventLog.ts +2 -1
- package/src/unstable/http/Cookies.ts +3 -3
- package/src/unstable/http/HttpBody.ts +42 -1
- package/src/unstable/http/HttpClient.ts +19 -19
- package/src/unstable/http/HttpClientRequest.ts +38 -13
- package/src/unstable/http/HttpEffect.ts +17 -25
- package/src/unstable/http/HttpMethod.ts +16 -4
- package/src/unstable/http/HttpMiddleware.ts +5 -10
- package/src/unstable/http/HttpServerResponse.ts +1 -1
- package/src/unstable/http/Multipart.ts +2 -2
- package/src/unstable/http/UrlParams.ts +20 -5
- package/src/unstable/httpapi/HttpApiBuilder.ts +5 -5
- package/src/unstable/httpapi/HttpApiClient.ts +3 -3
- package/src/unstable/httpapi/HttpApiEndpoint.ts +47 -72
- package/src/unstable/httpapi/HttpApiScalar.ts +6 -0
- package/src/unstable/httpapi/OpenApi.ts +18 -16
- package/src/unstable/observability/Otlp.ts +12 -12
- package/src/unstable/observability/OtlpExporter.ts +3 -3
- package/src/unstable/observability/OtlpLogger.ts +4 -4
- package/src/unstable/observability/OtlpMetrics.ts +4 -4
- package/src/unstable/observability/OtlpTracer.ts +4 -4
- package/src/unstable/persistence/KeyValueStore.ts +6 -6
- package/src/unstable/persistence/Persistable.ts +2 -2
- package/src/unstable/persistence/PersistedCache.ts +20 -9
- package/src/unstable/persistence/PersistedQueue.ts +25 -24
- package/src/unstable/persistence/Persistence.ts +3 -3
- package/src/unstable/persistence/RateLimiter.ts +4 -4
- package/src/unstable/process/ChildProcess.ts +2 -2
- package/src/unstable/process/ChildProcessSpawner.ts +6 -0
- package/src/unstable/reactivity/Atom.ts +20 -18
- package/src/unstable/reactivity/AtomHttpApi.ts +19 -18
- package/src/unstable/reactivity/AtomRpc.ts +3 -3
- package/src/unstable/reactivity/Hydration.ts +112 -0
- package/src/unstable/reactivity/index.ts +5 -0
- package/src/unstable/rpc/Rpc.ts +3 -3
- package/src/unstable/rpc/RpcClient.ts +12 -54
- package/src/unstable/rpc/RpcServer.ts +6 -4
- package/src/unstable/rpc/Utils.ts +2 -1
- package/src/unstable/schema/VariantSchema.ts +36 -7
- package/src/unstable/socket/Socket.ts +7 -6
- package/src/unstable/sql/SqlModel.ts +2 -2
- package/src/unstable/sql/SqlSchema.ts +62 -13
- package/src/unstable/sql/Statement.ts +0 -1
- package/src/unstable/workers/Worker.ts +2 -1
- package/src/unstable/workflow/DurableClock.ts +8 -8
- package/src/unstable/workflow/DurableDeferred.ts +2 -2
- package/src/unstable/workflow/WorkflowEngine.ts +3 -2
- package/dist/PartitionedSemaphore.d.ts +0 -52
- package/dist/PartitionedSemaphore.d.ts.map +0 -1
- package/dist/PartitionedSemaphore.js.map +0 -1
- package/dist/encoding/Base64.d.ts +0 -67
- package/dist/encoding/Base64.d.ts.map +0 -1
- package/dist/encoding/Base64.js +0 -146
- package/dist/encoding/Base64.js.map +0 -1
- package/dist/encoding/Base64Url.d.ts +0 -60
- package/dist/encoding/Base64Url.d.ts.map +0 -1
- package/dist/encoding/Base64Url.js +0 -89
- package/dist/encoding/Base64Url.js.map +0 -1
- package/dist/encoding/EncodingError.d.ts +0 -31
- package/dist/encoding/EncodingError.d.ts.map +0 -1
- package/dist/encoding/EncodingError.js +0 -22
- package/dist/encoding/EncodingError.js.map +0 -1
- package/dist/encoding/Hex.d.ts +0 -61
- package/dist/encoding/Hex.d.ts.map +0 -1
- package/dist/encoding/Hex.js +0 -115
- package/dist/encoding/Hex.js.map +0 -1
- package/dist/encoding/index.d.ts +0 -26
- package/dist/encoding/index.d.ts.map +0 -1
- package/dist/encoding/index.js +0 -27
- package/dist/encoding/index.js.map +0 -1
- package/src/PartitionedSemaphore.ts +0 -182
- package/src/encoding/Base64.ts +0 -366
- package/src/encoding/Base64Url.ts +0 -104
- package/src/encoding/EncodingError.ts +0 -35
- package/src/encoding/Hex.ts +0 -390
- package/src/encoding/index.ts +0 -31
|
@@ -8,6 +8,7 @@ import * as Effect from "../../Effect.ts"
|
|
|
8
8
|
import * as Exit from "../../Exit.ts"
|
|
9
9
|
import * as Fiber from "../../Fiber.ts"
|
|
10
10
|
import { constVoid, dual, flow, identity } from "../../Function.ts"
|
|
11
|
+
import * as Latch from "../../Latch.ts"
|
|
11
12
|
import * as Layer from "../../Layer.ts"
|
|
12
13
|
import * as Option from "../../Option.ts"
|
|
13
14
|
import * as Pool from "../../Pool.ts"
|
|
@@ -20,7 +21,6 @@ import * as ServiceMap from "../../ServiceMap.ts"
|
|
|
20
21
|
import * as Stream from "../../Stream.ts"
|
|
21
22
|
import type * as Struct from "../../Struct.ts"
|
|
22
23
|
import type { Span } from "../../Tracer.ts"
|
|
23
|
-
import type { Mutable } from "../../Types.ts"
|
|
24
24
|
import * as Headers from "../http/Headers.ts"
|
|
25
25
|
import * as HttpBody from "../http/HttpBody.ts"
|
|
26
26
|
import * as HttpClient from "../http/HttpClient.ts"
|
|
@@ -45,16 +45,7 @@ import { withRun } from "./Utils.ts"
|
|
|
45
45
|
* @since 4.0.0
|
|
46
46
|
* @category client
|
|
47
47
|
*/
|
|
48
|
-
export type RpcClient<Rpcs extends Rpc.Any, E = never> = Struct.Simplify<
|
|
49
|
-
& RpcClient.From<RpcClient.NonPrefixed<Rpcs>, E, "">
|
|
50
|
-
& {
|
|
51
|
-
readonly [CurrentPrefix in RpcClient.Prefixes<Rpcs>]: RpcClient.From<
|
|
52
|
-
RpcClient.Prefixed<Rpcs, CurrentPrefix>,
|
|
53
|
-
E,
|
|
54
|
-
CurrentPrefix
|
|
55
|
-
>
|
|
56
|
-
}
|
|
57
|
-
>
|
|
48
|
+
export type RpcClient<Rpcs extends Rpc.Any, E = never> = Struct.Simplify<RpcClient.From<Rpcs, E>>
|
|
58
49
|
|
|
59
50
|
/**
|
|
60
51
|
* @since 4.0.0
|
|
@@ -65,34 +56,8 @@ export declare namespace RpcClient {
|
|
|
65
56
|
* @since 4.0.0
|
|
66
57
|
* @category client
|
|
67
58
|
*/
|
|
68
|
-
export type
|
|
69
|
-
|
|
70
|
-
: never
|
|
71
|
-
|
|
72
|
-
/**
|
|
73
|
-
* @since 4.0.0
|
|
74
|
-
* @category client
|
|
75
|
-
*/
|
|
76
|
-
export type NonPrefixed<Rpcs extends Rpc.Any> = Exclude<Rpcs, { readonly _tag: `${string}.${string}` }>
|
|
77
|
-
|
|
78
|
-
/**
|
|
79
|
-
* @since 4.0.0
|
|
80
|
-
* @category client
|
|
81
|
-
*/
|
|
82
|
-
export type Prefixed<Rpcs extends Rpc.Any, Prefix extends string> = Extract<
|
|
83
|
-
Rpcs,
|
|
84
|
-
{ readonly _tag: `${Prefix}.${string}` }
|
|
85
|
-
>
|
|
86
|
-
|
|
87
|
-
/**
|
|
88
|
-
* @since 4.0.0
|
|
89
|
-
* @category client
|
|
90
|
-
*/
|
|
91
|
-
export type From<Rpcs extends Rpc.Any, E = never, Prefix extends string = ""> = {
|
|
92
|
-
readonly [
|
|
93
|
-
Current in Rpcs as Current["_tag"] extends `${Prefix}.${infer Method}` ? Method
|
|
94
|
-
: Current["_tag"]
|
|
95
|
-
]: <
|
|
59
|
+
export type From<Rpcs extends Rpc.Any, E = never> = {
|
|
60
|
+
readonly [Current in Rpcs as Current["_tag"]]: <
|
|
96
61
|
const AsQueue extends boolean = false,
|
|
97
62
|
const Discard = false
|
|
98
63
|
>(
|
|
@@ -614,16 +579,9 @@ export const makeNoSerialization: <Rpcs extends Rpc.Any, E, const Flatten extend
|
|
|
614
579
|
}
|
|
615
580
|
} else {
|
|
616
581
|
client = {}
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
if (prefix !== undefined && !(prefix in client)) {
|
|
621
|
-
;(client as any)[prefix] = {} as Mutable<RpcClient.Prefixed<Rpcs, typeof prefix>>
|
|
622
|
-
}
|
|
623
|
-
const target = prefix !== undefined ? (client as any)[prefix] : client
|
|
624
|
-
const tag = prefix !== undefined ? rpc._tag.slice(dot + 1) : rpc._tag
|
|
625
|
-
target[tag] = onRequest(rpc as any)
|
|
626
|
-
}
|
|
582
|
+
group.requests.forEach((rpc) => {
|
|
583
|
+
client[rpc._tag] = onRequest(rpc as any)
|
|
584
|
+
})
|
|
627
585
|
}
|
|
628
586
|
|
|
629
587
|
return { client, write } as const
|
|
@@ -1070,7 +1028,7 @@ const defaultRetryPolicy = Schedule.exponential(500, 1.5).pipe(
|
|
|
1070
1028
|
|
|
1071
1029
|
const makePinger = Effect.fnUntraced(function*<A, E, R>(writePing: Effect.Effect<A, E, R>) {
|
|
1072
1030
|
let recievedPong = true
|
|
1073
|
-
const latch =
|
|
1031
|
+
const latch = Latch.makeUnsafe()
|
|
1074
1032
|
const reset = () => {
|
|
1075
1033
|
recievedPong = true
|
|
1076
1034
|
latch.closeUnsafe()
|
|
@@ -1118,7 +1076,7 @@ export const makeProtocolWorker = (
|
|
|
1118
1076
|
readonly maxSize: number
|
|
1119
1077
|
readonly concurrency?: number | undefined
|
|
1120
1078
|
readonly targetUtilization?: number | undefined
|
|
1121
|
-
readonly timeToLive: Duration.
|
|
1079
|
+
readonly timeToLive: Duration.Input
|
|
1122
1080
|
}
|
|
1123
1081
|
): Effect.Effect<
|
|
1124
1082
|
Protocol["Service"],
|
|
@@ -1133,7 +1091,7 @@ export const makeProtocolWorker = (
|
|
|
1133
1091
|
|
|
1134
1092
|
const entries = new Map<string, {
|
|
1135
1093
|
readonly worker: Worker.Worker<FromServerEncoded, FromClientEncoded | RpcWorker.InitialMessage.Encoded>
|
|
1136
|
-
readonly latch:
|
|
1094
|
+
readonly latch: Latch.Latch
|
|
1137
1095
|
}>()
|
|
1138
1096
|
|
|
1139
1097
|
const acquire = Effect.gen(function*() {
|
|
@@ -1219,7 +1177,7 @@ export const makeProtocolWorker = (
|
|
|
1219
1177
|
case "Request": {
|
|
1220
1178
|
return Pool.get(pool).pipe(
|
|
1221
1179
|
Effect.flatMap((worker) => {
|
|
1222
|
-
const latch =
|
|
1180
|
+
const latch = Latch.makeUnsafe(false)
|
|
1223
1181
|
entries.set(request.id, { worker, latch })
|
|
1224
1182
|
return Effect.flatMap(worker.send(request, transferables), () => latch.await)
|
|
1225
1183
|
}),
|
|
@@ -1266,7 +1224,7 @@ export const layerProtocolWorker: (
|
|
|
1266
1224
|
readonly maxSize: number
|
|
1267
1225
|
readonly concurrency?: number | undefined
|
|
1268
1226
|
readonly targetUtilization?: number | undefined
|
|
1269
|
-
readonly timeToLive: Duration.
|
|
1227
|
+
readonly timeToLive: Duration.Input
|
|
1270
1228
|
}
|
|
1271
1229
|
) => Layer.Layer<
|
|
1272
1230
|
Protocol,
|
|
@@ -8,6 +8,7 @@ import * as Effect from "../../Effect.ts"
|
|
|
8
8
|
import * as Exit from "../../Exit.ts"
|
|
9
9
|
import * as Fiber from "../../Fiber.ts"
|
|
10
10
|
import { constant, constTrue, constVoid, identity } from "../../Function.ts"
|
|
11
|
+
import * as Latch from "../../Latch.ts"
|
|
11
12
|
import * as Layer from "../../Layer.ts"
|
|
12
13
|
import type * as Option from "../../Option.ts"
|
|
13
14
|
import * as Predicate from "../../Predicate.ts"
|
|
@@ -17,6 +18,7 @@ import * as Result from "../../Result.ts"
|
|
|
17
18
|
import * as Schedule from "../../Schedule.ts"
|
|
18
19
|
import * as Schema from "../../Schema.ts"
|
|
19
20
|
import * as Scope from "../../Scope.ts"
|
|
21
|
+
import * as Semaphore from "../../Semaphore.ts"
|
|
20
22
|
import * as ServiceMap from "../../ServiceMap.ts"
|
|
21
23
|
import { Stdio } from "../../Stdio.ts"
|
|
22
24
|
import * as Stream from "../../Stream.ts"
|
|
@@ -101,18 +103,18 @@ export const makeNoSerialization: <Rpcs extends Rpc.Any>(
|
|
|
101
103
|
const trackFiber = Fiber.runIn(Scope.forkUnsafe(scope, "parallel"))
|
|
102
104
|
const concurrencySemaphore = concurrency === "unbounded"
|
|
103
105
|
? undefined
|
|
104
|
-
: yield*
|
|
106
|
+
: yield* Semaphore.make(concurrency)
|
|
105
107
|
|
|
106
108
|
type Client = {
|
|
107
109
|
readonly id: number
|
|
108
|
-
readonly latches: Map<RequestId,
|
|
110
|
+
readonly latches: Map<RequestId, Latch.Latch>
|
|
109
111
|
readonly fibers: Map<RequestId, Fiber.Fiber<unknown, any>>
|
|
110
112
|
ended: boolean
|
|
111
113
|
}
|
|
112
114
|
|
|
113
115
|
const clients = new Map<number, Client>()
|
|
114
116
|
let isShutdown = false
|
|
115
|
-
const shutdownLatch =
|
|
117
|
+
const shutdownLatch = Latch.makeUnsafe(false)
|
|
116
118
|
yield* Scope.addFinalizer(
|
|
117
119
|
scope,
|
|
118
120
|
Effect.withFiber((parent) => {
|
|
@@ -342,7 +344,7 @@ export const makeNoSerialization: <Rpcs extends Rpc.Any>(
|
|
|
342
344
|
) => {
|
|
343
345
|
let latch = client.latches.get(request.id)
|
|
344
346
|
if (supportsAck && !latch) {
|
|
345
|
-
latch =
|
|
347
|
+
latch = Latch.makeUnsafe(false)
|
|
346
348
|
client.latches.set(request.id, latch)
|
|
347
349
|
}
|
|
348
350
|
if (Effect.isEffect(stream)) {
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* @since 4.0.0
|
|
3
3
|
*/
|
|
4
4
|
import * as Effect from "../../Effect.ts"
|
|
5
|
+
import * as Semaphore from "../../Semaphore.ts"
|
|
5
6
|
import type * as ServiceMap from "../../ServiceMap.ts"
|
|
6
7
|
|
|
7
8
|
/**
|
|
@@ -14,7 +15,7 @@ export const withRun = <
|
|
|
14
15
|
>() =>
|
|
15
16
|
<EX, RX>(f: (write: Parameters<A["run"]>[0]) => Effect.Effect<Omit<A, "run">, EX, RX>): Effect.Effect<A, EX, RX> =>
|
|
16
17
|
Effect.suspend(() => {
|
|
17
|
-
const semaphore =
|
|
18
|
+
const semaphore = Semaphore.makeUnsafe(1)
|
|
18
19
|
let buffer: Array<[Array<any>, ServiceMap.ServiceMap<never>]> = []
|
|
19
20
|
let write = (...args: Array<any>): Effect.Effect<void> =>
|
|
20
21
|
Effect.servicesWith((context) => {
|
|
@@ -3,11 +3,14 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import type { Brand } from "../../Brand.ts"
|
|
5
5
|
import * as Effect from "../../Effect.ts"
|
|
6
|
-
import {
|
|
6
|
+
import { dual } from "../../Function.ts"
|
|
7
|
+
import * as Option from "../../Option.ts"
|
|
7
8
|
import { type Pipeable, pipeArguments } from "../../Pipeable.ts"
|
|
8
9
|
import * as Predicate from "../../Predicate.ts"
|
|
9
10
|
import * as Schema from "../../Schema.ts"
|
|
10
11
|
import type * as AST from "../../SchemaAST.ts"
|
|
12
|
+
import * as Getter from "../../SchemaGetter.ts"
|
|
13
|
+
import * as Transformation from "../../SchemaTransformation.ts"
|
|
11
14
|
import * as Struct_ from "../../Struct.ts"
|
|
12
15
|
|
|
13
16
|
/**
|
|
@@ -465,8 +468,24 @@ export const Override = <A>(value: A): A & Brand<"Override"> => value as any
|
|
|
465
468
|
* @since 4.0.0
|
|
466
469
|
* @category overrideable
|
|
467
470
|
*/
|
|
468
|
-
export interface Overrideable<S extends Schema.Top & Schema.WithoutConstructorDefault>
|
|
469
|
-
|
|
471
|
+
export interface Overrideable<S extends Schema.Top & Schema.WithoutConstructorDefault> extends
|
|
472
|
+
Schema.Bottom<
|
|
473
|
+
(S["Type"] & Brand<"Override">) | undefined,
|
|
474
|
+
S["Encoded"],
|
|
475
|
+
S["DecodingServices"],
|
|
476
|
+
S["EncodingServices"],
|
|
477
|
+
S["ast"],
|
|
478
|
+
Overrideable<S>,
|
|
479
|
+
S["~type.make.in"],
|
|
480
|
+
(S["Type"] & Brand<"Override">) | undefined,
|
|
481
|
+
S["~type.parameters"],
|
|
482
|
+
(S["Type"] & Brand<"Override">) | undefined,
|
|
483
|
+
S["~type.mutability"],
|
|
484
|
+
"optional",
|
|
485
|
+
"with-default",
|
|
486
|
+
S["~encoded.mutability"],
|
|
487
|
+
S["~encoded.optionality"]
|
|
488
|
+
>
|
|
470
489
|
{}
|
|
471
490
|
|
|
472
491
|
/**
|
|
@@ -478,11 +497,21 @@ export const Overrideable = <S extends Schema.Top & Schema.WithoutConstructorDef
|
|
|
478
497
|
options: {
|
|
479
498
|
readonly defaultValue: Effect.Effect<S["~type.make.in"]>
|
|
480
499
|
}
|
|
481
|
-
) =>
|
|
500
|
+
): Overrideable<S> =>
|
|
482
501
|
schema.pipe(
|
|
483
|
-
Schema.
|
|
484
|
-
|
|
485
|
-
|
|
502
|
+
Schema.decodeTo(
|
|
503
|
+
Schema.optional(Schema.brand("Override")(Schema.toType(schema))),
|
|
504
|
+
Transformation.make({
|
|
505
|
+
decode: Getter.passthrough(),
|
|
506
|
+
encode: new Getter.Getter((o) => {
|
|
507
|
+
if (Option.isSome(o) && o.value !== undefined) {
|
|
508
|
+
return Effect.succeed(o)
|
|
509
|
+
}
|
|
510
|
+
return Effect.asSome(options.defaultValue)
|
|
511
|
+
})
|
|
512
|
+
})
|
|
513
|
+
)
|
|
514
|
+
) as any
|
|
486
515
|
|
|
487
516
|
const StructProto = {
|
|
488
517
|
pipe() {
|
|
@@ -5,11 +5,12 @@ import type { NonEmptyReadonlyArray } from "../../Array.ts"
|
|
|
5
5
|
import type * as Cause from "../../Cause.ts"
|
|
6
6
|
import * as Channel from "../../Channel.ts"
|
|
7
7
|
import * as Deferred from "../../Deferred.ts"
|
|
8
|
-
import type
|
|
8
|
+
import type * as Duration from "../../Duration.ts"
|
|
9
9
|
import * as Effect from "../../Effect.ts"
|
|
10
10
|
import * as Exit from "../../Exit.ts"
|
|
11
11
|
import * as FiberSet from "../../FiberSet.ts"
|
|
12
12
|
import { constVoid, dual, flow } from "../../Function.ts"
|
|
13
|
+
import * as Latch from "../../Latch.ts"
|
|
13
14
|
import * as Layer from "../../Layer.ts"
|
|
14
15
|
import * as Predicate from "../../Predicate.ts"
|
|
15
16
|
import * as Pull from "../../Pull.ts"
|
|
@@ -422,7 +423,7 @@ export const layerWebSocketConstructorGlobal: Layer.Layer<WebSocketConstructor>
|
|
|
422
423
|
*/
|
|
423
424
|
export const makeWebSocket = (url: string | Effect.Effect<string>, options?: {
|
|
424
425
|
readonly closeCodeIsError?: ((code: number) => boolean) | undefined
|
|
425
|
-
readonly openTimeout?:
|
|
426
|
+
readonly openTimeout?: Duration.Input | undefined
|
|
426
427
|
readonly protocols?: string | Array<string> | undefined
|
|
427
428
|
}): Effect.Effect<Socket, never, WebSocketConstructor> =>
|
|
428
429
|
fromWebSocket(
|
|
@@ -443,12 +444,12 @@ export const fromWebSocket = <RO>(
|
|
|
443
444
|
acquire: Effect.Effect<globalThis.WebSocket, SocketError, RO>,
|
|
444
445
|
options?: {
|
|
445
446
|
readonly closeCodeIsError?: ((code: number) => boolean) | undefined
|
|
446
|
-
readonly openTimeout?:
|
|
447
|
+
readonly openTimeout?: Duration.Input | undefined
|
|
447
448
|
} | undefined
|
|
448
449
|
): Effect.Effect<Socket, never, Exclude<RO, Scope.Scope>> =>
|
|
449
450
|
Effect.withFiber((fiber) => {
|
|
450
451
|
let currentWS: globalThis.WebSocket | undefined
|
|
451
|
-
const latch =
|
|
452
|
+
const latch = Latch.makeUnsafe(false)
|
|
452
453
|
const acquireContext = fiber.services as ServiceMap.ServiceMap<RO>
|
|
453
454
|
const closeCodeIsError = options?.closeCodeIsError ?? defaultCloseCodeIsError
|
|
454
455
|
|
|
@@ -618,7 +619,7 @@ export const layerWebSocket: (
|
|
|
618
619
|
url: string | Effect.Effect<string>,
|
|
619
620
|
options?: {
|
|
620
621
|
readonly closeCodeIsError?: ((code: number) => boolean) | undefined
|
|
621
|
-
readonly openTimeout?:
|
|
622
|
+
readonly openTimeout?: Duration.Input | undefined
|
|
622
623
|
readonly protocols?: string | Array<string> | undefined
|
|
623
624
|
} | undefined
|
|
624
625
|
) => Layer.Layer<Socket, never, WebSocketConstructor> = flow(makeWebSocket, Layer.effect(Socket))
|
|
@@ -648,7 +649,7 @@ export const fromTransformStream = <R>(acquire: Effect.Effect<InputTransformStre
|
|
|
648
649
|
readonly closeCodeIsError?: (code: number) => boolean
|
|
649
650
|
}): Effect.Effect<Socket, never, Exclude<R, Scope.Scope>> =>
|
|
650
651
|
Effect.withFiber((fiber) => {
|
|
651
|
-
const latch =
|
|
652
|
+
const latch = Latch.makeUnsafe(false)
|
|
652
653
|
let currentStream: {
|
|
653
654
|
readonly stream: InputTransformStream
|
|
654
655
|
readonly fiberSet: FiberSet.FiberSet<any, any>
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* @category models
|
|
4
4
|
*/
|
|
5
5
|
import type * as Cause from "../../Cause.ts"
|
|
6
|
-
import type {
|
|
6
|
+
import type { Input } from "../../Duration.ts"
|
|
7
7
|
import * as Effect from "../../Effect.ts"
|
|
8
8
|
import { identity } from "../../Function.ts"
|
|
9
9
|
import * as RequestResolver from "../../RequestResolver.ts"
|
|
@@ -210,7 +210,7 @@ export const makeDataLoaders = <
|
|
|
210
210
|
readonly tableName: string
|
|
211
211
|
readonly spanPrefix: string
|
|
212
212
|
readonly idColumn: Id
|
|
213
|
-
readonly window:
|
|
213
|
+
readonly window: Input
|
|
214
214
|
readonly maxBatchSize?: number | undefined
|
|
215
215
|
}
|
|
216
216
|
): Effect.Effect<
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
import * as Arr from "../../Array.ts"
|
|
5
5
|
import * as Cause from "../../Cause.ts"
|
|
6
6
|
import * as Effect from "../../Effect.ts"
|
|
7
|
+
import type * as Option from "../../Option.ts"
|
|
7
8
|
import * as Schema from "../../Schema.ts"
|
|
8
9
|
|
|
9
10
|
/**
|
|
@@ -12,7 +13,7 @@ import * as Schema from "../../Schema.ts"
|
|
|
12
13
|
* @since 4.0.0
|
|
13
14
|
* @category constructor
|
|
14
15
|
*/
|
|
15
|
-
export const
|
|
16
|
+
export const findAll = <Req extends Schema.Top, Res extends Schema.Top, E, R>(
|
|
16
17
|
options: {
|
|
17
18
|
readonly Request: Req
|
|
18
19
|
readonly Result: Res
|
|
@@ -20,7 +21,30 @@ export const findMany = <Req extends Schema.Top, Res extends Schema.Top, E, R>(
|
|
|
20
21
|
}
|
|
21
22
|
) => {
|
|
22
23
|
const encodeRequest = Schema.encodeEffect(options.Request)
|
|
23
|
-
const decode = Schema.decodeUnknownEffect(Schema.Array(options.Result))
|
|
24
|
+
const decode = Schema.decodeUnknownEffect(Schema.mutable(Schema.Array(options.Result)))
|
|
25
|
+
return (
|
|
26
|
+
request: Req["Encoded"]
|
|
27
|
+
): Effect.Effect<
|
|
28
|
+
Array<Res["Type"]>,
|
|
29
|
+
E | Schema.SchemaError,
|
|
30
|
+
Req["EncodingServices"] | Res["DecodingServices"] | R
|
|
31
|
+
> => Effect.flatMap(Effect.flatMap(encodeRequest(request), options.execute), decode)
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Run a sql query with a request schema and a result schema.
|
|
36
|
+
*
|
|
37
|
+
* @since 4.0.0
|
|
38
|
+
* @category constructor
|
|
39
|
+
*/
|
|
40
|
+
export const findNonEmpty = <Req extends Schema.Top, Res extends Schema.Top, E, R>(
|
|
41
|
+
options: {
|
|
42
|
+
readonly Request: Req
|
|
43
|
+
readonly Result: Res
|
|
44
|
+
readonly execute: (request: Req["Encoded"]) => Effect.Effect<ReadonlyArray<unknown>, E, R>
|
|
45
|
+
}
|
|
46
|
+
) => {
|
|
47
|
+
const find = findAll(options)
|
|
24
48
|
return (
|
|
25
49
|
request: Req["Encoded"]
|
|
26
50
|
): Effect.Effect<
|
|
@@ -28,17 +52,10 @@ export const findMany = <Req extends Schema.Top, Res extends Schema.Top, E, R>(
|
|
|
28
52
|
E | Schema.SchemaError | Cause.NoSuchElementError,
|
|
29
53
|
Req["EncodingServices"] | Res["DecodingServices"] | R
|
|
30
54
|
> =>
|
|
31
|
-
Effect.flatMap(
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
Schema.SchemaError | Cause.NoSuchElementError,
|
|
36
|
-
Req["EncodingServices"] | Res["DecodingServices"]
|
|
37
|
-
> =>
|
|
38
|
-
Arr.isReadonlyArrayNonEmpty(results)
|
|
39
|
-
? decode(results) as Effect.Effect<Arr.NonEmptyArray<Res["Type"]>, Schema.SchemaError>
|
|
40
|
-
: Effect.fail(new Cause.NoSuchElementError())
|
|
41
|
-
)
|
|
55
|
+
Effect.flatMap(find(request), (results) =>
|
|
56
|
+
Arr.isArrayNonEmpty(results)
|
|
57
|
+
? Effect.succeed(results)
|
|
58
|
+
: Effect.fail(new Cause.NoSuchElementError()))
|
|
42
59
|
}
|
|
43
60
|
|
|
44
61
|
const void_ = <Req extends Schema.Top, E, R>(
|
|
@@ -94,3 +111,35 @@ export const findOne = <Req extends Schema.Top, Res extends Schema.Top, E, R>(
|
|
|
94
111
|
> => Arr.isReadonlyArrayNonEmpty(arr) ? decode(arr[0]) : Effect.fail(new Cause.NoSuchElementError())
|
|
95
112
|
)
|
|
96
113
|
}
|
|
114
|
+
|
|
115
|
+
/**
|
|
116
|
+
* Run a sql query with a request schema and a result schema and return the first result.
|
|
117
|
+
*
|
|
118
|
+
* @since 4.0.0
|
|
119
|
+
* @category constructor
|
|
120
|
+
*/
|
|
121
|
+
export const findOneOption = <Req extends Schema.Top, Res extends Schema.Top, E, R>(
|
|
122
|
+
options: {
|
|
123
|
+
readonly Request: Req
|
|
124
|
+
readonly Result: Res
|
|
125
|
+
readonly execute: (request: Req["Encoded"]) => Effect.Effect<ReadonlyArray<unknown>, E, R>
|
|
126
|
+
}
|
|
127
|
+
) => {
|
|
128
|
+
const encodeRequest = Schema.encodeEffect(options.Request)
|
|
129
|
+
const decode = Schema.decodeUnknownEffect(options.Result)
|
|
130
|
+
return (
|
|
131
|
+
request: Req["Type"]
|
|
132
|
+
): Effect.Effect<
|
|
133
|
+
Option.Option<Res["Type"]>,
|
|
134
|
+
E | Schema.SchemaError,
|
|
135
|
+
R | Req["EncodingServices"] | Res["DecodingServices"]
|
|
136
|
+
> =>
|
|
137
|
+
Effect.flatMap(
|
|
138
|
+
Effect.flatMap(encodeRequest(request), options.execute),
|
|
139
|
+
(arr): Effect.Effect<
|
|
140
|
+
Option.Option<Res["Type"]>,
|
|
141
|
+
Schema.SchemaError,
|
|
142
|
+
Req["EncodingServices"] | Res["DecodingServices"]
|
|
143
|
+
> => Arr.isReadonlyArrayNonEmpty(arr) ? Effect.asSome(decode(arr[0])) : Effect.succeedNone
|
|
144
|
+
)
|
|
145
|
+
}
|
|
@@ -1124,7 +1124,6 @@ const makeUnsafe = <A = Row>(
|
|
|
1124
1124
|
}
|
|
1125
1125
|
|
|
1126
1126
|
// TODO: figure out why these diagnostics are emitted
|
|
1127
|
-
// @effect-diagnostics-next-line missingEffectContext:off missingEffectError:off
|
|
1128
1127
|
const StatementProto: Omit<
|
|
1129
1128
|
StatementImpl<any>,
|
|
1130
1129
|
"segments" | "acquirer" | "compiler" | "spanAttributes" | "transformRows"
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
import type * as Deferred from "../../Deferred.ts"
|
|
5
5
|
import * as Effect from "../../Effect.ts"
|
|
6
6
|
import * as FiberSet from "../../FiberSet.ts"
|
|
7
|
+
import * as Latch from "../../Latch.ts"
|
|
7
8
|
import * as Layer from "../../Layer.ts"
|
|
8
9
|
import * as Scope from "../../Scope.ts"
|
|
9
10
|
import * as ServiceMap from "../../ServiceMap.ts"
|
|
@@ -149,7 +150,7 @@ export const makePlatform = <W>() =>
|
|
|
149
150
|
WorkerError | E
|
|
150
151
|
>().pipe(Scope.provide(scope))
|
|
151
152
|
const run = yield* FiberSet.runtime(fiberSet)<R>()
|
|
152
|
-
const ready =
|
|
153
|
+
const ready = Latch.makeUnsafe()
|
|
153
154
|
yield* options.listen({
|
|
154
155
|
port,
|
|
155
156
|
scope,
|
|
@@ -28,11 +28,11 @@ export interface DurableClock {
|
|
|
28
28
|
*/
|
|
29
29
|
export const make = (options: {
|
|
30
30
|
readonly name: string
|
|
31
|
-
readonly duration: Duration.
|
|
31
|
+
readonly duration: Duration.Input
|
|
32
32
|
}): DurableClock => ({
|
|
33
33
|
[TypeId]: TypeId,
|
|
34
34
|
name: options.name,
|
|
35
|
-
duration: Duration.
|
|
35
|
+
duration: Duration.fromInputUnsafe(options.duration),
|
|
36
36
|
deferred: DurableDeferred.make(`DurableClock/${options.name}`)
|
|
37
37
|
})
|
|
38
38
|
|
|
@@ -54,14 +54,14 @@ const InstanceTag = ServiceMap.Service<
|
|
|
54
54
|
export const sleep: (
|
|
55
55
|
options: {
|
|
56
56
|
readonly name: string
|
|
57
|
-
readonly duration: Duration.
|
|
57
|
+
readonly duration: Duration.Input
|
|
58
58
|
/**
|
|
59
59
|
* If the duration is less than or equal to this threshold, the clock will
|
|
60
60
|
* be executed in memory.
|
|
61
61
|
*
|
|
62
62
|
* Defaults to 60 seconds.
|
|
63
63
|
*/
|
|
64
|
-
readonly inMemoryThreshold?: Duration.
|
|
64
|
+
readonly inMemoryThreshold?: Duration.Input | undefined
|
|
65
65
|
}
|
|
66
66
|
) => Effect.Effect<
|
|
67
67
|
void,
|
|
@@ -69,16 +69,16 @@ export const sleep: (
|
|
|
69
69
|
WorkflowEngine | WorkflowInstance
|
|
70
70
|
> = Effect.fnUntraced(function*(options: {
|
|
71
71
|
readonly name: string
|
|
72
|
-
readonly duration: Duration.
|
|
73
|
-
readonly inMemoryThreshold?: Duration.
|
|
72
|
+
readonly duration: Duration.Input
|
|
73
|
+
readonly inMemoryThreshold?: Duration.Input | undefined
|
|
74
74
|
}) {
|
|
75
|
-
const duration = Duration.
|
|
75
|
+
const duration = Duration.fromInputUnsafe(options.duration)
|
|
76
76
|
if (Duration.isZero(duration)) {
|
|
77
77
|
return
|
|
78
78
|
}
|
|
79
79
|
|
|
80
80
|
const inMemoryThreshold = options.inMemoryThreshold
|
|
81
|
-
? Duration.
|
|
81
|
+
? Duration.fromInputUnsafe(options.inMemoryThreshold)
|
|
82
82
|
: defaultInMemoryThreshold
|
|
83
83
|
|
|
84
84
|
if (Duration.isLessThanOrEqualTo(duration, inMemoryThreshold)) {
|
|
@@ -5,7 +5,7 @@ import type { NonEmptyReadonlyArray } from "../../Array.ts"
|
|
|
5
5
|
import type * as Brand from "../../Brand.ts"
|
|
6
6
|
import type * as Cause from "../../Cause.ts"
|
|
7
7
|
import * as Effect from "../../Effect.ts"
|
|
8
|
-
import * as
|
|
8
|
+
import * as Encoding from "../../Encoding.ts"
|
|
9
9
|
import * as Exit from "../../Exit.ts"
|
|
10
10
|
import { dual } from "../../Function.ts"
|
|
11
11
|
import * as Predicate from "../../Predicate.ts"
|
|
@@ -285,7 +285,7 @@ export class TokenParsed extends Schema.Class<TokenParsed>(
|
|
|
285
285
|
* @since 4.0.0
|
|
286
286
|
*/
|
|
287
287
|
get asToken(): Token {
|
|
288
|
-
return
|
|
288
|
+
return Encoding.encodeBase64Url(
|
|
289
289
|
JSON.stringify([this.workflowName, this.executionId, this.deferredName])
|
|
290
290
|
) as Token
|
|
291
291
|
}
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
import type * as Cause from "../../Cause.ts"
|
|
5
5
|
import * as Effect from "../../Effect.ts"
|
|
6
6
|
import * as Exit from "../../Exit.ts"
|
|
7
|
+
import * as Latch from "../../Latch.ts"
|
|
7
8
|
import * as Option from "../../Option.ts"
|
|
8
9
|
import * as Schedule from "../../Schedule.ts"
|
|
9
10
|
import * as Schema from "../../Schema.ts"
|
|
@@ -224,7 +225,7 @@ export class WorkflowInstance extends ServiceMap.Service<
|
|
|
224
225
|
|
|
225
226
|
readonly activityState: {
|
|
226
227
|
count: number
|
|
227
|
-
readonly latch:
|
|
228
|
+
readonly latch: Latch.Latch
|
|
228
229
|
}
|
|
229
230
|
}
|
|
230
231
|
>()("effect/workflow/WorkflowEngine/WorkflowInstance") {
|
|
@@ -241,7 +242,7 @@ export class WorkflowInstance extends ServiceMap.Service<
|
|
|
241
242
|
cause: undefined,
|
|
242
243
|
activityState: {
|
|
243
244
|
count: 0,
|
|
244
|
-
latch:
|
|
245
|
+
latch: Latch.makeUnsafe()
|
|
245
246
|
}
|
|
246
247
|
})
|
|
247
248
|
}
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @since 3.19.4
|
|
3
|
-
* @experimental
|
|
4
|
-
*/
|
|
5
|
-
import * as Effect from "./Effect.ts";
|
|
6
|
-
/**
|
|
7
|
-
* @since 3.19.4
|
|
8
|
-
* @category models
|
|
9
|
-
* @experimental
|
|
10
|
-
*/
|
|
11
|
-
export declare const TypeId: TypeId;
|
|
12
|
-
/**
|
|
13
|
-
* @since 3.19.4
|
|
14
|
-
* @category models
|
|
15
|
-
* @experimental
|
|
16
|
-
*/
|
|
17
|
-
export type TypeId = "~effect/PartitionedSemaphore";
|
|
18
|
-
/**
|
|
19
|
-
* A `PartitionedSemaphore` controls access to a shared permit pool while
|
|
20
|
-
* tracking waiters by partition key.
|
|
21
|
-
*
|
|
22
|
-
* Waiting permits are distributed across partitions in round-robin order.
|
|
23
|
-
*
|
|
24
|
-
* @since 3.19.4
|
|
25
|
-
* @category models
|
|
26
|
-
* @experimental
|
|
27
|
-
*/
|
|
28
|
-
export interface PartitionedSemaphore<in K> {
|
|
29
|
-
readonly [TypeId]: TypeId;
|
|
30
|
-
readonly withPermits: (key: K, permits: number) => <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* Creates a `PartitionedSemaphore` unsafely.
|
|
34
|
-
*
|
|
35
|
-
* @since 3.19.4
|
|
36
|
-
* @category constructors
|
|
37
|
-
* @experimental
|
|
38
|
-
*/
|
|
39
|
-
export declare const makeUnsafe: <K = unknown>(options: {
|
|
40
|
-
readonly permits: number;
|
|
41
|
-
}) => PartitionedSemaphore<K>;
|
|
42
|
-
/**
|
|
43
|
-
* Creates a `PartitionedSemaphore`.
|
|
44
|
-
*
|
|
45
|
-
* @since 3.19.4
|
|
46
|
-
* @category constructors
|
|
47
|
-
* @experimental
|
|
48
|
-
*/
|
|
49
|
-
export declare const make: <K = unknown>(options: {
|
|
50
|
-
readonly permits: number;
|
|
51
|
-
}) => Effect.Effect<PartitionedSemaphore<K>>;
|
|
52
|
-
//# sourceMappingURL=PartitionedSemaphore.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PartitionedSemaphore.d.ts","sourceRoot":"","sources":["../src/PartitionedSemaphore.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAIrC;;;;GAIG;AACH,eAAO,MAAM,MAAM,EAAE,MAAuC,CAAA;AAE5D;;;;GAIG;AACH,MAAM,MAAM,MAAM,GAAG,8BAA8B,CAAA;AAEnD;;;;;;;;;GASG;AACH,MAAM,WAAW,oBAAoB,CAAC,EAAE,CAAC,CAAC;IACxC,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACzB,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;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,GAAI,CAAC,GAAG,OAAO,EAAE,SAAS;IAC/C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB,KAAG,oBAAoB,CAAC,CAAC,CAyHzB,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,IAAI,GAAI,CAAC,GAAG,OAAO,EAAE,SAAS;IACzC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB,KAAG,MAAM,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAA8C,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PartitionedSemaphore.js","names":["Effect","MutableHashMap","Option","TypeId","makeUnsafe","options","maxPermits","Math","max","permits","Number","isFinite","withPermits","effect","totalPermits","waitingPermits","partitions","empty","take","key","callback","resume","never","void","needed","taken","waiters","getOrElse","get","set","Set","entry","cleanup","delete","size","remove","add","sync","releaseUnsafe","iterator","Symbol","state","next","done","waiter","value","values","undefined","takePermits","uninterruptibleMask","restore","flatMap","ensuring","make"],"sources":["../src/PartitionedSemaphore.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|