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/Stream.js
CHANGED
|
@@ -12,12 +12,12 @@ import * as Equal from "./Equal.js";
|
|
|
12
12
|
import * as ExecutionPlan from "./ExecutionPlan.js";
|
|
13
13
|
import * as Exit from "./Exit.js";
|
|
14
14
|
import * as Fiber from "./Fiber.js";
|
|
15
|
-
import * as Filter from "./Filter.js";
|
|
16
15
|
import { constant, constTrue, constVoid, dual, identity } from "./Function.js";
|
|
17
16
|
import * as internalExecutionPlan from "./internal/executionPlan.js";
|
|
18
17
|
import * as internal from "./internal/stream.js";
|
|
19
18
|
import { addSpanStackTrace } from "./internal/tracer.js";
|
|
20
19
|
import * as Iterable from "./Iterable.js";
|
|
20
|
+
import * as Latch from "./Latch.js";
|
|
21
21
|
import * as MutableHashMap from "./MutableHashMap.js";
|
|
22
22
|
import * as MutableList from "./MutableList.js";
|
|
23
23
|
import * as Option from "./Option.js";
|
|
@@ -1588,8 +1588,8 @@ export const tapBoth = /*#__PURE__*/dual(2, (self, options) => self.pipe(tapErro
|
|
|
1588
1588
|
* @category Sequencing
|
|
1589
1589
|
*/
|
|
1590
1590
|
export const tapSink = /*#__PURE__*/dual(2, (self, sink) => transformPullBracket(self, Effect.fnUntraced(function* (pull, _, scope) {
|
|
1591
|
-
const upstreamLatch =
|
|
1592
|
-
const sinkLatch =
|
|
1591
|
+
const upstreamLatch = Latch.makeUnsafe();
|
|
1592
|
+
const sinkLatch = Latch.makeUnsafe();
|
|
1593
1593
|
let chunk = undefined;
|
|
1594
1594
|
let causeSink = undefined;
|
|
1595
1595
|
let sinkDone = false;
|
|
@@ -2647,7 +2647,7 @@ export const zipWithPreviousAndNext = self => mapAccumArray(self, () => ({
|
|
|
2647
2647
|
export const zipLatestAll = (...streams) => fromChannel(Channel.suspend(() => {
|
|
2648
2648
|
const latest = [];
|
|
2649
2649
|
const emitted = new Set();
|
|
2650
|
-
const readyLatch =
|
|
2650
|
+
const readyLatch = Latch.makeUnsafe();
|
|
2651
2651
|
return Channel.mergeAll(Channel.fromArray(streams.map((s, i) => s.channel.pipe(Channel.flattenArray, Channel.mapEffect(a => {
|
|
2652
2652
|
latest[i] = a;
|
|
2653
2653
|
if (!emitted.has(i)) {
|
|
@@ -2807,19 +2807,22 @@ export const race = /*#__PURE__*/dual(2, (left, right) => raceAll(left, right));
|
|
|
2807
2807
|
* @since 2.0.0
|
|
2808
2808
|
* @category Filtering
|
|
2809
2809
|
*/
|
|
2810
|
-
export const filter = /*#__PURE__*/dual(2, (self,
|
|
2810
|
+
export const filter = /*#__PURE__*/dual(2, (self, predicate) => fromChannel(Channel.filterArray(toChannel(self), predicate)));
|
|
2811
2811
|
/**
|
|
2812
|
-
*
|
|
2812
|
+
* Filters and maps stream elements in one pass using a `Filter`.
|
|
2813
|
+
*
|
|
2814
|
+
* @since 4.0.0
|
|
2815
|
+
* @category Filtering
|
|
2816
|
+
*/
|
|
2817
|
+
export const filterMap = /*#__PURE__*/dual(2, (self, filter) => fromChannel(Channel.filterMapArray(toChannel(self), filter)));
|
|
2818
|
+
/**
|
|
2819
|
+
* Effectfully filters elements in a single pass.
|
|
2813
2820
|
*
|
|
2814
2821
|
* @example
|
|
2815
2822
|
* ```ts
|
|
2816
|
-
* import { Console, Effect,
|
|
2817
|
-
*
|
|
2818
|
-
* const filter = Filter.makeEffect((n: number) =>
|
|
2819
|
-
* Effect.succeed(n > 2 ? Result.succeed(n + 1) : Result.fail(n))
|
|
2820
|
-
* )
|
|
2823
|
+
* import { Console, Effect, Stream } from "effect"
|
|
2821
2824
|
*
|
|
2822
|
-
* const stream = Stream.make(1, 2, 3, 4).pipe(Stream.filterEffect(
|
|
2825
|
+
* const stream = Stream.make(1, 2, 3, 4).pipe(Stream.filterEffect((n) => Effect.succeed(n > 2)))
|
|
2823
2826
|
*
|
|
2824
2827
|
* const program = Effect.gen(function*() {
|
|
2825
2828
|
* const result = yield* Stream.runCollect(stream)
|
|
@@ -2827,27 +2830,32 @@ export const filter = /*#__PURE__*/dual(2, (self, filter) => fromChannel(Channel
|
|
|
2827
2830
|
* })
|
|
2828
2831
|
*
|
|
2829
2832
|
* Effect.runPromise(program)
|
|
2830
|
-
* // Output: [
|
|
2833
|
+
* // Output: [ 3, 4 ]
|
|
2831
2834
|
* ```
|
|
2832
2835
|
*
|
|
2833
2836
|
* @since 2.0.0
|
|
2834
2837
|
* @category Filtering
|
|
2835
2838
|
*/
|
|
2836
|
-
export const filterEffect = /*#__PURE__*/dual(2, (self,
|
|
2839
|
+
export const filterEffect = /*#__PURE__*/dual(2, (self, predicate) => fromChannel(Channel.filterArrayEffect(toChannel(self), predicate)));
|
|
2837
2840
|
/**
|
|
2838
|
-
*
|
|
2841
|
+
* Effectfully filters and maps elements in a single pass.
|
|
2842
|
+
*
|
|
2843
|
+
* @since 4.0.0
|
|
2844
|
+
* @category Filtering
|
|
2845
|
+
*/
|
|
2846
|
+
export const filterMapEffect = /*#__PURE__*/dual(2, (self, filter) => fromChannel(Channel.filterMapArrayEffect(toChannel(self), filter)));
|
|
2847
|
+
/**
|
|
2848
|
+
* Partitions a stream using a `Filter` and exposes passing and failing values as queues.
|
|
2839
2849
|
*
|
|
2840
2850
|
* Each queue fails with the stream error or `Cause.Done` when the source ends.
|
|
2841
2851
|
*
|
|
2842
2852
|
* @example
|
|
2843
2853
|
* ```ts
|
|
2844
|
-
* import { Console, Effect,
|
|
2854
|
+
* import { Console, Effect, Result, Stream } from "effect"
|
|
2845
2855
|
*
|
|
2846
2856
|
* const program = Effect.gen(function*() {
|
|
2847
2857
|
* const [passes, fails] = yield* Stream.make(1, 2, 3, 4).pipe(
|
|
2848
|
-
* Stream.partitionQueue(
|
|
2849
|
-
* Filter.make((n) => (n % 2 === 0 ? Result.succeed(n) : Result.fail(n)))
|
|
2850
|
-
* )
|
|
2858
|
+
* Stream.partitionQueue((n) => n % 2 === 0 ? Result.succeed(n) : Result.fail(n))
|
|
2851
2859
|
* )
|
|
2852
2860
|
*
|
|
2853
2861
|
* const passValues = yield* Stream.fromQueue(passes).pipe(Stream.runCollect)
|
|
@@ -2875,11 +2883,19 @@ export const partitionQueue = /*#__PURE__*/dual(args => isStream(args[0]), /*#__
|
|
|
2875
2883
|
const fails = yield* Queue.make({
|
|
2876
2884
|
capacity
|
|
2877
2885
|
});
|
|
2878
|
-
const partitionArr = Arr.partition(filter);
|
|
2879
2886
|
yield* Effect.gen(function* () {
|
|
2880
2887
|
while (true) {
|
|
2881
2888
|
const chunk = yield* pull;
|
|
2882
|
-
const
|
|
2889
|
+
const excluded = [];
|
|
2890
|
+
const satisfying = [];
|
|
2891
|
+
for (let i = 0; i < chunk.length; i++) {
|
|
2892
|
+
const result = filter(chunk[i]);
|
|
2893
|
+
if (Result.isFailure(result)) {
|
|
2894
|
+
excluded.push(result.failure);
|
|
2895
|
+
} else {
|
|
2896
|
+
satisfying.push(result.success);
|
|
2897
|
+
}
|
|
2898
|
+
}
|
|
2883
2899
|
let passFiber = undefined;
|
|
2884
2900
|
if (satisfying.length > 0) {
|
|
2885
2901
|
const leftover = Queue.offerAllUnsafe(passes, satisfying);
|
|
@@ -2903,38 +2919,14 @@ export const partitionQueue = /*#__PURE__*/dual(args => isStream(args[0]), /*#__
|
|
|
2903
2919
|
return [passes, fails];
|
|
2904
2920
|
}));
|
|
2905
2921
|
/**
|
|
2906
|
-
* Splits a stream using an effectful
|
|
2922
|
+
* Splits a stream using an effectful `Filter`, producing pass and fail streams.
|
|
2907
2923
|
*
|
|
2908
2924
|
* @since 4.0.0
|
|
2909
2925
|
* @category Filtering
|
|
2910
|
-
*
|
|
2911
|
-
* @example
|
|
2912
|
-
* ```ts
|
|
2913
|
-
* import { Console, Effect, Result, Stream } from "effect"
|
|
2914
|
-
*
|
|
2915
|
-
* const program = Effect.scoped(
|
|
2916
|
-
* Effect.gen(function*() {
|
|
2917
|
-
* const [evens, odds] = yield* Stream.make(1, 2, 3, 4).pipe(
|
|
2918
|
-
* Stream.partitionEffect((n) =>
|
|
2919
|
-
* Effect.succeed(n % 2 === 0 ? Result.succeed(n) : Result.fail(n))
|
|
2920
|
-
* )
|
|
2921
|
-
* )
|
|
2922
|
-
* const result = yield* Effect.all({
|
|
2923
|
-
* evens: Stream.runCollect(evens),
|
|
2924
|
-
* odds: Stream.runCollect(odds)
|
|
2925
|
-
* })
|
|
2926
|
-
* yield* Console.log(result)
|
|
2927
|
-
* })
|
|
2928
|
-
* )
|
|
2929
|
-
*
|
|
2930
|
-
* Effect.runPromise(program)
|
|
2931
|
-
* // Output: { evens: [ 2, 4 ], odds: [ 1, 3 ] }
|
|
2932
|
-
* ```
|
|
2933
2926
|
*/
|
|
2934
|
-
export const partitionEffect = /*#__PURE__*/dual(args => isStream(args[0]), (self, filter, options) => Effect.map(
|
|
2927
|
+
export const partitionEffect = /*#__PURE__*/dual(args => isStream(args[0]), (self, filter, options) => Effect.map(partitionQueue(mapEffect(self, a => filter(a), options), result => result, options), ([passes, fails]) => [fromQueue(passes), fromQueue(fails)]));
|
|
2935
2928
|
/**
|
|
2936
|
-
* Splits a stream into excluded and satisfying substreams using a
|
|
2937
|
-
* refinement, or Filter.
|
|
2929
|
+
* Splits a stream into excluded and satisfying substreams using a `Filter`.
|
|
2938
2930
|
*
|
|
2939
2931
|
* The faster stream may advance up to `bufferSize` elements ahead of the slower
|
|
2940
2932
|
* one.
|
|
@@ -2944,12 +2936,12 @@ export const partitionEffect = /*#__PURE__*/dual(args => isStream(args[0]), (sel
|
|
|
2944
2936
|
*
|
|
2945
2937
|
* @example
|
|
2946
2938
|
* ```ts
|
|
2947
|
-
* import { Console, Effect, Stream } from "effect"
|
|
2939
|
+
* import { Console, Effect, Result, Stream } from "effect"
|
|
2948
2940
|
*
|
|
2949
2941
|
* const program = Effect.gen(function*() {
|
|
2950
2942
|
* const [excluded, satisfying] = yield* Stream.partition(
|
|
2951
2943
|
* Stream.make(1, 2, 3, 4),
|
|
2952
|
-
* (n) => n % 2 === 0
|
|
2944
|
+
* (n) => n % 2 === 0 ? Result.succeed(n) : Result.fail(n)
|
|
2953
2945
|
* )
|
|
2954
2946
|
* const left = yield* Stream.runCollect(excluded)
|
|
2955
2947
|
* const right = yield* Stream.runCollect(satisfying)
|
|
@@ -2960,9 +2952,9 @@ export const partitionEffect = /*#__PURE__*/dual(args => isStream(args[0]), (sel
|
|
|
2960
2952
|
* })
|
|
2961
2953
|
* ```
|
|
2962
2954
|
*/
|
|
2963
|
-
export const partition = /*#__PURE__*/dual(args => isStream(args[0]), (self, filter, options) => Effect.map(partitionQueue(filter, {
|
|
2955
|
+
export const partition = /*#__PURE__*/dual(args => isStream(args[0]), (self, filter, options) => Effect.map(partitionQueue(self, filter, {
|
|
2964
2956
|
capacity: options?.bufferSize ?? 16
|
|
2965
|
-
})
|
|
2957
|
+
}), ([passes, fails]) => [fromQueue(fails), fromQueue(passes)]));
|
|
2966
2958
|
/**
|
|
2967
2959
|
* Returns the specified stream if the given condition is satisfied, otherwise
|
|
2968
2960
|
* returns an empty stream.
|
|
@@ -3218,7 +3210,7 @@ catch_ as catch };
|
|
|
3218
3210
|
*/
|
|
3219
3211
|
export const tapError = /*#__PURE__*/dual(2, (self, f) => self.channel.pipe(Channel.tapError(f), fromChannel));
|
|
3220
3212
|
/**
|
|
3221
|
-
* Recovers from errors that match a
|
|
3213
|
+
* Recovers from errors that match a predicate by switching to a recovery stream.
|
|
3222
3214
|
*
|
|
3223
3215
|
* When a failure matches the filter, the stream switches to the recovery
|
|
3224
3216
|
* stream. Non-matching failures propagate downstream, so the error type is
|
|
@@ -3232,12 +3224,12 @@ export const tapError = /*#__PURE__*/dual(2, (self, f) => self.channel.pipe(Chan
|
|
|
3232
3224
|
*
|
|
3233
3225
|
* @example
|
|
3234
3226
|
* ```ts
|
|
3235
|
-
* import { Console, Effect,
|
|
3227
|
+
* import { Console, Effect, Stream } from "effect"
|
|
3236
3228
|
*
|
|
3237
3229
|
* const stream = Stream.make(1, 2).pipe(
|
|
3238
3230
|
* Stream.concat(Stream.fail(42)),
|
|
3239
3231
|
* Stream.catchIf(
|
|
3240
|
-
*
|
|
3232
|
+
* (error): error is 42 => error === 42,
|
|
3241
3233
|
* () => Stream.make(999)
|
|
3242
3234
|
* )
|
|
3243
3235
|
* )
|
|
@@ -3254,7 +3246,15 @@ export const tapError = /*#__PURE__*/dual(2, (self, f) => self.channel.pipe(Chan
|
|
|
3254
3246
|
* @since 4.0.0
|
|
3255
3247
|
* @category Error Handling
|
|
3256
3248
|
*/
|
|
3257
|
-
export const catchIf = /*#__PURE__*/dual(args => isStream(args[0]), (self,
|
|
3249
|
+
export const catchIf = /*#__PURE__*/dual(args => isStream(args[0]), (self, predicate, f, orElse) => fromChannel(Channel.catchIf(toChannel(self), predicate, e => f(e).channel, orElse && (e => orElse(e).channel))));
|
|
3250
|
+
/**
|
|
3251
|
+
* Recovers from errors that match a `Filter` by switching to a recovery
|
|
3252
|
+
* stream.
|
|
3253
|
+
*
|
|
3254
|
+
* @since 4.0.0
|
|
3255
|
+
* @category Error Handling
|
|
3256
|
+
*/
|
|
3257
|
+
export const catchFilter = /*#__PURE__*/dual(args => isStream(args[0]), (self, filter, f, orElse) => fromChannel(Channel.catchFilter(toChannel(self), filter, e => f(e).channel, orElse && (e => orElse(e).channel))));
|
|
3258
3258
|
/**
|
|
3259
3259
|
* Recovers from failures whose `_tag` matches the provided value by switching to
|
|
3260
3260
|
* the stream returned by `f`.
|
|
@@ -3330,7 +3330,7 @@ export const catchTag = /*#__PURE__*/dual(args => isStream(args[0]), (self, k, f
|
|
|
3330
3330
|
*/
|
|
3331
3331
|
export const catchTags = /*#__PURE__*/dual(args => isStream(args[0]), (self, cases, orElse) => {
|
|
3332
3332
|
let keys;
|
|
3333
|
-
return
|
|
3333
|
+
return catchFilter(self, e => {
|
|
3334
3334
|
keys ??= Object.keys(cases);
|
|
3335
3335
|
return hasProperty(e, "_tag") && isString(e["_tag"]) && keys.includes(e["_tag"]) ? Result.succeed(e) : Result.fail(e);
|
|
3336
3336
|
}, e => cases[e["_tag"]](e), orElse);
|
|
@@ -3378,7 +3378,7 @@ export const catchTags = /*#__PURE__*/dual(args => isStream(args[0]), (self, cas
|
|
|
3378
3378
|
* @since 4.0.0
|
|
3379
3379
|
* @category Error Handling
|
|
3380
3380
|
*/
|
|
3381
|
-
export const catchReason = /*#__PURE__*/dual(args => isStream(args[0]), (self, errorTag, reasonTag, f, orElse) => fromChannel(Channel.catchReason(toChannel(self), errorTag, reasonTag, reason => f(reason).channel, orElse && (reason => orElse(reason).channel))));
|
|
3381
|
+
export const catchReason = /*#__PURE__*/dual(args => isStream(args[0]), (self, errorTag, reasonTag, f, orElse) => fromChannel(Channel.catchReason(toChannel(self), errorTag, reasonTag, (reason, error) => f(reason, error).channel, orElse && ((reason, error) => orElse(reason, error).channel))));
|
|
3382
3382
|
/**
|
|
3383
3383
|
* Catches multiple reasons within a tagged error using an object of handlers.
|
|
3384
3384
|
*
|
|
@@ -3424,9 +3424,9 @@ export const catchReasons = /*#__PURE__*/dual(args => isStream(args[0]), (self,
|
|
|
3424
3424
|
const handlers = {};
|
|
3425
3425
|
for (const key of Object.keys(cases)) {
|
|
3426
3426
|
const handler = cases[key];
|
|
3427
|
-
handlers[key] = reason => handler(reason).channel;
|
|
3427
|
+
handlers[key] = (reason, error) => handler(reason, error).channel;
|
|
3428
3428
|
}
|
|
3429
|
-
const orElseHandler = orElse && (reason => orElse(reason).channel);
|
|
3429
|
+
const orElseHandler = orElse && ((reason, error) => orElse(reason, error).channel);
|
|
3430
3430
|
return fromChannel(Channel.catchReasons(self.channel, errorTag, handlers, orElseHandler));
|
|
3431
3431
|
});
|
|
3432
3432
|
/**
|
|
@@ -3486,7 +3486,15 @@ export const mapError = /*#__PURE__*/dual(2, (self, f) => fromChannel(Channel.ma
|
|
|
3486
3486
|
* @since 4.0.0
|
|
3487
3487
|
* @category Error Handling
|
|
3488
3488
|
*/
|
|
3489
|
-
export const catchCauseIf = /*#__PURE__*/dual(3, (self,
|
|
3489
|
+
export const catchCauseIf = /*#__PURE__*/dual(3, (self, predicate, f) => fromChannel(Channel.catchCauseIf(self.channel, predicate, cause => f(cause).channel)));
|
|
3490
|
+
/**
|
|
3491
|
+
* Recovers from stream failures by filtering the `Cause` and switching to a
|
|
3492
|
+
* recovery stream.
|
|
3493
|
+
*
|
|
3494
|
+
* @since 4.0.0
|
|
3495
|
+
* @category Error Handling
|
|
3496
|
+
*/
|
|
3497
|
+
export const catchCauseFilter = /*#__PURE__*/dual(3, (self, filter, f) => fromChannel(Channel.catchCauseFilter(self.channel, filter, (failure, cause) => f(failure, cause).channel)));
|
|
3490
3498
|
/**
|
|
3491
3499
|
* Switches to a fallback stream if this stream is empty.
|
|
3492
3500
|
*
|
|
@@ -3900,13 +3908,34 @@ export const takeUntilEffect = /*#__PURE__*/dual(args => isStream(args[0]), (sel
|
|
|
3900
3908
|
* @since 2.0.0
|
|
3901
3909
|
* @category Filtering
|
|
3902
3910
|
*/
|
|
3903
|
-
export const takeWhile = /*#__PURE__*/dual(2, (self,
|
|
3911
|
+
export const takeWhile = /*#__PURE__*/dual(2, (self, predicate) => transformPull(self, (pull, _scope) => Effect.sync(() => {
|
|
3904
3912
|
let i = 0;
|
|
3905
3913
|
let done = false;
|
|
3906
3914
|
const pump = Effect.flatMap(Effect.suspend(() => done ? Cause.done() : pull), chunk => {
|
|
3907
3915
|
const out = [];
|
|
3908
3916
|
for (let j = 0; j < chunk.length; j++) {
|
|
3909
|
-
|
|
3917
|
+
if (!predicate(chunk[j], i++)) {
|
|
3918
|
+
done = true;
|
|
3919
|
+
break;
|
|
3920
|
+
}
|
|
3921
|
+
out.push(chunk[j]);
|
|
3922
|
+
}
|
|
3923
|
+
return Arr.isReadonlyArrayNonEmpty(out) ? Effect.succeed(out) : done ? Cause.done() : pump;
|
|
3924
|
+
});
|
|
3925
|
+
return pump;
|
|
3926
|
+
})));
|
|
3927
|
+
/**
|
|
3928
|
+
* Takes the longest initial prefix of elements that satisfy the filter.
|
|
3929
|
+
*
|
|
3930
|
+
* @since 4.0.0
|
|
3931
|
+
* @category Filtering
|
|
3932
|
+
*/
|
|
3933
|
+
export const takeWhileFilter = /*#__PURE__*/dual(2, (self, filter) => transformPull(self, (pull, _scope) => Effect.sync(() => {
|
|
3934
|
+
let done = false;
|
|
3935
|
+
const pump = Effect.flatMap(Effect.suspend(() => done ? Cause.done() : pull), chunk => {
|
|
3936
|
+
const out = [];
|
|
3937
|
+
for (let j = 0; j < chunk.length; j++) {
|
|
3938
|
+
const result = filter(chunk[j]);
|
|
3910
3939
|
if (Result.isFailure(result)) {
|
|
3911
3940
|
done = true;
|
|
3912
3941
|
break;
|
|
@@ -4043,11 +4072,27 @@ export const dropUntilEffect = /*#__PURE__*/dual(2, (self, predicate) => drop(dr
|
|
|
4043
4072
|
* @since 2.0.0
|
|
4044
4073
|
* @category Filtering
|
|
4045
4074
|
*/
|
|
4046
|
-
export const dropWhile = /*#__PURE__*/dual(2, (self,
|
|
4075
|
+
export const dropWhile = /*#__PURE__*/dual(2, (self, predicate) => transformPull(self, (pull, _scope) => Effect.sync(() => {
|
|
4047
4076
|
let dropping = true;
|
|
4048
4077
|
let index = 0;
|
|
4049
4078
|
const filtered = Effect.flatMap(pull, arr => {
|
|
4050
|
-
const found = arr.findIndex(a =>
|
|
4079
|
+
const found = arr.findIndex(a => !predicate(a, index++));
|
|
4080
|
+
if (found === -1) return filtered;
|
|
4081
|
+
dropping = false;
|
|
4082
|
+
return Effect.succeed(arr.slice(found));
|
|
4083
|
+
});
|
|
4084
|
+
return Effect.suspend(() => dropping ? filtered : pull);
|
|
4085
|
+
})));
|
|
4086
|
+
/**
|
|
4087
|
+
* Drops elements while the filter succeeds.
|
|
4088
|
+
*
|
|
4089
|
+
* @since 4.0.0
|
|
4090
|
+
* @category Filtering
|
|
4091
|
+
*/
|
|
4092
|
+
export const dropWhileFilter = /*#__PURE__*/dual(2, (self, filter) => transformPull(self, (pull, _scope) => Effect.sync(() => {
|
|
4093
|
+
let dropping = true;
|
|
4094
|
+
const filtered = Effect.flatMap(pull, arr => {
|
|
4095
|
+
const found = arr.findIndex(a => Result.isFailure(filter(a)));
|
|
4051
4096
|
if (found === -1) return filtered;
|
|
4052
4097
|
dropping = false;
|
|
4053
4098
|
return Effect.succeed(arr.slice(found));
|
|
@@ -4639,13 +4684,13 @@ export const scanEffect = /*#__PURE__*/dual(3, (self, initial, f) => self.channe
|
|
|
4639
4684
|
*/
|
|
4640
4685
|
export const debounce = /*#__PURE__*/dual(2, (self, duration) => transformPull(self, Effect.fnUntraced(function* (pull, scope) {
|
|
4641
4686
|
const clock = yield* Clock;
|
|
4642
|
-
const durationMs = Duration.toMillis(Duration.
|
|
4687
|
+
const durationMs = Duration.toMillis(Duration.fromInputUnsafe(duration));
|
|
4643
4688
|
let lastArr;
|
|
4644
4689
|
let cause;
|
|
4645
4690
|
let emitAtMs = Infinity;
|
|
4646
|
-
const pullLatch =
|
|
4647
|
-
const emitLatch =
|
|
4648
|
-
const endLatch =
|
|
4691
|
+
const pullLatch = Latch.makeUnsafe();
|
|
4692
|
+
const emitLatch = Latch.makeUnsafe();
|
|
4693
|
+
const endLatch = Latch.makeUnsafe();
|
|
4649
4694
|
yield* pull.pipe(pullLatch.whenOpen, Effect.flatMap(arr => {
|
|
4650
4695
|
emitLatch.openUnsafe();
|
|
4651
4696
|
lastArr = arr;
|
|
@@ -4736,7 +4781,7 @@ export const throttleEffect = /*#__PURE__*/dual(2, (self, options) => {
|
|
|
4736
4781
|
return throttleShapeEffect(self, options.cost, options.units, options.duration, burst);
|
|
4737
4782
|
});
|
|
4738
4783
|
const throttleEnforceEffect = (self, cost, units, duration, burst) => transformPull(self, pull => Effect.clockWith(clock => {
|
|
4739
|
-
const durationMs = Duration.toMillis(Duration.
|
|
4784
|
+
const durationMs = Duration.toMillis(Duration.fromInputUnsafe(duration));
|
|
4740
4785
|
const max = units + burst < 0 ? Number.POSITIVE_INFINITY : units + burst;
|
|
4741
4786
|
let tokens = units;
|
|
4742
4787
|
let timestampMs = clock.currentTimeMillisUnsafe();
|
|
@@ -4758,7 +4803,7 @@ const throttleEnforceEffect = (self, cost, units, duration, burst) => transformP
|
|
|
4758
4803
|
}));
|
|
4759
4804
|
}));
|
|
4760
4805
|
const throttleShapeEffect = (self, cost, units, duration, burst) => transformPull(self, pull => Effect.clockWith(clock => {
|
|
4761
|
-
const durationMs = Duration.toMillis(Duration.
|
|
4806
|
+
const durationMs = Duration.toMillis(Duration.fromInputUnsafe(duration));
|
|
4762
4807
|
const max = units + burst < 0 ? Number.POSITIVE_INFINITY : units + burst;
|
|
4763
4808
|
let tokens = units;
|
|
4764
4809
|
let timestampMs = clock.currentTimeMillisUnsafe();
|
|
@@ -5125,7 +5170,7 @@ export const aggregate = /*#__PURE__*/dual(2, (self, sink) => aggregateWithin(se
|
|
|
5125
5170
|
*/
|
|
5126
5171
|
export const aggregateWithin = /*#__PURE__*/dual(3, (self, sink, schedule) => fromChannel(Channel.fromTransformBracket(Effect.fnUntraced(function* (_upstream, _, scope) {
|
|
5127
5172
|
const pull = yield* Channel.toPullScoped(self.channel, _);
|
|
5128
|
-
const pullLatch =
|
|
5173
|
+
const pullLatch = Latch.makeUnsafe(false);
|
|
5129
5174
|
const scheduleStep = Symbol();
|
|
5130
5175
|
const buffer = yield* Queue.make({
|
|
5131
5176
|
capacity: 0
|
|
@@ -5141,11 +5186,13 @@ export const aggregateWithin = /*#__PURE__*/dual(3, (self, sink, schedule) => fr
|
|
|
5141
5186
|
Effect.catchCause(cause => Queue.failCause(buffer, cause)), Effect.forkIn(scope));
|
|
5142
5187
|
// schedule -> buffer
|
|
5143
5188
|
let lastOutput = Option.none();
|
|
5189
|
+
let leftover;
|
|
5144
5190
|
const step = yield* Schedule.toStepWithSleep(schedule);
|
|
5145
|
-
const stepToBuffer = Effect.suspend(
|
|
5191
|
+
const stepToBuffer = Effect.suspend(function loop() {
|
|
5192
|
+
return step(lastOutput).pipe(Effect.flatMap(() => !hadChunk && leftover === undefined ? loop() : Queue.offer(buffer, scheduleStep)), Effect.flatMap(() => Effect.never), Pull.catchDone(() => Cause.done()));
|
|
5193
|
+
});
|
|
5146
5194
|
// buffer -> sink
|
|
5147
5195
|
const pullFromBuffer = Queue.take(buffer).pipe(Effect.flatMap(arr => arr === scheduleStep ? Cause.done() : Effect.succeed(arr)));
|
|
5148
|
-
let leftover;
|
|
5149
5196
|
const sinkUpstream = Effect.suspend(() => {
|
|
5150
5197
|
if (leftover !== undefined) {
|
|
5151
5198
|
const chunk = leftover;
|
|
@@ -5157,7 +5204,7 @@ export const aggregateWithin = /*#__PURE__*/dual(3, (self, sink, schedule) => fr
|
|
|
5157
5204
|
return pullFromBuffer;
|
|
5158
5205
|
});
|
|
5159
5206
|
const catchSinkHalt = Effect.flatMap(([value, leftover_]) => {
|
|
5160
|
-
// ignore the last output if the
|
|
5207
|
+
// ignore the last output if the upstream only pulled a halt
|
|
5161
5208
|
if (!hadChunk && buffer.state._tag === "Done") return Cause.done();
|
|
5162
5209
|
lastOutput = Option.some(value);
|
|
5163
5210
|
leftover = leftover_;
|
|
@@ -6168,7 +6215,7 @@ export const updateService = /*#__PURE__*/dual(3, (self, service, f) => updateSe
|
|
|
6168
6215
|
export const withSpan = function () {
|
|
6169
6216
|
const dataFirst = isStream(arguments[0]);
|
|
6170
6217
|
const name = dataFirst ? arguments[1] : arguments[0];
|
|
6171
|
-
const options = addSpanStackTrace(dataFirst ? arguments[
|
|
6218
|
+
const options = addSpanStackTrace(dataFirst ? arguments[2] : arguments[1]);
|
|
6172
6219
|
if (dataFirst) {
|
|
6173
6220
|
const self = arguments[0];
|
|
6174
6221
|
return fromChannel(Channel.withSpan(self.channel, name, options));
|
|
@@ -6707,7 +6754,7 @@ export const mkUint8Array = self => Channel.runFold(self.channel, () => new Uint
|
|
|
6707
6754
|
export const toReadableStreamWith = /*#__PURE__*/dual(args => isStream(args[0]), (self, services, options) => {
|
|
6708
6755
|
let currentResolve = undefined;
|
|
6709
6756
|
let fiber = undefined;
|
|
6710
|
-
const latch =
|
|
6757
|
+
const latch = Latch.makeUnsafe(false);
|
|
6711
6758
|
return new ReadableStream({
|
|
6712
6759
|
start(controller) {
|
|
6713
6760
|
fiber = Effect.runFork(Effect.provideServices(runForEachArray(self, chunk => latch.whenOpen(Effect.sync(() => {
|