effect 4.0.0-beta.102 → 4.0.0-beta.104
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 +167 -102
- 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 +730 -769
- 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 +357 -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 +117 -81
- 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 +153 -276
- 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 +22 -15
- 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 +144 -187
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +2993 -3281
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +1360 -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 +39 -23
- 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 +86 -55
- package/dist/ExecutionPlan.d.ts.map +1 -1
- package/dist/ExecutionPlan.js +8 -29
- 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 +86 -60
- package/dist/FiberSet.js.map +1 -1
- package/dist/FileSystem.d.ts +154 -265
- 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 +80 -148
- package/dist/Function.d.ts.map +1 -1
- package/dist/Function.js +45 -62
- 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 +239 -316
- 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 +202 -180
- 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 +292 -1638
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +164 -805
- 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 +676 -674
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +513 -544
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +30 -53
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +404 -301
- 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 +137 -107
- 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 +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 +118 -108
- 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 +2442 -2953
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +1105 -1383
- 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 +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 +2 -2
- 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 +98 -131
- 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 +89 -114
- package/dist/TxReentrantLock.d.ts.map +1 -1
- package/dist/TxReentrantLock.js +75 -53
- 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 +5 -1
- 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 +51 -3
- package/dist/internal/executionPlan.js.map +1 -1
- package/dist/internal/hashMap.js +12 -8
- 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 +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 +2 -0
- 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 +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 +24 -10
- 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 +61 -19
- 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 +30 -30
- package/dist/testing/TestSchema.d.ts.map +1 -1
- 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 +113 -136
- 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 +56 -52
- 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 +108 -66
- 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 +251 -185
- package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
- package/dist/unstable/ai/McpSchema.js +66 -58
- 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 +695 -242
- 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 +127 -41
- package/dist/unstable/ai/Prompt.d.ts.map +1 -1
- package/dist/unstable/ai/Prompt.js +59 -20
- 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 +70 -77
- package/dist/unstable/cli/CliError.d.ts.map +1 -1
- package/dist/unstable/cli/CliError.js +66 -70
- 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 +713 -115
- package/dist/unstable/cli/Command.d.ts.map +1 -1
- package/dist/unstable/cli/Command.js +245 -47
- 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 +299 -83
- package/dist/unstable/cli/Param.d.ts.map +1 -1
- package/dist/unstable/cli/Param.js +143 -57
- 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 +375 -160
- 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 +54 -31
- 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 +2 -2
- 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.d.ts +2 -2
- package/dist/unstable/cli/internal/command.d.ts.map +1 -1
- package/dist/unstable/cli/internal/command.js +10 -9
- package/dist/unstable/cli/internal/command.js.map +1 -1
- package/dist/unstable/cli/internal/completions/bash.js +69 -9
- package/dist/unstable/cli/internal/completions/bash.js.map +1 -1
- package/dist/unstable/cli/internal/completions/descriptor.js +24 -18
- package/dist/unstable/cli/internal/completions/descriptor.js.map +1 -1
- package/dist/unstable/cli/internal/completions/fish.js +5 -5
- 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.d.ts.map +1 -1
- package/dist/unstable/cli/internal/help.js +4 -2
- 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 +5 -5
- package/dist/unstable/cli/internal/parser.js.map +1 -1
- package/dist/unstable/cli/internal/wizard.js +2 -2
- 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 +7 -7
- 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 +6 -2
- 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.d.ts.map +1 -1
- package/dist/unstable/cluster/MessageStorage.js +13 -6
- package/dist/unstable/cluster/MessageStorage.js.map +1 -1
- package/dist/unstable/cluster/Reply.d.ts +8 -0
- package/dist/unstable/cluster/Reply.d.ts.map +1 -1
- package/dist/unstable/cluster/Reply.js +16 -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 +18 -16
- package/dist/unstable/cluster/RunnerServer.js.map +1 -1
- package/dist/unstable/cluster/RunnerStorage.d.ts +3 -4
- package/dist/unstable/cluster/RunnerStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerStorage.js +8 -7
- 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 +25 -6
- 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 +6 -6
- 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 +2 -2
- package/dist/unstable/cluster/internal/resourceMap.js.map +1 -1
- package/dist/unstable/cluster/internal/resourceRef.js +17 -0
- 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.d.ts.map +1 -1
- package/dist/unstable/devtools/DevToolsClient.js +7 -2
- 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/Ini.d.ts +20 -0
- package/dist/unstable/encoding/Ini.d.ts.map +1 -0
- package/dist/unstable/encoding/Ini.js +153 -0
- package/dist/unstable/encoding/Ini.js.map +1 -0
- package/dist/unstable/encoding/Msgpack.d.ts +2 -1
- package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
- package/dist/unstable/encoding/Msgpack.js +27 -15
- package/dist/unstable/encoding/Msgpack.js.map +1 -1
- package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
- package/dist/unstable/encoding/Ndjson.js +7 -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 +72 -31
- package/dist/unstable/encoding/Sse.js.map +1 -1
- package/dist/unstable/encoding/Toml.d.ts +19 -0
- package/dist/unstable/encoding/Toml.d.ts.map +1 -0
- package/dist/unstable/encoding/Toml.js +434 -0
- package/dist/unstable/encoding/Toml.js.map +1 -0
- package/dist/unstable/encoding/Yaml.d.ts +19 -0
- package/dist/unstable/encoding/Yaml.d.ts.map +1 -0
- package/dist/unstable/encoding/Yaml.js +461 -0
- package/dist/unstable/encoding/Yaml.js.map +1 -0
- package/dist/unstable/encoding/index.d.ts +12 -0
- package/dist/unstable/encoding/index.d.ts.map +1 -1
- package/dist/unstable/encoding/index.js +12 -0
- 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 +16 -16
- package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventJournal.js +26 -18
- 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 +2 -2
- 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 +15 -7
- 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.d.ts.map +1 -1
- package/dist/unstable/eventlog/SqlEventJournal.js +1 -4
- 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/FindMyWay/internal/queryString.d.ts +11 -0
- package/dist/unstable/http/FindMyWay/internal/queryString.d.ts.map +1 -0
- package/dist/unstable/http/FindMyWay/internal/queryString.js +259 -0
- package/dist/unstable/http/FindMyWay/internal/queryString.js.map +1 -0
- package/dist/unstable/http/FindMyWay/internal/router.d.ts +2 -0
- package/dist/unstable/http/FindMyWay/internal/router.d.ts.map +1 -0
- package/dist/unstable/http/FindMyWay/internal/router.js +665 -0
- package/dist/unstable/http/FindMyWay/internal/router.js.map +1 -0
- package/dist/unstable/http/FindMyWay.d.ts +33 -8
- package/dist/unstable/http/FindMyWay.d.ts.map +1 -1
- package/dist/unstable/http/FindMyWay.js +4 -7
- package/dist/unstable/http/FindMyWay.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 +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 -12
- package/dist/unstable/http/HttpClientRequest.js.map +1 -1
- package/dist/unstable/http/HttpClientResponse.d.ts +4 -4
- package/dist/unstable/http/HttpClientResponse.js +3 -18
- 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 +53 -3
- 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.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerRequest.js +11 -10
- 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 +17 -5
- 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 +7 -7
- package/dist/unstable/http/Multipart.d.ts.map +1 -1
- package/dist/unstable/http/Multipart.js +14 -7
- package/dist/unstable/http/Multipart.js.map +1 -1
- package/dist/unstable/http/MultipartParser/HeadersParser.d.ts +53 -0
- package/dist/unstable/http/MultipartParser/HeadersParser.d.ts.map +1 -0
- package/dist/unstable/http/MultipartParser/HeadersParser.js +14 -0
- package/dist/unstable/http/MultipartParser/HeadersParser.js.map +1 -0
- package/dist/unstable/http/MultipartParser/Search.d.ts +11 -0
- package/dist/unstable/http/MultipartParser/Search.d.ts.map +1 -0
- package/dist/unstable/http/MultipartParser/Search.js +14 -0
- package/dist/unstable/http/MultipartParser/Search.js.map +1 -0
- package/dist/unstable/http/MultipartParser/internal/contentType.d.ts +5 -0
- package/dist/unstable/http/MultipartParser/internal/contentType.d.ts.map +1 -0
- package/dist/unstable/http/MultipartParser/internal/contentType.js +82 -0
- package/dist/unstable/http/MultipartParser/internal/contentType.js.map +1 -0
- package/dist/unstable/http/MultipartParser/internal/headers.d.ts +3 -0
- package/dist/unstable/http/MultipartParser/internal/headers.d.ts.map +1 -0
- package/dist/unstable/http/MultipartParser/internal/headers.js +194 -0
- package/dist/unstable/http/MultipartParser/internal/headers.js.map +1 -0
- package/dist/unstable/http/MultipartParser/internal/multipart.d.ts +8 -0
- package/dist/unstable/http/MultipartParser/internal/multipart.d.ts.map +1 -0
- package/dist/unstable/http/MultipartParser/internal/multipart.js +226 -0
- package/dist/unstable/http/MultipartParser/internal/multipart.js.map +1 -0
- package/dist/unstable/http/MultipartParser/internal/search.d.ts +5 -0
- package/dist/unstable/http/MultipartParser/internal/search.d.ts.map +1 -0
- package/dist/unstable/http/MultipartParser/internal/search.js +120 -0
- package/dist/unstable/http/MultipartParser/internal/search.js.map +1 -0
- package/dist/unstable/http/MultipartParser.d.ts +98 -0
- package/dist/unstable/http/MultipartParser.d.ts.map +1 -0
- package/dist/unstable/http/MultipartParser.js +23 -0
- package/dist/unstable/http/MultipartParser.js.map +1 -0
- package/dist/unstable/http/Template.d.ts.map +1 -1
- package/dist/unstable/http/Template.js +2 -2
- 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.d.ts +1 -1
- package/dist/unstable/http/index.d.ts.map +1 -1
- package/dist/unstable/http/index.js +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/httpBody.d.ts +2 -0
- package/dist/unstable/http/internal/httpBody.d.ts.map +1 -0
- package/dist/unstable/http/internal/httpBody.js +10 -0
- package/dist/unstable/http/internal/httpBody.js.map +1 -0
- package/dist/unstable/http/internal/preResponseHandler.js.map +1 -1
- package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApi.js +5 -5
- 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 +78 -26
- 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 +76 -38
- package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +48 -46
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.js +73 -16
- package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.d.ts +18 -18
- package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.js +30 -30
- 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 +225 -6
- package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiSchema.js +174 -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 +21 -13
- package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/OpenApi.js +58 -31
- 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 +13 -15
- package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpExporter.js +19 -5
- package/dist/unstable/observability/OtlpExporter.js.map +1 -1
- package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpLogger.js +2 -2
- package/dist/unstable/observability/OtlpLogger.js.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.d.ts +6 -3
- package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.js +28 -15
- 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 +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.d.ts.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.js +15 -15
- 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 +108 -22
- package/dist/unstable/persistence/Persistence.js.map +1 -1
- package/dist/unstable/persistence/RateLimiter.d.ts +45 -24
- package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
- package/dist/unstable/persistence/RateLimiter.js +29 -45
- package/dist/unstable/persistence/RateLimiter.js.map +1 -1
- package/dist/unstable/persistence/Redis.d.ts +2 -2
- package/dist/unstable/persistence/Redis.js +2 -2
- 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 +26 -12
- package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClient.js +30 -20
- package/dist/unstable/rpc/RpcClient.js.map +1 -1
- package/dist/unstable/rpc/RpcClientError.js +2 -2
- 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 +177 -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 +53 -51
- 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 +10 -10
- package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
- package/dist/unstable/schema/VariantSchema.js +19 -11
- 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 +37 -16
- 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 +8 -4
- package/dist/unstable/sql/SqlClient.js.map +1 -1
- package/dist/unstable/sql/SqlConnection.js.map +1 -1
- package/dist/unstable/sql/SqlError.js +13 -13
- 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 +10 -8
- 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.d.ts.map +1 -1
- package/dist/unstable/sql/Statement.js +23 -21
- 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 +11 -11
- 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 +2 -2
- package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.js +3 -3
- 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 +6 -13
- 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 +410 -256
- package/src/Cause.ts +167 -277
- package/src/Channel.ts +892 -817
- 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 +636 -332
- package/src/ConfigProvider.ts +218 -121
- package/src/Console.ts +289 -39
- package/src/Context.ts +322 -381
- package/src/Cron.ts +68 -77
- package/src/Crypto.ts +30 -23
- package/src/Data.ts +60 -80
- package/src/DateTime.ts +564 -660
- package/src/Deferred.ts +253 -256
- package/src/Duration.ts +232 -310
- package/src/Effect.ts +3034 -3296
- package/src/Encoding.ts +22 -40
- package/src/Equal.ts +59 -41
- package/src/Equivalence.ts +103 -105
- package/src/ErrorReporter.ts +51 -27
- package/src/ExecutionPlan.ts +91 -56
- 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 +125 -83
- package/src/FileSystem.ts +156 -264
- package/src/Filter.ts +61 -33
- package/src/Formatter.ts +54 -56
- package/src/Function.ts +82 -151
- 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 +631 -796
- 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 +366 -265
- 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 +311 -1737
- package/src/Scheduler.ts +20 -7
- package/src/Schema.ts +766 -786
- package/src/SchemaAST.ts +522 -382
- package/src/SchemaError.ts +7 -6
- package/src/SchemaGetter.ts +242 -190
- package/src/SchemaIssue.ts +89 -275
- package/src/SchemaParser.ts +217 -124
- package/src/SchemaRepresentation.ts +22 -40
- package/src/SchemaTransformation.ts +129 -88
- package/src/Scope.ts +123 -151
- package/src/ScopedCache.ts +1 -1
- package/src/ScopedRef.ts +4 -4
- package/src/Semaphore.ts +152 -51
- package/src/Sink.ts +129 -114
- package/src/Stdio.ts +1 -1
- package/src/Stream.ts +2679 -3133
- 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/SynchronizedRef.ts +1 -1
- package/src/Terminal.ts +3 -3
- package/src/Tracer.ts +102 -55
- package/src/Trie.ts +287 -679
- package/src/Tuple.ts +99 -131
- 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 +136 -101
- 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 +7 -1
- package/src/internal/effect.ts +93 -48
- package/src/internal/executionPlan.ts +105 -10
- package/src/internal/hashMap.ts +20 -14
- package/src/internal/matcher.ts +2 -2
- package/src/internal/persistence.ts +2 -0
- package/src/internal/references.ts +3 -2
- package/src/internal/schedule.ts +4 -4
- package/src/internal/schema/annotations.ts +3 -0
- 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/toArbitrary.ts +3 -1
- package/src/internal/schema/toJsonSchemaDocument.ts +60 -6
- package/src/internal/schema/toRepresentation.ts +104 -119
- package/src/internal/trie.ts +21 -12
- package/src/testing/FastCheck.ts +8 -7
- package/src/testing/TestClock.ts +85 -31
- package/src/testing/TestConsole.ts +32 -31
- package/src/testing/TestSchema.ts +30 -30
- package/src/unstable/ai/AiError.ts +114 -137
- package/src/unstable/ai/AnthropicStructuredOutput.ts +1 -1
- package/src/unstable/ai/Chat.ts +133 -98
- package/src/unstable/ai/IdGenerator.ts +32 -28
- package/src/unstable/ai/LanguageModel.ts +111 -69
- package/src/unstable/ai/McpProtocol.ts +48 -0
- package/src/unstable/ai/McpSchema.ts +77 -66
- package/src/unstable/ai/McpServer.ts +931 -305
- package/src/unstable/ai/Model.ts +9 -20
- package/src/unstable/ai/OpenAiStructuredOutput.ts +1 -1
- package/src/unstable/ai/Prompt.ts +166 -49
- 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 +79 -86
- package/src/unstable/cli/CliOutput.ts +44 -58
- package/src/unstable/cli/Command.ts +716 -116
- 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 +333 -97
- package/src/unstable/cli/Primitive.ts +381 -154
- package/src/unstable/cli/Prompt.ts +64 -34
- package/src/unstable/cli/internal/ansi.ts +2 -2
- package/src/unstable/cli/internal/command.ts +15 -10
- package/src/unstable/cli/internal/completions/bash.ts +59 -9
- package/src/unstable/cli/internal/completions/descriptor.ts +14 -20
- package/src/unstable/cli/internal/completions/fish.ts +5 -7
- package/src/unstable/cli/internal/help.ts +4 -2
- package/src/unstable/cli/internal/lexer.ts +8 -2
- package/src/unstable/cli/internal/parser.ts +5 -5
- package/src/unstable/cli/internal/wizard.ts +2 -2
- package/src/unstable/cluster/ClusterError.ts +7 -7
- package/src/unstable/cluster/ClusterSchema.ts +8 -8
- package/src/unstable/cluster/ClusterWorkflowEngine.ts +9 -2
- 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 +24 -20
- package/src/unstable/cluster/Reply.ts +25 -6
- package/src/unstable/cluster/RunnerHealth.ts +1 -1
- package/src/unstable/cluster/RunnerServer.ts +35 -8
- package/src/unstable/cluster/RunnerStorage.ts +11 -9
- package/src/unstable/cluster/Runners.ts +23 -12
- package/src/unstable/cluster/Sharding.ts +42 -15
- 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 +12 -16
- package/src/unstable/cluster/internal/resourceMap.ts +5 -2
- package/src/unstable/cluster/internal/resourceRef.ts +27 -5
- package/src/unstable/devtools/DevToolsClient.ts +3 -2
- package/src/unstable/encoding/Ini.ts +174 -0
- package/src/unstable/encoding/Msgpack.ts +53 -36
- package/src/unstable/encoding/Ndjson.ts +9 -1
- package/src/unstable/encoding/Sse.ts +109 -37
- package/src/unstable/encoding/Toml.ts +504 -0
- package/src/unstable/encoding/Yaml.ts +541 -0
- package/src/unstable/encoding/index.ts +15 -0
- package/src/unstable/eventlog/Event.ts +20 -20
- package/src/unstable/eventlog/EventGroup.ts +4 -4
- package/src/unstable/eventlog/EventJournal.ts +29 -21
- package/src/unstable/eventlog/EventLog.ts +3 -3
- package/src/unstable/eventlog/EventLogEncryption.ts +1 -1
- package/src/unstable/eventlog/EventLogMessage.ts +3 -3
- 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 +15 -7
- package/src/unstable/eventlog/EventLogSessionAuth.ts +1 -1
- package/src/unstable/eventlog/SqlEventJournal.ts +6 -4
- 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/FindMyWay/internal/queryString.ts +420 -0
- package/src/unstable/http/FindMyWay/internal/router.ts +950 -0
- package/src/unstable/http/FindMyWay.ts +65 -6
- 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/HttpClientError.ts +1 -1
- package/src/unstable/http/HttpClientRequest.ts +2 -12
- package/src/unstable/http/HttpClientResponse.ts +5 -21
- 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 +129 -6
- 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 +18 -10
- package/src/unstable/http/HttpServerResponse.ts +38 -6
- package/src/unstable/http/HttpStaticServer.ts +35 -7
- package/src/unstable/http/Multipart.ts +15 -8
- package/src/unstable/http/MultipartParser/HeadersParser.ts +68 -0
- package/src/unstable/http/MultipartParser/Search.ts +17 -0
- package/src/unstable/http/MultipartParser/internal/contentType.ts +103 -0
- package/src/unstable/http/MultipartParser/internal/headers.ts +615 -0
- package/src/unstable/http/MultipartParser/internal/multipart.ts +262 -0
- package/src/unstable/http/MultipartParser/internal/search.ts +167 -0
- package/src/unstable/http/MultipartParser.ts +115 -0
- package/src/unstable/http/Template.ts +6 -5
- package/src/unstable/http/Url.ts +33 -63
- package/src/unstable/http/UrlParams.ts +10 -18
- package/src/unstable/http/index.ts +1 -1
- package/src/unstable/http/internal/compression.ts +196 -0
- package/src/unstable/http/internal/httpBody.ts +15 -0
- package/src/unstable/httpapi/HttpApi.ts +6 -7
- package/src/unstable/httpapi/HttpApiBuilder.ts +129 -30
- package/src/unstable/httpapi/HttpApiClient.ts +117 -54
- package/src/unstable/httpapi/HttpApiEndpoint.ts +159 -71
- package/src/unstable/httpapi/HttpApiError.ts +46 -52
- 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 +359 -6
- package/src/unstable/httpapi/OpenApi.ts +83 -33
- package/src/unstable/observability/OtlpExporter.ts +35 -21
- package/src/unstable/observability/OtlpLogger.ts +3 -1
- package/src/unstable/observability/OtlpMetrics.ts +36 -19
- package/src/unstable/observability/OtlpResource.ts +26 -17
- package/src/unstable/observability/OtlpTracer.ts +1 -1
- 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 +18 -15
- package/src/unstable/persistence/Persistence.ts +153 -26
- package/src/unstable/persistence/RateLimiter.ts +77 -43
- package/src/unstable/persistence/Redis.ts +3 -3
- 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 +54 -27
- package/src/unstable/rpc/RpcClientError.ts +2 -2
- 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 +41 -23
- package/src/unstable/socket/Socket.ts +41 -18
- package/src/unstable/sql/SqlClient.ts +64 -56
- package/src/unstable/sql/SqlError.ts +13 -13
- package/src/unstable/sql/SqlModel.ts +2 -2
- package/src/unstable/sql/SqlResolver.ts +13 -11
- package/src/unstable/sql/Statement.ts +37 -31
- package/src/unstable/workers/Transferable.ts +1 -1
- package/src/unstable/workers/Worker.ts +2 -2
- package/src/unstable/workers/WorkerError.ts +12 -12
- 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 +9 -4
- 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/dist/unstable/http/Multipasta/HeadersParser.d.ts +0 -14
- package/dist/unstable/http/Multipasta/HeadersParser.d.ts.map +0 -1
- package/dist/unstable/http/Multipasta/HeadersParser.js +0 -14
- package/dist/unstable/http/Multipasta/HeadersParser.js.map +0 -1
- package/dist/unstable/http/Multipasta/Node.d.ts +0 -14
- package/dist/unstable/http/Multipasta/Node.d.ts.map +0 -1
- package/dist/unstable/http/Multipasta/Node.js +0 -14
- package/dist/unstable/http/Multipasta/Node.js.map +0 -1
- package/dist/unstable/http/Multipasta/Search.d.ts +0 -14
- package/dist/unstable/http/Multipasta/Search.d.ts.map +0 -1
- package/dist/unstable/http/Multipasta/Search.js +0 -14
- package/dist/unstable/http/Multipasta/Search.js.map +0 -1
- package/dist/unstable/http/Multipasta/Web.d.ts +0 -14
- package/dist/unstable/http/Multipasta/Web.d.ts.map +0 -1
- package/dist/unstable/http/Multipasta/Web.js +0 -14
- package/dist/unstable/http/Multipasta/Web.js.map +0 -1
- package/dist/unstable/http/Multipasta.d.ts +0 -15
- package/dist/unstable/http/Multipasta.d.ts.map +0 -1
- package/dist/unstable/http/Multipasta.js +0 -15
- package/dist/unstable/http/Multipasta.js.map +0 -1
- package/src/internal/version.ts +0 -2
- package/src/unstable/http/Multipasta/HeadersParser.ts +0 -14
- package/src/unstable/http/Multipasta/Node.ts +0 -14
- package/src/unstable/http/Multipasta/Search.ts +0 -14
- package/src/unstable/http/Multipasta/Web.ts +0 -14
- package/src/unstable/http/Multipasta.ts +0 -15
package/src/JsonSchema.ts
CHANGED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
* Helpers for normalizing and converting JSON Schema and OpenAPI schema
|
|
3
3
|
* documents. Supported inputs include JSON Schema Draft-07, Draft 2020-12,
|
|
4
4
|
* OpenAPI 3.0, and OpenAPI 3.1; conversions normalize through
|
|
5
|
-
* `Document<"draft-2020-12">` before emitting another dialect
|
|
6
|
-
* defines document types, meta-schema
|
|
7
|
-
* and `$ref` resolution utilities.
|
|
5
|
+
* `Document<"draft-2020-12">` before emitting another dialect, including
|
|
6
|
+
* JSON Schema Draft-04. The module also defines document types, meta-schema
|
|
7
|
+
* constants, OpenAPI component-key helpers, and `$ref` resolution utilities.
|
|
8
8
|
*
|
|
9
9
|
* @since 4.0.0
|
|
10
10
|
*/
|
|
@@ -43,9 +43,10 @@ export interface JsonSchema {
|
|
|
43
43
|
*
|
|
44
44
|
* **Details**
|
|
45
45
|
*
|
|
46
|
-
* Supported values are `"draft-
|
|
47
|
-
* `"draft-2020-12"` for JSON Schema Draft 2020-12
|
|
48
|
-
* form, `"openapi-3.1"` for OpenAPI 3.1, and
|
|
46
|
+
* Supported values are `"draft-04"` for JSON Schema Draft-04, `"draft-07"`
|
|
47
|
+
* for JSON Schema Draft-07, `"draft-2020-12"` for JSON Schema Draft 2020-12
|
|
48
|
+
* and the canonical internal form, `"openapi-3.1"` for OpenAPI 3.1, and
|
|
49
|
+
* `"openapi-3.0"` for OpenAPI 3.0.
|
|
49
50
|
*
|
|
50
51
|
* @see {@link Document} for a single root schema tagged with a dialect
|
|
51
52
|
* @see {@link MultiDocument} for multiple root schemas tagged with a dialect
|
|
@@ -53,7 +54,7 @@ export interface JsonSchema {
|
|
|
53
54
|
* @category models
|
|
54
55
|
* @since 4.0.0
|
|
55
56
|
*/
|
|
56
|
-
export type Dialect = "draft-07" | "draft-2020-12" | "openapi-3.1" | "openapi-3.0"
|
|
57
|
+
export type Dialect = "draft-04" | "draft-07" | "draft-2020-12" | "openapi-3.1" | "openapi-3.0"
|
|
57
58
|
|
|
58
59
|
/**
|
|
59
60
|
* The JSON Schema primitive type names.
|
|
@@ -104,12 +105,12 @@ export interface Definitions extends Record<string, JsonSchema> {}
|
|
|
104
105
|
* The `schema` field holds the root schema *without* the definitions
|
|
105
106
|
* collection. Root definitions are stored separately in `definitions` and
|
|
106
107
|
* referenced via `#/$defs/<name>` for Draft-2020-12, `#/definitions/<name>`
|
|
107
|
-
* for Draft-07, and `#/components/schemas/<name>` for OpenAPI 3.1
|
|
108
|
-
* OpenAPI 3.0.
|
|
108
|
+
* for Draft-04 and Draft-07, and `#/components/schemas/<name>` for OpenAPI 3.1
|
|
109
|
+
* and OpenAPI 3.0.
|
|
109
110
|
*
|
|
110
111
|
* **Example** (Inspecting a parsed document)
|
|
111
112
|
*
|
|
112
|
-
* ```ts
|
|
113
|
+
* ```ts import.meta.vitest
|
|
113
114
|
* import { JsonSchema } from "effect"
|
|
114
115
|
*
|
|
115
116
|
* const raw: JsonSchema.JsonSchema = {
|
|
@@ -119,9 +120,9 @@ export interface Definitions extends Record<string, JsonSchema> {}
|
|
|
119
120
|
*
|
|
120
121
|
* const doc = JsonSchema.fromSchemaDraft2020_12(raw)
|
|
121
122
|
*
|
|
122
|
-
*
|
|
123
|
-
*
|
|
124
|
-
*
|
|
123
|
+
* doc.dialect // => "draft-2020-12"
|
|
124
|
+
* doc.schema // => { type: "string" }
|
|
125
|
+
* doc.definitions // => { Trimmed: { type: "string", minLength: 1 } }
|
|
125
126
|
* ```
|
|
126
127
|
*
|
|
127
128
|
* @see {@link MultiDocument}
|
|
@@ -159,6 +160,20 @@ export interface MultiDocument<D extends Dialect> {
|
|
|
159
160
|
readonly definitions: Definitions
|
|
160
161
|
}
|
|
161
162
|
|
|
163
|
+
/**
|
|
164
|
+
* Represents the `$schema` meta-schema URI for JSON Schema Draft-04.
|
|
165
|
+
*
|
|
166
|
+
* **When to use**
|
|
167
|
+
*
|
|
168
|
+
* Use when constructing a Draft-04 JSON Schema document and you need a stable
|
|
169
|
+
* value for the root `$schema` field.
|
|
170
|
+
*
|
|
171
|
+
* @see {@link META_SCHEMA_URI_DRAFT_07} for the Draft-07 `$schema` URI
|
|
172
|
+
* @category constants
|
|
173
|
+
* @since 4.0.0
|
|
174
|
+
*/
|
|
175
|
+
export const META_SCHEMA_URI_DRAFT_04 = "http://json-schema.org/draft-04/schema#"
|
|
176
|
+
|
|
162
177
|
/**
|
|
163
178
|
* Represents the `$schema` meta-schema URI for JSON Schema Draft-07.
|
|
164
179
|
*
|
|
@@ -170,14 +185,15 @@ export interface MultiDocument<D extends Dialect> {
|
|
|
170
185
|
* **Details**
|
|
171
186
|
*
|
|
172
187
|
* The exported value is the literal string
|
|
173
|
-
* `http://json-schema.org/draft-07/schema
|
|
188
|
+
* `http://json-schema.org/draft-07/schema#`.
|
|
174
189
|
*
|
|
190
|
+
* @see {@link META_SCHEMA_URI_DRAFT_04} for the Draft-04 `$schema` URI
|
|
175
191
|
* @see {@link META_SCHEMA_URI_DRAFT_2020_12} for the Draft 2020-12 `$schema` URI
|
|
176
192
|
*
|
|
177
193
|
* @category constants
|
|
178
194
|
* @since 4.0.0
|
|
179
195
|
*/
|
|
180
|
-
export const META_SCHEMA_URI_DRAFT_07 = "http://json-schema.org/draft-07/schema"
|
|
196
|
+
export const META_SCHEMA_URI_DRAFT_07 = "http://json-schema.org/draft-07/schema#"
|
|
181
197
|
|
|
182
198
|
/**
|
|
183
199
|
* Represents the `$schema` meta-schema URI for JSON Schema Draft 2020-12.
|
|
@@ -203,6 +219,57 @@ const RE_DEFINITIONS = /^#\/definitions(?=\/|$)/
|
|
|
203
219
|
const RE_DEFS = /^#\/\$defs(?=\/|$)/
|
|
204
220
|
const RE_COMPONENTS_SCHEMAS = /^#\/components\/schemas(?=\/|$)/
|
|
205
221
|
|
|
222
|
+
const DRAFT_04_COPY_KEYWORDS = new Set([
|
|
223
|
+
"$ref",
|
|
224
|
+
"type",
|
|
225
|
+
"required",
|
|
226
|
+
"enum",
|
|
227
|
+
"title",
|
|
228
|
+
"description",
|
|
229
|
+
"default",
|
|
230
|
+
"format",
|
|
231
|
+
"pattern",
|
|
232
|
+
"minLength",
|
|
233
|
+
"maxLength",
|
|
234
|
+
"minItems",
|
|
235
|
+
"maxItems",
|
|
236
|
+
"minProperties",
|
|
237
|
+
"maxProperties",
|
|
238
|
+
"multipleOf",
|
|
239
|
+
"uniqueItems"
|
|
240
|
+
])
|
|
241
|
+
|
|
242
|
+
const DRAFT_07_COPY_KEYWORDS = new Set([
|
|
243
|
+
...DRAFT_04_COPY_KEYWORDS,
|
|
244
|
+
"const",
|
|
245
|
+
"examples",
|
|
246
|
+
"readOnly",
|
|
247
|
+
"writeOnly",
|
|
248
|
+
"minimum",
|
|
249
|
+
"maximum",
|
|
250
|
+
"exclusiveMinimum",
|
|
251
|
+
"exclusiveMaximum"
|
|
252
|
+
])
|
|
253
|
+
|
|
254
|
+
const DRAFT_04_SINGLE_SUBSCHEMA_KEYWORDS = new Set(["not"])
|
|
255
|
+
const DRAFT_07_SINGLE_SUBSCHEMA_KEYWORDS = new Set(["not", "additionalProperties", "propertyNames"])
|
|
256
|
+
|
|
257
|
+
const MAP_SUBSCHEMA_KEYWORDS = new Set(["properties", "patternProperties"])
|
|
258
|
+
const ARRAY_SUBSCHEMA_KEYWORDS = new Set(["allOf", "anyOf", "oneOf"])
|
|
259
|
+
const DRAFT_2020_12_MAP_SUBSCHEMA_KEYWORDS = new Set(["$defs", ...MAP_SUBSCHEMA_KEYWORDS, "dependentSchemas"])
|
|
260
|
+
const DRAFT_2020_12_ARRAY_SUBSCHEMA_KEYWORDS = new Set([...ARRAY_SUBSCHEMA_KEYWORDS, "prefixItems"])
|
|
261
|
+
const DRAFT_2020_12_SINGLE_SUBSCHEMA_KEYWORDS = new Set([
|
|
262
|
+
...DRAFT_07_SINGLE_SUBSCHEMA_KEYWORDS,
|
|
263
|
+
"unevaluatedProperties",
|
|
264
|
+
"items",
|
|
265
|
+
"contains",
|
|
266
|
+
"unevaluatedItems",
|
|
267
|
+
"if",
|
|
268
|
+
"then",
|
|
269
|
+
"else",
|
|
270
|
+
"contentSchema"
|
|
271
|
+
])
|
|
272
|
+
|
|
206
273
|
/**
|
|
207
274
|
* Parses a raw Draft-07 JSON Schema into a `Document<"draft-2020-12">`.
|
|
208
275
|
*
|
|
@@ -224,7 +291,7 @@ const RE_COMPONENTS_SCHEMAS = /^#\/components\/schemas(?=\/|$)/
|
|
|
224
291
|
*
|
|
225
292
|
* **Example** (Parsing a Draft-07 schema)
|
|
226
293
|
*
|
|
227
|
-
* ```ts
|
|
294
|
+
* ```ts import.meta.vitest
|
|
228
295
|
* import { JsonSchema } from "effect"
|
|
229
296
|
*
|
|
230
297
|
* const raw: JsonSchema.JsonSchema = {
|
|
@@ -238,8 +305,8 @@ const RE_COMPONENTS_SCHEMAS = /^#\/components\/schemas(?=\/|$)/
|
|
|
238
305
|
* }
|
|
239
306
|
*
|
|
240
307
|
* const doc = JsonSchema.fromSchemaDraft07(raw)
|
|
241
|
-
*
|
|
242
|
-
*
|
|
308
|
+
* doc.dialect // => "draft-2020-12"
|
|
309
|
+
* doc.schema.properties // => { tags: { type: "array", items: { type: "string" } } }
|
|
243
310
|
* ```
|
|
244
311
|
*
|
|
245
312
|
* @see {@link fromSchemaDraft2020_12}
|
|
@@ -259,7 +326,7 @@ export function fromSchemaDraft07(js: JsonSchema): Document<"draft-2020-12"> {
|
|
|
259
326
|
}
|
|
260
327
|
|
|
261
328
|
function walk(node: unknown, isRoot: boolean): unknown {
|
|
262
|
-
if (Array.isArray(node)) return node.map(
|
|
329
|
+
if (Array.isArray(node)) return node.map(walkNested)
|
|
263
330
|
if (!Predicate.isObject(node)) return node
|
|
264
331
|
|
|
265
332
|
const out: Record<string, unknown> = {}
|
|
@@ -270,13 +337,19 @@ export function fromSchemaDraft07(js: JsonSchema): Document<"draft-2020-12"> {
|
|
|
270
337
|
for (const k of Object.keys(node)) {
|
|
271
338
|
const v = node[k]
|
|
272
339
|
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
340
|
+
if (k === "$ref") {
|
|
341
|
+
out.$ref = typeof v === "string" ? v.replace(RE_DEFINITIONS, "#/$defs") : v
|
|
342
|
+
continue
|
|
343
|
+
}
|
|
344
|
+
if (DRAFT_07_COPY_KEYWORDS.has(k)) {
|
|
345
|
+
out[k] = v
|
|
346
|
+
continue
|
|
347
|
+
}
|
|
348
|
+
if (rewriteSubschemaKeyword(out, k, v, walkNested, DRAFT_07_SINGLE_SUBSCHEMA_KEYWORDS)) continue
|
|
277
349
|
|
|
350
|
+
switch (k) {
|
|
278
351
|
case "definitions": {
|
|
279
|
-
const mapped =
|
|
352
|
+
const mapped = mapObject(v, walkNested)
|
|
280
353
|
if (isRoot) {
|
|
281
354
|
definitions = mapped as Definitions | undefined
|
|
282
355
|
} else {
|
|
@@ -292,51 +365,6 @@ export function fromSchemaDraft07(js: JsonSchema): Document<"draft-2020-12"> {
|
|
|
292
365
|
additionalItems = v
|
|
293
366
|
break
|
|
294
367
|
|
|
295
|
-
case "properties":
|
|
296
|
-
case "patternProperties": {
|
|
297
|
-
const mapped = walk_object(v, walk)
|
|
298
|
-
out[k] = mapped ?? v
|
|
299
|
-
break
|
|
300
|
-
}
|
|
301
|
-
|
|
302
|
-
case "additionalProperties":
|
|
303
|
-
case "propertyNames":
|
|
304
|
-
out[k] = walk(v, false)
|
|
305
|
-
break
|
|
306
|
-
|
|
307
|
-
case "allOf":
|
|
308
|
-
case "anyOf":
|
|
309
|
-
case "oneOf":
|
|
310
|
-
out[k] = Array.isArray(v) ? v.map((x) => walk(x, false)) : v
|
|
311
|
-
break
|
|
312
|
-
|
|
313
|
-
case "type":
|
|
314
|
-
case "required":
|
|
315
|
-
case "enum":
|
|
316
|
-
case "const":
|
|
317
|
-
case "title":
|
|
318
|
-
case "description":
|
|
319
|
-
case "default":
|
|
320
|
-
case "examples":
|
|
321
|
-
case "format":
|
|
322
|
-
case "readOnly":
|
|
323
|
-
case "writeOnly":
|
|
324
|
-
case "pattern":
|
|
325
|
-
case "minimum":
|
|
326
|
-
case "maximum":
|
|
327
|
-
case "exclusiveMinimum":
|
|
328
|
-
case "exclusiveMaximum":
|
|
329
|
-
case "minLength":
|
|
330
|
-
case "maxLength":
|
|
331
|
-
case "minItems":
|
|
332
|
-
case "maxItems":
|
|
333
|
-
case "minProperties":
|
|
334
|
-
case "maxProperties":
|
|
335
|
-
case "multipleOf":
|
|
336
|
-
case "uniqueItems":
|
|
337
|
-
out[k] = v
|
|
338
|
-
break
|
|
339
|
-
|
|
340
368
|
default:
|
|
341
369
|
break
|
|
342
370
|
}
|
|
@@ -345,15 +373,19 @@ export function fromSchemaDraft07(js: JsonSchema): Document<"draft-2020-12"> {
|
|
|
345
373
|
// Draft-07 tuples -> 2020-12 tuples
|
|
346
374
|
if (prefixItems !== undefined) {
|
|
347
375
|
if (Array.isArray(prefixItems)) {
|
|
348
|
-
out.prefixItems = prefixItems.map(
|
|
349
|
-
if (additionalItems !== undefined) out.items =
|
|
376
|
+
out.prefixItems = prefixItems.map(walkNested)
|
|
377
|
+
if (additionalItems !== undefined) out.items = walkNested(additionalItems)
|
|
350
378
|
} else {
|
|
351
|
-
out.items =
|
|
379
|
+
out.items = walkNested(prefixItems)
|
|
352
380
|
}
|
|
353
381
|
}
|
|
354
382
|
|
|
355
383
|
return out
|
|
356
384
|
}
|
|
385
|
+
|
|
386
|
+
function walkNested(node: unknown): unknown {
|
|
387
|
+
return walk(node, false)
|
|
388
|
+
}
|
|
357
389
|
}
|
|
358
390
|
|
|
359
391
|
/**
|
|
@@ -370,7 +402,7 @@ export function fromSchemaDraft07(js: JsonSchema): Document<"draft-2020-12"> {
|
|
|
370
402
|
*
|
|
371
403
|
* **Example** (Parsing a Draft-2020-12 schema)
|
|
372
404
|
*
|
|
373
|
-
* ```ts
|
|
405
|
+
* ```ts import.meta.vitest
|
|
374
406
|
* import { JsonSchema } from "effect"
|
|
375
407
|
*
|
|
376
408
|
* const raw: JsonSchema.JsonSchema = {
|
|
@@ -380,8 +412,8 @@ export function fromSchemaDraft07(js: JsonSchema): Document<"draft-2020-12"> {
|
|
|
380
412
|
* }
|
|
381
413
|
*
|
|
382
414
|
* const doc = JsonSchema.fromSchemaDraft2020_12(raw)
|
|
383
|
-
*
|
|
384
|
-
*
|
|
415
|
+
* doc.schema // => { type: "number", minimum: 0 }
|
|
416
|
+
* doc.definitions // => { PositiveInt: { type: "integer", minimum: 1 } }
|
|
385
417
|
* ```
|
|
386
418
|
*
|
|
387
419
|
* @see {@link fromSchemaDraft07}
|
|
@@ -413,7 +445,7 @@ export function fromSchemaDraft2020_12(js: JsonSchema): Document<"draft-2020-12"
|
|
|
413
445
|
*
|
|
414
446
|
* **Example** (Parsing an OpenAPI 3.1 schema)
|
|
415
447
|
*
|
|
416
|
-
* ```ts
|
|
448
|
+
* ```ts import.meta.vitest
|
|
417
449
|
* import { JsonSchema } from "effect"
|
|
418
450
|
*
|
|
419
451
|
* const raw: JsonSchema.JsonSchema = {
|
|
@@ -424,8 +456,7 @@ export function fromSchemaDraft2020_12(js: JsonSchema): Document<"draft-2020-12"
|
|
|
424
456
|
* }
|
|
425
457
|
*
|
|
426
458
|
* const doc = JsonSchema.fromSchemaOpenApi3_1(raw)
|
|
427
|
-
* // $ref
|
|
428
|
-
* console.log(doc.schema.properties) // { user: { $ref: "#/$defs/User" } }
|
|
459
|
+
* doc.schema.properties // => { user: { $ref: "#/$defs/User" } }
|
|
429
460
|
* ```
|
|
430
461
|
*
|
|
431
462
|
* @see {@link fromSchemaOpenApi3_0}
|
|
@@ -434,7 +465,10 @@ export function fromSchemaDraft2020_12(js: JsonSchema): Document<"draft-2020-12"
|
|
|
434
465
|
* @since 4.0.0
|
|
435
466
|
*/
|
|
436
467
|
export function fromSchemaOpenApi3_1(js: JsonSchema): Document<"draft-2020-12"> {
|
|
437
|
-
const schema =
|
|
468
|
+
const schema = transformSchema(
|
|
469
|
+
js,
|
|
470
|
+
(schema) => rewriteSchemaRef(schema, (ref) => ref.replace(RE_COMPONENTS_SCHEMAS, "#/$defs"))
|
|
471
|
+
) as JsonSchema
|
|
438
472
|
return fromSchemaDraft2020_12(schema)
|
|
439
473
|
}
|
|
440
474
|
|
|
@@ -455,7 +489,7 @@ export function fromSchemaOpenApi3_1(js: JsonSchema): Document<"draft-2020-12">
|
|
|
455
489
|
*
|
|
456
490
|
* **Example** (Parsing an OpenAPI 3.0 nullable schema)
|
|
457
491
|
*
|
|
458
|
-
* ```ts
|
|
492
|
+
* ```ts import.meta.vitest
|
|
459
493
|
* import { JsonSchema } from "effect"
|
|
460
494
|
*
|
|
461
495
|
* const raw: JsonSchema.JsonSchema = {
|
|
@@ -464,8 +498,7 @@ export function fromSchemaOpenApi3_1(js: JsonSchema): Document<"draft-2020-12">
|
|
|
464
498
|
* }
|
|
465
499
|
*
|
|
466
500
|
* const doc = JsonSchema.fromSchemaOpenApi3_0(raw)
|
|
467
|
-
* //
|
|
468
|
-
* console.log(doc.schema.type) // ["string", "null"]
|
|
501
|
+
* doc.schema.type // => ["string", "null"]
|
|
469
502
|
* ```
|
|
470
503
|
*
|
|
471
504
|
* @see {@link fromSchemaOpenApi3_1}
|
|
@@ -474,7 +507,7 @@ export function fromSchemaOpenApi3_1(js: JsonSchema): Document<"draft-2020-12">
|
|
|
474
507
|
* @since 4.0.0
|
|
475
508
|
*/
|
|
476
509
|
export function fromSchemaOpenApi3_0(schema: JsonSchema): Document<"draft-2020-12"> {
|
|
477
|
-
const normalized =
|
|
510
|
+
const normalized = normalizeOpenApi3_0ToDraft07(schema)
|
|
478
511
|
return fromSchemaDraft07(normalized as JsonSchema)
|
|
479
512
|
}
|
|
480
513
|
|
|
@@ -499,7 +532,7 @@ export function fromSchemaOpenApi3_0(schema: JsonSchema): Document<"draft-2020-1
|
|
|
499
532
|
*
|
|
500
533
|
* **Example** (Converting to Draft-07)
|
|
501
534
|
*
|
|
502
|
-
* ```ts
|
|
535
|
+
* ```ts import.meta.vitest
|
|
503
536
|
* import { JsonSchema } from "effect"
|
|
504
537
|
*
|
|
505
538
|
* const doc = JsonSchema.fromSchemaDraft2020_12({
|
|
@@ -509,12 +542,13 @@ export function fromSchemaOpenApi3_0(schema: JsonSchema): Document<"draft-2020-1
|
|
|
509
542
|
* })
|
|
510
543
|
*
|
|
511
544
|
* const draft07 = JsonSchema.toDocumentDraft07(doc)
|
|
512
|
-
*
|
|
513
|
-
*
|
|
514
|
-
*
|
|
545
|
+
* draft07.dialect // => "draft-07"
|
|
546
|
+
* draft07.schema.items // => [{ type: "string" }, { type: "number" }]
|
|
547
|
+
* draft07.schema.additionalItems // => { type: "boolean" }
|
|
515
548
|
* ```
|
|
516
549
|
*
|
|
517
550
|
* @see {@link fromSchemaDraft07}
|
|
551
|
+
* @see {@link toDocumentDraft04} for converting to Draft-04
|
|
518
552
|
* @see {@link toMultiDocumentOpenApi3_1}
|
|
519
553
|
* @category encoding
|
|
520
554
|
* @since 4.0.0
|
|
@@ -527,75 +561,165 @@ export function toDocumentDraft07(document: Document<"draft-2020-12">): Document
|
|
|
527
561
|
}
|
|
528
562
|
}
|
|
529
563
|
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
564
|
+
/**
|
|
565
|
+
* Converts a `Document<"draft-2020-12">` to a `Document<"draft-04">`.
|
|
566
|
+
*
|
|
567
|
+
* **When to use**
|
|
568
|
+
*
|
|
569
|
+
* Use when you need to output a canonical JSON Schema document in Draft-04
|
|
570
|
+
* format.
|
|
571
|
+
*
|
|
572
|
+
* **Details**
|
|
573
|
+
*
|
|
574
|
+
* This rewrites `#/$defs/...` refs to `#/definitions/...`, converts tuple
|
|
575
|
+
* syntax, lowers `const` to `enum`, converts numeric exclusive bounds to the
|
|
576
|
+
* Draft-04 boolean form, and converts both the root schema and all definitions.
|
|
577
|
+
*
|
|
578
|
+
* **Gotchas**
|
|
579
|
+
*
|
|
580
|
+
* Unsupported Draft-2020-12 and Draft-07 keywords are dropped. For example,
|
|
581
|
+
* `propertyNames` has no general Draft-04 equivalent and is omitted.
|
|
582
|
+
*
|
|
583
|
+
* **Example** (Converting exclusive bounds)
|
|
584
|
+
*
|
|
585
|
+
* ```ts import.meta.vitest
|
|
586
|
+
* import { JsonSchema } from "effect"
|
|
587
|
+
*
|
|
588
|
+
* const doc = JsonSchema.fromSchemaDraft2020_12({
|
|
589
|
+
* type: "number",
|
|
590
|
+
* exclusiveMinimum: 0
|
|
591
|
+
* })
|
|
592
|
+
*
|
|
593
|
+
* JsonSchema.toDocumentDraft04(doc).schema // => { type: "number", minimum: 0, exclusiveMinimum: true }
|
|
594
|
+
* ```
|
|
595
|
+
*
|
|
596
|
+
* @see {@link toDocumentDraft07} for converting to Draft-07
|
|
597
|
+
* @category encoding
|
|
598
|
+
* @since 4.0.0
|
|
599
|
+
*/
|
|
600
|
+
export function toDocumentDraft04(document: Document<"draft-2020-12">): Document<"draft-04"> {
|
|
601
|
+
const draft07 = toDocumentDraft07(document)
|
|
602
|
+
return {
|
|
603
|
+
dialect: "draft-04",
|
|
604
|
+
schema: toSchemaDraft04(draft07.schema),
|
|
605
|
+
definitions: Rec.map(draft07.definitions, toSchemaDraft04)
|
|
535
606
|
}
|
|
607
|
+
}
|
|
536
608
|
|
|
537
|
-
|
|
538
|
-
|
|
609
|
+
function toSchemaDraft04(schema: JsonSchema): JsonSchema {
|
|
610
|
+
return walk(schema) as JsonSchema
|
|
611
|
+
|
|
612
|
+
function walk(node: unknown): unknown {
|
|
613
|
+
if (node === true) return {}
|
|
614
|
+
if (node === false) return { not: {} }
|
|
615
|
+
if (Array.isArray(node)) return node.map(walk)
|
|
539
616
|
if (!Predicate.isObject(node)) return node
|
|
540
617
|
|
|
541
618
|
const src = node as Record<string, unknown>
|
|
542
619
|
const out: Record<string, unknown> = {}
|
|
543
620
|
|
|
544
|
-
let
|
|
545
|
-
let
|
|
621
|
+
let hasConst = false
|
|
622
|
+
let constValue: unknown = undefined
|
|
546
623
|
|
|
547
624
|
for (const k of Object.keys(src)) {
|
|
548
625
|
const v = src[k]
|
|
549
626
|
|
|
627
|
+
if (DRAFT_04_COPY_KEYWORDS.has(k)) {
|
|
628
|
+
out[k] = v
|
|
629
|
+
continue
|
|
630
|
+
}
|
|
631
|
+
if (rewriteSubschemaKeyword(out, k, v, walk, DRAFT_04_SINGLE_SUBSCHEMA_KEYWORDS)) continue
|
|
632
|
+
|
|
550
633
|
switch (k) {
|
|
551
|
-
// We already rewrote $ref via rewrite_refs, so just copy it through.
|
|
552
|
-
case "$ref":
|
|
553
|
-
case "type":
|
|
554
|
-
case "required":
|
|
555
|
-
case "enum":
|
|
556
634
|
case "const":
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
case "format":
|
|
562
|
-
case "pattern":
|
|
635
|
+
hasConst = true
|
|
636
|
+
constValue = v
|
|
637
|
+
break
|
|
638
|
+
|
|
563
639
|
case "minimum":
|
|
564
640
|
case "maximum":
|
|
565
641
|
case "exclusiveMinimum":
|
|
566
642
|
case "exclusiveMaximum":
|
|
567
|
-
case "minLength":
|
|
568
|
-
case "maxLength":
|
|
569
|
-
case "minItems":
|
|
570
|
-
case "maxItems":
|
|
571
|
-
case "minProperties":
|
|
572
|
-
case "maxProperties":
|
|
573
|
-
case "multipleOf":
|
|
574
|
-
case "uniqueItems":
|
|
575
|
-
out[k] = v
|
|
576
643
|
break
|
|
577
644
|
|
|
578
|
-
|
|
579
|
-
case "
|
|
580
|
-
|
|
581
|
-
const mapped = walk_object(v, walk)
|
|
582
|
-
out[k] = mapped ?? v
|
|
645
|
+
case "additionalProperties":
|
|
646
|
+
case "additionalItems":
|
|
647
|
+
out[k] = typeof v === "boolean" ? v : walk(v)
|
|
583
648
|
break
|
|
584
|
-
}
|
|
585
649
|
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
case "propertyNames":
|
|
589
|
-
out[k] = walk(v, false)
|
|
650
|
+
case "items":
|
|
651
|
+
out.items = Array.isArray(v) ? v.map(walk) : walk(v)
|
|
590
652
|
break
|
|
591
653
|
|
|
592
|
-
|
|
593
|
-
case "allOf":
|
|
594
|
-
case "anyOf":
|
|
595
|
-
case "oneOf":
|
|
596
|
-
out[k] = Array.isArray(v) ? v.map((x) => walk(x, false)) : v
|
|
654
|
+
default:
|
|
597
655
|
break
|
|
656
|
+
}
|
|
657
|
+
}
|
|
658
|
+
|
|
659
|
+
convertExclusiveBound(src, out, "minimum", "exclusiveMinimum", (bound, exclusive) => bound > exclusive)
|
|
660
|
+
convertExclusiveBound(src, out, "maximum", "exclusiveMaximum", (bound, exclusive) => bound < exclusive)
|
|
661
|
+
|
|
662
|
+
if (hasConst) {
|
|
663
|
+
const constSchema = { enum: [constValue] }
|
|
664
|
+
if (Object.hasOwn(src, "enum")) {
|
|
665
|
+
out.allOf = Array.isArray(out.allOf) ? [...out.allOf, constSchema] : [constSchema]
|
|
666
|
+
} else {
|
|
667
|
+
out.enum = constSchema.enum
|
|
668
|
+
}
|
|
669
|
+
}
|
|
670
|
+
|
|
671
|
+
return out
|
|
672
|
+
}
|
|
673
|
+
}
|
|
674
|
+
|
|
675
|
+
function convertExclusiveBound(
|
|
676
|
+
src: Record<string, unknown>,
|
|
677
|
+
out: Record<string, unknown>,
|
|
678
|
+
boundKey: "minimum" | "maximum",
|
|
679
|
+
exclusiveKey: "exclusiveMinimum" | "exclusiveMaximum",
|
|
680
|
+
isBoundStricter: (bound: number, exclusive: number) => boolean
|
|
681
|
+
): void {
|
|
682
|
+
const bound = src[boundKey]
|
|
683
|
+
const exclusive = src[exclusiveKey]
|
|
684
|
+
|
|
685
|
+
if (typeof exclusive === "number") {
|
|
686
|
+
if (typeof bound === "number" && isBoundStricter(bound, exclusive)) {
|
|
687
|
+
out[boundKey] = bound
|
|
688
|
+
} else {
|
|
689
|
+
out[boundKey] = exclusive
|
|
690
|
+
out[exclusiveKey] = true
|
|
691
|
+
}
|
|
692
|
+
} else if (bound !== undefined) {
|
|
693
|
+
out[boundKey] = bound
|
|
694
|
+
}
|
|
695
|
+
}
|
|
598
696
|
|
|
697
|
+
function toSchemaDraft07(schema: JsonSchema): JsonSchema {
|
|
698
|
+
return transformSchema(schema, (src) => {
|
|
699
|
+
rewriteSchemaRef(src, (ref) => ref.replace(RE_DEFS, "#/definitions"))
|
|
700
|
+
const out: Record<string, unknown> = {}
|
|
701
|
+
|
|
702
|
+
let prefixItems: unknown = undefined
|
|
703
|
+
let items: unknown = undefined
|
|
704
|
+
|
|
705
|
+
for (const k of Object.keys(src)) {
|
|
706
|
+
const v = src[k]
|
|
707
|
+
|
|
708
|
+
if (k === "required" && Array.isArray(v) && v.length === 0) continue
|
|
709
|
+
if (DRAFT_07_COPY_KEYWORDS.has(k)) {
|
|
710
|
+
out[k] = v
|
|
711
|
+
continue
|
|
712
|
+
}
|
|
713
|
+
if (
|
|
714
|
+
MAP_SUBSCHEMA_KEYWORDS.has(k) ||
|
|
715
|
+
ARRAY_SUBSCHEMA_KEYWORDS.has(k) ||
|
|
716
|
+
DRAFT_07_SINGLE_SUBSCHEMA_KEYWORDS.has(k)
|
|
717
|
+
) {
|
|
718
|
+
out[k] = v
|
|
719
|
+
continue
|
|
720
|
+
}
|
|
721
|
+
|
|
722
|
+
switch (k) {
|
|
599
723
|
// Tuple handling (2020-12 form)
|
|
600
724
|
case "prefixItems":
|
|
601
725
|
prefixItems = v
|
|
@@ -613,19 +737,25 @@ function toSchemaDraft07(schema: JsonSchema): JsonSchema {
|
|
|
613
737
|
// 2020-12 tuples -> Draft-07 tuples
|
|
614
738
|
if (prefixItems !== undefined) {
|
|
615
739
|
if (Array.isArray(prefixItems)) {
|
|
616
|
-
out.items = prefixItems
|
|
617
|
-
if (items !== undefined) out.additionalItems =
|
|
740
|
+
out.items = prefixItems
|
|
741
|
+
if (items !== undefined) out.additionalItems = items
|
|
618
742
|
} else {
|
|
619
743
|
// Non-standard, but keep a reasonable behavior
|
|
620
|
-
out.items =
|
|
744
|
+
out.items = prefixItems
|
|
621
745
|
}
|
|
622
746
|
} else if (items !== undefined) {
|
|
623
747
|
// Regular items schema stays as items
|
|
624
|
-
out.items =
|
|
748
|
+
out.items = items
|
|
749
|
+
}
|
|
750
|
+
|
|
751
|
+
const $ref = out.$ref
|
|
752
|
+
if (typeof $ref === "string" && Object.keys(out).length > 1) {
|
|
753
|
+
delete out.$ref
|
|
754
|
+
out.allOf = [{ $ref }, ...(Array.isArray(out.allOf) ? out.allOf : [])]
|
|
625
755
|
}
|
|
626
756
|
|
|
627
757
|
return out
|
|
628
|
-
}
|
|
758
|
+
}) as JsonSchema
|
|
629
759
|
}
|
|
630
760
|
|
|
631
761
|
/**
|
|
@@ -639,15 +769,21 @@ function toSchemaDraft07(schema: JsonSchema): JsonSchema {
|
|
|
639
769
|
*
|
|
640
770
|
* **Details**
|
|
641
771
|
*
|
|
642
|
-
* This rewrites `#/$defs/...` refs to `#/components/schemas
|
|
643
|
-
* definition keys to match the OpenAPI component key pattern
|
|
644
|
-
* (`^[a-zA-Z0-9.\-_]+$`) by replacing invalid characters with `_
|
|
645
|
-
*
|
|
646
|
-
*
|
|
772
|
+
* This rewrites local `#/$defs/...` refs to `#/components/schemas/...` and
|
|
773
|
+
* sanitizes definition keys to match the OpenAPI component key pattern
|
|
774
|
+
* (`^[a-zA-Z0-9.\-_]+$`) by replacing invalid characters with `_`. Valid keys
|
|
775
|
+
* are preserved. When sanitized keys collide, the converter appends the first
|
|
776
|
+
* available `_1`, `_2`, and subsequent suffix, with allocation independent of
|
|
777
|
+
* definition insertion order. All local refs are updated to use the allocated
|
|
778
|
+
* keys, including refs to paths within a definition.
|
|
779
|
+
*
|
|
780
|
+
* **Gotchas**
|
|
781
|
+
*
|
|
782
|
+
* External refs and local refs outside `#/$defs` are left unchanged.
|
|
647
783
|
*
|
|
648
784
|
* **Example** (Converting to OpenAPI 3.1)
|
|
649
785
|
*
|
|
650
|
-
* ```ts
|
|
786
|
+
* ```ts import.meta.vitest
|
|
651
787
|
* import { JsonSchema } from "effect"
|
|
652
788
|
*
|
|
653
789
|
* const multi: JsonSchema.MultiDocument<"draft-2020-12"> = {
|
|
@@ -659,8 +795,8 @@ function toSchemaDraft07(schema: JsonSchema): JsonSchema {
|
|
|
659
795
|
* }
|
|
660
796
|
*
|
|
661
797
|
* const openapi = JsonSchema.toMultiDocumentOpenApi3_1(multi)
|
|
662
|
-
*
|
|
663
|
-
*
|
|
798
|
+
* openapi.dialect // => "openapi-3.1"
|
|
799
|
+
* openapi.schemas[0] // => { $ref: "#/components/schemas/User" }
|
|
664
800
|
* ```
|
|
665
801
|
*
|
|
666
802
|
* @see {@link toDocumentDraft07}
|
|
@@ -669,26 +805,43 @@ function toSchemaDraft07(schema: JsonSchema): JsonSchema {
|
|
|
669
805
|
* @since 4.0.0
|
|
670
806
|
*/
|
|
671
807
|
export function toMultiDocumentOpenApi3_1(multiDocument: MultiDocument<"draft-2020-12">): MultiDocument<"openapi-3.1"> {
|
|
808
|
+
const definitionKeys = Object.keys(multiDocument.definitions)
|
|
672
809
|
const keyMap = new Map<string, string>()
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
810
|
+
const usedKeys = new Set(definitionKeys.filter((key) => VALID_OPEN_API_COMPONENTS_SCHEMAS_KEY_REGEXP.test(key)))
|
|
811
|
+
const invalidKeys = definitionKeys
|
|
812
|
+
.filter((key) => !VALID_OPEN_API_COMPONENTS_SCHEMAS_KEY_REGEXP.test(key))
|
|
813
|
+
.sort()
|
|
814
|
+
.map((key) => [key, sanitizeOpenApiComponentsSchemasKey(key)] as const)
|
|
815
|
+
for (const [key, base] of invalidKeys) {
|
|
816
|
+
if (usedKeys.has(base)) continue
|
|
817
|
+
usedKeys.add(base)
|
|
818
|
+
keyMap.set(key, base)
|
|
819
|
+
}
|
|
820
|
+
for (const [key, base] of invalidKeys) {
|
|
821
|
+
if (keyMap.has(key)) continue
|
|
822
|
+
let candidate: string
|
|
823
|
+
let suffix = 0
|
|
824
|
+
do candidate = `${base}_${++suffix}`
|
|
825
|
+
while (usedKeys.has(candidate))
|
|
826
|
+
usedKeys.add(candidate)
|
|
827
|
+
keyMap.set(key, candidate)
|
|
678
828
|
}
|
|
679
829
|
|
|
680
830
|
function rewrite(schema: JsonSchema): JsonSchema {
|
|
681
|
-
return
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
831
|
+
return transformSchema(
|
|
832
|
+
schema,
|
|
833
|
+
(schema) =>
|
|
834
|
+
rewriteSchemaRef(schema, ($ref) => {
|
|
835
|
+
if (!$ref.startsWith("#/$defs/")) return $ref
|
|
836
|
+
|
|
837
|
+
const path = $ref.slice("#/$defs/".length)
|
|
838
|
+
const separatorIndex = path.indexOf("/")
|
|
839
|
+
const token = separatorIndex === -1 ? path : path.slice(0, separatorIndex)
|
|
840
|
+
const rest = separatorIndex === -1 ? "" : path.slice(separatorIndex)
|
|
841
|
+
const key = keyMap.get(unescapeToken(token)) ?? token
|
|
842
|
+
return `#/components/schemas/${key}${rest}`
|
|
843
|
+
})
|
|
844
|
+
) as JsonSchema
|
|
692
845
|
}
|
|
693
846
|
|
|
694
847
|
return {
|
|
@@ -711,64 +864,74 @@ export const VALID_OPEN_API_COMPONENTS_SCHEMAS_KEY_REGEXP = /^[a-zA-Z0-9.\-_]+$/
|
|
|
711
864
|
* @internal
|
|
712
865
|
*/
|
|
713
866
|
export function sanitizeOpenApiComponentsSchemasKey(s: string): string {
|
|
714
|
-
|
|
715
|
-
if (VALID_OPEN_API_COMPONENTS_SCHEMAS_KEY_REGEXP.test(s)) return s
|
|
716
|
-
|
|
717
|
-
const out: Array<string> = []
|
|
718
|
-
|
|
719
|
-
for (const ch of s) {
|
|
720
|
-
const code = ch.codePointAt(0)
|
|
721
|
-
if (
|
|
722
|
-
code !== undefined &&
|
|
723
|
-
((code >= 48 && code <= 57) || // 0-9
|
|
724
|
-
(code >= 65 && code <= 90) || // A-Z
|
|
725
|
-
(code >= 97 && code <= 122) || // a-z
|
|
726
|
-
code === 46 || // .
|
|
727
|
-
code === 45 || // -
|
|
728
|
-
code === 95) // _
|
|
729
|
-
) {
|
|
730
|
-
out.push(ch)
|
|
731
|
-
} else {
|
|
732
|
-
out.push("_")
|
|
733
|
-
}
|
|
734
|
-
}
|
|
735
|
-
|
|
736
|
-
return out.join("")
|
|
867
|
+
return s.length === 0 ? "_" : s.replace(/[^a-zA-Z0-9._-]/gu, "_");
|
|
737
868
|
}
|
|
738
869
|
|
|
739
|
-
function
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
870
|
+
function transformSchema(
|
|
871
|
+
node: unknown,
|
|
872
|
+
transform: (schema: Record<string, unknown>) => Record<string, unknown>
|
|
873
|
+
): unknown {
|
|
874
|
+
return walk(node)
|
|
744
875
|
|
|
745
|
-
|
|
746
|
-
|
|
876
|
+
function walk(node: unknown): unknown {
|
|
877
|
+
if (!Predicate.isObject(node) || Array.isArray(node)) return node
|
|
747
878
|
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
879
|
+
const out: Record<string, unknown> = {}
|
|
880
|
+
for (const key of Object.keys(node)) {
|
|
881
|
+
const value = node[key]
|
|
882
|
+
let transformed = value
|
|
883
|
+
if (DRAFT_2020_12_MAP_SUBSCHEMA_KEYWORDS.has(key)) {
|
|
884
|
+
transformed = Array.isArray(value) ? value : mapObject(value, walk) ?? value
|
|
885
|
+
} else if (DRAFT_2020_12_ARRAY_SUBSCHEMA_KEYWORDS.has(key)) {
|
|
886
|
+
transformed = Array.isArray(value) ? value.map(walk) : value
|
|
887
|
+
} else if (DRAFT_2020_12_SINGLE_SUBSCHEMA_KEYWORDS.has(key)) {
|
|
888
|
+
transformed = walk(value)
|
|
889
|
+
}
|
|
890
|
+
InternalRecord.assignProperty(out, key, transformed)
|
|
754
891
|
}
|
|
892
|
+
return transform(out)
|
|
755
893
|
}
|
|
894
|
+
}
|
|
756
895
|
|
|
757
|
-
|
|
896
|
+
function rewriteSchemaRef(
|
|
897
|
+
schema: Record<string, unknown>,
|
|
898
|
+
rewrite: ($ref: string) => string
|
|
899
|
+
): Record<string, unknown> {
|
|
900
|
+
if (typeof schema.$ref === "string") {
|
|
901
|
+
InternalRecord.assignProperty(schema, "$ref", rewrite(schema.$ref))
|
|
902
|
+
}
|
|
903
|
+
return schema
|
|
758
904
|
}
|
|
759
905
|
|
|
760
|
-
function
|
|
761
|
-
value: unknown,
|
|
762
|
-
walk: (node: unknown, isRoot: boolean) => unknown
|
|
763
|
-
): Record<string, unknown> | undefined {
|
|
906
|
+
function mapObject(value: unknown, f: (node: unknown) => unknown): Record<string, unknown> | undefined {
|
|
764
907
|
if (!Predicate.isObject(value)) return undefined
|
|
765
908
|
const out: Record<string, unknown> = {}
|
|
766
|
-
for (const k of Object.keys(value)) InternalRecord.assignProperty(out, k,
|
|
909
|
+
for (const k of Object.keys(value)) InternalRecord.assignProperty(out, k, f(value[k]))
|
|
767
910
|
return out
|
|
768
911
|
}
|
|
769
912
|
|
|
770
|
-
function
|
|
771
|
-
|
|
913
|
+
function rewriteSubschemaKeyword(
|
|
914
|
+
out: Record<string, unknown>,
|
|
915
|
+
key: string,
|
|
916
|
+
value: unknown,
|
|
917
|
+
rewrite: (node: unknown) => unknown,
|
|
918
|
+
singleKeywords: ReadonlySet<string>
|
|
919
|
+
): boolean {
|
|
920
|
+
if (MAP_SUBSCHEMA_KEYWORDS.has(key)) {
|
|
921
|
+
out[key] = mapObject(value, rewrite) ?? value
|
|
922
|
+
return true
|
|
923
|
+
}
|
|
924
|
+
if (ARRAY_SUBSCHEMA_KEYWORDS.has(key)) {
|
|
925
|
+
out[key] = Array.isArray(value) ? value.map(rewrite) : value
|
|
926
|
+
return true
|
|
927
|
+
}
|
|
928
|
+
if (!singleKeywords.has(key)) return false
|
|
929
|
+
out[key] = rewrite(value)
|
|
930
|
+
return true
|
|
931
|
+
}
|
|
932
|
+
|
|
933
|
+
function normalizeOpenApi3_0ToDraft07(node: unknown): unknown {
|
|
934
|
+
if (Array.isArray(node)) return node.map(normalizeOpenApi3_0ToDraft07)
|
|
772
935
|
if (!Predicate.isObject(node)) return node
|
|
773
936
|
|
|
774
937
|
const src = node as Record<string, unknown>
|
|
@@ -783,61 +946,61 @@ function normalize_OpenApi3_0_to_Draft07(node: unknown): unknown {
|
|
|
783
946
|
out.examples = [v]
|
|
784
947
|
}
|
|
785
948
|
} else if (Array.isArray(v) || Predicate.isObject(v)) {
|
|
786
|
-
InternalRecord.assignProperty(out, k,
|
|
949
|
+
InternalRecord.assignProperty(out, k, normalizeOpenApi3_0ToDraft07(v))
|
|
787
950
|
} else {
|
|
788
951
|
InternalRecord.assignProperty(out, k, v)
|
|
789
952
|
}
|
|
790
953
|
}
|
|
791
954
|
|
|
792
955
|
// Draft-04-style numeric exclusivity booleans
|
|
793
|
-
out =
|
|
956
|
+
out = adjustExclusivity(out)
|
|
794
957
|
|
|
795
958
|
// OpenAPI 3.0 nullable
|
|
796
959
|
if (out.nullable === true) {
|
|
797
|
-
out =
|
|
960
|
+
out = applyNullable(out)
|
|
798
961
|
}
|
|
799
962
|
delete out.nullable
|
|
800
963
|
|
|
801
964
|
return out
|
|
802
965
|
}
|
|
803
966
|
|
|
804
|
-
function
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
} else {
|
|
812
|
-
out = { ...out }
|
|
813
|
-
delete out.exclusiveMinimum
|
|
814
|
-
}
|
|
815
|
-
}
|
|
967
|
+
function adjustExclusivity(node: Record<string, unknown>): Record<string, unknown> {
|
|
968
|
+
return adjustExclusiveBound(
|
|
969
|
+
adjustExclusiveBound(node, "minimum", "exclusiveMinimum"),
|
|
970
|
+
"maximum",
|
|
971
|
+
"exclusiveMaximum"
|
|
972
|
+
)
|
|
973
|
+
}
|
|
816
974
|
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
975
|
+
function adjustExclusiveBound(
|
|
976
|
+
node: Record<string, unknown>,
|
|
977
|
+
boundKey: "minimum" | "maximum",
|
|
978
|
+
exclusiveKey: "exclusiveMinimum" | "exclusiveMaximum"
|
|
979
|
+
): Record<string, unknown> {
|
|
980
|
+
const exclusive = node[exclusiveKey]
|
|
981
|
+
if (typeof exclusive !== "boolean") return node
|
|
982
|
+
|
|
983
|
+
const out = { ...node }
|
|
984
|
+
if (exclusive && typeof node[boundKey] === "number") {
|
|
985
|
+
out[exclusiveKey] = node[boundKey]
|
|
986
|
+
delete out[boundKey]
|
|
987
|
+
} else {
|
|
988
|
+
delete out[exclusiveKey]
|
|
825
989
|
}
|
|
826
|
-
|
|
827
990
|
return out
|
|
828
991
|
}
|
|
829
992
|
|
|
830
|
-
function
|
|
993
|
+
function applyNullable(node: Record<string, unknown>): Record<string, unknown> {
|
|
831
994
|
// enum widening
|
|
832
995
|
if (Array.isArray(node.enum)) {
|
|
833
|
-
return
|
|
996
|
+
return widenType({
|
|
834
997
|
...node,
|
|
835
998
|
enum: node.enum.includes(null) ? node.enum : [...node.enum, null]
|
|
836
999
|
})
|
|
837
1000
|
}
|
|
838
1001
|
|
|
839
1002
|
// type widening
|
|
840
|
-
if (node.type !== undefined) return
|
|
1003
|
+
if (node.type !== undefined) return widenType(node)
|
|
841
1004
|
|
|
842
1005
|
// const === null
|
|
843
1006
|
if (node.const === null) return node
|
|
@@ -846,7 +1009,7 @@ function apply_nullable(node: Record<string, unknown>): Record<string, unknown>
|
|
|
846
1009
|
return { anyOf: [node, { type: "null" }] }
|
|
847
1010
|
}
|
|
848
1011
|
|
|
849
|
-
function
|
|
1012
|
+
function widenType(node: Record<string, unknown>): Record<string, unknown> {
|
|
850
1013
|
const t = node.type
|
|
851
1014
|
if (typeof t === "string") return t === "null" ? node : { ...node, type: [t, "null"] }
|
|
852
1015
|
if (Array.isArray(t)) return t.includes("null") ? node : { ...node, type: [...t, "null"] }
|
|
@@ -873,18 +1036,15 @@ function widen_type(node: Record<string, unknown>): Record<string, unknown> {
|
|
|
873
1036
|
*
|
|
874
1037
|
* **Example** (Resolving a $ref)
|
|
875
1038
|
*
|
|
876
|
-
* ```ts
|
|
1039
|
+
* ```ts import.meta.vitest
|
|
877
1040
|
* import { JsonSchema } from "effect"
|
|
878
1041
|
*
|
|
879
1042
|
* const definitions: JsonSchema.Definitions = {
|
|
880
1043
|
* User: { type: "object", properties: { name: { type: "string" } } }
|
|
881
1044
|
* }
|
|
882
1045
|
*
|
|
883
|
-
*
|
|
884
|
-
*
|
|
885
|
-
*
|
|
886
|
-
* const missing = JsonSchema.resolve$ref("#/$defs/Unknown", definitions)
|
|
887
|
-
* console.log(missing) // undefined
|
|
1046
|
+
* JsonSchema.resolve$ref("#/$defs/User", definitions) // => { type: "object", properties: { name: { type: "string" } } }
|
|
1047
|
+
* JsonSchema.resolve$ref("#/$defs/Unknown", definitions) // => undefined
|
|
888
1048
|
* ```
|
|
889
1049
|
*
|
|
890
1050
|
* @see {@link resolveTopLevel$ref}
|
|
@@ -894,10 +1054,8 @@ function widen_type(node: Record<string, unknown>): Record<string, unknown> {
|
|
|
894
1054
|
*/
|
|
895
1055
|
export function resolve$ref($ref: string, definitions: Definitions): JsonSchema | undefined {
|
|
896
1056
|
const tokens = $ref.split("/")
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
if (Object.hasOwn(definitions, identifier)) return definitions[identifier]
|
|
900
|
-
}
|
|
1057
|
+
const identifier = unescapeToken(tokens[tokens.length - 1])
|
|
1058
|
+
if (Object.hasOwn(definitions, identifier)) return definitions[identifier]
|
|
901
1059
|
}
|
|
902
1060
|
|
|
903
1061
|
/**
|
|
@@ -915,7 +1073,7 @@ export function resolve$ref($ref: string, definitions: Definitions): JsonSchema
|
|
|
915
1073
|
*
|
|
916
1074
|
* **Example** (Resolving a top-level $ref)
|
|
917
1075
|
*
|
|
918
|
-
* ```ts
|
|
1076
|
+
* ```ts import.meta.vitest
|
|
919
1077
|
* import { JsonSchema } from "effect"
|
|
920
1078
|
*
|
|
921
1079
|
* const doc: JsonSchema.Document<"draft-2020-12"> = {
|
|
@@ -927,7 +1085,7 @@ export function resolve$ref($ref: string, definitions: Definitions): JsonSchema
|
|
|
927
1085
|
* }
|
|
928
1086
|
*
|
|
929
1087
|
* const resolved = JsonSchema.resolveTopLevel$ref(doc)
|
|
930
|
-
*
|
|
1088
|
+
* resolved.schema // => { type: "object", properties: { name: { type: "string" } } }
|
|
931
1089
|
* ```
|
|
932
1090
|
*
|
|
933
1091
|
* @see {@link resolve$ref}
|