effect 4.0.0-beta.3 → 4.0.0-beta.30
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 +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 +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/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 +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 +11 -11
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +11 -11
- 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 +121 -126
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js +43 -44
- 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 +309 -88
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +499 -109
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +129 -23
- 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 +44 -43
- 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 +3 -11
- package/dist/internal/dateTime.js.map +1 -1
- package/dist/internal/effect.js +264 -126
- 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 +5 -5
- 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 +16 -30
- package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
- package/dist/unstable/ai/LanguageModel.js +97 -37
- 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/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 +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 +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 +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 +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/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/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 +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 +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 +554 -138
- package/src/Chunk.ts +81 -268
- package/src/Combiner.ts +280 -13
- package/src/Config.ts +186 -24
- package/src/Data.ts +539 -376
- package/src/DateTime.ts +24 -164
- package/src/Duration.ts +13 -13
- 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 +123 -132
- 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 +796 -194
- package/src/SchemaAST.ts +164 -31
- package/src/SchemaGetter.ts +15 -17
- package/src/SchemaParser.ts +11 -0
- package/src/SchemaRepresentation.ts +49 -24
- 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 +9 -30
- package/src/internal/effect.ts +774 -301
- 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 +47 -61
- package/src/unstable/ai/LanguageModel.ts +153 -68
- 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/GlobalFlag.ts +243 -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 +5 -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 +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 +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 +7 -2
- package/src/unstable/http/HttpEffect.ts +54 -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 +389 -2
- 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 +81 -28
- 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 +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 +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 +4 -4
- 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/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/Filter.ts
CHANGED
|
@@ -7,7 +7,7 @@ import { dual } from "./Function.ts"
|
|
|
7
7
|
import * as Option from "./Option.ts"
|
|
8
8
|
import * as Predicate from "./Predicate.ts"
|
|
9
9
|
import * as Result from "./Result.ts"
|
|
10
|
-
import type { EqualsWith, ExcludeTag, ExtractTag, Tags } from "./Types.ts"
|
|
10
|
+
import type { EqualsWith, ExcludeTag, ExtractReason, ExtractTag, ReasonTags, Tags } from "./Types.ts"
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
13
|
* Represents a filter function that can transform inputs to outputs or filter them out.
|
|
@@ -29,8 +29,8 @@ import type { EqualsWith, ExcludeTag, ExtractTag, Tags } from "./Types.ts"
|
|
|
29
29
|
* @since 4.0.0
|
|
30
30
|
* @category Models
|
|
31
31
|
*/
|
|
32
|
-
export interface Filter<in Input, out Pass = Input, out Fail = Input
|
|
33
|
-
(input: Input
|
|
32
|
+
export interface Filter<in Input, out Pass = Input, out Fail = Input> {
|
|
33
|
+
(input: Input): Result.Result<Pass, Fail>
|
|
34
34
|
}
|
|
35
35
|
|
|
36
36
|
/**
|
|
@@ -68,67 +68,9 @@ export interface FilterEffect<
|
|
|
68
68
|
out Pass,
|
|
69
69
|
out Fail,
|
|
70
70
|
out E = never,
|
|
71
|
-
out R = never
|
|
72
|
-
in Args extends Array<any> = []
|
|
71
|
+
out R = never
|
|
73
72
|
> {
|
|
74
|
-
(input: Input
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
// -------------------------------------------------------------------------------------
|
|
78
|
-
// apply
|
|
79
|
-
// -------------------------------------------------------------------------------------
|
|
80
|
-
|
|
81
|
-
/**
|
|
82
|
-
* @since 4.0.0
|
|
83
|
-
* @category Apply
|
|
84
|
-
*/
|
|
85
|
-
export type OrPredicate<A, R extends boolean | Result.Result<any, any>, Args extends ReadonlyArray<any> = []> = (
|
|
86
|
-
input: A,
|
|
87
|
-
...args: Args
|
|
88
|
-
) => R
|
|
89
|
-
|
|
90
|
-
/**
|
|
91
|
-
* @since 4.0.0
|
|
92
|
-
* @category Apply
|
|
93
|
-
*/
|
|
94
|
-
export type ResultOrBool<Out = any> = boolean | Result.Result<any, Out>
|
|
95
|
-
|
|
96
|
-
/**
|
|
97
|
-
* @since 4.0.0
|
|
98
|
-
* @category Apply
|
|
99
|
-
*/
|
|
100
|
-
export type Pass<A, R extends boolean | Result.Result<any, any>> = [R] extends [Result.Result<infer _P, infer _F>] ? _P
|
|
101
|
-
: A
|
|
102
|
-
|
|
103
|
-
/**
|
|
104
|
-
* @since 4.0.0
|
|
105
|
-
* @category Apply
|
|
106
|
-
*/
|
|
107
|
-
export type Fail<A, R extends boolean | Result.Result<any, any>> = [R] extends [Result.Result<infer _P, infer _F>] ? _F
|
|
108
|
-
: A
|
|
109
|
-
|
|
110
|
-
/**
|
|
111
|
-
* @since 4.0.0
|
|
112
|
-
* @category Apply
|
|
113
|
-
*/
|
|
114
|
-
export type ApplyResult<A, R extends boolean | Result.Result<any, any>> = Result.Result<Pass<A, R>, Fail<A, R>>
|
|
115
|
-
|
|
116
|
-
/**
|
|
117
|
-
* Applies a filter, predicate, or refinement to an input and returns a boxed
|
|
118
|
-
* result. Extra arguments are forwarded to the function.
|
|
119
|
-
*
|
|
120
|
-
* @since 4.0.0
|
|
121
|
-
* @category Apply
|
|
122
|
-
*/
|
|
123
|
-
export const apply = <In, R extends ResultOrBool>(
|
|
124
|
-
filter: (input: In, ...args: Array<any>) => R,
|
|
125
|
-
input: In,
|
|
126
|
-
...args: Array<any>
|
|
127
|
-
): ApplyResult<In, R> => {
|
|
128
|
-
const result = filter(input, ...args)
|
|
129
|
-
if (result === true) return Result.succeed(input) as any
|
|
130
|
-
if (result === false) return Result.fail(input) as any
|
|
131
|
-
return result as any
|
|
73
|
+
(input: Input): Effect<Result.Result<Pass, Fail>, E, R>
|
|
132
74
|
}
|
|
133
75
|
|
|
134
76
|
// -------------------------------------------------------------------------------------
|
|
@@ -456,6 +398,53 @@ const taggedImpl =
|
|
|
456
398
|
<Input>(input: Input): Result.Result<ExtractTag<Input, Tag>, ExcludeTag<Input, Tag>> =>
|
|
457
399
|
Predicate.isTagged(input, tag) ? Result.succeed(input as any) : Result.fail(input as ExcludeTag<Input, Tag>)
|
|
458
400
|
|
|
401
|
+
/**
|
|
402
|
+
* Creates a filter that extracts a reason from a tagged error.
|
|
403
|
+
*
|
|
404
|
+
* @since 4.0.0
|
|
405
|
+
* @category Constructors
|
|
406
|
+
*/
|
|
407
|
+
export const reason: {
|
|
408
|
+
/**
|
|
409
|
+
* Creates a filter that extracts a reason from a tagged error.
|
|
410
|
+
*
|
|
411
|
+
* @since 4.0.0
|
|
412
|
+
* @category Constructors
|
|
413
|
+
*/
|
|
414
|
+
<Input>(): <const Tag extends Tags<Input>, const ReasonTag extends ReasonTags<ExtractTag<Input, Tag>>>(
|
|
415
|
+
tag: Tag,
|
|
416
|
+
reasonTag: ReasonTag
|
|
417
|
+
) => Filter<Input, ExtractReason<ExtractTag<Input, Tag>, ReasonTag>, Input>
|
|
418
|
+
/**
|
|
419
|
+
* Creates a filter that extracts a reason from a tagged error.
|
|
420
|
+
*
|
|
421
|
+
* @since 4.0.0
|
|
422
|
+
* @category Constructors
|
|
423
|
+
*/
|
|
424
|
+
<Input, const Tag extends Tags<Input>, const ReasonTag extends ReasonTags<ExtractTag<Input, Tag>>>(tag: Tag, reasonTag: ReasonTag): Filter<Input, ExtractReason<ExtractTag<Input, Tag>, ReasonTag>, Input>
|
|
425
|
+
/**
|
|
426
|
+
* Creates a filter that extracts a reason from a tagged error.
|
|
427
|
+
*
|
|
428
|
+
* @since 4.0.0
|
|
429
|
+
* @category Constructors
|
|
430
|
+
*/
|
|
431
|
+
<const Tag extends string, const ReasonTag extends string>(tag: Tag, reasonTag: ReasonTag): <Input>(input: Input) => Result.Result<ExtractReason<ExtractTag<Input, Tag>, ReasonTag>, Input>
|
|
432
|
+
} = function() {
|
|
433
|
+
return arguments.length === 0 ? reasonImpl : reasonImpl(arguments[0] as any, arguments[1] as any)
|
|
434
|
+
} as any
|
|
435
|
+
|
|
436
|
+
const reasonImpl =
|
|
437
|
+
<const Tag extends string, const ReasonTag extends string>(tag: Tag, reasonTag: ReasonTag) =>
|
|
438
|
+
<Input>(input: Input): Result.Result<ExtractTag<Input, Tag>, ExcludeTag<Input, Tag>> => {
|
|
439
|
+
if (
|
|
440
|
+
Predicate.isTagged(input, tag) && Predicate.hasProperty(input, "reason") &&
|
|
441
|
+
Predicate.isTagged(input.reason, reasonTag)
|
|
442
|
+
) {
|
|
443
|
+
return Result.succeed(input.reason as any)
|
|
444
|
+
}
|
|
445
|
+
return Result.fail(input as any)
|
|
446
|
+
}
|
|
447
|
+
|
|
459
448
|
/**
|
|
460
449
|
* Creates a filter that only passes values equal to the specified value using structural equality.
|
|
461
450
|
*
|
package/src/Formatter.ts
CHANGED
|
@@ -1,10 +1,85 @@
|
|
|
1
1
|
/**
|
|
2
|
+
* Utilities for converting arbitrary JavaScript values into human-readable
|
|
3
|
+
* strings, with support for circular references, redaction, and common JS
|
|
4
|
+
* types that `JSON.stringify` handles poorly.
|
|
5
|
+
*
|
|
6
|
+
* Mental model:
|
|
7
|
+
* - A `Formatter<Value, Format>` is a callable `(value: Value) => Format`.
|
|
8
|
+
* - {@link format} is the general-purpose pretty-printer: it handles
|
|
9
|
+
* primitives, arrays, objects, `BigInt`, `Symbol`, `Date`, `RegExp`,
|
|
10
|
+
* `Set`, `Map`, class instances, and circular references.
|
|
11
|
+
* - {@link formatJson} is a safe `JSON.stringify` wrapper that silently
|
|
12
|
+
* drops circular references and applies redaction.
|
|
13
|
+
* - Both functions accept a `space` option for indentation control.
|
|
14
|
+
*
|
|
15
|
+
* Common tasks:
|
|
16
|
+
* - Pretty-print any value for debugging / logging -> {@link format}
|
|
17
|
+
* - Serialize to JSON safely (no circular throws) -> {@link formatJson}
|
|
18
|
+
* - Format a single object property key -> {@link formatPropertyKey}
|
|
19
|
+
* - Format a property path like `["a"]["b"]` -> {@link formatPath}
|
|
20
|
+
* - Format a `Date` to ISO string safely -> {@link formatDate}
|
|
21
|
+
*
|
|
22
|
+
* Gotchas:
|
|
23
|
+
* - {@link format} output is **not** valid JSON; use {@link formatJson} when
|
|
24
|
+
* you need parseable JSON.
|
|
25
|
+
* - {@link format} calls `toString()` on objects by default; pass
|
|
26
|
+
* `ignoreToString: true` to disable.
|
|
27
|
+
* - {@link formatJson} silently omits circular references (the key is
|
|
28
|
+
* dropped from the output).
|
|
29
|
+
* - Values implementing the `Redactable` protocol are automatically
|
|
30
|
+
* redacted by both {@link format} and {@link formatJson}.
|
|
31
|
+
*
|
|
32
|
+
* **Example** (Pretty-print a value)
|
|
33
|
+
*
|
|
34
|
+
* ```ts
|
|
35
|
+
* import { Formatter } from "effect"
|
|
36
|
+
*
|
|
37
|
+
* const obj = { name: "Alice", scores: [100, 97] }
|
|
38
|
+
* console.log(Formatter.format(obj))
|
|
39
|
+
* // {"name":"Alice","scores":[100,97]}
|
|
40
|
+
*
|
|
41
|
+
* console.log(Formatter.format(obj, { space: 2 }))
|
|
42
|
+
* // {
|
|
43
|
+
* // "name": "Alice",
|
|
44
|
+
* // "scores": [
|
|
45
|
+
* // 100,
|
|
46
|
+
* // 97
|
|
47
|
+
* // ]
|
|
48
|
+
* // }
|
|
49
|
+
* ```
|
|
50
|
+
*
|
|
51
|
+
* See also: {@link Formatter}, {@link format}, {@link formatJson}
|
|
52
|
+
*
|
|
2
53
|
* @since 4.0.0
|
|
3
54
|
*/
|
|
4
55
|
import * as Predicate from "./Predicate.ts"
|
|
5
56
|
import { getRedacted, redact, symbolRedactable } from "./Redactable.ts"
|
|
6
57
|
|
|
7
58
|
/**
|
|
59
|
+
* A callable interface representing a function that converts a `Value` into a
|
|
60
|
+
* `Format` (defaults to `string`).
|
|
61
|
+
*
|
|
62
|
+
* When to use:
|
|
63
|
+
* - You want to type a formatting / rendering function generically.
|
|
64
|
+
* - You are building a pipeline that accepts pluggable formatters.
|
|
65
|
+
*
|
|
66
|
+
* Behavior:
|
|
67
|
+
* - Pure callable type; carries no runtime implementation.
|
|
68
|
+
* - Contravariant in `Value`, covariant in `Format`.
|
|
69
|
+
*
|
|
70
|
+
* **Example** (Define a custom formatter)
|
|
71
|
+
*
|
|
72
|
+
* ```ts
|
|
73
|
+
* import type { Formatter } from "effect"
|
|
74
|
+
*
|
|
75
|
+
* const upper: Formatter.Formatter<string> = (s) => s.toUpperCase()
|
|
76
|
+
*
|
|
77
|
+
* console.log(upper("hello"))
|
|
78
|
+
* // HELLO
|
|
79
|
+
* ```
|
|
80
|
+
*
|
|
81
|
+
* See also: {@link format}, {@link formatJson}
|
|
82
|
+
*
|
|
8
83
|
* @category Model
|
|
9
84
|
* @since 4.0.0
|
|
10
85
|
*/
|
|
@@ -15,31 +90,71 @@ export interface Formatter<in Value, out Format = string> {
|
|
|
15
90
|
/**
|
|
16
91
|
* Converts any JavaScript value into a human-readable string.
|
|
17
92
|
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
* -
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
* - Does not
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
* - Primitives
|
|
30
|
-
*
|
|
31
|
-
* -
|
|
32
|
-
*
|
|
33
|
-
* -
|
|
34
|
-
*
|
|
35
|
-
*
|
|
36
|
-
* -
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
* -
|
|
40
|
-
*
|
|
41
|
-
*
|
|
42
|
-
*
|
|
93
|
+
* When to use:
|
|
94
|
+
* - Pretty-printing values for debugging, logging, or error messages.
|
|
95
|
+
* - You need to handle `BigInt`, `Symbol`, `Set`, `Map`, `Date`, `RegExp`,
|
|
96
|
+
* or class instances that `JSON.stringify` cannot represent.
|
|
97
|
+
* - You want circular references shown as `"[Circular]"` instead of
|
|
98
|
+
* throwing.
|
|
99
|
+
*
|
|
100
|
+
* Behavior:
|
|
101
|
+
* - Does not mutate input.
|
|
102
|
+
* - Output is **not** valid JSON; use {@link formatJson} when you need
|
|
103
|
+
* parseable JSON.
|
|
104
|
+
* - Primitives: stringified naturally (`null`, `undefined`, `123`, `true`).
|
|
105
|
+
* Strings are JSON-quoted.
|
|
106
|
+
* - Objects with a custom `toString` (not `Object.prototype.toString`):
|
|
107
|
+
* `toString()` is called unless `ignoreToString` is `true`.
|
|
108
|
+
* - Errors with a `cause`: formatted as `"<message> (cause: <cause>)"`.
|
|
109
|
+
* - Iterables (`Set`, `Map`, etc.): formatted as
|
|
110
|
+
* `ClassName([...elements])`.
|
|
111
|
+
* - Class instances: wrapped as `ClassName({...})`.
|
|
112
|
+
* - `Redactable` values are automatically redacted.
|
|
113
|
+
* - Arrays/objects with 0–1 entries are inline; larger ones are
|
|
114
|
+
* pretty-printed when `space` is set.
|
|
115
|
+
* - Circular references are replaced with `"[Circular]"`.
|
|
116
|
+
*
|
|
117
|
+
* Options:
|
|
118
|
+
* - `space` — indentation unit (number of spaces, or a string like
|
|
119
|
+
* `"\t"`). Defaults to `0` (compact).
|
|
120
|
+
* - `ignoreToString` — skip calling `toString()`. Defaults to `false`.
|
|
121
|
+
*
|
|
122
|
+
* **Example** (Compact output)
|
|
123
|
+
*
|
|
124
|
+
* ```ts
|
|
125
|
+
* import { Formatter } from "effect"
|
|
126
|
+
*
|
|
127
|
+
* console.log(Formatter.format({ a: 1, b: [2, 3] }))
|
|
128
|
+
* // {"a":1,"b":[2,3]}
|
|
129
|
+
* ```
|
|
130
|
+
*
|
|
131
|
+
* **Example** (Pretty-printed output)
|
|
132
|
+
*
|
|
133
|
+
* ```ts
|
|
134
|
+
* import { Formatter } from "effect"
|
|
135
|
+
*
|
|
136
|
+
* console.log(Formatter.format({ a: 1, b: [2, 3] }, { space: 2 }))
|
|
137
|
+
* // {
|
|
138
|
+
* // "a": 1,
|
|
139
|
+
* // "b": [
|
|
140
|
+
* // 2,
|
|
141
|
+
* // 3
|
|
142
|
+
* // ]
|
|
143
|
+
* // }
|
|
144
|
+
* ```
|
|
145
|
+
*
|
|
146
|
+
* **Example** (Circular reference handling)
|
|
147
|
+
*
|
|
148
|
+
* ```ts
|
|
149
|
+
* import { Formatter } from "effect"
|
|
150
|
+
*
|
|
151
|
+
* const obj: any = { name: "loop" }
|
|
152
|
+
* obj.self = obj
|
|
153
|
+
* console.log(Formatter.format(obj))
|
|
154
|
+
* // {"name":"loop","self":[Circular]}
|
|
155
|
+
* ```
|
|
156
|
+
*
|
|
157
|
+
* See also: {@link formatJson}, {@link Formatter}
|
|
43
158
|
*
|
|
44
159
|
* @since 4.0.0
|
|
45
160
|
*/
|
|
@@ -101,7 +216,7 @@ export function format(input: unknown, options?: {
|
|
|
101
216
|
|
|
102
217
|
if (typeof v === "bigint") return String(v) + "n"
|
|
103
218
|
|
|
104
|
-
if (
|
|
219
|
+
if (typeof v === "object" || typeof v === "function") {
|
|
105
220
|
if (seen.has(v)) return CIRCULAR
|
|
106
221
|
seen.add(v)
|
|
107
222
|
|
|
@@ -131,7 +246,29 @@ export function format(input: unknown, options?: {
|
|
|
131
246
|
const CIRCULAR = "[Circular]"
|
|
132
247
|
|
|
133
248
|
/**
|
|
134
|
-
*
|
|
249
|
+
* Formats a single property key for display.
|
|
250
|
+
*
|
|
251
|
+
* When to use:
|
|
252
|
+
* - You are building a custom formatter that needs to render object keys.
|
|
253
|
+
*
|
|
254
|
+
* Behavior:
|
|
255
|
+
* - String keys are JSON-quoted (e.g. `"foo"`).
|
|
256
|
+
* - Symbol and number keys are converted with `String()`.
|
|
257
|
+
* - Pure function; does not mutate input.
|
|
258
|
+
*
|
|
259
|
+
* **Example** (Format property keys)
|
|
260
|
+
*
|
|
261
|
+
* ```ts
|
|
262
|
+
* import { Formatter } from "effect"
|
|
263
|
+
*
|
|
264
|
+
* console.log(Formatter.formatPropertyKey("name"))
|
|
265
|
+
* // "name"
|
|
266
|
+
*
|
|
267
|
+
* console.log(Formatter.formatPropertyKey(Symbol.for("id")))
|
|
268
|
+
* // Symbol(id)
|
|
269
|
+
* ```
|
|
270
|
+
*
|
|
271
|
+
* See also: {@link formatPath}, {@link format}
|
|
135
272
|
*
|
|
136
273
|
* @internal
|
|
137
274
|
*/
|
|
@@ -140,7 +277,28 @@ export function formatPropertyKey(name: PropertyKey): string {
|
|
|
140
277
|
}
|
|
141
278
|
|
|
142
279
|
/**
|
|
143
|
-
*
|
|
280
|
+
* Formats an array of property keys as a bracket-notation path string.
|
|
281
|
+
*
|
|
282
|
+
* When to use:
|
|
283
|
+
* - You need to display a path through a nested object (e.g. in error
|
|
284
|
+
* messages or schema validation output).
|
|
285
|
+
*
|
|
286
|
+
* Behavior:
|
|
287
|
+
* - Each key is wrapped in brackets and formatted via
|
|
288
|
+
* {@link formatPropertyKey}.
|
|
289
|
+
* - Returns an empty string for an empty path.
|
|
290
|
+
* - Pure function; does not mutate input.
|
|
291
|
+
*
|
|
292
|
+
* **Example** (Render a property path)
|
|
293
|
+
*
|
|
294
|
+
* ```ts
|
|
295
|
+
* import { Formatter } from "effect"
|
|
296
|
+
*
|
|
297
|
+
* console.log(Formatter.formatPath(["users", 0, "name"]))
|
|
298
|
+
* // ["users"][0]["name"]
|
|
299
|
+
* ```
|
|
300
|
+
*
|
|
301
|
+
* See also: {@link formatPropertyKey}, {@link format}
|
|
144
302
|
*
|
|
145
303
|
* @internal
|
|
146
304
|
*/
|
|
@@ -149,7 +307,31 @@ export function formatPath(path: ReadonlyArray<PropertyKey>): string {
|
|
|
149
307
|
}
|
|
150
308
|
|
|
151
309
|
/**
|
|
152
|
-
*
|
|
310
|
+
* Formats a `Date` as an ISO 8601 string, returning `"Invalid Date"` for
|
|
311
|
+
* invalid dates instead of throwing.
|
|
312
|
+
*
|
|
313
|
+
* When to use:
|
|
314
|
+
* - You want a safe `toISOString()` that never throws.
|
|
315
|
+
*
|
|
316
|
+
* Behavior:
|
|
317
|
+
* - Returns `date.toISOString()` on success.
|
|
318
|
+
* - Returns `"Invalid Date"` if `toISOString()` throws (e.g. for
|
|
319
|
+
* `new Date(NaN)`).
|
|
320
|
+
* - Pure function; does not mutate input.
|
|
321
|
+
*
|
|
322
|
+
* **Example** (Safe date formatting)
|
|
323
|
+
*
|
|
324
|
+
* ```ts
|
|
325
|
+
* import { Formatter } from "effect"
|
|
326
|
+
*
|
|
327
|
+
* console.log(Formatter.formatDate(new Date("2024-01-15T10:30:00Z")))
|
|
328
|
+
* // 2024-01-15T10:30:00.000Z
|
|
329
|
+
*
|
|
330
|
+
* console.log(Formatter.formatDate(new Date("invalid")))
|
|
331
|
+
* // Invalid Date
|
|
332
|
+
* ```
|
|
333
|
+
*
|
|
334
|
+
* See also: {@link format}
|
|
153
335
|
*
|
|
154
336
|
* @internal
|
|
155
337
|
*/
|
|
@@ -171,42 +353,62 @@ function safeToString(input: any): string {
|
|
|
171
353
|
}
|
|
172
354
|
|
|
173
355
|
/**
|
|
174
|
-
* Safely stringifies
|
|
356
|
+
* Safely stringifies a value to JSON, silently dropping circular references.
|
|
357
|
+
*
|
|
358
|
+
* When to use:
|
|
359
|
+
* - You need valid JSON output (unlike {@link format}).
|
|
360
|
+
* - The input may contain circular references and you want them silently
|
|
361
|
+
* omitted rather than throwing a `TypeError`.
|
|
175
362
|
*
|
|
176
|
-
*
|
|
177
|
-
*
|
|
178
|
-
*
|
|
363
|
+
* Behavior:
|
|
364
|
+
* - Does not mutate input.
|
|
365
|
+
* - Uses `JSON.stringify` internally with a replacer that tracks seen
|
|
366
|
+
* objects.
|
|
367
|
+
* - Circular references are replaced with `undefined` (omitted from
|
|
368
|
+
* output).
|
|
369
|
+
* - `Redactable` values are automatically redacted before serialization.
|
|
370
|
+
* - Types not supported by JSON (`BigInt`, `Symbol`, `undefined`,
|
|
371
|
+
* functions) follow standard `JSON.stringify` behavior (omitted or
|
|
372
|
+
* `null` in arrays).
|
|
179
373
|
*
|
|
180
|
-
*
|
|
181
|
-
* - `space
|
|
182
|
-
*
|
|
183
|
-
*
|
|
184
|
-
*
|
|
185
|
-
* Defaults to `0`.
|
|
374
|
+
* Options:
|
|
375
|
+
* - `space` — indentation unit (number of spaces, or a string like
|
|
376
|
+
* `"\t"`). Defaults to `0` (compact).
|
|
377
|
+
*
|
|
378
|
+
* **Example** (Compact JSON)
|
|
186
379
|
*
|
|
187
|
-
* @example
|
|
188
380
|
* ```ts
|
|
189
|
-
* import {
|
|
381
|
+
* import { Formatter } from "effect"
|
|
190
382
|
*
|
|
191
|
-
*
|
|
192
|
-
* const simple = { name: "Alice", age: 30 }
|
|
193
|
-
* console.log(formatJson(simple))
|
|
383
|
+
* console.log(Formatter.formatJson({ name: "Alice", age: 30 }))
|
|
194
384
|
* // {"name":"Alice","age":30}
|
|
385
|
+
* ```
|
|
386
|
+
*
|
|
387
|
+
* **Example** (Circular reference handling)
|
|
388
|
+
*
|
|
389
|
+
* ```ts
|
|
390
|
+
* import { Formatter } from "effect"
|
|
195
391
|
*
|
|
196
|
-
*
|
|
197
|
-
*
|
|
198
|
-
*
|
|
199
|
-
*
|
|
200
|
-
*
|
|
392
|
+
* const obj: any = { name: "test" }
|
|
393
|
+
* obj.self = obj
|
|
394
|
+
* console.log(Formatter.formatJson(obj))
|
|
395
|
+
* // {"name":"test"}
|
|
396
|
+
* ```
|
|
397
|
+
*
|
|
398
|
+
* **Example** (Pretty-printed JSON)
|
|
201
399
|
*
|
|
202
|
-
*
|
|
203
|
-
*
|
|
400
|
+
* ```ts
|
|
401
|
+
* import { Formatter } from "effect"
|
|
402
|
+
*
|
|
403
|
+
* console.log(Formatter.formatJson({ name: "Alice", age: 30 }, { space: 2 }))
|
|
204
404
|
* // {
|
|
205
405
|
* // "name": "Alice",
|
|
206
406
|
* // "age": 30
|
|
207
407
|
* // }
|
|
208
408
|
* ```
|
|
209
409
|
*
|
|
410
|
+
* See also: {@link format}, {@link Formatter}
|
|
411
|
+
*
|
|
210
412
|
* @since 4.0.0
|
|
211
413
|
*/
|
|
212
414
|
export function formatJson(input: unknown, options?: {
|
package/src/Function.ts
CHANGED
|
@@ -402,18 +402,10 @@ export const satisfies = <A>() => <B extends A>(b: B) => b
|
|
|
402
402
|
/**
|
|
403
403
|
* Casts the result to the specified type.
|
|
404
404
|
*
|
|
405
|
-
* @example
|
|
406
|
-
* ```ts
|
|
407
|
-
* import { coerceUnsafe, identity } from "effect/Function"
|
|
408
|
-
* import * as assert from "node:assert"
|
|
409
|
-
*
|
|
410
|
-
* assert.deepStrictEqual(coerceUnsafe, identity)
|
|
411
|
-
* ```
|
|
412
|
-
*
|
|
413
405
|
* @category type utils
|
|
414
406
|
* @since 2.0.0
|
|
415
407
|
*/
|
|
416
|
-
export const
|
|
408
|
+
export const cast: <A, B>(a: A) => B = identity as any
|
|
417
409
|
|
|
418
410
|
/**
|
|
419
411
|
* Creates a constant value that never changes.
|
|
@@ -1392,7 +1384,7 @@ export function flow(
|
|
|
1392
1384
|
* @category utilities
|
|
1393
1385
|
* @since 2.0.0
|
|
1394
1386
|
*/
|
|
1395
|
-
export const hole: <T>() => T =
|
|
1387
|
+
export const hole: <T>() => T = cast(absurd)
|
|
1396
1388
|
|
|
1397
1389
|
/**
|
|
1398
1390
|
* The SK combinator, also known as the "S-K combinator" or "S-combinator", is a fundamental combinator in the
|
package/src/Graph.ts
CHANGED
|
@@ -1200,11 +1200,14 @@ export const reverse = <N, E, T extends Kind = "directed">(
|
|
|
1200
1200
|
): void => {
|
|
1201
1201
|
// Reverse all edges by swapping source and target
|
|
1202
1202
|
for (const [index, edgeData] of mutable.edges) {
|
|
1203
|
-
mutable.edges.set(
|
|
1204
|
-
|
|
1205
|
-
|
|
1206
|
-
|
|
1207
|
-
|
|
1203
|
+
mutable.edges.set(
|
|
1204
|
+
index,
|
|
1205
|
+
new Edge({
|
|
1206
|
+
source: edgeData.target,
|
|
1207
|
+
target: edgeData.source,
|
|
1208
|
+
data: edgeData.data
|
|
1209
|
+
})
|
|
1210
|
+
)
|
|
1208
1211
|
}
|
|
1209
1212
|
|
|
1210
1213
|
// Clear and rebuild adjacency lists with reversed directions
|
|
@@ -2526,13 +2529,23 @@ export interface MermaidOptions<N, E> {
|
|
|
2526
2529
|
* Escapes special characters in labels for Mermaid syntax compatibility.
|
|
2527
2530
|
*/
|
|
2528
2531
|
const escapeMermaidLabel = (label: string): string => {
|
|
2532
|
+
// Escape special characters for Mermaid using HTML entity codes
|
|
2533
|
+
// According to: https://mermaid.js.org/syntax/flowchart.html#special-characters-that-break-syntax
|
|
2529
2534
|
return label
|
|
2530
|
-
.replace(
|
|
2531
|
-
.replace(/"/g, "
|
|
2532
|
-
.replace(
|
|
2533
|
-
.replace(
|
|
2534
|
-
.replace(
|
|
2535
|
-
.replace(/\
|
|
2535
|
+
.replace(/#/g, "#35;")
|
|
2536
|
+
.replace(/"/g, "#quot;")
|
|
2537
|
+
.replace(/</g, "#lt;")
|
|
2538
|
+
.replace(/>/g, "#gt;")
|
|
2539
|
+
.replace(/&/g, "#amp;")
|
|
2540
|
+
.replace(/\[/g, "#91;")
|
|
2541
|
+
.replace(/\]/g, "#93;")
|
|
2542
|
+
.replace(/\{/g, "#123;")
|
|
2543
|
+
.replace(/\}/g, "#125;")
|
|
2544
|
+
.replace(/\(/g, "#40;")
|
|
2545
|
+
.replace(/\)/g, "#41;")
|
|
2546
|
+
.replace(/\|/g, "#124;")
|
|
2547
|
+
.replace(/\\/g, "#92;")
|
|
2548
|
+
.replace(/\n/g, "<br/>");
|
|
2536
2549
|
}
|
|
2537
2550
|
|
|
2538
2551
|
/**
|
package/src/HashMap.ts
CHANGED
|
@@ -7,6 +7,7 @@ import type { Inspectable } from "./Inspectable.ts"
|
|
|
7
7
|
import * as internal from "./internal/hashMap.ts"
|
|
8
8
|
import type { Option } from "./Option.ts"
|
|
9
9
|
import type { Pipeable } from "./Pipeable.ts"
|
|
10
|
+
import type { Result } from "./Result.ts"
|
|
10
11
|
import type { NoInfer } from "./Types.ts"
|
|
11
12
|
|
|
12
13
|
const TypeId = internal.HashMapTypeId
|
|
@@ -2011,18 +2012,18 @@ export const filter: {
|
|
|
2011
2012
|
export const compact: <K, A>(self: HashMap<K, Option<A>>) => HashMap<K, A> = internal.compact
|
|
2012
2013
|
|
|
2013
2014
|
/**
|
|
2014
|
-
* Maps over the entries of the `HashMap` using the specified
|
|
2015
|
-
*
|
|
2015
|
+
* Maps over the entries of the `HashMap` using the specified filter and keeps
|
|
2016
|
+
* only successful results.
|
|
2016
2017
|
*
|
|
2017
2018
|
* @example
|
|
2018
2019
|
* ```ts
|
|
2019
2020
|
* import * as HashMap from "effect/HashMap"
|
|
2020
|
-
* import * as
|
|
2021
|
+
* import * as Result from "effect/Result"
|
|
2021
2022
|
*
|
|
2022
2023
|
* const map1 = HashMap.make(["a", 1], ["b", 2], ["c", 3], ["d", 4])
|
|
2023
2024
|
* const map2 = HashMap.filterMap(
|
|
2024
2025
|
* map1,
|
|
2025
|
-
* (value) => value % 2 === 0 ?
|
|
2026
|
+
* (value) => value % 2 === 0 ? Result.succeed(value * 2) : Result.failVoid
|
|
2026
2027
|
* )
|
|
2027
2028
|
*
|
|
2028
2029
|
* console.log(HashMap.size(map2)) // 2
|
|
@@ -2035,18 +2036,18 @@ export const compact: <K, A>(self: HashMap<K, Option<A>>) => HashMap<K, A> = int
|
|
|
2035
2036
|
*/
|
|
2036
2037
|
export const filterMap: {
|
|
2037
2038
|
/**
|
|
2038
|
-
* Maps over the entries of the `HashMap` using the specified
|
|
2039
|
-
*
|
|
2039
|
+
* Maps over the entries of the `HashMap` using the specified filter and keeps
|
|
2040
|
+
* only successful results.
|
|
2040
2041
|
*
|
|
2041
2042
|
* @example
|
|
2042
2043
|
* ```ts
|
|
2043
2044
|
* import * as HashMap from "effect/HashMap"
|
|
2044
|
-
* import * as
|
|
2045
|
+
* import * as Result from "effect/Result"
|
|
2045
2046
|
*
|
|
2046
2047
|
* const map1 = HashMap.make(["a", 1], ["b", 2], ["c", 3], ["d", 4])
|
|
2047
2048
|
* const map2 = HashMap.filterMap(
|
|
2048
2049
|
* map1,
|
|
2049
|
-
* (value) => value % 2 === 0 ?
|
|
2050
|
+
* (value) => value % 2 === 0 ? Result.succeed(value * 2) : Result.failVoid
|
|
2050
2051
|
* )
|
|
2051
2052
|
*
|
|
2052
2053
|
* console.log(HashMap.size(map2)) // 2
|
|
@@ -2057,20 +2058,20 @@ export const filterMap: {
|
|
|
2057
2058
|
* @since 2.0.0
|
|
2058
2059
|
* @category filtering
|
|
2059
2060
|
*/
|
|
2060
|
-
<A, K, B>(f: (
|
|
2061
|
+
<A, K, B, X>(f: (input: A, key: K) => Result<B, X>): (self: HashMap<K, A>) => HashMap<K, B>
|
|
2061
2062
|
/**
|
|
2062
|
-
* Maps over the entries of the `HashMap` using the specified
|
|
2063
|
-
*
|
|
2063
|
+
* Maps over the entries of the `HashMap` using the specified filter and keeps
|
|
2064
|
+
* only successful results.
|
|
2064
2065
|
*
|
|
2065
2066
|
* @example
|
|
2066
2067
|
* ```ts
|
|
2067
2068
|
* import * as HashMap from "effect/HashMap"
|
|
2068
|
-
* import * as
|
|
2069
|
+
* import * as Result from "effect/Result"
|
|
2069
2070
|
*
|
|
2070
2071
|
* const map1 = HashMap.make(["a", 1], ["b", 2], ["c", 3], ["d", 4])
|
|
2071
2072
|
* const map2 = HashMap.filterMap(
|
|
2072
2073
|
* map1,
|
|
2073
|
-
* (value) => value % 2 === 0 ?
|
|
2074
|
+
* (value) => value % 2 === 0 ? Result.succeed(value * 2) : Result.failVoid
|
|
2074
2075
|
* )
|
|
2075
2076
|
*
|
|
2076
2077
|
* console.log(HashMap.size(map2)) // 2
|
|
@@ -2081,7 +2082,7 @@ export const filterMap: {
|
|
|
2081
2082
|
* @since 2.0.0
|
|
2082
2083
|
* @category filtering
|
|
2083
2084
|
*/
|
|
2084
|
-
<K, A, B>(self: HashMap<K, A>, f: (
|
|
2085
|
+
<K, A, B, X>(self: HashMap<K, A>, f: (input: A, key: K) => Result<B, X>): HashMap<K, B>
|
|
2085
2086
|
} = internal.filterMap
|
|
2086
2087
|
|
|
2087
2088
|
/**
|