effect 4.0.0-rc.112 → 4.0.0-rc.113
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/AGENTS.md +24 -9
- package/CLAUDE.md +24 -9
- package/ai-docs/package.json +2 -2
- package/ai-docs/src/01_effect/01_basics/02_effect-fn.ts +18 -5
- package/ai-docs/src/01_effect/01_basics/index.md +5 -3
- package/ai-docs/src/01_effect/03_services/20_layer-composition.ts +1 -1
- package/ai-docs/src/01_effect/03_services/20_layer-unwrap.ts +2 -2
- package/ai-docs/src/01_effect/05_resources/10_acquire-release.ts +2 -2
- package/ai-docs/src/03_stream/30_encoding.ts +5 -7
- package/ai-docs/src/08_observability/10_logging.ts +1 -1
- package/ai-docs/src/70_cli/10_basics.ts +7 -7
- package/ai-docs/src/71_ai/10_language-model.ts +2 -2
- package/ai-docs/src/71_ai/20_tools.ts +1 -1
- package/ai-docs/src/71_ai/30_chat.ts +1 -1
- package/dist/Array.d.ts +86 -50
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +58 -32
- package/dist/Array.js.map +1 -1
- package/dist/BigDecimal.d.ts +5 -1
- package/dist/BigDecimal.d.ts.map +1 -1
- package/dist/BigDecimal.js +40 -23
- package/dist/BigDecimal.js.map +1 -1
- package/dist/ByteSize.d.ts +633 -0
- package/dist/ByteSize.d.ts.map +1 -0
- package/dist/ByteSize.js +524 -0
- package/dist/ByteSize.js.map +1 -0
- package/dist/Cache.d.ts.map +1 -1
- package/dist/Cache.js +17 -3
- package/dist/Cache.js.map +1 -1
- package/dist/Cause.d.ts +1 -1
- package/dist/Cause.d.ts.map +1 -1
- package/dist/Channel.d.ts +97 -24
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +66 -39
- package/dist/Channel.js.map +1 -1
- package/dist/Chunk.d.ts +49 -28
- package/dist/Chunk.d.ts.map +1 -1
- package/dist/Chunk.js +27 -18
- package/dist/Chunk.js.map +1 -1
- package/dist/Config.d.ts +162 -201
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js +103 -212
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.d.ts +4 -4
- package/dist/ConfigProvider.d.ts.map +1 -1
- package/dist/ConfigProvider.js +7 -7
- package/dist/ConfigProvider.js.map +1 -1
- package/dist/Context.d.ts +31 -0
- package/dist/Context.d.ts.map +1 -1
- package/dist/Context.js.map +1 -1
- package/dist/Cron.d.ts +2 -2
- package/dist/Cron.d.ts.map +1 -1
- package/dist/Cron.js +2 -2
- package/dist/Cron.js.map +1 -1
- package/dist/Crypto.d.ts +1 -1
- package/dist/Crypto.d.ts.map +1 -1
- package/dist/Crypto.js +3 -2
- package/dist/Crypto.js.map +1 -1
- package/dist/DateTime.d.ts +2 -2
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/Deferred.d.ts.map +1 -1
- package/dist/Deferred.js +6 -6
- package/dist/Deferred.js.map +1 -1
- package/dist/Duration.d.ts +1 -1
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +1 -1
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +220 -113
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +27 -26
- package/dist/Effect.js.map +1 -1
- package/dist/Effectable.d.ts +58 -2
- package/dist/Effectable.d.ts.map +1 -1
- package/dist/Effectable.js +58 -6
- package/dist/Effectable.js.map +1 -1
- package/dist/Encoding.d.ts +3 -1
- package/dist/Encoding.d.ts.map +1 -1
- package/dist/Encoding.js +40 -10
- package/dist/Encoding.js.map +1 -1
- package/dist/Equal.d.ts +1 -1
- package/dist/Equal.d.ts.map +1 -1
- package/dist/Equal.js +1 -1
- package/dist/Equal.js.map +1 -1
- package/dist/ExecutionPlan.d.ts.map +1 -1
- package/dist/ExecutionPlan.js +1 -0
- package/dist/ExecutionPlan.js.map +1 -1
- package/dist/Fiber.d.ts +32 -8
- package/dist/Fiber.d.ts.map +1 -1
- package/dist/Fiber.js.map +1 -1
- package/dist/FiberHandle.js +3 -3
- package/dist/FiberHandle.js.map +1 -1
- package/dist/FiberMap.d.ts +12 -6
- package/dist/FiberMap.d.ts.map +1 -1
- package/dist/FiberMap.js +11 -6
- package/dist/FiberMap.js.map +1 -1
- package/dist/FileSystem.d.ts +42 -210
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js +16 -148
- package/dist/FileSystem.js.map +1 -1
- package/dist/Formatter.d.ts +1 -0
- package/dist/Formatter.d.ts.map +1 -1
- package/dist/Formatter.js +19 -3
- package/dist/Formatter.js.map +1 -1
- package/dist/Graph.d.ts +48 -20
- package/dist/Graph.d.ts.map +1 -1
- package/dist/Graph.js +20 -5
- package/dist/Graph.js.map +1 -1
- package/dist/Hash.d.ts +1 -1
- package/dist/Hash.d.ts.map +1 -1
- package/dist/Hash.js +5 -14
- package/dist/Hash.js.map +1 -1
- package/dist/HashMap.d.ts +1 -1
- package/dist/HashMap.d.ts.map +1 -1
- package/dist/HashRing.d.ts +6 -1
- package/dist/HashRing.d.ts.map +1 -1
- package/dist/HashRing.js +9 -2
- package/dist/HashRing.js.map +1 -1
- package/dist/HashSet.d.ts +1 -1
- package/dist/HashSet.d.ts.map +1 -1
- package/dist/HashSet.js.map +1 -1
- package/dist/Iterable.d.ts +33 -15
- package/dist/Iterable.d.ts.map +1 -1
- package/dist/Iterable.js +58 -45
- package/dist/Iterable.js.map +1 -1
- package/dist/JsonPatch.js +4 -4
- package/dist/JsonPatch.js.map +1 -1
- package/dist/JsonPointer.d.ts +68 -4
- package/dist/JsonPointer.d.ts.map +1 -1
- package/dist/JsonPointer.js +90 -4
- package/dist/JsonPointer.js.map +1 -1
- package/dist/JsonSchema.js +8 -22
- package/dist/JsonSchema.js.map +1 -1
- package/dist/Layer.d.ts +47 -4
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js +4 -6
- package/dist/Layer.js.map +1 -1
- package/dist/LayerMap.d.ts +1 -3
- package/dist/LayerMap.d.ts.map +1 -1
- package/dist/LayerMap.js +7 -5
- package/dist/LayerMap.js.map +1 -1
- package/dist/LayerRef.d.ts.map +1 -1
- package/dist/LayerRef.js +7 -5
- package/dist/LayerRef.js.map +1 -1
- package/dist/Logger.d.ts +114 -9
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js +109 -9
- package/dist/Logger.js.map +1 -1
- package/dist/ManagedRuntime.js +1 -1
- package/dist/ManagedRuntime.js.map +1 -1
- package/dist/Match.d.ts +43 -31
- package/dist/Match.d.ts.map +1 -1
- package/dist/Match.js +5 -2
- package/dist/Match.js.map +1 -1
- package/dist/Metric.d.ts +11 -4
- package/dist/Metric.d.ts.map +1 -1
- package/dist/Metric.js +14 -18
- package/dist/Metric.js.map +1 -1
- package/dist/MutableHashMap.d.ts +1 -1
- package/dist/MutableHashMap.d.ts.map +1 -1
- package/dist/MutableHashMap.js +1 -1
- package/dist/MutableHashMap.js.map +1 -1
- package/dist/MutableHashSet.d.ts +1 -1
- package/dist/MutableHashSet.d.ts.map +1 -1
- package/dist/MutableHashSet.js +1 -1
- package/dist/MutableHashSet.js.map +1 -1
- package/dist/MutableList.d.ts +13 -2
- package/dist/MutableList.d.ts.map +1 -1
- package/dist/MutableList.js +18 -2
- package/dist/MutableList.js.map +1 -1
- package/dist/Number.d.ts +6 -0
- package/dist/Number.d.ts.map +1 -1
- package/dist/Number.js +3 -1
- package/dist/Number.js.map +1 -1
- package/dist/Optic.d.ts.map +1 -1
- package/dist/Optic.js +5 -4
- package/dist/Optic.js.map +1 -1
- package/dist/Option.d.ts +1 -1
- package/dist/Option.d.ts.map +1 -1
- package/dist/Option.js +1 -1
- package/dist/Option.js.map +1 -1
- package/dist/Order.d.ts +1 -0
- package/dist/Order.d.ts.map +1 -1
- package/dist/Order.js +3 -1
- package/dist/Order.js.map +1 -1
- package/dist/PartitionedSemaphore.d.ts.map +1 -1
- package/dist/PartitionedSemaphore.js +1 -2
- package/dist/PartitionedSemaphore.js.map +1 -1
- package/dist/Path.d.ts +1 -1
- package/dist/Path.d.ts.map +1 -1
- package/dist/Path.js +1 -1
- package/dist/Path.js.map +1 -1
- package/dist/PlatformError.d.ts +1 -1
- package/dist/PlatformError.d.ts.map +1 -1
- package/dist/PlatformError.js +1 -1
- package/dist/PlatformError.js.map +1 -1
- package/dist/Pool.d.ts +38 -1
- package/dist/Pool.d.ts.map +1 -1
- package/dist/Pool.js +81 -5
- package/dist/Pool.js.map +1 -1
- package/dist/PrimaryKey.d.ts +1 -1
- package/dist/PrimaryKey.d.ts.map +1 -1
- package/dist/PrimaryKey.js +1 -1
- package/dist/PrimaryKey.js.map +1 -1
- package/dist/PubSub.d.ts +21 -9
- package/dist/PubSub.d.ts.map +1 -1
- package/dist/PubSub.js +18 -14
- package/dist/PubSub.js.map +1 -1
- package/dist/Queue.d.ts +82 -6
- package/dist/Queue.d.ts.map +1 -1
- package/dist/Queue.js +116 -27
- package/dist/Queue.js.map +1 -1
- package/dist/Random.d.ts +17 -4
- package/dist/Random.d.ts.map +1 -1
- package/dist/Random.js +1 -1
- package/dist/Random.js.map +1 -1
- package/dist/RcMap.d.ts.map +1 -1
- package/dist/RcMap.js +15 -9
- package/dist/RcMap.js.map +1 -1
- package/dist/Redacted.d.ts +1 -1
- package/dist/Redacted.d.ts.map +1 -1
- package/dist/Redacted.js +1 -1
- package/dist/Redacted.js.map +1 -1
- package/dist/RequestResolver.d.ts +15 -9
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +33 -15
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Result.d.ts +1 -1
- package/dist/Result.d.ts.map +1 -1
- package/dist/Result.js +1 -1
- package/dist/Result.js.map +1 -1
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js +19 -10
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +2155 -2415
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +2755 -4174
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +354 -183
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +277 -601
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaGetter.d.ts +46 -22
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +56 -53
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaIssue.d.ts +122 -188
- package/dist/SchemaIssue.d.ts.map +1 -1
- package/dist/SchemaIssue.js +48 -263
- package/dist/SchemaIssue.js.map +1 -1
- package/dist/SchemaParser.js +2 -9
- package/dist/SchemaParser.js.map +1 -1
- package/dist/SchemaRepresentation.d.ts +1099 -16
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +1341 -20
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +49 -16
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +75 -98
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/ScopedCache.d.ts.map +1 -1
- package/dist/ScopedCache.js +10 -3
- package/dist/ScopedCache.js.map +1 -1
- package/dist/Sink.d.ts +9 -4
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js +49 -31
- package/dist/Sink.js.map +1 -1
- package/dist/Stream.d.ts +221 -35
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +168 -84
- package/dist/Stream.js.map +1 -1
- package/dist/String.d.ts +16 -6
- package/dist/String.d.ts.map +1 -1
- package/dist/String.js +12 -5
- package/dist/String.js.map +1 -1
- package/dist/Struct.d.ts.map +1 -1
- package/dist/Struct.js +7 -4
- package/dist/Struct.js.map +1 -1
- package/dist/SynchronizedRef.d.ts +3 -2
- package/dist/SynchronizedRef.d.ts.map +1 -1
- package/dist/SynchronizedRef.js.map +1 -1
- package/dist/Terminal.d.ts +3 -3
- package/dist/Terminal.d.ts.map +1 -1
- package/dist/Terminal.js +3 -3
- package/dist/Terminal.js.map +1 -1
- package/dist/Tracer.d.ts +27 -7
- package/dist/Tracer.d.ts.map +1 -1
- package/dist/Tracer.js +38 -13
- package/dist/Tracer.js.map +1 -1
- package/dist/Trie.d.ts +1 -1
- package/dist/Trie.d.ts.map +1 -1
- package/dist/Tuple.d.ts +2 -1
- package/dist/Tuple.d.ts.map +1 -1
- package/dist/Tuple.js.map +1 -1
- package/dist/TxChunk.d.ts +1 -1
- package/dist/TxChunk.d.ts.map +1 -1
- package/dist/TxChunk.js +1 -1
- package/dist/TxChunk.js.map +1 -1
- package/dist/TxDeferred.d.ts +1 -1
- package/dist/TxDeferred.d.ts.map +1 -1
- package/dist/TxDeferred.js +1 -1
- package/dist/TxDeferred.js.map +1 -1
- package/dist/TxHashMap.d.ts +1 -1
- package/dist/TxHashMap.d.ts.map +1 -1
- package/dist/TxHashMap.js +1 -1
- package/dist/TxHashMap.js.map +1 -1
- package/dist/TxHashSet.d.ts +1 -1
- package/dist/TxHashSet.d.ts.map +1 -1
- package/dist/TxHashSet.js +1 -1
- package/dist/TxHashSet.js.map +1 -1
- package/dist/TxPriorityQueue.d.ts +1 -1
- package/dist/TxPriorityQueue.d.ts.map +1 -1
- package/dist/TxPriorityQueue.js +1 -1
- package/dist/TxPriorityQueue.js.map +1 -1
- package/dist/TxPubSub.d.ts +1 -1
- package/dist/TxPubSub.d.ts.map +1 -1
- package/dist/TxPubSub.js +1 -1
- package/dist/TxPubSub.js.map +1 -1
- package/dist/TxQueue.d.ts +9 -9
- package/dist/TxQueue.d.ts.map +1 -1
- package/dist/TxQueue.js +93 -86
- package/dist/TxQueue.js.map +1 -1
- package/dist/TxReentrantLock.d.ts +29 -1
- package/dist/TxReentrantLock.d.ts.map +1 -1
- package/dist/TxReentrantLock.js +29 -1
- package/dist/TxReentrantLock.js.map +1 -1
- package/dist/TxRef.d.ts +1 -1
- package/dist/TxRef.d.ts.map +1 -1
- package/dist/TxRef.js +1 -1
- package/dist/TxRef.js.map +1 -1
- package/dist/TxSemaphore.d.ts +1 -1
- package/dist/TxSemaphore.d.ts.map +1 -1
- package/dist/TxSemaphore.js +1 -1
- package/dist/TxSemaphore.js.map +1 -1
- package/dist/TxSubscriptionRef.d.ts +1 -1
- package/dist/TxSubscriptionRef.d.ts.map +1 -1
- package/dist/TxSubscriptionRef.js +1 -1
- package/dist/TxSubscriptionRef.js.map +1 -1
- package/dist/Types.d.ts +33 -19
- package/dist/Types.d.ts.map +1 -1
- package/dist/Utils.d.ts.map +1 -1
- package/dist/Utils.js +2 -1
- package/dist/Utils.js.map +1 -1
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/internal/arbitrary/model.d.ts +2 -0
- package/dist/internal/arbitrary/model.d.ts.map +1 -0
- package/dist/internal/arbitrary/model.js +495 -0
- package/dist/internal/arbitrary/model.js.map +1 -0
- package/dist/internal/arbitrary/regexp.d.ts +2 -0
- package/dist/internal/arbitrary/regexp.d.ts.map +1 -0
- package/dist/internal/arbitrary/regexp.js +789 -0
- package/dist/internal/arbitrary/regexp.js.map +1 -0
- package/dist/internal/arbitrary/runner.d.ts +2 -0
- package/dist/internal/arbitrary/runner.d.ts.map +1 -0
- package/dist/internal/arbitrary/runner.js +496 -0
- package/dist/internal/arbitrary/runner.js.map +1 -0
- package/dist/internal/arbitrary/schema.d.ts.map +1 -0
- package/dist/internal/arbitrary/schema.js +1340 -0
- package/dist/internal/arbitrary/schema.js.map +1 -0
- package/dist/internal/core.js +27 -13
- package/dist/internal/core.js.map +1 -1
- package/dist/internal/count.d.ts +2 -0
- package/dist/internal/count.d.ts.map +1 -0
- package/dist/internal/count.js +14 -0
- package/dist/internal/count.js.map +1 -0
- package/dist/internal/dateTime.js +4 -10
- package/dist/internal/dateTime.js.map +1 -1
- package/dist/internal/effect.js +386 -251
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/graph.js +3 -1
- package/dist/internal/graph.js.map +1 -1
- package/dist/internal/hashMap.js +5 -3
- package/dist/internal/hashMap.js.map +1 -1
- package/dist/internal/hashSet.js +1 -1
- package/dist/internal/hashSet.js.map +1 -1
- package/dist/internal/matcher.js +1 -1
- package/dist/internal/matcher.js.map +1 -1
- package/dist/internal/metric.js +1 -1
- package/dist/internal/metric.js.map +1 -1
- package/dist/internal/option.js +6 -5
- package/dist/internal/option.js.map +1 -1
- package/dist/internal/random.js +17 -0
- package/dist/internal/random.js.map +1 -1
- package/dist/internal/rcRef.js +10 -7
- package/dist/internal/rcRef.js.map +1 -1
- package/dist/internal/references.js +1 -0
- package/dist/internal/references.js.map +1 -1
- package/dist/internal/request.js +13 -6
- package/dist/internal/request.js.map +1 -1
- package/dist/internal/result.js +11 -9
- package/dist/internal/result.js.map +1 -1
- package/dist/internal/schema/annotations.js +1 -1
- package/dist/internal/schema/annotations.js.map +1 -1
- package/dist/internal/schema/fromJsonSchemaDocument.js +14 -12
- package/dist/internal/schema/fromJsonSchemaDocument.js.map +1 -1
- package/dist/internal/schema/fromRepresentation.js +5 -5
- package/dist/internal/schema/fromRepresentation.js.map +1 -1
- package/dist/internal/schema/make.d.ts +2 -0
- package/dist/internal/schema/make.d.ts.map +1 -0
- package/dist/internal/schema/{schema.js → make.js} +1 -25
- package/dist/internal/schema/make.js.map +1 -0
- package/dist/internal/schema/parser.d.ts +0 -12
- package/dist/internal/schema/parser.d.ts.map +1 -1
- package/dist/internal/schema/parser.js +7 -0
- package/dist/internal/schema/parser.js.map +1 -1
- package/dist/internal/schema/standardSchema.d.ts +2 -0
- package/dist/internal/schema/standardSchema.d.ts.map +1 -0
- package/dist/internal/schema/standardSchema.js +112 -0
- package/dist/internal/schema/standardSchema.js.map +1 -0
- package/dist/internal/schema/toCodeDocument.js +34 -22
- package/dist/internal/schema/toCodeDocument.js.map +1 -1
- package/dist/internal/schema/toCodec.d.ts +2 -0
- package/dist/internal/schema/toCodec.d.ts.map +1 -0
- package/dist/internal/schema/toCodec.js +242 -0
- package/dist/internal/schema/toCodec.js.map +1 -0
- package/dist/internal/schema/toDifferJsonPatch.d.ts +2 -0
- package/dist/internal/schema/toDifferJsonPatch.d.ts.map +1 -0
- package/dist/internal/schema/toDifferJsonPatch.js +20 -0
- package/dist/internal/schema/toDifferJsonPatch.js.map +1 -0
- package/dist/internal/schema/toEncoderXml.d.ts +2 -0
- package/dist/internal/schema/toEncoderXml.d.ts.map +1 -0
- package/dist/internal/schema/toEncoderXml.js +104 -0
- package/dist/internal/schema/toEncoderXml.js.map +1 -0
- package/dist/internal/schema/toEquivalence.js +66 -0
- package/dist/internal/schema/toEquivalence.js.map +1 -1
- package/dist/internal/schema/toFormatter.d.ts +2 -0
- package/dist/internal/schema/toFormatter.d.ts.map +1 -0
- package/dist/internal/schema/toFormatter.js +227 -0
- package/dist/internal/schema/toFormatter.js.map +1 -0
- package/dist/internal/schema/toIso.d.ts +2 -0
- package/dist/internal/schema/toIso.d.ts.map +1 -0
- package/dist/internal/schema/toIso.js +17 -0
- package/dist/internal/schema/toIso.js.map +1 -0
- package/dist/internal/schema/toJsonSchemaDocument.js +122 -71
- package/dist/internal/schema/toJsonSchemaDocument.js.map +1 -1
- package/dist/internal/schema/toRepresentation.js +3 -1
- package/dist/internal/schema/toRepresentation.js.map +1 -1
- package/dist/internal/schemaError.d.ts +4 -0
- package/dist/internal/schemaError.d.ts.map +1 -0
- package/dist/internal/schemaError.js +6 -0
- package/dist/internal/schemaError.js.map +1 -0
- package/dist/internal/stream.js +5 -6
- package/dist/internal/stream.js.map +1 -1
- package/dist/internal/tracer.d.ts +1 -3
- package/dist/internal/tracer.d.ts.map +1 -1
- package/dist/internal/tracer.js +6 -0
- package/dist/internal/tracer.js.map +1 -1
- package/dist/internal/trie.js +2 -2
- package/dist/internal/trie.js.map +1 -1
- package/dist/internal/uuid.d.ts +1 -2
- package/dist/internal/uuid.d.ts.map +1 -1
- package/dist/internal/uuid.js +2 -0
- package/dist/internal/uuid.js.map +1 -1
- package/dist/testing/TestSchema.d.ts +9 -11
- package/dist/testing/TestSchema.d.ts.map +1 -1
- package/dist/testing/TestSchema.js +20 -18
- package/dist/testing/TestSchema.js.map +1 -1
- package/dist/testing/index.d.ts +0 -4
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +0 -4
- package/dist/testing/index.js.map +1 -1
- package/dist/unstable/ai/AiError.d.ts +74 -23
- package/dist/unstable/ai/AiError.d.ts.map +1 -1
- package/dist/unstable/ai/AiError.js +59 -5
- package/dist/unstable/ai/AiError.js.map +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.d.ts.map +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.js +2 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
- package/dist/unstable/ai/Chat.d.ts +27 -32
- package/dist/unstable/ai/Chat.d.ts.map +1 -1
- package/dist/unstable/ai/Chat.js +10 -13
- package/dist/unstable/ai/Chat.js.map +1 -1
- package/dist/unstable/ai/EmbeddingModel.d.ts +23 -16
- package/dist/unstable/ai/EmbeddingModel.d.ts.map +1 -1
- package/dist/unstable/ai/EmbeddingModel.js +13 -11
- package/dist/unstable/ai/EmbeddingModel.js.map +1 -1
- package/dist/unstable/ai/LanguageModel.d.ts +48 -37
- package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
- package/dist/unstable/ai/LanguageModel.js +150 -47
- package/dist/unstable/ai/LanguageModel.js.map +1 -1
- package/dist/unstable/ai/McpServer.d.ts +2 -2
- package/dist/unstable/ai/McpServer.d.ts.map +1 -1
- package/dist/unstable/ai/McpServer.js +21 -12
- package/dist/unstable/ai/McpServer.js.map +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.d.ts.map +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.js +2 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
- package/dist/unstable/ai/Prompt.d.ts +1 -1
- package/dist/unstable/ai/Prompt.d.ts.map +1 -1
- package/dist/unstable/ai/Prompt.js +15 -4
- package/dist/unstable/ai/Prompt.js.map +1 -1
- package/dist/unstable/ai/Response.d.ts +37 -94
- package/dist/unstable/ai/Response.d.ts.map +1 -1
- package/dist/unstable/ai/Response.js +46 -96
- package/dist/unstable/ai/Response.js.map +1 -1
- package/dist/unstable/ai/Tokenizer.js +4 -5
- package/dist/unstable/ai/Tokenizer.js.map +1 -1
- package/dist/unstable/ai/Tool.d.ts +38 -20
- package/dist/unstable/ai/Tool.d.ts.map +1 -1
- package/dist/unstable/ai/Tool.js +27 -1
- package/dist/unstable/ai/Tool.js.map +1 -1
- package/dist/unstable/ai/Toolkit.d.ts +1 -1
- package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
- package/dist/unstable/ai/Toolkit.js +30 -18
- package/dist/unstable/ai/Toolkit.js.map +1 -1
- package/dist/unstable/ai/internal/structured-output.js +8 -5
- package/dist/unstable/ai/internal/structured-output.js.map +1 -1
- package/dist/unstable/arbitrary/Arbitrary.d.ts +626 -0
- package/dist/unstable/arbitrary/Arbitrary.d.ts.map +1 -0
- package/dist/unstable/arbitrary/Arbitrary.js +238 -0
- package/dist/unstable/arbitrary/Arbitrary.js.map +1 -0
- package/dist/unstable/arbitrary/index.d.ts +8 -0
- package/dist/unstable/arbitrary/index.d.ts.map +1 -0
- package/dist/unstable/arbitrary/index.js +9 -0
- package/dist/unstable/arbitrary/index.js.map +1 -0
- package/dist/unstable/cli/Argument.d.ts +104 -108
- package/dist/unstable/cli/Argument.d.ts.map +1 -1
- package/dist/unstable/cli/Argument.js +56 -57
- package/dist/unstable/cli/Argument.js.map +1 -1
- package/dist/unstable/cli/CliError.d.ts +2 -0
- package/dist/unstable/cli/CliError.d.ts.map +1 -1
- package/dist/unstable/cli/CliError.js +2 -0
- package/dist/unstable/cli/CliError.js.map +1 -1
- package/dist/unstable/cli/CliOutput.js +26 -3
- package/dist/unstable/cli/CliOutput.js.map +1 -1
- package/dist/unstable/cli/Command.d.ts +73 -73
- package/dist/unstable/cli/Command.js +18 -18
- package/dist/unstable/cli/Completions.d.ts +4 -4
- package/dist/unstable/cli/Completions.d.ts.map +1 -1
- package/dist/unstable/cli/Flag.d.ts +150 -161
- package/dist/unstable/cli/Flag.d.ts.map +1 -1
- package/dist/unstable/cli/Flag.js +79 -90
- package/dist/unstable/cli/Flag.js.map +1 -1
- package/dist/unstable/cli/GlobalFlag.d.ts +3 -3
- package/dist/unstable/cli/GlobalFlag.js +13 -13
- package/dist/unstable/cli/GlobalFlag.js.map +1 -1
- package/dist/unstable/cli/Param.d.ts +118 -126
- package/dist/unstable/cli/Param.d.ts.map +1 -1
- package/dist/unstable/cli/Param.js +104 -113
- package/dist/unstable/cli/Param.js.map +1 -1
- package/dist/unstable/cli/Primitive.d.ts +69 -58
- package/dist/unstable/cli/Primitive.d.ts.map +1 -1
- package/dist/unstable/cli/Primitive.js +65 -66
- package/dist/unstable/cli/Primitive.js.map +1 -1
- package/dist/unstable/cli/Prompt.d.ts +23 -24
- package/dist/unstable/cli/Prompt.d.ts.map +1 -1
- package/dist/unstable/cli/Prompt.js +68 -63
- package/dist/unstable/cli/Prompt.js.map +1 -1
- package/dist/unstable/cli/internal/completions/descriptor.js +23 -11
- package/dist/unstable/cli/internal/completions/descriptor.js.map +1 -1
- package/dist/unstable/cli/internal/completions/zsh.js +2 -2
- package/dist/unstable/cli/internal/completions/zsh.js.map +1 -1
- package/dist/unstable/cli/internal/config.js +4 -4
- package/dist/unstable/cli/internal/parser.js +1 -1
- package/dist/unstable/cli/internal/parser.js.map +1 -1
- package/dist/unstable/cli/internal/wizard.d.ts.map +1 -1
- package/dist/unstable/cli/internal/wizard.js +14 -13
- package/dist/unstable/cli/internal/wizard.js.map +1 -1
- package/dist/unstable/cluster/ClusterSchema.d.ts +13 -0
- package/dist/unstable/cluster/ClusterSchema.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterSchema.js +16 -1
- 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 +57 -14
- package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/unstable/cluster/Entity.d.ts.map +1 -1
- package/dist/unstable/cluster/Entity.js +2 -0
- package/dist/unstable/cluster/Entity.js.map +1 -1
- package/dist/unstable/cluster/EntityProxyServer.d.ts +2 -2
- package/dist/unstable/cluster/EntityProxyServer.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
- package/dist/unstable/cluster/Envelope.d.ts +4 -4
- package/dist/unstable/cluster/Envelope.d.ts.map +1 -1
- package/dist/unstable/cluster/Envelope.js +2 -3
- package/dist/unstable/cluster/Envelope.js.map +1 -1
- package/dist/unstable/cluster/HttpRunner.d.ts.map +1 -1
- package/dist/unstable/cluster/HttpRunner.js +5 -2
- package/dist/unstable/cluster/HttpRunner.js.map +1 -1
- package/dist/unstable/cluster/MessageStorage.d.ts +34 -4
- package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/MessageStorage.js +28 -9
- package/dist/unstable/cluster/MessageStorage.js.map +1 -1
- package/dist/unstable/cluster/Reply.d.ts +1 -1
- package/dist/unstable/cluster/Sharding.d.ts +1 -1
- package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
- package/dist/unstable/cluster/Sharding.js +32 -17
- package/dist/unstable/cluster/Sharding.js.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.js +23 -23
- package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
- package/dist/unstable/cluster/SocketRunner.d.ts +2 -2
- package/dist/unstable/cluster/SocketRunner.d.ts.map +1 -1
- package/dist/unstable/cluster/SocketRunner.js +4 -3
- package/dist/unstable/cluster/SocketRunner.js.map +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.js +11 -8
- 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 +11 -4
- package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/internal/clusterAbandon.d.ts +5 -0
- package/dist/unstable/cluster/internal/clusterAbandon.d.ts.map +1 -0
- package/dist/unstable/cluster/internal/clusterAbandon.js +9 -0
- package/dist/unstable/cluster/internal/clusterAbandon.js.map +1 -0
- package/dist/unstable/cluster/internal/entityManager.js +7 -4
- package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
- package/dist/unstable/cluster/internal/interruptors.js +30 -1
- package/dist/unstable/cluster/internal/interruptors.js.map +1 -1
- package/dist/unstable/cluster/internal/resourceRef.js +12 -7
- package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
- package/dist/unstable/devtools/DevToolsClient.d.ts.map +1 -1
- package/dist/unstable/devtools/DevToolsClient.js +12 -7
- package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
- package/dist/unstable/encoding/Ini.d.ts +2 -0
- package/dist/unstable/encoding/Ini.d.ts.map +1 -1
- package/dist/unstable/encoding/Ini.js +2 -0
- package/dist/unstable/encoding/Ini.js.map +1 -1
- package/dist/unstable/encoding/SchemaBinary.d.ts +27 -3
- package/dist/unstable/encoding/SchemaBinary.d.ts.map +1 -1
- package/dist/unstable/encoding/SchemaBinary.js +108 -39
- package/dist/unstable/encoding/SchemaBinary.js.map +1 -1
- package/dist/unstable/encoding/Sse.js +1 -1
- package/dist/unstable/encoding/Sse.js.map +1 -1
- package/dist/unstable/encoding/Toml.d.ts +2 -0
- package/dist/unstable/encoding/Toml.d.ts.map +1 -1
- package/dist/unstable/encoding/Toml.js +6 -4
- package/dist/unstable/encoding/Toml.js.map +1 -1
- package/dist/unstable/encoding/Yaml.d.ts +2 -0
- package/dist/unstable/encoding/Yaml.d.ts.map +1 -1
- package/dist/unstable/encoding/Yaml.js +16 -5
- package/dist/unstable/encoding/Yaml.js.map +1 -1
- package/dist/unstable/encoding/index.d.ts +0 -4
- package/dist/unstable/encoding/index.d.ts.map +1 -1
- package/dist/unstable/encoding/index.js +0 -4
- package/dist/unstable/encoding/index.js.map +1 -1
- package/dist/unstable/eventlog/Event.d.ts +5 -5
- package/dist/unstable/eventlog/Event.d.ts.map +1 -1
- package/dist/unstable/eventlog/Event.js +3 -3
- package/dist/unstable/eventlog/Event.js.map +1 -1
- package/dist/unstable/eventlog/EventJournal.d.ts +7 -7
- package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventJournal.js +9 -9
- package/dist/unstable/eventlog/EventJournal.js.map +1 -1
- package/dist/unstable/eventlog/EventLog.d.ts +1 -1
- package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLog.js +4 -4
- package/dist/unstable/eventlog/EventLog.js.map +1 -1
- package/dist/unstable/eventlog/EventLogMessage.d.ts +11 -5
- package/dist/unstable/eventlog/EventLogMessage.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogMessage.js +25 -15
- package/dist/unstable/eventlog/EventLogMessage.js.map +1 -1
- package/dist/unstable/eventlog/EventLogRemote.d.ts +7 -1
- package/dist/unstable/eventlog/EventLogRemote.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogRemote.js +13 -3
- package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServerUnencrypted.js +2 -2
- package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventJournal.d.ts.map +1 -1
- package/dist/unstable/eventlog/SqlEventJournal.js +26 -13
- package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js +5 -1
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
- package/dist/unstable/http/Cookies.d.ts +1 -45
- package/dist/unstable/http/Cookies.d.ts.map +1 -1
- package/dist/unstable/http/Cookies.js +2 -64
- package/dist/unstable/http/Cookies.js.map +1 -1
- package/dist/unstable/http/FetchHttpClient.js +1 -1
- package/dist/unstable/http/FetchHttpClient.js.map +1 -1
- package/dist/unstable/http/FindMyWay/internal/router.js +124 -33
- package/dist/unstable/http/FindMyWay/internal/router.js.map +1 -1
- package/dist/unstable/http/FindMyWay.d.ts +15 -5
- package/dist/unstable/http/FindMyWay.d.ts.map +1 -1
- package/dist/unstable/http/FindMyWay.js +3 -1
- package/dist/unstable/http/FindMyWay.js.map +1 -1
- package/dist/unstable/http/Headers.d.ts +0 -22
- package/dist/unstable/http/Headers.d.ts.map +1 -1
- package/dist/unstable/http/Headers.js +3 -34
- package/dist/unstable/http/Headers.js.map +1 -1
- package/dist/unstable/http/HttpBody.d.ts +41 -10
- package/dist/unstable/http/HttpBody.d.ts.map +1 -1
- package/dist/unstable/http/HttpBody.js +64 -10
- package/dist/unstable/http/HttpBody.js.map +1 -1
- package/dist/unstable/http/HttpClient.d.ts +1 -1
- package/dist/unstable/http/HttpClient.d.ts.map +1 -1
- package/dist/unstable/http/HttpClient.js +28 -18
- package/dist/unstable/http/HttpClient.js.map +1 -1
- package/dist/unstable/http/HttpClientRequest.d.ts +28 -6
- package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientRequest.js +8 -19
- package/dist/unstable/http/HttpClientRequest.js.map +1 -1
- package/dist/unstable/http/HttpClientResponse.d.ts +6 -1
- package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientResponse.js +10 -6
- package/dist/unstable/http/HttpClientResponse.js.map +1 -1
- package/dist/unstable/http/HttpEffect.d.ts +16 -0
- package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
- package/dist/unstable/http/HttpEffect.js +121 -65
- package/dist/unstable/http/HttpEffect.js.map +1 -1
- package/dist/unstable/http/HttpIncomingMessage.d.ts +3 -3
- package/dist/unstable/http/HttpIncomingMessage.d.ts.map +1 -1
- package/dist/unstable/http/HttpIncomingMessage.js +1 -13
- package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
- package/dist/unstable/http/HttpMiddleware.d.ts +1 -1
- package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/unstable/http/HttpMiddleware.js +29 -21
- package/dist/unstable/http/HttpMiddleware.js.map +1 -1
- package/dist/unstable/http/HttpPlatform.d.ts +12 -11
- package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
- package/dist/unstable/http/HttpPlatform.js +36 -10
- package/dist/unstable/http/HttpPlatform.js.map +1 -1
- package/dist/unstable/http/HttpRouter.d.ts +5 -1
- package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
- package/dist/unstable/http/HttpRouter.js +22 -8
- package/dist/unstable/http/HttpRouter.js.map +1 -1
- package/dist/unstable/http/HttpServer.d.ts +11 -42
- package/dist/unstable/http/HttpServer.d.ts.map +1 -1
- package/dist/unstable/http/HttpServer.js +16 -20
- package/dist/unstable/http/HttpServer.js.map +1 -1
- package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerRequest.js +11 -11
- package/dist/unstable/http/HttpServerRequest.js.map +1 -1
- package/dist/unstable/http/HttpServerRespondable.js +1 -1
- package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
- package/dist/unstable/http/HttpServerResponse.d.ts +9 -13
- package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerResponse.js +34 -44
- package/dist/unstable/http/HttpServerResponse.js.map +1 -1
- package/dist/unstable/http/HttpStaticServer.d.ts +2 -2
- package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -1
- package/dist/unstable/http/HttpStaticServer.js +19 -19
- package/dist/unstable/http/HttpStaticServer.js.map +1 -1
- package/dist/unstable/http/Mime.d.ts +28 -0
- package/dist/unstable/http/Mime.d.ts.map +1 -0
- package/dist/unstable/http/Mime.js +72 -0
- package/dist/unstable/http/Mime.js.map +1 -0
- package/dist/unstable/http/Multipart.d.ts +22 -9
- package/dist/unstable/http/Multipart.d.ts.map +1 -1
- package/dist/unstable/http/Multipart.js +26 -10
- package/dist/unstable/http/Multipart.js.map +1 -1
- package/dist/unstable/http/MultipartParser/internal/multipart.d.ts +1 -1
- package/dist/unstable/http/MultipartParser/internal/multipart.d.ts.map +1 -1
- package/dist/unstable/http/MultipartParser/internal/multipart.js +8 -3
- package/dist/unstable/http/MultipartParser/internal/multipart.js.map +1 -1
- package/dist/unstable/http/MultipartParser.d.ts +4 -3
- package/dist/unstable/http/MultipartParser.d.ts.map +1 -1
- package/dist/unstable/http/MultipartParser.js.map +1 -1
- package/dist/unstable/http/UrlParams.d.ts +0 -97
- package/dist/unstable/http/UrlParams.d.ts.map +1 -1
- package/dist/unstable/http/UrlParams.js +3 -104
- package/dist/unstable/http/UrlParams.js.map +1 -1
- package/dist/unstable/http/index.d.ts +4 -0
- package/dist/unstable/http/index.d.ts.map +1 -1
- package/dist/unstable/http/index.js +4 -0
- package/dist/unstable/http/index.js.map +1 -1
- package/dist/unstable/http/internal/compression.js +8 -11
- package/dist/unstable/http/internal/compression.js.map +1 -1
- package/dist/unstable/http/internal/headers.d.ts +2 -0
- package/dist/unstable/http/internal/headers.d.ts.map +1 -0
- package/dist/unstable/http/internal/headers.js +5 -0
- package/dist/unstable/http/internal/headers.js.map +1 -0
- package/dist/unstable/http/internal/httpBody.js +8 -0
- package/dist/unstable/http/internal/httpBody.js.map +1 -1
- package/dist/unstable/http/internal/mimeTypes.d.ts +361 -0
- package/dist/unstable/http/internal/mimeTypes.d.ts.map +1 -0
- package/dist/unstable/http/internal/mimeTypes.js +363 -0
- package/dist/unstable/http/internal/mimeTypes.js.map +1 -0
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts +13 -0
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.js +23 -6
- package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.d.ts +4 -3
- package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.js +25 -13
- package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +8 -3
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.js +9 -6
- package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.js +3 -1
- package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.js +7 -5
- package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSchema.d.ts +12 -0
- package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiSchema.js +8 -10
- package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiTest.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiTest.js +8 -2
- package/dist/unstable/httpapi/HttpApiTest.js.map +1 -1
- package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/OpenApi.js +31 -20
- package/dist/unstable/httpapi/OpenApi.js.map +1 -1
- package/dist/unstable/net/IpInterface.d.ts +140 -0
- package/dist/unstable/net/IpInterface.d.ts.map +1 -0
- package/dist/unstable/net/IpInterface.js +149 -0
- package/dist/unstable/net/IpInterface.js.map +1 -0
- package/dist/unstable/net/IpNetwork.d.ts +227 -0
- package/dist/unstable/net/IpNetwork.d.ts.map +1 -0
- package/dist/unstable/net/IpNetwork.js +239 -0
- package/dist/unstable/net/IpNetwork.js.map +1 -0
- package/dist/unstable/net/NetAddress.d.ts +705 -0
- package/dist/unstable/net/NetAddress.d.ts.map +1 -0
- package/dist/unstable/net/NetAddress.js +956 -0
- package/dist/unstable/net/NetAddress.js.map +1 -0
- package/dist/unstable/net/index.d.ts +16 -0
- package/dist/unstable/net/index.d.ts.map +1 -0
- package/dist/unstable/net/index.js +17 -0
- package/dist/unstable/net/index.js.map +1 -0
- package/dist/unstable/observability/OtlpExporter.d.ts +1 -0
- package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpExporter.js +4 -6
- package/dist/unstable/observability/OtlpExporter.js.map +1 -1
- package/dist/unstable/observability/OtlpLogger.js +9 -9
- package/dist/unstable/observability/OtlpLogger.js.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.js +9 -8
- package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
- package/dist/unstable/observability/OtlpResource.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpResource.js +2 -2
- package/dist/unstable/observability/OtlpResource.js.map +1 -1
- package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpTracer.js +82 -55
- package/dist/unstable/observability/OtlpTracer.js.map +1 -1
- package/dist/unstable/observability/internal/otlpEnv.d.ts +1 -1
- package/dist/unstable/observability/internal/otlpEnv.d.ts.map +1 -1
- package/dist/unstable/observability/internal/otlpEnv.js +5 -9
- package/dist/unstable/observability/internal/otlpEnv.js.map +1 -1
- package/dist/unstable/persistence/PersistedCache.js +1 -1
- package/dist/unstable/persistence/PersistedCache.js.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.d.ts +114 -14
- package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.js +799 -234
- package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
- package/dist/unstable/persistence/RateLimiter.d.ts +28 -15
- package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
- package/dist/unstable/persistence/RateLimiter.js +33 -41
- package/dist/unstable/persistence/RateLimiter.js.map +1 -1
- package/dist/unstable/process/ChildProcess.d.ts +8 -2
- package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcess.js +7 -2
- package/dist/unstable/process/ChildProcess.js.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.d.ts +1 -1
- 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/reactivity/Atom.d.ts.map +1 -1
- package/dist/unstable/reactivity/Atom.js +6 -3
- package/dist/unstable/reactivity/Atom.js.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.d.ts +3 -6
- package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.js +6 -3
- package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.js +2 -3
- package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.d.ts +2 -2
- package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.js +1 -1
- package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
- package/dist/unstable/reactivity/Hydration.d.ts +6 -4
- package/dist/unstable/reactivity/Hydration.d.ts.map +1 -1
- package/dist/unstable/reactivity/Hydration.js +20 -6
- package/dist/unstable/reactivity/Hydration.js.map +1 -1
- package/dist/unstable/reactivity/Reactivity.d.ts +26 -26
- package/dist/unstable/reactivity/Reactivity.d.ts.map +1 -1
- package/dist/unstable/reactivity/Reactivity.js +10 -12
- package/dist/unstable/reactivity/Reactivity.js.map +1 -1
- package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClient.js +64 -64
- package/dist/unstable/rpc/RpcClient.js.map +1 -1
- package/dist/unstable/rpc/RpcClientError.d.ts +1 -1
- package/dist/unstable/rpc/RpcMessage.d.ts +3 -1
- package/dist/unstable/rpc/RpcMessage.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcMessage.js +1 -1
- package/dist/unstable/rpc/RpcMessage.js.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.js +7 -5
- package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.d.ts +5 -39
- package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.js +22 -115
- package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
- package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcServer.js +104 -57
- package/dist/unstable/rpc/RpcServer.js.map +1 -1
- package/dist/unstable/schema/Model.d.ts.map +1 -1
- package/dist/unstable/schema/Model.js +7 -6
- package/dist/unstable/schema/Model.js.map +1 -1
- package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
- package/dist/unstable/schema/VariantSchema.js +3 -0
- package/dist/unstable/schema/VariantSchema.js.map +1 -1
- package/dist/unstable/socket/Socket.d.ts +287 -102
- package/dist/unstable/socket/Socket.d.ts.map +1 -1
- package/dist/unstable/socket/Socket.js +408 -215
- package/dist/unstable/socket/Socket.js.map +1 -1
- package/dist/unstable/socket/SocketServer.d.ts +5 -32
- package/dist/unstable/socket/SocketServer.d.ts.map +1 -1
- package/dist/unstable/socket/SocketServer.js +3 -3
- package/dist/unstable/socket/SocketServer.js.map +1 -1
- package/dist/unstable/sql/SqlClient.d.ts +20 -0
- package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
- package/dist/unstable/sql/SqlClient.js +14 -7
- package/dist/unstable/sql/SqlClient.js.map +1 -1
- package/dist/unstable/sql/SqlConnection.d.ts +15 -0
- package/dist/unstable/sql/SqlConnection.d.ts.map +1 -1
- package/dist/unstable/sql/SqlConnection.js.map +1 -1
- package/dist/unstable/sql/SqlModel.d.ts +1 -1
- package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
- package/dist/unstable/sql/Statement.d.ts +13 -5
- package/dist/unstable/sql/Statement.d.ts.map +1 -1
- package/dist/unstable/sql/Statement.js +29 -15
- package/dist/unstable/sql/Statement.js.map +1 -1
- package/dist/unstable/workers/Transferable.js +1 -1
- package/dist/unstable/workers/Worker.d.ts.map +1 -1
- package/dist/unstable/workers/Worker.js +3 -1
- package/dist/unstable/workers/Worker.js.map +1 -1
- package/dist/unstable/workflow/Activity.d.ts +7 -0
- package/dist/unstable/workflow/Activity.d.ts.map +1 -1
- package/dist/unstable/workflow/Activity.js +14 -4
- package/dist/unstable/workflow/Activity.js.map +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 +2 -2
- package/dist/unstable/workflow/DurableDeferred.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
- package/dist/unstable/workflow/DurableQueue.d.ts +8 -0
- package/dist/unstable/workflow/DurableQueue.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableQueue.js +8 -0
- package/dist/unstable/workflow/DurableQueue.js.map +1 -1
- package/dist/unstable/workflow/Workflow.d.ts +5 -0
- package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
- package/dist/unstable/workflow/Workflow.js +70 -12
- package/dist/unstable/workflow/Workflow.js.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.d.ts +6 -0
- package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.js +11 -0
- package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
- package/package.json +7 -9
- package/src/Array.ts +118 -67
- package/src/BigDecimal.ts +50 -28
- package/src/ByteSize.ts +838 -0
- package/src/Cache.ts +17 -3
- package/src/Cause.ts +1 -1
- package/src/Channel.ts +183 -48
- package/src/Chunk.ts +65 -36
- package/src/Config.ts +237 -248
- package/src/ConfigProvider.ts +7 -8
- package/src/Context.ts +31 -0
- package/src/Cron.ts +2 -2
- package/src/Crypto.ts +3 -2
- package/src/Deferred.ts +7 -6
- package/src/Duration.ts +1 -1
- package/src/Effect.ts +226 -122
- package/src/Effectable.ts +78 -9
- package/src/Encoding.ts +101 -11
- package/src/Equal.ts +1 -1
- package/src/ExecutionPlan.ts +3 -0
- package/src/Fiber.ts +33 -8
- package/src/FiberHandle.ts +3 -3
- package/src/FiberMap.ts +19 -10
- package/src/FileSystem.ts +55 -230
- package/src/Formatter.ts +21 -3
- package/src/Graph.ts +55 -25
- package/src/Hash.ts +5 -16
- package/src/HashRing.ts +9 -2
- package/src/HashSet.ts +56 -0
- package/src/Iterable.ts +66 -41
- package/src/JsonPatch.ts +4 -4
- package/src/JsonPointer.ts +97 -4
- package/src/JsonSchema.ts +8 -26
- package/src/Layer.ts +59 -18
- package/src/LayerMap.ts +8 -6
- package/src/LayerRef.ts +7 -5
- package/src/Logger.ts +125 -18
- package/src/ManagedRuntime.ts +1 -1
- package/src/Match.ts +33 -14
- package/src/Metric.ts +24 -21
- package/src/MutableHashMap.ts +1 -1
- package/src/MutableHashSet.ts +1 -1
- package/src/MutableList.ts +18 -2
- package/src/Number.ts +7 -1
- package/src/Optic.ts +8 -4
- package/src/Option.ts +1 -1
- package/src/Order.ts +3 -1
- package/src/PartitionedSemaphore.ts +1 -2
- package/src/Path.ts +1 -1
- package/src/PlatformError.ts +1 -1
- package/src/Pool.ts +125 -8
- package/src/PrimaryKey.ts +1 -1
- package/src/PubSub.ts +32 -20
- package/src/Queue.ts +119 -28
- package/src/Random.ts +20 -6
- package/src/RcMap.ts +20 -13
- package/src/Redacted.ts +1 -1
- package/src/RequestResolver.ts +49 -26
- package/src/Result.ts +1 -1
- package/src/Scheduler.ts +21 -11
- package/src/Schema.ts +4809 -6368
- package/src/SchemaAST.ts +1031 -284
- package/src/SchemaGetter.ts +75 -21
- package/src/SchemaIssue.ts +259 -15
- package/src/SchemaParser.ts +2 -12
- package/src/SchemaRepresentation.ts +1593 -29
- package/src/SchemaTransformation.ts +145 -22
- package/src/ScopedCache.ts +10 -3
- package/src/Sink.ts +31 -15
- package/src/Stream.ts +294 -76
- package/src/String.ts +20 -9
- package/src/Struct.ts +8 -4
- package/src/SynchronizedRef.ts +3 -5
- package/src/Terminal.ts +3 -3
- package/src/Tracer.ts +43 -14
- package/src/Tuple.ts +3 -1
- package/src/TxChunk.ts +1 -1
- package/src/TxDeferred.ts +1 -1
- package/src/TxHashMap.ts +1 -1
- package/src/TxHashSet.ts +92 -11
- package/src/TxPriorityQueue.ts +1 -1
- package/src/TxPubSub.ts +1 -1
- package/src/TxQueue.ts +22 -17
- package/src/TxReentrantLock.ts +29 -1
- package/src/TxRef.ts +1 -1
- package/src/TxSemaphore.ts +1 -1
- package/src/TxSubscriptionRef.ts +1 -1
- package/src/Types.ts +40 -17
- package/src/Utils.ts +3 -1
- package/src/index.ts +5 -0
- package/src/internal/arbitrary/model.ts +701 -0
- package/src/internal/arbitrary/regexp.ts +855 -0
- package/src/internal/arbitrary/runner.ts +608 -0
- package/src/internal/arbitrary/schema.ts +1800 -0
- package/src/internal/core.ts +48 -22
- package/src/internal/count.ts +14 -0
- package/src/internal/dateTime.ts +8 -10
- package/src/internal/effect.ts +475 -295
- package/src/internal/graph.ts +6 -1
- package/src/internal/hashMap.ts +5 -3
- package/src/internal/hashSet.ts +1 -1
- package/src/internal/matcher.ts +34 -19
- package/src/internal/metric.ts +1 -1
- package/src/internal/option.ts +8 -6
- package/src/internal/random.ts +20 -7
- package/src/internal/rcRef.ts +10 -7
- package/src/internal/references.ts +1 -0
- package/src/internal/request.ts +12 -7
- package/src/internal/result.ts +15 -11
- package/src/internal/schema/annotations.ts +3 -3
- package/src/internal/schema/fromJsonSchemaDocument.ts +14 -29
- package/src/internal/schema/fromRepresentation.ts +5 -3
- package/src/internal/schema/{schema.ts → make.ts} +0 -40
- package/src/internal/schema/parser.ts +8 -0
- package/src/internal/schema/standardSchema.ts +125 -0
- package/src/internal/schema/toCodeDocument.ts +58 -44
- package/src/internal/schema/toCodec.ts +312 -0
- package/src/internal/schema/toDifferJsonPatch.ts +24 -0
- package/src/internal/schema/toEncoderXml.ts +110 -0
- package/src/internal/schema/toEquivalence.ts +76 -0
- package/src/internal/schema/toFormatter.ts +230 -0
- package/src/internal/schema/toIso.ts +20 -0
- package/src/internal/schema/toJsonSchemaDocument.ts +125 -67
- package/src/internal/schema/toRepresentation.ts +1 -1
- package/src/internal/schemaError.ts +8 -0
- package/src/internal/stream.ts +14 -6
- package/src/internal/tracer.ts +4 -0
- package/src/internal/trie.ts +5 -2
- package/src/internal/uuid.ts +4 -0
- package/src/testing/TestSchema.ts +36 -30
- package/src/testing/index.ts +0 -5
- package/src/unstable/ai/AiError.ts +69 -5
- package/src/unstable/ai/AnthropicStructuredOutput.ts +4 -1
- package/src/unstable/ai/Chat.ts +35 -36
- package/src/unstable/ai/EmbeddingModel.ts +27 -15
- package/src/unstable/ai/LanguageModel.ts +283 -100
- package/src/unstable/ai/McpServer.ts +36 -20
- package/src/unstable/ai/OpenAiStructuredOutput.ts +4 -1
- package/src/unstable/ai/Prompt.ts +19 -4
- package/src/unstable/ai/Response.ts +107 -189
- package/src/unstable/ai/Tokenizer.ts +4 -5
- package/src/unstable/ai/Tool.ts +58 -35
- package/src/unstable/ai/Toolkit.ts +43 -37
- package/src/unstable/ai/internal/structured-output.ts +5 -5
- package/src/unstable/arbitrary/Arbitrary.ts +715 -0
- package/src/unstable/arbitrary/index.ts +10 -0
- package/src/unstable/cli/Argument.ts +111 -115
- package/src/unstable/cli/CliError.ts +2 -0
- package/src/unstable/cli/CliOutput.ts +40 -3
- package/src/unstable/cli/Command.ts +74 -74
- package/src/unstable/cli/Completions.ts +4 -4
- package/src/unstable/cli/Flag.ts +158 -169
- package/src/unstable/cli/GlobalFlag.ts +13 -13
- package/src/unstable/cli/Param.ts +150 -159
- package/src/unstable/cli/Primitive.ts +75 -76
- package/src/unstable/cli/Prompt.ts +88 -87
- package/src/unstable/cli/internal/completions/descriptor.ts +23 -11
- package/src/unstable/cli/internal/completions/zsh.ts +2 -2
- package/src/unstable/cli/internal/config.ts +4 -4
- package/src/unstable/cli/internal/parser.ts +1 -1
- package/src/unstable/cli/internal/wizard.ts +18 -13
- package/src/unstable/cluster/ClusterSchema.ts +19 -1
- package/src/unstable/cluster/ClusterWorkflowEngine.ts +66 -16
- package/src/unstable/cluster/Entity.ts +3 -0
- package/src/unstable/cluster/EntityProxyServer.ts +6 -2
- package/src/unstable/cluster/Envelope.ts +3 -3
- package/src/unstable/cluster/HttpRunner.ts +7 -2
- package/src/unstable/cluster/MessageStorage.ts +62 -21
- package/src/unstable/cluster/Reply.ts +2 -2
- package/src/unstable/cluster/Sharding.ts +44 -19
- package/src/unstable/cluster/ShardingConfig.ts +23 -23
- package/src/unstable/cluster/SocketRunner.ts +5 -4
- package/src/unstable/cluster/SqlMessageStorage.ts +12 -8
- package/src/unstable/cluster/SqlRunnerStorage.ts +18 -10
- package/src/unstable/cluster/internal/clusterAbandon.ts +14 -0
- package/src/unstable/cluster/internal/entityManager.ts +12 -4
- package/src/unstable/cluster/internal/interruptors.ts +58 -1
- package/src/unstable/cluster/internal/resourceRef.ts +15 -7
- package/src/unstable/devtools/DevToolsClient.ts +13 -3
- package/src/unstable/encoding/Ini.ts +2 -0
- package/src/unstable/encoding/SchemaBinary.ts +150 -44
- package/src/unstable/encoding/Sse.ts +1 -1
- package/src/unstable/encoding/Toml.ts +7 -5
- package/src/unstable/encoding/Yaml.ts +18 -5
- package/src/unstable/encoding/index.ts +0 -5
- package/src/unstable/eventlog/Event.ts +7 -7
- package/src/unstable/eventlog/EventJournal.ts +9 -9
- package/src/unstable/eventlog/EventLog.ts +5 -5
- package/src/unstable/eventlog/EventLogMessage.ts +25 -15
- package/src/unstable/eventlog/EventLogRemote.ts +15 -4
- package/src/unstable/eventlog/EventLogServerUnencrypted.ts +2 -2
- package/src/unstable/eventlog/SqlEventJournal.ts +32 -9
- package/src/unstable/eventlog/SqlEventLogServerUnencrypted.ts +11 -1
- package/src/unstable/http/Cookies.ts +2 -102
- package/src/unstable/http/FetchHttpClient.ts +1 -1
- package/src/unstable/http/FindMyWay/internal/router.ts +139 -33
- package/src/unstable/http/FindMyWay.ts +15 -5
- package/src/unstable/http/Headers.ts +3 -48
- package/src/unstable/http/HttpBody.ts +107 -36
- package/src/unstable/http/HttpClient.ts +41 -30
- package/src/unstable/http/HttpClientRequest.ts +32 -18
- package/src/unstable/http/HttpClientResponse.ts +16 -3
- package/src/unstable/http/HttpEffect.ts +145 -73
- package/src/unstable/http/HttpIncomingMessage.ts +4 -4
- package/src/unstable/http/HttpMiddleware.ts +43 -24
- package/src/unstable/http/HttpPlatform.ts +62 -20
- package/src/unstable/http/HttpRouter.ts +27 -16
- package/src/unstable/http/HttpServer.ts +18 -57
- package/src/unstable/http/HttpServerRequest.ts +17 -15
- package/src/unstable/http/HttpServerRespondable.ts +1 -1
- package/src/unstable/http/HttpServerResponse.ts +49 -40
- package/src/unstable/http/HttpStaticServer.ts +30 -28
- package/src/unstable/http/Mime.ts +76 -0
- package/src/unstable/http/Multipart.ts +35 -18
- package/src/unstable/http/MultipartParser/internal/multipart.ts +10 -3
- package/src/unstable/http/MultipartParser.ts +4 -3
- package/src/unstable/http/UrlParams.ts +3 -161
- package/src/unstable/http/index.ts +5 -0
- package/src/unstable/http/internal/compression.ts +11 -12
- package/src/unstable/http/internal/headers.ts +7 -0
- package/src/unstable/http/internal/httpBody.ts +9 -0
- package/src/unstable/http/internal/mimeTypes.ts +395 -0
- package/src/unstable/httpapi/HttpApiBuilder.ts +52 -6
- package/src/unstable/httpapi/HttpApiClient.ts +44 -24
- package/src/unstable/httpapi/HttpApiEndpoint.ts +24 -11
- package/src/unstable/httpapi/HttpApiError.ts +3 -1
- package/src/unstable/httpapi/HttpApiMiddleware.ts +7 -5
- package/src/unstable/httpapi/HttpApiSchema.ts +14 -7
- package/src/unstable/httpapi/HttpApiTest.ts +6 -1
- package/src/unstable/httpapi/OpenApi.ts +32 -22
- package/src/unstable/net/IpInterface.ts +242 -0
- package/src/unstable/net/IpNetwork.ts +357 -0
- package/src/unstable/net/NetAddress.ts +1271 -0
- package/src/unstable/net/index.ts +20 -0
- package/src/unstable/observability/OtlpExporter.ts +5 -6
- package/src/unstable/observability/OtlpLogger.ts +9 -9
- package/src/unstable/observability/OtlpMetrics.ts +9 -8
- package/src/unstable/observability/OtlpResource.ts +5 -4
- package/src/unstable/observability/OtlpTracer.ts +103 -81
- package/src/unstable/observability/internal/otlpEnv.ts +10 -13
- package/src/unstable/persistence/PersistedCache.ts +1 -1
- package/src/unstable/persistence/PersistedQueue.ts +1100 -291
- package/src/unstable/persistence/RateLimiter.ts +64 -58
- package/src/unstable/process/ChildProcess.ts +15 -4
- package/src/unstable/process/ChildProcessSpawner.ts +1 -1
- package/src/unstable/reactivity/Atom.ts +6 -3
- package/src/unstable/reactivity/AtomHttpApi.ts +21 -10
- package/src/unstable/reactivity/AtomRegistry.ts +2 -4
- package/src/unstable/reactivity/AtomRpc.ts +6 -5
- package/src/unstable/reactivity/Hydration.ts +26 -7
- package/src/unstable/reactivity/Reactivity.ts +49 -36
- package/src/unstable/rpc/RpcClient.ts +62 -59
- package/src/unstable/rpc/RpcMessage.ts +3 -1
- package/src/unstable/rpc/RpcMiddleware.ts +7 -5
- package/src/unstable/rpc/RpcSerialization.ts +27 -117
- package/src/unstable/rpc/RpcServer.ts +143 -80
- package/src/unstable/schema/Model.ts +8 -7
- package/src/unstable/schema/VariantSchema.ts +3 -0
- package/src/unstable/socket/Socket.ts +714 -383
- package/src/unstable/socket/SocketServer.ts +5 -35
- package/src/unstable/sql/SqlClient.ts +42 -7
- package/src/unstable/sql/SqlConnection.ts +18 -0
- package/src/unstable/sql/SqlModel.ts +1 -1
- package/src/unstable/sql/Statement.ts +46 -20
- package/src/unstable/workers/Transferable.ts +1 -1
- package/src/unstable/workers/Worker.ts +3 -1
- package/src/unstable/workflow/Activity.ts +20 -9
- package/src/unstable/workflow/DurableClock.ts +1 -1
- package/src/unstable/workflow/DurableDeferred.ts +6 -0
- package/src/unstable/workflow/DurableQueue.ts +8 -0
- package/src/unstable/workflow/Workflow.ts +105 -28
- package/src/unstable/workflow/WorkflowEngine.ts +22 -0
- package/dist/internal/schema/schema.d.ts.map +0 -1
- package/dist/internal/schema/schema.js.map +0 -1
- package/dist/internal/schema/toArbitrary.d.ts +0 -2
- package/dist/internal/schema/toArbitrary.d.ts.map +0 -1
- package/dist/internal/schema/toArbitrary.js +0 -705
- package/dist/internal/schema/toArbitrary.js.map +0 -1
- package/dist/testing/FastCheck.d.ts +0 -90
- package/dist/testing/FastCheck.d.ts.map +0 -1
- package/dist/testing/FastCheck.js +0 -90
- package/dist/testing/FastCheck.js.map +0 -1
- package/dist/unstable/encoding/Msgpack.d.ts +0 -185
- package/dist/unstable/encoding/Msgpack.d.ts.map +0 -1
- package/dist/unstable/encoding/Msgpack.js +0 -227
- package/dist/unstable/encoding/Msgpack.js.map +0 -1
- package/src/internal/schema/toArbitrary.ts +0 -843
- package/src/testing/FastCheck.ts +0 -90
- package/src/unstable/encoding/Msgpack.ts +0 -432
- /package/dist/internal/{schema → arbitrary}/schema.d.ts +0 -0
|
@@ -70,6 +70,8 @@ const unquote = input => {
|
|
|
70
70
|
/**
|
|
71
71
|
* Parses an INI document into a null-prototype record.
|
|
72
72
|
*
|
|
73
|
+
* **Details**
|
|
74
|
+
*
|
|
73
75
|
* Section names separated by dots become nested records, repeated keys ending
|
|
74
76
|
* in `[]` become arrays, and the scalar values `true`, `false`, and `null` are
|
|
75
77
|
* decoded. Other scalar values remain strings.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Ini.js","names":[],"sources":["../../../src/unstable/encoding/Ini.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;;;;AASA;;;;;;;;;;;;;;;;;AAkBA,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc;AAE9C,MAAM,aAAa,GAAI,KAAa,IAAmB;EACrD,MAAM,QAAQ,GAAkB,EAAE;EAClC,IAAI,KAAK,GAAG,CAAC;EACb,IAAI,KAAK,GAAG,CAAC;EACb,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE;IACjD,IAAI,KAAK,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,IAAI,EAAE;MAC5C,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;MACxC,KAAK,GAAG,KAAK,GAAG,CAAC;IACnB;IACA,KAAK,EAAE;EACT;EACA,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;EACjC,OAAO,QAAQ;AACjB,CAAC;AAED,MAAM,QAAQ,GAAI,KAAa,IAC7B,KAAK,CAAC,MAAM,IAAI,CAAC,KACf,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAC7C,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAE,CAAC;AAEnD,MAAM,OAAO,GAAI,KAAyB,IAAY;EACpD,IAAI,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE,EAAE,IAAI,EAAE;EAChC,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE;IACnB,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;MACpB,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5B;IACA,IAAI;MACF,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;IAC1B,CAAC,CAAC,MAAM;MACN,OAAO,KAAK;IACd;EACF;EAEA,IAAI,OAAO,GAAG,KAAK;EACnB,IAAI,MAAM,GAAG,EAAE;EACf,KAAK,MAAM,SAAS,IAAI,KAAK,EAAE;IAC7B,IAAI,OAAO,EAAE;MACX,MAAM,IAAI,SAAS,KAAK,GAAG,IAAI,SAAS,KAAK,GAAG,IAAI,SAAS,KAAK,IAAI,GAClE,SAAS,GACT,KAAK,SAAS,EAAE;MACpB,OAAO,GAAG,KAAK;IACjB,CAAC,MAAM,IAAI,SAAS,KAAK,GAAG,IAAI,SAAS,KAAK,GAAG,EAAE;MACjD;IACF,CAAC,MAAM,IAAI,SAAS,KAAK,IAAI,EAAE;MAC7B,OAAO,GAAG,IAAI;IAChB,CAAC,MAAM;MACL,MAAM,IAAI,SAAS;IACrB;EACF;EACA,OAAO,MAAM,CAAC,IAAI,EAAE;AACtB,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"Ini.js","names":[],"sources":["../../../src/unstable/encoding/Ini.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -18,6 +18,8 @@ import * as SchemaAST from "../../SchemaAST.ts";
|
|
|
18
18
|
/**
|
|
19
19
|
* Selects the wire mode.
|
|
20
20
|
*
|
|
21
|
+
* **Details**
|
|
22
|
+
*
|
|
21
23
|
* The default mode supports compatible schema evolution. `fingerprint: true`
|
|
22
24
|
* uses positional layouts and an 8-byte layout hash for smaller frames, but
|
|
23
25
|
* requires peers to use the same schema definition.
|
|
@@ -27,6 +29,8 @@ import * as SchemaAST from "../../SchemaAST.ts";
|
|
|
27
29
|
*/
|
|
28
30
|
export interface Options {
|
|
29
31
|
/**
|
|
32
|
+
* Uses a compact positional layout with a schema fingerprint.
|
|
33
|
+
*
|
|
30
34
|
* @since 4.0.0
|
|
31
35
|
*/
|
|
32
36
|
readonly fingerprint?: boolean | undefined;
|
|
@@ -42,13 +46,16 @@ export interface toCodec<S extends Schema.Constraint> extends Schema.Codec<S["Ty
|
|
|
42
46
|
/**
|
|
43
47
|
* Derives a compact binary codec from a schema.
|
|
44
48
|
*
|
|
49
|
+
* **Details**
|
|
50
|
+
*
|
|
45
51
|
* The wire layout is compiled from the encoded side of the schema. Each
|
|
46
52
|
* encode/decode handles exactly one frame; use {@link parser} for streams.
|
|
53
|
+
* Derived codecs are memoized by schema identity and wire mode.
|
|
47
54
|
*
|
|
48
55
|
* Encoded results are arena-backed views and may share a larger buffer. Use
|
|
49
56
|
* `bytes.slice()` when independent ownership is required.
|
|
50
57
|
*
|
|
51
|
-
* **Example**
|
|
58
|
+
* **Example** (Deriving a binary codec)
|
|
52
59
|
*
|
|
53
60
|
* ```ts
|
|
54
61
|
* import { Schema } from "effect"
|
|
@@ -73,18 +80,26 @@ export declare function toCodec<S extends Schema.Constraint>(schema: S, options?
|
|
|
73
80
|
*/
|
|
74
81
|
export interface Parser<T> {
|
|
75
82
|
/**
|
|
83
|
+
* Feeds another chunk into the parser and returns any completed values.
|
|
84
|
+
*
|
|
76
85
|
* @since 4.0.0
|
|
77
86
|
*/
|
|
78
87
|
feed(chunk: Uint8Array): Effect.Effect<ReadonlyArray<T>, Schema.SchemaError>;
|
|
79
88
|
/**
|
|
89
|
+
* Feeds another chunk into the parser synchronously.
|
|
90
|
+
*
|
|
80
91
|
* @since 4.0.0
|
|
81
92
|
*/
|
|
82
93
|
feedSync(chunk: Uint8Array): ReadonlyArray<T>;
|
|
83
94
|
/**
|
|
95
|
+
* Finishes parsing and fails if an incomplete frame remains.
|
|
96
|
+
*
|
|
84
97
|
* @since 4.0.0
|
|
85
98
|
*/
|
|
86
99
|
end: Effect.Effect<void, Schema.SchemaError>;
|
|
87
100
|
/**
|
|
101
|
+
* Finishes parsing synchronously and throws for an incomplete frame.
|
|
102
|
+
*
|
|
88
103
|
* @since 4.0.0
|
|
89
104
|
*/
|
|
90
105
|
endSync(): void;
|
|
@@ -92,6 +107,8 @@ export interface Parser<T> {
|
|
|
92
107
|
/**
|
|
93
108
|
* Creates a stateful parser for a stream of concatenated frames.
|
|
94
109
|
*
|
|
110
|
+
* **Details**
|
|
111
|
+
*
|
|
95
112
|
* Values completed before a failure remain observable. After a failure, the
|
|
96
113
|
* parser rejects further calls. Use `maxFrameSize` to limit buffered frames.
|
|
97
114
|
*
|
|
@@ -114,6 +131,8 @@ export interface StreamOptions {
|
|
|
114
131
|
* it. Frames stop standing alone: they only decode through the parser that
|
|
115
132
|
* saw the frames before them, in order.
|
|
116
133
|
*
|
|
134
|
+
* **Gotchas**
|
|
135
|
+
*
|
|
117
136
|
* Both ends have to set it. A schema the binary layer does not fully
|
|
118
137
|
* validate on its own cannot use it, and asking for it throws.
|
|
119
138
|
*
|
|
@@ -228,10 +247,15 @@ export declare const duplex: {
|
|
|
228
247
|
/**
|
|
229
248
|
* Assigns an explicit wire field id to a struct property.
|
|
230
249
|
*
|
|
231
|
-
*
|
|
250
|
+
* **When to use**
|
|
251
|
+
*
|
|
252
|
+
* Use to preserve the wire id across a rename or resolve a hash collision.
|
|
253
|
+
*
|
|
254
|
+
* **Details**
|
|
255
|
+
*
|
|
232
256
|
* Valid ids are integers from 1 through 4294967295.
|
|
233
257
|
*
|
|
234
|
-
* **Example**
|
|
258
|
+
* **Example** (Assigning a wire field id)
|
|
235
259
|
*
|
|
236
260
|
* ```ts
|
|
237
261
|
* import { Schema } from "effect"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SchemaBinary.d.ts","sourceRoot":"","sources":["../../../src/unstable/encoding/SchemaBinary.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAA;AAGrC,OAAO,KAAK,OAAO,MAAM,kBAAkB,CAAA;AAI3C,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAA;AAYzC,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAA;AACzC,OAAO,KAAK,SAAS,MAAM,oBAAoB,CAAA;AAK/C
|
|
1
|
+
{"version":3,"file":"SchemaBinary.d.ts","sourceRoot":"","sources":["../../../src/unstable/encoding/SchemaBinary.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,7 +23,7 @@ import { dual, memoize } from "../../Function.js";
|
|
|
23
23
|
import * as HashMap from "../../HashMap.js";
|
|
24
24
|
import * as HashSet from "../../HashSet.js";
|
|
25
25
|
import { assignProperty } from "../../internal/record.js";
|
|
26
|
-
import * as
|
|
26
|
+
import * as InternalParserProtocol from "../../internal/schema/parser.js";
|
|
27
27
|
import * as Option from "../../Option.js";
|
|
28
28
|
import * as Predicate from "../../Predicate.js";
|
|
29
29
|
import * as Pull from "../../Pull.js";
|
|
@@ -34,16 +34,23 @@ import * as SchemaAST from "../../SchemaAST.js";
|
|
|
34
34
|
import * as SchemaIssue from "../../SchemaIssue.js";
|
|
35
35
|
import * as SchemaParser from "../../SchemaParser.js";
|
|
36
36
|
import * as SchemaTransformation from "../../SchemaTransformation.js";
|
|
37
|
+
const codecCache = /*#__PURE__*/new WeakMap();
|
|
38
|
+
const fingerprintCodecCache = /*#__PURE__*/new WeakMap();
|
|
39
|
+
const directCodecCache = /*#__PURE__*/new WeakMap();
|
|
40
|
+
const directFingerprintCodecCache = /*#__PURE__*/new WeakMap();
|
|
37
41
|
/**
|
|
38
42
|
* Derives a compact binary codec from a schema.
|
|
39
43
|
*
|
|
44
|
+
* **Details**
|
|
45
|
+
*
|
|
40
46
|
* The wire layout is compiled from the encoded side of the schema. Each
|
|
41
47
|
* encode/decode handles exactly one frame; use {@link parser} for streams.
|
|
48
|
+
* Derived codecs are memoized by schema identity and wire mode.
|
|
42
49
|
*
|
|
43
50
|
* Encoded results are arena-backed views and may share a larger buffer. Use
|
|
44
51
|
* `bytes.slice()` when independent ownership is required.
|
|
45
52
|
*
|
|
46
|
-
* **Example**
|
|
53
|
+
* **Example** (Deriving a binary codec)
|
|
47
54
|
*
|
|
48
55
|
* ```ts
|
|
49
56
|
* import { Schema } from "effect"
|
|
@@ -60,6 +67,9 @@ import * as SchemaTransformation from "../../SchemaTransformation.js";
|
|
|
60
67
|
* @since 4.0.0
|
|
61
68
|
*/
|
|
62
69
|
export function toCodec(schema, options) {
|
|
70
|
+
const cache = options?.fingerprint === true ? fingerprintCodecCache : codecCache;
|
|
71
|
+
const cached = cache.get(schema);
|
|
72
|
+
if (cached !== undefined) return cached;
|
|
63
73
|
const {
|
|
64
74
|
exact,
|
|
65
75
|
layout,
|
|
@@ -70,7 +80,9 @@ export function toCodec(schema, options) {
|
|
|
70
80
|
const trusted = exact ? {
|
|
71
81
|
value: undefined
|
|
72
82
|
} : undefined;
|
|
73
|
-
|
|
83
|
+
const codec = assembleCodec(trusted === undefined ? target : withTrustedDecode(target, trusted, !recursive), layout, mode, trusted);
|
|
84
|
+
cache.set(schema, codec);
|
|
85
|
+
return codec;
|
|
74
86
|
}
|
|
75
87
|
/**
|
|
76
88
|
* Derives the {@link toCodec} codec without the schema pass around the binary
|
|
@@ -79,11 +91,15 @@ export function toCodec(schema, options) {
|
|
|
79
91
|
* Only schemas the binary layer already validates on its own take the direct
|
|
80
92
|
* path; anything else falls back to {@link toCodec}. A direct codec encodes and
|
|
81
93
|
* decodes the same values as {@link toCodec} but is not a sound `Schema.is`
|
|
82
|
-
* guard, so it is only for callers that never guard on it.
|
|
94
|
+
* guard, so it is only for callers that never guard on it. Derived codecs are
|
|
95
|
+
* memoized by schema identity and wire mode.
|
|
83
96
|
*
|
|
84
97
|
* @internal
|
|
85
98
|
*/
|
|
86
99
|
export function toCodecDirect(schema, options) {
|
|
100
|
+
const cache = options?.fingerprint === true ? directFingerprintCodecCache : directCodecCache;
|
|
101
|
+
const cached = cache.get(schema);
|
|
102
|
+
if (cached !== undefined) return cached;
|
|
87
103
|
const {
|
|
88
104
|
exact,
|
|
89
105
|
exitSuccess,
|
|
@@ -95,9 +111,13 @@ export function toCodecDirect(schema, options) {
|
|
|
95
111
|
const trusted = {
|
|
96
112
|
value: undefined
|
|
97
113
|
};
|
|
98
|
-
|
|
114
|
+
const codec = assembleCodec(withExitSuccessDecode(target, trusted), layout, compileMode(layout, options?.fingerprint), trusted, true);
|
|
115
|
+
cache.set(schema, codec);
|
|
116
|
+
return codec;
|
|
99
117
|
}
|
|
100
|
-
|
|
118
|
+
const codec = assembleCodec(passThrough(target), layout, compileMode(layout, options?.fingerprint), undefined);
|
|
119
|
+
cache.set(schema, codec);
|
|
120
|
+
return codec;
|
|
101
121
|
}
|
|
102
122
|
function assembleCodec(target, layout, mode, trusted, successOnly = false) {
|
|
103
123
|
return Schema.Uint8Array.pipe(Schema.decodeTo(target, makeTransformation(layout, mode, trusted, successOnly)));
|
|
@@ -119,7 +139,7 @@ export function encodeUnknownSync(schema, options) {
|
|
|
119
139
|
} = compileTarget(schema);
|
|
120
140
|
const mode = compileMode(layout, options?.fingerprint);
|
|
121
141
|
const parseOptions = options ?? SchemaAST.defaultParseOptions;
|
|
122
|
-
if (!exact) {
|
|
142
|
+
if (!exact || parseOptions.onExcessProperty === "error") {
|
|
123
143
|
const fallback = Schema.encodeUnknownSync(toCodec(schema, options), options);
|
|
124
144
|
// The binary layer drops excess keys instead of reporting them.
|
|
125
145
|
if (!exitSuccess || parseOptions.onExcessProperty === "error") return fallback;
|
|
@@ -153,12 +173,12 @@ export function encodeManyUnknownSync(schema, options) {
|
|
|
153
173
|
exact,
|
|
154
174
|
layout
|
|
155
175
|
} = compileTarget(schema);
|
|
156
|
-
|
|
176
|
+
const parseOptions = options ?? SchemaAST.defaultParseOptions;
|
|
177
|
+
if (!exact || parseOptions.onExcessProperty === "error") {
|
|
157
178
|
const encode = encodeUnknownSync(schema, options);
|
|
158
179
|
return values => concatFrames(values.map(encode));
|
|
159
180
|
}
|
|
160
181
|
const mode = compileMode(layout, options?.fingerprint);
|
|
161
|
-
const parseOptions = options ?? SchemaAST.defaultParseOptions;
|
|
162
182
|
return values => {
|
|
163
183
|
try {
|
|
164
184
|
return encodeFrames(layout, values, parseOptions, mode);
|
|
@@ -182,6 +202,8 @@ function concatFrames(frames) {
|
|
|
182
202
|
/**
|
|
183
203
|
* Creates a stateful parser for a stream of concatenated frames.
|
|
184
204
|
*
|
|
205
|
+
* **Details**
|
|
206
|
+
*
|
|
185
207
|
* Values completed before a failure remain observable. After a failure, the
|
|
186
208
|
* parser rejects further calls. Use `maxFrameSize` to limit buffered frames.
|
|
187
209
|
*
|
|
@@ -218,7 +240,8 @@ function requireDictionary(exact, options) {
|
|
|
218
240
|
export function encoder(schema, options) {
|
|
219
241
|
const {
|
|
220
242
|
exact,
|
|
221
|
-
layout
|
|
243
|
+
layout,
|
|
244
|
+
target
|
|
222
245
|
} = compileTarget(schema);
|
|
223
246
|
const dictionary = requireDictionary(exact, options);
|
|
224
247
|
const encode = encodeUnknownSync(schema, options);
|
|
@@ -229,6 +252,7 @@ export function encoder(schema, options) {
|
|
|
229
252
|
};
|
|
230
253
|
const mode = compileMode(layout, options?.fingerprint);
|
|
231
254
|
const parseOptions = options ?? SchemaAST.defaultParseOptions;
|
|
255
|
+
const validate = parseOptions.onExcessProperty === "error" ? Schema.encodeUnknownSync(target, options) : undefined;
|
|
232
256
|
const dict = makeDictWrite();
|
|
233
257
|
const run = f => {
|
|
234
258
|
try {
|
|
@@ -238,8 +262,8 @@ export function encoder(schema, options) {
|
|
|
238
262
|
}
|
|
239
263
|
};
|
|
240
264
|
return {
|
|
241
|
-
encode: value => run(() => encodeFrame(layout, value, parseOptions, mode, dict)),
|
|
242
|
-
encodeMany: values => run(() => encodeFrames(layout, values, parseOptions, mode, dict))
|
|
265
|
+
encode: value => run(() => encodeFrame(layout, validate === undefined ? value : validate(value), parseOptions, mode, dict)),
|
|
266
|
+
encodeMany: values => run(() => encodeFrames(layout, validate === undefined ? values : values.map(validate), parseOptions, mode, dict))
|
|
243
267
|
};
|
|
244
268
|
}
|
|
245
269
|
// Frame parser over a compiled layout. `decodeEncoded` runs the target schema
|
|
@@ -458,7 +482,7 @@ export const encode = (schema, options) => () => {
|
|
|
458
482
|
return Effect.die(e);
|
|
459
483
|
}
|
|
460
484
|
};
|
|
461
|
-
if (exact) {
|
|
485
|
+
if (exact && parseOptions.onExcessProperty !== "error") {
|
|
462
486
|
return Channel.fromTransform((upstream, _scope) => Effect.sync(() => Effect.flatMap(upstream, write)));
|
|
463
487
|
}
|
|
464
488
|
// One schema pass per chunk brings the values to the binary-adjusted encoded
|
|
@@ -563,10 +587,15 @@ export const duplex = /*#__PURE__*/dual(2, (self, options) => encode(options.inp
|
|
|
563
587
|
/**
|
|
564
588
|
* Assigns an explicit wire field id to a struct property.
|
|
565
589
|
*
|
|
566
|
-
*
|
|
590
|
+
* **When to use**
|
|
591
|
+
*
|
|
592
|
+
* Use to preserve the wire id across a rename or resolve a hash collision.
|
|
593
|
+
*
|
|
594
|
+
* **Details**
|
|
595
|
+
*
|
|
567
596
|
* Valid ids are integers from 1 through 4294967295.
|
|
568
597
|
*
|
|
569
|
-
* **Example**
|
|
598
|
+
* **Example** (Assigning a wire field id)
|
|
570
599
|
*
|
|
571
600
|
* ```ts
|
|
572
601
|
* import { Schema } from "effect"
|
|
@@ -606,7 +635,8 @@ const BIGINT_U32_MASK = /*#__PURE__*/BigInt(0xFFFFFFFF);
|
|
|
606
635
|
const BIGINT_THIRTY_TWO = /*#__PURE__*/BigInt(32);
|
|
607
636
|
const utf8Encode = /*#__PURE__*/new TextEncoder();
|
|
608
637
|
const utf8DecodeFatal = /*#__PURE__*/new TextDecoder("utf-8", {
|
|
609
|
-
fatal: true
|
|
638
|
+
fatal: true,
|
|
639
|
+
ignoreBOM: true
|
|
610
640
|
});
|
|
611
641
|
// General numbers use up to seven varint bytes, a varint mantissa with a
|
|
612
642
|
// decimal scale byte, or an eight-byte f64.
|
|
@@ -617,6 +647,13 @@ const EXACT_MAGNITUDE_MAX = 4_503_599_627_370_495; // 2 ** 52 - 1
|
|
|
617
647
|
const NUMBER_RUN_F64 = 0;
|
|
618
648
|
const NUMBER_RUN_VARINT = 1;
|
|
619
649
|
const NUMBER_RUN_DECIMAL = 2;
|
|
650
|
+
// Recursive layouts must fail before the JavaScript stack does. This is high
|
|
651
|
+
// enough for practical payloads while keeping the decoder's stack bounded.
|
|
652
|
+
const MAX_NESTING_DEPTH = 512;
|
|
653
|
+
// Variable-width elements must be backed by frame bytes apart from a bounded
|
|
654
|
+
// allowance. Provably zero-width elements need their own absolute bound.
|
|
655
|
+
const ARRAY_ALLOCATION_SLACK = 1_048_576;
|
|
656
|
+
const ZERO_WIDTH_ARRAY_MAX = 4_194_304;
|
|
620
657
|
// Struct field tags pack the field id with enough information to skip the
|
|
621
658
|
// payload without consulting the schema. Decimal is a sign-magnitude mantissa
|
|
622
659
|
// varint followed by an unsigned scale varint.
|
|
@@ -1161,6 +1198,7 @@ const EMPTY_READER_BUFFER = /*#__PURE__*/new Uint8Array(EMPTY_READER_ARRAY_BUFFE
|
|
|
1161
1198
|
const EMPTY_READER_VIEW = /*#__PURE__*/new DataView(EMPTY_READER_ARRAY_BUFFER);
|
|
1162
1199
|
class Reader {
|
|
1163
1200
|
pos = 0;
|
|
1201
|
+
nesting = 0;
|
|
1164
1202
|
buf = EMPTY_READER_BUFFER;
|
|
1165
1203
|
// Frames of varints and strings never need a view, so it is built on demand
|
|
1166
1204
|
// and reused while the reader stays on one buffer.
|
|
@@ -1179,6 +1217,7 @@ class Reader {
|
|
|
1179
1217
|
// one-shot decode, where each frame stands alone.
|
|
1180
1218
|
dict;
|
|
1181
1219
|
reset(buf, start, end, options, indexSignatures, positional, dict) {
|
|
1220
|
+
this.nesting = 0;
|
|
1182
1221
|
this.view = undefined;
|
|
1183
1222
|
this.buf = buf;
|
|
1184
1223
|
this.pos = start;
|
|
@@ -1190,7 +1229,7 @@ class Reader {
|
|
|
1190
1229
|
this.dict = dict;
|
|
1191
1230
|
}
|
|
1192
1231
|
release() {
|
|
1193
|
-
this.pos = this.end = 0;
|
|
1232
|
+
this.pos = this.end = this.nesting = 0;
|
|
1194
1233
|
this.buf = EMPTY_READER_BUFFER;
|
|
1195
1234
|
this.view = undefined;
|
|
1196
1235
|
this.viewCache = EMPTY_READER_VIEW;
|
|
@@ -1448,6 +1487,9 @@ function packedSize(layout) {
|
|
|
1448
1487
|
function isInlineSlot(layout) {
|
|
1449
1488
|
return packedSize(layout) !== undefined || isSelfDelimiting(layout) || layout._ === "null" || layout._ === "undefined";
|
|
1450
1489
|
}
|
|
1490
|
+
function isZeroWidthSlot(layout) {
|
|
1491
|
+
return layout._ === "literal" ? isZeroWidthSlot(layout.leaf) : layout._ === "null" || layout._ === "undefined";
|
|
1492
|
+
}
|
|
1451
1493
|
// One registry row per natively supported declaration: its wire kind and
|
|
1452
1494
|
// whether the binary layer validates it exactly on its own (`true`) or exactly
|
|
1453
1495
|
// when its type parameters are ("parameters"). `compileDeclaration` holds the
|
|
@@ -1612,6 +1654,11 @@ function resolveSuspend(ast) {
|
|
|
1612
1654
|
}
|
|
1613
1655
|
return ast;
|
|
1614
1656
|
}
|
|
1657
|
+
function enumsToLiterals(ast) {
|
|
1658
|
+
return new SchemaAST.Union(ast.enums.map(e => new SchemaAST.Literal(e[1], {
|
|
1659
|
+
title: e[0]
|
|
1660
|
+
})));
|
|
1661
|
+
}
|
|
1615
1662
|
function flattenMembers(union) {
|
|
1616
1663
|
const out = [];
|
|
1617
1664
|
const seen = new Set();
|
|
@@ -1626,7 +1673,7 @@ function flattenMembers(union) {
|
|
|
1626
1673
|
resolved.types.forEach(go);
|
|
1627
1674
|
return;
|
|
1628
1675
|
case "Enum":
|
|
1629
|
-
|
|
1676
|
+
enumsToLiterals(resolved).types.forEach(go);
|
|
1630
1677
|
return;
|
|
1631
1678
|
default:
|
|
1632
1679
|
out.push(resolved);
|
|
@@ -1757,7 +1804,7 @@ function compileLayout(root) {
|
|
|
1757
1804
|
ast
|
|
1758
1805
|
};
|
|
1759
1806
|
case "Enum":
|
|
1760
|
-
return compileUnion(ast, flattenMembers(
|
|
1807
|
+
return compileUnion(ast, flattenMembers(enumsToLiterals(ast)));
|
|
1761
1808
|
case "Suspend":
|
|
1762
1809
|
{
|
|
1763
1810
|
recursive = true;
|
|
@@ -2169,7 +2216,7 @@ function isExact(root) {
|
|
|
2169
2216
|
// the cycle disqualifies it, the whole cycle is exact.
|
|
2170
2217
|
const walked = new Map();
|
|
2171
2218
|
const exact = ast => {
|
|
2172
|
-
if (ast.encoding !== undefined || ast.checks !== undefined || ast.encodingChecks !== undefined
|
|
2219
|
+
if (ast.encoding !== undefined || ast.checks !== undefined || ast.encodingChecks !== undefined) {
|
|
2173
2220
|
return false;
|
|
2174
2221
|
}
|
|
2175
2222
|
switch (ast._tag) {
|
|
@@ -2199,7 +2246,7 @@ function isExact(root) {
|
|
|
2199
2246
|
case "Objects":
|
|
2200
2247
|
return ast.propertySignatures.every(property => exact(property.type)) && ast.indexSignatures.every(signature => signature.parameter._tag === "String" && exact(signature.parameter) && exact(signature.type));
|
|
2201
2248
|
case "Union":
|
|
2202
|
-
return ast.mode === "anyOf" && ast.types.every(exact);
|
|
2249
|
+
return (ast.options?.mode ?? "anyOf") === "anyOf" && ast.types.every(exact);
|
|
2203
2250
|
// The layout compiles straight through a suspend, so the binary layer
|
|
2204
2251
|
// validates whatever the thunk returns. Only decoding gets to act on
|
|
2205
2252
|
// this: encoding a recursive schema still needs the cycle walk, which is
|
|
@@ -2230,7 +2277,7 @@ function isExact(root) {
|
|
|
2230
2277
|
// and validates success exits, so only failure exits need the schema pass for
|
|
2231
2278
|
// their cause's error and defect encodings.
|
|
2232
2279
|
function isExitWithExactSuccess(root) {
|
|
2233
|
-
return root._tag === "Declaration" && root.encoding === undefined && root.checks === undefined && root.encodingChecks === undefined &&
|
|
2280
|
+
return root._tag === "Declaration" && root.encoding === undefined && root.checks === undefined && root.encodingChecks === undefined && representationId(root) === "effect/schema/Exit" && isExact(root.typeParameters[0]);
|
|
2234
2281
|
}
|
|
2235
2282
|
// Layouts sharing a wire kind can still require different fingerprints.
|
|
2236
2283
|
const F = {
|
|
@@ -3151,7 +3198,7 @@ function encodeArray(ctx, layout, arr, w) {
|
|
|
3151
3198
|
const uniform = layout.uniform;
|
|
3152
3199
|
if (uniform !== undefined) {
|
|
3153
3200
|
if (layout.uniformNumbers) {
|
|
3154
|
-
encodeNumberRun(arr, count, w);
|
|
3201
|
+
encodeNumberRun(ctx, arr, count, w);
|
|
3155
3202
|
return;
|
|
3156
3203
|
}
|
|
3157
3204
|
// Only a run field holding an array of strings hands over an intern table.
|
|
@@ -3189,20 +3236,22 @@ function encodeArray(ctx, layout, arr, w) {
|
|
|
3189
3236
|
// each non-integer scans `decimalScale` once. Only written and read within one
|
|
3190
3237
|
// synchronous `encodeNumberRun` call.
|
|
3191
3238
|
const numberRunScales = [];
|
|
3192
|
-
function encodeNumberRun(arr, count, w) {
|
|
3239
|
+
function encodeNumberRun(ctx, arr, count, w) {
|
|
3193
3240
|
let varint = true;
|
|
3194
3241
|
let decimal = true;
|
|
3195
3242
|
for (let i = 0; i < count; i++) {
|
|
3196
3243
|
const value = arr[i];
|
|
3244
|
+
if (typeof value !== "number") {
|
|
3245
|
+
issuePath[issuePathLen++] = i;
|
|
3246
|
+
encodeFail("a number", value, ctx.options);
|
|
3247
|
+
}
|
|
3197
3248
|
if (isVarintNumber(value)) {
|
|
3198
3249
|
const magnitude = value < 0 ? -value : value;
|
|
3199
3250
|
if (magnitude > DECIMAL_MANTISSA_MAX) decimal = false;
|
|
3200
3251
|
} else {
|
|
3201
3252
|
varint = false;
|
|
3202
|
-
|
|
3203
|
-
|
|
3204
|
-
if (scale === 0) decimal = false;else numberRunScales[i] = scale;
|
|
3205
|
-
}
|
|
3253
|
+
const scale = decimalScale(value);
|
|
3254
|
+
if (scale === 0) decimal = false;else numberRunScales[i] = scale;
|
|
3206
3255
|
}
|
|
3207
3256
|
if (!varint && !decimal) break;
|
|
3208
3257
|
}
|
|
@@ -3608,6 +3657,7 @@ function decodeExtraPair(layout, r, out, seen, keys) {
|
|
|
3608
3657
|
const keyCode = keys === undefined ? Math.floor(code / FIELD_WIRE_FACTOR) : Math.floor(code / 16);
|
|
3609
3658
|
const kind = keys === undefined ? code - keyCode * FIELD_WIRE_FACTOR : Math.floor((code - keyCode * 16) / 2);
|
|
3610
3659
|
const key = keys === undefined ? r.readUtf8(keyCode) : decodeExtraKey(keys, code, keyCode, r);
|
|
3660
|
+
if (layout.names.has(key)) invalid("an extra key distinct from declared fields", key, r.options);
|
|
3611
3661
|
if (seenKey(seen, key)) invalid("unique extra keys", undefined, r.options);
|
|
3612
3662
|
const signature = layout.extraAll ?? (r.indexSignatures ??= new IndexSignatureCache(r.options)).find(layout, key);
|
|
3613
3663
|
if (signature === undefined) {
|
|
@@ -3861,8 +3911,15 @@ function decodeInterned(table, layout, r) {
|
|
|
3861
3911
|
if (ref >= table.length) invalid("a known back-reference", undefined, r.options);
|
|
3862
3912
|
return table[ref];
|
|
3863
3913
|
}
|
|
3864
|
-
//
|
|
3914
|
+
// Plain strings consume their whole region, so they skip the reader window.
|
|
3865
3915
|
if (layout._ === "string") {
|
|
3916
|
+
if (r.dict !== undefined) {
|
|
3917
|
+
const saved = r.enter(code / 2);
|
|
3918
|
+
const value = decodeChecked(layout, r);
|
|
3919
|
+
r.exit(saved);
|
|
3920
|
+
table.push(value);
|
|
3921
|
+
return value;
|
|
3922
|
+
}
|
|
3866
3923
|
const value = r.readUtf8(code / 2);
|
|
3867
3924
|
table.push(value);
|
|
3868
3925
|
return value;
|
|
@@ -4005,10 +4062,6 @@ function decodeRunSlot(plan, tables, slot, out, r) {
|
|
|
4005
4062
|
function decodeArray(layout, r) {
|
|
4006
4063
|
const elementLen = layout.elements.length;
|
|
4007
4064
|
const count = layout.hasCount ? r.uvarint() : elementLen;
|
|
4008
|
-
// Cap allocation amplification from zero-width slots.
|
|
4009
|
-
if (layout.hasCount && count > r.remaining + 1_048_576) {
|
|
4010
|
-
invalid("array count within allocation limit", count, r.options);
|
|
4011
|
-
}
|
|
4012
4065
|
if (layout.rest.length === 0 && count > elementLen) {
|
|
4013
4066
|
issuePath[issuePathLen++] = elementLen;
|
|
4014
4067
|
throw issueError(new SchemaIssue.UnexpectedKey(layout.ast, undefined, r.options));
|
|
@@ -4017,6 +4070,10 @@ function decodeArray(layout, r) {
|
|
|
4017
4070
|
issuePath[issuePathLen++] = count;
|
|
4018
4071
|
throw issueError(new SchemaIssue.MissingKey(undefined));
|
|
4019
4072
|
}
|
|
4073
|
+
if (layout.hasCount) {
|
|
4074
|
+
const allocationLimit = layout.rest.length > 0 && isZeroWidthSlot(layout.rest[0]) ? ZERO_WIDTH_ARRAY_MAX : r.remaining + ARRAY_ALLOCATION_SLACK;
|
|
4075
|
+
if (count > allocationLimit) invalid("array count within allocation limit", count, r.options);
|
|
4076
|
+
}
|
|
4020
4077
|
if (count > 0) {
|
|
4021
4078
|
const plan = runPlan(layout);
|
|
4022
4079
|
if (plan !== null) return decodeStructRun(plan, count, r);
|
|
@@ -4050,7 +4107,7 @@ function decodeArray(layout, r) {
|
|
|
4050
4107
|
if (uniform._ === "string") {
|
|
4051
4108
|
for (let i = 0; i < count; i++) {
|
|
4052
4109
|
issuePath[issuePathLen++] = i;
|
|
4053
|
-
out[i] = r.readUtf8(r.uvarint());
|
|
4110
|
+
out[i] = r.dict === undefined ? r.readUtf8(r.uvarint()) : decodeSized(uniform, r);
|
|
4054
4111
|
issuePathLen--;
|
|
4055
4112
|
}
|
|
4056
4113
|
return out;
|
|
@@ -4180,6 +4237,17 @@ function requirePresent(value) {
|
|
|
4180
4237
|
return value;
|
|
4181
4238
|
}
|
|
4182
4239
|
function decodeValue(layout, r) {
|
|
4240
|
+
if (r.nesting >= MAX_NESTING_DEPTH) {
|
|
4241
|
+
invalid(`nesting depth at most ${MAX_NESTING_DEPTH}`, r.nesting + 1, r.options);
|
|
4242
|
+
}
|
|
4243
|
+
r.nesting++;
|
|
4244
|
+
try {
|
|
4245
|
+
return decodeValueUnchecked(layout, r);
|
|
4246
|
+
} finally {
|
|
4247
|
+
r.nesting--;
|
|
4248
|
+
}
|
|
4249
|
+
}
|
|
4250
|
+
function decodeValueUnchecked(layout, r) {
|
|
4183
4251
|
switch (layout._) {
|
|
4184
4252
|
case "literal":
|
|
4185
4253
|
{
|
|
@@ -4230,10 +4298,11 @@ function decodeValue(layout, r) {
|
|
|
4230
4298
|
{
|
|
4231
4299
|
if (r.remaining !== 8) invalid("int64", undefined, r.options);
|
|
4232
4300
|
const millis = Number(r.i64());
|
|
4233
|
-
if (layout.flavor !== "date") return DateTime.makeUnsafe(millis);
|
|
4234
4301
|
const date = new Date(millis);
|
|
4235
|
-
if (Number.isNaN(date.getTime()))
|
|
4236
|
-
|
|
4302
|
+
if (Number.isNaN(date.getTime())) {
|
|
4303
|
+
invalid(layout.flavor === "date" ? "a valid Date" : "a valid DateTime", millis, r.options);
|
|
4304
|
+
}
|
|
4305
|
+
return layout.flavor === "date" ? date : DateTime.makeUnsafe(millis);
|
|
4237
4306
|
}
|
|
4238
4307
|
case "dateTimeZoned":
|
|
4239
4308
|
{
|
|
@@ -4379,7 +4448,7 @@ function decodeOneShot(layout, bytes, options, mode) {
|
|
|
4379
4448
|
}
|
|
4380
4449
|
}
|
|
4381
4450
|
function makeTransformation(layout, mode, trusted, successOnly = false) {
|
|
4382
|
-
return SchemaTransformation.
|
|
4451
|
+
return SchemaTransformation.transformEffect({
|
|
4383
4452
|
decode: (bytes, options) => {
|
|
4384
4453
|
try {
|
|
4385
4454
|
const value = decodeOneShot(layout, bytes, options, mode);
|
|
@@ -4436,7 +4505,7 @@ function bypassPass(target, decodeAccept, encodeAccept) {
|
|
|
4436
4505
|
const parse = SchemaParser.decodeUnknownEffect(type);
|
|
4437
4506
|
// A bypassed input comes back unchanged, which the shared "same value" exit
|
|
4438
4507
|
// says without allocating one per call.
|
|
4439
|
-
const run = accept => () => (input, _ast, options) => accept(input, options) ?
|
|
4508
|
+
const run = accept => () => (input, _ast, options) => accept(input, options) ? InternalParserProtocol.sameExit : parse(input, options);
|
|
4440
4509
|
return Schema.make(new SchemaAST.Declaration([type.ast], run(decodeAccept), {
|
|
4441
4510
|
identifier: "binary value"
|
|
4442
4511
|
}, undefined, undefined, undefined, undefined, run(encodeAccept)));
|