effect 4.0.0-beta.102 → 4.0.0-beta.103
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 +971 -1037
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +381 -407
- package/dist/Array.js.map +1 -1
- package/dist/BigDecimal.d.ts +433 -756
- package/dist/BigDecimal.d.ts.map +1 -1
- package/dist/BigDecimal.js +200 -325
- package/dist/BigDecimal.js.map +1 -1
- package/dist/BigInt.d.ts +207 -267
- package/dist/BigInt.d.ts.map +1 -1
- package/dist/BigInt.js +107 -135
- package/dist/BigInt.js.map +1 -1
- package/dist/Boolean.d.ts +146 -188
- package/dist/Boolean.d.ts.map +1 -1
- package/dist/Boolean.js +64 -84
- package/dist/Boolean.js.map +1 -1
- package/dist/Brand.js.map +1 -1
- package/dist/Cache.d.ts +405 -254
- package/dist/Cache.d.ts.map +1 -1
- package/dist/Cache.js +166 -101
- package/dist/Cache.js.map +1 -1
- package/dist/Cause.d.ts +167 -277
- package/dist/Cause.d.ts.map +1 -1
- package/dist/Cause.js +122 -176
- package/dist/Cause.js.map +1 -1
- package/dist/Channel.d.ts +729 -768
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +514 -440
- package/dist/Channel.js.map +1 -1
- package/dist/ChannelSchema.d.ts +1 -1
- package/dist/ChannelSchema.d.ts.map +1 -1
- package/dist/ChannelSchema.js.map +1 -1
- package/dist/Chunk.d.ts +834 -1173
- package/dist/Chunk.d.ts.map +1 -1
- package/dist/Chunk.js +326 -439
- package/dist/Chunk.js.map +1 -1
- package/dist/Clock.d.ts +180 -49
- package/dist/Clock.d.ts.map +1 -1
- package/dist/Clock.js +96 -31
- package/dist/Clock.js.map +1 -1
- package/dist/Combiner.d.ts +20 -33
- package/dist/Combiner.d.ts.map +1 -1
- package/dist/Combiner.js +18 -30
- package/dist/Combiner.js.map +1 -1
- package/dist/Config.d.ts +225 -173
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js +336 -265
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.d.ts +194 -68
- package/dist/ConfigProvider.d.ts.map +1 -1
- package/dist/ConfigProvider.js +115 -80
- package/dist/ConfigProvider.js.map +1 -1
- package/dist/Console.d.ts +233 -33
- package/dist/Console.d.ts.map +1 -1
- package/dist/Console.js +232 -32
- package/dist/Console.js.map +1 -1
- package/dist/Context.d.ts +151 -274
- package/dist/Context.d.ts.map +1 -1
- package/dist/Context.js +171 -214
- package/dist/Context.js.map +1 -1
- package/dist/Cron.d.ts +68 -77
- package/dist/Cron.d.ts.map +1 -1
- package/dist/Cron.js +57 -66
- package/dist/Cron.js.map +1 -1
- package/dist/Crypto.d.ts +13 -15
- package/dist/Crypto.d.ts.map +1 -1
- package/dist/Crypto.js +9 -10
- package/dist/Crypto.js.map +1 -1
- package/dist/Data.d.ts +60 -80
- package/dist/Data.d.ts.map +1 -1
- package/dist/Data.js +16 -23
- package/dist/Data.js.map +1 -1
- package/dist/DateTime.d.ts +562 -660
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/DateTime.js +307 -362
- package/dist/DateTime.js.map +1 -1
- package/dist/Deferred.d.ts +253 -256
- package/dist/Deferred.d.ts.map +1 -1
- package/dist/Deferred.js +104 -96
- package/dist/Deferred.js.map +1 -1
- package/dist/Duration.d.ts +216 -308
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +132 -186
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +2841 -3247
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +1322 -1546
- package/dist/Effect.js.map +1 -1
- package/dist/Effectable.js.map +1 -1
- package/dist/Encoding.d.ts +22 -40
- package/dist/Encoding.d.ts.map +1 -1
- package/dist/Encoding.js +22 -40
- package/dist/Encoding.js.map +1 -1
- package/dist/Equal.d.ts +33 -37
- package/dist/Equal.d.ts.map +1 -1
- package/dist/Equal.js +29 -21
- package/dist/Equal.js.map +1 -1
- package/dist/Equivalence.d.ts +103 -105
- package/dist/Equivalence.d.ts.map +1 -1
- package/dist/Equivalence.js +77 -79
- package/dist/Equivalence.js.map +1 -1
- package/dist/ErrorReporter.d.ts +51 -27
- package/dist/ErrorReporter.d.ts.map +1 -1
- package/dist/ErrorReporter.js +50 -26
- package/dist/ErrorReporter.js.map +1 -1
- package/dist/ExecutionPlan.d.ts +13 -55
- package/dist/ExecutionPlan.d.ts.map +1 -1
- package/dist/ExecutionPlan.js +7 -28
- package/dist/ExecutionPlan.js.map +1 -1
- package/dist/Exit.d.ts +116 -192
- package/dist/Exit.d.ts.map +1 -1
- package/dist/Exit.js +82 -130
- package/dist/Exit.js.map +1 -1
- package/dist/Fiber.d.ts +82 -146
- package/dist/Fiber.d.ts.map +1 -1
- package/dist/Fiber.js +48 -87
- package/dist/Fiber.js.map +1 -1
- package/dist/FiberHandle.d.ts +152 -105
- package/dist/FiberHandle.d.ts.map +1 -1
- package/dist/FiberHandle.js +106 -73
- package/dist/FiberHandle.js.map +1 -1
- package/dist/FiberMap.d.ts +213 -168
- package/dist/FiberMap.d.ts.map +1 -1
- package/dist/FiberMap.js +114 -89
- package/dist/FiberMap.js.map +1 -1
- package/dist/FiberSet.d.ts +123 -81
- package/dist/FiberSet.d.ts.map +1 -1
- package/dist/FiberSet.js +85 -59
- package/dist/FiberSet.js.map +1 -1
- package/dist/FileSystem.d.ts +153 -264
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js +42 -147
- package/dist/FileSystem.js.map +1 -1
- package/dist/Filter.d.ts +61 -33
- package/dist/Filter.d.ts.map +1 -1
- package/dist/Filter.js +26 -15
- package/dist/Filter.js.map +1 -1
- package/dist/Formatter.d.ts +25 -33
- package/dist/Formatter.d.ts.map +1 -1
- package/dist/Formatter.js +48 -49
- package/dist/Formatter.js.map +1 -1
- package/dist/Function.d.ts +76 -145
- package/dist/Function.d.ts.map +1 -1
- package/dist/Function.js +40 -57
- package/dist/Function.js.map +1 -1
- package/dist/Graph.d.ts +360 -714
- package/dist/Graph.d.ts.map +1 -1
- package/dist/Graph.js +168 -297
- package/dist/Graph.js.map +1 -1
- package/dist/HKT.d.ts +12 -6
- package/dist/HKT.d.ts.map +1 -1
- package/dist/Hash.d.ts +47 -83
- package/dist/Hash.d.ts.map +1 -1
- package/dist/Hash.js +46 -68
- package/dist/Hash.js.map +1 -1
- package/dist/HashMap.d.ts +319 -411
- package/dist/HashMap.d.ts.map +1 -1
- package/dist/HashMap.js +122 -166
- package/dist/HashMap.js.map +1 -1
- package/dist/HashRing.d.ts.map +1 -1
- package/dist/HashRing.js +1 -0
- package/dist/HashRing.js.map +1 -1
- package/dist/HashSet.d.ts +177 -284
- package/dist/HashSet.d.ts.map +1 -1
- package/dist/HashSet.js +68 -109
- package/dist/HashSet.js.map +1 -1
- package/dist/Inspectable.d.ts +12 -12
- package/dist/Inspectable.js +8 -8
- package/dist/Inspectable.js.map +1 -1
- package/dist/Iterable.d.ts +620 -786
- package/dist/Iterable.d.ts.map +1 -1
- package/dist/Iterable.js +228 -306
- package/dist/Iterable.js.map +1 -1
- package/dist/JsonPatch.d.ts +11 -13
- package/dist/JsonPatch.d.ts.map +1 -1
- package/dist/JsonPatch.js +44 -102
- package/dist/JsonPatch.js.map +1 -1
- package/dist/JsonPointer.d.ts +8 -8
- package/dist/JsonPointer.js +8 -8
- package/dist/JsonPointer.js.map +1 -1
- package/dist/JsonSchema.d.ts +98 -44
- package/dist/JsonSchema.d.ts.map +1 -1
- package/dist/JsonSchema.js +297 -234
- package/dist/JsonSchema.js.map +1 -1
- package/dist/Latch.d.ts +23 -35
- package/dist/Latch.d.ts.map +1 -1
- package/dist/Latch.js +16 -28
- package/dist/Latch.js.map +1 -1
- package/dist/Layer.d.ts +359 -260
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js +195 -175
- package/dist/Layer.js.map +1 -1
- package/dist/LayerMap.d.ts +42 -29
- package/dist/LayerMap.d.ts.map +1 -1
- package/dist/LayerMap.js +31 -21
- package/dist/LayerMap.js.map +1 -1
- package/dist/LayerRef.d.ts +6 -2
- package/dist/LayerRef.d.ts.map +1 -1
- package/dist/LayerRef.js +6 -2
- package/dist/LayerRef.js.map +1 -1
- package/dist/LogLevel.d.ts +114 -214
- package/dist/LogLevel.d.ts.map +1 -1
- package/dist/LogLevel.js +41 -76
- package/dist/LogLevel.js.map +1 -1
- package/dist/Logger.d.ts +218 -467
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js +204 -450
- package/dist/Logger.js.map +1 -1
- package/dist/ManagedRuntime.d.ts +7 -5
- package/dist/ManagedRuntime.d.ts.map +1 -1
- package/dist/ManagedRuntime.js +7 -5
- package/dist/ManagedRuntime.js.map +1 -1
- package/dist/Match.d.ts +217 -252
- package/dist/Match.d.ts.map +1 -1
- package/dist/Match.js +150 -183
- package/dist/Match.js.map +1 -1
- package/dist/Metric.d.ts +442 -993
- package/dist/Metric.d.ts.map +1 -1
- package/dist/Metric.js +198 -642
- package/dist/Metric.js.map +1 -1
- package/dist/MutableHashMap.d.ts +144 -173
- package/dist/MutableHashMap.d.ts.map +1 -1
- package/dist/MutableHashMap.js +68 -79
- package/dist/MutableHashMap.js.map +1 -1
- package/dist/MutableHashSet.d.ts +84 -89
- package/dist/MutableHashSet.d.ts.map +1 -1
- package/dist/MutableHashSet.js +44 -47
- package/dist/MutableHashSet.js.map +1 -1
- package/dist/MutableList.d.ts +71 -370
- package/dist/MutableList.d.ts.map +1 -1
- package/dist/MutableList.js +59 -284
- package/dist/MutableList.js.map +1 -1
- package/dist/MutableRef.d.ts +420 -243
- package/dist/MutableRef.d.ts.map +1 -1
- package/dist/MutableRef.js +209 -120
- package/dist/MutableRef.js.map +1 -1
- package/dist/Newtype.d.ts +21 -14
- package/dist/Newtype.d.ts.map +1 -1
- package/dist/Newtype.js +15 -13
- package/dist/Newtype.js.map +1 -1
- package/dist/NonEmptyIterable.d.ts +7 -137
- package/dist/NonEmptyIterable.d.ts.map +1 -1
- package/dist/NonEmptyIterable.js +5 -93
- package/dist/NonEmptyIterable.js.map +1 -1
- package/dist/Number.d.ts +196 -233
- package/dist/Number.d.ts.map +1 -1
- package/dist/Number.js +90 -109
- package/dist/Number.js.map +1 -1
- package/dist/Optic.d.ts +97 -189
- package/dist/Optic.d.ts.map +1 -1
- package/dist/Optic.js +187 -290
- package/dist/Optic.js.map +1 -1
- package/dist/Option.d.ts +447 -812
- package/dist/Option.d.ts.map +1 -1
- package/dist/Option.js +211 -392
- package/dist/Option.js.map +1 -1
- package/dist/Order.d.ts +109 -109
- package/dist/Order.js +91 -91
- package/dist/Order.js.map +1 -1
- package/dist/Ordering.d.ts +20 -23
- package/dist/Ordering.d.ts.map +1 -1
- package/dist/Ordering.js +8 -9
- package/dist/Ordering.js.map +1 -1
- package/dist/PartitionedSemaphore.js.map +1 -1
- package/dist/Path.d.ts +38 -41
- package/dist/Path.d.ts.map +1 -1
- package/dist/Path.js +3 -4
- package/dist/Path.js.map +1 -1
- package/dist/Pipeable.d.ts +6 -5
- package/dist/Pipeable.d.ts.map +1 -1
- package/dist/Pipeable.js +2 -2
- package/dist/Pipeable.js.map +1 -1
- package/dist/PlatformError.d.ts +4 -4
- package/dist/PlatformError.js +3 -3
- package/dist/PlatformError.js.map +1 -1
- package/dist/Pool.d.ts +4 -2
- package/dist/Pool.d.ts.map +1 -1
- package/dist/Pool.js +4 -2
- package/dist/Pool.js.map +1 -1
- package/dist/Predicate.d.ts +200 -181
- package/dist/Predicate.d.ts.map +1 -1
- package/dist/Predicate.js +100 -108
- package/dist/Predicate.js.map +1 -1
- package/dist/PrimaryKey.d.ts +7 -7
- package/dist/PrimaryKey.js +5 -5
- package/dist/PrimaryKey.js.map +1 -1
- package/dist/PubSub.d.ts +425 -494
- package/dist/PubSub.d.ts.map +1 -1
- package/dist/PubSub.js +373 -362
- package/dist/PubSub.js.map +1 -1
- package/dist/Pull.d.ts +24 -18
- package/dist/Pull.d.ts.map +1 -1
- package/dist/Pull.js +11 -9
- package/dist/Pull.js.map +1 -1
- package/dist/Queue.d.ts +200 -159
- package/dist/Queue.d.ts.map +1 -1
- package/dist/Queue.js +162 -132
- package/dist/Queue.js.map +1 -1
- package/dist/Random.d.ts +49 -74
- package/dist/Random.d.ts.map +1 -1
- package/dist/Random.js +35 -54
- package/dist/Random.js.map +1 -1
- package/dist/RcMap.d.ts +121 -63
- package/dist/RcMap.d.ts.map +1 -1
- package/dist/RcMap.js +42 -21
- package/dist/RcMap.js.map +1 -1
- package/dist/RcRef.d.ts +24 -13
- package/dist/RcRef.d.ts.map +1 -1
- package/dist/RcRef.js +15 -9
- package/dist/RcRef.js.map +1 -1
- package/dist/Record.d.ts +291 -488
- package/dist/Record.d.ts.map +1 -1
- package/dist/Record.js +111 -202
- package/dist/Record.js.map +1 -1
- package/dist/Redactable.d.ts +6 -2
- package/dist/Redactable.d.ts.map +1 -1
- package/dist/Redactable.js +7 -2
- package/dist/Redactable.js.map +1 -1
- package/dist/Redacted.d.ts +25 -25
- package/dist/Redacted.d.ts.map +1 -1
- package/dist/Redacted.js +19 -20
- package/dist/Redacted.js.map +1 -1
- package/dist/Reducer.d.ts +8 -15
- package/dist/Reducer.d.ts.map +1 -1
- package/dist/Reducer.js +6 -12
- package/dist/Reducer.js.map +1 -1
- package/dist/Ref.d.ts +95 -165
- package/dist/Ref.d.ts.map +1 -1
- package/dist/Ref.js +75 -122
- package/dist/Ref.js.map +1 -1
- package/dist/References.d.ts +102 -168
- package/dist/References.d.ts.map +1 -1
- package/dist/References.js +102 -168
- package/dist/References.js.map +1 -1
- package/dist/RegExp.d.ts +10 -14
- package/dist/RegExp.d.ts.map +1 -1
- package/dist/RegExp.js +10 -14
- package/dist/RegExp.js.map +1 -1
- package/dist/Request.d.ts +31 -21
- package/dist/Request.d.ts.map +1 -1
- package/dist/Request.js +16 -13
- package/dist/Request.js.map +1 -1
- package/dist/RequestResolver.d.ts +201 -90
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +87 -41
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Resource.js.map +1 -1
- package/dist/Result.d.ts +302 -470
- package/dist/Result.d.ts.map +1 -1
- package/dist/Result.js +133 -217
- package/dist/Result.js.map +1 -1
- package/dist/Runtime.d.ts +50 -75
- package/dist/Runtime.d.ts.map +1 -1
- package/dist/Runtime.js +39 -60
- package/dist/Runtime.js.map +1 -1
- package/dist/Schedule.d.ts +290 -1636
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +162 -803
- package/dist/Schedule.js.map +1 -1
- package/dist/Scheduler.d.ts +5 -5
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js +18 -6
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +644 -642
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +491 -527
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +27 -50
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +366 -279
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaError.d.ts +7 -6
- package/dist/SchemaError.d.ts.map +1 -1
- package/dist/SchemaError.js +7 -6
- package/dist/SchemaError.js.map +1 -1
- package/dist/SchemaGetter.d.ts +217 -174
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +218 -185
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaIssue.d.ts +62 -190
- package/dist/SchemaIssue.d.ts.map +1 -1
- package/dist/SchemaIssue.js +73 -265
- package/dist/SchemaIssue.js.map +1 -1
- package/dist/SchemaParser.d.ts +2 -2
- package/dist/SchemaParser.d.ts.map +1 -1
- package/dist/SchemaParser.js +123 -75
- package/dist/SchemaParser.js.map +1 -1
- package/dist/SchemaRepresentation.d.ts +22 -36
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +20 -26
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +114 -74
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +120 -85
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/Scope.d.ts +123 -151
- package/dist/Scope.d.ts.map +1 -1
- package/dist/Scope.js +72 -92
- package/dist/Scope.js.map +1 -1
- package/dist/ScopedCache.js.map +1 -1
- package/dist/ScopedRef.d.ts +3 -3
- package/dist/ScopedRef.js +2 -2
- package/dist/ScopedRef.js.map +1 -1
- package/dist/Semaphore.d.ts +96 -10
- package/dist/Semaphore.d.ts.map +1 -1
- package/dist/Semaphore.js +78 -39
- package/dist/Semaphore.js.map +1 -1
- package/dist/Sink.d.ts +117 -107
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js +107 -100
- package/dist/Sink.js.map +1 -1
- package/dist/Stdio.d.ts +1 -1
- package/dist/Stdio.js.map +1 -1
- package/dist/Stream.d.ts +2415 -2949
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +1078 -1381
- package/dist/Stream.js.map +1 -1
- package/dist/String.d.ts +262 -308
- package/dist/String.d.ts.map +1 -1
- package/dist/String.js +184 -215
- package/dist/String.js.map +1 -1
- package/dist/Struct.d.ts +109 -114
- package/dist/Struct.d.ts.map +1 -1
- package/dist/Struct.js +41 -50
- package/dist/Struct.js.map +1 -1
- package/dist/SubscriptionRef.d.ts +282 -250
- package/dist/SubscriptionRef.d.ts.map +1 -1
- package/dist/SubscriptionRef.js +104 -92
- package/dist/SubscriptionRef.js.map +1 -1
- package/dist/Symbol.d.ts +3 -3
- package/dist/Symbol.js +3 -3
- package/dist/Symbol.js.map +1 -1
- package/dist/SynchronizedRef.js.map +1 -1
- package/dist/Take.js.map +1 -1
- package/dist/Terminal.d.ts +2 -2
- package/dist/Terminal.js +1 -1
- package/dist/Terminal.js.map +1 -1
- package/dist/Tracer.d.ts +100 -54
- package/dist/Tracer.d.ts.map +1 -1
- package/dist/Tracer.js +41 -24
- package/dist/Tracer.js.map +1 -1
- package/dist/Trie.d.ts +287 -679
- package/dist/Trie.d.ts.map +1 -1
- package/dist/Trie.js +109 -251
- package/dist/Trie.js.map +1 -1
- package/dist/Tuple.d.ts +92 -127
- package/dist/Tuple.d.ts.map +1 -1
- package/dist/Tuple.js +42 -57
- package/dist/Tuple.js.map +1 -1
- package/dist/TxChunk.d.ts +201 -121
- package/dist/TxChunk.d.ts.map +1 -1
- package/dist/TxChunk.js +85 -56
- package/dist/TxChunk.js.map +1 -1
- package/dist/TxDeferred.d.ts +62 -46
- package/dist/TxDeferred.d.ts.map +1 -1
- package/dist/TxDeferred.js +30 -22
- package/dist/TxDeferred.js.map +1 -1
- package/dist/TxHashMap.d.ts +631 -779
- package/dist/TxHashMap.d.ts.map +1 -1
- package/dist/TxHashMap.js +268 -330
- package/dist/TxHashMap.js.map +1 -1
- package/dist/TxHashSet.d.ts +297 -236
- package/dist/TxHashSet.d.ts.map +1 -1
- package/dist/TxHashSet.js +130 -100
- package/dist/TxHashSet.js.map +1 -1
- package/dist/TxPriorityQueue.d.ts +126 -95
- package/dist/TxPriorityQueue.d.ts.map +1 -1
- package/dist/TxPriorityQueue.js +74 -56
- package/dist/TxPriorityQueue.js.map +1 -1
- package/dist/TxPubSub.d.ts +101 -88
- package/dist/TxPubSub.d.ts.map +1 -1
- package/dist/TxPubSub.js +87 -66
- package/dist/TxPubSub.js.map +1 -1
- package/dist/TxQueue.d.ts +200 -180
- package/dist/TxQueue.d.ts.map +1 -1
- package/dist/TxQueue.js +160 -136
- package/dist/TxQueue.js.map +1 -1
- package/dist/TxReentrantLock.d.ts +97 -66
- package/dist/TxReentrantLock.d.ts.map +1 -1
- package/dist/TxReentrantLock.js +67 -45
- package/dist/TxReentrantLock.js.map +1 -1
- package/dist/TxRef.d.ts +51 -32
- package/dist/TxRef.d.ts.map +1 -1
- package/dist/TxRef.js +23 -15
- package/dist/TxRef.js.map +1 -1
- package/dist/TxSemaphore.d.ts +129 -95
- package/dist/TxSemaphore.d.ts.map +1 -1
- package/dist/TxSemaphore.js +85 -70
- package/dist/TxSemaphore.js.map +1 -1
- package/dist/TxSubscriptionRef.d.ts +97 -70
- package/dist/TxSubscriptionRef.d.ts.map +1 -1
- package/dist/TxSubscriptionRef.js +44 -34
- package/dist/TxSubscriptionRef.js.map +1 -1
- package/dist/Types.d.ts +126 -67
- package/dist/Types.d.ts.map +1 -1
- package/dist/UndefinedOr.js.map +1 -1
- package/dist/Unify.d.ts +45 -65
- package/dist/Unify.d.ts.map +1 -1
- package/dist/Unify.js +6 -9
- package/dist/Unify.js.map +1 -1
- package/dist/Utils.d.ts +23 -16
- package/dist/Utils.d.ts.map +1 -1
- package/dist/Utils.js +3 -7
- package/dist/Utils.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/internal/array.js.map +1 -1
- package/dist/internal/core.js +1 -1
- package/dist/internal/core.js.map +1 -1
- package/dist/internal/dateTime.js +4 -0
- package/dist/internal/dateTime.js.map +1 -1
- package/dist/internal/doNotation.js.map +1 -1
- package/dist/internal/effect.js +77 -40
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/equal.js.map +1 -1
- package/dist/internal/errors.js.map +1 -1
- package/dist/internal/executionPlan.js.map +1 -1
- package/dist/internal/hashMap.js.map +1 -1
- package/dist/internal/hashSet.js.map +1 -1
- package/dist/internal/layer.js.map +1 -1
- package/dist/internal/matcher.js.map +1 -1
- package/dist/internal/metric.js.map +1 -1
- package/dist/internal/option.js.map +1 -1
- package/dist/internal/persistence.d.ts +2 -0
- package/dist/internal/persistence.d.ts.map +1 -0
- package/dist/internal/persistence.js +3 -0
- package/dist/internal/persistence.js.map +1 -0
- package/dist/internal/random.js.map +1 -1
- package/dist/internal/rcRef.js.map +1 -1
- package/dist/internal/record.js.map +1 -1
- package/dist/internal/redacted.js.map +1 -1
- package/dist/internal/references.js +3 -0
- package/dist/internal/references.js.map +1 -1
- package/dist/internal/request.js.map +1 -1
- package/dist/internal/result.js.map +1 -1
- package/dist/internal/schedule.js.map +1 -1
- package/dist/internal/schema/annotations.js.map +1 -1
- package/dist/internal/schema/cause.js.map +1 -1
- package/dist/internal/schema/fromJsonSchemaDocument.js +13 -11
- package/dist/internal/schema/fromJsonSchemaDocument.js.map +1 -1
- package/dist/internal/schema/fromRepresentation.js +8 -15
- package/dist/internal/schema/fromRepresentation.js.map +1 -1
- package/dist/internal/schema/parser.d.ts +14 -0
- package/dist/internal/schema/parser.d.ts.map +1 -0
- package/dist/internal/schema/parser.js +13 -0
- package/dist/internal/schema/parser.js.map +1 -0
- package/dist/internal/schema/schema.js.map +1 -1
- package/dist/internal/schema/toArbitrary.js.map +1 -1
- package/dist/internal/schema/toCodeDocument.js.map +1 -1
- package/dist/internal/schema/toEquivalence.js.map +1 -1
- package/dist/internal/schema/toJsonSchemaDocument.js +48 -6
- package/dist/internal/schema/toJsonSchemaDocument.js.map +1 -1
- package/dist/internal/schema/toRepresentation.js +87 -107
- package/dist/internal/schema/toRepresentation.js.map +1 -1
- package/dist/internal/stackTraceLimit.js.map +1 -1
- package/dist/internal/stream.js.map +1 -1
- package/dist/internal/tracer.js.map +1 -1
- package/dist/internal/trie.js +13 -9
- package/dist/internal/trie.js.map +1 -1
- package/dist/testing/FastCheck.d.ts +8 -7
- package/dist/testing/FastCheck.d.ts.map +1 -1
- package/dist/testing/FastCheck.js +8 -7
- package/dist/testing/FastCheck.js.map +1 -1
- package/dist/testing/TestClock.d.ts +57 -28
- package/dist/testing/TestClock.d.ts.map +1 -1
- package/dist/testing/TestClock.js +50 -18
- package/dist/testing/TestClock.js.map +1 -1
- package/dist/testing/TestConsole.d.ts +32 -31
- package/dist/testing/TestConsole.d.ts.map +1 -1
- package/dist/testing/TestConsole.js +24 -22
- package/dist/testing/TestConsole.js.map +1 -1
- package/dist/testing/TestSchema.d.ts +29 -29
- package/dist/testing/TestSchema.js +25 -25
- package/dist/testing/TestSchema.js.map +1 -1
- package/dist/testing/index.js.map +1 -1
- package/dist/unstable/ai/AiError.d.ts +95 -118
- package/dist/unstable/ai/AiError.d.ts.map +1 -1
- package/dist/unstable/ai/AiError.js +94 -117
- package/dist/unstable/ai/AiError.js.map +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.js +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
- package/dist/unstable/ai/Chat.d.ts +132 -97
- package/dist/unstable/ai/Chat.d.ts.map +1 -1
- package/dist/unstable/ai/Chat.js +55 -51
- package/dist/unstable/ai/Chat.js.map +1 -1
- package/dist/unstable/ai/EmbeddingModel.js.map +1 -1
- package/dist/unstable/ai/IdGenerator.d.ts +32 -28
- package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
- package/dist/unstable/ai/IdGenerator.js +26 -21
- package/dist/unstable/ai/IdGenerator.js.map +1 -1
- package/dist/unstable/ai/LanguageModel.d.ts +107 -67
- package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
- package/dist/unstable/ai/LanguageModel.js +104 -64
- package/dist/unstable/ai/LanguageModel.js.map +1 -1
- package/dist/unstable/ai/McpProtocol.d.ts +30 -0
- package/dist/unstable/ai/McpProtocol.d.ts.map +1 -0
- package/dist/unstable/ai/McpProtocol.js +20 -0
- package/dist/unstable/ai/McpProtocol.js.map +1 -0
- package/dist/unstable/ai/McpSchema.d.ts +141 -75
- package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
- package/dist/unstable/ai/McpSchema.js +58 -50
- package/dist/unstable/ai/McpSchema.js.map +1 -1
- package/dist/unstable/ai/McpServer.d.ts +68 -59
- package/dist/unstable/ai/McpServer.d.ts.map +1 -1
- package/dist/unstable/ai/McpServer.js +694 -241
- package/dist/unstable/ai/McpServer.js.map +1 -1
- package/dist/unstable/ai/Model.d.ts +8 -19
- package/dist/unstable/ai/Model.d.ts.map +1 -1
- package/dist/unstable/ai/Model.js +9 -20
- package/dist/unstable/ai/Model.js.map +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.js +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
- package/dist/unstable/ai/Prompt.d.ts +112 -38
- package/dist/unstable/ai/Prompt.d.ts.map +1 -1
- package/dist/unstable/ai/Prompt.js +53 -17
- package/dist/unstable/ai/Prompt.js.map +1 -1
- package/dist/unstable/ai/Response.d.ts +28 -14
- package/dist/unstable/ai/Response.d.ts.map +1 -1
- package/dist/unstable/ai/Response.js +9 -4
- package/dist/unstable/ai/Response.js.map +1 -1
- package/dist/unstable/ai/ResponseIdTracker.js.map +1 -1
- package/dist/unstable/ai/Telemetry.d.ts +46 -13
- package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
- package/dist/unstable/ai/Telemetry.js +18 -7
- package/dist/unstable/ai/Telemetry.js.map +1 -1
- package/dist/unstable/ai/Tokenizer.d.ts +14 -3
- package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
- package/dist/unstable/ai/Tokenizer.js +10 -2
- package/dist/unstable/ai/Tokenizer.js.map +1 -1
- package/dist/unstable/ai/Tool.d.ts +59 -44
- package/dist/unstable/ai/Tool.d.ts.map +1 -1
- package/dist/unstable/ai/Tool.js +48 -39
- package/dist/unstable/ai/Tool.js.map +1 -1
- package/dist/unstable/ai/Toolkit.d.ts +26 -8
- package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
- package/dist/unstable/ai/Toolkit.js +18 -4
- package/dist/unstable/ai/Toolkit.js.map +1 -1
- package/dist/unstable/ai/index.d.ts +4 -0
- package/dist/unstable/ai/index.d.ts.map +1 -1
- package/dist/unstable/ai/index.js +4 -0
- package/dist/unstable/ai/index.js.map +1 -1
- package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
- package/dist/unstable/ai/internal/mcpProtocol.d.ts +21 -0
- package/dist/unstable/ai/internal/mcpProtocol.d.ts.map +1 -0
- package/dist/unstable/ai/internal/mcpProtocol.js +22 -0
- package/dist/unstable/ai/internal/mcpProtocol.js.map +1 -0
- package/dist/unstable/ai/internal/mcpProtocolRegistry.d.ts +2 -0
- package/dist/unstable/ai/internal/mcpProtocolRegistry.d.ts.map +1 -0
- package/dist/unstable/ai/internal/mcpProtocolRegistry.js +32 -0
- package/dist/unstable/ai/internal/mcpProtocolRegistry.js.map +1 -0
- package/dist/unstable/ai/internal/structured-output.js +14 -15
- package/dist/unstable/ai/internal/structured-output.js.map +1 -1
- package/dist/unstable/cli/Argument.d.ts +273 -69
- package/dist/unstable/cli/Argument.d.ts.map +1 -1
- package/dist/unstable/cli/Argument.js +111 -33
- package/dist/unstable/cli/Argument.js.map +1 -1
- package/dist/unstable/cli/CliConfig.js.map +1 -1
- package/dist/unstable/cli/CliError.d.ts +69 -76
- package/dist/unstable/cli/CliError.d.ts.map +1 -1
- package/dist/unstable/cli/CliError.js +57 -61
- package/dist/unstable/cli/CliError.js.map +1 -1
- package/dist/unstable/cli/CliOutput.d.ts +35 -54
- package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
- package/dist/unstable/cli/CliOutput.js +26 -42
- package/dist/unstable/cli/CliOutput.js.map +1 -1
- package/dist/unstable/cli/Command.d.ts +705 -107
- package/dist/unstable/cli/Command.d.ts.map +1 -1
- package/dist/unstable/cli/Command.js +238 -42
- package/dist/unstable/cli/Command.js.map +1 -1
- package/dist/unstable/cli/Completions.js.map +1 -1
- package/dist/unstable/cli/Flag.d.ts +418 -138
- package/dist/unstable/cli/Flag.d.ts.map +1 -1
- package/dist/unstable/cli/Flag.js +197 -71
- package/dist/unstable/cli/Flag.js.map +1 -1
- package/dist/unstable/cli/GlobalFlag.d.ts +1 -1
- package/dist/unstable/cli/GlobalFlag.js.map +1 -1
- package/dist/unstable/cli/HelpDoc.d.ts +12 -4
- package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
- package/dist/unstable/cli/Param.d.ts +292 -78
- package/dist/unstable/cli/Param.d.ts.map +1 -1
- package/dist/unstable/cli/Param.js +128 -46
- package/dist/unstable/cli/Param.js.map +1 -1
- package/dist/unstable/cli/Primitive.d.ts +370 -149
- package/dist/unstable/cli/Primitive.d.ts.map +1 -1
- package/dist/unstable/cli/Primitive.js +344 -136
- package/dist/unstable/cli/Primitive.js.map +1 -1
- package/dist/unstable/cli/Prompt.d.ts +23 -14
- package/dist/unstable/cli/Prompt.d.ts.map +1 -1
- package/dist/unstable/cli/Prompt.js +23 -14
- package/dist/unstable/cli/Prompt.js.map +1 -1
- package/dist/unstable/cli/index.js.map +1 -1
- package/dist/unstable/cli/internal/ansi.js.map +1 -1
- package/dist/unstable/cli/internal/auto-suggest.js.map +1 -1
- package/dist/unstable/cli/internal/command.js.map +1 -1
- package/dist/unstable/cli/internal/completions/bash.js.map +1 -1
- package/dist/unstable/cli/internal/completions/descriptor.js.map +1 -1
- package/dist/unstable/cli/internal/completions/fish.js.map +1 -1
- package/dist/unstable/cli/internal/completions/zsh.js.map +1 -1
- package/dist/unstable/cli/internal/config.js.map +1 -1
- package/dist/unstable/cli/internal/help.js.map +1 -1
- package/dist/unstable/cli/internal/lexer.js +17 -7
- package/dist/unstable/cli/internal/lexer.js.map +1 -1
- package/dist/unstable/cli/internal/parser.js +2 -2
- package/dist/unstable/cli/internal/parser.js.map +1 -1
- package/dist/unstable/cli/internal/wizard.js.map +1 -1
- package/dist/unstable/cluster/ClusterCron.js.map +1 -1
- package/dist/unstable/cluster/ClusterError.js.map +1 -1
- package/dist/unstable/cluster/ClusterMetrics.js.map +1 -1
- package/dist/unstable/cluster/ClusterSchema.d.ts +8 -8
- package/dist/unstable/cluster/ClusterSchema.js +8 -8
- package/dist/unstable/cluster/ClusterSchema.js.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.js +5 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/unstable/cluster/DeliverAt.js.map +1 -1
- package/dist/unstable/cluster/Entity.d.ts +10 -10
- package/dist/unstable/cluster/Entity.d.ts.map +1 -1
- package/dist/unstable/cluster/Entity.js +8 -8
- package/dist/unstable/cluster/Entity.js.map +1 -1
- package/dist/unstable/cluster/EntityAddress.js.map +1 -1
- package/dist/unstable/cluster/EntityId.js.map +1 -1
- package/dist/unstable/cluster/EntityProxy.d.ts +4 -2
- package/dist/unstable/cluster/EntityProxy.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityProxy.js +4 -2
- package/dist/unstable/cluster/EntityProxy.js.map +1 -1
- package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
- package/dist/unstable/cluster/EntityResource.d.ts +2 -2
- package/dist/unstable/cluster/EntityResource.js +2 -2
- package/dist/unstable/cluster/EntityResource.js.map +1 -1
- package/dist/unstable/cluster/EntityType.js.map +1 -1
- package/dist/unstable/cluster/Envelope.d.ts +3 -3
- package/dist/unstable/cluster/Envelope.js +3 -3
- package/dist/unstable/cluster/Envelope.js.map +1 -1
- package/dist/unstable/cluster/HttpRunner.d.ts +2 -2
- package/dist/unstable/cluster/HttpRunner.d.ts.map +1 -1
- package/dist/unstable/cluster/HttpRunner.js +6 -4
- package/dist/unstable/cluster/HttpRunner.js.map +1 -1
- package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
- package/dist/unstable/cluster/MachineId.js.map +1 -1
- package/dist/unstable/cluster/Message.d.ts +9 -9
- package/dist/unstable/cluster/Message.js +6 -6
- package/dist/unstable/cluster/Message.js.map +1 -1
- package/dist/unstable/cluster/MessageStorage.d.ts +15 -15
- package/dist/unstable/cluster/MessageStorage.js +5 -5
- package/dist/unstable/cluster/MessageStorage.js.map +1 -1
- package/dist/unstable/cluster/Reply.d.ts.map +1 -1
- package/dist/unstable/cluster/Reply.js +4 -4
- package/dist/unstable/cluster/Reply.js.map +1 -1
- package/dist/unstable/cluster/Runner.js.map +1 -1
- package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
- package/dist/unstable/cluster/RunnerHealth.d.ts +1 -1
- package/dist/unstable/cluster/RunnerHealth.js +1 -1
- package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
- package/dist/unstable/cluster/RunnerServer.d.ts +2 -1
- package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerServer.js +16 -16
- package/dist/unstable/cluster/RunnerServer.js.map +1 -1
- package/dist/unstable/cluster/RunnerStorage.d.ts +2 -2
- package/dist/unstable/cluster/RunnerStorage.js +1 -1
- package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/Runners.d.ts +6 -6
- package/dist/unstable/cluster/Runners.d.ts.map +1 -1
- package/dist/unstable/cluster/Runners.js +19 -10
- package/dist/unstable/cluster/Runners.js.map +1 -1
- package/dist/unstable/cluster/ShardId.js.map +1 -1
- package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
- package/dist/unstable/cluster/Sharding.js +3 -2
- package/dist/unstable/cluster/Sharding.js.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.d.ts +3 -3
- package/dist/unstable/cluster/ShardingConfig.js +3 -3
- package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
- package/dist/unstable/cluster/ShardingRegistrationEvent.js.map +1 -1
- package/dist/unstable/cluster/SingleRunner.js.map +1 -1
- package/dist/unstable/cluster/Singleton.js.map +1 -1
- package/dist/unstable/cluster/SingletonAddress.d.ts +1 -1
- package/dist/unstable/cluster/SingletonAddress.js +1 -1
- package/dist/unstable/cluster/SingletonAddress.js.map +1 -1
- package/dist/unstable/cluster/Snowflake.d.ts +8 -8
- package/dist/unstable/cluster/Snowflake.js +8 -8
- package/dist/unstable/cluster/Snowflake.js.map +1 -1
- package/dist/unstable/cluster/SocketRunner.js.map +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.js +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
- package/dist/unstable/cluster/SqlRunnerStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/SqlRunnerStorage.js +20 -5
- package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/TestRunner.js.map +1 -1
- package/dist/unstable/cluster/index.js.map +1 -1
- package/dist/unstable/cluster/internal/entityManager.js +5 -5
- package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
- package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
- package/dist/unstable/cluster/internal/hash.js.map +1 -1
- package/dist/unstable/cluster/internal/interruptors.js.map +1 -1
- package/dist/unstable/cluster/internal/resourceMap.js.map +1 -1
- package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
- package/dist/unstable/cluster/internal/shardLock.js.map +1 -1
- package/dist/unstable/devtools/DevTools.js.map +1 -1
- package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
- package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
- package/dist/unstable/devtools/DevToolsServer.js.map +1 -1
- package/dist/unstable/devtools/index.js.map +1 -1
- package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
- package/dist/unstable/encoding/Msgpack.js +6 -8
- package/dist/unstable/encoding/Msgpack.js.map +1 -1
- package/dist/unstable/encoding/Ndjson.js.map +1 -1
- package/dist/unstable/encoding/Sse.d.ts +72 -8
- package/dist/unstable/encoding/Sse.d.ts.map +1 -1
- package/dist/unstable/encoding/Sse.js +58 -8
- package/dist/unstable/encoding/Sse.js.map +1 -1
- package/dist/unstable/encoding/index.js.map +1 -1
- package/dist/unstable/eventlog/Event.d.ts +20 -20
- package/dist/unstable/eventlog/Event.js.map +1 -1
- package/dist/unstable/eventlog/EventGroup.d.ts +4 -4
- package/dist/unstable/eventlog/EventGroup.js.map +1 -1
- package/dist/unstable/eventlog/EventJournal.d.ts +15 -15
- package/dist/unstable/eventlog/EventJournal.js +13 -13
- package/dist/unstable/eventlog/EventJournal.js.map +1 -1
- package/dist/unstable/eventlog/EventLog.d.ts +3 -3
- package/dist/unstable/eventlog/EventLog.js +3 -3
- package/dist/unstable/eventlog/EventLog.js.map +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.d.ts +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.js +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
- package/dist/unstable/eventlog/EventLogMessage.d.ts +2 -2
- package/dist/unstable/eventlog/EventLogMessage.js +1 -1
- package/dist/unstable/eventlog/EventLogMessage.js.map +1 -1
- package/dist/unstable/eventlog/EventLogRemote.d.ts +15 -15
- package/dist/unstable/eventlog/EventLogRemote.js +1 -1
- package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServer.d.ts +11 -2
- package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServer.js +45 -21
- package/dist/unstable/eventlog/EventLogServer.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +4 -4
- package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServerEncrypted.js +13 -5
- package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +5 -5
- package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServerUnencrypted.js +14 -6
- package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -1
- package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +1 -1
- package/dist/unstable/eventlog/EventLogSessionAuth.js +1 -1
- package/dist/unstable/eventlog/EventLogSessionAuth.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
- package/dist/unstable/eventlog/index.js.map +1 -1
- package/dist/unstable/eventlog/internal/identityRootSecretDerivation.js.map +1 -1
- package/dist/unstable/http/Cookies.d.ts +2 -2
- package/dist/unstable/http/Cookies.d.ts.map +1 -1
- package/dist/unstable/http/Cookies.js +30 -18
- package/dist/unstable/http/Cookies.js.map +1 -1
- package/dist/unstable/http/Etag.d.ts +1 -1
- package/dist/unstable/http/Etag.js +1 -1
- package/dist/unstable/http/Etag.js.map +1 -1
- package/dist/unstable/http/FetchHttpClient.d.ts.map +1 -1
- package/dist/unstable/http/FetchHttpClient.js.map +1 -1
- package/dist/unstable/http/Headers.d.ts +2 -2
- package/dist/unstable/http/Headers.js +2 -2
- package/dist/unstable/http/Headers.js.map +1 -1
- package/dist/unstable/http/HttpBody.d.ts +5 -3
- package/dist/unstable/http/HttpBody.d.ts.map +1 -1
- package/dist/unstable/http/HttpBody.js +11 -5
- package/dist/unstable/http/HttpBody.js.map +1 -1
- package/dist/unstable/http/HttpClient.d.ts +51 -44
- package/dist/unstable/http/HttpClient.d.ts.map +1 -1
- package/dist/unstable/http/HttpClient.js +46 -17
- package/dist/unstable/http/HttpClient.js.map +1 -1
- package/dist/unstable/http/HttpClientError.js.map +1 -1
- package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientRequest.js +2 -0
- package/dist/unstable/http/HttpClientRequest.js.map +1 -1
- package/dist/unstable/http/HttpClientResponse.d.ts +4 -4
- package/dist/unstable/http/HttpClientResponse.js +2 -2
- package/dist/unstable/http/HttpClientResponse.js.map +1 -1
- package/dist/unstable/http/HttpEffect.d.ts +6 -6
- package/dist/unstable/http/HttpEffect.js +3 -3
- package/dist/unstable/http/HttpEffect.js.map +1 -1
- package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
- package/dist/unstable/http/HttpMethod.d.ts +6 -9
- package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
- package/dist/unstable/http/HttpMethod.js +6 -9
- package/dist/unstable/http/HttpMethod.js.map +1 -1
- package/dist/unstable/http/HttpMiddleware.d.ts +75 -9
- package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/unstable/http/HttpMiddleware.js +164 -39
- package/dist/unstable/http/HttpMiddleware.js.map +1 -1
- package/dist/unstable/http/HttpPlatform.d.ts +76 -0
- package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
- package/dist/unstable/http/HttpPlatform.js +32 -0
- package/dist/unstable/http/HttpPlatform.js.map +1 -1
- package/dist/unstable/http/HttpRouter.d.ts +88 -89
- package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
- package/dist/unstable/http/HttpRouter.js +78 -79
- package/dist/unstable/http/HttpRouter.js.map +1 -1
- package/dist/unstable/http/HttpServer.d.ts +13 -13
- package/dist/unstable/http/HttpServer.js +6 -6
- package/dist/unstable/http/HttpServer.js.map +1 -1
- package/dist/unstable/http/HttpServerError.d.ts +2 -2
- package/dist/unstable/http/HttpServerError.js +2 -2
- package/dist/unstable/http/HttpServerError.js.map +1 -1
- package/dist/unstable/http/HttpServerRequest.d.ts +4 -4
- package/dist/unstable/http/HttpServerRequest.js +4 -4
- package/dist/unstable/http/HttpServerRequest.js.map +1 -1
- package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
- package/dist/unstable/http/HttpServerResponse.d.ts +22 -0
- package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerResponse.js +10 -0
- package/dist/unstable/http/HttpServerResponse.js.map +1 -1
- package/dist/unstable/http/HttpStaticServer.d.ts +35 -7
- package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -1
- package/dist/unstable/http/HttpStaticServer.js +35 -7
- package/dist/unstable/http/HttpStaticServer.js.map +1 -1
- package/dist/unstable/http/HttpTraceContext.js.map +1 -1
- package/dist/unstable/http/Multipart.d.ts +6 -6
- package/dist/unstable/http/Multipart.js +5 -5
- package/dist/unstable/http/Multipart.js.map +1 -1
- package/dist/unstable/http/Template.js.map +1 -1
- package/dist/unstable/http/Url.d.ts +33 -63
- package/dist/unstable/http/Url.d.ts.map +1 -1
- package/dist/unstable/http/Url.js +14 -28
- package/dist/unstable/http/Url.js.map +1 -1
- package/dist/unstable/http/UrlParams.d.ts +10 -18
- package/dist/unstable/http/UrlParams.d.ts.map +1 -1
- package/dist/unstable/http/UrlParams.js +9 -17
- package/dist/unstable/http/UrlParams.js.map +1 -1
- package/dist/unstable/http/index.js.map +1 -1
- package/dist/unstable/http/internal/compression.d.ts +2 -0
- package/dist/unstable/http/internal/compression.d.ts.map +1 -0
- package/dist/unstable/http/internal/compression.js +155 -0
- package/dist/unstable/http/internal/compression.js.map +1 -0
- package/dist/unstable/http/internal/preResponseHandler.js.map +1 -1
- package/dist/unstable/httpapi/HttpApi.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.js +10 -11
- package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.d.ts +4 -5
- package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.js +11 -13
- package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +42 -42
- package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.d.ts +13 -13
- package/dist/unstable/httpapi/HttpApiError.js +13 -13
- package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.d.ts +15 -15
- package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +71 -24
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.js +57 -10
- package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiScalar.d.ts +0 -12
- package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSchema.d.ts +6 -6
- package/dist/unstable/httpapi/HttpApiSchema.js +4 -4
- package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSwagger.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiTest.js.map +1 -1
- package/dist/unstable/httpapi/OpenApi.d.ts +13 -13
- package/dist/unstable/httpapi/OpenApi.js +13 -13
- package/dist/unstable/httpapi/OpenApi.js.map +1 -1
- package/dist/unstable/httpapi/index.js.map +1 -1
- package/dist/unstable/httpapi/internal/html.js.map +1 -1
- package/dist/unstable/httpapi/internal/httpApiScalar.js.map +1 -1
- package/dist/unstable/httpapi/internal/httpApiSwagger.js.map +1 -1
- package/dist/unstable/httpapi/internal/mediaType.js.map +1 -1
- package/dist/unstable/observability/Otlp.js.map +1 -1
- package/dist/unstable/observability/OtlpExporter.d.ts +12 -14
- package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpExporter.js +17 -4
- package/dist/unstable/observability/OtlpExporter.js.map +1 -1
- package/dist/unstable/observability/OtlpLogger.js.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.d.ts +4 -1
- package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
- package/dist/unstable/observability/OtlpResource.d.ts +16 -7
- package/dist/unstable/observability/OtlpResource.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpResource.js +21 -12
- package/dist/unstable/observability/OtlpResource.js.map +1 -1
- package/dist/unstable/observability/OtlpSerialization.js.map +1 -1
- package/dist/unstable/observability/OtlpTracer.js.map +1 -1
- package/dist/unstable/observability/PrometheusMetrics.d.ts +13 -4
- package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/PrometheusMetrics.js +10 -3
- package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
- package/dist/unstable/observability/index.js.map +1 -1
- package/dist/unstable/observability/internal/otlpEnv.js +1 -1
- package/dist/unstable/observability/internal/otlpEnv.js.map +1 -1
- package/dist/unstable/observability/internal/otlpProtobuf.js.map +1 -1
- package/dist/unstable/observability/internal/protobuf.js +3 -0
- package/dist/unstable/observability/internal/protobuf.js.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.d.ts +8 -3
- package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.js +22 -13
- package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
- package/dist/unstable/persistence/Persistable.d.ts +8 -8
- package/dist/unstable/persistence/Persistable.js.map +1 -1
- package/dist/unstable/persistence/PersistedCache.js.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.d.ts +6 -6
- package/dist/unstable/persistence/PersistedQueue.js +6 -6
- package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
- package/dist/unstable/persistence/Persistence.d.ts +3 -3
- package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
- package/dist/unstable/persistence/Persistence.js +91 -15
- package/dist/unstable/persistence/Persistence.js.map +1 -1
- package/dist/unstable/persistence/RateLimiter.d.ts +26 -15
- package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
- package/dist/unstable/persistence/RateLimiter.js +24 -13
- package/dist/unstable/persistence/RateLimiter.js.map +1 -1
- package/dist/unstable/persistence/Redis.d.ts +2 -2
- package/dist/unstable/persistence/Redis.js +1 -1
- package/dist/unstable/persistence/Redis.js.map +1 -1
- package/dist/unstable/persistence/index.js.map +1 -1
- package/dist/unstable/process/ChildProcess.d.ts +64 -21
- package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcess.js +14 -5
- package/dist/unstable/process/ChildProcess.js.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.d.ts +21 -10
- package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.js +1 -1
- package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
- package/dist/unstable/process/index.js.map +1 -1
- package/dist/unstable/reactivity/AsyncResult.d.ts +8 -8
- package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
- package/dist/unstable/reactivity/AsyncResult.js +10 -10
- package/dist/unstable/reactivity/AsyncResult.js.map +1 -1
- package/dist/unstable/reactivity/Atom.d.ts +25 -22
- package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
- package/dist/unstable/reactivity/Atom.js +14 -13
- package/dist/unstable/reactivity/Atom.js.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.d.ts +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.js +4 -1
- package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
- package/dist/unstable/reactivity/AtomRef.js.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.js +24 -3
- package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.d.ts +1 -1
- package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.js +4 -1
- package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
- package/dist/unstable/reactivity/Hydration.d.ts +1 -1
- package/dist/unstable/reactivity/Hydration.js +1 -1
- package/dist/unstable/reactivity/Hydration.js.map +1 -1
- package/dist/unstable/reactivity/Reactivity.js.map +1 -1
- package/dist/unstable/reactivity/index.js.map +1 -1
- package/dist/unstable/rpc/Rpc.d.ts +35 -33
- package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
- package/dist/unstable/rpc/Rpc.js +4 -2
- package/dist/unstable/rpc/Rpc.js.map +1 -1
- package/dist/unstable/rpc/RpcClient.d.ts +12 -12
- package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClient.js +12 -11
- package/dist/unstable/rpc/RpcClient.js.map +1 -1
- package/dist/unstable/rpc/RpcClientError.js.map +1 -1
- package/dist/unstable/rpc/RpcGroup.d.ts +8 -8
- package/dist/unstable/rpc/RpcGroup.js +1 -1
- package/dist/unstable/rpc/RpcGroup.js.map +1 -1
- package/dist/unstable/rpc/RpcMessage.d.ts +31 -30
- package/dist/unstable/rpc/RpcMessage.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcMessage.js +6 -6
- package/dist/unstable/rpc/RpcMessage.js.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.d.ts +10 -10
- package/dist/unstable/rpc/RpcMiddleware.js +1 -1
- package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
- package/dist/unstable/rpc/RpcSchema.d.ts +4 -4
- package/dist/unstable/rpc/RpcSchema.js +3 -3
- package/dist/unstable/rpc/RpcSchema.js.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.d.ts +58 -7
- package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.js +175 -96
- package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
- package/dist/unstable/rpc/RpcServer.d.ts +13 -13
- package/dist/unstable/rpc/RpcServer.js +17 -13
- package/dist/unstable/rpc/RpcServer.js.map +1 -1
- package/dist/unstable/rpc/RpcTest.js.map +1 -1
- package/dist/unstable/rpc/RpcWorker.d.ts +5 -5
- package/dist/unstable/rpc/RpcWorker.js +4 -4
- package/dist/unstable/rpc/RpcWorker.js.map +1 -1
- package/dist/unstable/rpc/Utils.js.map +1 -1
- package/dist/unstable/rpc/index.js.map +1 -1
- package/dist/unstable/schema/Model.d.ts +52 -50
- package/dist/unstable/schema/Model.d.ts.map +1 -1
- package/dist/unstable/schema/Model.js +35 -33
- package/dist/unstable/schema/Model.js.map +1 -1
- package/dist/unstable/schema/VariantSchema.d.ts +5 -5
- package/dist/unstable/schema/VariantSchema.js +2 -2
- package/dist/unstable/schema/VariantSchema.js.map +1 -1
- package/dist/unstable/schema/index.js.map +1 -1
- package/dist/unstable/socket/Socket.d.ts +11 -3
- package/dist/unstable/socket/Socket.d.ts.map +1 -1
- package/dist/unstable/socket/Socket.js +9 -4
- package/dist/unstable/socket/Socket.js.map +1 -1
- package/dist/unstable/socket/SocketServer.js.map +1 -1
- package/dist/unstable/socket/index.js.map +1 -1
- package/dist/unstable/sql/Migrator.js.map +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/SqlClient.js +2 -2
- package/dist/unstable/sql/SqlClient.js.map +1 -1
- package/dist/unstable/sql/SqlConnection.js.map +1 -1
- package/dist/unstable/sql/SqlError.js.map +1 -1
- package/dist/unstable/sql/SqlModel.d.ts +2 -2
- package/dist/unstable/sql/SqlModel.js +2 -2
- package/dist/unstable/sql/SqlModel.js.map +1 -1
- package/dist/unstable/sql/SqlResolver.d.ts +5 -5
- package/dist/unstable/sql/SqlResolver.js +2 -2
- package/dist/unstable/sql/SqlResolver.js.map +1 -1
- package/dist/unstable/sql/SqlSchema.js.map +1 -1
- package/dist/unstable/sql/SqlStream.js.map +1 -1
- package/dist/unstable/sql/Statement.d.ts +6 -6
- package/dist/unstable/sql/Statement.js +15 -15
- package/dist/unstable/sql/Statement.js.map +1 -1
- package/dist/unstable/sql/index.js.map +1 -1
- package/dist/unstable/workers/Transferable.d.ts +1 -1
- package/dist/unstable/workers/Transferable.js +1 -1
- package/dist/unstable/workers/Transferable.js.map +1 -1
- package/dist/unstable/workers/Worker.d.ts +2 -2
- package/dist/unstable/workers/Worker.js +2 -2
- package/dist/unstable/workers/Worker.js.map +1 -1
- package/dist/unstable/workers/WorkerError.d.ts +7 -7
- package/dist/unstable/workers/WorkerError.js +6 -6
- package/dist/unstable/workers/WorkerError.js.map +1 -1
- package/dist/unstable/workers/WorkerRunner.d.ts +1 -1
- package/dist/unstable/workers/WorkerRunner.js +1 -1
- package/dist/unstable/workers/WorkerRunner.js.map +1 -1
- package/dist/unstable/workers/index.js.map +1 -1
- package/dist/unstable/workflow/Activity.d.ts +2 -2
- package/dist/unstable/workflow/Activity.js +2 -2
- package/dist/unstable/workflow/Activity.js.map +1 -1
- package/dist/unstable/workflow/DurableClock.d.ts +1 -1
- package/dist/unstable/workflow/DurableClock.js +1 -1
- package/dist/unstable/workflow/DurableClock.js.map +1 -1
- package/dist/unstable/workflow/DurableDeferred.d.ts +10 -10
- package/dist/unstable/workflow/DurableDeferred.js +5 -5
- package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
- package/dist/unstable/workflow/DurableQueue.d.ts +22 -20
- package/dist/unstable/workflow/DurableQueue.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableQueue.js +22 -20
- package/dist/unstable/workflow/DurableQueue.js.map +1 -1
- package/dist/unstable/workflow/Workflow.d.ts +21 -21
- package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
- package/dist/unstable/workflow/Workflow.js +13 -14
- package/dist/unstable/workflow/Workflow.js.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.d.ts +1 -1
- package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
- package/dist/unstable/workflow/WorkflowProxy.d.ts +4 -2
- package/dist/unstable/workflow/WorkflowProxy.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowProxy.js +4 -2
- package/dist/unstable/workflow/WorkflowProxy.js.map +1 -1
- package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
- package/dist/unstable/workflow/index.js.map +1 -1
- package/dist/unstable/workflow/internal/crypto.js.map +1 -1
- package/package.json +5 -6
- package/src/Array.ts +982 -1045
- package/src/BigDecimal.ts +433 -756
- package/src/BigInt.ts +213 -269
- package/src/Boolean.ts +146 -188
- package/src/Cache.ts +409 -255
- package/src/Cause.ts +167 -277
- package/src/Channel.ts +891 -816
- package/src/ChannelSchema.ts +1 -1
- package/src/Chunk.ts +841 -1181
- package/src/Clock.ts +181 -49
- package/src/Combiner.ts +20 -33
- package/src/Config.ts +615 -332
- package/src/ConfigProvider.ts +214 -120
- package/src/Console.ts +289 -39
- package/src/Context.ts +319 -378
- package/src/Cron.ts +68 -77
- package/src/Crypto.ts +13 -15
- package/src/Data.ts +60 -80
- package/src/DateTime.ts +564 -660
- package/src/Deferred.ts +253 -256
- package/src/Duration.ts +216 -308
- package/src/Effect.ts +2893 -3279
- package/src/Encoding.ts +22 -40
- package/src/Equal.ts +49 -39
- package/src/Equivalence.ts +103 -105
- package/src/ErrorReporter.ts +51 -27
- package/src/ExecutionPlan.ts +13 -55
- package/src/Exit.ts +116 -192
- package/src/Fiber.ts +81 -148
- package/src/FiberHandle.ts +152 -105
- package/src/FiberMap.ts +225 -174
- package/src/FiberSet.ts +124 -82
- package/src/FileSystem.ts +155 -263
- package/src/Filter.ts +61 -33
- package/src/Formatter.ts +54 -56
- package/src/Function.ts +76 -145
- package/src/Graph.ts +416 -770
- package/src/HKT.ts +12 -6
- package/src/Hash.ts +52 -83
- package/src/HashMap.ts +319 -411
- package/src/HashRing.ts +1 -0
- package/src/HashSet.ts +177 -284
- package/src/Inspectable.ts +12 -12
- package/src/Iterable.ts +620 -786
- package/src/JsonPatch.ts +58 -112
- package/src/JsonPointer.ts +8 -8
- package/src/JsonSchema.ts +402 -244
- package/src/Latch.ts +23 -35
- package/src/Layer.ts +359 -260
- package/src/LayerMap.ts +49 -29
- package/src/LayerRef.ts +6 -2
- package/src/LogLevel.ts +114 -214
- package/src/Logger.ts +344 -697
- package/src/ManagedRuntime.ts +7 -5
- package/src/Match.ts +217 -252
- package/src/Metric.ts +516 -1089
- package/src/MutableHashMap.ts +218 -255
- package/src/MutableHashSet.ts +84 -89
- package/src/MutableList.ts +73 -370
- package/src/MutableRef.ts +420 -243
- package/src/Newtype.ts +21 -14
- package/src/NonEmptyIterable.ts +7 -137
- package/src/Number.ts +196 -233
- package/src/Optic.ts +243 -383
- package/src/Option.ts +447 -812
- package/src/Order.ts +109 -109
- package/src/Ordering.ts +20 -23
- package/src/Path.ts +38 -41
- package/src/Pipeable.ts +6 -5
- package/src/PlatformError.ts +4 -4
- package/src/Pool.ts +4 -2
- package/src/Predicate.ts +200 -181
- package/src/PrimaryKey.ts +7 -7
- package/src/PubSub.ts +526 -552
- package/src/Pull.ts +24 -18
- package/src/Queue.ts +200 -159
- package/src/Random.ts +49 -74
- package/src/RcMap.ts +121 -63
- package/src/RcRef.ts +24 -13
- package/src/Record.ts +291 -488
- package/src/Redactable.ts +10 -3
- package/src/Redacted.ts +25 -25
- package/src/Reducer.ts +8 -15
- package/src/Ref.ts +221 -361
- package/src/References.ts +102 -168
- package/src/RegExp.ts +10 -14
- package/src/Request.ts +31 -21
- package/src/RequestResolver.ts +202 -91
- package/src/Result.ts +312 -484
- package/src/Runtime.ts +50 -75
- package/src/Schedule.ts +308 -1734
- package/src/Scheduler.ts +20 -7
- package/src/Schema.ts +716 -745
- package/src/SchemaAST.ts +466 -358
- package/src/SchemaError.ts +7 -6
- package/src/SchemaGetter.ts +242 -190
- package/src/SchemaIssue.ts +89 -275
- package/src/SchemaParser.ts +180 -93
- package/src/SchemaRepresentation.ts +22 -40
- package/src/SchemaTransformation.ts +129 -88
- package/src/Scope.ts +123 -151
- package/src/ScopedRef.ts +4 -4
- package/src/Semaphore.ts +152 -51
- package/src/Sink.ts +128 -113
- package/src/Stdio.ts +1 -1
- package/src/Stream.ts +2602 -3123
- package/src/String.ts +275 -312
- package/src/Struct.ts +109 -114
- package/src/SubscriptionRef.ts +284 -252
- package/src/Symbol.ts +3 -3
- package/src/Terminal.ts +2 -2
- package/src/Tracer.ts +102 -55
- package/src/Trie.ts +287 -679
- package/src/Tuple.ts +92 -127
- package/src/TxChunk.ts +201 -121
- package/src/TxDeferred.ts +62 -46
- package/src/TxHashMap.ts +645 -799
- package/src/TxHashSet.ts +443 -356
- package/src/TxPriorityQueue.ts +130 -98
- package/src/TxPubSub.ts +107 -80
- package/src/TxQueue.ts +214 -183
- package/src/TxReentrantLock.ts +97 -66
- package/src/TxRef.ts +51 -32
- package/src/TxSemaphore.ts +129 -95
- package/src/TxSubscriptionRef.ts +97 -70
- package/src/Types.ts +126 -67
- package/src/Unify.ts +45 -65
- package/src/Utils.ts +23 -16
- package/src/internal/core.ts +2 -2
- package/src/internal/dateTime.ts +6 -0
- package/src/internal/effect.ts +93 -48
- package/src/internal/persistence.ts +2 -0
- package/src/internal/references.ts +3 -2
- package/src/internal/schema/fromJsonSchemaDocument.ts +15 -13
- package/src/internal/schema/fromRepresentation.ts +10 -16
- package/src/internal/schema/parser.ts +22 -0
- package/src/internal/schema/toJsonSchemaDocument.ts +60 -6
- package/src/internal/schema/toRepresentation.ts +104 -119
- package/src/internal/trie.ts +10 -11
- package/src/testing/FastCheck.ts +8 -7
- package/src/testing/TestClock.ts +72 -30
- package/src/testing/TestConsole.ts +32 -31
- package/src/testing/TestSchema.ts +29 -29
- package/src/unstable/ai/AiError.ts +95 -118
- package/src/unstable/ai/AnthropicStructuredOutput.ts +1 -1
- package/src/unstable/ai/Chat.ts +132 -97
- package/src/unstable/ai/IdGenerator.ts +32 -28
- package/src/unstable/ai/LanguageModel.ts +107 -67
- package/src/unstable/ai/McpProtocol.ts +48 -0
- package/src/unstable/ai/McpSchema.ts +60 -50
- package/src/unstable/ai/McpServer.ts +930 -304
- package/src/unstable/ai/Model.ts +9 -20
- package/src/unstable/ai/OpenAiStructuredOutput.ts +1 -1
- package/src/unstable/ai/Prompt.ts +145 -43
- package/src/unstable/ai/Response.ts +28 -14
- package/src/unstable/ai/Telemetry.ts +46 -13
- package/src/unstable/ai/Tokenizer.ts +14 -3
- package/src/unstable/ai/Tool.ts +59 -44
- package/src/unstable/ai/Toolkit.ts +26 -8
- package/src/unstable/ai/index.ts +5 -0
- package/src/unstable/ai/internal/mcpProtocol.ts +85 -0
- package/src/unstable/ai/internal/mcpProtocolRegistry.ts +70 -0
- package/src/unstable/ai/internal/structured-output.ts +13 -18
- package/src/unstable/cli/Argument.ts +273 -69
- package/src/unstable/cli/CliError.ts +69 -76
- package/src/unstable/cli/CliOutput.ts +44 -58
- package/src/unstable/cli/Command.ts +705 -107
- package/src/unstable/cli/Flag.ts +418 -138
- package/src/unstable/cli/GlobalFlag.ts +1 -1
- package/src/unstable/cli/HelpDoc.ts +12 -4
- package/src/unstable/cli/Param.ts +292 -78
- package/src/unstable/cli/Primitive.ts +370 -149
- package/src/unstable/cli/Prompt.ts +28 -14
- package/src/unstable/cli/internal/lexer.ts +8 -2
- package/src/unstable/cli/internal/parser.ts +2 -2
- package/src/unstable/cluster/ClusterSchema.ts +8 -8
- package/src/unstable/cluster/ClusterWorkflowEngine.ts +5 -1
- package/src/unstable/cluster/Entity.ts +15 -16
- package/src/unstable/cluster/EntityProxy.ts +4 -2
- package/src/unstable/cluster/EntityResource.ts +2 -2
- package/src/unstable/cluster/Envelope.ts +3 -3
- package/src/unstable/cluster/HttpRunner.ts +6 -4
- package/src/unstable/cluster/Message.ts +9 -9
- package/src/unstable/cluster/MessageStorage.ts +15 -15
- package/src/unstable/cluster/Reply.ts +4 -6
- package/src/unstable/cluster/RunnerHealth.ts +1 -1
- package/src/unstable/cluster/RunnerServer.ts +41 -8
- package/src/unstable/cluster/RunnerStorage.ts +2 -2
- package/src/unstable/cluster/Runners.ts +23 -12
- package/src/unstable/cluster/Sharding.ts +7 -8
- package/src/unstable/cluster/ShardingConfig.ts +3 -3
- package/src/unstable/cluster/SingletonAddress.ts +1 -1
- package/src/unstable/cluster/Snowflake.ts +8 -8
- package/src/unstable/cluster/SqlMessageStorage.ts +1 -1
- package/src/unstable/cluster/SqlRunnerStorage.ts +21 -5
- package/src/unstable/cluster/internal/entityManager.ts +11 -15
- package/src/unstable/encoding/Msgpack.ts +6 -8
- package/src/unstable/encoding/Sse.ts +98 -16
- package/src/unstable/eventlog/Event.ts +20 -20
- package/src/unstable/eventlog/EventGroup.ts +4 -4
- package/src/unstable/eventlog/EventJournal.ts +15 -15
- package/src/unstable/eventlog/EventLog.ts +3 -3
- package/src/unstable/eventlog/EventLogEncryption.ts +1 -1
- package/src/unstable/eventlog/EventLogMessage.ts +2 -2
- package/src/unstable/eventlog/EventLogRemote.ts +1 -1
- package/src/unstable/eventlog/EventLogServer.ts +41 -7
- package/src/unstable/eventlog/EventLogServerEncrypted.ts +13 -5
- package/src/unstable/eventlog/EventLogServerUnencrypted.ts +14 -6
- package/src/unstable/eventlog/EventLogSessionAuth.ts +1 -1
- package/src/unstable/http/Cookies.ts +35 -21
- package/src/unstable/http/Etag.ts +1 -1
- package/src/unstable/http/FetchHttpClient.ts +3 -1
- package/src/unstable/http/Headers.ts +2 -2
- package/src/unstable/http/HttpBody.ts +20 -5
- package/src/unstable/http/HttpClient.ts +83 -55
- package/src/unstable/http/HttpClientRequest.ts +2 -0
- package/src/unstable/http/HttpClientResponse.ts +4 -4
- package/src/unstable/http/HttpEffect.ts +8 -8
- package/src/unstable/http/HttpMethod.ts +6 -9
- package/src/unstable/http/HttpMiddleware.ts +202 -39
- package/src/unstable/http/HttpPlatform.ts +95 -0
- package/src/unstable/http/HttpRouter.ts +102 -98
- package/src/unstable/http/HttpServer.ts +13 -13
- package/src/unstable/http/HttpServerError.ts +2 -2
- package/src/unstable/http/HttpServerRequest.ts +4 -4
- package/src/unstable/http/HttpServerResponse.ts +30 -0
- package/src/unstable/http/HttpStaticServer.ts +35 -7
- package/src/unstable/http/Multipart.ts +6 -6
- package/src/unstable/http/Url.ts +33 -63
- package/src/unstable/http/UrlParams.ts +10 -18
- package/src/unstable/http/internal/compression.ts +196 -0
- package/src/unstable/httpapi/HttpApiBuilder.ts +10 -9
- package/src/unstable/httpapi/HttpApiClient.ts +14 -14
- package/src/unstable/httpapi/HttpApiEndpoint.ts +42 -42
- package/src/unstable/httpapi/HttpApiError.ts +13 -13
- package/src/unstable/httpapi/HttpApiGroup.ts +15 -15
- package/src/unstable/httpapi/HttpApiMiddleware.ts +71 -24
- package/src/unstable/httpapi/HttpApiScalar.ts +0 -12
- package/src/unstable/httpapi/HttpApiSchema.ts +6 -6
- package/src/unstable/httpapi/OpenApi.ts +13 -13
- package/src/unstable/observability/OtlpExporter.ts +31 -19
- package/src/unstable/observability/OtlpMetrics.ts +4 -1
- package/src/unstable/observability/OtlpResource.ts +26 -17
- package/src/unstable/observability/PrometheusMetrics.ts +13 -4
- package/src/unstable/observability/internal/otlpEnv.ts +1 -1
- package/src/unstable/observability/internal/protobuf.ts +3 -0
- package/src/unstable/persistence/KeyValueStore.ts +72 -49
- package/src/unstable/persistence/Persistable.ts +8 -8
- package/src/unstable/persistence/PersistedQueue.ts +6 -6
- package/src/unstable/persistence/Persistence.ts +126 -19
- package/src/unstable/persistence/RateLimiter.ts +26 -15
- package/src/unstable/persistence/Redis.ts +2 -2
- package/src/unstable/process/ChildProcess.ts +64 -21
- package/src/unstable/process/ChildProcessSpawner.ts +21 -10
- package/src/unstable/reactivity/AsyncResult.ts +12 -13
- package/src/unstable/reactivity/Atom.ts +28 -25
- package/src/unstable/reactivity/AtomHttpApi.ts +5 -4
- package/src/unstable/reactivity/AtomRegistry.ts +24 -3
- package/src/unstable/reactivity/AtomRpc.ts +5 -4
- package/src/unstable/reactivity/Hydration.ts +1 -1
- package/src/unstable/rpc/Rpc.ts +35 -33
- package/src/unstable/rpc/RpcClient.ts +16 -15
- package/src/unstable/rpc/RpcGroup.ts +8 -8
- package/src/unstable/rpc/RpcMessage.ts +31 -30
- package/src/unstable/rpc/RpcMiddleware.ts +10 -10
- package/src/unstable/rpc/RpcSchema.ts +4 -4
- package/src/unstable/rpc/RpcSerialization.ts +167 -68
- package/src/unstable/rpc/RpcServer.ts +18 -15
- package/src/unstable/rpc/RpcWorker.ts +5 -5
- package/src/unstable/schema/Model.ts +52 -50
- package/src/unstable/schema/VariantSchema.ts +5 -5
- package/src/unstable/socket/Socket.ts +17 -4
- package/src/unstable/sql/SqlClient.ts +5 -6
- package/src/unstable/sql/SqlModel.ts +2 -2
- package/src/unstable/sql/SqlResolver.ts +5 -5
- package/src/unstable/sql/Statement.ts +24 -23
- package/src/unstable/workers/Transferable.ts +1 -1
- package/src/unstable/workers/Worker.ts +2 -2
- package/src/unstable/workers/WorkerError.ts +7 -7
- package/src/unstable/workers/WorkerRunner.ts +1 -1
- package/src/unstable/workflow/Activity.ts +2 -2
- package/src/unstable/workflow/DurableClock.ts +1 -1
- package/src/unstable/workflow/DurableDeferred.ts +10 -10
- package/src/unstable/workflow/DurableQueue.ts +22 -20
- package/src/unstable/workflow/Workflow.ts +23 -23
- package/src/unstable/workflow/WorkflowEngine.ts +1 -1
- package/src/unstable/workflow/WorkflowProxy.ts +4 -2
- package/dist/internal/version.d.ts +0 -3
- package/dist/internal/version.d.ts.map +0 -1
- package/dist/internal/version.js +0 -2
- package/dist/internal/version.js.map +0 -1
- package/src/internal/version.ts +0 -2
package/src/unstable/ai/Tool.ts
CHANGED
|
@@ -171,7 +171,7 @@ export type NeedsApproval<Params extends Schema.Constraint> =
|
|
|
171
171
|
*
|
|
172
172
|
* **Example** (Defining a weather lookup tool)
|
|
173
173
|
*
|
|
174
|
-
* ```ts
|
|
174
|
+
* ```ts import.meta.vitest
|
|
175
175
|
* import { Schema } from "effect"
|
|
176
176
|
* import { Tool } from "effect/unstable/ai"
|
|
177
177
|
*
|
|
@@ -188,6 +188,7 @@ export type NeedsApproval<Params extends Schema.Constraint> =
|
|
|
188
188
|
* humidity: Schema.Number
|
|
189
189
|
* })
|
|
190
190
|
* })
|
|
191
|
+
* const result = [GetWeather.name, GetWeather.failureMode] // => ["GetWeather", "error"]
|
|
191
192
|
* ```
|
|
192
193
|
*
|
|
193
194
|
* @category models
|
|
@@ -365,7 +366,7 @@ export interface Tool<
|
|
|
365
366
|
*
|
|
366
367
|
* **Example** (Defining a provider-defined web search tool)
|
|
367
368
|
*
|
|
368
|
-
* ```ts
|
|
369
|
+
* ```ts import.meta.vitest
|
|
369
370
|
* import { Schema } from "effect"
|
|
370
371
|
* import { Tool } from "effect/unstable/ai"
|
|
371
372
|
*
|
|
@@ -384,7 +385,8 @@ export interface Tool<
|
|
|
384
385
|
* snippet: Schema.String
|
|
385
386
|
* }))
|
|
386
387
|
* })
|
|
387
|
-
* })
|
|
388
|
+
* })({ query: "Effect" })
|
|
389
|
+
* const result = [WebSearch.name, WebSearch.providerName] // => ["OpenAiWebSearch", "web_search"]
|
|
388
390
|
* ```
|
|
389
391
|
*
|
|
390
392
|
* @category models
|
|
@@ -457,7 +459,7 @@ export interface ProviderDefined<
|
|
|
457
459
|
*
|
|
458
460
|
* **Example** (Defining dynamic tools)
|
|
459
461
|
*
|
|
460
|
-
* ```ts
|
|
462
|
+
* ```ts import.meta.vitest
|
|
461
463
|
* import { Schema } from "effect"
|
|
462
464
|
* import { Tool } from "effect/unstable/ai"
|
|
463
465
|
*
|
|
@@ -480,6 +482,8 @@ export interface ProviderDefined<
|
|
|
480
482
|
* required: ["query"]
|
|
481
483
|
* }
|
|
482
484
|
* })
|
|
485
|
+
*
|
|
486
|
+
* const result = [Calculator.name, McpTool.name] // => ["Calculator", "McpTool"]
|
|
483
487
|
* ```
|
|
484
488
|
*
|
|
485
489
|
* @category models
|
|
@@ -524,7 +528,7 @@ export interface Dynamic<
|
|
|
524
528
|
*
|
|
525
529
|
* **Example** (Checking for user-defined tools)
|
|
526
530
|
*
|
|
527
|
-
* ```ts
|
|
531
|
+
* ```ts import.meta.vitest
|
|
528
532
|
* import { Schema } from "effect"
|
|
529
533
|
* import { Tool } from "effect/unstable/ai"
|
|
530
534
|
*
|
|
@@ -554,8 +558,7 @@ export interface Dynamic<
|
|
|
554
558
|
* })
|
|
555
559
|
* })
|
|
556
560
|
*
|
|
557
|
-
*
|
|
558
|
-
* console.log(Tool.isUserDefined(ProviderDefinedTool)) // false
|
|
561
|
+
* const result = [Tool.isUserDefined(UserDefinedTool), Tool.isUserDefined(ProviderDefinedTool)] // => [true, false]
|
|
559
562
|
* ```
|
|
560
563
|
*
|
|
561
564
|
* @category guards
|
|
@@ -569,7 +572,7 @@ export const isUserDefined = (u: unknown): u is Tool<string, any, any> =>
|
|
|
569
572
|
*
|
|
570
573
|
* **Example** (Checking for provider-defined tools)
|
|
571
574
|
*
|
|
572
|
-
* ```ts
|
|
575
|
+
* ```ts import.meta.vitest
|
|
573
576
|
* import { Schema } from "effect"
|
|
574
577
|
* import { Tool } from "effect/unstable/ai"
|
|
575
578
|
*
|
|
@@ -599,8 +602,7 @@ export const isUserDefined = (u: unknown): u is Tool<string, any, any> =>
|
|
|
599
602
|
* })
|
|
600
603
|
* })
|
|
601
604
|
*
|
|
602
|
-
*
|
|
603
|
-
* console.log(Tool.isProviderDefined(ProviderDefinedTool)) // true
|
|
605
|
+
* const result = [Tool.isProviderDefined(UserDefinedTool), Tool.isProviderDefined(ProviderDefinedTool)] // => [false, false]
|
|
604
606
|
* ```
|
|
605
607
|
*
|
|
606
608
|
* @category guards
|
|
@@ -615,7 +617,7 @@ export const isProviderDefined = (
|
|
|
615
617
|
*
|
|
616
618
|
* **Example** (Checking for dynamic tools)
|
|
617
619
|
*
|
|
618
|
-
* ```ts
|
|
620
|
+
* ```ts import.meta.vitest
|
|
619
621
|
* import { Schema } from "effect"
|
|
620
622
|
* import { Tool } from "effect/unstable/ai"
|
|
621
623
|
*
|
|
@@ -628,8 +630,7 @@ export const isProviderDefined = (
|
|
|
628
630
|
* success: Schema.Number
|
|
629
631
|
* })
|
|
630
632
|
*
|
|
631
|
-
*
|
|
632
|
-
* console.log(Tool.isDynamic(UserDefinedTool)) // false
|
|
633
|
+
* const result = [Tool.isDynamic(DynamicTool), Tool.isDynamic(UserDefinedTool)] // => [true, false]
|
|
633
634
|
* ```
|
|
634
635
|
*
|
|
635
636
|
* @category guards
|
|
@@ -1185,7 +1186,7 @@ const dynamicProto = <
|
|
|
1185
1186
|
*
|
|
1186
1187
|
* **Example** (Creating a tool without parameters)
|
|
1187
1188
|
*
|
|
1188
|
-
* ```ts
|
|
1189
|
+
* ```ts import.meta.vitest
|
|
1189
1190
|
* import { Schema } from "effect"
|
|
1190
1191
|
* import { Tool } from "effect/unstable/ai"
|
|
1191
1192
|
*
|
|
@@ -1194,6 +1195,7 @@ const dynamicProto = <
|
|
|
1194
1195
|
* description: "Returns the current timestamp",
|
|
1195
1196
|
* success: Schema.Number
|
|
1196
1197
|
* })
|
|
1198
|
+
* GetCurrentTime.name // => "GetCurrentTime"
|
|
1197
1199
|
* ```
|
|
1198
1200
|
*
|
|
1199
1201
|
* @category constructors
|
|
@@ -1291,7 +1293,7 @@ export const make = <
|
|
|
1291
1293
|
*
|
|
1292
1294
|
* **Example** (Creating a dynamic tool)
|
|
1293
1295
|
*
|
|
1294
|
-
* ```ts
|
|
1296
|
+
* ```ts import.meta.vitest
|
|
1295
1297
|
* import { Schema } from "effect"
|
|
1296
1298
|
* import { Tool } from "effect/unstable/ai"
|
|
1297
1299
|
*
|
|
@@ -1314,6 +1316,8 @@ export const make = <
|
|
|
1314
1316
|
* required: ["query"]
|
|
1315
1317
|
* }
|
|
1316
1318
|
* })
|
|
1319
|
+
*
|
|
1320
|
+
* const result = [Calculator.name, McpTool.name] // => ["Calculator", "McpTool"]
|
|
1317
1321
|
* ```
|
|
1318
1322
|
*
|
|
1319
1323
|
* @category constructors
|
|
@@ -1336,7 +1340,7 @@ export const dynamic: {
|
|
|
1336
1340
|
*
|
|
1337
1341
|
* **Example** (Creating a dynamic tool)
|
|
1338
1342
|
*
|
|
1339
|
-
* ```ts
|
|
1343
|
+
* ```ts import.meta.vitest
|
|
1340
1344
|
* import { Schema } from "effect"
|
|
1341
1345
|
* import { Tool } from "effect/unstable/ai"
|
|
1342
1346
|
*
|
|
@@ -1359,6 +1363,8 @@ export const dynamic: {
|
|
|
1359
1363
|
* required: ["query"]
|
|
1360
1364
|
* }
|
|
1361
1365
|
* })
|
|
1366
|
+
*
|
|
1367
|
+
* const result = [Calculator.name, McpTool.name] // => ["Calculator", "McpTool"]
|
|
1362
1368
|
* ```
|
|
1363
1369
|
*
|
|
1364
1370
|
* @category constructors
|
|
@@ -1430,7 +1436,7 @@ export const dynamic: {
|
|
|
1430
1436
|
*
|
|
1431
1437
|
* **Example** (Creating a provider-defined tool)
|
|
1432
1438
|
*
|
|
1433
|
-
* ```ts
|
|
1439
|
+
* ```ts import.meta.vitest
|
|
1434
1440
|
* import { Schema } from "effect"
|
|
1435
1441
|
* import { Tool } from "effect/unstable/ai"
|
|
1436
1442
|
*
|
|
@@ -1449,7 +1455,8 @@ export const dynamic: {
|
|
|
1449
1455
|
* content: Schema.String
|
|
1450
1456
|
* }))
|
|
1451
1457
|
* })
|
|
1452
|
-
* })
|
|
1458
|
+
* })({ query: "Effect" })
|
|
1459
|
+
* const result = [WebSearch.name, WebSearch.providerName] // => ["OpenAiWebSearch", "web_search"]
|
|
1453
1460
|
* ```
|
|
1454
1461
|
*
|
|
1455
1462
|
* @category constructors
|
|
@@ -1627,7 +1634,7 @@ export class NameMapper<Tools extends ReadonlyArray<Any>> {
|
|
|
1627
1634
|
*
|
|
1628
1635
|
* **Example** (Reading a tool description)
|
|
1629
1636
|
*
|
|
1630
|
-
* ```ts
|
|
1637
|
+
* ```ts import.meta.vitest
|
|
1631
1638
|
* import { Tool } from "effect/unstable/ai"
|
|
1632
1639
|
*
|
|
1633
1640
|
* const myTool = Tool.make("example", {
|
|
@@ -1635,7 +1642,7 @@ export class NameMapper<Tools extends ReadonlyArray<Any>> {
|
|
|
1635
1642
|
* })
|
|
1636
1643
|
*
|
|
1637
1644
|
* const description = Tool.getDescription(myTool)
|
|
1638
|
-
*
|
|
1645
|
+
* description // => "This is an example tool"
|
|
1639
1646
|
* ```
|
|
1640
1647
|
*
|
|
1641
1648
|
* @category getters
|
|
@@ -1666,7 +1673,7 @@ export const getDescription = <Tool extends Any>(tool: Tool): string | undefined
|
|
|
1666
1673
|
*
|
|
1667
1674
|
* **Example** (Generating a tool JSON schema)
|
|
1668
1675
|
*
|
|
1669
|
-
* ```ts
|
|
1676
|
+
* ```ts import.meta.vitest
|
|
1670
1677
|
* import { Schema } from "effect"
|
|
1671
1678
|
* import { Tool } from "effect/unstable/ai"
|
|
1672
1679
|
*
|
|
@@ -1678,15 +1685,10 @@ export const getDescription = <Tool extends Any>(tool: Tool): string | undefined
|
|
|
1678
1685
|
* })
|
|
1679
1686
|
*
|
|
1680
1687
|
* const jsonSchema = Tool.getJsonSchema(weatherTool)
|
|
1681
|
-
*
|
|
1682
|
-
*
|
|
1683
|
-
* //
|
|
1684
|
-
*
|
|
1685
|
-
* // location: { type: "string" },
|
|
1686
|
-
* // units: { type: "string", enum: ["celsius", "fahrenheit"] }
|
|
1687
|
-
* // },
|
|
1688
|
-
* // required: ["location", "units"]
|
|
1689
|
-
* // }
|
|
1688
|
+
* jsonSchema.type // => "object"
|
|
1689
|
+
* if (typeof jsonSchema.properties === "object" && jsonSchema.properties !== null) {
|
|
1690
|
+
* Object.keys(jsonSchema.properties) // => ["location", "units"]
|
|
1691
|
+
* }
|
|
1690
1692
|
* ```
|
|
1691
1693
|
*
|
|
1692
1694
|
* @category getters
|
|
@@ -1744,14 +1746,16 @@ const getJsonSchemaFromSchemaWith = <S extends Schema.Constraint>(
|
|
|
1744
1746
|
*
|
|
1745
1747
|
* **Example** (Annotating a tool title)
|
|
1746
1748
|
*
|
|
1747
|
-
* ```ts
|
|
1749
|
+
* ```ts import.meta.vitest
|
|
1750
|
+
* import { Context } from "effect"
|
|
1748
1751
|
* import { Tool } from "effect/unstable/ai"
|
|
1749
1752
|
*
|
|
1750
1753
|
* const myTool = Tool.make("calculate_tip")
|
|
1751
1754
|
* .annotate(Tool.Title, "Tip Calculator")
|
|
1755
|
+
* Context.getUnsafe(myTool.annotations, Tool.Title) // => "Tip Calculator"
|
|
1752
1756
|
* ```
|
|
1753
1757
|
*
|
|
1754
|
-
* @category
|
|
1758
|
+
* @category services
|
|
1755
1759
|
* @since 4.0.0
|
|
1756
1760
|
*/
|
|
1757
1761
|
export class Title extends Context.Service<Title, string>()("effect/ai/Tool/Title") {}
|
|
@@ -1761,14 +1765,16 @@ export class Title extends Context.Service<Title, string>()("effect/ai/Tool/Titl
|
|
|
1761
1765
|
*
|
|
1762
1766
|
* **Example** (Annotating MCP metadata)
|
|
1763
1767
|
*
|
|
1764
|
-
* ```ts
|
|
1768
|
+
* ```ts import.meta.vitest
|
|
1769
|
+
* import { Context } from "effect"
|
|
1765
1770
|
* import { Tool } from "effect/unstable/ai"
|
|
1766
1771
|
*
|
|
1767
1772
|
* const myCalculatorUi = Tool.make("calculator_ui", {})
|
|
1768
1773
|
* .annotate(Tool.Meta, { ui: { resourceUri: "ui://example/calculator-ui" } })
|
|
1774
|
+
* "ui" in Context.getUnsafe(myCalculatorUi.annotations, Tool.Meta) // => true
|
|
1769
1775
|
* ```
|
|
1770
1776
|
*
|
|
1771
|
-
* @category
|
|
1777
|
+
* @category services
|
|
1772
1778
|
* @since 4.0.0
|
|
1773
1779
|
*/
|
|
1774
1780
|
export class Meta extends Context.Service<Meta, Record<string, unknown>>()("effect/ai/Tool/Meta") {}
|
|
@@ -1783,14 +1789,16 @@ export class Meta extends Context.Service<Meta, Record<string, unknown>>()("effe
|
|
|
1783
1789
|
*
|
|
1784
1790
|
* **Example** (Marking a tool as read-only)
|
|
1785
1791
|
*
|
|
1786
|
-
* ```ts
|
|
1792
|
+
* ```ts import.meta.vitest
|
|
1793
|
+
* import { Context } from "effect"
|
|
1787
1794
|
* import { Tool } from "effect/unstable/ai"
|
|
1788
1795
|
*
|
|
1789
1796
|
* const readOnlyTool = Tool.make("get_user_info")
|
|
1790
1797
|
* .annotate(Tool.Readonly, true)
|
|
1798
|
+
* Context.get(readOnlyTool.annotations, Tool.Readonly) // => true
|
|
1791
1799
|
* ```
|
|
1792
1800
|
*
|
|
1793
|
-
* @category
|
|
1801
|
+
* @category services
|
|
1794
1802
|
* @since 4.0.0
|
|
1795
1803
|
*/
|
|
1796
1804
|
export const Readonly = Context.Reference<boolean>("effect/ai/Tool/Readonly", {
|
|
@@ -1807,14 +1815,16 @@ export const Readonly = Context.Reference<boolean>("effect/ai/Tool/Readonly", {
|
|
|
1807
1815
|
*
|
|
1808
1816
|
* **Example** (Marking a tool as non-destructive)
|
|
1809
1817
|
*
|
|
1810
|
-
* ```ts
|
|
1818
|
+
* ```ts import.meta.vitest
|
|
1819
|
+
* import { Context } from "effect"
|
|
1811
1820
|
* import { Tool } from "effect/unstable/ai"
|
|
1812
1821
|
*
|
|
1813
1822
|
* const safeTool = Tool.make("search_database")
|
|
1814
1823
|
* .annotate(Tool.Destructive, false)
|
|
1824
|
+
* Context.get(safeTool.annotations, Tool.Destructive) // => false
|
|
1815
1825
|
* ```
|
|
1816
1826
|
*
|
|
1817
|
-
* @category
|
|
1827
|
+
* @category services
|
|
1818
1828
|
* @since 4.0.0
|
|
1819
1829
|
*/
|
|
1820
1830
|
export const Destructive = Context.Reference<boolean>("effect/ai/Tool/Destructive", {
|
|
@@ -1832,14 +1842,16 @@ export const Destructive = Context.Reference<boolean>("effect/ai/Tool/Destructiv
|
|
|
1832
1842
|
*
|
|
1833
1843
|
* **Example** (Marking a tool as idempotent)
|
|
1834
1844
|
*
|
|
1835
|
-
* ```ts
|
|
1845
|
+
* ```ts import.meta.vitest
|
|
1846
|
+
* import { Context } from "effect"
|
|
1836
1847
|
* import { Tool } from "effect/unstable/ai"
|
|
1837
1848
|
*
|
|
1838
1849
|
* const idempotentTool = Tool.make("get_current_time")
|
|
1839
1850
|
* .annotate(Tool.Idempotent, true)
|
|
1851
|
+
* Context.get(idempotentTool.annotations, Tool.Idempotent) // => true
|
|
1840
1852
|
* ```
|
|
1841
1853
|
*
|
|
1842
|
-
* @category
|
|
1854
|
+
* @category services
|
|
1843
1855
|
* @since 4.0.0
|
|
1844
1856
|
*/
|
|
1845
1857
|
export const Idempotent = Context.Reference<boolean>("effect/ai/Tool/Idempotent", {
|
|
@@ -1857,14 +1869,16 @@ export const Idempotent = Context.Reference<boolean>("effect/ai/Tool/Idempotent"
|
|
|
1857
1869
|
*
|
|
1858
1870
|
* **Example** (Disabling open-world access)
|
|
1859
1871
|
*
|
|
1860
|
-
* ```ts
|
|
1872
|
+
* ```ts import.meta.vitest
|
|
1873
|
+
* import { Context } from "effect"
|
|
1861
1874
|
* import { Tool } from "effect/unstable/ai"
|
|
1862
1875
|
*
|
|
1863
1876
|
* const restrictedTool = Tool.make("internal_operation")
|
|
1864
1877
|
* .annotate(Tool.OpenWorld, false)
|
|
1878
|
+
* Context.get(restrictedTool.annotations, Tool.OpenWorld) // => false
|
|
1865
1879
|
* ```
|
|
1866
1880
|
*
|
|
1867
|
-
* @category
|
|
1881
|
+
* @category services
|
|
1868
1882
|
* @since 4.0.0
|
|
1869
1883
|
*/
|
|
1870
1884
|
export const OpenWorld = Context.Reference<boolean>("effect/ai/Tool/OpenWorld", {
|
|
@@ -1886,14 +1900,15 @@ export const OpenWorld = Context.Reference<boolean>("effect/ai/Tool/OpenWorld",
|
|
|
1886
1900
|
*
|
|
1887
1901
|
* **Example** (Disabling strict JSON schema mode)
|
|
1888
1902
|
*
|
|
1889
|
-
* ```ts
|
|
1903
|
+
* ```ts import.meta.vitest
|
|
1890
1904
|
* import { Tool } from "effect/unstable/ai"
|
|
1891
1905
|
*
|
|
1892
1906
|
* const flexibleTool = Tool.make("search")
|
|
1893
1907
|
* .annotate(Tool.Strict, false)
|
|
1908
|
+
* Tool.getStrictMode(flexibleTool) // => false
|
|
1894
1909
|
* ```
|
|
1895
1910
|
*
|
|
1896
|
-
* @category
|
|
1911
|
+
* @category services
|
|
1897
1912
|
* @since 4.0.0
|
|
1898
1913
|
*/
|
|
1899
1914
|
export const Strict = Context.Reference<boolean | undefined>("effect/ai/Tool/Strict", {
|
|
@@ -33,8 +33,8 @@ const TypeId = "~effect/ai/Toolkit" as const
|
|
|
33
33
|
*
|
|
34
34
|
* **Example** (Defining AI toolkits)
|
|
35
35
|
*
|
|
36
|
-
* ```ts
|
|
37
|
-
* import { Schema } from "effect"
|
|
36
|
+
* ```ts import.meta.vitest
|
|
37
|
+
* import { Effect, Schema } from "effect"
|
|
38
38
|
* import { Tool, Toolkit } from "effect/unstable/ai"
|
|
39
39
|
*
|
|
40
40
|
* const SearchDocs = Tool.make("SearchDocs", {
|
|
@@ -51,8 +51,12 @@ const TypeId = "~effect/ai/Toolkit" as const
|
|
|
51
51
|
*
|
|
52
52
|
* const AiToolkit = Toolkit.make(SearchDocs, SummarizeText)
|
|
53
53
|
*
|
|
54
|
-
*
|
|
55
|
-
*
|
|
54
|
+
* const ready = AiToolkit.pipe(Effect.provide(AiToolkit.toLayer({
|
|
55
|
+
* SearchDocs: ({ query }) => Effect.succeed([query]),
|
|
56
|
+
* SummarizeText: ({ text }) => Effect.succeed(text)
|
|
57
|
+
* })))
|
|
58
|
+
*
|
|
59
|
+
* Object.keys((await Effect.runPromise(ready)).tools) // => ["SearchDocs", "SummarizeText"]
|
|
56
60
|
* ```
|
|
57
61
|
*
|
|
58
62
|
* @category models
|
|
@@ -459,8 +463,8 @@ export const empty: Toolkit<{}> = makeProto({})
|
|
|
459
463
|
*
|
|
460
464
|
* **Example** (Creating a toolkit)
|
|
461
465
|
*
|
|
462
|
-
* ```ts
|
|
463
|
-
* import { Schema } from "effect"
|
|
466
|
+
* ```ts import.meta.vitest
|
|
467
|
+
* import { Effect, Schema } from "effect"
|
|
464
468
|
* import { Tool, Toolkit } from "effect/unstable/ai"
|
|
465
469
|
*
|
|
466
470
|
* const GetCurrentTime = Tool.make("GetCurrentTime", {
|
|
@@ -478,6 +482,12 @@ export const empty: Toolkit<{}> = makeProto({})
|
|
|
478
482
|
* })
|
|
479
483
|
*
|
|
480
484
|
* const toolkit = Toolkit.make(GetCurrentTime, GetWeather)
|
|
485
|
+
* const ready = toolkit.pipe(Effect.provide(toolkit.toLayer({
|
|
486
|
+
* GetCurrentTime: () => Effect.succeed(0),
|
|
487
|
+
* get_weather: () => Effect.succeed({ temperature: 20, condition: "clear" })
|
|
488
|
+
* })))
|
|
489
|
+
*
|
|
490
|
+
* Object.keys((await Effect.runPromise(ready)).tools) // => ["GetCurrentTime", "get_weather"]
|
|
481
491
|
* ```
|
|
482
492
|
*
|
|
483
493
|
* @category constructors
|
|
@@ -530,8 +540,8 @@ export type MergedTools<Toolkits extends ReadonlyArray<Any>> = SimplifyRecord<
|
|
|
530
540
|
*
|
|
531
541
|
* **Example** (Merging toolkits)
|
|
532
542
|
*
|
|
533
|
-
* ```ts
|
|
534
|
-
* import { Schema } from "effect"
|
|
543
|
+
* ```ts import.meta.vitest
|
|
544
|
+
* import { Effect, Schema } from "effect"
|
|
535
545
|
* import { Tool, Toolkit } from "effect/unstable/ai"
|
|
536
546
|
*
|
|
537
547
|
* const mathToolkit = Toolkit.make(
|
|
@@ -545,6 +555,14 @@ export type MergedTools<Toolkits extends ReadonlyArray<Any>> = SimplifyRecord<
|
|
|
545
555
|
* )
|
|
546
556
|
*
|
|
547
557
|
* const combined = Toolkit.merge(mathToolkit, utilityToolkit)
|
|
558
|
+
* const ready = combined.pipe(Effect.provide(combined.toLayer({
|
|
559
|
+
* add: () => Effect.succeed(1),
|
|
560
|
+
* subtract: () => Effect.succeed(0),
|
|
561
|
+
* get_time: () => Effect.succeed(0),
|
|
562
|
+
* get_weather: () => Effect.succeed("clear")
|
|
563
|
+
* })))
|
|
564
|
+
*
|
|
565
|
+
* Object.keys((await Effect.runPromise(ready)).tools) // => ["add", "subtract", "get_time", "get_weather"]
|
|
548
566
|
* ```
|
|
549
567
|
*
|
|
550
568
|
* @category constructors
|
package/src/unstable/ai/index.ts
CHANGED
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import type * as Effect from "../../../Effect.ts"
|
|
2
|
+
import * as Schema from "../../../Schema.ts"
|
|
3
|
+
import type * as Rpc from "../../rpc/Rpc.ts"
|
|
4
|
+
import type * as RpcGroup from "../../rpc/RpcGroup.ts"
|
|
5
|
+
|
|
6
|
+
export interface PayloadCodecs {
|
|
7
|
+
readonly decode: (input: unknown) => Effect.Effect<unknown, Schema.SchemaError>
|
|
8
|
+
readonly encode: (input: unknown) => Effect.Effect<unknown, Schema.SchemaError>
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
/** @internal */
|
|
12
|
+
export interface AnyProtocolAdapter {
|
|
13
|
+
readonly protocolVersion: string
|
|
14
|
+
readonly transport: {
|
|
15
|
+
readonly acceptsJsonRpcBatches: boolean
|
|
16
|
+
readonly requiresVersionHeader: boolean
|
|
17
|
+
}
|
|
18
|
+
readonly clientRpcs: RpcGroup.Any
|
|
19
|
+
readonly clientNotificationRpcs: RpcGroup.Any
|
|
20
|
+
readonly serverRequestRpcs: RpcGroup.Any
|
|
21
|
+
readonly serverNotificationRpcs: RpcGroup.Any
|
|
22
|
+
readonly payloadCodecs: (rpc: Rpc.AnyWithProps) => PayloadCodecs
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export interface ProtocolAdapter<
|
|
26
|
+
out Version extends string = string,
|
|
27
|
+
ClientRpcs extends Rpc.Any = Rpc.Any,
|
|
28
|
+
ClientNotificationRpcs extends ClientRpcs = ClientRpcs,
|
|
29
|
+
ServerRequestRpcs extends Rpc.Any = Rpc.Any,
|
|
30
|
+
ServerNotificationRpcs extends Rpc.Any = Rpc.Any
|
|
31
|
+
> {
|
|
32
|
+
readonly protocolVersion: Version
|
|
33
|
+
readonly transport: {
|
|
34
|
+
readonly acceptsJsonRpcBatches: boolean
|
|
35
|
+
readonly requiresVersionHeader: boolean
|
|
36
|
+
}
|
|
37
|
+
readonly clientRpcs: RpcGroup.RpcGroup<ClientRpcs>
|
|
38
|
+
readonly clientNotificationRpcs: RpcGroup.RpcGroup<ClientNotificationRpcs>
|
|
39
|
+
readonly serverRequestRpcs: RpcGroup.RpcGroup<ServerRequestRpcs>
|
|
40
|
+
readonly serverNotificationRpcs: RpcGroup.RpcGroup<ServerNotificationRpcs>
|
|
41
|
+
readonly payloadCodecs: (rpc: Rpc.AnyWithProps) => PayloadCodecs
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/** @internal */
|
|
45
|
+
export const make = <
|
|
46
|
+
const Version extends string,
|
|
47
|
+
ClientRpcs extends Rpc.Any,
|
|
48
|
+
ClientNotificationRpcs extends ClientRpcs,
|
|
49
|
+
ServerRequestRpcs extends Rpc.Any,
|
|
50
|
+
ServerNotificationRpcs extends Rpc.Any
|
|
51
|
+
>(options: {
|
|
52
|
+
readonly protocolVersion: Version
|
|
53
|
+
readonly transport: {
|
|
54
|
+
readonly acceptsJsonRpcBatches: boolean
|
|
55
|
+
readonly requiresVersionHeader: boolean
|
|
56
|
+
}
|
|
57
|
+
readonly clientRpcs: RpcGroup.RpcGroup<ClientRpcs>
|
|
58
|
+
readonly clientNotificationRpcs: RpcGroup.RpcGroup<ClientNotificationRpcs>
|
|
59
|
+
readonly serverRequestRpcs: RpcGroup.RpcGroup<ServerRequestRpcs>
|
|
60
|
+
readonly serverNotificationRpcs: RpcGroup.RpcGroup<ServerNotificationRpcs>
|
|
61
|
+
}): ProtocolAdapter<
|
|
62
|
+
Version,
|
|
63
|
+
ClientRpcs,
|
|
64
|
+
ClientNotificationRpcs,
|
|
65
|
+
ServerRequestRpcs,
|
|
66
|
+
ServerNotificationRpcs
|
|
67
|
+
> => {
|
|
68
|
+
const payloadCodecsCache = new WeakMap<Rpc.AnyWithProps, PayloadCodecs>()
|
|
69
|
+
const payloadCodecs = (rpc: Rpc.AnyWithProps): PayloadCodecs => {
|
|
70
|
+
let codecs = payloadCodecsCache.get(rpc)
|
|
71
|
+
if (codecs === undefined) {
|
|
72
|
+
const schema = Schema.toCodecJson(rpc.payloadSchema)
|
|
73
|
+
codecs = {
|
|
74
|
+
decode: Schema.decodeUnknownEffect(schema) as PayloadCodecs["decode"],
|
|
75
|
+
encode: Schema.encodeUnknownEffect(schema) as PayloadCodecs["encode"]
|
|
76
|
+
}
|
|
77
|
+
payloadCodecsCache.set(rpc, codecs)
|
|
78
|
+
}
|
|
79
|
+
return codecs
|
|
80
|
+
}
|
|
81
|
+
return {
|
|
82
|
+
...options,
|
|
83
|
+
payloadCodecs
|
|
84
|
+
}
|
|
85
|
+
}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import type { NonEmptyReadonlyArray } from "../../../Array.ts"
|
|
2
|
+
import * as Cause from "../../../Cause.ts"
|
|
3
|
+
import * as Effect from "../../../Effect.ts"
|
|
4
|
+
import type * as RpcGroup from "../../rpc/RpcGroup.ts"
|
|
5
|
+
import type * as RpcMessage from "../../rpc/RpcMessage.ts"
|
|
6
|
+
import type * as McpProtocol from "./mcpProtocol.ts"
|
|
7
|
+
|
|
8
|
+
type AnyRpcGroup = RpcGroup.RpcGroup<any>
|
|
9
|
+
|
|
10
|
+
const prefix = (protocol: McpProtocol.AnyProtocolAdapter): string =>
|
|
11
|
+
`@effect/mcp/${encodeURIComponent(protocol.protocolVersion)}/`
|
|
12
|
+
|
|
13
|
+
const asRpcGroup = (group: RpcGroup.Any): AnyRpcGroup => group as unknown as AnyRpcGroup
|
|
14
|
+
|
|
15
|
+
/** @internal */
|
|
16
|
+
export interface ProtocolRegistry<
|
|
17
|
+
Protocol extends McpProtocol.AnyProtocolAdapter = McpProtocol.AnyProtocolAdapter
|
|
18
|
+
> {
|
|
19
|
+
readonly protocols: NonEmptyReadonlyArray<Protocol>
|
|
20
|
+
readonly clientRpcs: AnyRpcGroup
|
|
21
|
+
readonly select: (offeredVersion: string) => Protocol
|
|
22
|
+
readonly routeClientRequest: (
|
|
23
|
+
protocol: Protocol,
|
|
24
|
+
request: RpcMessage.RequestEncoded
|
|
25
|
+
) => RpcMessage.RequestEncoded
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/** @internal */
|
|
29
|
+
export const make = Effect.fnUntraced(function*<
|
|
30
|
+
const Protocols extends NonEmptyReadonlyArray<McpProtocol.AnyProtocolAdapter>
|
|
31
|
+
>(
|
|
32
|
+
protocols: Protocols
|
|
33
|
+
) {
|
|
34
|
+
type Protocol = Protocols[number]
|
|
35
|
+
|
|
36
|
+
if (protocols.length === 0) {
|
|
37
|
+
return yield* new Cause.IllegalArgumentError(
|
|
38
|
+
"MCP protocol declaration must contain at least one MCP protocol"
|
|
39
|
+
)
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
const snapshot = Object.freeze(Array.from(protocols)) as NonEmptyReadonlyArray<Protocol>
|
|
43
|
+
const byVersion = new Map<string, Protocol>()
|
|
44
|
+
for (const protocol of snapshot) {
|
|
45
|
+
if (byVersion.has(protocol.protocolVersion)) {
|
|
46
|
+
return yield* new Cause.IllegalArgumentError(
|
|
47
|
+
`Duplicate MCP protocol version: ${protocol.protocolVersion}`
|
|
48
|
+
)
|
|
49
|
+
}
|
|
50
|
+
byVersion.set(protocol.protocolVersion, protocol)
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
let clientRpcs = asRpcGroup(snapshot[0].clientRpcs).prefix(prefix(snapshot[0]))
|
|
54
|
+
for (let i = 1; i < snapshot.length; i++) {
|
|
55
|
+
clientRpcs = clientRpcs.merge(asRpcGroup(snapshot[i].clientRpcs).prefix(prefix(snapshot[i])))
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
return {
|
|
59
|
+
protocols: snapshot,
|
|
60
|
+
clientRpcs,
|
|
61
|
+
select: (offeredVersion: string) => byVersion.get(offeredVersion) ?? snapshot[0],
|
|
62
|
+
routeClientRequest: (
|
|
63
|
+
protocol: Protocol,
|
|
64
|
+
request: RpcMessage.RequestEncoded
|
|
65
|
+
) => ({
|
|
66
|
+
...request,
|
|
67
|
+
tag: `${prefix(protocol)}${request.tag}`
|
|
68
|
+
})
|
|
69
|
+
} satisfies ProtocolRegistry<Protocol>
|
|
70
|
+
})
|
|
@@ -34,12 +34,9 @@ export function toCodec<T, E, RD, RE>(
|
|
|
34
34
|
}
|
|
35
35
|
|
|
36
36
|
function transform(root: SchemaAST.AST): SchemaAST.AST {
|
|
37
|
-
|
|
37
|
+
let cache: Map<SchemaAST.AST, SchemaAST.AST> | undefined
|
|
38
38
|
|
|
39
39
|
function recur(ast: SchemaAST.AST): SchemaAST.AST {
|
|
40
|
-
const cached = cache.get(ast)
|
|
41
|
-
if (cached !== undefined) return cached
|
|
42
|
-
|
|
43
40
|
switch (ast._tag) {
|
|
44
41
|
case "Union": {
|
|
45
42
|
const types = SchemaAST.mapOrSame(ast.types, recur)
|
|
@@ -60,13 +57,12 @@ function transform(root: SchemaAST.AST): SchemaAST.AST {
|
|
|
60
57
|
if (ast.elements.length > 0 || ast.rest.length > 1) {
|
|
61
58
|
return tupleToObject(ast, recur)
|
|
62
59
|
}
|
|
63
|
-
const elements = SchemaAST.mapOrSame(ast.elements, recur)
|
|
64
60
|
const rest = SchemaAST.mapOrSame(ast.rest, recur)
|
|
65
61
|
const checks = prepareChecks(ast.checks)
|
|
66
|
-
if (
|
|
62
|
+
if (rest === ast.rest && checks === ast.checks) return ast
|
|
67
63
|
return new SchemaAST.Arrays(
|
|
68
64
|
ast.isMutable,
|
|
69
|
-
elements,
|
|
65
|
+
ast.elements,
|
|
70
66
|
rest,
|
|
71
67
|
ast.annotations,
|
|
72
68
|
checks,
|
|
@@ -93,24 +89,16 @@ function transform(root: SchemaAST.AST): SchemaAST.AST {
|
|
|
93
89
|
? propertySignature
|
|
94
90
|
: new SchemaAST.PropertySignature(propertySignature.name, type)
|
|
95
91
|
})
|
|
96
|
-
const indexSignatures = SchemaAST.mapOrSame(ast.indexSignatures, (indexSignature) => {
|
|
97
|
-
const parameter = recur(indexSignature.parameter)
|
|
98
|
-
const type = recur(indexSignature.type)
|
|
99
|
-
return parameter === indexSignature.parameter && type === indexSignature.type
|
|
100
|
-
? indexSignature
|
|
101
|
-
: new SchemaAST.IndexSignature(parameter, type, indexSignature.merge)
|
|
102
|
-
})
|
|
103
92
|
const checks = prepareChecks(ast.checks)
|
|
104
93
|
if (
|
|
105
94
|
propertySignatures === ast.propertySignatures &&
|
|
106
|
-
indexSignatures === ast.indexSignatures &&
|
|
107
95
|
checks === ast.checks
|
|
108
96
|
) {
|
|
109
97
|
return ast
|
|
110
98
|
}
|
|
111
99
|
return new SchemaAST.Objects(
|
|
112
100
|
propertySignatures,
|
|
113
|
-
indexSignatures,
|
|
101
|
+
ast.indexSignatures,
|
|
114
102
|
ast.annotations,
|
|
115
103
|
checks,
|
|
116
104
|
ast.encoding,
|
|
@@ -119,6 +107,8 @@ function transform(root: SchemaAST.AST): SchemaAST.AST {
|
|
|
119
107
|
)
|
|
120
108
|
}
|
|
121
109
|
case "Suspend": {
|
|
110
|
+
const cached = cache?.get(ast)
|
|
111
|
+
if (cached !== undefined) return cached
|
|
122
112
|
const out = new SchemaAST.Suspend(
|
|
123
113
|
() => recur(ast.thunk()),
|
|
124
114
|
ast.annotations,
|
|
@@ -126,6 +116,7 @@ function transform(root: SchemaAST.AST): SchemaAST.AST {
|
|
|
126
116
|
ast.encoding,
|
|
127
117
|
ast.context
|
|
128
118
|
)
|
|
119
|
+
if (cache === undefined) cache = new Map()
|
|
129
120
|
cache.set(ast, out)
|
|
130
121
|
return out
|
|
131
122
|
}
|
|
@@ -170,13 +161,16 @@ function tupleToObject(ast: SchemaAST.Arrays, recur: (ast: SchemaAST.AST) => Sch
|
|
|
170
161
|
ast,
|
|
171
162
|
SchemaTransformation.transform({
|
|
172
163
|
decode: (object) => {
|
|
173
|
-
|
|
164
|
+
const tuple: Array<unknown> = []
|
|
174
165
|
for (let index = 0; index < ast.elements.length; index++) {
|
|
175
166
|
const key = String(index)
|
|
176
167
|
if (object[key] !== undefined) tuple.push(object[key])
|
|
177
168
|
}
|
|
178
169
|
if (REST_PROPERTY_NAME in object) {
|
|
179
|
-
|
|
170
|
+
const rest = object[REST_PROPERTY_NAME]
|
|
171
|
+
for (let index = 0; index < rest.length; index++) {
|
|
172
|
+
tuple.push(rest[index])
|
|
173
|
+
}
|
|
180
174
|
}
|
|
181
175
|
for (let index = 1; index < ast.rest.length; index++) {
|
|
182
176
|
tuple.push(object[`${TAIL_PROPERTY_PREFIX}${index - 1}__`])
|
|
@@ -235,6 +229,7 @@ function objectToEntries(
|
|
|
235
229
|
}
|
|
236
230
|
|
|
237
231
|
function unionOrSingle(types: ReadonlyArray<SchemaAST.AST>): SchemaAST.AST {
|
|
232
|
+
if (types.length === 1) return types[0]
|
|
238
233
|
const unique = Array.from(new Set(types))
|
|
239
234
|
return unique.length === 1 ? unique[0] : new SchemaAST.Union(unique, "anyOf")
|
|
240
235
|
}
|