effect 4.0.0-rc.111 → 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 +109 -52
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +65 -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 +68 -41
- 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 +56 -17
- package/dist/Iterable.d.ts.map +1 -1
- package/dist/Iterable.js +65 -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.d.ts +67 -94
- package/dist/JsonSchema.d.ts.map +1 -1
- package/dist/JsonSchema.js +752 -397
- 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 +24 -3
- package/dist/LayerMap.d.ts.map +1 -1
- package/dist/LayerMap.js +9 -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 +137 -10
- package/dist/Pool.d.ts.map +1 -1
- package/dist/Pool.js +332 -75
- 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 +137 -0
- package/dist/RcMap.d.ts.map +1 -1
- package/dist/RcMap.js +72 -9
- package/dist/RcMap.js.map +1 -1
- package/dist/Record.d.ts +13 -0
- package/dist/Record.d.ts.map +1 -1
- package/dist/Record.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 +2200 -2433
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +2797 -4184
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +359 -176
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +373 -630
- 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 +123 -200
- package/dist/SchemaIssue.d.ts.map +1 -1
- package/dist/SchemaIssue.js +59 -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 +1276 -172
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +1371 -29
- 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/Scope.d.ts +9 -2
- package/dist/Scope.d.ts.map +1 -1
- package/dist/Scope.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/StandardSchema.d.ts +125 -0
- package/dist/StandardSchema.d.ts.map +1 -0
- package/dist/StandardSchema.js +9 -0
- package/dist/StandardSchema.js.map +1 -0
- 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 +8 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -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 +416 -258
- 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 +238 -132
- 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 +98 -23
- package/dist/unstable/ai/AiError.d.ts.map +1 -1
- package/dist/unstable/ai/AiError.js +98 -6
- package/dist/unstable/ai/AiError.js.map +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.d.ts.map +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.js +5 -16
- 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 +87 -78
- package/dist/unstable/ai/McpServer.js.map +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.d.ts.map +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.js +3 -14
- package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
- package/dist/unstable/ai/Prompt.d.ts +2 -2
- 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/codec-transformer.js +2 -2
- package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
- package/dist/unstable/ai/internal/structured-output.js +28 -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 +27 -4
- package/dist/unstable/cli/CliOutput.js.map +1 -1
- package/dist/unstable/cli/Command.d.ts +73 -73
- package/dist/unstable/cli/Command.d.ts.map +1 -1
- package/dist/unstable/cli/Command.js +22 -22
- package/dist/unstable/cli/Command.js.map +1 -1
- 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 +113 -59
- package/dist/unstable/cli/Prompt.d.ts.map +1 -1
- package/dist/unstable/cli/Prompt.js +391 -327
- package/dist/unstable/cli/Prompt.js.map +1 -1
- package/dist/unstable/cli/internal/completions/bash.js +109 -38
- package/dist/unstable/cli/internal/completions/bash.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/fish.js +15 -7
- package/dist/unstable/cli/internal/completions/fish.js.map +1 -1
- package/dist/unstable/cli/internal/completions/zsh.js +6 -4
- 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 +5 -1
- package/dist/unstable/cli/internal/wizard.d.ts.map +1 -1
- package/dist/unstable/cli/internal/wizard.js +34 -26
- 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 +22 -5
- package/dist/unstable/cluster/Envelope.d.ts.map +1 -1
- package/dist/unstable/cluster/Envelope.js +23 -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 +32 -13
- package/dist/unstable/cluster/HttpRunner.js.map +1 -1
- package/dist/unstable/cluster/Message.d.ts +17 -5
- package/dist/unstable/cluster/Message.d.ts.map +1 -1
- package/dist/unstable/cluster/Message.js +21 -8
- package/dist/unstable/cluster/Message.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 +33 -12
- package/dist/unstable/cluster/MessageStorage.js.map +1 -1
- package/dist/unstable/cluster/Reply.d.ts +5 -4
- package/dist/unstable/cluster/Reply.d.ts.map +1 -1
- package/dist/unstable/cluster/Reply.js +21 -12
- package/dist/unstable/cluster/Reply.js.map +1 -1
- package/dist/unstable/cluster/RunnerServer.d.ts +1 -1
- package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerServer.js +12 -6
- package/dist/unstable/cluster/RunnerServer.js.map +1 -1
- package/dist/unstable/cluster/Runners.d.ts +11 -5
- package/dist/unstable/cluster/Runners.d.ts.map +1 -1
- package/dist/unstable/cluster/Runners.js +56 -35
- package/dist/unstable/cluster/Runners.js.map +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 +10 -6
- 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 +273 -0
- package/dist/unstable/encoding/SchemaBinary.d.ts.map +1 -0
- package/dist/unstable/encoding/SchemaBinary.js +4573 -0
- package/dist/unstable/encoding/SchemaBinary.js.map +1 -0
- 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 +2 -2
- package/dist/unstable/encoding/index.d.ts.map +1 -1
- package/dist/unstable/encoding/index.js +2 -2
- 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 +15 -9
- package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventJournal.js +26 -12
- 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 +13 -9
- 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 +0 -10
- package/dist/unstable/eventlog/SqlEventJournal.d.ts.map +1 -1
- package/dist/unstable/eventlog/SqlEventJournal.js +29 -14
- 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 +28 -11
- 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/HttpApiScalar.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiScalar.js +15 -12
- package/dist/unstable/httpapi/HttpApiScalar.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/HttpApiSwagger.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiSwagger.js +6 -3
- package/dist/unstable/httpapi/HttpApiSwagger.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 +5 -0
- package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClient.js +94 -81
- 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 +66 -7
- package/dist/unstable/rpc/RpcMessage.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcMessage.js +68 -9
- 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 +28 -33
- package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.js +56 -92
- package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
- package/dist/unstable/rpc/RpcServer.d.ts +25 -0
- package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcServer.js +125 -68
- 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/dist/unstable/workflow/WorkflowProxy.d.ts +2 -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/package.json +8 -10
- package/src/Array.ts +142 -70
- 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 +185 -50
- 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 +90 -44
- package/src/JsonPatch.ts +4 -4
- package/src/JsonPointer.ts +97 -4
- package/src/JsonSchema.ts +998 -476
- package/src/Layer.ts +59 -18
- package/src/LayerMap.ts +38 -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 +535 -134
- 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 +176 -13
- package/src/Record.ts +15 -0
- 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 +5032 -6518
- package/src/SchemaAST.ts +1156 -316
- package/src/SchemaGetter.ts +75 -21
- package/src/SchemaIssue.ts +260 -16
- package/src/SchemaParser.ts +2 -12
- package/src/SchemaRepresentation.ts +1774 -189
- package/src/SchemaTransformation.ts +145 -22
- package/src/Scope.ts +9 -2
- package/src/ScopedCache.ts +10 -3
- package/src/Sink.ts +31 -15
- package/src/StandardSchema.ts +207 -0
- 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 +10 -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 +510 -301
- 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 +326 -160
- 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 +126 -6
- package/src/unstable/ai/AnthropicStructuredOutput.ts +8 -5
- 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 +105 -92
- package/src/unstable/ai/OpenAiStructuredOutput.ts +6 -3
- package/src/unstable/ai/Prompt.ts +20 -5
- 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/codec-transformer.ts +3 -2
- package/src/unstable/ai/internal/structured-output.ts +29 -6
- 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 +41 -4
- package/src/unstable/cli/Command.ts +79 -78
- 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 +543 -408
- package/src/unstable/cli/internal/completions/bash.ts +113 -38
- package/src/unstable/cli/internal/completions/descriptor.ts +23 -11
- package/src/unstable/cli/internal/completions/fish.ts +17 -9
- package/src/unstable/cli/internal/completions/zsh.ts +7 -4
- 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 +60 -32
- 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 +32 -3
- package/src/unstable/cluster/HttpRunner.ts +52 -25
- package/src/unstable/cluster/Message.ts +35 -13
- package/src/unstable/cluster/MessageStorage.ts +69 -24
- package/src/unstable/cluster/Reply.ts +36 -19
- package/src/unstable/cluster/RunnerServer.ts +21 -11
- package/src/unstable/cluster/Runners.ts +93 -80
- 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 +15 -6
- 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 +5308 -0
- 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 +2 -2
- package/src/unstable/eventlog/Event.ts +7 -7
- package/src/unstable/eventlog/EventJournal.ts +22 -15
- package/src/unstable/eventlog/EventLog.ts +24 -14
- 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 +35 -10
- 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 +63 -11
- 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/HttpApiScalar.ts +30 -27
- package/src/unstable/httpapi/HttpApiSchema.ts +14 -7
- package/src/unstable/httpapi/HttpApiSwagger.ts +6 -3
- 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 +100 -82
- package/src/unstable/rpc/RpcMessage.ts +78 -11
- package/src/unstable/rpc/RpcMiddleware.ts +7 -5
- package/src/unstable/rpc/RpcSerialization.ts +82 -92
- package/src/unstable/rpc/RpcServer.ts +171 -93
- 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/src/unstable/workflow/WorkflowProxy.ts +8 -4
- 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
|
@@ -27,45 +27,97 @@ const flagNamesForWordlist = (flag: Completions.FlagDescriptor): Array<string> =
|
|
|
27
27
|
return names
|
|
28
28
|
}
|
|
29
29
|
|
|
30
|
-
/**
|
|
31
|
-
* Build an associative array mapping each flag form to a group index.
|
|
32
|
-
* At completion time, if any form in a group appears in COMP_WORDS,
|
|
33
|
-
* all forms in that group are removed from the candidate list.
|
|
34
|
-
*/
|
|
30
|
+
/** Emit a Bash 3.2-compatible used-flag filter. */
|
|
35
31
|
const buildFlagGroupDeclarations = (
|
|
36
32
|
flags: ReadonlyArray<Completions.FlagDescriptor>,
|
|
37
33
|
lines: Array<string>
|
|
38
34
|
): void => {
|
|
39
35
|
if (flags.length === 0) return
|
|
40
|
-
|
|
41
|
-
lines.push(` local
|
|
42
|
-
let groupIdx = 0
|
|
43
|
-
for (const flag of flags) {
|
|
44
|
-
const forms = flagNamesForWordlist(flag)
|
|
45
|
-
for (const form of forms) {
|
|
46
|
-
lines.push(` _flag_groups[${form}]=${groupIdx}`)
|
|
47
|
-
}
|
|
48
|
-
groupIdx++
|
|
49
|
-
}
|
|
50
|
-
lines.push(` local -A _used_groups`)
|
|
36
|
+
const groups = flags.map(flagNamesForWordlist)
|
|
37
|
+
lines.push(` local ${groups.map((_, index) => `_used_${index}=""`).join(" ")}`)
|
|
51
38
|
lines.push(` for ((i = 1; i < cword; i++)); do`)
|
|
52
|
-
lines.push(`
|
|
53
|
-
|
|
39
|
+
lines.push(` case "\${words[i]%%=*}" in`)
|
|
40
|
+
groups.forEach((forms, index) => {
|
|
41
|
+
lines.push(` ${forms.join("|")}) _used_${index}=1 ;;`)
|
|
42
|
+
})
|
|
43
|
+
lines.push(` esac`)
|
|
54
44
|
lines.push(` done`)
|
|
55
45
|
lines.push(` local _filtered_flags=""`)
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
46
|
+
groups.forEach((forms, index) => {
|
|
47
|
+
lines.push(` [[ -n "$_used_${index}" ]] || _filtered_flags+=" ${forms.join(" ")}"`)
|
|
48
|
+
})
|
|
49
|
+
lines.push(``)
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Complete choices without `compgen -W`, which reparses quoted values. Escape
|
|
54
|
+
* only the portion readline replaces for the active quote context.
|
|
55
|
+
*
|
|
56
|
+
* `!` cannot be escaped inside a user-opened double quote without changing the
|
|
57
|
+
* resulting argument.
|
|
58
|
+
*/
|
|
59
|
+
const choicesHelper = (helperName: string, lines: Array<string>): void => {
|
|
60
|
+
lines.push(`${helperName}()`)
|
|
61
|
+
lines.push(`{`)
|
|
62
|
+
lines.push(` local _cur="$1" _word="$2"; shift 2`)
|
|
63
|
+
lines.push(``)
|
|
64
|
+
lines.push(` local _head="\${_cur%"$_word"}"`)
|
|
65
|
+
lines.push(` local _open=""`)
|
|
66
|
+
lines.push(` case "$_head" in`)
|
|
67
|
+
lines.push(` *\\') _open="'" ;;`)
|
|
68
|
+
lines.push(` *\\") _open='"' ;;`)
|
|
69
|
+
lines.push(` esac`)
|
|
70
|
+
lines.push(``)
|
|
71
|
+
lines.push(` local _prefix="$_cur" _committed="$_head"`)
|
|
72
|
+
// Quoting these substitutions breaks quote matching on Bash 3.2.
|
|
73
|
+
lines.push(` _prefix=\${_prefix//\\\\/}; _prefix=\${_prefix//\\"/}; _prefix=\${_prefix//\\'/}`)
|
|
74
|
+
lines.push(` _committed=\${_committed//\\\\/}; _committed=\${_committed//\\"/}; _committed=\${_committed//\\'/}`)
|
|
75
|
+
lines.push(``)
|
|
76
|
+
lines.push(` COMPREPLY=()`)
|
|
77
|
+
lines.push(` local _choice _rest _match`)
|
|
78
|
+
lines.push(` for _choice in "$@"; do`)
|
|
79
|
+
lines.push(` [[ "$_choice" == "$_prefix"* ]] || continue`)
|
|
80
|
+
lines.push(` _rest="\${_choice#"$_committed"}"`)
|
|
81
|
+
lines.push(` case "$_open" in`)
|
|
82
|
+
lines.push(` "'")`)
|
|
83
|
+
lines.push(` if [[ "$_head" == "'" ]]; then`)
|
|
84
|
+
// Use a shell splice for a quote opened at the start of the word.
|
|
85
|
+
lines.push(` _match=\${_rest//\\'/\\'\\\\\\'\\'}`)
|
|
86
|
+
lines.push(` else`)
|
|
87
|
+
// A mid-word single-quote context cannot contain another single quote.
|
|
88
|
+
lines.push(` [[ "$_rest" == *\\'* ]] && continue`)
|
|
89
|
+
lines.push(` _match="$_rest"`)
|
|
90
|
+
lines.push(` fi`)
|
|
91
|
+
lines.push(` ;;`)
|
|
92
|
+
lines.push(` '"')`)
|
|
93
|
+
lines.push(` _match="\${_rest//\\\\/\\\\\\\\}"`)
|
|
94
|
+
lines.push(` _match="\${_match//\\$/\\\\$}"`)
|
|
95
|
+
lines.push(" _match=\"${_match//\\`/\\\\\\`}\"")
|
|
96
|
+
lines.push(` _match="\${_match//\\"/\\\\\\"}"`)
|
|
97
|
+
lines.push(` ;;`)
|
|
98
|
+
lines.push(` *)`)
|
|
99
|
+
lines.push(` printf -v _match '%q' "$_rest"`)
|
|
100
|
+
// Bash 3.2 leaves a leading tilde unescaped.
|
|
101
|
+
lines.push(` [[ -z "$_head" && "$_match" == '~'* ]] && _match="\\\\$_match"`)
|
|
102
|
+
lines.push(` ;;`)
|
|
103
|
+
lines.push(` esac`)
|
|
104
|
+
// Readline omits a closing quote already present in the match.
|
|
105
|
+
lines.push(` [[ -n "$_open" && "$_match" == *"$_open" ]] && _match+="$_open"`)
|
|
106
|
+
lines.push(` COMPREPLY+=("$_match")`)
|
|
59
107
|
lines.push(` done`)
|
|
108
|
+
lines.push(`}`)
|
|
60
109
|
lines.push(``)
|
|
61
110
|
}
|
|
62
111
|
|
|
63
|
-
const
|
|
112
|
+
const choiceCompletion = (helperName: string, values: ReadonlyArray<string>): string =>
|
|
113
|
+
`${helperName} "$cur" "$_comp_word" ${values.map((value) => `'${escapeForBash(value)}'`).join(" ")}`
|
|
114
|
+
|
|
115
|
+
const flagValueCompletion = (type: Completions.FlagType, helperName: string): string | undefined => {
|
|
64
116
|
switch (type._tag) {
|
|
65
117
|
case "Boolean":
|
|
66
118
|
return undefined
|
|
67
119
|
case "Choice":
|
|
68
|
-
return
|
|
120
|
+
return choiceCompletion(helperName, type.values)
|
|
69
121
|
case "Path":
|
|
70
122
|
if (type.pathType === "directory") return `COMPREPLY=( $(compgen -d -- "$cur") )`
|
|
71
123
|
return `COMPREPLY=( $(compgen -f -- "$cur") )`
|
|
@@ -74,10 +126,10 @@ const flagValueCompletion = (type: Completions.FlagType): string | undefined =>
|
|
|
74
126
|
}
|
|
75
127
|
}
|
|
76
128
|
|
|
77
|
-
const argCompletion = (type: Completions.ArgumentType): string | undefined => {
|
|
129
|
+
const argCompletion = (type: Completions.ArgumentType, helperName: string): string | undefined => {
|
|
78
130
|
switch (type._tag) {
|
|
79
131
|
case "Choice":
|
|
80
|
-
return
|
|
132
|
+
return choiceCompletion(helperName, type.values)
|
|
81
133
|
case "Path":
|
|
82
134
|
if (type.pathType === "directory") return `COMPREPLY=( $(compgen -d -- "$cur") )`
|
|
83
135
|
return `COMPREPLY=( $(compgen -f -- "$cur") )`
|
|
@@ -93,7 +145,8 @@ const argCompletion = (type: Completions.ArgumentType): string | undefined => {
|
|
|
93
145
|
const generateFunction = (
|
|
94
146
|
descriptor: Completions.CommandDescriptor,
|
|
95
147
|
parentPath: ReadonlyArray<string>,
|
|
96
|
-
lines: Array<string
|
|
148
|
+
lines: Array<string>,
|
|
149
|
+
helperName: string
|
|
97
150
|
): void => {
|
|
98
151
|
const currentPath = [...parentPath, descriptor.name]
|
|
99
152
|
const funcName = `_${currentPath.map(sanitizeFunctionName).join("_")}`
|
|
@@ -102,7 +155,12 @@ const generateFunction = (
|
|
|
102
155
|
lines.push(`{`)
|
|
103
156
|
lines.push(` local cur prev words cword i`)
|
|
104
157
|
lines.push(parentPath.length === 0 ? ` local _command_index=0` : ` local _command_index="$1"`)
|
|
105
|
-
|
|
158
|
+
// Keep values containing COMP_WORDBREAKS characters in one word.
|
|
159
|
+
lines.push(` _init_completion -n "$COMP_WORDBREAKS" || return`)
|
|
160
|
+
if (parentPath.length === 0) {
|
|
161
|
+
// Subcommand functions inherit this through Bash's dynamic scope.
|
|
162
|
+
lines.push(` local _comp_word="$2"`)
|
|
163
|
+
}
|
|
106
164
|
lines.push(``)
|
|
107
165
|
|
|
108
166
|
// Build flag-value dispatch
|
|
@@ -115,7 +173,7 @@ const generateFunction = (
|
|
|
115
173
|
for (const alias of flag.aliases) {
|
|
116
174
|
longNames.push(alias.length === 1 ? `-${alias}` : `--${alias}`)
|
|
117
175
|
}
|
|
118
|
-
const completion = flagValueCompletion(flag.type)
|
|
176
|
+
const completion = flagValueCompletion(flag.type, helperName)
|
|
119
177
|
if (completion) {
|
|
120
178
|
lines.push(` ${longNames.join("|")})`)
|
|
121
179
|
lines.push(` ${completion}`)
|
|
@@ -171,7 +229,7 @@ const generateFunction = (
|
|
|
171
229
|
|
|
172
230
|
// Positional argument completion
|
|
173
231
|
const argsWithCompletions = descriptor.arguments.flatMap((argument, index) => {
|
|
174
|
-
const completion = argCompletion(argument.type)
|
|
232
|
+
const completion = argCompletion(argument.type, helperName)
|
|
175
233
|
return completion === undefined ? [] : [{ argument, completion, index }]
|
|
176
234
|
})
|
|
177
235
|
if (argsWithCompletions.length > 0) {
|
|
@@ -227,7 +285,7 @@ const generateFunction = (
|
|
|
227
285
|
|
|
228
286
|
// Recurse into subcommands
|
|
229
287
|
for (const sub of descriptor.subcommands) {
|
|
230
|
-
generateFunction(sub, currentPath, lines)
|
|
288
|
+
generateFunction(sub, currentPath, lines, helperName)
|
|
231
289
|
}
|
|
232
290
|
}
|
|
233
291
|
|
|
@@ -238,6 +296,8 @@ export const generate = (
|
|
|
238
296
|
): string => {
|
|
239
297
|
const lines: Array<string> = []
|
|
240
298
|
const safeName = sanitizeFunctionName(executableName)
|
|
299
|
+
// Sanitized command names cannot contain `-`.
|
|
300
|
+
const helperName = `_${safeName}--choices`
|
|
241
301
|
|
|
242
302
|
lines.push(`###-begin-${escapeForBash(executableName)}-completions-###`)
|
|
243
303
|
lines.push(`#`)
|
|
@@ -248,22 +308,37 @@ export const generate = (
|
|
|
248
308
|
lines.push(`#`)
|
|
249
309
|
lines.push(``)
|
|
250
310
|
|
|
251
|
-
//
|
|
252
|
-
//
|
|
253
|
-
// (= in options, redirections, etc.) but this covers the common path.
|
|
311
|
+
// Fallback for environments without bash-completion. Preserve word-break
|
|
312
|
+
// characters inside values.
|
|
254
313
|
lines.push(`if ! type _init_completion &>/dev/null; then`)
|
|
255
314
|
lines.push(` _init_completion()`)
|
|
256
315
|
lines.push(` {`)
|
|
257
316
|
lines.push(` COMPREPLY=()`)
|
|
258
|
-
lines.push(`
|
|
259
|
-
lines.push(`
|
|
260
|
-
lines.push(`
|
|
261
|
-
lines.push(`
|
|
317
|
+
lines.push(` local _i _j=0 _piece _line="$COMP_LINE"`)
|
|
318
|
+
lines.push(` words=("\${COMP_WORDS[0]}")`)
|
|
319
|
+
lines.push(` cword=0`)
|
|
320
|
+
lines.push(` _line="\${_line#*"\${COMP_WORDS[0]}"}"`)
|
|
321
|
+
lines.push(` for ((_i = 1; _i < \${#COMP_WORDS[@]}; _i++)); do`)
|
|
322
|
+
lines.push(` _piece="\${COMP_WORDS[_i]}"`)
|
|
323
|
+
lines.push(` if [[ "$_line" == [[:blank:]]* ]]; then`)
|
|
324
|
+
lines.push(` ((_j++))`)
|
|
325
|
+
lines.push(` words[_j]="$_piece"`)
|
|
326
|
+
lines.push(` else`)
|
|
327
|
+
lines.push(` words[_j]="\${words[_j]}$_piece"`)
|
|
328
|
+
lines.push(` fi`)
|
|
329
|
+
lines.push(` ((_i == COMP_CWORD)) && cword=$_j`)
|
|
330
|
+
lines.push(` _line="\${_line#*"$_piece"}"`)
|
|
331
|
+
lines.push(` done`)
|
|
332
|
+
lines.push(` cur="\${words[cword]}"`)
|
|
333
|
+
lines.push(` prev=""`)
|
|
334
|
+
lines.push(` ((cword > 0)) && prev="\${words[cword-1]}"`)
|
|
335
|
+
lines.push(` return 0`)
|
|
262
336
|
lines.push(` }`)
|
|
263
337
|
lines.push(`fi`)
|
|
264
338
|
lines.push(``)
|
|
265
339
|
|
|
266
|
-
|
|
340
|
+
choicesHelper(helperName, lines)
|
|
341
|
+
generateFunction(descriptor, [], lines, helperName)
|
|
267
342
|
|
|
268
343
|
lines.push(`complete -F _${safeName} ${escapeForBash(executableName)}`)
|
|
269
344
|
lines.push(`###-end-${escapeForBash(executableName)}-completions-###`)
|
|
@@ -20,10 +20,10 @@ const toFlagType = (single: Param.Single<"flag", unknown>): Completions.FlagType
|
|
|
20
20
|
switch (tag) {
|
|
21
21
|
case "Boolean":
|
|
22
22
|
return { _tag: "Boolean" }
|
|
23
|
-
case "
|
|
24
|
-
return { _tag: "
|
|
25
|
-
case "
|
|
26
|
-
return { _tag: "
|
|
23
|
+
case "Int":
|
|
24
|
+
return { _tag: "Int" }
|
|
25
|
+
case "Finite":
|
|
26
|
+
return { _tag: "Finite" }
|
|
27
27
|
case "Date":
|
|
28
28
|
return { _tag: "Date" }
|
|
29
29
|
case "Choice": {
|
|
@@ -44,10 +44,10 @@ const toFlagType = (single: Param.Single<"flag", unknown>): Completions.FlagType
|
|
|
44
44
|
const toArgumentType = (single: Param.Single<"argument", unknown>): Completions.ArgumentType => {
|
|
45
45
|
const tag = single.primitiveType._tag
|
|
46
46
|
switch (tag) {
|
|
47
|
-
case "
|
|
48
|
-
return { _tag: "
|
|
49
|
-
case "
|
|
50
|
-
return { _tag: "
|
|
47
|
+
case "Int":
|
|
48
|
+
return { _tag: "Int" }
|
|
49
|
+
case "Finite":
|
|
50
|
+
return { _tag: "Finite" }
|
|
51
51
|
case "Date":
|
|
52
52
|
return { _tag: "Date" }
|
|
53
53
|
case "Choice": {
|
|
@@ -70,18 +70,25 @@ const toArgumentType = (single: Param.Single<"argument", unknown>): Completions.
|
|
|
70
70
|
// ---------------------------------------------------------------------------
|
|
71
71
|
|
|
72
72
|
/** @internal */
|
|
73
|
-
export const fromCommand = (
|
|
73
|
+
export const fromCommand = (
|
|
74
|
+
cmd: Command.Any,
|
|
75
|
+
inheritedFlags: ReadonlyArray<Param.AnyFlag> = []
|
|
76
|
+
): Completions.CommandDescriptor => {
|
|
74
77
|
const impl = toImpl(cmd)
|
|
75
78
|
const config = impl.config
|
|
76
79
|
|
|
77
80
|
const flags: Array<Completions.FlagDescriptor> = []
|
|
78
|
-
|
|
81
|
+
const seen = new Set<string>()
|
|
82
|
+
// Match help's precedence: local flags first, then ancestors root to leaf.
|
|
83
|
+
for (const [index, flag] of [...config.flags, ...inheritedFlags].entries()) {
|
|
79
84
|
const singles = Param.extractSingleParams(flag)
|
|
80
85
|
for (const single of singles) {
|
|
81
86
|
if (single.kind !== "flag") continue
|
|
82
87
|
// Omit hidden flags from completion scripts so tab-completion in the
|
|
83
88
|
// shell does not advertise flags that are absent from --help.
|
|
84
89
|
if (single.hidden) continue
|
|
90
|
+
if (index >= config.flags.length && seen.has(single.name)) continue
|
|
91
|
+
seen.add(single.name)
|
|
85
92
|
flags.push({
|
|
86
93
|
name: single.name,
|
|
87
94
|
aliases: single.aliases,
|
|
@@ -108,12 +115,17 @@ export const fromCommand = (cmd: Command.Any): Completions.CommandDescriptor =>
|
|
|
108
115
|
}
|
|
109
116
|
|
|
110
117
|
const subcommands: Array<Completions.CommandDescriptor> = []
|
|
118
|
+
const sharedFlags = [...inheritedFlags, ...impl.contextConfig.flags]
|
|
111
119
|
for (const group of cmd.subcommands) {
|
|
112
120
|
for (const subcommand of group.commands) {
|
|
113
121
|
// Omit unlisted subcommands from completion scripts so tab-completion in
|
|
114
122
|
// the shell does not advertise commands that are absent from --help.
|
|
115
123
|
if (subcommand.unlisted) continue
|
|
116
|
-
|
|
124
|
+
const descriptor = fromCommand(subcommand, sharedFlags)
|
|
125
|
+
subcommands.push(descriptor)
|
|
126
|
+
if (subcommand.alias && subcommand.alias !== subcommand.name) {
|
|
127
|
+
subcommands.push({ ...descriptor, name: subcommand.alias })
|
|
128
|
+
}
|
|
117
129
|
}
|
|
118
130
|
}
|
|
119
131
|
|
|
@@ -12,7 +12,10 @@ import type * as Completions from "../../Completions.ts"
|
|
|
12
12
|
// Helpers
|
|
13
13
|
// ---------------------------------------------------------------------------
|
|
14
14
|
|
|
15
|
-
const escapeFishString = (s: string): string => s.replace(/'/g, "\\'")
|
|
15
|
+
const escapeFishString = (s: string): string => s.replace(/\\/g, "\\\\").replace(/'/g, "\\'")
|
|
16
|
+
|
|
17
|
+
/** Escape choices for Fish's second expansion of `complete -a`. */
|
|
18
|
+
const escapeFishChoice = (s: string): string => escapeFishString(s.replace(/[^A-Za-z0-9_.,/@%+-]/gu, "\\$&"))
|
|
16
19
|
|
|
17
20
|
/**
|
|
18
21
|
* Build a Fish condition that checks the current subcommand context.
|
|
@@ -64,6 +67,15 @@ const flagContainsOptCondition = (flag: Completions.FlagDescriptor): string => {
|
|
|
64
67
|
return `not __fish_contains_opt ${optArgs.join(" ")}`
|
|
65
68
|
}
|
|
66
69
|
|
|
70
|
+
/** Hide used value flags without suppressing their value completions. */
|
|
71
|
+
const valueFlagDedupCondition = (flag: Completions.FlagDescriptor): string => {
|
|
72
|
+
const forms = [`--${flag.name}`]
|
|
73
|
+
for (const alias of flag.aliases) {
|
|
74
|
+
forms.push(alias.length === 1 ? `-${alias}` : `--${alias}`)
|
|
75
|
+
}
|
|
76
|
+
return `begin; ${flagContainsOptCondition(flag)}; or contains -- (commandline -poc)[-1] ${forms.join(" ")}; end`
|
|
77
|
+
}
|
|
78
|
+
|
|
67
79
|
const flagCompletionArgs = (flag: Completions.FlagDescriptor): Array<string> => {
|
|
68
80
|
const args: Array<string> = [`-l ${flag.name}`]
|
|
69
81
|
for (const alias of flag.aliases) {
|
|
@@ -88,7 +100,7 @@ const flagValueArgs = (type: Completions.FlagType): string | undefined => {
|
|
|
88
100
|
case "Boolean":
|
|
89
101
|
return undefined
|
|
90
102
|
case "Choice":
|
|
91
|
-
return `-r -f -a '${type.values.join(" ")}'`
|
|
103
|
+
return `-r -f -a '${type.values.map(escapeFishChoice).join(" ")}'`
|
|
92
104
|
case "Path":
|
|
93
105
|
if (type.pathType === "directory") return `-r -F`
|
|
94
106
|
return `-r -F`
|
|
@@ -101,7 +113,7 @@ const flagValueArgs = (type: Completions.FlagType): string | undefined => {
|
|
|
101
113
|
const argValueArgs = (type: Completions.ArgumentType): string | undefined => {
|
|
102
114
|
switch (type._tag) {
|
|
103
115
|
case "Choice":
|
|
104
|
-
return `-r -f -a '${type.values.join(" ")}'`
|
|
116
|
+
return `-r -f -a '${type.values.map(escapeFishChoice).join(" ")}'`
|
|
105
117
|
case "Path":
|
|
106
118
|
return `-r -F`
|
|
107
119
|
default:
|
|
@@ -147,13 +159,9 @@ const generateCompletions = (
|
|
|
147
159
|
|
|
148
160
|
// Flag completions
|
|
149
161
|
for (const flag of descriptor.flags) {
|
|
150
|
-
// Only apply __fish_contains_opt dedup for boolean flags. For value-taking
|
|
151
|
-
// flags, the dedup condition would suppress the entry while fish is waiting
|
|
152
|
-
// for a value (e.g. typing `--env <TAB>` wouldn't show choices).
|
|
153
162
|
const isBoolean = flag.type._tag === "Boolean"
|
|
154
|
-
const
|
|
155
|
-
|
|
156
|
-
: condition
|
|
163
|
+
const dedup = isBoolean ? flagContainsOptCondition(flag) : valueFlagDedupCondition(flag)
|
|
164
|
+
const flagCondition = condition ? `${condition}; and ${dedup}` : dedup
|
|
157
165
|
const flagCondArg = flagCondition ? `-n '${flagCondition}'` : ``
|
|
158
166
|
|
|
159
167
|
const parts = [`complete -c ${executableName}`]
|
|
@@ -14,6 +14,9 @@ import type * as Completions from "../../Completions.ts"
|
|
|
14
14
|
|
|
15
15
|
const escapeZsh = (s: string): string => s.replace(/\\/g, "\\\\").replace(/'/g, "'\\''").replace(/:/g, "\\:")
|
|
16
16
|
|
|
17
|
+
/** Escape choices for the second parse of a Zsh `_arguments` action. */
|
|
18
|
+
const escapeZshChoice = (s: string): string => s.replace(/[^A-Za-z0-9_.,/@%+-]/gu, "\\$&").replace(/'/g, "'\\''")
|
|
19
|
+
|
|
17
20
|
const sanitize = (s: string): string => s.replace(/[^a-zA-Z0-9_]/g, "_")
|
|
18
21
|
|
|
19
22
|
/**
|
|
@@ -35,12 +38,12 @@ const valueAction = (type: Completions.FlagType): string => {
|
|
|
35
38
|
case "Boolean":
|
|
36
39
|
return ""
|
|
37
40
|
case "Choice":
|
|
38
|
-
return `:value:(${type.values.join(" ")})`
|
|
41
|
+
return `:value:(${type.values.map(escapeZshChoice).join(" ")})`
|
|
39
42
|
case "Path":
|
|
40
43
|
return type.pathType === "directory" ? `:directory:_directories` : `:file:_files`
|
|
41
|
-
case "
|
|
44
|
+
case "Int":
|
|
42
45
|
return `:integer:`
|
|
43
|
-
case "
|
|
46
|
+
case "Finite":
|
|
44
47
|
return `:float:`
|
|
45
48
|
case "Date":
|
|
46
49
|
return `:date:`
|
|
@@ -52,7 +55,7 @@ const valueAction = (type: Completions.FlagType): string => {
|
|
|
52
55
|
const argAction = (type: Completions.ArgumentType): string => {
|
|
53
56
|
switch (type._tag) {
|
|
54
57
|
case "Choice":
|
|
55
|
-
return `(${type.values.join(" ")})`
|
|
58
|
+
return `(${type.values.map(escapeZshChoice).join(" ")})`
|
|
56
59
|
case "Path":
|
|
57
60
|
return type.pathType === "directory" ? `_directories` : `_files`
|
|
58
61
|
default:
|
|
@@ -15,12 +15,12 @@
|
|
|
15
15
|
* ```ts
|
|
16
16
|
* // User declares:
|
|
17
17
|
* const config = {
|
|
18
|
-
* verbose: Flag.
|
|
18
|
+
* verbose: Flag.Boolean("verbose").pipe(Flag.withDefault(false)),
|
|
19
19
|
* server: {
|
|
20
|
-
* host: Flag.
|
|
21
|
-
* port: Flag.
|
|
20
|
+
* host: Flag.String("host"),
|
|
21
|
+
* port: Flag.Int("port")
|
|
22
22
|
* },
|
|
23
|
-
* files: Argument.
|
|
23
|
+
* files: Argument.String("files").pipe(Argument.variadic)
|
|
24
24
|
* }
|
|
25
25
|
*
|
|
26
26
|
* // Becomes Config.Internal:
|
|
@@ -408,7 +408,7 @@ const missingFlagValue = (spec: FlagParam): CliError.InvalidValue => {
|
|
|
408
408
|
* Recognizes: true/false, yes/no, on/off, 1/0
|
|
409
409
|
*/
|
|
410
410
|
const asBooleanLiteral = (token: Token | undefined): string | undefined =>
|
|
411
|
-
token?._tag === "Value" && (Primitive.
|
|
411
|
+
token?._tag === "Value" && (Primitive.isTrueLiteral(token.value) || Primitive.isFalseLiteral(token.value))
|
|
412
412
|
? token.value
|
|
413
413
|
: undefined
|
|
414
414
|
|
|
@@ -16,17 +16,30 @@ export interface Options {
|
|
|
16
16
|
readonly prefix?: ReadonlyArray<string> | undefined
|
|
17
17
|
}
|
|
18
18
|
|
|
19
|
+
export interface Result {
|
|
20
|
+
readonly args: Array<string>
|
|
21
|
+
readonly displayArgs: Array<string>
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
interface CommandLineArg {
|
|
25
|
+
readonly value: string
|
|
26
|
+
readonly displayValue: string
|
|
27
|
+
}
|
|
28
|
+
|
|
19
29
|
export const run: (
|
|
20
30
|
command: Command.Command.Any,
|
|
21
31
|
options?: Options
|
|
22
|
-
) => Effect.Effect<
|
|
32
|
+
) => Effect.Effect<Result, CliError.CliError | Terminal.QuitError, Command.Environment> = Effect.fnUntraced(
|
|
23
33
|
function*(command, options) {
|
|
24
34
|
const commandPath = options?.commandPath ?? [command.name]
|
|
25
35
|
const selected = getCommandAtPath(command, commandPath)
|
|
26
|
-
const commandLine =
|
|
36
|
+
const commandLine = (options?.prefix ?? commandPath).map((value) => commandLineArg(value))
|
|
27
37
|
yield* logCurrentCommand(commandLine)
|
|
28
38
|
yield* promptCommand(selected, commandLine, selected === command ? "ROOT" : selected.name)
|
|
29
|
-
return
|
|
39
|
+
return {
|
|
40
|
+
args: commandLine.map((arg) => arg.value),
|
|
41
|
+
displayArgs: commandLine.map((arg) => arg.displayValue)
|
|
42
|
+
}
|
|
30
43
|
}
|
|
31
44
|
)
|
|
32
45
|
|
|
@@ -49,7 +62,7 @@ const getCommandAtPath = (
|
|
|
49
62
|
|
|
50
63
|
const promptCommand: (
|
|
51
64
|
command: Command.Command.Any,
|
|
52
|
-
commandLine: Array<
|
|
65
|
+
commandLine: Array<CommandLineArg>,
|
|
53
66
|
sectionName: string
|
|
54
67
|
) => Effect.Effect<void, CliError.CliError | Terminal.QuitError, Command.Environment> = Effect.fnUntraced(
|
|
55
68
|
function*(command, commandLine, sectionName) {
|
|
@@ -81,7 +94,7 @@ const promptCommand: (
|
|
|
81
94
|
return
|
|
82
95
|
}
|
|
83
96
|
|
|
84
|
-
const child = yield* Prompt.run(Prompt.
|
|
97
|
+
const child = yield* Prompt.run(Prompt.Select({
|
|
85
98
|
message: "Command",
|
|
86
99
|
choices: visibleSubcommands.map((command) => ({
|
|
87
100
|
title: command.name,
|
|
@@ -94,7 +107,7 @@ const promptCommand: (
|
|
|
94
107
|
}))
|
|
95
108
|
}))
|
|
96
109
|
yield* Console.log()
|
|
97
|
-
commandLine.push(child.name)
|
|
110
|
+
commandLine.push(commandLineArg(child.name))
|
|
98
111
|
if (hasWizardSteps(child)) {
|
|
99
112
|
yield* logCurrentCommand(commandLine)
|
|
100
113
|
}
|
|
@@ -107,15 +120,17 @@ const hasWizardSteps = (command: Command.Command.Any): boolean => {
|
|
|
107
120
|
return hasVisibleSubcommands || toImpl(command).config.orderedParams.length > 0
|
|
108
121
|
}
|
|
109
122
|
|
|
110
|
-
const promptParam
|
|
111
|
-
param: Param.Any
|
|
112
|
-
|
|
113
|
-
|
|
123
|
+
const promptParam = Effect.fnUntraced(
|
|
124
|
+
function*(param: Param.Any): Effect.fn.Return<
|
|
125
|
+
Array<CommandLineArg>,
|
|
126
|
+
CliError.CliError | Terminal.QuitError,
|
|
127
|
+
Command.Environment
|
|
128
|
+
> {
|
|
114
129
|
const single = Param.getUnderlyingSingleOrThrow(param)
|
|
115
130
|
const metadata = Param.getParamMetadata(param)
|
|
116
131
|
|
|
117
132
|
if (metadata.isOptional) {
|
|
118
|
-
const include = yield* Prompt.run(Prompt.
|
|
133
|
+
const include = yield* Prompt.run(Prompt.Confirm({
|
|
119
134
|
message: `Set ${renderParamLabel(single)}?`,
|
|
120
135
|
initial: false
|
|
121
136
|
}))
|
|
@@ -127,25 +142,25 @@ const promptParam: (
|
|
|
127
142
|
|
|
128
143
|
const count = !metadata.isVariadic
|
|
129
144
|
? 1
|
|
130
|
-
: yield* Prompt.run(Prompt.
|
|
145
|
+
: yield* Prompt.run(Prompt.Int({
|
|
131
146
|
message: `${renderParamLabel(single)} count`,
|
|
132
147
|
default: Option.getOrElse(metadata.variadicMin, () => 0),
|
|
133
148
|
min: Option.getOrElse(metadata.variadicMin, () => 0),
|
|
134
149
|
...(Option.isSome(metadata.variadicMax) ? { max: metadata.variadicMax.value } : {})
|
|
135
150
|
}))
|
|
136
|
-
const values: Array<
|
|
151
|
+
const values: Array<CommandLineArg> = []
|
|
137
152
|
for (let i = 0; i < count; i++) {
|
|
138
153
|
values.push(yield* promptSingle(single))
|
|
139
154
|
}
|
|
140
155
|
|
|
141
156
|
const parsed = single.kind === Param.flagKind
|
|
142
157
|
? {
|
|
143
|
-
flags: { [single.name]: values },
|
|
158
|
+
flags: { [single.name]: values.map((arg) => arg.value) },
|
|
144
159
|
arguments: []
|
|
145
160
|
}
|
|
146
161
|
: {
|
|
147
162
|
flags: {},
|
|
148
|
-
arguments: values
|
|
163
|
+
arguments: values.map((arg) => arg.value)
|
|
149
164
|
}
|
|
150
165
|
yield* param.parse(parsed)
|
|
151
166
|
yield* Console.log()
|
|
@@ -153,18 +168,23 @@ const promptParam: (
|
|
|
153
168
|
if (single.kind === Param.argumentKind) {
|
|
154
169
|
return values
|
|
155
170
|
}
|
|
156
|
-
|
|
171
|
+
// Inline option-looking values so the lexer cannot interpret them as flags or the -- delimiter.
|
|
172
|
+
return values.flatMap((value) =>
|
|
173
|
+
value.value.startsWith("-") && value.value.length > 1
|
|
174
|
+
? [commandLineArg(`--${single.name}=${value.value}`, `--${single.name}=${value.displayValue}`)]
|
|
175
|
+
: [commandLineArg(`--${single.name}`), value]
|
|
176
|
+
)
|
|
157
177
|
}
|
|
158
178
|
)
|
|
159
179
|
|
|
160
180
|
const promptSingle = (
|
|
161
181
|
single: Param.Single<Param.ParamKind, unknown>
|
|
162
|
-
): Effect.Effect<
|
|
182
|
+
): Effect.Effect<CommandLineArg, Terminal.QuitError, Command.Environment> => {
|
|
163
183
|
const message = renderParamMessage(single)
|
|
164
184
|
switch (single.primitiveType._tag) {
|
|
165
185
|
case "Boolean":
|
|
166
186
|
return Effect.map(
|
|
167
|
-
Prompt.run(Prompt.
|
|
187
|
+
Prompt.run(Prompt.Confirm({
|
|
168
188
|
message,
|
|
169
189
|
label: {
|
|
170
190
|
confirm: "true",
|
|
@@ -175,28 +195,36 @@ const promptSingle = (
|
|
|
175
195
|
defaultDeny: "(t/F)"
|
|
176
196
|
}
|
|
177
197
|
})),
|
|
178
|
-
String
|
|
198
|
+
(value) => commandLineArg(String(value))
|
|
179
199
|
)
|
|
180
200
|
case "Choice": {
|
|
181
201
|
const choices = Primitive.getChoiceKeys(single.primitiveType) ?? []
|
|
182
|
-
return
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
202
|
+
return Effect.map(
|
|
203
|
+
Prompt.run(Prompt.Select({
|
|
204
|
+
message,
|
|
205
|
+
choices: choices.map((choice) => ({ title: choice, value: choice }))
|
|
206
|
+
})),
|
|
207
|
+
commandLineArg
|
|
208
|
+
)
|
|
186
209
|
}
|
|
187
210
|
case "Date":
|
|
188
|
-
return Effect.map(Prompt.run(Prompt.
|
|
189
|
-
case "
|
|
190
|
-
return Effect.map(Prompt.run(Prompt.
|
|
191
|
-
case "
|
|
192
|
-
return Effect.map(Prompt.run(Prompt.
|
|
211
|
+
return Effect.map(Prompt.run(Prompt.Date({ message })), (date) => commandLineArg(date.toISOString()))
|
|
212
|
+
case "Finite":
|
|
213
|
+
return Effect.map(Prompt.run(Prompt.Number({ message })), (value) => commandLineArg(String(value)))
|
|
214
|
+
case "Int":
|
|
215
|
+
return Effect.map(Prompt.run(Prompt.Int({ message })), (value) => commandLineArg(String(value)))
|
|
193
216
|
case "Redacted":
|
|
194
|
-
return Effect.map(
|
|
217
|
+
return Effect.map(
|
|
218
|
+
Prompt.run(Prompt.Password({ message })),
|
|
219
|
+
(value) => commandLineArg(Redacted.value(value), "<redacted>")
|
|
220
|
+
)
|
|
195
221
|
default:
|
|
196
|
-
return Prompt.run(Prompt.
|
|
222
|
+
return Effect.map(Prompt.run(Prompt.String({ message })), commandLineArg)
|
|
197
223
|
}
|
|
198
224
|
}
|
|
199
225
|
|
|
226
|
+
const commandLineArg = (value: string, displayValue: string = value): CommandLineArg => ({ value, displayValue })
|
|
227
|
+
|
|
200
228
|
const formatName = (single: Param.Single<Param.ParamKind, unknown>): string =>
|
|
201
229
|
single.kind === Param.flagKind ? `--${single.name}` : single.name
|
|
202
230
|
|
|
@@ -216,8 +244,8 @@ const humanize = (name: string): string => {
|
|
|
216
244
|
return [words[0][0].toUpperCase() + words[0].slice(1), ...words.slice(1)].join(" ")
|
|
217
245
|
}
|
|
218
246
|
|
|
219
|
-
const logCurrentCommand = (commandLine: ReadonlyArray<
|
|
220
|
-
Console.log(renderCommandBlock("Current command", commandLine, Ansi.magenta))
|
|
247
|
+
const logCurrentCommand = (commandLine: ReadonlyArray<CommandLineArg>): Effect.Effect<void> =>
|
|
248
|
+
Console.log(renderCommandBlock("Current command", commandLine.map((arg) => arg.displayValue), Ansi.magenta))
|
|
221
249
|
|
|
222
250
|
const renderSection = (commandName: string, section: string): string =>
|
|
223
251
|
`${Ansi.annotate(commandName.toUpperCase(), Ansi.bold, Ansi.cyanBright)} ${Ansi.annotate("·", Ansi.blackBright)} ${
|