effect 4.0.0-beta.43 → 4.0.0-beta.44
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 +12 -43
- package/dist/Cache.d.ts.map +1 -1
- package/dist/Cache.js +15 -42
- package/dist/Cache.js.map +1 -1
- package/dist/Cause.d.ts +21 -21
- package/dist/Cause.d.ts.map +1 -1
- package/dist/Cause.js +89 -10
- package/dist/Cause.js.map +1 -1
- package/dist/Channel.d.ts +42 -19
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +86 -46
- package/dist/Channel.js.map +1 -1
- package/dist/Clock.d.ts +2 -2
- package/dist/Clock.d.ts.map +1 -1
- package/dist/Clock.js.map +1 -1
- package/dist/Config.d.ts +2 -2
- package/dist/ConfigProvider.d.ts +5 -5
- package/dist/ConfigProvider.d.ts.map +1 -1
- package/dist/ConfigProvider.js +5 -5
- package/dist/ConfigProvider.js.map +1 -1
- package/dist/Console.d.ts +2 -2
- package/dist/Console.d.ts.map +1 -1
- package/dist/Console.js.map +1 -1
- package/dist/Context.d.ts +1150 -0
- package/dist/Context.d.ts.map +1 -0
- package/dist/{ServiceMap.js → Context.js} +139 -139
- package/dist/Context.js.map +1 -0
- package/dist/DateTime.d.ts +2 -2
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/DateTime.js +2 -2
- package/dist/DateTime.js.map +1 -1
- package/dist/Effect.d.ts +177 -177
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +81 -81
- package/dist/Effect.js.map +1 -1
- package/dist/ErrorReporter.d.ts +3 -3
- package/dist/ErrorReporter.d.ts.map +1 -1
- package/dist/ErrorReporter.js +1 -1
- package/dist/ErrorReporter.js.map +1 -1
- package/dist/ExecutionPlan.d.ts +6 -6
- package/dist/ExecutionPlan.d.ts.map +1 -1
- package/dist/ExecutionPlan.js +4 -4
- package/dist/ExecutionPlan.js.map +1 -1
- package/dist/Fiber.d.ts +7 -7
- package/dist/Fiber.d.ts.map +1 -1
- package/dist/Fiber.js.map +1 -1
- package/dist/FiberHandle.d.ts +2 -2
- package/dist/FiberHandle.d.ts.map +1 -1
- package/dist/FiberHandle.js +4 -4
- package/dist/FiberHandle.js.map +1 -1
- package/dist/FiberMap.d.ts +2 -2
- package/dist/FiberMap.d.ts.map +1 -1
- package/dist/FiberMap.js +4 -4
- package/dist/FiberMap.js.map +1 -1
- package/dist/FiberSet.d.ts +2 -2
- package/dist/FiberSet.d.ts.map +1 -1
- package/dist/FiberSet.js +4 -4
- package/dist/FiberSet.js.map +1 -1
- package/dist/FileSystem.d.ts +3 -3
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js +3 -3
- package/dist/FileSystem.js.map +1 -1
- package/dist/Layer.d.ts +286 -268
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js +133 -134
- package/dist/Layer.js.map +1 -1
- package/dist/LayerMap.d.ts +18 -18
- package/dist/LayerMap.d.ts.map +1 -1
- package/dist/LayerMap.js +18 -15
- package/dist/LayerMap.js.map +1 -1
- package/dist/Logger.d.ts +3 -3
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js.map +1 -1
- package/dist/ManagedRuntime.d.ts +6 -6
- package/dist/ManagedRuntime.d.ts.map +1 -1
- package/dist/ManagedRuntime.js +18 -21
- package/dist/ManagedRuntime.js.map +1 -1
- package/dist/Metric.d.ts +19 -19
- package/dist/Metric.d.ts.map +1 -1
- package/dist/Metric.js +21 -21
- package/dist/Metric.js.map +1 -1
- package/dist/Path.d.ts +2 -2
- package/dist/Path.d.ts.map +1 -1
- package/dist/Path.js +2 -2
- package/dist/Path.js.map +1 -1
- package/dist/Pool.d.ts.map +1 -1
- package/dist/Pool.js +4 -4
- package/dist/Pool.js.map +1 -1
- package/dist/PubSub.d.ts.map +1 -1
- package/dist/PubSub.js +3 -3
- package/dist/PubSub.js.map +1 -1
- package/dist/Random.d.ts +2 -2
- package/dist/Random.d.ts.map +1 -1
- package/dist/Random.js +0 -23
- 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 +12 -12
- package/dist/RcMap.js.map +1 -1
- package/dist/Redactable.d.ts +139 -62
- package/dist/Redactable.d.ts.map +1 -1
- package/dist/Redactable.js +59 -55
- package/dist/Redactable.js.map +1 -1
- package/dist/References.d.ts +26 -14
- package/dist/References.d.ts.map +1 -1
- package/dist/References.js +0 -12
- package/dist/References.js.map +1 -1
- package/dist/Request.d.ts +5 -5
- package/dist/Request.d.ts.map +1 -1
- package/dist/Request.js.map +1 -1
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +6 -7
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Resource.d.ts +0 -3
- package/dist/Resource.d.ts.map +1 -1
- package/dist/Resource.js +3 -3
- package/dist/Resource.js.map +1 -1
- package/dist/Schedule.d.ts +2 -2
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +2 -2
- package/dist/Schedule.js.map +1 -1
- package/dist/Scheduler.d.ts +4 -4
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js +7 -4
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +531 -214
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +304 -103
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +5 -15
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaGetter.d.ts +49 -5
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +64 -5
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +145 -0
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +146 -0
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/Scope.d.ts +2 -2
- package/dist/Scope.d.ts.map +1 -1
- package/dist/Scope.js.map +1 -1
- package/dist/ScopedCache.d.ts.map +1 -1
- package/dist/ScopedCache.js +4 -4
- package/dist/ScopedCache.js.map +1 -1
- package/dist/Sink.d.ts +6 -6
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js +1 -1
- package/dist/Sink.js.map +1 -1
- package/dist/Stdio.d.ts +2 -2
- package/dist/Stdio.d.ts.map +1 -1
- package/dist/Stdio.js +2 -2
- package/dist/Stdio.js.map +1 -1
- package/dist/Stream.d.ts +187 -117
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +133 -57
- package/dist/Stream.js.map +1 -1
- package/dist/Terminal.d.ts +3 -3
- package/dist/Terminal.d.ts.map +1 -1
- package/dist/Terminal.js +2 -2
- package/dist/Terminal.js.map +1 -1
- package/dist/Tracer.d.ts +16 -16
- package/dist/Tracer.d.ts.map +1 -1
- package/dist/Tracer.js +11 -8
- package/dist/Tracer.js.map +1 -1
- package/dist/Unify.d.ts +8 -2
- package/dist/Unify.d.ts.map +1 -1
- package/dist/Unify.js.map +1 -1
- package/dist/index.d.ts +81 -15
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +81 -15
- package/dist/index.js.map +1 -1
- package/dist/internal/core.js.map +1 -1
- package/dist/internal/effect.js +74 -74
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/layer.js +3 -3
- package/dist/internal/layer.js.map +1 -1
- package/dist/internal/random.js +2 -2
- package/dist/internal/random.js.map +1 -1
- package/dist/internal/rcRef.js +9 -9
- package/dist/internal/rcRef.js.map +1 -1
- package/dist/internal/references.js +13 -13
- package/dist/internal/references.js.map +1 -1
- package/dist/internal/request.js +6 -6
- package/dist/internal/request.js.map +1 -1
- package/dist/internal/schedule.js +1 -1
- package/dist/internal/schedule.js.map +1 -1
- package/dist/internal/schema/representation.js +11 -1
- package/dist/internal/schema/representation.js.map +1 -1
- package/dist/internal/schema/schema.d.ts +10 -1
- package/dist/internal/schema/schema.d.ts.map +1 -1
- package/dist/internal/schema/schema.js +21 -1
- package/dist/internal/schema/schema.js.map +1 -1
- package/dist/testing/TestSchema.d.ts +3 -3
- package/dist/testing/TestSchema.d.ts.map +1 -1
- package/dist/testing/TestSchema.js.map +1 -1
- package/dist/unstable/ai/AiError.d.ts +19 -19
- package/dist/unstable/ai/AiError.d.ts.map +1 -1
- package/dist/unstable/ai/AiError.js +2 -1
- package/dist/unstable/ai/AiError.js.map +1 -1
- package/dist/unstable/ai/Chat.d.ts +4 -4
- package/dist/unstable/ai/Chat.d.ts.map +1 -1
- package/dist/unstable/ai/Chat.js +3 -3
- package/dist/unstable/ai/Chat.js.map +1 -1
- package/dist/unstable/ai/EmbeddingModel.d.ts +6 -6
- package/dist/unstable/ai/EmbeddingModel.d.ts.map +1 -1
- package/dist/unstable/ai/EmbeddingModel.js +3 -3
- package/dist/unstable/ai/EmbeddingModel.js.map +1 -1
- package/dist/unstable/ai/IdGenerator.d.ts +2 -2
- package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
- package/dist/unstable/ai/IdGenerator.js +2 -2
- package/dist/unstable/ai/IdGenerator.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/LanguageModel.js +2 -2
- package/dist/unstable/ai/LanguageModel.js.map +1 -1
- package/dist/unstable/ai/McpSchema.d.ts +54 -54
- package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
- package/dist/unstable/ai/McpSchema.js +15 -8
- package/dist/unstable/ai/McpSchema.js.map +1 -1
- package/dist/unstable/ai/McpServer.d.ts +22 -22
- package/dist/unstable/ai/McpServer.d.ts.map +1 -1
- package/dist/unstable/ai/McpServer.js +25 -25
- package/dist/unstable/ai/McpServer.js.map +1 -1
- package/dist/unstable/ai/Model.d.ts +3 -3
- package/dist/unstable/ai/Model.d.ts.map +1 -1
- package/dist/unstable/ai/Model.js +5 -5
- package/dist/unstable/ai/Model.js.map +1 -1
- package/dist/unstable/ai/Prompt.d.ts.map +1 -1
- package/dist/unstable/ai/Prompt.js +6 -9
- package/dist/unstable/ai/Prompt.js.map +1 -1
- package/dist/unstable/ai/Response.d.ts +1 -1
- package/dist/unstable/ai/Response.d.ts.map +1 -1
- package/dist/unstable/ai/Response.js +6 -7
- package/dist/unstable/ai/Response.js.map +1 -1
- package/dist/unstable/ai/ResponseIdTracker.d.ts +2 -2
- package/dist/unstable/ai/ResponseIdTracker.d.ts.map +1 -1
- package/dist/unstable/ai/ResponseIdTracker.js +2 -2
- package/dist/unstable/ai/ResponseIdTracker.js.map +1 -1
- package/dist/unstable/ai/Telemetry.d.ts +35 -2
- package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
- package/dist/unstable/ai/Telemetry.js +2 -2
- package/dist/unstable/ai/Telemetry.js.map +1 -1
- package/dist/unstable/ai/Tokenizer.d.ts +2 -2
- package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
- package/dist/unstable/ai/Tokenizer.js +2 -2
- package/dist/unstable/ai/Tokenizer.js.map +1 -1
- package/dist/unstable/ai/Tool.d.ts +16 -16
- package/dist/unstable/ai/Tool.d.ts.map +1 -1
- package/dist/unstable/ai/Tool.js +41 -13
- package/dist/unstable/ai/Tool.js.map +1 -1
- package/dist/unstable/ai/Toolkit.d.ts +3 -3
- package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
- package/dist/unstable/ai/Toolkit.js +10 -10
- package/dist/unstable/ai/Toolkit.js.map +1 -1
- package/dist/unstable/cli/Argument.d.ts +2 -3
- package/dist/unstable/cli/Argument.d.ts.map +1 -1
- package/dist/unstable/cli/Argument.js.map +1 -1
- package/dist/unstable/cli/CliError.d.ts +29 -8
- package/dist/unstable/cli/CliError.d.ts.map +1 -1
- package/dist/unstable/cli/CliError.js +8 -1
- package/dist/unstable/cli/CliError.js.map +1 -1
- package/dist/unstable/cli/CliOutput.d.ts +2 -2
- package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
- package/dist/unstable/cli/CliOutput.js +2 -2
- package/dist/unstable/cli/CliOutput.js.map +1 -1
- package/dist/unstable/cli/Command.d.ts +14 -14
- package/dist/unstable/cli/Command.d.ts.map +1 -1
- package/dist/unstable/cli/Command.js +11 -10
- package/dist/unstable/cli/Command.js.map +1 -1
- package/dist/unstable/cli/Flag.d.ts +2 -3
- package/dist/unstable/cli/Flag.d.ts.map +1 -1
- package/dist/unstable/cli/Flag.js.map +1 -1
- package/dist/unstable/cli/GlobalFlag.d.ts +2 -2
- package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -1
- package/dist/unstable/cli/GlobalFlag.js +2 -2
- package/dist/unstable/cli/GlobalFlag.js.map +1 -1
- package/dist/unstable/cli/HelpDoc.d.ts +8 -8
- package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
- package/dist/unstable/cli/Param.d.ts +30 -2
- package/dist/unstable/cli/Param.d.ts.map +1 -1
- package/dist/unstable/cli/Param.js +17 -7
- package/dist/unstable/cli/Param.js.map +1 -1
- package/dist/unstable/cli/Prompt.js +8 -2
- package/dist/unstable/cli/Prompt.js.map +1 -1
- package/dist/unstable/cli/internal/command.d.ts +5 -5
- package/dist/unstable/cli/internal/command.d.ts.map +1 -1
- package/dist/unstable/cli/internal/command.js +3 -3
- package/dist/unstable/cli/internal/command.js.map +1 -1
- package/dist/unstable/cli/internal/parser.js +94 -15
- package/dist/unstable/cli/internal/parser.js.map +1 -1
- package/dist/unstable/cluster/ClusterError.d.ts +7 -7
- package/dist/unstable/cluster/ClusterSchema.d.ts +12 -9
- package/dist/unstable/cluster/ClusterSchema.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterSchema.js +9 -9
- package/dist/unstable/cluster/ClusterSchema.js.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.js +13 -14
- package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/unstable/cluster/Entity.d.ts +8 -8
- package/dist/unstable/cluster/Entity.d.ts.map +1 -1
- package/dist/unstable/cluster/Entity.js +12 -12
- package/dist/unstable/cluster/Entity.js.map +1 -1
- package/dist/unstable/cluster/EntityAddress.d.ts +2 -2
- package/dist/unstable/cluster/EntityProxy.js +3 -3
- package/dist/unstable/cluster/EntityProxy.js.map +1 -1
- package/dist/unstable/cluster/EntityProxyServer.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityProxyServer.js +4 -4
- package/dist/unstable/cluster/EntityProxyServer.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/EntityResource.js +2 -2
- package/dist/unstable/cluster/EntityResource.js.map +1 -1
- package/dist/unstable/cluster/Envelope.d.ts +3 -3
- package/dist/unstable/cluster/HttpRunner.js +2 -2
- package/dist/unstable/cluster/HttpRunner.js.map +1 -1
- package/dist/unstable/cluster/K8sHttpClient.d.ts +4 -4
- package/dist/unstable/cluster/K8sHttpClient.d.ts.map +1 -1
- package/dist/unstable/cluster/K8sHttpClient.js +2 -2
- package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
- package/dist/unstable/cluster/Message.d.ts +7 -4
- package/dist/unstable/cluster/Message.d.ts.map +1 -1
- package/dist/unstable/cluster/Message.js +5 -5
- package/dist/unstable/cluster/Message.js.map +1 -1
- package/dist/unstable/cluster/MessageStorage.d.ts +14 -14
- package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/MessageStorage.js +8 -8
- package/dist/unstable/cluster/MessageStorage.js.map +1 -1
- package/dist/unstable/cluster/Reply.d.ts +2 -2
- package/dist/unstable/cluster/Reply.d.ts.map +1 -1
- package/dist/unstable/cluster/Reply.js +5 -5
- package/dist/unstable/cluster/Reply.js.map +1 -1
- package/dist/unstable/cluster/Runner.d.ts +1 -1
- package/dist/unstable/cluster/RunnerAddress.d.ts +1 -1
- package/dist/unstable/cluster/RunnerHealth.d.ts +2 -2
- package/dist/unstable/cluster/RunnerHealth.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerHealth.js +2 -2
- package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
- package/dist/unstable/cluster/RunnerServer.js +1 -1
- package/dist/unstable/cluster/RunnerServer.js.map +1 -1
- package/dist/unstable/cluster/RunnerStorage.d.ts +12 -12
- package/dist/unstable/cluster/RunnerStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerStorage.js +3 -3
- package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/Runners.d.ts +3 -3
- package/dist/unstable/cluster/Runners.d.ts.map +1 -1
- package/dist/unstable/cluster/Runners.js +7 -7
- package/dist/unstable/cluster/Runners.js.map +1 -1
- package/dist/unstable/cluster/ShardId.d.ts +35 -49
- package/dist/unstable/cluster/ShardId.d.ts.map +1 -1
- package/dist/unstable/cluster/ShardId.js +65 -67
- package/dist/unstable/cluster/ShardId.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 +21 -21
- package/dist/unstable/cluster/Sharding.js.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.d.ts +2 -2
- package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.js +5 -5
- package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
- package/dist/unstable/cluster/SingletonAddress.d.ts +2 -2
- package/dist/unstable/cluster/Snowflake.d.ts +2 -2
- package/dist/unstable/cluster/Snowflake.d.ts.map +1 -1
- package/dist/unstable/cluster/Snowflake.js +2 -2
- package/dist/unstable/cluster/Snowflake.js.map +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.js +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
- package/dist/unstable/cluster/internal/entityManager.js +15 -14
- package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
- package/dist/unstable/cluster/internal/entityReaper.js +2 -2
- package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
- package/dist/unstable/cluster/internal/resourceMap.js +3 -3
- package/dist/unstable/cluster/internal/resourceMap.js.map +1 -1
- package/dist/unstable/devtools/DevToolsClient.d.ts +2 -2
- package/dist/unstable/devtools/DevToolsClient.d.ts.map +1 -1
- package/dist/unstable/devtools/DevToolsClient.js +5 -5
- package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
- package/dist/unstable/eventlog/EventJournal.d.ts +4 -4
- package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventJournal.js +2 -2
- package/dist/unstable/eventlog/EventJournal.js.map +1 -1
- package/dist/unstable/eventlog/EventLog.d.ts +5 -5
- package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLog.js +18 -18
- package/dist/unstable/eventlog/EventLog.js.map +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.d.ts +2 -2
- package/dist/unstable/eventlog/EventLogEncryption.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.js +2 -2
- package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
- package/dist/unstable/eventlog/EventLogRemote.d.ts +15 -12
- package/dist/unstable/eventlog/EventLogRemote.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogRemote.js +2 -2
- package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServer.d.ts +3 -3
- package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServer.js +2 -2
- package/dist/unstable/eventlog/EventLogServer.js.map +1 -1
- package/dist/unstable/http/Etag.d.ts +2 -2
- package/dist/unstable/http/Etag.d.ts.map +1 -1
- package/dist/unstable/http/Etag.js +2 -2
- package/dist/unstable/http/Etag.js.map +1 -1
- package/dist/unstable/http/FetchHttpClient.d.ts +6 -3
- package/dist/unstable/http/FetchHttpClient.d.ts.map +1 -1
- package/dist/unstable/http/FetchHttpClient.js +5 -5
- package/dist/unstable/http/FetchHttpClient.js.map +1 -1
- package/dist/unstable/http/Headers.d.ts +5 -2
- package/dist/unstable/http/Headers.d.ts.map +1 -1
- package/dist/unstable/http/Headers.js +3 -3
- package/dist/unstable/http/Headers.js.map +1 -1
- package/dist/unstable/http/HttpClient.d.ts +8 -6
- package/dist/unstable/http/HttpClient.d.ts.map +1 -1
- package/dist/unstable/http/HttpClient.js +6 -6
- package/dist/unstable/http/HttpClient.js.map +1 -1
- package/dist/unstable/http/HttpClientError.d.ts +1 -1
- package/dist/unstable/http/HttpClientRequest.d.ts +2 -2
- package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientRequest.js +4 -4
- package/dist/unstable/http/HttpClientRequest.js.map +1 -1
- package/dist/unstable/http/HttpEffect.d.ts +6 -6
- package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
- package/dist/unstable/http/HttpEffect.js +24 -24
- package/dist/unstable/http/HttpEffect.js.map +1 -1
- package/dist/unstable/http/HttpIncomingMessage.d.ts +2 -2
- package/dist/unstable/http/HttpIncomingMessage.d.ts.map +1 -1
- package/dist/unstable/http/HttpIncomingMessage.js +2 -2
- package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
- package/dist/unstable/http/HttpMiddleware.d.ts +3 -3
- package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/unstable/http/HttpMiddleware.js +26 -14
- package/dist/unstable/http/HttpMiddleware.js.map +1 -1
- package/dist/unstable/http/HttpPlatform.d.ts +2 -2
- package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
- package/dist/unstable/http/HttpPlatform.js +2 -2
- package/dist/unstable/http/HttpPlatform.js.map +1 -1
- package/dist/unstable/http/HttpRouter.d.ts +7 -7
- package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
- package/dist/unstable/http/HttpRouter.js +29 -29
- package/dist/unstable/http/HttpRouter.js.map +1 -1
- package/dist/unstable/http/HttpServer.d.ts +2 -2
- package/dist/unstable/http/HttpServer.d.ts.map +1 -1
- package/dist/unstable/http/HttpServer.js +2 -2
- package/dist/unstable/http/HttpServer.js.map +1 -1
- package/dist/unstable/http/HttpServerError.d.ts +3 -3
- package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerError.js +3 -3
- package/dist/unstable/http/HttpServerError.js.map +1 -1
- package/dist/unstable/http/HttpServerRequest.d.ts +4 -4
- package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerRequest.js +6 -6
- package/dist/unstable/http/HttpServerRequest.js.map +1 -1
- package/dist/unstable/http/HttpServerResponse.d.ts +2 -2
- package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerResponse.js +6 -6
- package/dist/unstable/http/HttpServerResponse.js.map +1 -1
- package/dist/unstable/http/Multipart.d.ts +6 -6
- package/dist/unstable/http/Multipart.d.ts.map +1 -1
- package/dist/unstable/http/Multipart.js +7 -7
- package/dist/unstable/http/Multipart.js.map +1 -1
- package/dist/unstable/httpapi/HttpApi.d.ts +9 -9
- package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApi.js +8 -8
- package/dist/unstable/httpapi/HttpApi.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts +0 -3
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.js +20 -20
- package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.js +1 -1
- package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +7 -7
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.js +4 -4
- package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.d.ts +13 -13
- package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.d.ts +8 -8
- package/dist/unstable/httpapi/HttpApiGroup.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.js +4 -4
- package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +6 -6
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.js +5 -5
- package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSecurity.d.ts +9 -6
- package/dist/unstable/httpapi/HttpApiSecurity.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiSecurity.js +6 -6
- package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
- package/dist/unstable/httpapi/OpenApi.d.ts +15 -15
- package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/OpenApi.js +23 -23
- package/dist/unstable/httpapi/OpenApi.js.map +1 -1
- package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpExporter.js +5 -5
- package/dist/unstable/observability/OtlpExporter.js.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.js +1 -1
- package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
- package/dist/unstable/observability/OtlpSerialization.d.ts +2 -2
- package/dist/unstable/observability/OtlpSerialization.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpSerialization.js +2 -2
- package/dist/unstable/observability/OtlpSerialization.js.map +1 -1
- package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpTracer.js.map +1 -1
- package/dist/unstable/observability/PrometheusMetrics.d.ts +3 -3
- package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/PrometheusMetrics.js +4 -33
- package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.d.ts +23 -2
- package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.js +144 -2
- package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
- package/dist/unstable/persistence/PersistedCache.d.ts +1 -2
- package/dist/unstable/persistence/PersistedCache.d.ts.map +1 -1
- package/dist/unstable/persistence/PersistedCache.js +10 -11
- package/dist/unstable/persistence/PersistedCache.js.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.d.ts +4 -4
- package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.js +3 -3
- package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
- package/dist/unstable/persistence/Persistence.d.ts +4 -4
- package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
- package/dist/unstable/persistence/Persistence.js +3 -3
- package/dist/unstable/persistence/Persistence.js.map +1 -1
- package/dist/unstable/persistence/RateLimiter.d.ts +6 -6
- package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
- package/dist/unstable/persistence/RateLimiter.js +3 -3
- package/dist/unstable/persistence/RateLimiter.js.map +1 -1
- package/dist/unstable/persistence/Redis.d.ts +3 -3
- package/dist/unstable/persistence/Redis.d.ts.map +1 -1
- package/dist/unstable/persistence/Redis.js +2 -2
- package/dist/unstable/persistence/Redis.js.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.d.ts +45 -2
- package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.js +2 -2
- package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
- package/dist/unstable/reactivity/Atom.d.ts +36 -36
- package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
- package/dist/unstable/reactivity/Atom.js +9 -9
- package/dist/unstable/reactivity/Atom.js.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.d.ts +3 -3
- package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.js +2 -2
- package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.d.ts +2 -2
- package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.js +3 -3
- package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.d.ts +3 -3
- package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.js +2 -2
- package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
- package/dist/unstable/reactivity/Reactivity.d.ts +2 -2
- package/dist/unstable/reactivity/Reactivity.d.ts.map +1 -1
- package/dist/unstable/reactivity/Reactivity.js +6 -6
- package/dist/unstable/reactivity/Reactivity.js.map +1 -1
- package/dist/unstable/rpc/Rpc.d.ts +11 -11
- package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
- package/dist/unstable/rpc/Rpc.js +4 -4
- package/dist/unstable/rpc/Rpc.js.map +1 -1
- package/dist/unstable/rpc/RpcClient.d.ts +18 -8
- package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClient.js +27 -18
- package/dist/unstable/rpc/RpcClient.js.map +1 -1
- package/dist/unstable/rpc/RpcClientError.d.ts +2 -2
- package/dist/unstable/rpc/RpcGroup.d.ts +7 -7
- package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcGroup.js +20 -20
- package/dist/unstable/rpc/RpcGroup.js.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.d.ts +6 -6
- package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.js +5 -5
- package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
- package/dist/unstable/rpc/RpcSchema.d.ts +3 -3
- package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSchema.js +3 -3
- package/dist/unstable/rpc/RpcSchema.js.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.d.ts +2 -2
- package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.js +2 -2
- package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
- package/dist/unstable/rpc/RpcServer.d.ts +2 -2
- package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcServer.js +18 -18
- package/dist/unstable/rpc/RpcServer.js.map +1 -1
- package/dist/unstable/rpc/RpcWorker.d.ts +2 -2
- package/dist/unstable/rpc/RpcWorker.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcWorker.js +4 -4
- package/dist/unstable/rpc/RpcWorker.js.map +1 -1
- package/dist/unstable/rpc/Utils.d.ts +0 -3
- package/dist/unstable/rpc/Utils.d.ts.map +1 -1
- package/dist/unstable/rpc/Utils.js +2 -5
- package/dist/unstable/rpc/Utils.js.map +1 -1
- package/dist/unstable/socket/Socket.d.ts +10 -10
- package/dist/unstable/socket/Socket.d.ts.map +1 -1
- package/dist/unstable/socket/Socket.js +9 -9
- package/dist/unstable/socket/Socket.js.map +1 -1
- package/dist/unstable/socket/SocketServer.d.ts +5 -2
- package/dist/unstable/socket/SocketServer.d.ts.map +1 -1
- package/dist/unstable/socket/SocketServer.js +2 -2
- package/dist/unstable/socket/SocketServer.js.map +1 -1
- package/dist/unstable/sql/SqlClient.d.ts +5 -5
- package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
- package/dist/unstable/sql/SqlClient.js +7 -7
- package/dist/unstable/sql/SqlClient.js.map +1 -1
- package/dist/unstable/sql/SqlConnection.d.ts +2 -2
- package/dist/unstable/sql/SqlConnection.d.ts.map +1 -1
- package/dist/unstable/sql/SqlConnection.js +5 -2
- package/dist/unstable/sql/SqlConnection.js.map +1 -1
- package/dist/unstable/sql/SqlError.d.ts +12 -12
- package/dist/unstable/sql/SqlModel.d.ts +8 -9
- package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
- package/dist/unstable/sql/SqlModel.js +9 -35
- package/dist/unstable/sql/SqlModel.js.map +1 -1
- package/dist/unstable/sql/SqlResolver.js +11 -11
- package/dist/unstable/sql/SqlResolver.js.map +1 -1
- package/dist/unstable/sql/Statement.d.ts +2 -2
- package/dist/unstable/sql/Statement.d.ts.map +1 -1
- package/dist/unstable/sql/Statement.js +2 -2
- package/dist/unstable/sql/Statement.js.map +1 -1
- package/dist/unstable/workers/Transferable.d.ts +2 -2
- package/dist/unstable/workers/Transferable.d.ts.map +1 -1
- package/dist/unstable/workers/Transferable.js +6 -6
- package/dist/unstable/workers/Transferable.js.map +1 -1
- package/dist/unstable/workers/Worker.d.ts +3 -3
- package/dist/unstable/workers/Worker.d.ts.map +1 -1
- package/dist/unstable/workers/Worker.js +6 -3
- package/dist/unstable/workers/Worker.js.map +1 -1
- package/dist/unstable/workers/WorkerError.d.ts +5 -5
- package/dist/unstable/workers/WorkerRunner.d.ts +2 -2
- package/dist/unstable/workers/WorkerRunner.d.ts.map +1 -1
- package/dist/unstable/workers/WorkerRunner.js +5 -2
- package/dist/unstable/workers/WorkerRunner.js.map +1 -1
- package/dist/unstable/workflow/Activity.d.ts +7 -7
- package/dist/unstable/workflow/Activity.d.ts.map +1 -1
- package/dist/unstable/workflow/Activity.js +7 -7
- package/dist/unstable/workflow/Activity.js.map +1 -1
- package/dist/unstable/workflow/DurableClock.d.ts +0 -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.d.ts +1 -1
- package/dist/unstable/workflow/DurableDeferred.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableDeferred.js +7 -7
- package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
- package/dist/unstable/workflow/Workflow.d.ts +9 -9
- package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
- package/dist/unstable/workflow/Workflow.js +18 -18
- package/dist/unstable/workflow/Workflow.js.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.d.ts +3 -3
- package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.js +5 -5
- package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
- package/dist/unstable/workflow/WorkflowProxyServer.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowProxyServer.js +4 -4
- package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
- package/package.json +1 -1
- package/src/Cache.ts +18 -46
- package/src/Cause.ts +21 -21
- package/src/Channel.ts +120 -79
- package/src/Clock.ts +2 -2
- package/src/Config.ts +2 -2
- package/src/ConfigProvider.ts +5 -5
- package/src/Console.ts +2 -2
- package/src/{ServiceMap.ts → Context.ts} +337 -340
- package/src/DateTime.ts +2 -2
- package/src/Effect.ts +182 -184
- package/src/ErrorReporter.ts +3 -3
- package/src/ExecutionPlan.ts +8 -9
- package/src/Fiber.ts +7 -7
- package/src/FiberHandle.ts +5 -5
- package/src/FiberMap.ts +5 -5
- package/src/FiberSet.ts +5 -5
- package/src/FileSystem.ts +3 -3
- package/src/Layer.ts +333 -307
- package/src/LayerMap.ts +27 -26
- package/src/Logger.ts +3 -3
- package/src/ManagedRuntime.ts +32 -32
- package/src/Metric.ts +58 -58
- package/src/Path.ts +2 -2
- package/src/Pool.ts +5 -5
- package/src/PubSub.ts +3 -3
- package/src/Random.ts +2 -2
- package/src/RcMap.ts +14 -14
- package/src/Redactable.ts +146 -72
- package/src/References.ts +14 -14
- package/src/Request.ts +5 -5
- package/src/RequestResolver.ts +6 -7
- package/src/Resource.ts +4 -4
- package/src/Schedule.ts +2 -2
- package/src/Scheduler.ts +4 -4
- package/src/Schema.ts +837 -397
- package/src/SchemaAST.ts +5 -14
- package/src/SchemaGetter.ts +69 -11
- package/src/SchemaTransformation.ts +166 -0
- package/src/Scope.ts +2 -2
- package/src/ScopedCache.ts +5 -5
- package/src/Sink.ts +9 -9
- package/src/Stdio.ts +2 -2
- package/src/Stream.ts +234 -158
- package/src/Terminal.ts +3 -3
- package/src/Tracer.ts +17 -17
- package/src/Unify.ts +26 -2
- package/src/index.ts +82 -16
- package/src/internal/core.ts +7 -7
- package/src/internal/effect.ts +106 -106
- package/src/internal/layer.ts +7 -7
- package/src/internal/random.ts +2 -2
- package/src/internal/rcRef.ts +10 -10
- package/src/internal/references.ts +13 -13
- package/src/internal/request.ts +8 -8
- package/src/internal/schedule.ts +3 -1
- package/src/internal/schema/representation.ts +8 -1
- package/src/internal/schema/schema.ts +24 -1
- package/src/testing/TestSchema.ts +3 -3
- package/src/unstable/ai/AiError.ts +3 -2
- package/src/unstable/ai/Chat.ts +3 -3
- package/src/unstable/ai/EmbeddingModel.ts +3 -3
- package/src/unstable/ai/IdGenerator.ts +2 -2
- package/src/unstable/ai/LanguageModel.ts +2 -2
- package/src/unstable/ai/McpSchema.ts +11 -9
- package/src/unstable/ai/McpServer.ts +44 -44
- package/src/unstable/ai/Model.ts +8 -8
- package/src/unstable/ai/Prompt.ts +6 -12
- package/src/unstable/ai/Response.ts +6 -8
- package/src/unstable/ai/ResponseIdTracker.ts +2 -4
- package/src/unstable/ai/Telemetry.ts +2 -2
- package/src/unstable/ai/Tokenizer.ts +2 -2
- package/src/unstable/ai/Tool.ts +25 -25
- package/src/unstable/ai/Toolkit.ts +12 -12
- package/src/unstable/cli/Argument.ts +3 -4
- package/src/unstable/cli/CliError.ts +22 -9
- package/src/unstable/cli/CliOutput.ts +2 -2
- package/src/unstable/cli/Command.ts +36 -30
- package/src/unstable/cli/Flag.ts +3 -4
- package/src/unstable/cli/GlobalFlag.ts +3 -3
- package/src/unstable/cli/HelpDoc.ts +8 -8
- package/src/unstable/cli/Param.ts +39 -16
- package/src/unstable/cli/Prompt.ts +13 -6
- package/src/unstable/cli/internal/command.ts +7 -7
- package/src/unstable/cli/internal/parser.ts +130 -21
- package/src/unstable/cluster/ClusterSchema.ts +12 -12
- package/src/unstable/cluster/ClusterWorkflowEngine.ts +14 -15
- package/src/unstable/cluster/Entity.ts +25 -25
- package/src/unstable/cluster/EntityProxy.ts +3 -3
- package/src/unstable/cluster/EntityProxyServer.ts +4 -4
- package/src/unstable/cluster/EntityResource.ts +2 -2
- package/src/unstable/cluster/HttpRunner.ts +2 -2
- package/src/unstable/cluster/K8sHttpClient.ts +2 -2
- package/src/unstable/cluster/Message.ts +8 -8
- package/src/unstable/cluster/MessageStorage.ts +11 -11
- package/src/unstable/cluster/Reply.ts +7 -7
- package/src/unstable/cluster/RunnerHealth.ts +2 -2
- package/src/unstable/cluster/RunnerServer.ts +1 -1
- package/src/unstable/cluster/RunnerStorage.ts +9 -9
- package/src/unstable/cluster/Runners.ts +7 -7
- package/src/unstable/cluster/ShardId.ts +84 -74
- package/src/unstable/cluster/Sharding.ts +26 -26
- package/src/unstable/cluster/ShardingConfig.ts +5 -5
- package/src/unstable/cluster/Snowflake.ts +2 -2
- package/src/unstable/cluster/SqlMessageStorage.ts +1 -1
- package/src/unstable/cluster/internal/entityManager.ts +27 -23
- package/src/unstable/cluster/internal/entityReaper.ts +2 -2
- package/src/unstable/cluster/internal/resourceMap.ts +3 -3
- package/src/unstable/devtools/DevToolsClient.ts +5 -5
- package/src/unstable/eventlog/EventJournal.ts +2 -2
- package/src/unstable/eventlog/EventLog.ts +21 -21
- package/src/unstable/eventlog/EventLogEncryption.ts +2 -2
- package/src/unstable/eventlog/EventLogRemote.ts +2 -2
- package/src/unstable/eventlog/EventLogServer.ts +2 -2
- package/src/unstable/http/Etag.ts +2 -2
- package/src/unstable/http/FetchHttpClient.ts +5 -5
- package/src/unstable/http/Headers.ts +4 -4
- package/src/unstable/http/HttpClient.ts +9 -8
- package/src/unstable/http/HttpClientRequest.ts +5 -5
- package/src/unstable/http/HttpEffect.ts +35 -35
- package/src/unstable/http/HttpIncomingMessage.ts +2 -2
- package/src/unstable/http/HttpMiddleware.ts +28 -14
- package/src/unstable/http/HttpPlatform.ts +2 -2
- package/src/unstable/http/HttpRouter.ts +37 -37
- package/src/unstable/http/HttpServer.ts +2 -2
- package/src/unstable/http/HttpServerError.ts +4 -4
- package/src/unstable/http/HttpServerRequest.ts +7 -7
- package/src/unstable/http/HttpServerResponse.ts +8 -8
- package/src/unstable/http/Multipart.ts +8 -8
- package/src/unstable/httpapi/HttpApi.ts +18 -18
- package/src/unstable/httpapi/HttpApiBuilder.ts +20 -20
- package/src/unstable/httpapi/HttpApiClient.ts +4 -4
- package/src/unstable/httpapi/HttpApiEndpoint.ts +14 -14
- package/src/unstable/httpapi/HttpApiGroup.ts +16 -16
- package/src/unstable/httpapi/HttpApiMiddleware.ts +14 -14
- package/src/unstable/httpapi/HttpApiSecurity.ts +13 -13
- package/src/unstable/httpapi/OpenApi.ts +29 -31
- package/src/unstable/observability/OtlpExporter.ts +5 -5
- package/src/unstable/observability/OtlpMetrics.ts +1 -1
- package/src/unstable/observability/OtlpSerialization.ts +2 -2
- package/src/unstable/observability/OtlpTracer.ts +2 -2
- package/src/unstable/observability/PrometheusMetrics.ts +5 -5
- package/src/unstable/persistence/KeyValueStore.ts +226 -3
- package/src/unstable/persistence/PersistedCache.ts +20 -17
- package/src/unstable/persistence/PersistedQueue.ts +3 -3
- package/src/unstable/persistence/Persistence.ts +4 -4
- package/src/unstable/persistence/RateLimiter.ts +3 -3
- package/src/unstable/persistence/Redis.ts +2 -2
- package/src/unstable/process/ChildProcessSpawner.ts +46 -2
- package/src/unstable/reactivity/Atom.ts +79 -79
- package/src/unstable/reactivity/AtomHttpApi.ts +4 -4
- package/src/unstable/reactivity/AtomRegistry.ts +4 -4
- package/src/unstable/reactivity/AtomRpc.ts +4 -4
- package/src/unstable/reactivity/Reactivity.ts +6 -6
- package/src/unstable/rpc/Rpc.ts +17 -17
- package/src/unstable/rpc/RpcClient.ts +44 -30
- package/src/unstable/rpc/RpcGroup.ts +30 -30
- package/src/unstable/rpc/RpcMiddleware.ts +14 -14
- package/src/unstable/rpc/RpcSchema.ts +4 -4
- package/src/unstable/rpc/RpcSerialization.ts +2 -2
- package/src/unstable/rpc/RpcServer.ts +19 -19
- package/src/unstable/rpc/RpcWorker.ts +5 -5
- package/src/unstable/rpc/Utils.ts +4 -4
- package/src/unstable/socket/Socket.ts +9 -9
- package/src/unstable/socket/SocketServer.ts +2 -2
- package/src/unstable/sql/SqlClient.ts +11 -11
- package/src/unstable/sql/SqlConnection.ts +2 -2
- package/src/unstable/sql/SqlModel.ts +54 -82
- package/src/unstable/sql/SqlResolver.ts +11 -11
- package/src/unstable/sql/Statement.ts +2 -2
- package/src/unstable/workers/Transferable.ts +6 -6
- package/src/unstable/workers/Worker.ts +4 -4
- package/src/unstable/workers/WorkerRunner.ts +2 -2
- package/src/unstable/workflow/Activity.ts +14 -14
- package/src/unstable/workflow/DurableClock.ts +3 -3
- package/src/unstable/workflow/DurableDeferred.ts +8 -8
- package/src/unstable/workflow/Workflow.ts +23 -23
- package/src/unstable/workflow/WorkflowEngine.ts +6 -6
- package/src/unstable/workflow/WorkflowProxyServer.ts +4 -4
- package/dist/ServiceMap.d.ts +0 -1150
- package/dist/ServiceMap.d.ts.map +0 -1
- package/dist/ServiceMap.js.map +0 -1
package/src/unstable/ai/Tool.ts
CHANGED
|
@@ -26,6 +26,7 @@
|
|
|
26
26
|
*
|
|
27
27
|
* @since 1.0.0
|
|
28
28
|
*/
|
|
29
|
+
import * as Context from "../../Context.ts"
|
|
29
30
|
import type * as Effect from "../../Effect.ts"
|
|
30
31
|
import { constFalse, constTrue, identity } from "../../Function.ts"
|
|
31
32
|
import type * as JsonSchema from "../../JsonSchema.ts"
|
|
@@ -33,7 +34,6 @@ import { pipeArguments } from "../../Pipeable.ts"
|
|
|
33
34
|
import * as Predicate from "../../Predicate.ts"
|
|
34
35
|
import * as Schema from "../../Schema.ts"
|
|
35
36
|
import * as AST from "../../SchemaAST.ts"
|
|
36
|
-
import * as ServiceMap from "../../ServiceMap.ts"
|
|
37
37
|
import type * as Struct from "../../Struct.ts"
|
|
38
38
|
import type * as Types from "../../Types.ts"
|
|
39
39
|
import type * as AiError from "./AiError.ts"
|
|
@@ -232,10 +232,10 @@ export interface Tool<
|
|
|
232
232
|
readonly failureSchema: Config["failure"]
|
|
233
233
|
|
|
234
234
|
/**
|
|
235
|
-
* A `
|
|
235
|
+
* A `Context` containing tool annotations which can store metadata about
|
|
236
236
|
* the tool.
|
|
237
237
|
*/
|
|
238
|
-
readonly annotations:
|
|
238
|
+
readonly annotations: Context.Context<never>
|
|
239
239
|
|
|
240
240
|
/**
|
|
241
241
|
* Specifies whether user approval is required before executing this tool.
|
|
@@ -257,7 +257,7 @@ export interface Tool<
|
|
|
257
257
|
* instead of being provided when creating the tool call handler layer.
|
|
258
258
|
*/
|
|
259
259
|
addDependency<Identifier, Service>(
|
|
260
|
-
tag:
|
|
260
|
+
tag: Context.Key<Identifier, Service>
|
|
261
261
|
): Tool<Name, Config, Identifier | Requirements>
|
|
262
262
|
|
|
263
263
|
/**
|
|
@@ -311,12 +311,12 @@ export interface Tool<
|
|
|
311
311
|
/**
|
|
312
312
|
* Add an annotation to the tool.
|
|
313
313
|
*/
|
|
314
|
-
annotate<I, S>(tag:
|
|
314
|
+
annotate<I, S>(tag: Context.Key<I, S>, value: S): Tool<Name, Config, Requirements>
|
|
315
315
|
|
|
316
316
|
/**
|
|
317
317
|
* Add many annotations to the tool.
|
|
318
318
|
*/
|
|
319
|
-
annotateMerge<I>(context:
|
|
319
|
+
annotateMerge<I>(context: Context.Context<I>): Tool<Name, Config, Requirements>
|
|
320
320
|
}
|
|
321
321
|
|
|
322
322
|
/**
|
|
@@ -893,7 +893,7 @@ export type ResultDecodingServices<T> = T extends Tool<
|
|
|
893
893
|
export interface Handler<Name extends string> {
|
|
894
894
|
readonly _: unique symbol
|
|
895
895
|
readonly name: Name
|
|
896
|
-
readonly
|
|
896
|
+
readonly context: Context.Context<never>
|
|
897
897
|
readonly handler: (params: any, ctx: any) => Effect.Effect<any, any>
|
|
898
898
|
}
|
|
899
899
|
|
|
@@ -1006,16 +1006,16 @@ const Proto = {
|
|
|
1006
1006
|
setFailure(this: Any, failureSchema: Schema.Top) {
|
|
1007
1007
|
return userDefinedProto({ ...this, failureSchema })
|
|
1008
1008
|
},
|
|
1009
|
-
annotate<I, S>(this: Any, tag:
|
|
1009
|
+
annotate<I, S>(this: Any, tag: Context.Key<I, S>, value: S) {
|
|
1010
1010
|
return userDefinedProto({
|
|
1011
1011
|
...this,
|
|
1012
|
-
annotations:
|
|
1012
|
+
annotations: Context.add(this.annotations, tag, value)
|
|
1013
1013
|
})
|
|
1014
1014
|
},
|
|
1015
|
-
annotateMerge<I>(this: Any, context:
|
|
1015
|
+
annotateMerge<I>(this: Any, context: Context.Context<I>) {
|
|
1016
1016
|
return userDefinedProto({
|
|
1017
1017
|
...this,
|
|
1018
|
-
annotations:
|
|
1018
|
+
annotations: Context.merge(this.annotations, context)
|
|
1019
1019
|
})
|
|
1020
1020
|
}
|
|
1021
1021
|
}
|
|
@@ -1042,7 +1042,7 @@ const userDefinedProto = <
|
|
|
1042
1042
|
readonly parametersSchema: Parameters
|
|
1043
1043
|
readonly successSchema: Success
|
|
1044
1044
|
readonly failureSchema: Failure
|
|
1045
|
-
readonly annotations:
|
|
1045
|
+
readonly annotations: Context.Context<never>
|
|
1046
1046
|
readonly failureMode: Mode
|
|
1047
1047
|
readonly needsApproval?: NeedsApproval<Parameters> | undefined
|
|
1048
1048
|
}): Tool<
|
|
@@ -1104,7 +1104,7 @@ const dynamicProto = <
|
|
|
1104
1104
|
readonly parametersSchema: Parameters
|
|
1105
1105
|
readonly successSchema: Success
|
|
1106
1106
|
readonly failureSchema: Failure
|
|
1107
|
-
readonly annotations:
|
|
1107
|
+
readonly annotations: Context.Context<never>
|
|
1108
1108
|
readonly failureMode: Mode
|
|
1109
1109
|
readonly needsApproval?: NeedsApproval<any> | undefined
|
|
1110
1110
|
readonly jsonSchema: JsonSchema.JsonSchema | undefined
|
|
@@ -1153,7 +1153,7 @@ export const make = <
|
|
|
1153
1153
|
Success extends Schema.Top = typeof Schema.Void,
|
|
1154
1154
|
Failure extends Schema.Top = typeof Schema.Never,
|
|
1155
1155
|
Mode extends FailureMode | undefined = undefined,
|
|
1156
|
-
Dependencies extends Array<
|
|
1156
|
+
Dependencies extends Array<Context.Key<any, any> | Context.Key<never, any>> = []
|
|
1157
1157
|
>(name: Name, options?: {
|
|
1158
1158
|
/**
|
|
1159
1159
|
* An optional description explaining what the tool does.
|
|
@@ -1203,7 +1203,7 @@ export const make = <
|
|
|
1203
1203
|
readonly failure: Failure
|
|
1204
1204
|
readonly failureMode: Mode extends undefined ? "error" : Mode
|
|
1205
1205
|
},
|
|
1206
|
-
|
|
1206
|
+
Context.Service.Identifier<Dependencies[number]>
|
|
1207
1207
|
> => {
|
|
1208
1208
|
const successSchema = options?.success ?? Schema.Void
|
|
1209
1209
|
const failureSchema = options?.failure ?? Schema.Never
|
|
@@ -1214,7 +1214,7 @@ export const make = <
|
|
|
1214
1214
|
successSchema,
|
|
1215
1215
|
failureSchema,
|
|
1216
1216
|
failureMode: options?.failureMode ?? "error",
|
|
1217
|
-
annotations:
|
|
1217
|
+
annotations: Context.empty(),
|
|
1218
1218
|
needsApproval: options?.needsApproval as any
|
|
1219
1219
|
}) as any
|
|
1220
1220
|
}
|
|
@@ -1344,7 +1344,7 @@ export const dynamic: {
|
|
|
1344
1344
|
successSchema,
|
|
1345
1345
|
failureSchema,
|
|
1346
1346
|
failureMode: options?.failureMode ?? "error",
|
|
1347
|
-
annotations:
|
|
1347
|
+
annotations: Context.empty(),
|
|
1348
1348
|
needsApproval: options?.needsApproval,
|
|
1349
1349
|
jsonSchema
|
|
1350
1350
|
})
|
|
@@ -1653,7 +1653,7 @@ export const getJsonSchemaFromSchema = <S extends Schema.Top>(schema: S, options
|
|
|
1653
1653
|
* @since 1.0.0
|
|
1654
1654
|
* @category annotations
|
|
1655
1655
|
*/
|
|
1656
|
-
export class Title extends
|
|
1656
|
+
export class Title extends Context.Service<Title, string>()("effect/ai/Tool/Title") {}
|
|
1657
1657
|
|
|
1658
1658
|
/**
|
|
1659
1659
|
* Annotation for providing tool metadata for MCP.
|
|
@@ -1668,7 +1668,7 @@ export class Title extends ServiceMap.Service<Title, string>()("effect/ai/Tool/T
|
|
|
1668
1668
|
* @since 1.0.0
|
|
1669
1669
|
* @category annotations
|
|
1670
1670
|
*/
|
|
1671
|
-
export class Meta extends
|
|
1671
|
+
export class Meta extends Context.Service<Meta, Record<string, unknown>>()("effect/ai/Tool/Meta") {}
|
|
1672
1672
|
|
|
1673
1673
|
/**
|
|
1674
1674
|
* Annotation indicating whether a tool only reads data without making changes.
|
|
@@ -1684,7 +1684,7 @@ export class Meta extends ServiceMap.Service<Meta, Record<string, unknown>>()("e
|
|
|
1684
1684
|
* @since 1.0.0
|
|
1685
1685
|
* @category annotations
|
|
1686
1686
|
*/
|
|
1687
|
-
export const Readonly =
|
|
1687
|
+
export const Readonly = Context.Reference<boolean>("effect/ai/Tool/Readonly", {
|
|
1688
1688
|
defaultValue: constFalse
|
|
1689
1689
|
})
|
|
1690
1690
|
|
|
@@ -1702,7 +1702,7 @@ export const Readonly = ServiceMap.Reference<boolean>("effect/ai/Tool/Readonly",
|
|
|
1702
1702
|
* @since 1.0.0
|
|
1703
1703
|
* @category annotations
|
|
1704
1704
|
*/
|
|
1705
|
-
export const Destructive =
|
|
1705
|
+
export const Destructive = Context.Reference<boolean>("effect/ai/Tool/Destructive", {
|
|
1706
1706
|
defaultValue: constTrue
|
|
1707
1707
|
})
|
|
1708
1708
|
|
|
@@ -1720,7 +1720,7 @@ export const Destructive = ServiceMap.Reference<boolean>("effect/ai/Tool/Destruc
|
|
|
1720
1720
|
* @since 1.0.0
|
|
1721
1721
|
* @category annotations
|
|
1722
1722
|
*/
|
|
1723
|
-
export const Idempotent =
|
|
1723
|
+
export const Idempotent = Context.Reference<boolean>("effect/ai/Tool/Idempotent", {
|
|
1724
1724
|
defaultValue: constFalse
|
|
1725
1725
|
})
|
|
1726
1726
|
|
|
@@ -1738,7 +1738,7 @@ export const Idempotent = ServiceMap.Reference<boolean>("effect/ai/Tool/Idempote
|
|
|
1738
1738
|
* @since 1.0.0
|
|
1739
1739
|
* @category annotations
|
|
1740
1740
|
*/
|
|
1741
|
-
export const OpenWorld =
|
|
1741
|
+
export const OpenWorld = Context.Reference<boolean>("effect/ai/Tool/OpenWorld", {
|
|
1742
1742
|
defaultValue: constTrue
|
|
1743
1743
|
})
|
|
1744
1744
|
|
|
@@ -1764,7 +1764,7 @@ export const OpenWorld = ServiceMap.Reference<boolean>("effect/ai/Tool/OpenWorld
|
|
|
1764
1764
|
* @since 1.0.0
|
|
1765
1765
|
* @category annotations
|
|
1766
1766
|
*/
|
|
1767
|
-
export const Strict =
|
|
1767
|
+
export const Strict = Context.Reference<boolean | undefined>("effect/ai/Tool/Strict", {
|
|
1768
1768
|
defaultValue: () => undefined
|
|
1769
1769
|
})
|
|
1770
1770
|
|
|
@@ -1774,7 +1774,7 @@ export const Strict = ServiceMap.Reference<boolean | undefined>("effect/ai/Tool/
|
|
|
1774
1774
|
* @since 1.0.0
|
|
1775
1775
|
* @category utilities
|
|
1776
1776
|
*/
|
|
1777
|
-
export const getStrictMode = <T extends Any>(tool: T): boolean | undefined =>
|
|
1777
|
+
export const getStrictMode = <T extends Any>(tool: T): boolean | undefined => Context.get(tool.annotations, Strict)
|
|
1778
1778
|
|
|
1779
1779
|
// Licensed under BSD-3-Clause (below code only)
|
|
1780
1780
|
// Code adapted from https://github.com/fastify/secure-json-parse/blob/783fcb1b5434709466759847cec974381939673a/index.js
|
|
@@ -39,6 +39,7 @@
|
|
|
39
39
|
* @since 1.0.0
|
|
40
40
|
*/
|
|
41
41
|
import type * as Cause from "../../Cause.ts"
|
|
42
|
+
import * as Context from "../../Context.ts"
|
|
42
43
|
import * as Effect from "../../Effect.ts"
|
|
43
44
|
import * as Fiber from "../../Fiber.ts"
|
|
44
45
|
import { identity } from "../../Function.ts"
|
|
@@ -50,7 +51,6 @@ import * as Predicate from "../../Predicate.ts"
|
|
|
50
51
|
import * as Queue from "../../Queue.ts"
|
|
51
52
|
import * as Schema from "../../Schema.ts"
|
|
52
53
|
import type * as Scope from "../../Scope.ts"
|
|
53
|
-
import * as ServiceMap from "../../ServiceMap.ts"
|
|
54
54
|
import * as Stream from "../../Stream.ts"
|
|
55
55
|
import * as AiError from "./AiError.ts"
|
|
56
56
|
import type * as Tool from "./Tool.ts"
|
|
@@ -122,12 +122,12 @@ export interface Toolkit<in out Tools extends Record<string, Tool.Any>> extends
|
|
|
122
122
|
of<Handlers extends HandlersFrom<Tools>>(handlers: Handlers): Handlers
|
|
123
123
|
|
|
124
124
|
/**
|
|
125
|
-
* Converts a toolkit into a `
|
|
125
|
+
* Converts a toolkit into a `Context` containing handlers for each tool
|
|
126
126
|
* in the toolkit.
|
|
127
127
|
*/
|
|
128
128
|
toHandlers<Handlers extends HandlersFrom<Tools>, EX = never, RX = never>(
|
|
129
129
|
build: Handlers | Effect.Effect<Handlers, EX, RX>
|
|
130
|
-
): Effect.Effect<
|
|
130
|
+
): Effect.Effect<Context.Context<Tool.HandlersFor<Tools>>, EX, RX>
|
|
131
131
|
|
|
132
132
|
/**
|
|
133
133
|
* Converts a toolkit into a `Layer` containing handlers for each tool in the
|
|
@@ -266,30 +266,30 @@ const Proto = {
|
|
|
266
266
|
build: Record<string, (params: any) => any> | Effect.Effect<Record<string, (params: any) => any>>
|
|
267
267
|
) {
|
|
268
268
|
return Effect.gen({ self: this }, function*() {
|
|
269
|
-
const services = yield* Effect.
|
|
269
|
+
const services = yield* Effect.context<never>()
|
|
270
270
|
const handlers = Effect.isEffect(build) ? yield* build : build
|
|
271
|
-
const
|
|
271
|
+
const context = new Map<string, unknown>()
|
|
272
272
|
for (const [name, handler] of Object.entries(handlers)) {
|
|
273
273
|
const tool = this.tools[name]!
|
|
274
|
-
|
|
274
|
+
context.set(tool.id, { name, handler, context: services })
|
|
275
275
|
}
|
|
276
|
-
return
|
|
276
|
+
return Context.makeUnsafe(context)
|
|
277
277
|
})
|
|
278
278
|
},
|
|
279
279
|
toLayer(
|
|
280
280
|
this: Toolkit<Record<string, Tool.Any>>,
|
|
281
281
|
build: Record<string, (params: any) => any> | Effect.Effect<Record<string, (params: any) => any>>
|
|
282
282
|
) {
|
|
283
|
-
return Layer.
|
|
283
|
+
return Layer.effectContext(this.toHandlers(build))
|
|
284
284
|
},
|
|
285
285
|
asEffect(this: Toolkit<Record<string, Tool.Any>>) {
|
|
286
286
|
return Effect.gen({ self: this }, function*() {
|
|
287
287
|
const tools = this.tools
|
|
288
288
|
|
|
289
|
-
const services = yield* Effect.
|
|
289
|
+
const services = yield* Effect.context<never>()
|
|
290
290
|
|
|
291
291
|
const schemasCache = new WeakMap<any, {
|
|
292
|
-
readonly
|
|
292
|
+
readonly context: Context.Context<never>
|
|
293
293
|
readonly handler: Tool.Handler<any>["handler"]
|
|
294
294
|
readonly decodeParameters: (u: unknown) => Effect.Effect<unknown, Schema.SchemaError>
|
|
295
295
|
readonly decodeResult: (u: unknown) => Effect.Effect<unknown, Schema.SchemaError>
|
|
@@ -309,7 +309,7 @@ const Proto = {
|
|
|
309
309
|
const decodeResult = Schema.decodeUnknownEffect(resultSchema) as any
|
|
310
310
|
const encodeResult = Schema.encodeUnknownEffect(resultSchema) as any
|
|
311
311
|
schemas = {
|
|
312
|
-
|
|
312
|
+
context: handler.context,
|
|
313
313
|
handler: handler.handler,
|
|
314
314
|
decodeParameters,
|
|
315
315
|
decodeResult,
|
|
@@ -375,7 +375,7 @@ const Proto = {
|
|
|
375
375
|
|
|
376
376
|
const fiber = yield* schemas.handler(decodedParams, context).pipe(
|
|
377
377
|
Effect.flatMap((result) => Queue.offer(queue, { result, isFailure: false, preliminary: false })),
|
|
378
|
-
Effect.
|
|
378
|
+
Effect.updateContext((input) => Context.merge(schemas.context, input)),
|
|
379
379
|
Effect.matchCauseEffect({
|
|
380
380
|
onFailure: (cause) => Queue.failCause(queue, cause),
|
|
381
381
|
onSuccess: () => Queue.end(queue)
|
|
@@ -11,7 +11,6 @@ import type * as Schema from "../../Schema.ts"
|
|
|
11
11
|
import type * as CliError from "./CliError.ts"
|
|
12
12
|
import * as Param from "./Param.ts"
|
|
13
13
|
import type * as Primitive from "./Primitive.ts"
|
|
14
|
-
import type * as Prompt from "./Prompt.ts"
|
|
15
14
|
|
|
16
15
|
// -------------------------------------------------------------------------------------
|
|
17
16
|
// models
|
|
@@ -454,7 +453,7 @@ export const withFallbackPrompt: {
|
|
|
454
453
|
* @since 4.0.0
|
|
455
454
|
* @category combinators
|
|
456
455
|
*/
|
|
457
|
-
<B>(prompt:
|
|
456
|
+
<B>(prompt: Param.FallbackPrompt<B>): <A>(self: Argument<A>) => Argument<A | B>
|
|
458
457
|
/**
|
|
459
458
|
* Adds a fallback prompt that is shown when a required argument is missing.
|
|
460
459
|
*
|
|
@@ -470,8 +469,8 @@ export const withFallbackPrompt: {
|
|
|
470
469
|
* @since 4.0.0
|
|
471
470
|
* @category combinators
|
|
472
471
|
*/
|
|
473
|
-
<A, B>(self: Argument<A>, prompt:
|
|
474
|
-
} = dual(2, <A, B>(self: Argument<A>, prompt:
|
|
472
|
+
<A, B>(self: Argument<A>, prompt: Param.FallbackPrompt<B>): Argument<A | B>
|
|
473
|
+
} = dual(2, <A, B>(self: Argument<A>, prompt: Param.FallbackPrompt<B>) => Param.withFallbackPrompt(self, prompt))
|
|
475
474
|
|
|
476
475
|
/**
|
|
477
476
|
* Creates a variadic positional argument that accepts multiple values.
|
|
@@ -115,7 +115,7 @@ export type CliError =
|
|
|
115
115
|
* @since 4.0.0
|
|
116
116
|
* @category models
|
|
117
117
|
*/
|
|
118
|
-
export class UnrecognizedOption extends Schema.ErrorClass(`${TypeId}/UnrecognizedOption`)({
|
|
118
|
+
export class UnrecognizedOption extends Schema.ErrorClass<UnrecognizedOption>(`${TypeId}/UnrecognizedOption`)({
|
|
119
119
|
_tag: Schema.tag("UnrecognizedOption"),
|
|
120
120
|
option: Schema.String,
|
|
121
121
|
command: Schema.optional(Schema.Array(Schema.String)),
|
|
@@ -161,7 +161,7 @@ export class UnrecognizedOption extends Schema.ErrorClass(`${TypeId}/Unrecognize
|
|
|
161
161
|
* @since 4.0.0
|
|
162
162
|
* @category models
|
|
163
163
|
*/
|
|
164
|
-
export class DuplicateOption extends Schema.ErrorClass(`${TypeId}/DuplicateOption`)({
|
|
164
|
+
export class DuplicateOption extends Schema.ErrorClass<DuplicateOption>(`${TypeId}/DuplicateOption`)({
|
|
165
165
|
_tag: Schema.tag("DuplicateOption"),
|
|
166
166
|
option: Schema.String,
|
|
167
167
|
parentCommand: Schema.String,
|
|
@@ -210,7 +210,7 @@ export class DuplicateOption extends Schema.ErrorClass(`${TypeId}/DuplicateOptio
|
|
|
210
210
|
* @since 4.0.0
|
|
211
211
|
* @category models
|
|
212
212
|
*/
|
|
213
|
-
export class MissingOption extends Schema.ErrorClass(`${TypeId}/MissingOption`)({
|
|
213
|
+
export class MissingOption extends Schema.ErrorClass<MissingOption>(`${TypeId}/MissingOption`)({
|
|
214
214
|
_tag: Schema.tag("MissingOption"),
|
|
215
215
|
option: Schema.String
|
|
216
216
|
}) {
|
|
@@ -255,7 +255,7 @@ export class MissingOption extends Schema.ErrorClass(`${TypeId}/MissingOption`)(
|
|
|
255
255
|
* @since 4.0.0
|
|
256
256
|
* @category models
|
|
257
257
|
*/
|
|
258
|
-
export class MissingArgument extends Schema.ErrorClass(`${TypeId}/MissingArgument`)({
|
|
258
|
+
export class MissingArgument extends Schema.ErrorClass<MissingArgument>(`${TypeId}/MissingArgument`)({
|
|
259
259
|
_tag: Schema.tag("MissingArgument"),
|
|
260
260
|
argument: Schema.String
|
|
261
261
|
}) {
|
|
@@ -305,7 +305,7 @@ export class MissingArgument extends Schema.ErrorClass(`${TypeId}/MissingArgumen
|
|
|
305
305
|
* @since 4.0.0
|
|
306
306
|
* @category models
|
|
307
307
|
*/
|
|
308
|
-
export class InvalidValue extends Schema.ErrorClass(`${TypeId}/InvalidValue`)({
|
|
308
|
+
export class InvalidValue extends Schema.ErrorClass<InvalidValue>(`${TypeId}/InvalidValue`)({
|
|
309
309
|
_tag: Schema.tag("InvalidValue"),
|
|
310
310
|
option: Schema.String,
|
|
311
311
|
value: Schema.String,
|
|
@@ -363,7 +363,7 @@ export class InvalidValue extends Schema.ErrorClass(`${TypeId}/InvalidValue`)({
|
|
|
363
363
|
* @since 4.0.0
|
|
364
364
|
* @category models
|
|
365
365
|
*/
|
|
366
|
-
export class UnknownSubcommand extends Schema.ErrorClass(`${TypeId}/UnknownSubcommand`)({
|
|
366
|
+
export class UnknownSubcommand extends Schema.ErrorClass<UnknownSubcommand>(`${TypeId}/UnknownSubcommand`)({
|
|
367
367
|
_tag: Schema.tag("UnknownSubcommand"),
|
|
368
368
|
subcommand: Schema.String,
|
|
369
369
|
parent: Schema.optional(Schema.Array(Schema.String)),
|
|
@@ -422,7 +422,7 @@ export class UnknownSubcommand extends Schema.ErrorClass(`${TypeId}/UnknownSubco
|
|
|
422
422
|
* @since 4.0.0
|
|
423
423
|
* @category models
|
|
424
424
|
*/
|
|
425
|
-
export class UserError extends Schema.ErrorClass(`${TypeId}/UserError`)({
|
|
425
|
+
export class UserError extends Schema.ErrorClass<UserError>(`${TypeId}/UserError`)({
|
|
426
426
|
_tag: Schema.tag("UserError"),
|
|
427
427
|
cause: Schema.Defect
|
|
428
428
|
}) {
|
|
@@ -432,7 +432,14 @@ export class UserError extends Schema.ErrorClass(`${TypeId}/UserError`)({
|
|
|
432
432
|
readonly [TypeId] = TypeId
|
|
433
433
|
}
|
|
434
434
|
|
|
435
|
-
|
|
435
|
+
/**
|
|
436
|
+
* Represents errors that should not trigger the display of the CLI's help
|
|
437
|
+
* documentation.
|
|
438
|
+
*
|
|
439
|
+
* @since 4.0.0
|
|
440
|
+
* @category models
|
|
441
|
+
*/
|
|
442
|
+
export const NonShowHelpErrors: Schema.Union<
|
|
436
443
|
readonly [
|
|
437
444
|
typeof UnrecognizedOption,
|
|
438
445
|
typeof DuplicateOption,
|
|
@@ -452,6 +459,12 @@ const NonShowHelpErrors: Schema.Union<
|
|
|
452
459
|
UserError
|
|
453
460
|
])
|
|
454
461
|
|
|
462
|
+
/**
|
|
463
|
+
* @since 4.0.0
|
|
464
|
+
* @category models
|
|
465
|
+
*/
|
|
466
|
+
export type NonShowHelpErrors = typeof NonShowHelpErrors.Type
|
|
467
|
+
|
|
455
468
|
/**
|
|
456
469
|
* Control flow indicator when help is requested via --help flag.
|
|
457
470
|
* This is not an error but uses the error channel for control flow.
|
|
@@ -459,7 +472,7 @@ const NonShowHelpErrors: Schema.Union<
|
|
|
459
472
|
* @since 4.0.0
|
|
460
473
|
* @category models
|
|
461
474
|
*/
|
|
462
|
-
export class ShowHelp extends Schema.ErrorClass(`${TypeId}/ShowHelp`)({
|
|
475
|
+
export class ShowHelp extends Schema.ErrorClass<ShowHelp>(`${TypeId}/ShowHelp`)({
|
|
463
476
|
_tag: Schema.tag("ShowHelp"),
|
|
464
477
|
commandPath: Schema.Array(Schema.String),
|
|
465
478
|
errors: Schema.Array(NonShowHelpErrors)
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
* @since 4.0.0
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
|
+
import * as Context from "../../Context.ts"
|
|
5
6
|
import * as Layer from "../../Layer.ts"
|
|
6
7
|
import * as Option from "../../Option.ts"
|
|
7
|
-
import * as ServiceMap from "../../ServiceMap.ts"
|
|
8
8
|
import type * as CliError from "./CliError.ts"
|
|
9
9
|
import type { HelpDoc } from "./HelpDoc.ts"
|
|
10
10
|
|
|
@@ -210,7 +210,7 @@ export interface Formatter {
|
|
|
210
210
|
* @since 4.0.0
|
|
211
211
|
* @category services
|
|
212
212
|
*/
|
|
213
|
-
export const Formatter:
|
|
213
|
+
export const Formatter: Context.Reference<Formatter> = Context.Reference(
|
|
214
214
|
"effect/cli/CliOutput",
|
|
215
215
|
{ defaultValue: () => defaultFormatter() }
|
|
216
216
|
)
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import type { NonEmptyArray, NonEmptyReadonlyArray } from "../../Array.ts"
|
|
5
5
|
import * as Console from "../../Console.ts"
|
|
6
|
+
import * as Context from "../../Context.ts"
|
|
6
7
|
import * as Effect from "../../Effect.ts"
|
|
7
8
|
import type * as FileSystem from "../../FileSystem.ts"
|
|
8
9
|
import { dual } from "../../Function.ts"
|
|
@@ -13,7 +14,6 @@ import type { Pipeable } from "../../Pipeable.ts"
|
|
|
13
14
|
import * as Predicate from "../../Predicate.ts"
|
|
14
15
|
import * as References from "../../References.ts"
|
|
15
16
|
import * as Result from "../../Result.ts"
|
|
16
|
-
import * as ServiceMap from "../../ServiceMap.ts"
|
|
17
17
|
import * as Stdio from "../../Stdio.ts"
|
|
18
18
|
import * as Terminal from "../../Terminal.ts"
|
|
19
19
|
import type { NoInfer, Simplify } from "../../Types.ts"
|
|
@@ -125,7 +125,7 @@ export interface Command<Name extends string, Input, ContextInput = {}, E = neve
|
|
|
125
125
|
/**
|
|
126
126
|
* Custom annotations associated with this command.
|
|
127
127
|
*/
|
|
128
|
-
readonly annotations:
|
|
128
|
+
readonly annotations: Context.Context<never>
|
|
129
129
|
}
|
|
130
130
|
|
|
131
131
|
/**
|
|
@@ -359,7 +359,7 @@ export interface CommandContext<Name extends string> {
|
|
|
359
359
|
export interface ParsedTokens {
|
|
360
360
|
readonly flags: Record<string, ReadonlyArray<string>>
|
|
361
361
|
readonly arguments: ReadonlyArray<string>
|
|
362
|
-
readonly errors?: ReadonlyArray<CliError.
|
|
362
|
+
readonly errors?: ReadonlyArray<CliError.NonShowHelpErrors>
|
|
363
363
|
readonly subcommand: Option.Option<{
|
|
364
364
|
readonly name: string
|
|
365
365
|
readonly parsedInput: ParsedTokens
|
|
@@ -1091,7 +1091,7 @@ export const withSharedFlags: {
|
|
|
1091
1091
|
annotations: impl.annotations,
|
|
1092
1092
|
globalFlags: impl.globalFlags,
|
|
1093
1093
|
examples: impl.examples,
|
|
1094
|
-
service: impl.service as
|
|
1094
|
+
service: impl.service as Context.Key<CommandContext<Name>, NextContextInput>,
|
|
1095
1095
|
subcommands: impl.subcommands,
|
|
1096
1096
|
parse,
|
|
1097
1097
|
parseContext,
|
|
@@ -1339,7 +1339,7 @@ export const annotate: {
|
|
|
1339
1339
|
* @since 4.0.0
|
|
1340
1340
|
* @category combinators
|
|
1341
1341
|
*/
|
|
1342
|
-
<I, S>(service:
|
|
1342
|
+
<I, S>(service: Context.Key<I, S>, value: NoInfer<S>): <Name extends string, Input, E, R, ContextInput>(
|
|
1343
1343
|
self: Command<Name, Input, ContextInput, E, R>
|
|
1344
1344
|
) => Command<Name, Input, ContextInput, E, R>
|
|
1345
1345
|
/**
|
|
@@ -1350,50 +1350,50 @@ export const annotate: {
|
|
|
1350
1350
|
*/
|
|
1351
1351
|
<Name extends string, Input, E, R, ContextInput, I, S>(
|
|
1352
1352
|
self: Command<Name, Input, ContextInput, E, R>,
|
|
1353
|
-
service:
|
|
1353
|
+
service: Context.Key<I, S>,
|
|
1354
1354
|
value: NoInfer<S>
|
|
1355
1355
|
): Command<Name, Input, ContextInput, E, R>
|
|
1356
1356
|
} = dual(3, <Name extends string, Input, E, R, ContextInput, I, S>(
|
|
1357
1357
|
self: Command<Name, Input, ContextInput, E, R>,
|
|
1358
|
-
service:
|
|
1358
|
+
service: Context.Key<I, S>,
|
|
1359
1359
|
value: NoInfer<S>
|
|
1360
1360
|
) => {
|
|
1361
1361
|
const impl = toImpl(self)
|
|
1362
|
-
return makeCommand({ ...impl, annotations:
|
|
1362
|
+
return makeCommand({ ...impl, annotations: Context.add(impl.annotations, service, value) })
|
|
1363
1363
|
})
|
|
1364
1364
|
|
|
1365
1365
|
/**
|
|
1366
|
-
* Merges a
|
|
1366
|
+
* Merges a Context of annotations into a command.
|
|
1367
1367
|
*
|
|
1368
1368
|
* @since 4.0.0
|
|
1369
1369
|
* @category combinators
|
|
1370
1370
|
*/
|
|
1371
1371
|
export const annotateMerge: {
|
|
1372
1372
|
/**
|
|
1373
|
-
* Merges a
|
|
1373
|
+
* Merges a Context of annotations into a command.
|
|
1374
1374
|
*
|
|
1375
1375
|
* @since 4.0.0
|
|
1376
1376
|
* @category combinators
|
|
1377
1377
|
*/
|
|
1378
|
-
<I>(annotations:
|
|
1378
|
+
<I>(annotations: Context.Context<I>): <Name extends string, Input, E, R, ContextInput>(
|
|
1379
1379
|
self: Command<Name, Input, ContextInput, E, R>
|
|
1380
1380
|
) => Command<Name, Input, ContextInput, E, R>
|
|
1381
1381
|
/**
|
|
1382
|
-
* Merges a
|
|
1382
|
+
* Merges a Context of annotations into a command.
|
|
1383
1383
|
*
|
|
1384
1384
|
* @since 4.0.0
|
|
1385
1385
|
* @category combinators
|
|
1386
1386
|
*/
|
|
1387
1387
|
<Name extends string, Input, E, R, ContextInput, I>(
|
|
1388
1388
|
self: Command<Name, Input, ContextInput, E, R>,
|
|
1389
|
-
annotations:
|
|
1389
|
+
annotations: Context.Context<I>
|
|
1390
1390
|
): Command<Name, Input, ContextInput, E, R>
|
|
1391
1391
|
} = dual(2, <Name extends string, Input, E, R, ContextInput, I>(
|
|
1392
1392
|
self: Command<Name, Input, ContextInput, E, R>,
|
|
1393
|
-
annotations:
|
|
1393
|
+
annotations: Context.Context<I>
|
|
1394
1394
|
) => {
|
|
1395
1395
|
const impl = toImpl(self)
|
|
1396
|
-
return makeCommand({ ...impl, annotations:
|
|
1396
|
+
return makeCommand({ ...impl, annotations: Context.merge(impl.annotations, annotations) })
|
|
1397
1397
|
})
|
|
1398
1398
|
|
|
1399
1399
|
/**
|
|
@@ -1634,7 +1634,7 @@ export const provideSync: {
|
|
|
1634
1634
|
* @since 4.0.0
|
|
1635
1635
|
* @category providing services
|
|
1636
1636
|
*/
|
|
1637
|
-
<I, S, Input>(service:
|
|
1637
|
+
<I, S, Input>(service: Context.Key<I, S>, implementation: S | ((input: Input) => S)): <const Name extends string, E, R, ContextInput>(
|
|
1638
1638
|
self: Command<Name, Input, ContextInput, E, R>
|
|
1639
1639
|
) => Command<Name, Input, ContextInput, E, Exclude<R, I>>
|
|
1640
1640
|
/**
|
|
@@ -1646,12 +1646,12 @@ export const provideSync: {
|
|
|
1646
1646
|
*/
|
|
1647
1647
|
<const Name extends string, Input, E, R, ContextInput, I, S>(
|
|
1648
1648
|
self: Command<Name, Input, ContextInput, E, R>,
|
|
1649
|
-
service:
|
|
1649
|
+
service: Context.Key<I, S>,
|
|
1650
1650
|
implementation: S | ((input: Input) => S)
|
|
1651
1651
|
): Command<Name, Input, ContextInput, E, Exclude<R, I>>
|
|
1652
1652
|
} = dual(3, <const Name extends string, Input, E, R, ContextInput, I, S>(
|
|
1653
1653
|
self: Command<Name, Input, ContextInput, E, R>,
|
|
1654
|
-
service:
|
|
1654
|
+
service: Context.Key<I, S>,
|
|
1655
1655
|
implementation: S | ((input: Input) => S)
|
|
1656
1656
|
) =>
|
|
1657
1657
|
mapHandler(self, (handler, input) =>
|
|
@@ -1677,7 +1677,7 @@ export const provideEffect: {
|
|
|
1677
1677
|
* @category providing services
|
|
1678
1678
|
*/
|
|
1679
1679
|
<I, S, Input, R2, E2>(
|
|
1680
|
-
service:
|
|
1680
|
+
service: Context.Key<I, S>,
|
|
1681
1681
|
effect: Effect.Effect<S, E2, R2> | ((input: Input) => Effect.Effect<S, E2, R2>)
|
|
1682
1682
|
): <const Name extends string, E, R, ContextInput>(
|
|
1683
1683
|
self: Command<Name, Input, ContextInput, E, R>
|
|
@@ -1691,12 +1691,12 @@ export const provideEffect: {
|
|
|
1691
1691
|
*/
|
|
1692
1692
|
<const Name extends string, Input, E, R, ContextInput, I, S, R2, E2>(
|
|
1693
1693
|
self: Command<Name, Input, ContextInput, E, R>,
|
|
1694
|
-
service:
|
|
1694
|
+
service: Context.Key<I, S>,
|
|
1695
1695
|
effect: Effect.Effect<S, E2, R2> | ((input: Input) => Effect.Effect<S, E2, R2>)
|
|
1696
1696
|
): Command<Name, Input, ContextInput, E | E2, Exclude<R, I> | R2>
|
|
1697
1697
|
} = dual(3, <const Name extends string, Input, E, R, ContextInput, I, S, R2, E2>(
|
|
1698
1698
|
self: Command<Name, Input, ContextInput, E, R>,
|
|
1699
|
-
service:
|
|
1699
|
+
service: Context.Key<I, S>,
|
|
1700
1700
|
effect: Effect.Effect<S, E2, R2> | ((input: Input) => Effect.Effect<S, E2, R2>)
|
|
1701
1701
|
) =>
|
|
1702
1702
|
mapHandler(
|
|
@@ -1751,9 +1751,9 @@ const getOutOfScopeGlobalFlagErrors = (
|
|
|
1751
1751
|
activeFlags: ReadonlyArray<GlobalFlag.GlobalFlag<any>>,
|
|
1752
1752
|
flagMap: Record<string, ReadonlyArray<string>>,
|
|
1753
1753
|
commandPath: ReadonlyArray<string>
|
|
1754
|
-
): ReadonlyArray<CliError.
|
|
1754
|
+
): ReadonlyArray<CliError.UnrecognizedOption> => {
|
|
1755
1755
|
const activeSet = new Set(activeFlags)
|
|
1756
|
-
const errors: Array<CliError.
|
|
1756
|
+
const errors: Array<CliError.UnrecognizedOption> = []
|
|
1757
1757
|
const seen = new Set<string>()
|
|
1758
1758
|
|
|
1759
1759
|
for (const flag of allFlags) {
|
|
@@ -1955,7 +1955,7 @@ export const runWith = <const Name extends string, Input, E, R, ContextInput>(
|
|
|
1955
1955
|
// 2. Extract global flag tokens
|
|
1956
1956
|
const allFlagParams = allFlags.flatMap((f) => Param.extractSingleParams(f.flag))
|
|
1957
1957
|
const globalRegistry = Parser.createFlagRegistry(allFlagParams.filter(Param.isFlagParam))
|
|
1958
|
-
const { flagMap, remainder } = Parser.consumeKnownFlags(tokens, globalRegistry)
|
|
1958
|
+
const { flagMap, remainder, errors: globalFlagErrors } = Parser.consumeKnownFlags(tokens, globalRegistry)
|
|
1959
1959
|
const emptyArgs: Param.ParsedArgs = { flags: flagMap, arguments: [] }
|
|
1960
1960
|
|
|
1961
1961
|
// 3. Parse command arguments from remaining tokens
|
|
@@ -1966,9 +1966,12 @@ export const runWith = <const Name extends string, Input, E, R, ContextInput>(
|
|
|
1966
1966
|
|
|
1967
1967
|
// 4. Reject globals that were passed outside the active command scope
|
|
1968
1968
|
const outOfScopeErrors = getOutOfScopeGlobalFlagErrors(allFlags, activeFlags, flagMap, commandPath)
|
|
1969
|
-
if (outOfScopeErrors.length > 0) {
|
|
1969
|
+
if (outOfScopeErrors.length > 0 || globalFlagErrors.length > 0) {
|
|
1970
1970
|
const parseErrors = parsedArgs.errors ?? []
|
|
1971
|
-
return yield* new CliError.ShowHelp({
|
|
1971
|
+
return yield* new CliError.ShowHelp({
|
|
1972
|
+
commandPath,
|
|
1973
|
+
errors: [...globalFlagErrors, ...outOfScopeErrors, ...parseErrors]
|
|
1974
|
+
})
|
|
1972
1975
|
}
|
|
1973
1976
|
|
|
1974
1977
|
// 5. Process action flags — first present action wins, then exit
|
|
@@ -1991,7 +1994,10 @@ export const runWith = <const Name extends string, Input, E, R, ContextInput>(
|
|
|
1991
1994
|
}
|
|
1992
1995
|
const parseResult = yield* Effect.result(commandImpl.parse(parsedArgs))
|
|
1993
1996
|
if (parseResult._tag === "Failure") {
|
|
1994
|
-
return yield* new CliError.ShowHelp({
|
|
1997
|
+
return yield* new CliError.ShowHelp({
|
|
1998
|
+
commandPath,
|
|
1999
|
+
errors: [parseResult.failure as CliError.NonShowHelpErrors]
|
|
2000
|
+
})
|
|
1995
2001
|
}
|
|
1996
2002
|
|
|
1997
2003
|
// 7. Provide setting values
|
|
@@ -2007,12 +2013,12 @@ export const runWith = <const Name extends string, Input, E, R, ContextInput>(
|
|
|
2007
2013
|
|
|
2008
2014
|
// 8. Apply built-in setting behavior
|
|
2009
2015
|
const services = Option.match(logLevel, {
|
|
2010
|
-
onNone: () =>
|
|
2011
|
-
onSome: (level) =>
|
|
2016
|
+
onNone: () => Context.empty(),
|
|
2017
|
+
onSome: (level) => Context.make(References.MinimumLogLevel, level)
|
|
2012
2018
|
})
|
|
2013
2019
|
|
|
2014
2020
|
// 9. Run command handler with composed context
|
|
2015
|
-
yield* Effect.
|
|
2021
|
+
yield* Effect.provideContext(program, services)
|
|
2016
2022
|
},
|
|
2017
2023
|
Effect.catchFilter(
|
|
2018
2024
|
(error) =>
|