effect 4.0.0-beta.3 → 4.0.0-beta.31
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 +126 -299
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +102 -62
- package/dist/Array.js.map +1 -1
- package/dist/Brand.d.ts +1 -1
- package/dist/Brand.d.ts.map +1 -1
- package/dist/Brand.js +1 -1
- package/dist/Brand.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 +2 -2
- package/dist/Cause.d.ts.map +1 -1
- package/dist/Channel.d.ts +118 -32
- 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 +65 -10
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.d.ts +1 -1
- package/dist/Cron.d.ts +1 -1
- package/dist/Cron.js +3 -3
- package/dist/Cron.js.map +1 -1
- package/dist/Data.d.ts +535 -366
- 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 +56 -238
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/DateTime.js +7 -52
- package/dist/DateTime.js.map +1 -1
- package/dist/Duration.d.ts +39 -11
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +88 -59
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +1206 -924
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +390 -329
- 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 +374 -0
- package/dist/ErrorReporter.d.ts.map +1 -0
- package/dist/ErrorReporter.js +244 -0
- package/dist/ErrorReporter.js.map +1 -0
- package/dist/Exit.d.ts +24 -12
- package/dist/Exit.d.ts.map +1 -1
- package/dist/Exit.js +8 -4
- package/dist/Exit.js.map +1 -1
- package/dist/Fiber.d.ts +3 -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 +34 -38
- 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/Function.d.ts +1 -9
- package/dist/Function.d.ts.map +1 -1
- package/dist/Function.js +2 -10
- package/dist/Function.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 +39 -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 +217 -127
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js +51 -46
- package/dist/Layer.js.map +1 -1
- package/dist/LayerMap.d.ts +8 -8
- package/dist/LayerMap.d.ts.map +1 -1
- package/dist/LayerMap.js +3 -3
- 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 +2 -2
- package/dist/ManagedRuntime.js +2 -2
- package/dist/Metric.d.ts +4 -6
- package/dist/Metric.d.ts.map +1 -1
- package/dist/Metric.js +3 -5
- package/dist/Metric.js.map +1 -1
- package/dist/Newtype.d.ts +291 -0
- package/dist/Newtype.d.ts.map +1 -0
- package/dist/Newtype.js +161 -0
- package/dist/Newtype.js.map +1 -0
- 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 +23 -16
- package/dist/Option.d.ts.map +1 -1
- package/dist/Option.js +15 -9
- 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 +23 -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 +9 -4
- package/dist/References.d.ts.map +1 -1
- package/dist/References.js +6 -1
- package/dist/References.js.map +1 -1
- package/dist/Request.d.ts +1 -1
- package/dist/Request.d.ts.map +1 -1
- package/dist/Request.js +2 -1
- package/dist/Request.js.map +1 -1
- package/dist/RequestResolver.d.ts +25 -45
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +10 -30
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Result.d.ts +1 -1
- package/dist/Result.d.ts.map +1 -1
- package/dist/Result.js +1 -2
- package/dist/Result.js.map +1 -1
- package/dist/Runtime.d.ts +66 -0
- package/dist/Runtime.d.ts.map +1 -1
- package/dist/Runtime.js +79 -6
- package/dist/Runtime.js.map +1 -1
- package/dist/Schedule.d.ts +191 -102
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +152 -66
- package/dist/Schedule.js.map +1 -1
- package/dist/Scheduler.d.ts +9 -0
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js +11 -0
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +2647 -224
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +1863 -209
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +2 -2
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +131 -25
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaGetter.d.ts +5 -5
- 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 +46 -45
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +49 -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 +41 -31
- 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/Stdio.d.ts +16 -4
- package/dist/Stdio.d.ts.map +1 -1
- package/dist/Stdio.js +18 -0
- package/dist/Stdio.js.map +1 -1
- package/dist/Stream.d.ts +250 -428
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +137 -82
- 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 +80 -23
- package/dist/Types.d.ts.map +1 -1
- package/dist/Utils.d.ts +137 -65
- package/dist/Utils.d.ts.map +1 -1
- package/dist/Utils.js +38 -66
- package/dist/Utils.js.map +1 -1
- package/dist/index.d.ts +718 -23
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +718 -23
- 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 +60 -61
- package/dist/internal/dateTime.js.map +1 -1
- package/dist/internal/effect.js +265 -127
- 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/representation.js +47 -106
- package/dist/internal/schema/representation.js.map +1 -1
- package/dist/internal/schema/schema.js +1 -0
- package/dist/internal/schema/schema.js.map +1 -1
- package/dist/internal/schema/to-codec.js +7 -10
- package/dist/internal/schema/to-codec.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 +8 -7
- 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 +266 -32
- package/dist/testing/TestSchema.d.ts.map +1 -1
- package/dist/testing/TestSchema.js +296 -23
- package/dist/testing/TestSchema.js.map +1 -1
- package/dist/testing/index.d.ts +64 -1
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +64 -1
- package/dist/testing/index.js.map +1 -1
- package/dist/unstable/ai/AiError.d.ts +134 -51
- package/dist/unstable/ai/AiError.d.ts.map +1 -1
- package/dist/unstable/ai/AiError.js +19 -16
- package/dist/unstable/ai/AiError.js.map +1 -1
- package/dist/unstable/ai/Chat.d.ts +7 -8
- package/dist/unstable/ai/Chat.d.ts.map +1 -1
- package/dist/unstable/ai/Chat.js +38 -44
- package/dist/unstable/ai/Chat.js.map +1 -1
- package/dist/unstable/ai/LanguageModel.d.ts +45 -45
- package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
- package/dist/unstable/ai/LanguageModel.js +107 -124
- package/dist/unstable/ai/LanguageModel.js.map +1 -1
- package/dist/unstable/ai/McpSchema.d.ts +183 -88
- package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
- package/dist/unstable/ai/McpSchema.js +57 -12
- package/dist/unstable/ai/McpSchema.js.map +1 -1
- package/dist/unstable/ai/McpServer.d.ts +66 -13
- package/dist/unstable/ai/McpServer.d.ts.map +1 -1
- package/dist/unstable/ai/McpServer.js +193 -51
- 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 +20 -4
- 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/Toolkit.d.ts +1 -1
- package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
- package/dist/unstable/ai/Toolkit.js +4 -11
- package/dist/unstable/ai/Toolkit.js.map +1 -1
- package/dist/unstable/ai/index.d.ts +1 -1
- package/dist/unstable/ai/index.js +1 -1
- package/dist/unstable/ai/internal/codec-transformer.js +0 -5
- package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
- package/dist/unstable/cli/CliError.d.ts +27 -60
- package/dist/unstable/cli/CliError.d.ts.map +1 -1
- package/dist/unstable/cli/CliError.js +25 -57
- package/dist/unstable/cli/CliError.js.map +1 -1
- package/dist/unstable/cli/CliOutput.js +59 -6
- package/dist/unstable/cli/CliOutput.js.map +1 -1
- package/dist/unstable/cli/Command.d.ts +368 -56
- package/dist/unstable/cli/Command.d.ts.map +1 -1
- package/dist/unstable/cli/Command.js +325 -64
- package/dist/unstable/cli/Command.js.map +1 -1
- package/dist/unstable/cli/Completions.d.ts +16 -0
- package/dist/unstable/cli/Completions.d.ts.map +1 -0
- package/dist/unstable/cli/Completions.js +23 -0
- package/dist/unstable/cli/Completions.js.map +1 -0
- 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/Primitive.d.ts +1 -1
- package/dist/unstable/cli/Primitive.js +1 -1
- package/dist/unstable/cli/Prompt.js +35 -8
- package/dist/unstable/cli/Prompt.js.map +1 -1
- package/dist/unstable/cli/index.d.ts +8 -0
- package/dist/unstable/cli/index.d.ts.map +1 -1
- package/dist/unstable/cli/index.js +8 -0
- package/dist/unstable/cli/index.js.map +1 -1
- package/dist/unstable/cli/internal/command.d.ts +40 -14
- package/dist/unstable/cli/internal/command.d.ts.map +1 -1
- package/dist/unstable/cli/internal/command.js +72 -46
- 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/config.js +42 -0
- package/dist/unstable/cli/internal/config.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 +125 -0
- package/dist/unstable/cli/internal/help.js.map +1 -0
- package/dist/unstable/cli/internal/parser.js +55 -42
- 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 +5 -4
- package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/unstable/cluster/DeliverAt.js +1 -1
- package/dist/unstable/cluster/DeliverAt.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 +9 -9
- package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
- package/dist/unstable/encoding/Ndjson.js.map +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 +47 -3
- package/dist/unstable/http/Cookies.d.ts.map +1 -1
- package/dist/unstable/http/Cookies.js +24 -2
- package/dist/unstable/http/Cookies.js.map +1 -1
- package/dist/unstable/http/Headers.d.ts +16 -0
- package/dist/unstable/http/Headers.d.ts.map +1 -1
- package/dist/unstable/http/Headers.js +38 -10
- package/dist/unstable/http/Headers.js.map +1 -1
- package/dist/unstable/http/HttpBody.d.ts +3 -3
- package/dist/unstable/http/HttpBody.d.ts.map +1 -1
- package/dist/unstable/http/HttpBody.js +6 -6
- package/dist/unstable/http/HttpBody.js.map +1 -1
- package/dist/unstable/http/HttpClient.d.ts +117 -15
- package/dist/unstable/http/HttpClient.d.ts.map +1 -1
- package/dist/unstable/http/HttpClient.js +189 -12
- 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 +16 -11
- package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientRequest.js +31 -20
- package/dist/unstable/http/HttpClientRequest.js.map +1 -1
- package/dist/unstable/http/HttpClientResponse.d.ts +2 -1
- package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientResponse.js +4 -0
- package/dist/unstable/http/HttpClientResponse.js.map +1 -1
- package/dist/unstable/http/HttpEffect.d.ts +7 -5
- package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
- package/dist/unstable/http/HttpEffect.js +46 -54
- package/dist/unstable/http/HttpEffect.js.map +1 -1
- package/dist/unstable/http/HttpIncomingMessage.d.ts +1 -1
- package/dist/unstable/http/HttpIncomingMessage.d.ts.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 +12 -1
- package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerRequest.js +291 -1
- package/dist/unstable/http/HttpServerRequest.js.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 +50 -3
- package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerResponse.js +234 -1
- package/dist/unstable/http/HttpServerResponse.js.map +1 -1
- package/dist/unstable/http/HttpStaticServer.d.ts +69 -0
- package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -0
- package/dist/unstable/http/HttpStaticServer.js +353 -0
- package/dist/unstable/http/HttpStaticServer.js.map +1 -0
- 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/index.d.ts +4 -0
- package/dist/unstable/http/index.d.ts.map +1 -1
- package/dist/unstable/http/index.js +4 -0
- package/dist/unstable/http/index.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 +4 -4
- 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 +28 -18
- package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.d.ts +66 -6
- package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.js +40 -3
- package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +41 -54
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.js +17 -26
- package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.d.ts +16 -14
- package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.js +44 -29
- package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.d.ts +4 -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/Persistable.js +1 -1
- package/dist/unstable/persistence/Persistable.js.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 +73 -12
- package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
- package/dist/unstable/reactivity/Atom.js +107 -20
- package/dist/unstable/reactivity/Atom.js.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.d.ts +10 -12
- package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.js +42 -12
- 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 +50 -9
- package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.d.ts +9 -9
- package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.js +47 -21
- 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 +5 -5
- 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 +3 -5
- 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 +8 -8
- 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 +5 -9
- package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcServer.js +17 -17
- 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 +3 -2
- package/dist/unstable/rpc/Utils.js.map +1 -1
- package/dist/unstable/schema/Model.d.ts +22 -1
- package/dist/unstable/schema/Model.d.ts.map +1 -1
- package/dist/unstable/schema/Model.js +15 -0
- package/dist/unstable/schema/Model.js.map +1 -1
- package/dist/unstable/schema/VariantSchema.d.ts +5 -5
- package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
- package/dist/unstable/schema/VariantSchema.js +6 -6
- 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/SqlResolver.d.ts.map +1 -1
- package/dist/unstable/sql/SqlResolver.js +17 -8
- package/dist/unstable/sql/SqlResolver.js.map +1 -1
- package/dist/unstable/sql/SqlSchema.d.ts +17 -6
- 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 +192 -342
- package/src/Brand.ts +1 -1
- package/src/Cache.ts +9 -8
- package/src/Cause.ts +2 -2
- package/src/Channel.ts +557 -141
- package/src/Chunk.ts +81 -268
- package/src/Combiner.ts +280 -13
- package/src/Config.ts +186 -24
- package/src/Cron.ts +3 -3
- package/src/Data.ts +539 -376
- package/src/DateTime.ts +59 -241
- package/src/Duration.ts +91 -36
- package/src/Effect.ts +1477 -1126
- package/src/Encoding.ts +879 -0
- package/src/Equal.ts +278 -111
- package/src/ErrorReporter.ts +457 -0
- package/src/Exit.ts +24 -12
- package/src/Fiber.ts +10 -2
- package/src/FileSystem.ts +7 -8
- package/src/Filter.ts +52 -63
- package/src/Formatter.ts +253 -51
- package/src/Function.ts +2 -10
- package/src/Graph.ts +24 -11
- package/src/HashMap.ts +15 -14
- package/src/Iterable.ts +104 -50
- package/src/JsonSchema.ts +383 -10
- package/src/Latch.ts +112 -0
- package/src/Layer.ts +245 -150
- package/src/LayerMap.ts +9 -9
- package/src/LogLevel.ts +37 -0
- package/src/Logger.ts +33 -100
- package/src/ManagedRuntime.ts +2 -2
- package/src/Metric.ts +6 -8
- package/src/Newtype.ts +308 -0
- package/src/Optic.ts +948 -19
- package/src/Option.ts +32 -24
- 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 +42 -152
- package/src/Reducer.ts +166 -7
- package/src/References.ts +10 -5
- package/src/Request.ts +3 -2
- package/src/RequestResolver.ts +29 -49
- package/src/Result.ts +2 -4
- package/src/Runtime.ts +102 -6
- package/src/Schedule.ts +462 -242
- package/src/Scheduler.ts +12 -0
- package/src/Schema.ts +3116 -312
- package/src/SchemaAST.ts +166 -33
- package/src/SchemaGetter.ts +15 -17
- package/src/SchemaParser.ts +11 -0
- package/src/SchemaRepresentation.ts +51 -26
- package/src/SchemaTransformation.ts +189 -4
- package/src/ScopedCache.ts +3 -3
- package/src/Semaphore.ts +356 -0
- package/src/ServiceMap.ts +50 -40
- package/src/Sink.ts +78 -26
- package/src/Stdio.ts +27 -4
- package/src/Stream.ts +586 -608
- 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 +73 -19
- package/src/Utils.ts +137 -111
- package/src/index.ts +728 -24
- package/src/internal/core.ts +12 -5
- package/src/internal/dateTime.ts +69 -81
- package/src/internal/effect.ts +775 -302
- package/src/internal/hashMap.ts +8 -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/representation.ts +45 -94
- package/src/internal/schema/schema.ts +1 -0
- package/src/internal/schema/to-codec.ts +7 -17
- package/src/internal/trie.ts +15 -9
- package/src/testing/TestClock.ts +13 -11
- package/src/testing/TestSchema.ts +332 -35
- package/src/testing/index.ts +64 -1
- package/src/unstable/ai/AiError.ts +105 -48
- package/src/unstable/ai/Chat.ts +58 -74
- package/src/unstable/ai/LanguageModel.ts +294 -158
- package/src/unstable/ai/McpSchema.ts +73 -13
- package/src/unstable/ai/McpServer.ts +271 -61
- 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 +20 -14
- package/src/unstable/ai/Toolkit.ts +5 -14
- package/src/unstable/ai/index.ts +1 -1
- package/src/unstable/ai/internal/codec-transformer.ts +0 -7
- package/src/unstable/cli/CliError.ts +47 -59
- package/src/unstable/cli/CliOutput.ts +75 -6
- package/src/unstable/cli/Command.ts +796 -187
- package/src/unstable/cli/Completions.ts +36 -0
- package/src/unstable/cli/GlobalFlag.ts +242 -0
- package/src/unstable/cli/HelpDoc.ts +80 -2
- package/src/unstable/cli/Primitive.ts +1 -1
- package/src/unstable/cli/Prompt.ts +31 -9
- package/src/unstable/cli/index.ts +10 -0
- package/src/unstable/cli/internal/command.ts +109 -63
- package/src/unstable/cli/internal/completions/CommandDescriptor.ts +7 -2
- package/src/unstable/cli/internal/config.ts +49 -0
- package/src/unstable/cli/internal/help.ts +171 -0
- package/src/unstable/cli/internal/parser.ts +66 -61
- package/src/unstable/cluster/ClusterCron.ts +2 -2
- package/src/unstable/cluster/ClusterWorkflowEngine.ts +6 -5
- package/src/unstable/cluster/DeliverAt.ts +1 -1
- 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/Ndjson.ts +17 -17
- package/src/unstable/encoding/Sse.ts +3 -5
- package/src/unstable/eventlog/EventLog.ts +2 -1
- package/src/unstable/http/Cookies.ts +87 -3
- package/src/unstable/http/Headers.ts +62 -13
- package/src/unstable/http/HttpBody.ts +6 -6
- package/src/unstable/http/HttpClient.ts +374 -33
- package/src/unstable/http/HttpClientRequest.ts +38 -30
- package/src/unstable/http/HttpClientResponse.ts +9 -4
- package/src/unstable/http/HttpEffect.ts +54 -68
- package/src/unstable/http/HttpIncomingMessage.ts +1 -1
- 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 +391 -4
- package/src/unstable/http/HttpServerRespondable.ts +6 -6
- package/src/unstable/http/HttpServerResponse.ts +337 -4
- package/src/unstable/http/HttpStaticServer.ts +456 -0
- package/src/unstable/http/Multipart.ts +2 -2
- package/src/unstable/http/UrlParams.ts +20 -5
- package/src/unstable/http/index.ts +5 -0
- package/src/unstable/http/internal/preResponseHandler.ts +15 -0
- package/src/unstable/httpapi/HttpApi.ts +6 -6
- package/src/unstable/httpapi/HttpApiBuilder.ts +83 -30
- package/src/unstable/httpapi/HttpApiClient.ts +100 -11
- package/src/unstable/httpapi/HttpApiEndpoint.ts +71 -87
- package/src/unstable/httpapi/HttpApiError.ts +51 -28
- package/src/unstable/httpapi/HttpApiGroup.ts +7 -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 +3 -3
- 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 +211 -50
- package/src/unstable/reactivity/AtomHttpApi.ts +66 -31
- package/src/unstable/reactivity/AtomRegistry.ts +61 -9
- package/src/unstable/reactivity/AtomRpc.ts +51 -20
- package/src/unstable/reactivity/Hydration.ts +112 -0
- package/src/unstable/reactivity/index.ts +5 -0
- package/src/unstable/rpc/Rpc.ts +7 -9
- package/src/unstable/rpc/RpcClient.ts +12 -54
- package/src/unstable/rpc/RpcGroup.ts +7 -7
- package/src/unstable/rpc/RpcMiddleware.ts +15 -9
- package/src/unstable/rpc/RpcSchema.ts +17 -0
- package/src/unstable/rpc/RpcSerialization.ts +44 -9
- package/src/unstable/rpc/RpcServer.ts +28 -32
- package/src/unstable/rpc/Utils.ts +3 -2
- package/src/unstable/schema/Model.ts +31 -0
- package/src/unstable/schema/VariantSchema.ts +9 -9
- 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/SqlResolver.ts +17 -7
- package/src/unstable/sql/SqlSchema.ts +42 -26
- 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/dist/unstable/cli/internal/completions/Completions.d.ts +0 -2
- package/dist/unstable/cli/internal/completions/Completions.d.ts.map +0 -1
- package/dist/unstable/cli/internal/completions/Completions.js +0 -23
- package/dist/unstable/cli/internal/completions/Completions.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/src/unstable/cli/internal/completions/Completions.ts +0 -31
package/src/Record.ts
CHANGED
|
@@ -1002,16 +1002,16 @@ export const mapEntries: {
|
|
|
1002
1002
|
)
|
|
1003
1003
|
|
|
1004
1004
|
/**
|
|
1005
|
-
* Transforms a record
|
|
1006
|
-
* If the function
|
|
1005
|
+
* Transforms a record by applying the function `f` to each key and value in the original record.
|
|
1006
|
+
* If the function succeeds, the key-value pair is included in the output record.
|
|
1007
1007
|
*
|
|
1008
1008
|
* @example
|
|
1009
1009
|
* ```ts
|
|
1010
|
-
* import {
|
|
1010
|
+
* import { Record, Result } from "effect"
|
|
1011
1011
|
* import * as assert from "node:assert"
|
|
1012
1012
|
*
|
|
1013
1013
|
* const x = { a: 1, b: 2, c: 3 }
|
|
1014
|
-
* const f = (a: number, key: string) => a > 2 ?
|
|
1014
|
+
* const f = (a: number, key: string) => a > 2 ? Result.succeed(a * 2) : Result.failVoid
|
|
1015
1015
|
* assert.deepStrictEqual(Record.filterMap(x, f), { c: 6 })
|
|
1016
1016
|
* ```
|
|
1017
1017
|
*
|
|
@@ -1020,52 +1020,52 @@ export const mapEntries: {
|
|
|
1020
1020
|
*/
|
|
1021
1021
|
export const filterMap: {
|
|
1022
1022
|
/**
|
|
1023
|
-
* Transforms a record
|
|
1024
|
-
* If the function
|
|
1023
|
+
* Transforms a record by applying the function `f` to each key and value in the original record.
|
|
1024
|
+
* If the function succeeds, the key-value pair is included in the output record.
|
|
1025
1025
|
*
|
|
1026
1026
|
* @example
|
|
1027
1027
|
* ```ts
|
|
1028
|
-
* import {
|
|
1028
|
+
* import { Record, Result } from "effect"
|
|
1029
1029
|
* import * as assert from "node:assert"
|
|
1030
1030
|
*
|
|
1031
1031
|
* const x = { a: 1, b: 2, c: 3 }
|
|
1032
|
-
* const f = (a: number, key: string) => a > 2 ?
|
|
1032
|
+
* const f = (a: number, key: string) => a > 2 ? Result.succeed(a * 2) : Result.failVoid
|
|
1033
1033
|
* assert.deepStrictEqual(Record.filterMap(x, f), { c: 6 })
|
|
1034
1034
|
* ```
|
|
1035
1035
|
*
|
|
1036
1036
|
* @category filtering
|
|
1037
1037
|
* @since 2.0.0
|
|
1038
1038
|
*/
|
|
1039
|
-
<K extends string, A, B>(f: (
|
|
1039
|
+
<K extends string, A, B, X>(f: (input: A, key: K) => Result<B, X>): (self: ReadonlyRecord<K, A>) => Record<ReadonlyRecord.NonLiteralKey<K>, B>
|
|
1040
1040
|
/**
|
|
1041
|
-
* Transforms a record
|
|
1042
|
-
* If the function
|
|
1041
|
+
* Transforms a record by applying the function `f` to each key and value in the original record.
|
|
1042
|
+
* If the function succeeds, the key-value pair is included in the output record.
|
|
1043
1043
|
*
|
|
1044
1044
|
* @example
|
|
1045
1045
|
* ```ts
|
|
1046
|
-
* import {
|
|
1046
|
+
* import { Record, Result } from "effect"
|
|
1047
1047
|
* import * as assert from "node:assert"
|
|
1048
1048
|
*
|
|
1049
1049
|
* const x = { a: 1, b: 2, c: 3 }
|
|
1050
|
-
* const f = (a: number, key: string) => a > 2 ?
|
|
1050
|
+
* const f = (a: number, key: string) => a > 2 ? Result.succeed(a * 2) : Result.failVoid
|
|
1051
1051
|
* assert.deepStrictEqual(Record.filterMap(x, f), { c: 6 })
|
|
1052
1052
|
* ```
|
|
1053
1053
|
*
|
|
1054
1054
|
* @category filtering
|
|
1055
1055
|
* @since 2.0.0
|
|
1056
1056
|
*/
|
|
1057
|
-
<K extends string, A, B>(self: ReadonlyRecord<K, A>, f: (
|
|
1057
|
+
<K extends string, A, B, X>(self: ReadonlyRecord<K, A>, f: (input: A, key: K) => Result<B, X>): Record<ReadonlyRecord.NonLiteralKey<K>, B>
|
|
1058
1058
|
} = dual(
|
|
1059
1059
|
2,
|
|
1060
|
-
<K extends string, A, B>(
|
|
1060
|
+
<K extends string, A, B, X>(
|
|
1061
1061
|
self: ReadonlyRecord<K, A>,
|
|
1062
|
-
f: (
|
|
1062
|
+
f: (input: A, key: K) => Result<B, X>
|
|
1063
1063
|
): Record<ReadonlyRecord.NonLiteralKey<K>, B> => {
|
|
1064
1064
|
const out: Record<string, B> = empty()
|
|
1065
1065
|
for (const key of keys(self)) {
|
|
1066
|
-
const
|
|
1067
|
-
if (
|
|
1068
|
-
out[key] =
|
|
1066
|
+
const result = f(self[key], key)
|
|
1067
|
+
if (R.isSuccess(result)) {
|
|
1068
|
+
out[key] = result.success
|
|
1069
1069
|
}
|
|
1070
1070
|
}
|
|
1071
1071
|
return out
|
|
@@ -1187,9 +1187,18 @@ export const filter: {
|
|
|
1187
1187
|
*/
|
|
1188
1188
|
export const getSomes: <K extends string, A>(
|
|
1189
1189
|
self: ReadonlyRecord<K, Option.Option<A>>
|
|
1190
|
-
) => Record<ReadonlyRecord.NonLiteralKey<K>, A> =
|
|
1191
|
-
|
|
1192
|
-
)
|
|
1190
|
+
) => Record<ReadonlyRecord.NonLiteralKey<K>, A> = <K extends string, A>(
|
|
1191
|
+
self: ReadonlyRecord<K, Option.Option<A>>
|
|
1192
|
+
): Record<ReadonlyRecord.NonLiteralKey<K>, A> => {
|
|
1193
|
+
const out: Record<string, A> = empty()
|
|
1194
|
+
for (const key of keys(self)) {
|
|
1195
|
+
const option = self[key]
|
|
1196
|
+
if (Option.isSome(option)) {
|
|
1197
|
+
out[key] = option.value
|
|
1198
|
+
}
|
|
1199
|
+
}
|
|
1200
|
+
return out
|
|
1201
|
+
}
|
|
1193
1202
|
|
|
1194
1203
|
/**
|
|
1195
1204
|
* Given a record with `Result` values, returns a new record containing only the `Err` values, preserving the original keys.
|
|
@@ -1262,7 +1271,7 @@ export const getSuccesses = <K extends string, A, E>(
|
|
|
1262
1271
|
}
|
|
1263
1272
|
|
|
1264
1273
|
/**
|
|
1265
|
-
* Partitions the elements of a record into two groups: those that match a
|
|
1274
|
+
* Partitions the elements of a record into two groups: those that match a filter, and those that don't.
|
|
1266
1275
|
*
|
|
1267
1276
|
* @example
|
|
1268
1277
|
* ```ts
|
|
@@ -1271,15 +1280,15 @@ export const getSuccesses = <K extends string, A, E>(
|
|
|
1271
1280
|
*
|
|
1272
1281
|
* const x = { a: 1, b: 2, c: 3 }
|
|
1273
1282
|
* const f = (n: number) => (n % 2 === 0 ? Result.succeed(n) : Result.fail(n))
|
|
1274
|
-
* assert.deepStrictEqual(Record.
|
|
1283
|
+
* assert.deepStrictEqual(Record.partition(x, f), [{ a: 1, c: 3 }, { b: 2 }])
|
|
1275
1284
|
* ```
|
|
1276
1285
|
*
|
|
1277
1286
|
* @category filtering
|
|
1278
1287
|
* @since 2.0.0
|
|
1279
1288
|
*/
|
|
1280
|
-
export const
|
|
1289
|
+
export const partition: {
|
|
1281
1290
|
/**
|
|
1282
|
-
* Partitions the elements of a record into two groups: those that match a
|
|
1291
|
+
* Partitions the elements of a record into two groups: those that match a filter, and those that don't.
|
|
1283
1292
|
*
|
|
1284
1293
|
* @example
|
|
1285
1294
|
* ```ts
|
|
@@ -1288,17 +1297,17 @@ export const partitionMap: {
|
|
|
1288
1297
|
*
|
|
1289
1298
|
* const x = { a: 1, b: 2, c: 3 }
|
|
1290
1299
|
* const f = (n: number) => (n % 2 === 0 ? Result.succeed(n) : Result.fail(n))
|
|
1291
|
-
* assert.deepStrictEqual(Record.
|
|
1300
|
+
* assert.deepStrictEqual(Record.partition(x, f), [{ a: 1, c: 3 }, { b: 2 }])
|
|
1292
1301
|
* ```
|
|
1293
1302
|
*
|
|
1294
1303
|
* @category filtering
|
|
1295
1304
|
* @since 2.0.0
|
|
1296
1305
|
*/
|
|
1297
|
-
<K extends string, A, B, C>(f: (
|
|
1306
|
+
<K extends string, A, B, C>(f: (input: A, key: K) => Result<C, B>): (
|
|
1298
1307
|
self: ReadonlyRecord<K, A>
|
|
1299
1308
|
) => [left: Record<ReadonlyRecord.NonLiteralKey<K>, B>, right: Record<ReadonlyRecord.NonLiteralKey<K>, C>]
|
|
1300
1309
|
/**
|
|
1301
|
-
* Partitions the elements of a record into two groups: those that match a
|
|
1310
|
+
* Partitions the elements of a record into two groups: those that match a filter, and those that don't.
|
|
1302
1311
|
*
|
|
1303
1312
|
* @example
|
|
1304
1313
|
* ```ts
|
|
@@ -1307,18 +1316,18 @@ export const partitionMap: {
|
|
|
1307
1316
|
*
|
|
1308
1317
|
* const x = { a: 1, b: 2, c: 3 }
|
|
1309
1318
|
* const f = (n: number) => (n % 2 === 0 ? Result.succeed(n) : Result.fail(n))
|
|
1310
|
-
* assert.deepStrictEqual(Record.
|
|
1319
|
+
* assert.deepStrictEqual(Record.partition(x, f), [{ a: 1, c: 3 }, { b: 2 }])
|
|
1311
1320
|
* ```
|
|
1312
1321
|
*
|
|
1313
1322
|
* @category filtering
|
|
1314
1323
|
* @since 2.0.0
|
|
1315
1324
|
*/
|
|
1316
|
-
<K extends string, A, B, C>(self: ReadonlyRecord<K, A>, f: (
|
|
1325
|
+
<K extends string, A, B, C>(self: ReadonlyRecord<K, A>, f: (input: A, key: K) => Result<C, B>): [left: Record<ReadonlyRecord.NonLiteralKey<K>, B>, right: Record<ReadonlyRecord.NonLiteralKey<K>, C>]
|
|
1317
1326
|
} = dual(
|
|
1318
1327
|
2,
|
|
1319
1328
|
<K extends string, A, B, C>(
|
|
1320
1329
|
self: ReadonlyRecord<K, A>,
|
|
1321
|
-
f: (
|
|
1330
|
+
f: (input: A, key: K) => Result<C, B>
|
|
1322
1331
|
): [left: Record<ReadonlyRecord.NonLiteralKey<K>, B>, right: Record<ReadonlyRecord.NonLiteralKey<K>, C>] => {
|
|
1323
1332
|
const left: Record<string, B> = empty()
|
|
1324
1333
|
const right: Record<string, C> = empty()
|
|
@@ -1354,126 +1363,7 @@ export const partitionMap: {
|
|
|
1354
1363
|
*/
|
|
1355
1364
|
export const separate: <K extends string, A, B>(
|
|
1356
1365
|
self: ReadonlyRecord<K, Result<B, A>>
|
|
1357
|
-
) => [Record<ReadonlyRecord.NonLiteralKey<K>, A>, Record<ReadonlyRecord.NonLiteralKey<K>, B>] =
|
|
1358
|
-
|
|
1359
|
-
/**
|
|
1360
|
-
* Partitions a record into two separate records based on the result of a predicate function.
|
|
1361
|
-
*
|
|
1362
|
-
* @example
|
|
1363
|
-
* ```ts
|
|
1364
|
-
* import { Record } from "effect"
|
|
1365
|
-
* import * as assert from "node:assert"
|
|
1366
|
-
*
|
|
1367
|
-
* assert.deepStrictEqual(
|
|
1368
|
-
* Record.partition({ a: 1, b: 3 }, (n) => n > 2),
|
|
1369
|
-
* [{ a: 1 }, { b: 3 }]
|
|
1370
|
-
* )
|
|
1371
|
-
* ```
|
|
1372
|
-
*
|
|
1373
|
-
* @category filtering
|
|
1374
|
-
* @since 2.0.0
|
|
1375
|
-
*/
|
|
1376
|
-
export const partition: {
|
|
1377
|
-
/**
|
|
1378
|
-
* Partitions a record into two separate records based on the result of a predicate function.
|
|
1379
|
-
*
|
|
1380
|
-
* @example
|
|
1381
|
-
* ```ts
|
|
1382
|
-
* import { Record } from "effect"
|
|
1383
|
-
* import * as assert from "node:assert"
|
|
1384
|
-
*
|
|
1385
|
-
* assert.deepStrictEqual(
|
|
1386
|
-
* Record.partition({ a: 1, b: 3 }, (n) => n > 2),
|
|
1387
|
-
* [{ a: 1 }, { b: 3 }]
|
|
1388
|
-
* )
|
|
1389
|
-
* ```
|
|
1390
|
-
*
|
|
1391
|
-
* @category filtering
|
|
1392
|
-
* @since 2.0.0
|
|
1393
|
-
*/
|
|
1394
|
-
<K extends string, A, B extends A>(refinement: (a: NoInfer<A>, key: K) => a is B): (
|
|
1395
|
-
self: ReadonlyRecord<K, A>
|
|
1396
|
-
) => [
|
|
1397
|
-
excluded: Record<ReadonlyRecord.NonLiteralKey<K>, Exclude<A, B>>,
|
|
1398
|
-
satisfying: Record<ReadonlyRecord.NonLiteralKey<K>, B>
|
|
1399
|
-
]
|
|
1400
|
-
/**
|
|
1401
|
-
* Partitions a record into two separate records based on the result of a predicate function.
|
|
1402
|
-
*
|
|
1403
|
-
* @example
|
|
1404
|
-
* ```ts
|
|
1405
|
-
* import { Record } from "effect"
|
|
1406
|
-
* import * as assert from "node:assert"
|
|
1407
|
-
*
|
|
1408
|
-
* assert.deepStrictEqual(
|
|
1409
|
-
* Record.partition({ a: 1, b: 3 }, (n) => n > 2),
|
|
1410
|
-
* [{ a: 1 }, { b: 3 }]
|
|
1411
|
-
* )
|
|
1412
|
-
* ```
|
|
1413
|
-
*
|
|
1414
|
-
* @category filtering
|
|
1415
|
-
* @since 2.0.0
|
|
1416
|
-
*/
|
|
1417
|
-
<K extends string, A>(predicate: (a: NoInfer<A>, key: K) => boolean): (
|
|
1418
|
-
self: ReadonlyRecord<K, A>
|
|
1419
|
-
) => [excluded: Record<ReadonlyRecord.NonLiteralKey<K>, A>, satisfying: Record<ReadonlyRecord.NonLiteralKey<K>, A>]
|
|
1420
|
-
/**
|
|
1421
|
-
* Partitions a record into two separate records based on the result of a predicate function.
|
|
1422
|
-
*
|
|
1423
|
-
* @example
|
|
1424
|
-
* ```ts
|
|
1425
|
-
* import { Record } from "effect"
|
|
1426
|
-
* import * as assert from "node:assert"
|
|
1427
|
-
*
|
|
1428
|
-
* assert.deepStrictEqual(
|
|
1429
|
-
* Record.partition({ a: 1, b: 3 }, (n) => n > 2),
|
|
1430
|
-
* [{ a: 1 }, { b: 3 }]
|
|
1431
|
-
* )
|
|
1432
|
-
* ```
|
|
1433
|
-
*
|
|
1434
|
-
* @category filtering
|
|
1435
|
-
* @since 2.0.0
|
|
1436
|
-
*/
|
|
1437
|
-
<K extends string, A, B extends A>(self: ReadonlyRecord<K, A>, refinement: (a: A, key: K) => a is B): [
|
|
1438
|
-
excluded: Record<ReadonlyRecord.NonLiteralKey<K>, Exclude<A, B>>,
|
|
1439
|
-
satisfying: Record<ReadonlyRecord.NonLiteralKey<K>, B>
|
|
1440
|
-
]
|
|
1441
|
-
/**
|
|
1442
|
-
* Partitions a record into two separate records based on the result of a predicate function.
|
|
1443
|
-
*
|
|
1444
|
-
* @example
|
|
1445
|
-
* ```ts
|
|
1446
|
-
* import { Record } from "effect"
|
|
1447
|
-
* import * as assert from "node:assert"
|
|
1448
|
-
*
|
|
1449
|
-
* assert.deepStrictEqual(
|
|
1450
|
-
* Record.partition({ a: 1, b: 3 }, (n) => n > 2),
|
|
1451
|
-
* [{ a: 1 }, { b: 3 }]
|
|
1452
|
-
* )
|
|
1453
|
-
* ```
|
|
1454
|
-
*
|
|
1455
|
-
* @category filtering
|
|
1456
|
-
* @since 2.0.0
|
|
1457
|
-
*/
|
|
1458
|
-
<K extends string, A>(self: ReadonlyRecord<K, A>, predicate: (a: A, key: K) => boolean): [excluded: Record<ReadonlyRecord.NonLiteralKey<K>, A>, satisfying: Record<ReadonlyRecord.NonLiteralKey<K>, A>]
|
|
1459
|
-
} = dual(
|
|
1460
|
-
2,
|
|
1461
|
-
<K extends string, A>(
|
|
1462
|
-
self: ReadonlyRecord<K, A>,
|
|
1463
|
-
predicate: (a: A, key: K) => boolean
|
|
1464
|
-
): [excluded: Record<ReadonlyRecord.NonLiteralKey<K>, A>, satisfying: Record<ReadonlyRecord.NonLiteralKey<K>, A>] => {
|
|
1465
|
-
const left: Record<string, A> = empty()
|
|
1466
|
-
const right: Record<string, A> = empty()
|
|
1467
|
-
for (const key of keys(self)) {
|
|
1468
|
-
if (predicate(self[key], key)) {
|
|
1469
|
-
right[key] = self[key]
|
|
1470
|
-
} else {
|
|
1471
|
-
left[key] = self[key]
|
|
1472
|
-
}
|
|
1473
|
-
}
|
|
1474
|
-
return [left, right]
|
|
1475
|
-
}
|
|
1476
|
-
)
|
|
1366
|
+
) => [Record<ReadonlyRecord.NonLiteralKey<K>, A>, Record<ReadonlyRecord.NonLiteralKey<K>, B>] = partition(identity)
|
|
1477
1367
|
|
|
1478
1368
|
/**
|
|
1479
1369
|
* Retrieve the keys of a given record as an array.
|
package/src/Reducer.ts
CHANGED
|
@@ -1,17 +1,107 @@
|
|
|
1
1
|
/**
|
|
2
|
+
* A module for reducing collections of values into a single result.
|
|
3
|
+
*
|
|
4
|
+
* A `Reducer<A>` extends {@link Combiner.Combiner} by adding an
|
|
5
|
+
* `initialValue` (identity element) and a `combineAll` method that folds an
|
|
6
|
+
* entire collection. Think `Array.prototype.reduce`, but packaged as a
|
|
7
|
+
* reusable, composable value.
|
|
8
|
+
*
|
|
9
|
+
* ## Mental model
|
|
10
|
+
*
|
|
11
|
+
* - **Reducer** – a {@link Combiner.Combiner} plus an `initialValue` and a
|
|
12
|
+
* `combineAll` method.
|
|
13
|
+
* - **initialValue** – the neutral/identity element. Combining any value with
|
|
14
|
+
* `initialValue` should return the original value unchanged (e.g. `0` for
|
|
15
|
+
* addition, `""` for string concatenation).
|
|
16
|
+
* - **combineAll** – folds an `Iterable<A>` starting from `initialValue`.
|
|
17
|
+
* When omitted from {@link make}, a default left-to-right fold is used.
|
|
18
|
+
* - **Purity** – all reducers produced by this module are pure; they never
|
|
19
|
+
* mutate their arguments.
|
|
20
|
+
* - **Composability** – reducers can be lifted into `Option`, `Struct`,
|
|
21
|
+
* `Tuple`, `Record`, and other container types via helpers in those modules.
|
|
22
|
+
* - **Subtype of Combiner** – every `Reducer` is also a valid
|
|
23
|
+
* `Combiner`, so you can pass a `Reducer` anywhere a `Combiner` is
|
|
24
|
+
* expected.
|
|
25
|
+
*
|
|
26
|
+
* ## Common tasks
|
|
27
|
+
*
|
|
28
|
+
* - Create a reducer from a combine function and initial value → {@link make}
|
|
29
|
+
* - Swap argument order → {@link flip}
|
|
30
|
+
* - Combine two values without an initial value → use {@link Combiner.Combiner}
|
|
31
|
+
* instead
|
|
32
|
+
*
|
|
33
|
+
* ## Gotchas
|
|
34
|
+
*
|
|
35
|
+
* - `combineAll` on an empty iterable returns `initialValue`, not an error.
|
|
36
|
+
* - The default `combineAll` folds left-to-right. If your `combine` is not
|
|
37
|
+
* associative, order matters. Pass a custom `combineAll` to {@link make} if
|
|
38
|
+
* you need different traversal or short-circuiting.
|
|
39
|
+
* - A `Reducer` is also a valid `Combiner` — but a `Combiner` is *not* a
|
|
40
|
+
* `Reducer` (it lacks `initialValue`).
|
|
41
|
+
*
|
|
42
|
+
* ## Quickstart
|
|
43
|
+
*
|
|
44
|
+
* **Example** (summing a list of numbers)
|
|
45
|
+
*
|
|
46
|
+
* ```ts
|
|
47
|
+
* import { Reducer } from "effect"
|
|
48
|
+
*
|
|
49
|
+
* const Sum = Reducer.make<number>((a, b) => a + b, 0)
|
|
50
|
+
*
|
|
51
|
+
* console.log(Sum.combine(3, 4))
|
|
52
|
+
* // Output: 7
|
|
53
|
+
*
|
|
54
|
+
* console.log(Sum.combineAll([1, 2, 3, 4]))
|
|
55
|
+
* // Output: 10
|
|
56
|
+
*
|
|
57
|
+
* console.log(Sum.combineAll([]))
|
|
58
|
+
* // Output: 0
|
|
59
|
+
* ```
|
|
60
|
+
*
|
|
61
|
+
* ## See also
|
|
62
|
+
*
|
|
63
|
+
* - {@link make} – the primary constructor
|
|
64
|
+
* - {@link Reducer} – the core interface
|
|
65
|
+
* - {@link Combiner.Combiner} – the parent interface (no `initialValue`)
|
|
66
|
+
*
|
|
2
67
|
* @since 4.0.0
|
|
3
68
|
*/
|
|
4
69
|
|
|
5
70
|
import type * as Combiner from "./Combiner.ts"
|
|
6
71
|
|
|
7
72
|
/**
|
|
8
|
-
*
|
|
9
|
-
*
|
|
73
|
+
* Represents a strategy for reducing a collection of values of type `A` into
|
|
74
|
+
* a single result.
|
|
75
|
+
*
|
|
76
|
+
* Extends {@link Combiner.Combiner} with:
|
|
77
|
+
* - `initialValue` – the identity/neutral element for `combine`.
|
|
78
|
+
* - `combineAll` – folds an entire `Iterable<A>` from `initialValue`.
|
|
79
|
+
*
|
|
80
|
+
* When to use:
|
|
81
|
+
* - You need to fold/reduce a collection into a single value.
|
|
82
|
+
* - You want a reusable reducing strategy that can be passed to library
|
|
83
|
+
* functions like `Struct.makeReducer`, `Option.makeReducer`, or
|
|
84
|
+
* `Record.makeReducerUnion`.
|
|
85
|
+
* - You need both the combining logic *and* a known starting value.
|
|
86
|
+
*
|
|
87
|
+
* Many modules ship pre-built reducers:
|
|
88
|
+
* - `Number.ReducerSum`, `Number.ReducerMultiply`
|
|
89
|
+
* - `String.ReducerConcat`
|
|
90
|
+
* - `Boolean.ReducerAnd`, `Boolean.ReducerOr`
|
|
10
91
|
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
92
|
+
* **Example** (string concatenation reducer)
|
|
93
|
+
*
|
|
94
|
+
* ```ts
|
|
95
|
+
* import { Reducer } from "effect"
|
|
96
|
+
*
|
|
97
|
+
* const Concat = Reducer.make<string>((a, b) => a + b, "")
|
|
98
|
+
*
|
|
99
|
+
* console.log(Concat.combineAll(["hello", " ", "world"]))
|
|
100
|
+
* // Output: "hello world"
|
|
101
|
+
* ```
|
|
102
|
+
*
|
|
103
|
+
* @see {@link make} – create a `Reducer` from a function and initial value
|
|
104
|
+
* @see {@link Combiner.Combiner} – parent interface without `initialValue`
|
|
15
105
|
*
|
|
16
106
|
* @category model
|
|
17
107
|
* @since 4.0.0
|
|
@@ -27,7 +117,44 @@ export interface Reducer<A> extends Combiner.Combiner<A> {
|
|
|
27
117
|
/**
|
|
28
118
|
* Creates a `Reducer` from a `combine` function and an `initialValue`.
|
|
29
119
|
*
|
|
30
|
-
*
|
|
120
|
+
* When to use:
|
|
121
|
+
* - You have a custom reducing operation not covered by a pre-built reducer.
|
|
122
|
+
* - You want to provide an optimized `combineAll` (e.g. short-circuiting on
|
|
123
|
+
* a known absorbing element like `0` for multiplication).
|
|
124
|
+
*
|
|
125
|
+
* Behavior:
|
|
126
|
+
* - If `combineAll` is omitted, a default left-to-right fold starting from
|
|
127
|
+
* `initialValue` is used.
|
|
128
|
+
* - If `combineAll` is provided, it completely replaces the default fold.
|
|
129
|
+
* - Pure – the returned reducer does not mutate its arguments.
|
|
130
|
+
*
|
|
131
|
+
* **Example** (multiplication with short-circuit)
|
|
132
|
+
*
|
|
133
|
+
* ```ts
|
|
134
|
+
* import { Reducer } from "effect"
|
|
135
|
+
*
|
|
136
|
+
* const Product = Reducer.make<number>(
|
|
137
|
+
* (a, b) => a * b,
|
|
138
|
+
* 1,
|
|
139
|
+
* (collection) => {
|
|
140
|
+
* let acc = 1
|
|
141
|
+
* for (const n of collection) {
|
|
142
|
+
* if (n === 0) return 0
|
|
143
|
+
* acc *= n
|
|
144
|
+
* }
|
|
145
|
+
* return acc
|
|
146
|
+
* }
|
|
147
|
+
* )
|
|
148
|
+
*
|
|
149
|
+
* console.log(Product.combineAll([2, 3, 4]))
|
|
150
|
+
* // Output: 24
|
|
151
|
+
*
|
|
152
|
+
* console.log(Product.combineAll([2, 0, 4]))
|
|
153
|
+
* // Output: 0
|
|
154
|
+
* ```
|
|
155
|
+
*
|
|
156
|
+
* @see {@link Reducer} – the interface this creates
|
|
157
|
+
* @see {@link flip} – reverse the argument order
|
|
31
158
|
*
|
|
32
159
|
* @since 4.0.0
|
|
33
160
|
*/
|
|
@@ -51,6 +178,38 @@ export function make<A>(
|
|
|
51
178
|
}
|
|
52
179
|
|
|
53
180
|
/**
|
|
181
|
+
* Reverses the argument order of a reducer's `combine` method.
|
|
182
|
+
*
|
|
183
|
+
* When to use:
|
|
184
|
+
* - You need the "right" value to act as the accumulator side.
|
|
185
|
+
* - You want to reverse the natural direction of a non-commutative reducer
|
|
186
|
+
* (e.g. string concatenation becomes prepend).
|
|
187
|
+
*
|
|
188
|
+
* Behavior:
|
|
189
|
+
* - Returns a new `Reducer` where `combine(self, that)` calls the original
|
|
190
|
+
* reducer as `combine(that, self)`.
|
|
191
|
+
* - The `initialValue` is preserved from the original reducer.
|
|
192
|
+
* - The `combineAll` is re-derived from the flipped `combine` (using the
|
|
193
|
+
* default left-to-right fold), not carried over from the original.
|
|
194
|
+
* - Does not mutate the input reducer.
|
|
195
|
+
*
|
|
196
|
+
* **Example** (reversing string concatenation)
|
|
197
|
+
*
|
|
198
|
+
* ```ts
|
|
199
|
+
* import { Reducer, String } from "effect"
|
|
200
|
+
*
|
|
201
|
+
* const Prepend = Reducer.flip(String.ReducerConcat)
|
|
202
|
+
*
|
|
203
|
+
* console.log(Prepend.combine("a", "b"))
|
|
204
|
+
* // Output: "ba"
|
|
205
|
+
*
|
|
206
|
+
* console.log(Prepend.combineAll(["a", "b", "c"]))
|
|
207
|
+
* // Output: "cba"
|
|
208
|
+
* ```
|
|
209
|
+
*
|
|
210
|
+
* @see {@link make}
|
|
211
|
+
* @see {@link Combiner.flip} – the same operation on a plain `Combiner`
|
|
212
|
+
*
|
|
54
213
|
* @since 4.0.0
|
|
55
214
|
*/
|
|
56
215
|
export function flip<A>(reducer: Reducer<A>): Reducer<A> {
|
package/src/References.ts
CHANGED
|
@@ -11,9 +11,9 @@
|
|
|
11
11
|
* @since 4.0.0
|
|
12
12
|
*/
|
|
13
13
|
import { constTrue, constUndefined } from "./Function.ts"
|
|
14
|
-
import type { LogLevel } from "./LogLevel.ts"
|
|
14
|
+
import type { LogLevel, Severity } from "./LogLevel.ts"
|
|
15
15
|
import type { ReadonlyRecord } from "./Record.ts"
|
|
16
|
-
import { MaxOpsBeforeYield } from "./Scheduler.ts"
|
|
16
|
+
import { MaxOpsBeforeYield, PreventSchedulerYield } from "./Scheduler.ts"
|
|
17
17
|
import * as ServiceMap from "./ServiceMap.ts"
|
|
18
18
|
import { CurrentTraceLevel, DisablePropagation, MinimumTraceLevel, type SpanLink, Tracer } from "./Tracer.ts"
|
|
19
19
|
|
|
@@ -38,6 +38,11 @@ export {
|
|
|
38
38
|
* @category references
|
|
39
39
|
*/
|
|
40
40
|
MinimumTraceLevel,
|
|
41
|
+
/**
|
|
42
|
+
* @since 4.0.0
|
|
43
|
+
* @category references
|
|
44
|
+
*/
|
|
45
|
+
PreventSchedulerYield,
|
|
41
46
|
/**
|
|
42
47
|
* @since 4.0.0
|
|
43
48
|
* @category references
|
|
@@ -451,7 +456,7 @@ export const CurrentLogAnnotations = ServiceMap.Reference<ReadonlyRecord<string,
|
|
|
451
456
|
* @category references
|
|
452
457
|
* @since 4.0.0
|
|
453
458
|
*/
|
|
454
|
-
export const CurrentLogLevel: ServiceMap.Reference<
|
|
459
|
+
export const CurrentLogLevel: ServiceMap.Reference<Severity> = ServiceMap.Reference<Severity>(
|
|
455
460
|
"effect/References/CurrentLogLevel",
|
|
456
461
|
{ defaultValue: () => "Info" }
|
|
457
462
|
)
|
|
@@ -516,9 +521,9 @@ export const MinimumLogLevel = ServiceMap.Reference<
|
|
|
516
521
|
* @category references
|
|
517
522
|
* @since 4.0.0
|
|
518
523
|
*/
|
|
519
|
-
export const UnhandledLogLevel: ServiceMap.Reference<
|
|
524
|
+
export const UnhandledLogLevel: ServiceMap.Reference<Severity | undefined> = ServiceMap.Reference(
|
|
520
525
|
"effect/References/UnhandledLogLevel",
|
|
521
|
-
{ defaultValue: ():
|
|
526
|
+
{ defaultValue: (): Severity | undefined => "Error" }
|
|
522
527
|
)
|
|
523
528
|
|
|
524
529
|
/**
|
package/src/Request.ts
CHANGED
|
@@ -88,7 +88,7 @@ export interface Variance<out A, out E, out R> {
|
|
|
88
88
|
* @category models
|
|
89
89
|
*/
|
|
90
90
|
export interface Constructor<R extends Request<any, any, any>, T extends keyof R = never> {
|
|
91
|
-
(args: Omit<R, T | keyof (Variance<any, any, any>)
|
|
91
|
+
(args: Types.VoidIfEmpty<Types.Simplify<Omit<R, T | keyof (Variance<any, any, any>)>>>): R
|
|
92
92
|
}
|
|
93
93
|
|
|
94
94
|
/**
|
|
@@ -285,7 +285,8 @@ export const tagged = <R extends Request<any, any, any> & { _tag: string }>(
|
|
|
285
285
|
tag: R["_tag"]
|
|
286
286
|
): Constructor<R, "_tag"> =>
|
|
287
287
|
(args) => {
|
|
288
|
-
const request = Object.
|
|
288
|
+
const request = Object.create(RequestPrototype)
|
|
289
|
+
if (args) Object.assign(request, args)
|
|
289
290
|
request._tag = tag
|
|
290
291
|
return request
|
|
291
292
|
}
|