effect 4.0.0-beta.2 → 4.0.0-beta.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Array.d.ts +127 -299
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +102 -62
- package/dist/Array.js.map +1 -1
- package/dist/Cache.d.ts +2 -2
- package/dist/Cache.d.ts.map +1 -1
- package/dist/Cache.js +6 -5
- 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 +116 -30
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +82 -37
- package/dist/Channel.js.map +1 -1
- package/dist/Chunk.d.ts +54 -247
- package/dist/Chunk.d.ts.map +1 -1
- package/dist/Chunk.js +36 -67
- package/dist/Chunk.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 +165 -9
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js +62 -7
- 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 +829 -692
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +263 -251
- 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/ErrorReporter.d.ts +376 -0
- package/dist/ErrorReporter.d.ts.map +1 -0
- package/dist/ErrorReporter.js +246 -0
- package/dist/ErrorReporter.js.map +1 -0
- package/dist/Fiber.d.ts +2 -2
- package/dist/Fiber.d.ts.map +1 -1
- package/dist/Fiber.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 -34
- package/dist/Filter.d.ts.map +1 -1
- package/dist/Filter.js +15 -13
- 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 +5 -8
- package/dist/Graph.js.map +1 -1
- package/dist/HashMap.d.ts +15 -14
- package/dist/HashMap.d.ts.map +1 -1
- package/dist/HashMap.js +4 -4
- package/dist/HashMap.js.map +1 -1
- package/dist/Iterable.d.ts +40 -39
- package/dist/Iterable.d.ts.map +1 -1
- package/dist/Iterable.js +94 -22
- package/dist/Iterable.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/Layer.d.ts +9 -9
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js.map +1 -1
- package/dist/LayerMap.d.ts +4 -4
- package/dist/LayerMap.d.ts.map +1 -1
- package/dist/LogLevel.d.ts +32 -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 +29 -95
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js +2 -3
- package/dist/Logger.js.map +1 -1
- package/dist/ManagedRuntime.d.ts +1 -1
- package/dist/ManagedRuntime.js +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/Option.d.ts +22 -15
- package/dist/Option.d.ts.map +1 -1
- package/dist/Option.js +14 -7
- package/dist/Option.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/Pull.d.ts.map +1 -1
- package/dist/Pull.js +1 -1
- package/dist/Pull.js.map +1 -1
- package/dist/Queue.d.ts.map +1 -1
- package/dist/Queue.js +0 -1
- package/dist/Queue.js.map +1 -1
- package/dist/Random.d.ts +35 -1
- package/dist/Random.d.ts.map +1 -1
- package/dist/Random.js +46 -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/Record.d.ts +24 -120
- package/dist/Record.d.ts.map +1 -1
- package/dist/Record.js +21 -41
- package/dist/Record.js.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/References.d.ts +3 -3
- package/dist/References.d.ts.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 +47 -20
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +94 -34
- package/dist/Schedule.js.map +1 -1
- package/dist/Schema.d.ts +266 -50
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +426 -74
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +7 -6
- package/dist/SchemaAST.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/SchemaParser.d.ts +5 -0
- package/dist/SchemaParser.d.ts.map +1 -1
- package/dist/SchemaParser.js +10 -0
- package/dist/SchemaParser.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 +107 -3
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +159 -4
- 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/ServiceMap.d.ts +39 -30
- package/dist/ServiceMap.d.ts.map +1 -1
- package/dist/ServiceMap.js +3 -3
- package/dist/ServiceMap.js.map +1 -1
- package/dist/Sink.d.ts +13 -13
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js +53 -6
- package/dist/Sink.js.map +1 -1
- package/dist/Stream.d.ts +235 -423
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +124 -77
- 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/Trie.d.ts +18 -17
- package/dist/Trie.d.ts.map +1 -1
- package/dist/Trie.js +5 -5
- package/dist/Trie.js.map +1 -1
- package/dist/TxChunk.d.ts +37 -37
- package/dist/TxChunk.d.ts.map +1 -1
- package/dist/TxChunk.js +3 -3
- package/dist/TxChunk.js.map +1 -1
- package/dist/TxDeferred.d.ts +328 -0
- package/dist/TxDeferred.d.ts.map +1 -0
- package/dist/TxDeferred.js +196 -0
- package/dist/TxDeferred.js.map +1 -0
- package/dist/TxHashMap.d.ts +84 -83
- package/dist/TxHashMap.d.ts.map +1 -1
- package/dist/TxHashMap.js +24 -24
- package/dist/TxHashMap.js.map +1 -1
- package/dist/TxHashSet.d.ts +35 -35
- package/dist/TxHashSet.d.ts.map +1 -1
- package/dist/TxHashSet.js +14 -14
- package/dist/TxHashSet.js.map +1 -1
- package/dist/TxPriorityQueue.d.ts +609 -0
- package/dist/TxPriorityQueue.d.ts.map +1 -0
- package/dist/TxPriorityQueue.js +415 -0
- package/dist/TxPriorityQueue.js.map +1 -0
- package/dist/TxPubSub.d.ts +585 -0
- package/dist/TxPubSub.d.ts.map +1 -0
- package/dist/TxPubSub.js +521 -0
- package/dist/TxPubSub.js.map +1 -0
- package/dist/TxQueue.d.ts +32 -32
- package/dist/TxQueue.d.ts.map +1 -1
- package/dist/TxQueue.js +26 -26
- package/dist/TxQueue.js.map +1 -1
- package/dist/TxReentrantLock.d.ts +523 -0
- package/dist/TxReentrantLock.d.ts.map +1 -0
- package/dist/TxReentrantLock.js +504 -0
- package/dist/TxReentrantLock.js.map +1 -0
- package/dist/TxRef.d.ts +34 -34
- package/dist/TxRef.d.ts.map +1 -1
- package/dist/TxRef.js +21 -14
- package/dist/TxRef.js.map +1 -1
- package/dist/TxSemaphore.d.ts +8 -8
- package/dist/TxSemaphore.d.ts.map +1 -1
- package/dist/TxSemaphore.js +7 -7
- package/dist/TxSemaphore.js.map +1 -1
- package/dist/TxSubscriptionRef.d.ts +508 -0
- package/dist/TxSubscriptionRef.d.ts.map +1 -0
- package/dist/TxSubscriptionRef.js +293 -0
- package/dist/TxSubscriptionRef.js.map +1 -0
- package/dist/Types.d.ts +84 -6
- package/dist/Types.d.ts.map +1 -1
- package/dist/index.d.ts +591 -20
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +591 -20
- 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 +263 -99
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/hashMap.js +5 -4
- package/dist/internal/hashMap.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/internal/request.js +2 -2
- package/dist/internal/request.js.map +1 -1
- package/dist/internal/schema/annotations.js +2 -0
- package/dist/internal/schema/annotations.js.map +1 -1
- package/dist/internal/schema/schema.js +1 -0
- package/dist/internal/schema/schema.js.map +1 -1
- package/dist/internal/trie.js +5 -4
- package/dist/internal/trie.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 +8 -8
- package/dist/testing/TestSchema.d.ts.map +1 -1
- package/dist/testing/TestSchema.js.map +1 -1
- package/dist/unstable/ai/AiError.d.ts +128 -48
- package/dist/unstable/ai/AiError.d.ts.map +1 -1
- package/dist/unstable/ai/AiError.js +11 -12
- package/dist/unstable/ai/AiError.js.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 +4 -2
- package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
- package/dist/unstable/ai/LanguageModel.js +86 -14
- package/dist/unstable/ai/LanguageModel.js.map +1 -1
- package/dist/unstable/ai/McpSchema.d.ts +163 -87
- package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
- package/dist/unstable/ai/McpSchema.js +49 -12
- package/dist/unstable/ai/McpSchema.js.map +1 -1
- 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 +35 -7
- package/dist/unstable/ai/McpServer.js.map +1 -1
- package/dist/unstable/ai/Model.d.ts +25 -7
- package/dist/unstable/ai/Model.d.ts.map +1 -1
- package/dist/unstable/ai/Model.js +22 -6
- package/dist/unstable/ai/Model.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/ai/Tool.d.ts +19 -3
- package/dist/unstable/ai/Tool.d.ts.map +1 -1
- package/dist/unstable/ai/Tool.js +14 -9
- package/dist/unstable/ai/Tool.js.map +1 -1
- package/dist/unstable/ai/index.d.ts +1 -1
- package/dist/unstable/ai/index.js +1 -1
- package/dist/unstable/cli/CliError.d.ts +5 -5
- package/dist/unstable/cli/CliOutput.js +59 -6
- package/dist/unstable/cli/CliOutput.js.map +1 -1
- package/dist/unstable/cli/Command.d.ts +276 -19
- package/dist/unstable/cli/Command.d.ts.map +1 -1
- package/dist/unstable/cli/Command.js +234 -36
- package/dist/unstable/cli/Command.js.map +1 -1
- package/dist/unstable/cli/GlobalFlag.d.ts +125 -0
- package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -0
- package/dist/unstable/cli/GlobalFlag.js +118 -0
- package/dist/unstable/cli/GlobalFlag.js.map +1 -0
- package/dist/unstable/cli/HelpDoc.d.ts +70 -2
- package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
- package/dist/unstable/cli/index.d.ts +4 -0
- package/dist/unstable/cli/index.d.ts.map +1 -1
- package/dist/unstable/cli/index.js +4 -0
- package/dist/unstable/cli/index.js.map +1 -1
- package/dist/unstable/cli/internal/command.d.ts +17 -8
- package/dist/unstable/cli/internal/command.d.ts.map +1 -1
- package/dist/unstable/cli/internal/command.js +32 -23
- package/dist/unstable/cli/internal/command.js.map +1 -1
- package/dist/unstable/cli/internal/completions/CommandDescriptor.js +7 -2
- package/dist/unstable/cli/internal/completions/CommandDescriptor.js.map +1 -1
- package/dist/unstable/cli/internal/help.d.ts +33 -0
- package/dist/unstable/cli/internal/help.d.ts.map +1 -0
- package/dist/unstable/cli/internal/help.js +107 -0
- package/dist/unstable/cli/internal/help.js.map +1 -0
- package/dist/unstable/cli/internal/parser.js +29 -36
- package/dist/unstable/cli/internal/parser.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 +4 -3
- package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/unstable/cluster/Entity.d.ts +7 -6
- 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 +4 -4
- 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 +9 -7
- 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 +20 -20
- 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 +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/Headers.d.ts.map +1 -1
- package/dist/unstable/http/Headers.js +27 -10
- package/dist/unstable/http/Headers.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 +37 -13
- 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 +3 -8
- package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
- package/dist/unstable/http/HttpEffect.js +42 -56
- 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 +8 -17
- package/dist/unstable/http/HttpMiddleware.js.map +1 -1
- package/dist/unstable/http/HttpServerError.d.ts +20 -33
- package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerError.js +37 -44
- package/dist/unstable/http/HttpServerError.js.map +1 -1
- package/dist/unstable/http/HttpServerRequest.d.ts +1 -1
- package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerRespondable.d.ts +2 -2
- package/dist/unstable/http/HttpServerRespondable.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerRespondable.js +5 -5
- package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
- package/dist/unstable/http/HttpServerResponse.d.ts +2 -1
- package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerResponse.js +3 -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/http/internal/preResponseHandler.d.ts +2 -0
- package/dist/unstable/http/internal/preResponseHandler.d.ts.map +1 -0
- package/dist/unstable/http/internal/preResponseHandler.js +10 -0
- package/dist/unstable/http/internal/preResponseHandler.js.map +1 -0
- package/dist/unstable/httpapi/HttpApi.d.ts +3 -3
- package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApi.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts +11 -5
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.js +23 -12
- package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.d.ts +7 -2
- package/dist/unstable/httpapi/HttpApiClient.d.ts.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 +31 -44
- 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/HttpApiError.d.ts +11 -0
- package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.js +29 -9
- package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.d.ts +3 -3
- package/dist/unstable/httpapi/HttpApiGroup.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +4 -4
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.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/HttpApiSecurity.d.ts +2 -2
- package/dist/unstable/httpapi/HttpApiSecurity.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
- package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/OpenApi.js +32 -21
- 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/OtlpLogger.js +7 -4
- package/dist/unstable/observability/OtlpLogger.js.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 +5 -128
- package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcess.js +1 -65
- package/dist/unstable/process/ChildProcess.js.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.d.ts +45 -7
- package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.js +21 -1
- package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
- package/dist/unstable/reactivity/Atom.d.ts +10 -10
- package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
- package/dist/unstable/reactivity/Atom.js +16 -13
- package/dist/unstable/reactivity/Atom.js.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.d.ts +8 -8
- 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/AtomRegistry.d.ts +6 -0
- package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.js +24 -7
- package/dist/unstable/reactivity/AtomRegistry.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 +4 -4
- package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
- package/dist/unstable/rpc/Rpc.js.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/RpcGroup.d.ts +2 -2
- package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcGroup.js.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.d.ts +3 -3
- package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
- package/dist/unstable/rpc/RpcSchema.d.ts +13 -0
- package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSchema.js +14 -0
- package/dist/unstable/rpc/RpcSchema.js.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.js +34 -9
- package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
- package/dist/unstable/rpc/RpcServer.d.ts +0 -7
- package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcServer.js +15 -15
- 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 +1 -1
- package/dist/unstable/schema/Model.d.ts.map +1 -1
- package/dist/unstable/schema/VariantSchema.d.ts +3 -3
- package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
- package/dist/unstable/schema/VariantSchema.js +3 -3
- 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 +6 -5
- 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/SqlClient.d.ts +1 -1
- package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
- package/dist/unstable/sql/SqlError.d.ts +14 -14
- package/dist/unstable/sql/SqlError.d.ts.map +1 -1
- package/dist/unstable/sql/SqlError.js +9 -3
- package/dist/unstable/sql/SqlError.js.map +1 -1
- package/dist/unstable/sql/SqlModel.d.ts +2 -2
- package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
- package/dist/unstable/sql/SqlModel.js +3 -3
- package/dist/unstable/sql/SqlModel.js.map +1 -1
- package/dist/unstable/sql/SqlSchema.d.ts +16 -5
- package/dist/unstable/sql/SqlSchema.d.ts.map +1 -1
- package/dist/unstable/sql/SqlSchema.js +17 -7
- 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 +3 -3
- package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
- package/dist/unstable/workflow/Workflow.js +1 -1
- package/dist/unstable/workflow/Workflow.js.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.d.ts +12 -1
- package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.js +137 -1
- package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
- package/package.json +2 -2
- package/src/Array.ts +190 -342
- package/src/Cache.ts +9 -8
- package/src/Cause.ts +1 -1
- package/src/Channel.ts +554 -138
- package/src/Chunk.ts +81 -268
- package/src/Combiner.ts +280 -13
- package/src/Config.ts +183 -21
- package/src/Data.ts +538 -374
- package/src/DateTime.ts +24 -164
- package/src/Duration.ts +15 -15
- package/src/Effect.ts +991 -800
- package/src/Encoding.ts +879 -0
- package/src/Equal.ts +278 -111
- package/src/ErrorReporter.ts +459 -0
- package/src/Fiber.ts +9 -2
- package/src/FileSystem.ts +7 -8
- package/src/Filter.ts +48 -58
- package/src/Formatter.ts +253 -51
- package/src/Graph.ts +24 -11
- package/src/HashMap.ts +15 -14
- package/src/Iterable.ts +105 -50
- package/src/JsonSchema.ts +383 -10
- package/src/Latch.ts +112 -0
- package/src/Layer.ts +11 -15
- package/src/LayerMap.ts +5 -5
- package/src/LogLevel.ts +37 -0
- package/src/Logger.ts +33 -100
- package/src/ManagedRuntime.ts +1 -1
- package/src/Metric.ts +4 -4
- package/src/Optic.ts +948 -19
- package/src/Option.ts +30 -20
- 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/Pull.ts +1 -1
- package/src/Queue.ts +0 -1
- package/src/Random.ts +51 -14
- package/src/RcMap.ts +5 -5
- package/src/RcRef.ts +1 -1
- package/src/Record.ts +43 -152
- package/src/Reducer.ts +166 -7
- package/src/References.ts +4 -4
- package/src/Request.ts +3 -2
- package/src/RequestResolver.ts +9 -29
- package/src/Result.ts +13 -0
- package/src/Schedule.ts +318 -160
- package/src/Schema.ts +661 -116
- package/src/SchemaAST.ts +7 -6
- package/src/SchemaGetter.ts +12 -14
- package/src/SchemaParser.ts +11 -0
- package/src/SchemaRepresentation.ts +43 -24
- package/src/SchemaTransformation.ts +189 -4
- package/src/ScopedCache.ts +3 -3
- package/src/Semaphore.ts +356 -0
- package/src/ServiceMap.ts +47 -38
- package/src/Sink.ts +78 -26
- package/src/Stream.ts +566 -601
- package/src/Struct.ts +26 -0
- package/src/SubscriptionRef.ts +3 -2
- package/src/SynchronizedRef.ts +3 -2
- package/src/Trie.ts +18 -17
- package/src/TxChunk.ts +72 -53
- package/src/TxDeferred.ts +394 -0
- package/src/TxHashMap.ts +332 -285
- package/src/TxHashSet.ts +111 -116
- package/src/TxPriorityQueue.ts +767 -0
- package/src/TxPubSub.ts +789 -0
- package/src/TxQueue.ts +241 -251
- package/src/TxReentrantLock.ts +753 -0
- package/src/TxRef.ts +50 -38
- package/src/TxSemaphore.ts +29 -32
- package/src/TxSubscriptionRef.ts +639 -0
- package/src/Types.ts +78 -2
- package/src/index.ts +600 -21
- package/src/internal/core.ts +12 -5
- package/src/internal/dateTime.ts +9 -30
- package/src/internal/effect.ts +744 -265
- package/src/internal/hashMap.ts +9 -7
- package/src/internal/random.ts +20 -0
- package/src/internal/rcRef.ts +4 -3
- package/src/internal/request.ts +2 -2
- package/src/internal/schema/annotations.ts +2 -0
- package/src/internal/schema/schema.ts +1 -0
- package/src/internal/trie.ts +16 -9
- package/src/testing/TestClock.ts +13 -11
- package/src/testing/TestSchema.ts +10 -10
- package/src/unstable/ai/AiError.ts +97 -44
- package/src/unstable/ai/Chat.ts +12 -11
- package/src/unstable/ai/LanguageModel.ts +129 -25
- package/src/unstable/ai/McpSchema.ts +59 -13
- package/src/unstable/ai/McpServer.ts +48 -9
- package/src/unstable/ai/Model.ts +40 -9
- package/src/unstable/ai/Prompt.ts +37 -37
- package/src/unstable/ai/Response.ts +25 -25
- package/src/unstable/ai/Tool.ts +19 -13
- package/src/unstable/ai/index.ts +1 -1
- package/src/unstable/cli/CliOutput.ts +75 -6
- package/src/unstable/cli/Command.ts +501 -60
- package/src/unstable/cli/GlobalFlag.ts +243 -0
- package/src/unstable/cli/HelpDoc.ts +80 -2
- package/src/unstable/cli/index.ts +5 -0
- package/src/unstable/cli/internal/command.ts +50 -34
- package/src/unstable/cli/internal/completions/CommandDescriptor.ts +7 -2
- package/src/unstable/cli/internal/help.ts +146 -0
- package/src/unstable/cli/internal/parser.ts +33 -54
- package/src/unstable/cluster/ClusterCron.ts +2 -2
- package/src/unstable/cluster/ClusterWorkflowEngine.ts +5 -4
- package/src/unstable/cluster/Entity.ts +11 -10
- package/src/unstable/cluster/EntityResource.ts +4 -4
- package/src/unstable/cluster/Envelope.ts +1 -1
- package/src/unstable/cluster/K8sHttpClient.ts +5 -5
- package/src/unstable/cluster/MessageStorage.ts +3 -5
- package/src/unstable/cluster/Runners.ts +6 -5
- package/src/unstable/cluster/Sharding.ts +12 -10
- package/src/unstable/cluster/ShardingConfig.ts +30 -31
- 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 +3 -5
- package/src/unstable/eventlog/EventLog.ts +2 -1
- package/src/unstable/http/Cookies.ts +3 -3
- package/src/unstable/http/Headers.ts +28 -13
- package/src/unstable/http/HttpBody.ts +42 -1
- package/src/unstable/http/HttpClient.ts +58 -23
- package/src/unstable/http/HttpClientRequest.ts +38 -13
- package/src/unstable/http/HttpEffect.ts +46 -68
- package/src/unstable/http/HttpMethod.ts +16 -4
- package/src/unstable/http/HttpMiddleware.ts +9 -24
- package/src/unstable/http/HttpServerError.ts +42 -45
- package/src/unstable/http/HttpServerRequest.ts +1 -1
- package/src/unstable/http/HttpServerRespondable.ts +6 -6
- package/src/unstable/http/HttpServerResponse.ts +4 -2
- package/src/unstable/http/Multipart.ts +2 -2
- package/src/unstable/http/UrlParams.ts +20 -5
- package/src/unstable/http/internal/preResponseHandler.ts +15 -0
- package/src/unstable/httpapi/HttpApi.ts +5 -5
- package/src/unstable/httpapi/HttpApiBuilder.ts +77 -21
- package/src/unstable/httpapi/HttpApiClient.ts +14 -6
- package/src/unstable/httpapi/HttpApiEndpoint.ts +67 -83
- package/src/unstable/httpapi/HttpApiError.ts +30 -9
- package/src/unstable/httpapi/HttpApiGroup.ts +6 -6
- package/src/unstable/httpapi/HttpApiMiddleware.ts +4 -4
- package/src/unstable/httpapi/HttpApiScalar.ts +6 -0
- package/src/unstable/httpapi/HttpApiSecurity.ts +3 -3
- package/src/unstable/httpapi/OpenApi.ts +41 -23
- package/src/unstable/observability/Otlp.ts +12 -12
- package/src/unstable/observability/OtlpExporter.ts +3 -3
- package/src/unstable/observability/OtlpLogger.ts +13 -9
- 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 +6 -208
- package/src/unstable/process/ChildProcessSpawner.ts +75 -14
- package/src/unstable/reactivity/Atom.ts +27 -25
- package/src/unstable/reactivity/AtomHttpApi.ts +21 -20
- package/src/unstable/reactivity/AtomRegistry.ts +31 -7
- 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 +6 -6
- package/src/unstable/rpc/RpcClient.ts +12 -54
- package/src/unstable/rpc/RpcGroup.ts +4 -4
- package/src/unstable/rpc/RpcMiddleware.ts +3 -3
- package/src/unstable/rpc/RpcSchema.ts +17 -0
- package/src/unstable/rpc/RpcSerialization.ts +44 -9
- package/src/unstable/rpc/RpcServer.ts +21 -30
- package/src/unstable/rpc/Utils.ts +2 -1
- package/src/unstable/schema/VariantSchema.ts +6 -6
- package/src/unstable/socket/Socket.ts +16 -17
- package/src/unstable/sql/SqlClient.ts +1 -1
- package/src/unstable/sql/SqlError.ts +11 -9
- package/src/unstable/sql/SqlModel.ts +5 -5
- package/src/unstable/sql/SqlSchema.ts +41 -25
- 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/Workflow.ts +6 -2
- package/src/unstable/workflow/WorkflowEngine.ts +185 -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/dist/unstable/cli/internal/builtInFlags.d.ts +0 -7
- package/dist/unstable/cli/internal/builtInFlags.d.ts.map +0 -1
- package/dist/unstable/cli/internal/builtInFlags.js +0 -44
- package/dist/unstable/cli/internal/builtInFlags.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
- package/src/unstable/cli/internal/builtInFlags.ts +0 -78
package/dist/Equal.js
CHANGED
|
@@ -2,7 +2,39 @@ import * as Hash from "./Hash.js";
|
|
|
2
2
|
import { byReferenceInstances, getAllObjectKeys } from "./internal/equal.js";
|
|
3
3
|
import { hasProperty } from "./Predicate.js";
|
|
4
4
|
/**
|
|
5
|
-
* The unique identifier
|
|
5
|
+
* The unique string identifier for the {@link Equal} interface.
|
|
6
|
+
*
|
|
7
|
+
* Use this as a computed property key when implementing custom equality on a
|
|
8
|
+
* class or object literal.
|
|
9
|
+
*
|
|
10
|
+
* When to use:
|
|
11
|
+
* - As the method name when implementing the {@link Equal} interface.
|
|
12
|
+
* - To check manually whether an object carries an equality method (prefer
|
|
13
|
+
* {@link isEqual} instead).
|
|
14
|
+
*
|
|
15
|
+
* Behavior:
|
|
16
|
+
* - Pure constant — no allocation or side effects.
|
|
17
|
+
*
|
|
18
|
+
* **Example** (implementing Equal on a class)
|
|
19
|
+
*
|
|
20
|
+
* ```ts
|
|
21
|
+
* import { Equal, Hash } from "effect"
|
|
22
|
+
*
|
|
23
|
+
* class UserId implements Equal.Equal {
|
|
24
|
+
* constructor(readonly id: string) {}
|
|
25
|
+
*
|
|
26
|
+
* [Equal.symbol](that: Equal.Equal): boolean {
|
|
27
|
+
* return that instanceof UserId && this.id === that.id
|
|
28
|
+
* }
|
|
29
|
+
*
|
|
30
|
+
* [Hash.symbol](): number {
|
|
31
|
+
* return Hash.string(this.id)
|
|
32
|
+
* }
|
|
33
|
+
* }
|
|
34
|
+
* ```
|
|
35
|
+
*
|
|
36
|
+
* @see {@link Equal} — the interface that uses this symbol
|
|
37
|
+
* @see {@link isEqual} — type guard for `Equal` implementors
|
|
6
38
|
*
|
|
7
39
|
* @since 2.0.0
|
|
8
40
|
*/
|
|
@@ -175,37 +207,61 @@ export function makeCompareSet(equivalence) {
|
|
|
175
207
|
}
|
|
176
208
|
const compareSets = /*#__PURE__*/makeCompareSet(compareBoth);
|
|
177
209
|
/**
|
|
178
|
-
*
|
|
210
|
+
* Checks whether a value implements the {@link Equal} interface.
|
|
211
|
+
*
|
|
212
|
+
* When to use:
|
|
213
|
+
* - To branch on whether a value supports custom equality before calling
|
|
214
|
+
* its `[Equal.symbol]` method directly.
|
|
215
|
+
* - In generic utility code that needs to distinguish `Equal` implementors
|
|
216
|
+
* from plain values.
|
|
217
|
+
*
|
|
218
|
+
* Behavior:
|
|
219
|
+
* - Pure function, no side effects.
|
|
220
|
+
* - Returns `true` if and only if `u` has a property keyed by
|
|
221
|
+
* {@link symbol}.
|
|
222
|
+
* - Acts as a TypeScript type guard, narrowing the input to {@link Equal}.
|
|
223
|
+
*
|
|
224
|
+
* **Example** (type guard)
|
|
179
225
|
*
|
|
180
|
-
* @example
|
|
181
226
|
* ```ts
|
|
182
227
|
* import { Equal, Hash } from "effect"
|
|
183
|
-
* import * as assert from "node:assert"
|
|
184
228
|
*
|
|
185
|
-
* class
|
|
229
|
+
* class Token implements Equal.Equal {
|
|
230
|
+
* constructor(readonly value: string) {}
|
|
186
231
|
* [Equal.symbol](that: Equal.Equal): boolean {
|
|
187
|
-
* return that instanceof
|
|
232
|
+
* return that instanceof Token && this.value === that.value
|
|
188
233
|
* }
|
|
189
234
|
* [Hash.symbol](): number {
|
|
190
|
-
* return
|
|
235
|
+
* return Hash.string(this.value)
|
|
191
236
|
* }
|
|
192
237
|
* }
|
|
193
238
|
*
|
|
194
|
-
*
|
|
195
|
-
*
|
|
196
|
-
*
|
|
197
|
-
* assert(Equal.isEqual(42) === false)
|
|
239
|
+
* console.log(Equal.isEqual(new Token("abc"))) // true
|
|
240
|
+
* console.log(Equal.isEqual({ x: 1 })) // false
|
|
241
|
+
* console.log(Equal.isEqual(42)) // false
|
|
198
242
|
* ```
|
|
199
243
|
*
|
|
244
|
+
* @see {@link Equal} — the interface being checked
|
|
245
|
+
* @see {@link symbol} — the property key that signals `Equal` support
|
|
246
|
+
*
|
|
200
247
|
* @category guards
|
|
201
248
|
* @since 2.0.0
|
|
202
249
|
*/
|
|
203
250
|
export const isEqual = u => hasProperty(u, symbol);
|
|
204
251
|
/**
|
|
205
|
-
*
|
|
206
|
-
*
|
|
252
|
+
* Wraps {@link equals} as an `Equivalence<A>`.
|
|
253
|
+
*
|
|
254
|
+
* When to use:
|
|
255
|
+
* - When an API (e.g. `Array.dedupeWith`, `Equivalence.mapInput`) requires an
|
|
256
|
+
* `Equivalence` and you want to reuse `Equal.equals`.
|
|
257
|
+
*
|
|
258
|
+
* Behavior:
|
|
259
|
+
* - Returns a function `(a: A, b: A) => boolean` that delegates to
|
|
260
|
+
* {@link equals}.
|
|
261
|
+
* - Pure; allocates a thin wrapper on each call.
|
|
262
|
+
*
|
|
263
|
+
* **Example** (deduplicating with Equal semantics)
|
|
207
264
|
*
|
|
208
|
-
* @example
|
|
209
265
|
* ```ts
|
|
210
266
|
* import { Array, Equal } from "effect"
|
|
211
267
|
*
|
|
@@ -214,70 +270,90 @@ export const isEqual = u => hasProperty(u, symbol);
|
|
|
214
270
|
* console.log(result) // [1, 2, 3]
|
|
215
271
|
* ```
|
|
216
272
|
*
|
|
273
|
+
* @see {@link equals} — the underlying comparison function
|
|
274
|
+
*
|
|
217
275
|
* @category instances
|
|
218
276
|
* @since 2.0.0
|
|
219
277
|
*/
|
|
220
278
|
export const asEquivalence = () => equals;
|
|
221
279
|
/**
|
|
222
|
-
* Creates a proxy
|
|
280
|
+
* Creates a proxy that uses reference equality instead of structural equality.
|
|
223
281
|
*
|
|
224
|
-
*
|
|
225
|
-
*
|
|
226
|
-
*
|
|
282
|
+
* When to use:
|
|
283
|
+
* - When you have a plain object or array that should be compared by identity
|
|
284
|
+
* (reference), not by contents.
|
|
285
|
+
* - When you want to preserve the original object unchanged and get a new
|
|
286
|
+
* reference-equal handle.
|
|
227
287
|
*
|
|
228
|
-
*
|
|
229
|
-
*
|
|
230
|
-
*
|
|
231
|
-
*
|
|
288
|
+
* Behavior:
|
|
289
|
+
* - Returns a `Proxy` wrapping `obj`. The proxy reads through to the
|
|
290
|
+
* original, so property access is unchanged.
|
|
291
|
+
* - The proxy is registered in an internal WeakSet; {@link equals} returns
|
|
292
|
+
* `false` for any pair where at least one operand is in that set (unless
|
|
293
|
+
* they are the same reference).
|
|
294
|
+
* - Each call creates a **new** proxy, so `byReference(x) !== byReference(x)`.
|
|
295
|
+
* - Does **not** mutate the original object (unlike {@link byReferenceUnsafe}).
|
|
232
296
|
*
|
|
233
|
-
*
|
|
234
|
-
* const obj2 = { a: 1, b: 2 }
|
|
297
|
+
* **Example** (opting out of structural equality)
|
|
235
298
|
*
|
|
236
|
-
*
|
|
237
|
-
*
|
|
299
|
+
* ```ts
|
|
300
|
+
* import { Equal } from "effect"
|
|
238
301
|
*
|
|
239
|
-
*
|
|
240
|
-
* const
|
|
241
|
-
* assert(Equal.equals(obj1ByRef, obj2) === false) // uses reference equality
|
|
242
|
-
* assert(Equal.equals(obj1ByRef, obj1ByRef) === true) // same reference
|
|
302
|
+
* const a = { x: 1 }
|
|
303
|
+
* const b = { x: 1 }
|
|
243
304
|
*
|
|
244
|
-
*
|
|
245
|
-
* const obj1ByRef2 = Equal.byReference(obj1)
|
|
246
|
-
* assert(Equal.equals(obj1ByRef, obj1ByRef2) === false) // different instances
|
|
305
|
+
* console.log(Equal.equals(a, b)) // true (structural)
|
|
247
306
|
*
|
|
248
|
-
*
|
|
249
|
-
*
|
|
307
|
+
* const aRef = Equal.byReference(a)
|
|
308
|
+
* console.log(Equal.equals(aRef, b)) // false (reference)
|
|
309
|
+
* console.log(Equal.equals(aRef, aRef)) // true (same reference)
|
|
310
|
+
* console.log(aRef.x) // 1 (proxy reads through)
|
|
250
311
|
* ```
|
|
251
312
|
*
|
|
313
|
+
* @see {@link byReferenceUnsafe} — same effect without a proxy (mutates the
|
|
314
|
+
* original)
|
|
315
|
+
* @see {@link equals} — the comparison function affected by this opt-out
|
|
316
|
+
*
|
|
252
317
|
* @category utility
|
|
253
318
|
* @since 2.0.0
|
|
254
319
|
*/
|
|
255
320
|
export const byReference = obj => byReferenceUnsafe(new Proxy(obj, {}));
|
|
256
321
|
/**
|
|
257
|
-
*
|
|
322
|
+
* Permanently marks an object to use reference equality, without creating a
|
|
323
|
+
* proxy.
|
|
324
|
+
*
|
|
325
|
+
* When to use:
|
|
326
|
+
* - When you want reference equality semantics and can accept that the
|
|
327
|
+
* original object is **permanently** modified.
|
|
328
|
+
* - When proxy overhead is unacceptable (hot paths, large collections).
|
|
258
329
|
*
|
|
259
|
-
*
|
|
260
|
-
*
|
|
261
|
-
* it
|
|
330
|
+
* Behavior:
|
|
331
|
+
* - Adds `obj` to an internal WeakSet. From that point on, {@link equals}
|
|
332
|
+
* treats it as reference-only.
|
|
333
|
+
* - Returns the **same** object (not a copy or proxy), so
|
|
334
|
+
* `byReferenceUnsafe(x) === x`.
|
|
335
|
+
* - The marking is irreversible for the lifetime of the object.
|
|
336
|
+
* - Does **not** affect the object's prototype, properties, or behavior
|
|
337
|
+
* beyond equality checks.
|
|
338
|
+
*
|
|
339
|
+
* **Example** (marking an object for reference equality)
|
|
262
340
|
*
|
|
263
|
-
* @example
|
|
264
341
|
* ```ts
|
|
265
342
|
* import { Equal } from "effect"
|
|
266
|
-
* import * as assert from "node:assert"
|
|
267
343
|
*
|
|
268
344
|
* const obj1 = { a: 1, b: 2 }
|
|
269
345
|
* const obj2 = { a: 1, b: 2 }
|
|
270
346
|
*
|
|
271
|
-
*
|
|
272
|
-
* const obj1ByRef = Equal.byReferenceUnsafe(obj1)
|
|
273
|
-
* assert(obj1ByRef === obj1) // Same object, no proxy created
|
|
274
|
-
* assert(Equal.equals(obj1ByRef, obj2) === false) // uses reference equality
|
|
275
|
-
* assert(Equal.equals(obj1ByRef, obj1ByRef) === true) // same reference
|
|
347
|
+
* Equal.byReferenceUnsafe(obj1)
|
|
276
348
|
*
|
|
277
|
-
*
|
|
278
|
-
*
|
|
349
|
+
* console.log(Equal.equals(obj1, obj2)) // false (reference)
|
|
350
|
+
* console.log(Equal.equals(obj1, obj1)) // true (same reference)
|
|
351
|
+
* console.log(obj1 === Equal.byReferenceUnsafe(obj1)) // true (same object)
|
|
279
352
|
* ```
|
|
280
353
|
*
|
|
354
|
+
* @see {@link byReference} — safer alternative that creates a proxy
|
|
355
|
+
* @see {@link equals} — the comparison function affected by this opt-out
|
|
356
|
+
*
|
|
281
357
|
* @category utility
|
|
282
358
|
* @since 2.0.0
|
|
283
359
|
*/
|
package/dist/Equal.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Equal.js","names":["Hash","byReferenceInstances","getAllObjectKeys","hasProperty","symbol","equals","arguments","length","self","compareBoth","that","selfType","has","withCache","compareObjects","withVisitedTracking","fn","hasLeft","visitedLeft","hasRight","visitedRight","add","result","delete","WeakSet","hash","Date","toISOString","RegExp","toString","selfIsEqual","isEqual","thatIsEqual","bothEquals","Array","isArray","compareArrays","Map","size","compareMaps","Set","compareSets","compareRecords","f","selfMap","equalityCache","get","WeakMap","set","thatMap","i","selfKeys","thatKeys","key","makeCompareMap","keyEquivalence","valueEquivalence","selfKey","selfValue","found","thatKey","thatValue","makeCompareSet","equivalence","u","asEquivalence","byReference","obj","byReferenceUnsafe","Proxy"],"sources":["../src/Equal.ts"],"sourcesContent":[null],"mappings":"
|
|
1
|
+
{"version":3,"file":"Equal.js","names":["Hash","byReferenceInstances","getAllObjectKeys","hasProperty","symbol","equals","arguments","length","self","compareBoth","that","selfType","has","withCache","compareObjects","withVisitedTracking","fn","hasLeft","visitedLeft","hasRight","visitedRight","add","result","delete","WeakSet","hash","Date","toISOString","RegExp","toString","selfIsEqual","isEqual","thatIsEqual","bothEquals","Array","isArray","compareArrays","Map","size","compareMaps","Set","compareSets","compareRecords","f","selfMap","equalityCache","get","WeakMap","set","thatMap","i","selfKeys","thatKeys","key","makeCompareMap","keyEquivalence","valueEquivalence","selfKey","selfValue","found","thatKey","thatValue","makeCompareSet","equivalence","u","asEquivalence","byReference","obj","byReferenceUnsafe","Proxy"],"sources":["../src/Equal.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,376 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pluggable error reporting for Effect programs.
|
|
3
|
+
*
|
|
4
|
+
* Reporting is triggered by `Effect.withErrorReporting`,
|
|
5
|
+
* `ErrorReporter.report`, or built-in reporting boundaries in the HTTP and
|
|
6
|
+
* RPC server modules.
|
|
7
|
+
*
|
|
8
|
+
* Each reporter receives a structured callback with the failing `Cause`, a
|
|
9
|
+
* pretty-printed `Error`, severity, and any extra attributes attached to the
|
|
10
|
+
* original error — making it straightforward to forward failures to Sentry,
|
|
11
|
+
* Datadog, or a custom logging backend.
|
|
12
|
+
*
|
|
13
|
+
* Use the annotation symbols (`ignore`, `severity`, `attributes`) on your
|
|
14
|
+
* error classes to control reporting behavior per-error.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```ts
|
|
18
|
+
* import { Data, Effect, ErrorReporter } from "effect"
|
|
19
|
+
*
|
|
20
|
+
* // A reporter that logs to the console
|
|
21
|
+
* const consoleReporter = ErrorReporter.make(({ error, severity }) => {
|
|
22
|
+
* console.error(`[${severity}]`, error.message)
|
|
23
|
+
* })
|
|
24
|
+
*
|
|
25
|
+
* // An error that should be ignored by reporters
|
|
26
|
+
* class NotFoundError extends Data.TaggedError("NotFoundError")<{}> {
|
|
27
|
+
* readonly [ErrorReporter.ignore] = true
|
|
28
|
+
* }
|
|
29
|
+
*
|
|
30
|
+
* // An error with custom severity and attributes
|
|
31
|
+
* class RateLimitError extends Data.TaggedError("RateLimitError")<{
|
|
32
|
+
* readonly retryAfter: number
|
|
33
|
+
* }> {
|
|
34
|
+
* readonly [ErrorReporter.severity] = "Warn" as const
|
|
35
|
+
* readonly [ErrorReporter.attributes] = {
|
|
36
|
+
* retryAfter: this.retryAfter
|
|
37
|
+
* }
|
|
38
|
+
* }
|
|
39
|
+
*
|
|
40
|
+
* // Opt in to error reporting with Effect.withErrorReporting
|
|
41
|
+
* const program = Effect.gen(function*() {
|
|
42
|
+
* yield* new RateLimitError({ retryAfter: 60 })
|
|
43
|
+
* }).pipe(
|
|
44
|
+
* Effect.withErrorReporting,
|
|
45
|
+
* Effect.provide(ErrorReporter.layer([consoleReporter]))
|
|
46
|
+
* )
|
|
47
|
+
* ```
|
|
48
|
+
*
|
|
49
|
+
* @since 4.0.0
|
|
50
|
+
*/
|
|
51
|
+
import type * as Cause from "./Cause.ts";
|
|
52
|
+
import * as Effect from "./Effect.ts";
|
|
53
|
+
import type * as Fiber from "./Fiber.ts";
|
|
54
|
+
import * as Layer from "./Layer.ts";
|
|
55
|
+
import type { Severity } from "./LogLevel.ts";
|
|
56
|
+
import type { ReadonlyRecord } from "./Record.ts";
|
|
57
|
+
import type * as Scope from "./Scope.ts";
|
|
58
|
+
import type * as ServiceMap from "./ServiceMap.ts";
|
|
59
|
+
/**
|
|
60
|
+
* @since 4.0.0
|
|
61
|
+
* @category Type Identifiers
|
|
62
|
+
*/
|
|
63
|
+
export type TypeId = "~effect/ErrorReporter";
|
|
64
|
+
/**
|
|
65
|
+
* @since 4.0.0
|
|
66
|
+
* @category Type Identifiers
|
|
67
|
+
*/
|
|
68
|
+
export declare const TypeId: TypeId;
|
|
69
|
+
/**
|
|
70
|
+
* An `ErrorReporter` receives reported failures and forwards them to an
|
|
71
|
+
* external system (logging service, error tracker, etc.).
|
|
72
|
+
*
|
|
73
|
+
* Reporting is triggered by `Effect.withErrorReporting`,
|
|
74
|
+
* `ErrorReporter.report`, or built-in boundaries in the HTTP and RPC server
|
|
75
|
+
* modules. Use {@link make} to create a reporter — it handles deduplication
|
|
76
|
+
* and per-error annotation extraction automatically.
|
|
77
|
+
*
|
|
78
|
+
* @since 4.0.0
|
|
79
|
+
* @category Models
|
|
80
|
+
*/
|
|
81
|
+
export interface ErrorReporter {
|
|
82
|
+
readonly [TypeId]: TypeId;
|
|
83
|
+
report(options: {
|
|
84
|
+
readonly cause: Cause.Cause<unknown>;
|
|
85
|
+
readonly fiber: Fiber.Fiber<unknown, unknown>;
|
|
86
|
+
readonly timestamp: bigint;
|
|
87
|
+
}): void;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Creates an `ErrorReporter` from a callback.
|
|
91
|
+
*
|
|
92
|
+
* The returned reporter automatically deduplicates causes and individual
|
|
93
|
+
* errors (the same object is never reported twice), skips interruptions,
|
|
94
|
+
* and resolves the `ignore`, `severity`, and `attributes` annotations on
|
|
95
|
+
* each error before invoking your callback.
|
|
96
|
+
*
|
|
97
|
+
* @example
|
|
98
|
+
* ```ts
|
|
99
|
+
* import { ErrorReporter } from "effect"
|
|
100
|
+
*
|
|
101
|
+
* // Forward every failure to the console
|
|
102
|
+
* const consoleReporter = ErrorReporter.make(
|
|
103
|
+
* ({ error, severity, attributes }) => {
|
|
104
|
+
* console.error(`[${severity}]`, error.message, attributes)
|
|
105
|
+
* }
|
|
106
|
+
* )
|
|
107
|
+
* ```
|
|
108
|
+
*
|
|
109
|
+
* @since 4.0.0
|
|
110
|
+
* @category Constructors
|
|
111
|
+
*/
|
|
112
|
+
export declare const make: (report: (options: {
|
|
113
|
+
readonly cause: Cause.Cause<unknown>;
|
|
114
|
+
readonly error: Error;
|
|
115
|
+
readonly attributes: ReadonlyRecord<string, unknown>;
|
|
116
|
+
readonly severity: Severity;
|
|
117
|
+
readonly fiber: Fiber.Fiber<unknown, unknown>;
|
|
118
|
+
readonly timestamp: bigint;
|
|
119
|
+
}) => void) => ErrorReporter;
|
|
120
|
+
/**
|
|
121
|
+
* A `ServiceMap.Reference` holding the set of active `ErrorReporter`s for the
|
|
122
|
+
* current fiber. Defaults to an empty set (no reporting).
|
|
123
|
+
*
|
|
124
|
+
* Prefer {@link layer} to configure reporters via the `Layer` API. Use this
|
|
125
|
+
* reference directly only when you need low-level control (e.g. reading the
|
|
126
|
+
* current reporters or swapping them inside a `FiberRef`).
|
|
127
|
+
*
|
|
128
|
+
* @since 4.0.0
|
|
129
|
+
* @category References
|
|
130
|
+
*/
|
|
131
|
+
export declare const CurrentErrorReporters: ServiceMap.Reference<ReadonlySet<ErrorReporter>>;
|
|
132
|
+
/**
|
|
133
|
+
* Creates a `Layer` that registers one or more `ErrorReporter`s.
|
|
134
|
+
*
|
|
135
|
+
* Reporters can be plain `ErrorReporter` values or effectful
|
|
136
|
+
* `Effect<ErrorReporter>` values that are resolved when the layer is built.
|
|
137
|
+
*
|
|
138
|
+
* By default the provided reporters **replace** any previously registered
|
|
139
|
+
* reporters. Set `mergeWithExisting: true` to add them alongside existing
|
|
140
|
+
* ones.
|
|
141
|
+
*
|
|
142
|
+
* @example
|
|
143
|
+
* ```ts
|
|
144
|
+
* import { Effect, ErrorReporter } from "effect"
|
|
145
|
+
*
|
|
146
|
+
* const consoleReporter = ErrorReporter.make(({ error, severity }) => {
|
|
147
|
+
* console.error(`[${severity}]`, error.message)
|
|
148
|
+
* })
|
|
149
|
+
*
|
|
150
|
+
* const metricsReporter = ErrorReporter.make(({ severity }) => {
|
|
151
|
+
* // increment an error counter by severity
|
|
152
|
+
* })
|
|
153
|
+
*
|
|
154
|
+
* // Replace all existing reporters
|
|
155
|
+
* const ReporterLive = ErrorReporter.layer([
|
|
156
|
+
* consoleReporter,
|
|
157
|
+
* metricsReporter
|
|
158
|
+
* ])
|
|
159
|
+
*
|
|
160
|
+
* // Add to existing reporters instead of replacing
|
|
161
|
+
* const ReporterMerged = ErrorReporter.layer(
|
|
162
|
+
* [metricsReporter],
|
|
163
|
+
* { mergeWithExisting: true }
|
|
164
|
+
* )
|
|
165
|
+
*
|
|
166
|
+
* const program = Effect.gen(function*() {
|
|
167
|
+
* yield* Effect.fail("boom")
|
|
168
|
+
* }).pipe(
|
|
169
|
+
* Effect.withErrorReporting,
|
|
170
|
+
* Effect.provide(ReporterLive)
|
|
171
|
+
* )
|
|
172
|
+
* ```
|
|
173
|
+
*
|
|
174
|
+
* @since 4.0.0
|
|
175
|
+
* @category Layers
|
|
176
|
+
*/
|
|
177
|
+
export declare const layer: <const Reporters extends ReadonlyArray<ErrorReporter | Effect.Effect<ErrorReporter, any, any>>>(reporters: Reporters, options?: {
|
|
178
|
+
readonly mergeWithExisting?: boolean | undefined;
|
|
179
|
+
} | undefined) => Layer.Layer<never, Reporters extends readonly [] ? never : Effect.Error<Reporters[number]>, Exclude<Reporters extends readonly [] ? never : Effect.Services<Reporters[number]>, Scope.Scope>>;
|
|
180
|
+
/**
|
|
181
|
+
* Manually report a `Cause` to all registered `ErrorReporter`s on the
|
|
182
|
+
* current fiber.
|
|
183
|
+
*
|
|
184
|
+
* This is useful when you want to report an error for observability without
|
|
185
|
+
* actually failing the fiber.
|
|
186
|
+
*
|
|
187
|
+
* @example
|
|
188
|
+
* ```ts
|
|
189
|
+
* import { Cause, Effect, ErrorReporter } from "effect"
|
|
190
|
+
*
|
|
191
|
+
* // Log the cause for monitoring, then continue with a fallback
|
|
192
|
+
* const program = Effect.gen(function*() {
|
|
193
|
+
* const cause = Cause.fail("something went wrong")
|
|
194
|
+
* yield* ErrorReporter.report(cause)
|
|
195
|
+
* return "fallback value"
|
|
196
|
+
* })
|
|
197
|
+
* ```
|
|
198
|
+
*
|
|
199
|
+
* @since 4.0.0
|
|
200
|
+
* @category Reporting
|
|
201
|
+
*/
|
|
202
|
+
export declare const report: <E>(cause: Cause.Cause<E>) => Effect.Effect<void>;
|
|
203
|
+
/**
|
|
204
|
+
* Interface that errors can implement to control reporting behavior.
|
|
205
|
+
*
|
|
206
|
+
* All three annotation properties are optional:
|
|
207
|
+
* - `[ErrorReporter.ignore]` — when `true`, the error is never reported
|
|
208
|
+
* - `[ErrorReporter.severity]` — overrides the default `"Error"` severity
|
|
209
|
+
* - `[ErrorReporter.attributes]` — extra key/value pairs forwarded to reporters
|
|
210
|
+
*
|
|
211
|
+
* The global `Error` interface is augmented with `Reportable`, so these
|
|
212
|
+
* properties are available on all `Error` instances.
|
|
213
|
+
*
|
|
214
|
+
* @since 4.0.0
|
|
215
|
+
* @category Annotations
|
|
216
|
+
*/
|
|
217
|
+
export interface Reportable {
|
|
218
|
+
readonly [ignore]?: boolean;
|
|
219
|
+
readonly [severity]?: Severity;
|
|
220
|
+
readonly [attributes]?: ReadonlyRecord<string, unknown>;
|
|
221
|
+
}
|
|
222
|
+
declare global {
|
|
223
|
+
interface Error extends Reportable {
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
/**
|
|
227
|
+
* Symbol key used to mark an error as unreportable.
|
|
228
|
+
*
|
|
229
|
+
* Set this property to `true` on any error class to prevent it from being
|
|
230
|
+
* forwarded to reporters. Useful for expected errors such as HTTP 404s.
|
|
231
|
+
*
|
|
232
|
+
* @example
|
|
233
|
+
* ```ts
|
|
234
|
+
* import { Data, ErrorReporter } from "effect"
|
|
235
|
+
*
|
|
236
|
+
* class NotFoundError extends Data.TaggedError("NotFoundError")<{}> {
|
|
237
|
+
* readonly [ErrorReporter.ignore] = true
|
|
238
|
+
* }
|
|
239
|
+
* ```
|
|
240
|
+
*
|
|
241
|
+
* @since 4.0.0
|
|
242
|
+
* @category Annotations
|
|
243
|
+
*/
|
|
244
|
+
export type ignore = "~effect/ErrorReporter/ignore";
|
|
245
|
+
/**
|
|
246
|
+
* Symbol key used to mark an error as unreportable.
|
|
247
|
+
*
|
|
248
|
+
* Set this property to `true` on any error class to prevent it from being
|
|
249
|
+
* forwarded to reporters. Useful for expected errors such as HTTP 404s.
|
|
250
|
+
*
|
|
251
|
+
* @example
|
|
252
|
+
* ```ts
|
|
253
|
+
* import { Data, ErrorReporter } from "effect"
|
|
254
|
+
*
|
|
255
|
+
* class NotFoundError extends Data.TaggedError("NotFoundError")<{}> {
|
|
256
|
+
* readonly [ErrorReporter.ignore] = true
|
|
257
|
+
* }
|
|
258
|
+
* ```
|
|
259
|
+
*
|
|
260
|
+
* @since 4.0.0
|
|
261
|
+
* @category Annotations
|
|
262
|
+
*/
|
|
263
|
+
export declare const ignore: ignore;
|
|
264
|
+
/**
|
|
265
|
+
* Returns `true` if the given value has the `ErrorReporter.ignore` annotation
|
|
266
|
+
* set to `true`.
|
|
267
|
+
*
|
|
268
|
+
* @since 4.0.0
|
|
269
|
+
* @category Annotations
|
|
270
|
+
*/
|
|
271
|
+
export declare const isIgnored: (u: unknown) => boolean;
|
|
272
|
+
/**
|
|
273
|
+
* Symbol key used to override the severity level of an error.
|
|
274
|
+
*
|
|
275
|
+
* When set, the reporter callback receives this value as `severity` instead
|
|
276
|
+
* of the default `"Error"`. Accepted values are the `LogLevel.Severity`
|
|
277
|
+
* literals: `"Trace"`, `"Debug"`, `"Info"`, `"Warn"`, `"Error"`, `"Fatal"`.
|
|
278
|
+
*
|
|
279
|
+
* @example
|
|
280
|
+
* ```ts
|
|
281
|
+
* import { Data, ErrorReporter } from "effect"
|
|
282
|
+
*
|
|
283
|
+
* class DeprecationWarning extends Data.TaggedError("DeprecationWarning")<{}> {
|
|
284
|
+
* readonly [ErrorReporter.severity] = "Warn" as const
|
|
285
|
+
* }
|
|
286
|
+
* ```
|
|
287
|
+
*
|
|
288
|
+
* @since 4.0.0
|
|
289
|
+
* @category Annotations
|
|
290
|
+
*/
|
|
291
|
+
export type severity = "~effect/ErrorReporter/severity";
|
|
292
|
+
/**
|
|
293
|
+
* Symbol key used to override the severity level of an error.
|
|
294
|
+
*
|
|
295
|
+
* When set, the reporter callback receives this value as `severity` instead
|
|
296
|
+
* of the default `"Error"`. Accepted values are the `LogLevel.Severity`
|
|
297
|
+
* literals: `"Trace"`, `"Debug"`, `"Info"`, `"Warn"`, `"Error"`, `"Fatal"`.
|
|
298
|
+
*
|
|
299
|
+
* @example
|
|
300
|
+
* ```ts
|
|
301
|
+
* import { Data, ErrorReporter } from "effect"
|
|
302
|
+
*
|
|
303
|
+
* class DeprecationWarning extends Data.TaggedError("DeprecationWarning")<{}> {
|
|
304
|
+
* readonly [ErrorReporter.severity] = "Warn" as const
|
|
305
|
+
* }
|
|
306
|
+
* ```
|
|
307
|
+
*
|
|
308
|
+
* @since 4.0.0
|
|
309
|
+
* @category Annotations
|
|
310
|
+
*/
|
|
311
|
+
export declare const severity: severity;
|
|
312
|
+
/**
|
|
313
|
+
* Reads the `ErrorReporter.severity` annotation from an error object,
|
|
314
|
+
* falling back to `"Error"` when unset or invalid.
|
|
315
|
+
*
|
|
316
|
+
* @since 4.0.0
|
|
317
|
+
* @category Annotations
|
|
318
|
+
*/
|
|
319
|
+
export declare const getSeverity: (error: object) => Severity;
|
|
320
|
+
/**
|
|
321
|
+
* Symbol key used to attach extra key/value metadata to an error report.
|
|
322
|
+
*
|
|
323
|
+
* Reporters receive these attributes alongside the error, making it easy to
|
|
324
|
+
* include contextual information such as user IDs, request IDs, or any
|
|
325
|
+
* domain-specific data useful for debugging.
|
|
326
|
+
*
|
|
327
|
+
* @example
|
|
328
|
+
* ```ts
|
|
329
|
+
* import { Data, ErrorReporter } from "effect"
|
|
330
|
+
*
|
|
331
|
+
* class PaymentError extends Data.TaggedError("PaymentError")<{
|
|
332
|
+
* readonly orderId: string
|
|
333
|
+
* }> {
|
|
334
|
+
* readonly [ErrorReporter.attributes] = {
|
|
335
|
+
* orderId: this.orderId
|
|
336
|
+
* }
|
|
337
|
+
* }
|
|
338
|
+
* ```
|
|
339
|
+
*
|
|
340
|
+
* @since 4.0.0
|
|
341
|
+
* @category Annotations
|
|
342
|
+
*/
|
|
343
|
+
export type attributes = "~effect/ErrorReporter/attributes";
|
|
344
|
+
/**
|
|
345
|
+
* Symbol key used to attach extra key/value metadata to an error report.
|
|
346
|
+
*
|
|
347
|
+
* Reporters receive these attributes alongside the error, making it easy to
|
|
348
|
+
* include contextual information such as user IDs, request IDs, or any
|
|
349
|
+
* domain-specific data useful for debugging.
|
|
350
|
+
*
|
|
351
|
+
* @example
|
|
352
|
+
* ```ts
|
|
353
|
+
* import { Data, ErrorReporter } from "effect"
|
|
354
|
+
*
|
|
355
|
+
* class PaymentError extends Data.TaggedError("PaymentError")<{
|
|
356
|
+
* readonly orderId: string
|
|
357
|
+
* }> {
|
|
358
|
+
* readonly [ErrorReporter.attributes] = {
|
|
359
|
+
* orderId: this.orderId
|
|
360
|
+
* }
|
|
361
|
+
* }
|
|
362
|
+
* ```
|
|
363
|
+
*
|
|
364
|
+
* @since 4.0.0
|
|
365
|
+
* @category Annotations
|
|
366
|
+
*/
|
|
367
|
+
export declare const attributes: attributes;
|
|
368
|
+
/**
|
|
369
|
+
* Reads the `ErrorReporter.attributes` annotation from an error object,
|
|
370
|
+
* returning an empty record when unset.
|
|
371
|
+
*
|
|
372
|
+
* @since 4.0.0
|
|
373
|
+
* @category Annotations
|
|
374
|
+
*/
|
|
375
|
+
export declare const getAttributes: (error: object) => ReadonlyRecord<string, unknown>;
|
|
376
|
+
//# sourceMappingURL=ErrorReporter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ErrorReporter.d.ts","sourceRoot":"","sources":["../src/ErrorReporter.ts"],"names":[],"mappings":"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"}
|