effect 4.0.0-beta.77 → 4.0.0-beta.79
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +6 -81
- package/dist/Array.js.map +1 -1
- package/dist/BigDecimal.d.ts +5 -55
- package/dist/BigDecimal.d.ts.map +1 -1
- package/dist/BigDecimal.js +5 -55
- package/dist/BigDecimal.js.map +1 -1
- package/dist/BigInt.d.ts +5 -64
- package/dist/BigInt.d.ts.map +1 -1
- package/dist/BigInt.js +5 -64
- package/dist/BigInt.js.map +1 -1
- package/dist/Boolean.d.ts +5 -52
- package/dist/Boolean.d.ts.map +1 -1
- package/dist/Boolean.js +5 -52
- package/dist/Boolean.js.map +1 -1
- package/dist/Brand.d.ts.map +1 -1
- package/dist/Brand.js +0 -44
- package/dist/Brand.js.map +1 -1
- package/dist/Cache.d.ts.map +1 -1
- package/dist/Cache.js +5 -44
- package/dist/Cache.js.map +1 -1
- package/dist/Cause.d.ts +6 -72
- package/dist/Cause.d.ts.map +1 -1
- package/dist/Cause.js +6 -72
- package/dist/Cause.js.map +1 -1
- package/dist/Channel.d.ts +6 -67
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +6 -67
- package/dist/Channel.js.map +1 -1
- package/dist/ChannelSchema.d.ts +5 -41
- package/dist/ChannelSchema.d.ts.map +1 -1
- package/dist/ChannelSchema.js.map +1 -1
- package/dist/Chunk.d.ts +6 -67
- package/dist/Chunk.d.ts.map +1 -1
- package/dist/Chunk.js +6 -67
- package/dist/Chunk.js.map +1 -1
- package/dist/Clock.d.ts +4 -56
- package/dist/Clock.d.ts.map +1 -1
- package/dist/Clock.js.map +1 -1
- package/dist/Combiner.d.ts +6 -57
- package/dist/Combiner.d.ts.map +1 -1
- package/dist/Combiner.js.map +1 -1
- package/dist/Config.d.ts +5 -69
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.d.ts +6 -75
- package/dist/ConfigProvider.d.ts.map +1 -1
- package/dist/ConfigProvider.js +6 -75
- package/dist/ConfigProvider.js.map +1 -1
- package/dist/Console.d.ts +6 -70
- package/dist/Console.d.ts.map +1 -1
- package/dist/Console.js.map +1 -1
- package/dist/Context.d.ts +8 -47
- package/dist/Context.d.ts.map +1 -1
- package/dist/Context.js.map +1 -1
- package/dist/Cron.d.ts.map +1 -1
- package/dist/Cron.js +5 -41
- package/dist/Cron.js.map +1 -1
- package/dist/Crypto.d.ts +6 -50
- package/dist/Crypto.d.ts.map +1 -1
- package/dist/Crypto.js +6 -50
- package/dist/Crypto.js.map +1 -1
- package/dist/Data.d.ts +5 -72
- package/dist/Data.d.ts.map +1 -1
- package/dist/Data.js.map +1 -1
- package/dist/DateTime.d.ts +8 -48
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/DateTime.js.map +1 -1
- package/dist/Deferred.d.ts +5 -58
- package/dist/Deferred.d.ts.map +1 -1
- package/dist/Deferred.js.map +1 -1
- package/dist/Differ.d.ts +4 -35
- package/dist/Differ.d.ts.map +1 -1
- package/dist/Differ.js +4 -35
- package/dist/Duration.d.ts +6 -46
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +6 -46
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +227 -103
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +172 -18
- package/dist/Effect.js.map +1 -1
- package/dist/Effectable.d.ts +4 -34
- package/dist/Effectable.d.ts.map +1 -1
- package/dist/Effectable.js.map +1 -1
- package/dist/Encoding.d.ts.map +1 -1
- package/dist/Encoding.js +5 -46
- package/dist/Encoding.js.map +1 -1
- package/dist/Equal.d.ts +6 -66
- package/dist/Equal.d.ts.map +1 -1
- package/dist/Equal.js.map +1 -1
- package/dist/Equivalence.d.ts.map +1 -1
- package/dist/Equivalence.js +6 -48
- package/dist/Equivalence.js.map +1 -1
- package/dist/ErrorReporter.d.ts +8 -47
- package/dist/ErrorReporter.d.ts.map +1 -1
- package/dist/ErrorReporter.js.map +1 -1
- package/dist/ExecutionPlan.d.ts +6 -79
- package/dist/ExecutionPlan.d.ts.map +1 -1
- package/dist/ExecutionPlan.js.map +1 -1
- package/dist/Exit.d.ts +6 -53
- package/dist/Exit.d.ts.map +1 -1
- package/dist/Exit.js.map +1 -1
- package/dist/Fiber.d.ts +5 -52
- package/dist/Fiber.d.ts.map +1 -1
- package/dist/Fiber.js.map +1 -1
- package/dist/FiberHandle.d.ts.map +1 -1
- package/dist/FiberHandle.js +8 -38
- package/dist/FiberHandle.js.map +1 -1
- package/dist/FiberMap.d.ts.map +1 -1
- package/dist/FiberMap.js +7 -34
- package/dist/FiberMap.js.map +1 -1
- package/dist/FiberSet.d.ts.map +1 -1
- package/dist/FiberSet.js +6 -36
- package/dist/FiberSet.js.map +1 -1
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js +8 -51
- package/dist/FileSystem.js.map +1 -1
- package/dist/Filter.d.ts +8 -33
- package/dist/Filter.d.ts.map +1 -1
- package/dist/Filter.js.map +1 -1
- package/dist/Formatter.d.ts.map +1 -1
- package/dist/Formatter.js +6 -49
- package/dist/Formatter.js.map +1 -1
- package/dist/Function.d.ts +5 -43
- package/dist/Function.d.ts.map +1 -1
- package/dist/Function.js.map +1 -1
- package/dist/Graph.d.ts +5 -48
- package/dist/Graph.d.ts.map +1 -1
- package/dist/Graph.js +69 -61
- package/dist/Graph.js.map +1 -1
- package/dist/HKT.d.ts +6 -48
- package/dist/HKT.d.ts.map +1 -1
- package/dist/Hash.d.ts.map +1 -1
- package/dist/Hash.js +7 -49
- package/dist/Hash.js.map +1 -1
- package/dist/HashMap.d.ts +6 -69
- package/dist/HashMap.d.ts.map +1 -1
- package/dist/HashMap.js +6 -69
- package/dist/HashMap.js.map +1 -1
- package/dist/HashRing.d.ts.map +1 -1
- package/dist/HashRing.js +6 -56
- package/dist/HashRing.js.map +1 -1
- package/dist/HashSet.d.ts +7 -36
- package/dist/HashSet.d.ts.map +1 -1
- package/dist/HashSet.js +7 -36
- package/dist/HashSet.js.map +1 -1
- package/dist/Inspectable.d.ts.map +1 -1
- package/dist/Inspectable.js +6 -60
- package/dist/Inspectable.js.map +1 -1
- package/dist/Iterable.d.ts +5 -50
- package/dist/Iterable.d.ts.map +1 -1
- package/dist/Iterable.js +5 -50
- package/dist/Iterable.js.map +1 -1
- package/dist/JsonPatch.d.ts.map +1 -1
- package/dist/JsonPatch.js +0 -53
- package/dist/JsonPatch.js.map +1 -1
- package/dist/JsonPointer.d.ts +4 -49
- package/dist/JsonPointer.d.ts.map +1 -1
- package/dist/JsonPointer.js +4 -49
- package/dist/JsonPointer.js.map +1 -1
- package/dist/JsonSchema.d.ts.map +1 -1
- package/dist/JsonSchema.js +6 -82
- package/dist/JsonSchema.js.map +1 -1
- package/dist/Latch.d.ts +5 -31
- package/dist/Latch.d.ts.map +1 -1
- package/dist/Latch.js.map +1 -1
- package/dist/Layer.d.ts +6 -38
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js.map +1 -1
- package/dist/LayerMap.d.ts +7 -32
- package/dist/LayerMap.d.ts.map +1 -1
- package/dist/LayerMap.js +7 -32
- package/dist/LayerMap.js.map +1 -1
- package/dist/LogLevel.d.ts +4 -35
- package/dist/LogLevel.d.ts.map +1 -1
- package/dist/LogLevel.js.map +1 -1
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js +6 -80
- package/dist/Logger.js.map +1 -1
- package/dist/ManagedRuntime.d.ts +6 -36
- package/dist/ManagedRuntime.d.ts.map +1 -1
- package/dist/ManagedRuntime.js.map +1 -1
- package/dist/Match.d.ts.map +1 -1
- package/dist/Match.js +8 -42
- package/dist/Match.js.map +1 -1
- package/dist/Metric.d.ts +8 -81
- package/dist/Metric.d.ts.map +1 -1
- package/dist/Metric.js +8 -81
- package/dist/Metric.js.map +1 -1
- package/dist/MutableHashMap.d.ts +6 -35
- package/dist/MutableHashMap.d.ts.map +1 -1
- package/dist/MutableHashMap.js.map +1 -1
- package/dist/MutableHashSet.d.ts.map +1 -1
- package/dist/MutableHashSet.js +5 -63
- package/dist/MutableHashSet.js.map +1 -1
- package/dist/MutableList.d.ts.map +1 -1
- package/dist/MutableList.js +6 -46
- package/dist/MutableList.js.map +1 -1
- package/dist/MutableRef.d.ts.map +1 -1
- package/dist/MutableRef.js +7 -30
- package/dist/MutableRef.js.map +1 -1
- package/dist/Newtype.d.ts +8 -61
- package/dist/Newtype.d.ts.map +1 -1
- package/dist/Newtype.js.map +1 -1
- package/dist/NonEmptyIterable.d.ts +0 -135
- package/dist/NonEmptyIterable.d.ts.map +1 -1
- package/dist/NonEmptyIterable.js +0 -135
- package/dist/NonEmptyIterable.js.map +1 -1
- package/dist/Number.d.ts +4 -55
- package/dist/Number.d.ts.map +1 -1
- package/dist/Number.js +4 -55
- package/dist/Number.js.map +1 -1
- package/dist/Optic.d.ts +9 -91
- package/dist/Optic.d.ts.map +1 -1
- package/dist/Optic.js +9 -91
- package/dist/Optic.js.map +1 -1
- package/dist/Option.d.ts +8 -69
- package/dist/Option.d.ts.map +1 -1
- package/dist/Option.js +8 -69
- package/dist/Option.js.map +1 -1
- package/dist/Order.d.ts.map +1 -1
- package/dist/Order.js +8 -76
- package/dist/Order.js.map +1 -1
- package/dist/Ordering.d.ts +5 -31
- package/dist/Ordering.d.ts.map +1 -1
- package/dist/Ordering.js.map +1 -1
- package/dist/PartitionedSemaphore.d.ts +0 -28
- package/dist/PartitionedSemaphore.d.ts.map +1 -1
- package/dist/PartitionedSemaphore.js +0 -28
- package/dist/PartitionedSemaphore.js.map +1 -1
- package/dist/Path.d.ts +7 -29
- package/dist/Path.d.ts.map +1 -1
- package/dist/Path.js +6 -28
- package/dist/Path.js.map +1 -1
- package/dist/Pipeable.d.ts +0 -11
- package/dist/Pipeable.d.ts.map +1 -1
- package/dist/Pipeable.js +0 -11
- package/dist/Pipeable.js.map +1 -1
- package/dist/PlatformError.d.ts +7 -29
- package/dist/PlatformError.d.ts.map +1 -1
- package/dist/PlatformError.js +7 -29
- package/dist/PlatformError.js.map +1 -1
- package/dist/Pool.d.ts.map +1 -1
- package/dist/Pool.js.map +1 -1
- package/dist/Predicate.d.ts.map +1 -1
- package/dist/Predicate.js +6 -61
- package/dist/Predicate.js.map +1 -1
- package/dist/PrimaryKey.d.ts +0 -40
- package/dist/PrimaryKey.d.ts.map +1 -1
- package/dist/PrimaryKey.js +0 -40
- package/dist/PrimaryKey.js.map +1 -1
- package/dist/PubSub.d.ts +8 -56
- package/dist/PubSub.d.ts.map +1 -1
- package/dist/PubSub.js +8 -56
- package/dist/PubSub.js.map +1 -1
- package/dist/Pull.d.ts +8 -25
- package/dist/Pull.d.ts.map +1 -1
- package/dist/Pull.js +8 -25
- package/dist/Pull.js.map +1 -1
- package/dist/Queue.d.ts +5 -62
- package/dist/Queue.d.ts.map +1 -1
- package/dist/Queue.js +5 -62
- package/dist/Queue.js.map +1 -1
- package/dist/Random.d.ts +5 -39
- package/dist/Random.d.ts.map +1 -1
- package/dist/Random.js +6 -74
- package/dist/Random.js.map +1 -1
- package/dist/RcMap.d.ts +9 -17
- package/dist/RcMap.d.ts.map +1 -1
- package/dist/RcMap.js +9 -17
- package/dist/RcMap.js.map +1 -1
- package/dist/RcRef.d.ts +6 -36
- package/dist/RcRef.d.ts.map +1 -1
- package/dist/RcRef.js.map +1 -1
- package/dist/Record.d.ts +6 -71
- package/dist/Record.d.ts.map +1 -1
- package/dist/Record.js +6 -71
- package/dist/Record.js.map +1 -1
- package/dist/Redactable.d.ts +0 -58
- package/dist/Redactable.d.ts.map +1 -1
- package/dist/Redactable.js.map +1 -1
- package/dist/Redacted.d.ts +8 -41
- package/dist/Redacted.d.ts.map +1 -1
- package/dist/Redacted.js +8 -41
- package/dist/Redacted.js.map +1 -1
- package/dist/Reducer.d.ts +5 -64
- package/dist/Reducer.d.ts.map +1 -1
- package/dist/Reducer.js +5 -64
- package/dist/Reducer.js.map +1 -1
- package/dist/Ref.d.ts +8 -49
- package/dist/Ref.d.ts.map +1 -1
- package/dist/Ref.js +8 -49
- package/dist/Ref.js.map +1 -1
- package/dist/References.d.ts +0 -49
- package/dist/References.d.ts.map +1 -1
- package/dist/References.js.map +1 -1
- package/dist/RegExp.d.ts.map +1 -1
- package/dist/RegExp.js +0 -26
- package/dist/RegExp.js.map +1 -1
- package/dist/Request.d.ts +6 -41
- package/dist/Request.d.ts.map +1 -1
- package/dist/Request.js.map +1 -1
- package/dist/RequestResolver.d.ts +6 -41
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Resource.d.ts.map +1 -1
- package/dist/Resource.js +5 -30
- package/dist/Resource.js.map +1 -1
- package/dist/Result.d.ts +6 -64
- package/dist/Result.d.ts.map +1 -1
- package/dist/Result.js +6 -64
- package/dist/Result.js.map +1 -1
- package/dist/Runtime.d.ts.map +1 -1
- package/dist/Runtime.js +7 -55
- package/dist/Runtime.js.map +1 -1
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +5 -61
- package/dist/Schedule.js.map +1 -1
- package/dist/Scheduler.d.ts +6 -17
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js +6 -17
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +257 -166
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +347 -361
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +18 -73
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +83 -89
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaGetter.d.ts +9 -83
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +9 -83
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaIssue.d.ts +8 -76
- package/dist/SchemaIssue.d.ts.map +1 -1
- package/dist/SchemaIssue.js.map +1 -1
- package/dist/SchemaParser.d.ts.map +1 -1
- package/dist/SchemaParser.js +23 -43
- package/dist/SchemaParser.js.map +1 -1
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +10 -84
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +9 -82
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +9 -82
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/SchemaUtils.d.ts.map +1 -1
- package/dist/SchemaUtils.js +5 -33
- package/dist/SchemaUtils.js.map +1 -1
- package/dist/Scope.d.ts +6 -41
- package/dist/Scope.d.ts.map +1 -1
- package/dist/Scope.js +6 -41
- package/dist/Scope.js.map +1 -1
- package/dist/ScopedCache.d.ts.map +1 -1
- package/dist/ScopedCache.js +8 -23
- package/dist/ScopedCache.js.map +1 -1
- package/dist/ScopedRef.d.ts +6 -18
- package/dist/ScopedRef.d.ts.map +1 -1
- package/dist/ScopedRef.js +6 -18
- package/dist/ScopedRef.js.map +1 -1
- package/dist/Semaphore.d.ts +8 -30
- package/dist/Semaphore.d.ts.map +1 -1
- package/dist/Semaphore.js.map +1 -1
- package/dist/Sink.d.ts +6 -29
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js.map +1 -1
- package/dist/Stdio.d.ts +7 -26
- package/dist/Stdio.d.ts.map +1 -1
- package/dist/Stdio.js +7 -26
- package/dist/Stdio.js.map +1 -1
- package/dist/Stream.d.ts +8 -79
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +8 -79
- package/dist/Stream.js.map +1 -1
- package/dist/String.d.ts +5 -63
- package/dist/String.d.ts.map +1 -1
- package/dist/String.js +5 -63
- package/dist/String.js.map +1 -1
- package/dist/Struct.d.ts +8 -71
- package/dist/Struct.d.ts.map +1 -1
- package/dist/Struct.js +9 -71
- package/dist/Struct.js.map +1 -1
- package/dist/SubscriptionRef.d.ts +6 -53
- package/dist/SubscriptionRef.d.ts.map +1 -1
- package/dist/SubscriptionRef.js +6 -53
- package/dist/SubscriptionRef.js.map +1 -1
- package/dist/Symbol.d.ts +0 -17
- package/dist/Symbol.d.ts.map +1 -1
- package/dist/Symbol.js +0 -17
- package/dist/Symbol.js.map +1 -1
- package/dist/SynchronizedRef.d.ts +8 -21
- package/dist/SynchronizedRef.d.ts.map +1 -1
- package/dist/SynchronizedRef.js +8 -21
- package/dist/SynchronizedRef.js.map +1 -1
- package/dist/Take.d.ts +0 -24
- package/dist/Take.d.ts.map +1 -1
- package/dist/Take.js.map +1 -1
- package/dist/Terminal.d.ts +7 -28
- package/dist/Terminal.d.ts.map +1 -1
- package/dist/Terminal.js.map +1 -1
- package/dist/Tracer.d.ts +6 -36
- package/dist/Tracer.d.ts.map +1 -1
- package/dist/Tracer.js +6 -36
- package/dist/Tracer.js.map +1 -1
- package/dist/Trie.d.ts +6 -49
- package/dist/Trie.d.ts.map +1 -1
- package/dist/Trie.js.map +1 -1
- package/dist/Tuple.d.ts +8 -66
- package/dist/Tuple.d.ts.map +1 -1
- package/dist/Tuple.js +8 -66
- package/dist/Tuple.js.map +1 -1
- package/dist/TxChunk.d.ts +8 -40
- package/dist/TxChunk.d.ts.map +1 -1
- package/dist/TxChunk.js +8 -40
- package/dist/TxChunk.js.map +1 -1
- package/dist/TxDeferred.d.ts +0 -18
- package/dist/TxDeferred.d.ts.map +1 -1
- package/dist/TxDeferred.js +0 -18
- package/dist/TxDeferred.js.map +1 -1
- package/dist/TxHashMap.d.ts +6 -23
- package/dist/TxHashMap.d.ts.map +1 -1
- package/dist/TxHashMap.js +6 -23
- package/dist/TxHashMap.js.map +1 -1
- package/dist/TxHashSet.d.ts +10 -19
- package/dist/TxHashSet.d.ts.map +1 -1
- package/dist/TxHashSet.js +10 -19
- package/dist/TxHashSet.js.map +1 -1
- package/dist/TxPriorityQueue.d.ts +9 -29
- package/dist/TxPriorityQueue.d.ts.map +1 -1
- package/dist/TxPriorityQueue.js +9 -29
- package/dist/TxPriorityQueue.js.map +1 -1
- package/dist/TxPubSub.d.ts +6 -44
- package/dist/TxPubSub.d.ts.map +1 -1
- package/dist/TxPubSub.js +6 -44
- package/dist/TxPubSub.js.map +1 -1
- package/dist/TxQueue.d.ts +8 -48
- package/dist/TxQueue.d.ts.map +1 -1
- package/dist/TxQueue.js.map +1 -1
- package/dist/TxReentrantLock.d.ts +8 -40
- package/dist/TxReentrantLock.d.ts.map +1 -1
- package/dist/TxReentrantLock.js +8 -40
- package/dist/TxReentrantLock.js.map +1 -1
- package/dist/TxRef.d.ts +9 -59
- package/dist/TxRef.d.ts.map +1 -1
- package/dist/TxRef.js +9 -59
- package/dist/TxRef.js.map +1 -1
- package/dist/TxSemaphore.d.ts +6 -34
- package/dist/TxSemaphore.d.ts.map +1 -1
- package/dist/TxSemaphore.js +6 -34
- package/dist/TxSemaphore.js.map +1 -1
- package/dist/TxSubscriptionRef.d.ts +7 -35
- package/dist/TxSubscriptionRef.d.ts.map +1 -1
- package/dist/TxSubscriptionRef.js +7 -35
- package/dist/TxSubscriptionRef.js.map +1 -1
- package/dist/Types.d.ts +6 -48
- package/dist/Types.d.ts.map +1 -1
- package/dist/Types.js +5 -47
- package/dist/UndefinedOr.d.ts +8 -55
- package/dist/UndefinedOr.d.ts.map +1 -1
- package/dist/UndefinedOr.js +8 -55
- package/dist/UndefinedOr.js.map +1 -1
- package/dist/Unify.d.ts +8 -29
- package/dist/Unify.d.ts.map +1 -1
- package/dist/Unify.js +8 -29
- package/dist/Unify.js.map +1 -1
- package/dist/Utils.d.ts +8 -55
- package/dist/Utils.d.ts.map +1 -1
- package/dist/Utils.js +20 -14
- package/dist/Utils.js.map +1 -1
- package/dist/internal/effect.js +5 -3
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/option.js +5 -3
- package/dist/internal/option.js.map +1 -1
- package/dist/internal/schema/arbitrary.d.ts +4 -1
- package/dist/internal/schema/arbitrary.d.ts.map +1 -1
- package/dist/internal/schema/arbitrary.js +655 -170
- package/dist/internal/schema/arbitrary.js.map +1 -1
- package/dist/internal/schema/representation.js +1 -1
- package/dist/internal/schema/representation.js.map +1 -1
- package/dist/testing/FastCheck.d.ts +5 -6
- package/dist/testing/FastCheck.d.ts.map +1 -1
- package/dist/testing/FastCheck.js +5 -6
- package/dist/testing/FastCheck.js.map +1 -1
- package/dist/testing/TestClock.d.ts.map +1 -1
- package/dist/testing/TestClock.js +8 -23
- package/dist/testing/TestClock.js.map +1 -1
- package/dist/testing/TestConsole.d.ts.map +1 -1
- package/dist/testing/TestConsole.js +7 -36
- package/dist/testing/TestConsole.js.map +1 -1
- package/dist/testing/TestSchema.d.ts.map +1 -1
- package/dist/testing/TestSchema.js +6 -63
- package/dist/testing/TestSchema.js.map +1 -1
- package/dist/unstable/ai/AiError.d.ts +9 -78
- package/dist/unstable/ai/AiError.d.ts.map +1 -1
- package/dist/unstable/ai/AiError.js +9 -78
- 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 +7 -32
- package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
- package/dist/unstable/ai/Chat.d.ts.map +1 -1
- package/dist/unstable/ai/Chat.js +0 -46
- package/dist/unstable/ai/Chat.js.map +1 -1
- package/dist/unstable/ai/EmbeddingModel.d.ts +8 -45
- package/dist/unstable/ai/EmbeddingModel.d.ts.map +1 -1
- package/dist/unstable/ai/EmbeddingModel.js +8 -45
- package/dist/unstable/ai/EmbeddingModel.js.map +1 -1
- package/dist/unstable/ai/IdGenerator.d.ts +6 -44
- package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
- package/dist/unstable/ai/IdGenerator.js +6 -44
- package/dist/unstable/ai/IdGenerator.js.map +1 -1
- package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
- package/dist/unstable/ai/LanguageModel.js.map +1 -1
- package/dist/unstable/ai/McpSchema.d.ts +8 -27
- package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
- package/dist/unstable/ai/McpSchema.js +8 -27
- package/dist/unstable/ai/McpSchema.js.map +1 -1
- package/dist/unstable/ai/McpServer.d.ts.map +1 -1
- package/dist/unstable/ai/McpServer.js +8 -22
- package/dist/unstable/ai/McpServer.js.map +1 -1
- package/dist/unstable/ai/Model.d.ts +8 -49
- package/dist/unstable/ai/Model.d.ts.map +1 -1
- package/dist/unstable/ai/Model.js +8 -49
- package/dist/unstable/ai/Model.js.map +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.d.ts.map +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.js +9 -50
- package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
- package/dist/unstable/ai/Prompt.d.ts.map +1 -1
- package/dist/unstable/ai/Prompt.js +6 -50
- package/dist/unstable/ai/Prompt.js.map +1 -1
- package/dist/unstable/ai/Response.d.ts +8 -49
- package/dist/unstable/ai/Response.d.ts.map +1 -1
- package/dist/unstable/ai/Response.js.map +1 -1
- package/dist/unstable/ai/ResponseIdTracker.d.ts +0 -26
- package/dist/unstable/ai/ResponseIdTracker.d.ts.map +1 -1
- package/dist/unstable/ai/ResponseIdTracker.js +0 -26
- package/dist/unstable/ai/ResponseIdTracker.js.map +1 -1
- package/dist/unstable/ai/Telemetry.d.ts +6 -30
- package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
- package/dist/unstable/ai/Telemetry.js +6 -30
- package/dist/unstable/ai/Telemetry.js.map +1 -1
- package/dist/unstable/ai/Tokenizer.d.ts +8 -46
- package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
- package/dist/unstable/ai/Tokenizer.js +8 -46
- package/dist/unstable/ai/Tokenizer.js.map +1 -1
- package/dist/unstable/ai/Tool.d.ts +9 -54
- package/dist/unstable/ai/Tool.d.ts.map +1 -1
- package/dist/unstable/ai/Tool.js +9 -54
- package/dist/unstable/ai/Tool.js.map +1 -1
- package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
- package/dist/unstable/ai/Toolkit.js.map +1 -1
- package/dist/unstable/cli/Argument.d.ts +6 -20
- package/dist/unstable/cli/Argument.d.ts.map +1 -1
- package/dist/unstable/cli/Argument.js.map +1 -1
- package/dist/unstable/cli/CliError.d.ts.map +1 -1
- package/dist/unstable/cli/CliError.js +8 -23
- package/dist/unstable/cli/CliError.js.map +1 -1
- package/dist/unstable/cli/CliOutput.d.ts +6 -19
- package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
- package/dist/unstable/cli/CliOutput.js +6 -19
- package/dist/unstable/cli/CliOutput.js.map +1 -1
- package/dist/unstable/cli/Command.d.ts +8 -27
- package/dist/unstable/cli/Command.d.ts.map +1 -1
- package/dist/unstable/cli/Command.js.map +1 -1
- package/dist/unstable/cli/Completions.d.ts.map +1 -1
- package/dist/unstable/cli/Completions.js +0 -24
- package/dist/unstable/cli/Completions.js.map +1 -1
- package/dist/unstable/cli/Flag.d.ts +8 -18
- package/dist/unstable/cli/Flag.d.ts.map +1 -1
- package/dist/unstable/cli/Flag.js.map +1 -1
- package/dist/unstable/cli/GlobalFlag.d.ts +8 -22
- package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -1
- package/dist/unstable/cli/GlobalFlag.js +9 -23
- package/dist/unstable/cli/GlobalFlag.js.map +1 -1
- package/dist/unstable/cli/HelpDoc.d.ts +6 -19
- package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
- package/dist/unstable/cli/HelpDoc.js +6 -19
- package/dist/unstable/cli/Param.d.ts +8 -25
- package/dist/unstable/cli/Param.d.ts.map +1 -1
- package/dist/unstable/cli/Param.js +8 -25
- package/dist/unstable/cli/Param.js.map +1 -1
- package/dist/unstable/cli/Primitive.d.ts.map +1 -1
- package/dist/unstable/cli/Primitive.js +8 -58
- package/dist/unstable/cli/Primitive.js.map +1 -1
- package/dist/unstable/cli/Prompt.d.ts.map +1 -1
- package/dist/unstable/cli/Prompt.js +7 -22
- package/dist/unstable/cli/Prompt.js.map +1 -1
- package/dist/unstable/cluster/ClusterCron.d.ts +6 -26
- package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterCron.js +6 -26
- package/dist/unstable/cluster/ClusterCron.js.map +1 -1
- package/dist/unstable/cluster/ClusterError.d.ts +5 -40
- package/dist/unstable/cluster/ClusterError.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterError.js +5 -40
- package/dist/unstable/cluster/ClusterError.js.map +1 -1
- package/dist/unstable/cluster/ClusterMetrics.d.ts +6 -20
- package/dist/unstable/cluster/ClusterMetrics.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterMetrics.js +6 -20
- package/dist/unstable/cluster/ClusterMetrics.js.map +1 -1
- package/dist/unstable/cluster/ClusterSchema.d.ts +0 -38
- package/dist/unstable/cluster/ClusterSchema.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterSchema.js +0 -38
- 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 +0 -16
- package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/unstable/cluster/DeliverAt.d.ts +0 -17
- package/dist/unstable/cluster/DeliverAt.d.ts.map +1 -1
- package/dist/unstable/cluster/DeliverAt.js.map +1 -1
- package/dist/unstable/cluster/Entity.d.ts.map +1 -1
- package/dist/unstable/cluster/Entity.js +8 -31
- package/dist/unstable/cluster/Entity.js.map +1 -1
- package/dist/unstable/cluster/EntityAddress.d.ts +0 -13
- package/dist/unstable/cluster/EntityAddress.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityAddress.js +0 -13
- package/dist/unstable/cluster/EntityAddress.js.map +1 -1
- package/dist/unstable/cluster/EntityId.d.ts +0 -24
- package/dist/unstable/cluster/EntityId.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityId.js +0 -24
- package/dist/unstable/cluster/EntityId.js.map +1 -1
- package/dist/unstable/cluster/EntityProxy.d.ts +7 -21
- package/dist/unstable/cluster/EntityProxy.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityProxy.js +6 -20
- package/dist/unstable/cluster/EntityProxy.js.map +1 -1
- package/dist/unstable/cluster/EntityProxyServer.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityProxyServer.js +7 -19
- package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
- package/dist/unstable/cluster/EntityResource.d.ts +8 -22
- package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityResource.js.map +1 -1
- package/dist/unstable/cluster/EntityType.d.ts +0 -13
- package/dist/unstable/cluster/EntityType.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityType.js +0 -13
- package/dist/unstable/cluster/EntityType.js.map +1 -1
- package/dist/unstable/cluster/Envelope.d.ts.map +1 -1
- package/dist/unstable/cluster/Envelope.js +7 -22
- package/dist/unstable/cluster/Envelope.js.map +1 -1
- package/dist/unstable/cluster/HttpRunner.d.ts +5 -32
- package/dist/unstable/cluster/HttpRunner.d.ts.map +1 -1
- package/dist/unstable/cluster/HttpRunner.js +5 -32
- package/dist/unstable/cluster/HttpRunner.js.map +1 -1
- package/dist/unstable/cluster/K8sHttpClient.d.ts +0 -32
- package/dist/unstable/cluster/K8sHttpClient.d.ts.map +1 -1
- package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
- package/dist/unstable/cluster/MachineId.d.ts +0 -20
- package/dist/unstable/cluster/MachineId.d.ts.map +1 -1
- package/dist/unstable/cluster/MachineId.js +0 -20
- package/dist/unstable/cluster/MachineId.js.map +1 -1
- package/dist/unstable/cluster/Message.d.ts +7 -23
- package/dist/unstable/cluster/Message.d.ts.map +1 -1
- package/dist/unstable/cluster/Message.js +7 -23
- package/dist/unstable/cluster/Message.js.map +1 -1
- package/dist/unstable/cluster/MessageStorage.d.ts +8 -37
- package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/MessageStorage.js +7 -36
- package/dist/unstable/cluster/MessageStorage.js.map +1 -1
- package/dist/unstable/cluster/Reply.d.ts +7 -19
- package/dist/unstable/cluster/Reply.d.ts.map +1 -1
- package/dist/unstable/cluster/Reply.js.map +1 -1
- package/dist/unstable/cluster/Runner.d.ts +3 -35
- package/dist/unstable/cluster/Runner.d.ts.map +1 -1
- package/dist/unstable/cluster/Runner.js +3 -35
- package/dist/unstable/cluster/Runner.js.map +1 -1
- package/dist/unstable/cluster/RunnerAddress.d.ts +4 -32
- package/dist/unstable/cluster/RunnerAddress.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerAddress.js +4 -32
- package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
- package/dist/unstable/cluster/RunnerHealth.d.ts +6 -35
- package/dist/unstable/cluster/RunnerHealth.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerHealth.js +6 -35
- package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
- package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerServer.js +8 -23
- package/dist/unstable/cluster/RunnerServer.js.map +1 -1
- package/dist/unstable/cluster/RunnerStorage.d.ts +6 -21
- package/dist/unstable/cluster/RunnerStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerStorage.js +6 -21
- package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/Runners.d.ts +8 -29
- package/dist/unstable/cluster/Runners.d.ts.map +1 -1
- package/dist/unstable/cluster/Runners.js +7 -28
- package/dist/unstable/cluster/Runners.js.map +1 -1
- package/dist/unstable/cluster/ShardId.d.ts +0 -17
- package/dist/unstable/cluster/ShardId.d.ts.map +1 -1
- package/dist/unstable/cluster/ShardId.js +0 -17
- package/dist/unstable/cluster/ShardId.js.map +1 -1
- package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
- package/dist/unstable/cluster/Sharding.js +7 -39
- package/dist/unstable/cluster/Sharding.js.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.d.ts +7 -34
- package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.js +8 -35
- package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
- package/dist/unstable/cluster/ShardingRegistrationEvent.d.ts +0 -22
- package/dist/unstable/cluster/ShardingRegistrationEvent.d.ts.map +1 -1
- package/dist/unstable/cluster/ShardingRegistrationEvent.js +0 -22
- package/dist/unstable/cluster/ShardingRegistrationEvent.js.map +1 -1
- package/dist/unstable/cluster/SingleRunner.d.ts +8 -21
- package/dist/unstable/cluster/SingleRunner.d.ts.map +1 -1
- package/dist/unstable/cluster/SingleRunner.js +8 -21
- package/dist/unstable/cluster/SingleRunner.js.map +1 -1
- package/dist/unstable/cluster/Singleton.d.ts +0 -23
- package/dist/unstable/cluster/Singleton.d.ts.map +1 -1
- package/dist/unstable/cluster/Singleton.js +0 -23
- package/dist/unstable/cluster/Singleton.js.map +1 -1
- package/dist/unstable/cluster/SingletonAddress.d.ts +0 -22
- package/dist/unstable/cluster/SingletonAddress.d.ts.map +1 -1
- package/dist/unstable/cluster/SingletonAddress.js +0 -22
- package/dist/unstable/cluster/SingletonAddress.js.map +1 -1
- package/dist/unstable/cluster/Snowflake.d.ts +8 -17
- package/dist/unstable/cluster/Snowflake.d.ts.map +1 -1
- package/dist/unstable/cluster/Snowflake.js.map +1 -1
- package/dist/unstable/cluster/SocketRunner.d.ts.map +1 -1
- package/dist/unstable/cluster/SocketRunner.js +6 -19
- package/dist/unstable/cluster/SocketRunner.js.map +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.js +7 -36
- 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 +6 -27
- package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/TestRunner.d.ts +0 -21
- package/dist/unstable/cluster/TestRunner.d.ts.map +1 -1
- package/dist/unstable/cluster/TestRunner.js +0 -21
- package/dist/unstable/cluster/TestRunner.js.map +1 -1
- package/dist/unstable/cluster/internal/entityManager.js +18 -6
- package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
- package/dist/unstable/devtools/DevTools.d.ts +0 -17
- package/dist/unstable/devtools/DevTools.d.ts.map +1 -1
- package/dist/unstable/devtools/DevTools.js +0 -17
- package/dist/unstable/devtools/DevTools.js.map +1 -1
- package/dist/unstable/devtools/DevToolsClient.d.ts.map +1 -1
- package/dist/unstable/devtools/DevToolsClient.js +0 -24
- package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
- package/dist/unstable/devtools/DevToolsSchema.d.ts.map +1 -1
- package/dist/unstable/devtools/DevToolsSchema.js +0 -17
- package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
- package/dist/unstable/devtools/DevToolsServer.d.ts +0 -13
- package/dist/unstable/devtools/DevToolsServer.d.ts.map +1 -1
- package/dist/unstable/devtools/DevToolsServer.js +0 -13
- package/dist/unstable/devtools/DevToolsServer.js.map +1 -1
- package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
- package/dist/unstable/encoding/Msgpack.js +5 -28
- package/dist/unstable/encoding/Msgpack.js.map +1 -1
- package/dist/unstable/encoding/Ndjson.d.ts +4 -28
- package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
- package/dist/unstable/encoding/Ndjson.js +4 -28
- package/dist/unstable/encoding/Ndjson.js.map +1 -1
- package/dist/unstable/encoding/Sse.d.ts +6 -37
- package/dist/unstable/encoding/Sse.d.ts.map +1 -1
- package/dist/unstable/encoding/Sse.js.map +1 -1
- package/dist/unstable/eventlog/Event.d.ts.map +1 -1
- package/dist/unstable/eventlog/Event.js +3 -25
- package/dist/unstable/eventlog/Event.js.map +1 -1
- package/dist/unstable/eventlog/EventGroup.d.ts +6 -21
- package/dist/unstable/eventlog/EventGroup.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventGroup.js +6 -21
- package/dist/unstable/eventlog/EventGroup.js.map +1 -1
- package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventJournal.js +9 -32
- package/dist/unstable/eventlog/EventJournal.js.map +1 -1
- package/dist/unstable/eventlog/EventLog.d.ts +6 -28
- package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLog.js +6 -28
- package/dist/unstable/eventlog/EventLog.js.map +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.d.ts +5 -18
- package/dist/unstable/eventlog/EventLogEncryption.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.js +5 -18
- package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
- package/dist/unstable/eventlog/EventLogMessage.d.ts +4 -20
- package/dist/unstable/eventlog/EventLogMessage.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogMessage.js.map +1 -1
- package/dist/unstable/eventlog/EventLogRemote.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogRemote.js +7 -17
- package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServer.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServerEncrypted.js +8 -19
- package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServerUnencrypted.js +7 -35
- package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -1
- package/dist/unstable/eventlog/EventLogSessionAuth.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogSessionAuth.js +6 -35
- package/dist/unstable/eventlog/EventLogSessionAuth.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventJournal.d.ts.map +1 -1
- package/dist/unstable/eventlog/SqlEventJournal.js +0 -26
- package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.d.ts +6 -39
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js +6 -39
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js +0 -29
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
- package/dist/unstable/http/Cookies.d.ts +7 -59
- package/dist/unstable/http/Cookies.d.ts.map +1 -1
- package/dist/unstable/http/Cookies.js +7 -59
- package/dist/unstable/http/Cookies.js.map +1 -1
- package/dist/unstable/http/Etag.d.ts +0 -22
- package/dist/unstable/http/Etag.d.ts.map +1 -1
- package/dist/unstable/http/Etag.js +0 -22
- package/dist/unstable/http/Etag.js.map +1 -1
- package/dist/unstable/http/FetchHttpClient.d.ts +0 -23
- package/dist/unstable/http/FetchHttpClient.d.ts.map +1 -1
- package/dist/unstable/http/FetchHttpClient.js +0 -23
- package/dist/unstable/http/FetchHttpClient.js.map +1 -1
- package/dist/unstable/http/FindMyWay.d.ts +6 -0
- package/dist/unstable/http/FindMyWay.d.ts.map +1 -1
- package/dist/unstable/http/FindMyWay.js +6 -0
- package/dist/unstable/http/FindMyWay.js.map +1 -1
- package/dist/unstable/http/Headers.d.ts +6 -52
- package/dist/unstable/http/Headers.d.ts.map +1 -1
- package/dist/unstable/http/Headers.js +9 -53
- package/dist/unstable/http/Headers.js.map +1 -1
- package/dist/unstable/http/HttpBody.d.ts.map +1 -1
- package/dist/unstable/http/HttpBody.js +9 -53
- package/dist/unstable/http/HttpBody.js.map +1 -1
- package/dist/unstable/http/HttpClient.d.ts +9 -34
- package/dist/unstable/http/HttpClient.d.ts.map +1 -1
- package/dist/unstable/http/HttpClient.js.map +1 -1
- package/dist/unstable/http/HttpClientError.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientError.js +0 -20
- package/dist/unstable/http/HttpClientError.js.map +1 -1
- package/dist/unstable/http/HttpClientRequest.d.ts +4 -35
- package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientRequest.js +4 -35
- package/dist/unstable/http/HttpClientRequest.js.map +1 -1
- package/dist/unstable/http/HttpClientResponse.d.ts +6 -34
- package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientResponse.js +6 -34
- package/dist/unstable/http/HttpClientResponse.js.map +1 -1
- package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
- package/dist/unstable/http/HttpEffect.js.map +1 -1
- package/dist/unstable/http/HttpIncomingMessage.d.ts +6 -22
- package/dist/unstable/http/HttpIncomingMessage.d.ts.map +1 -1
- package/dist/unstable/http/HttpIncomingMessage.js +6 -22
- package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
- package/dist/unstable/http/HttpMethod.d.ts +5 -29
- package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
- package/dist/unstable/http/HttpMethod.js +5 -29
- package/dist/unstable/http/HttpMethod.js.map +1 -1
- package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/unstable/http/HttpMiddleware.js +6 -19
- package/dist/unstable/http/HttpMiddleware.js.map +1 -1
- package/dist/unstable/http/HttpPlatform.d.ts +0 -13
- package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
- package/dist/unstable/http/HttpPlatform.js +0 -13
- package/dist/unstable/http/HttpPlatform.js.map +1 -1
- package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
- package/dist/unstable/http/HttpRouter.js +7 -39
- package/dist/unstable/http/HttpRouter.js.map +1 -1
- package/dist/unstable/http/HttpServer.d.ts +6 -29
- package/dist/unstable/http/HttpServer.d.ts.map +1 -1
- package/dist/unstable/http/HttpServer.js +6 -29
- package/dist/unstable/http/HttpServer.js.map +1 -1
- package/dist/unstable/http/HttpServerError.d.ts +6 -30
- package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerError.js +6 -30
- package/dist/unstable/http/HttpServerError.js.map +1 -1
- package/dist/unstable/http/HttpServerRequest.d.ts +8 -33
- package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerRequest.js.map +1 -1
- package/dist/unstable/http/HttpServerRespondable.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerRespondable.js +5 -29
- package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
- package/dist/unstable/http/HttpServerResponse.d.ts +8 -41
- package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerResponse.js +8 -41
- package/dist/unstable/http/HttpServerResponse.js.map +1 -1
- package/dist/unstable/http/HttpStaticServer.d.ts +6 -31
- package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -1
- package/dist/unstable/http/HttpStaticServer.js +6 -31
- package/dist/unstable/http/HttpStaticServer.js.map +1 -1
- package/dist/unstable/http/HttpTraceContext.d.ts +0 -24
- package/dist/unstable/http/HttpTraceContext.d.ts.map +1 -1
- package/dist/unstable/http/HttpTraceContext.js +0 -24
- package/dist/unstable/http/HttpTraceContext.js.map +1 -1
- package/dist/unstable/http/Multipart.d.ts +6 -35
- package/dist/unstable/http/Multipart.d.ts.map +1 -1
- package/dist/unstable/http/Multipart.js +6 -35
- package/dist/unstable/http/Multipart.js.map +1 -1
- package/dist/unstable/http/Multipasta/HeadersParser.d.ts +5 -0
- package/dist/unstable/http/Multipasta/HeadersParser.d.ts.map +1 -1
- package/dist/unstable/http/Multipasta/HeadersParser.js +5 -0
- package/dist/unstable/http/Multipasta/HeadersParser.js.map +1 -1
- package/dist/unstable/http/Multipasta/Node.d.ts +5 -0
- package/dist/unstable/http/Multipasta/Node.d.ts.map +1 -1
- package/dist/unstable/http/Multipasta/Node.js +5 -0
- package/dist/unstable/http/Multipasta/Node.js.map +1 -1
- package/dist/unstable/http/Multipasta/Search.d.ts +5 -0
- package/dist/unstable/http/Multipasta/Search.d.ts.map +1 -1
- package/dist/unstable/http/Multipasta/Search.js +5 -0
- package/dist/unstable/http/Multipasta/Search.js.map +1 -1
- package/dist/unstable/http/Multipasta/Web.d.ts +5 -0
- package/dist/unstable/http/Multipasta/Web.d.ts.map +1 -1
- package/dist/unstable/http/Multipasta/Web.js +5 -0
- package/dist/unstable/http/Multipasta/Web.js.map +1 -1
- package/dist/unstable/http/Multipasta.d.ts +6 -0
- package/dist/unstable/http/Multipasta.d.ts.map +1 -1
- package/dist/unstable/http/Multipasta.js +6 -0
- package/dist/unstable/http/Multipasta.js.map +1 -1
- package/dist/unstable/http/Template.d.ts +5 -26
- package/dist/unstable/http/Template.d.ts.map +1 -1
- package/dist/unstable/http/Template.js +5 -26
- package/dist/unstable/http/Template.js.map +1 -1
- package/dist/unstable/http/Url.d.ts +5 -28
- package/dist/unstable/http/Url.d.ts.map +1 -1
- package/dist/unstable/http/Url.js +5 -28
- package/dist/unstable/http/Url.js.map +1 -1
- package/dist/unstable/http/UrlParams.d.ts +4 -32
- package/dist/unstable/http/UrlParams.d.ts.map +1 -1
- package/dist/unstable/http/UrlParams.js +4 -32
- package/dist/unstable/http/UrlParams.js.map +1 -1
- package/dist/unstable/httpapi/HttpApi.d.ts +5 -45
- package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApi.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.js +5 -39
- package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.js +20 -43
- package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.js +9 -51
- 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 +1 -32
- package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.d.ts +8 -34
- package/dist/unstable/httpapi/HttpApiGroup.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +9 -48
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.js +9 -48
- 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 +0 -24
- package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSchema.d.ts +0 -32
- package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiSchema.js +0 -32
- package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSecurity.d.ts +0 -29
- package/dist/unstable/httpapi/HttpApiSecurity.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiSecurity.js +0 -29
- package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSwagger.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiSwagger.js +0 -24
- 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 +5 -18
- 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 +5 -39
- package/dist/unstable/httpapi/OpenApi.js.map +1 -1
- package/dist/unstable/observability/Otlp.d.ts +5 -32
- package/dist/unstable/observability/Otlp.d.ts.map +1 -1
- package/dist/unstable/observability/Otlp.js.map +1 -1
- package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpExporter.js +5 -22
- package/dist/unstable/observability/OtlpExporter.js.map +1 -1
- package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpLogger.js +6 -32
- 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 +11 -23
- 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 +5 -35
- package/dist/unstable/observability/OtlpResource.js.map +1 -1
- package/dist/unstable/observability/OtlpSerialization.d.ts +4 -26
- package/dist/unstable/observability/OtlpSerialization.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpSerialization.js +4 -26
- package/dist/unstable/observability/OtlpSerialization.js.map +1 -1
- package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpTracer.js +10 -24
- package/dist/unstable/observability/OtlpTracer.js.map +1 -1
- package/dist/unstable/observability/PrometheusMetrics.d.ts +4 -41
- package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/PrometheusMetrics.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 +9 -23
- package/dist/unstable/observability/internal/otlpEnv.js.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.d.ts +8 -20
- package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.js +7 -19
- package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
- package/dist/unstable/persistence/Persistable.d.ts +5 -19
- package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
- package/dist/unstable/persistence/Persistable.js.map +1 -1
- package/dist/unstable/persistence/PersistedCache.d.ts +5 -28
- package/dist/unstable/persistence/PersistedCache.d.ts.map +1 -1
- package/dist/unstable/persistence/PersistedCache.js +5 -28
- package/dist/unstable/persistence/PersistedCache.js.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
- package/dist/unstable/persistence/Persistence.d.ts +6 -22
- package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
- package/dist/unstable/persistence/Persistence.js +5 -21
- package/dist/unstable/persistence/Persistence.js.map +1 -1
- package/dist/unstable/persistence/RateLimiter.d.ts +8 -24
- package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
- package/dist/unstable/persistence/RateLimiter.js +22 -39
- package/dist/unstable/persistence/RateLimiter.js.map +1 -1
- package/dist/unstable/persistence/Redis.d.ts.map +1 -1
- package/dist/unstable/persistence/Redis.js +10 -33
- package/dist/unstable/persistence/Redis.js.map +1 -1
- package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcess.js +6 -38
- package/dist/unstable/process/ChildProcess.js.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.d.ts +7 -15
- package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.js +7 -15
- package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
- package/dist/unstable/reactivity/AsyncResult.d.ts +8 -40
- package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
- package/dist/unstable/reactivity/AsyncResult.js +8 -40
- package/dist/unstable/reactivity/AsyncResult.js.map +1 -1
- package/dist/unstable/reactivity/Atom.d.ts +8 -36
- package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
- package/dist/unstable/reactivity/Atom.js +8 -36
- package/dist/unstable/reactivity/Atom.js.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.d.ts +6 -25
- package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.js +6 -25
- package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
- package/dist/unstable/reactivity/AtomRef.d.ts +4 -29
- package/dist/unstable/reactivity/AtomRef.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRef.js +4 -29
- package/dist/unstable/reactivity/AtomRef.js.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.d.ts +7 -74
- package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.js +6 -73
- package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.d.ts +6 -20
- package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.js +6 -20
- package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
- package/dist/unstable/reactivity/Hydration.d.ts.map +1 -1
- package/dist/unstable/reactivity/Hydration.js +8 -31
- package/dist/unstable/reactivity/Hydration.js.map +1 -1
- package/dist/unstable/reactivity/Reactivity.d.ts +6 -37
- package/dist/unstable/reactivity/Reactivity.d.ts.map +1 -1
- package/dist/unstable/reactivity/Reactivity.js +6 -37
- package/dist/unstable/reactivity/Reactivity.js.map +1 -1
- package/dist/unstable/rpc/Rpc.d.ts +8 -40
- package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
- package/dist/unstable/rpc/Rpc.js.map +1 -1
- package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClient.js.map +1 -1
- package/dist/unstable/rpc/RpcClientError.d.ts +0 -23
- package/dist/unstable/rpc/RpcClientError.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClientError.js +0 -23
- package/dist/unstable/rpc/RpcClientError.js.map +1 -1
- package/dist/unstable/rpc/RpcGroup.d.ts +5 -30
- package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcGroup.js.map +1 -1
- package/dist/unstable/rpc/RpcMessage.d.ts +0 -26
- package/dist/unstable/rpc/RpcMessage.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcMessage.js.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.d.ts +0 -28
- package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.js +0 -28
- package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
- package/dist/unstable/rpc/RpcSchema.d.ts +0 -25
- package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSchema.js +0 -25
- package/dist/unstable/rpc/RpcSchema.js.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.d.ts +7 -33
- package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.js +6 -32
- 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.map +1 -1
- package/dist/unstable/rpc/RpcTest.d.ts +0 -24
- package/dist/unstable/rpc/RpcTest.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcTest.js +0 -24
- package/dist/unstable/rpc/RpcTest.js.map +1 -1
- package/dist/unstable/rpc/RpcWorker.d.ts +6 -30
- package/dist/unstable/rpc/RpcWorker.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcWorker.js.map +1 -1
- package/dist/unstable/rpc/Utils.d.ts.map +1 -1
- package/dist/unstable/rpc/Utils.js.map +1 -1
- package/dist/unstable/schema/Model.d.ts +20 -3
- package/dist/unstable/schema/Model.d.ts.map +1 -1
- package/dist/unstable/schema/Model.js +18 -17
- package/dist/unstable/schema/Model.js.map +1 -1
- package/dist/unstable/schema/VariantSchema.d.ts +5 -17
- package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
- package/dist/unstable/schema/VariantSchema.js.map +1 -1
- package/dist/unstable/socket/Socket.d.ts +6 -21
- package/dist/unstable/socket/Socket.d.ts.map +1 -1
- package/dist/unstable/socket/Socket.js.map +1 -1
- package/dist/unstable/socket/SocketServer.d.ts +6 -20
- package/dist/unstable/socket/SocketServer.d.ts.map +1 -1
- package/dist/unstable/socket/SocketServer.js +6 -20
- package/dist/unstable/socket/SocketServer.js.map +1 -1
- package/dist/unstable/sql/Migrator.d.ts.map +1 -1
- package/dist/unstable/sql/Migrator.js +5 -40
- package/dist/unstable/sql/Migrator.js.map +1 -1
- package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
- package/dist/unstable/sql/SqlClient.js +5 -19
- package/dist/unstable/sql/SqlClient.js.map +1 -1
- package/dist/unstable/sql/SqlConnection.d.ts +6 -18
- package/dist/unstable/sql/SqlConnection.d.ts.map +1 -1
- package/dist/unstable/sql/SqlConnection.js +6 -18
- package/dist/unstable/sql/SqlConnection.js.map +1 -1
- package/dist/unstable/sql/SqlError.d.ts.map +1 -1
- package/dist/unstable/sql/SqlError.js +7 -32
- package/dist/unstable/sql/SqlError.js.map +1 -1
- package/dist/unstable/sql/SqlModel.d.ts +6 -14
- package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
- package/dist/unstable/sql/SqlModel.js.map +1 -1
- package/dist/unstable/sql/SqlResolver.d.ts +6 -23
- package/dist/unstable/sql/SqlResolver.d.ts.map +1 -1
- package/dist/unstable/sql/SqlResolver.js +6 -23
- package/dist/unstable/sql/SqlResolver.js.map +1 -1
- package/dist/unstable/sql/SqlSchema.d.ts +3 -27
- package/dist/unstable/sql/SqlSchema.d.ts.map +1 -1
- package/dist/unstable/sql/SqlSchema.js +3 -27
- package/dist/unstable/sql/SqlSchema.js.map +1 -1
- package/dist/unstable/sql/SqlStream.d.ts.map +1 -1
- package/dist/unstable/sql/SqlStream.js +0 -10
- package/dist/unstable/sql/SqlStream.js.map +1 -1
- package/dist/unstable/sql/Statement.d.ts.map +1 -1
- package/dist/unstable/sql/Statement.js +6 -34
- package/dist/unstable/sql/Statement.js.map +1 -1
- package/dist/unstable/workers/Transferable.d.ts +0 -21
- package/dist/unstable/workers/Transferable.d.ts.map +1 -1
- package/dist/unstable/workers/Transferable.js +0 -21
- package/dist/unstable/workers/Transferable.js.map +1 -1
- package/dist/unstable/workers/Worker.d.ts +6 -34
- package/dist/unstable/workers/Worker.d.ts.map +1 -1
- package/dist/unstable/workers/Worker.js +6 -34
- package/dist/unstable/workers/Worker.js.map +1 -1
- package/dist/unstable/workers/WorkerError.d.ts.map +1 -1
- package/dist/unstable/workers/WorkerError.js +4 -33
- package/dist/unstable/workers/WorkerError.js.map +1 -1
- package/dist/unstable/workers/WorkerRunner.d.ts +5 -30
- package/dist/unstable/workers/WorkerRunner.d.ts.map +1 -1
- package/dist/unstable/workers/WorkerRunner.js +5 -30
- package/dist/unstable/workers/WorkerRunner.js.map +1 -1
- package/dist/unstable/workflow/Activity.d.ts +5 -18
- package/dist/unstable/workflow/Activity.d.ts.map +1 -1
- package/dist/unstable/workflow/Activity.js.map +1 -1
- package/dist/unstable/workflow/DurableClock.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableClock.js +5 -24
- package/dist/unstable/workflow/DurableClock.js.map +1 -1
- package/dist/unstable/workflow/DurableDeferred.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableDeferred.js +6 -18
- package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
- package/dist/unstable/workflow/DurableQueue.d.ts +0 -25
- package/dist/unstable/workflow/DurableQueue.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableQueue.js +0 -25
- package/dist/unstable/workflow/DurableQueue.js.map +1 -1
- package/dist/unstable/workflow/Workflow.d.ts +1 -1
- package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
- package/dist/unstable/workflow/Workflow.js +7 -19
- package/dist/unstable/workflow/Workflow.js.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.d.ts +8 -20
- package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
- package/dist/unstable/workflow/WorkflowProxy.d.ts +7 -23
- package/dist/unstable/workflow/WorkflowProxy.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowProxy.js.map +1 -1
- package/dist/unstable/workflow/WorkflowProxyServer.d.ts +6 -23
- package/dist/unstable/workflow/WorkflowProxyServer.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
- package/package.json +1 -1
- package/src/Array.ts +6 -81
- package/src/BigDecimal.ts +5 -55
- package/src/BigInt.ts +5 -64
- package/src/Boolean.ts +5 -52
- package/src/Brand.ts +0 -44
- package/src/Cache.ts +5 -44
- package/src/Cause.ts +6 -72
- package/src/Channel.ts +6 -67
- package/src/ChannelSchema.ts +5 -41
- package/src/Chunk.ts +6 -67
- package/src/Clock.ts +4 -56
- package/src/Combiner.ts +6 -57
- package/src/Config.ts +5 -69
- package/src/ConfigProvider.ts +6 -75
- package/src/Console.ts +6 -70
- package/src/Context.ts +8 -47
- package/src/Cron.ts +5 -41
- package/src/Crypto.ts +6 -50
- package/src/Data.ts +5 -72
- package/src/DateTime.ts +8 -48
- package/src/Deferred.ts +5 -58
- package/src/Differ.ts +4 -35
- package/src/Duration.ts +6 -46
- package/src/Effect.ts +227 -103
- package/src/Effectable.ts +4 -34
- package/src/Encoding.ts +5 -46
- package/src/Equal.ts +6 -66
- package/src/Equivalence.ts +6 -48
- package/src/ErrorReporter.ts +8 -47
- package/src/ExecutionPlan.ts +6 -79
- package/src/Exit.ts +6 -53
- package/src/Fiber.ts +5 -52
- package/src/FiberHandle.ts +8 -38
- package/src/FiberMap.ts +7 -34
- package/src/FiberSet.ts +6 -36
- package/src/FileSystem.ts +8 -51
- package/src/Filter.ts +8 -33
- package/src/Formatter.ts +6 -49
- package/src/Function.ts +5 -43
- package/src/Graph.ts +79 -61
- package/src/HKT.ts +6 -48
- package/src/Hash.ts +7 -49
- package/src/HashMap.ts +6 -69
- package/src/HashRing.ts +6 -56
- package/src/HashSet.ts +7 -36
- package/src/Inspectable.ts +6 -60
- package/src/Iterable.ts +5 -50
- package/src/JsonPatch.ts +0 -53
- package/src/JsonPointer.ts +4 -49
- package/src/JsonSchema.ts +6 -82
- package/src/Latch.ts +5 -31
- package/src/Layer.ts +6 -38
- package/src/LayerMap.ts +7 -32
- package/src/LogLevel.ts +4 -35
- package/src/Logger.ts +6 -80
- package/src/ManagedRuntime.ts +6 -36
- package/src/Match.ts +8 -42
- package/src/Metric.ts +8 -81
- package/src/MutableHashMap.ts +6 -35
- package/src/MutableHashSet.ts +5 -63
- package/src/MutableList.ts +6 -46
- package/src/MutableRef.ts +7 -30
- package/src/Newtype.ts +8 -61
- package/src/NonEmptyIterable.ts +0 -135
- package/src/Number.ts +4 -55
- package/src/Optic.ts +9 -91
- package/src/Option.ts +8 -69
- package/src/Order.ts +8 -76
- package/src/Ordering.ts +5 -31
- package/src/PartitionedSemaphore.ts +0 -28
- package/src/Path.ts +7 -29
- package/src/Pipeable.ts +0 -11
- package/src/PlatformError.ts +7 -29
- package/src/Pool.ts +6 -42
- package/src/Predicate.ts +6 -61
- package/src/PrimaryKey.ts +0 -40
- package/src/PubSub.ts +8 -56
- package/src/Pull.ts +8 -25
- package/src/Queue.ts +5 -62
- package/src/Random.ts +18 -114
- package/src/RcMap.ts +9 -17
- package/src/RcRef.ts +6 -36
- package/src/Record.ts +6 -71
- package/src/Redactable.ts +0 -58
- package/src/Redacted.ts +8 -41
- package/src/Reducer.ts +5 -64
- package/src/Ref.ts +8 -49
- package/src/References.ts +0 -49
- package/src/RegExp.ts +0 -26
- package/src/Request.ts +6 -41
- package/src/RequestResolver.ts +6 -41
- package/src/Resource.ts +5 -30
- package/src/Result.ts +6 -64
- package/src/Runtime.ts +7 -55
- package/src/Schedule.ts +5 -61
- package/src/Scheduler.ts +6 -17
- package/src/Schema.ts +697 -397
- package/src/SchemaAST.ts +115 -91
- package/src/SchemaGetter.ts +9 -83
- package/src/SchemaIssue.ts +8 -76
- package/src/SchemaParser.ts +27 -43
- package/src/SchemaRepresentation.ts +10 -84
- package/src/SchemaTransformation.ts +9 -82
- package/src/SchemaUtils.ts +5 -33
- package/src/Scope.ts +6 -41
- package/src/ScopedCache.ts +8 -23
- package/src/ScopedRef.ts +6 -18
- package/src/Semaphore.ts +8 -30
- package/src/Sink.ts +6 -29
- package/src/Stdio.ts +7 -26
- package/src/Stream.ts +8 -79
- package/src/String.ts +5 -63
- package/src/Struct.ts +9 -71
- package/src/SubscriptionRef.ts +6 -53
- package/src/Symbol.ts +0 -17
- package/src/SynchronizedRef.ts +8 -21
- package/src/Take.ts +0 -24
- package/src/Terminal.ts +7 -28
- package/src/Tracer.ts +6 -36
- package/src/Trie.ts +6 -49
- package/src/Tuple.ts +8 -66
- package/src/TxChunk.ts +8 -40
- package/src/TxDeferred.ts +0 -18
- package/src/TxHashMap.ts +6 -23
- package/src/TxHashSet.ts +10 -19
- package/src/TxPriorityQueue.ts +9 -29
- package/src/TxPubSub.ts +6 -44
- package/src/TxQueue.ts +8 -48
- package/src/TxReentrantLock.ts +8 -40
- package/src/TxRef.ts +9 -59
- package/src/TxSemaphore.ts +6 -34
- package/src/TxSubscriptionRef.ts +7 -35
- package/src/Types.ts +6 -48
- package/src/UndefinedOr.ts +8 -55
- package/src/Unify.ts +8 -29
- package/src/Utils.ts +28 -68
- package/src/internal/effect.ts +9 -8
- package/src/internal/option.ts +31 -26
- package/src/internal/schema/arbitrary.ts +740 -173
- package/src/internal/schema/representation.ts +1 -1
- package/src/testing/FastCheck.ts +5 -6
- package/src/testing/TestClock.ts +8 -23
- package/src/testing/TestConsole.ts +7 -36
- package/src/testing/TestSchema.ts +6 -63
- package/src/unstable/ai/AiError.ts +9 -78
- package/src/unstable/ai/AnthropicStructuredOutput.ts +7 -32
- package/src/unstable/ai/Chat.ts +0 -46
- package/src/unstable/ai/EmbeddingModel.ts +8 -45
- package/src/unstable/ai/IdGenerator.ts +6 -44
- package/src/unstable/ai/LanguageModel.ts +9 -48
- package/src/unstable/ai/McpSchema.ts +8 -27
- package/src/unstable/ai/McpServer.ts +7 -21
- package/src/unstable/ai/Model.ts +8 -49
- package/src/unstable/ai/OpenAiStructuredOutput.ts +9 -49
- package/src/unstable/ai/Prompt.ts +6 -50
- package/src/unstable/ai/Response.ts +8 -49
- package/src/unstable/ai/ResponseIdTracker.ts +0 -26
- package/src/unstable/ai/Telemetry.ts +6 -30
- package/src/unstable/ai/Tokenizer.ts +8 -46
- package/src/unstable/ai/Tool.ts +9 -54
- package/src/unstable/ai/Toolkit.ts +6 -75
- package/src/unstable/cli/Argument.ts +6 -20
- package/src/unstable/cli/CliError.ts +8 -23
- package/src/unstable/cli/CliOutput.ts +6 -19
- package/src/unstable/cli/Command.ts +8 -27
- package/src/unstable/cli/Completions.ts +0 -24
- package/src/unstable/cli/Flag.ts +8 -18
- package/src/unstable/cli/GlobalFlag.ts +10 -22
- package/src/unstable/cli/HelpDoc.ts +6 -19
- package/src/unstable/cli/Param.ts +8 -25
- package/src/unstable/cli/Primitive.ts +8 -58
- package/src/unstable/cli/Prompt.ts +8 -23
- package/src/unstable/cluster/ClusterCron.ts +6 -26
- package/src/unstable/cluster/ClusterError.ts +5 -40
- package/src/unstable/cluster/ClusterMetrics.ts +6 -20
- package/src/unstable/cluster/ClusterSchema.ts +0 -38
- package/src/unstable/cluster/ClusterWorkflowEngine.ts +0 -16
- package/src/unstable/cluster/DeliverAt.ts +0 -17
- package/src/unstable/cluster/Entity.ts +8 -31
- package/src/unstable/cluster/EntityAddress.ts +0 -13
- package/src/unstable/cluster/EntityId.ts +0 -24
- package/src/unstable/cluster/EntityProxy.ts +6 -20
- package/src/unstable/cluster/EntityProxyServer.ts +7 -19
- package/src/unstable/cluster/EntityResource.ts +8 -22
- package/src/unstable/cluster/EntityType.ts +0 -13
- package/src/unstable/cluster/Envelope.ts +7 -22
- package/src/unstable/cluster/HttpRunner.ts +5 -32
- package/src/unstable/cluster/K8sHttpClient.ts +0 -32
- package/src/unstable/cluster/MachineId.ts +0 -20
- package/src/unstable/cluster/Message.ts +7 -23
- package/src/unstable/cluster/MessageStorage.ts +7 -36
- package/src/unstable/cluster/Reply.ts +7 -19
- package/src/unstable/cluster/Runner.ts +3 -35
- package/src/unstable/cluster/RunnerAddress.ts +4 -32
- package/src/unstable/cluster/RunnerHealth.ts +6 -35
- package/src/unstable/cluster/RunnerServer.ts +8 -23
- package/src/unstable/cluster/RunnerStorage.ts +6 -21
- package/src/unstable/cluster/Runners.ts +7 -28
- package/src/unstable/cluster/ShardId.ts +0 -17
- package/src/unstable/cluster/Sharding.ts +7 -39
- package/src/unstable/cluster/ShardingConfig.ts +7 -34
- package/src/unstable/cluster/ShardingRegistrationEvent.ts +0 -22
- package/src/unstable/cluster/SingleRunner.ts +7 -20
- package/src/unstable/cluster/Singleton.ts +0 -23
- package/src/unstable/cluster/SingletonAddress.ts +0 -22
- package/src/unstable/cluster/Snowflake.ts +7 -16
- package/src/unstable/cluster/SocketRunner.ts +6 -19
- package/src/unstable/cluster/SqlMessageStorage.ts +7 -36
- package/src/unstable/cluster/SqlRunnerStorage.ts +6 -27
- package/src/unstable/cluster/TestRunner.ts +0 -21
- package/src/unstable/cluster/internal/entityManager.ts +23 -5
- package/src/unstable/devtools/DevTools.ts +0 -17
- package/src/unstable/devtools/DevToolsClient.ts +0 -24
- package/src/unstable/devtools/DevToolsSchema.ts +0 -17
- package/src/unstable/devtools/DevToolsServer.ts +0 -13
- package/src/unstable/encoding/Msgpack.ts +5 -28
- package/src/unstable/encoding/Ndjson.ts +4 -28
- package/src/unstable/encoding/Sse.ts +6 -37
- package/src/unstable/eventlog/Event.ts +3 -25
- package/src/unstable/eventlog/EventGroup.ts +6 -21
- package/src/unstable/eventlog/EventJournal.ts +9 -32
- package/src/unstable/eventlog/EventLog.ts +6 -28
- package/src/unstable/eventlog/EventLogEncryption.ts +5 -18
- package/src/unstable/eventlog/EventLogMessage.ts +4 -20
- package/src/unstable/eventlog/EventLogRemote.ts +7 -17
- package/src/unstable/eventlog/EventLogServer.ts +3 -26
- package/src/unstable/eventlog/EventLogServerEncrypted.ts +7 -18
- package/src/unstable/eventlog/EventLogServerUnencrypted.ts +7 -35
- package/src/unstable/eventlog/EventLogSessionAuth.ts +6 -35
- package/src/unstable/eventlog/SqlEventJournal.ts +0 -26
- package/src/unstable/eventlog/SqlEventLogServerEncrypted.ts +6 -39
- package/src/unstable/eventlog/SqlEventLogServerUnencrypted.ts +0 -29
- package/src/unstable/http/Cookies.ts +6 -58
- package/src/unstable/http/Etag.ts +0 -22
- package/src/unstable/http/FetchHttpClient.ts +0 -23
- package/src/unstable/http/FindMyWay.ts +6 -0
- package/src/unstable/http/Headers.ts +9 -54
- package/src/unstable/http/HttpBody.ts +9 -53
- package/src/unstable/http/HttpClient.ts +9 -34
- package/src/unstable/http/HttpClientError.ts +0 -20
- package/src/unstable/http/HttpClientRequest.ts +4 -35
- package/src/unstable/http/HttpClientResponse.ts +6 -34
- package/src/unstable/http/HttpEffect.ts +5 -33
- package/src/unstable/http/HttpIncomingMessage.ts +6 -22
- package/src/unstable/http/HttpMethod.ts +5 -29
- package/src/unstable/http/HttpMiddleware.ts +6 -19
- package/src/unstable/http/HttpPlatform.ts +0 -13
- package/src/unstable/http/HttpRouter.ts +7 -39
- package/src/unstable/http/HttpServer.ts +6 -29
- package/src/unstable/http/HttpServerError.ts +6 -30
- package/src/unstable/http/HttpServerRequest.ts +7 -32
- package/src/unstable/http/HttpServerRespondable.ts +5 -29
- package/src/unstable/http/HttpServerResponse.ts +8 -41
- package/src/unstable/http/HttpStaticServer.ts +6 -31
- package/src/unstable/http/HttpTraceContext.ts +0 -24
- package/src/unstable/http/Multipart.ts +6 -35
- package/src/unstable/http/Multipasta/HeadersParser.ts +5 -0
- package/src/unstable/http/Multipasta/Node.ts +5 -0
- package/src/unstable/http/Multipasta/Search.ts +5 -0
- package/src/unstable/http/Multipasta/Web.ts +5 -0
- package/src/unstable/http/Multipasta.ts +6 -0
- package/src/unstable/http/Template.ts +5 -26
- package/src/unstable/http/Url.ts +5 -28
- package/src/unstable/http/UrlParams.ts +4 -32
- package/src/unstable/httpapi/HttpApi.ts +5 -45
- package/src/unstable/httpapi/HttpApiBuilder.ts +5 -39
- package/src/unstable/httpapi/HttpApiClient.ts +20 -43
- package/src/unstable/httpapi/HttpApiEndpoint.ts +9 -51
- package/src/unstable/httpapi/HttpApiError.ts +1 -32
- package/src/unstable/httpapi/HttpApiGroup.ts +8 -34
- package/src/unstable/httpapi/HttpApiMiddleware.ts +9 -48
- package/src/unstable/httpapi/HttpApiScalar.ts +0 -24
- package/src/unstable/httpapi/HttpApiSchema.ts +0 -32
- package/src/unstable/httpapi/HttpApiSecurity.ts +0 -29
- package/src/unstable/httpapi/HttpApiSwagger.ts +0 -24
- package/src/unstable/httpapi/HttpApiTest.ts +5 -18
- package/src/unstable/httpapi/OpenApi.ts +6 -40
- package/src/unstable/observability/Otlp.ts +5 -32
- package/src/unstable/observability/OtlpExporter.ts +5 -22
- package/src/unstable/observability/OtlpLogger.ts +6 -32
- package/src/unstable/observability/OtlpMetrics.ts +15 -23
- package/src/unstable/observability/OtlpResource.ts +5 -35
- package/src/unstable/observability/OtlpSerialization.ts +4 -26
- package/src/unstable/observability/OtlpTracer.ts +14 -24
- package/src/unstable/observability/PrometheusMetrics.ts +4 -41
- package/src/unstable/observability/internal/otlpEnv.ts +18 -37
- package/src/unstable/persistence/KeyValueStore.ts +8 -20
- package/src/unstable/persistence/Persistable.ts +4 -18
- package/src/unstable/persistence/PersistedCache.ts +5 -28
- package/src/unstable/persistence/PersistedQueue.ts +6 -22
- package/src/unstable/persistence/Persistence.ts +5 -21
- package/src/unstable/persistence/RateLimiter.ts +23 -38
- package/src/unstable/persistence/Redis.ts +17 -35
- package/src/unstable/process/ChildProcess.ts +6 -38
- package/src/unstable/process/ChildProcessSpawner.ts +7 -15
- package/src/unstable/reactivity/AsyncResult.ts +7 -39
- package/src/unstable/reactivity/Atom.ts +8 -36
- package/src/unstable/reactivity/AtomHttpApi.ts +6 -25
- package/src/unstable/reactivity/AtomRef.ts +4 -29
- package/src/unstable/reactivity/AtomRegistry.ts +6 -73
- package/src/unstable/reactivity/AtomRpc.ts +6 -20
- package/src/unstable/reactivity/Hydration.ts +8 -31
- package/src/unstable/reactivity/Reactivity.ts +6 -37
- package/src/unstable/rpc/Rpc.ts +8 -40
- package/src/unstable/rpc/RpcClient.ts +6 -32
- package/src/unstable/rpc/RpcClientError.ts +0 -23
- package/src/unstable/rpc/RpcGroup.ts +5 -30
- package/src/unstable/rpc/RpcMessage.ts +0 -26
- package/src/unstable/rpc/RpcMiddleware.ts +0 -28
- package/src/unstable/rpc/RpcSchema.ts +0 -25
- package/src/unstable/rpc/RpcSerialization.ts +6 -32
- package/src/unstable/rpc/RpcServer.ts +7 -40
- package/src/unstable/rpc/RpcTest.ts +0 -24
- package/src/unstable/rpc/RpcWorker.ts +6 -30
- package/src/unstable/rpc/Utils.ts +5 -21
- package/src/unstable/schema/Model.ts +28 -19
- package/src/unstable/schema/VariantSchema.ts +5 -17
- package/src/unstable/socket/Socket.ts +6 -21
- package/src/unstable/socket/SocketServer.ts +6 -20
- package/src/unstable/sql/Migrator.ts +5 -40
- package/src/unstable/sql/SqlClient.ts +5 -19
- package/src/unstable/sql/SqlConnection.ts +6 -18
- package/src/unstable/sql/SqlError.ts +7 -32
- package/src/unstable/sql/SqlModel.ts +6 -14
- package/src/unstable/sql/SqlResolver.ts +6 -23
- package/src/unstable/sql/SqlSchema.ts +3 -27
- package/src/unstable/sql/SqlStream.ts +0 -10
- package/src/unstable/sql/Statement.ts +6 -34
- package/src/unstable/workers/Transferable.ts +0 -21
- package/src/unstable/workers/Worker.ts +6 -34
- package/src/unstable/workers/WorkerError.ts +4 -33
- package/src/unstable/workers/WorkerRunner.ts +5 -30
- package/src/unstable/workflow/Activity.ts +5 -18
- package/src/unstable/workflow/DurableClock.ts +5 -24
- package/src/unstable/workflow/DurableDeferred.ts +6 -18
- package/src/unstable/workflow/DurableQueue.ts +0 -25
- package/src/unstable/workflow/Workflow.ts +9 -21
- package/src/unstable/workflow/WorkflowEngine.ts +7 -19
- package/src/unstable/workflow/WorkflowProxy.ts +7 -23
- package/src/unstable/workflow/WorkflowProxyServer.ts +6 -23
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import * as Array from "../../Array.ts"
|
|
2
2
|
import * as Boolean from "../../Boolean.ts"
|
|
3
3
|
import type * as Combiner from "../../Combiner.ts"
|
|
4
|
+
import * as Equal from "../../Equal.ts"
|
|
4
5
|
import { memoize } from "../../Function.ts"
|
|
5
6
|
import * as Number from "../../Number.ts"
|
|
6
7
|
import * as Option from "../../Option.ts"
|
|
8
|
+
import * as Order from "../../Order.ts"
|
|
7
9
|
import * as Predicate from "../../Predicate.ts"
|
|
8
10
|
import type * as Schema from "../../Schema.ts"
|
|
9
11
|
import * as SchemaAST from "../../SchemaAST.ts"
|
|
@@ -14,33 +16,107 @@ import { errorWithPath } from "../errors.ts"
|
|
|
14
16
|
import * as InternalAnnotations from "./annotations.ts"
|
|
15
17
|
|
|
16
18
|
const arbitraryMemoMap = new WeakMap<SchemaAST.AST, LazyArbitraryWithContext<any>>()
|
|
19
|
+
const suspendDepthIdentifierMap = new WeakMap<SchemaAST.Suspend, FastCheck.DepthIdentifier>()
|
|
20
|
+
const emptyRecursionStack: RecursionStack = []
|
|
21
|
+
|
|
22
|
+
type RecursionStack = ReadonlyArray<SchemaAST.Suspend>
|
|
23
|
+
|
|
24
|
+
type Context = Schema.Annotations.ToArbitrary.Context
|
|
25
|
+
type Constraint = Schema.Annotations.ToArbitrary.Constraint
|
|
26
|
+
type OrderedConstraint = Schema.Annotations.ToArbitrary.OrderedConstraint<any>
|
|
27
|
+
type ArbitraryFilter = Schema.Annotations.ToArbitrary.Filter
|
|
28
|
+
|
|
29
|
+
type Lazy<T> = (fc: typeof FastCheck, ctx: Context, recursionStack: RecursionStack) => FastCheck.Arbitrary<T>
|
|
30
|
+
type LazyOption<T> = (
|
|
31
|
+
fc: typeof FastCheck,
|
|
32
|
+
ctx: Context,
|
|
33
|
+
recursionStack: RecursionStack
|
|
34
|
+
) => FastCheck.Arbitrary<T> | undefined
|
|
35
|
+
|
|
36
|
+
export interface MutableReport {
|
|
37
|
+
readonly warnings: Array<Schema.Annotations.ToArbitrary.Warning>
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/** @internal */
|
|
41
|
+
export function makeReport(): MutableReport {
|
|
42
|
+
return { warnings: [] }
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
/** @internal */
|
|
46
|
+
export function toReport(report: MutableReport): Schema.Annotations.ToArbitrary.Report {
|
|
47
|
+
return { warnings: report.warnings.slice() }
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
function arbitraryError(what: string) {
|
|
51
|
+
return new Error(`Unable to derive an arbitrary for ${what}`)
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
const entryComparator = ([a]: readonly [any, any], [b]: readonly [any, any]) => Equal.equals(a, b)
|
|
17
55
|
|
|
18
56
|
function applyChecks(ast: SchemaAST.AST, filters: Array<SchemaAST.Filter<any>>, arbitrary: FastCheck.Arbitrary<any>) {
|
|
19
|
-
return filters.
|
|
20
|
-
(acc, filter) => acc.filter(filter),
|
|
57
|
+
return filters.reduce(
|
|
58
|
+
(acc, filter) => acc.filter((a) => filter.run(a, ast, SchemaAST.defaultParseOptions) === undefined),
|
|
21
59
|
arbitrary
|
|
22
60
|
)
|
|
23
61
|
}
|
|
24
62
|
|
|
25
|
-
function
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
63
|
+
function validateArrayConstraints(constraint: FastCheck.ArrayConstraints | undefined, label: string) {
|
|
64
|
+
if (
|
|
65
|
+
constraint?.minLength !== undefined && constraint.maxLength !== undefined &&
|
|
66
|
+
constraint.minLength > constraint.maxLength
|
|
67
|
+
) {
|
|
68
|
+
throw arbitraryError(`${label} constraints`)
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
function lengthToFastCheckConstraints(
|
|
73
|
+
constraint: { readonly minLength?: number | undefined; readonly maxLength?: number | undefined } | undefined
|
|
74
|
+
) {
|
|
75
|
+
return constraint === undefined || (constraint.minLength === undefined && constraint.maxLength === undefined)
|
|
76
|
+
? undefined
|
|
77
|
+
: {
|
|
78
|
+
...(constraint.minLength !== undefined ? { minLength: constraint.minLength } : {}),
|
|
79
|
+
...(constraint.maxLength !== undefined ? { maxLength: constraint.maxLength } : {})
|
|
80
|
+
}
|
|
29
81
|
}
|
|
30
82
|
|
|
31
|
-
function
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
83
|
+
function arrayWithConstraints(
|
|
84
|
+
fc: typeof FastCheck,
|
|
85
|
+
item: FastCheck.Arbitrary<any>,
|
|
86
|
+
constraint: FastCheck.ArrayConstraints | undefined,
|
|
87
|
+
comparator?: ((a: any, b: any) => boolean) | undefined
|
|
88
|
+
) {
|
|
89
|
+
return comparator
|
|
90
|
+
? fc.uniqueArray(item, { ...constraint, comparator })
|
|
35
91
|
: fc.array(item, constraint)
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
function array(fc: typeof FastCheck, ctx: Context, item: FastCheck.Arbitrary<any>, terminal = false) {
|
|
95
|
+
const constraint = ctx.constraint
|
|
96
|
+
const arrayConstraints = lengthToFastCheckConstraints(constraint)
|
|
97
|
+
validateArrayConstraints(arrayConstraints, "array")
|
|
98
|
+
return arrayWithConstraints(
|
|
99
|
+
fc,
|
|
100
|
+
item,
|
|
101
|
+
terminal ? { ...arrayConstraints, maxLength: arrayConstraints?.minLength ?? 0 } : arrayConstraints,
|
|
102
|
+
constraint?.unique ? Equal.equals : undefined
|
|
103
|
+
)
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
function appendArray(
|
|
107
|
+
fc: typeof FastCheck,
|
|
108
|
+
out: FastCheck.Arbitrary<Array<any>>,
|
|
109
|
+
len: number,
|
|
110
|
+
rest: FastCheck.Arbitrary<ReadonlyArray<any>>
|
|
111
|
+
) {
|
|
112
|
+
return out.chain((as) => as.length < len ? fc.constant(as) : rest.map((rest) => [...as, ...rest]))
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
function appendObjectEntries(
|
|
116
|
+
out: FastCheck.Arbitrary<any>,
|
|
117
|
+
entries: FastCheck.Arbitrary<Array<readonly [PropertyKey, any]>>
|
|
118
|
+
) {
|
|
119
|
+
return out.chain((o) => entries.map((entries) => ({ ...Object.fromEntries(entries), ...o })))
|
|
44
120
|
}
|
|
45
121
|
|
|
46
122
|
const max = UndefinedOr.makeReducer(Number.ReducerMax)
|
|
@@ -49,139 +125,436 @@ const or = UndefinedOr.makeReducer(Boolean.ReducerOr)
|
|
|
49
125
|
const concat = UndefinedOr.makeReducer(Array.makeReducerConcat())
|
|
50
126
|
|
|
51
127
|
const combiner: Combiner.Combiner<any> = Struct.makeCombiner({
|
|
52
|
-
|
|
53
|
-
max: min,
|
|
54
|
-
maxExcluded: or,
|
|
128
|
+
integer: or,
|
|
55
129
|
maxLength: min,
|
|
56
|
-
min: max,
|
|
57
|
-
minExcluded: or,
|
|
58
130
|
minLength: max,
|
|
59
|
-
|
|
60
|
-
noInteger: or,
|
|
61
|
-
noInvalidDate: or,
|
|
131
|
+
noInfinity: or,
|
|
62
132
|
noNaN: or,
|
|
63
133
|
patterns: concat,
|
|
64
|
-
|
|
134
|
+
unique: or,
|
|
135
|
+
valid: or
|
|
65
136
|
}, {
|
|
66
137
|
omitKeyWhen: Predicate.isUndefined
|
|
67
138
|
})
|
|
68
139
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
|
72
|
-
|
|
|
73
|
-
|
|
|
74
|
-
|
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
140
|
+
function mergeOrderedBound<T>(
|
|
141
|
+
order: Order.Order<T>,
|
|
142
|
+
self: T | undefined,
|
|
143
|
+
selfExclusive: boolean | undefined,
|
|
144
|
+
that: T | undefined,
|
|
145
|
+
thatExclusive: boolean | undefined,
|
|
146
|
+
takeComparison: -1 | 1
|
|
147
|
+
): readonly [T | undefined, boolean | undefined] {
|
|
148
|
+
if (that === undefined || self === undefined) {
|
|
149
|
+
return that === undefined ? [self, selfExclusive] : [that, thatExclusive]
|
|
150
|
+
}
|
|
151
|
+
const comparison = order(self, that)
|
|
152
|
+
return comparison === takeComparison
|
|
153
|
+
? [that, thatExclusive]
|
|
154
|
+
: comparison === 0
|
|
155
|
+
? [self, selfExclusive || thatExclusive]
|
|
156
|
+
: [self, selfExclusive]
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
function mergeOrderedConstraints(self: OrderedConstraint | undefined, that: OrderedConstraint) {
|
|
160
|
+
if (self === undefined) {
|
|
161
|
+
return that
|
|
162
|
+
}
|
|
163
|
+
if (self.order !== that.order) {
|
|
164
|
+
throw new Error("Cannot merge ordered arbitrary constraints with different Order instances")
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
const [minimum, exclusiveMinimum] = mergeOrderedBound(
|
|
168
|
+
self.order,
|
|
169
|
+
self.minimum,
|
|
170
|
+
self.exclusiveMinimum,
|
|
171
|
+
that.minimum,
|
|
172
|
+
that.exclusiveMinimum,
|
|
173
|
+
-1
|
|
174
|
+
)
|
|
175
|
+
const [maximum, exclusiveMaximum] = mergeOrderedBound(
|
|
176
|
+
self.order,
|
|
177
|
+
self.maximum,
|
|
178
|
+
self.exclusiveMaximum,
|
|
179
|
+
that.maximum,
|
|
180
|
+
that.exclusiveMaximum,
|
|
181
|
+
1
|
|
182
|
+
)
|
|
183
|
+
|
|
82
184
|
return {
|
|
83
|
-
|
|
84
|
-
|
|
185
|
+
order: self.order,
|
|
186
|
+
...(minimum !== undefined ? { minimum } : {}),
|
|
187
|
+
...(exclusiveMinimum !== undefined ? { exclusiveMinimum } : {}),
|
|
188
|
+
...(maximum !== undefined ? { maximum } : {}),
|
|
189
|
+
...(exclusiveMaximum !== undefined ? { exclusiveMaximum } : {})
|
|
85
190
|
}
|
|
86
191
|
}
|
|
87
192
|
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
193
|
+
function mergeConstraint(self: Constraint | undefined, that: Constraint): Constraint {
|
|
194
|
+
const { ordered: selfOrdered, ...selfRest } = self ?? {}
|
|
195
|
+
const { ordered: thatOrdered, ...thatRest } = that
|
|
196
|
+
const ordered = thatOrdered === undefined
|
|
197
|
+
? selfOrdered
|
|
198
|
+
: mergeOrderedConstraints(selfOrdered, thatOrdered)
|
|
199
|
+
const out = combiner.combine(selfRest, thatRest)
|
|
200
|
+
return {
|
|
201
|
+
...out,
|
|
202
|
+
...(ordered === undefined ? {} : { ordered })
|
|
203
|
+
}
|
|
94
204
|
}
|
|
95
205
|
|
|
96
|
-
function
|
|
97
|
-
|
|
206
|
+
function collectChecks(checks: SchemaAST.Checks | undefined) {
|
|
207
|
+
const filters: Array<SchemaAST.Filter<any>> = []
|
|
208
|
+
const arbitraries: Array<ArbitraryFilter> = []
|
|
209
|
+
function visit(check: SchemaAST.Check<any>) {
|
|
210
|
+
if (check.annotations?.arbitrary) {
|
|
211
|
+
arbitraries.push(check.annotations.arbitrary)
|
|
212
|
+
}
|
|
213
|
+
if (check._tag !== "Filter") {
|
|
214
|
+
for (const child of check.checks) {
|
|
215
|
+
visit(child)
|
|
216
|
+
}
|
|
217
|
+
} else {
|
|
218
|
+
filters.push(check)
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
checks?.forEach(visit)
|
|
222
|
+
return { filters, arbitraries }
|
|
98
223
|
}
|
|
99
224
|
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
filters: Array<SchemaAST.Filter<any>>
|
|
103
|
-
): (ctx: Schema.Annotations.ToArbitrary.Context) => Schema.Annotations.ToArbitrary.Context {
|
|
104
|
-
const annotations = filters.map((filter) => filter.annotations?.toArbitraryConstraint).filter(
|
|
105
|
-
Predicate.isNotUndefined
|
|
106
|
-
)
|
|
225
|
+
function constraintContext(arbitraries: Array<ArbitraryFilter>): (ctx: Context) => Context {
|
|
226
|
+
const constraintAnnotations = arbitraries.map(({ constraint }) => constraint).filter(Predicate.isNotUndefined)
|
|
107
227
|
return (ctx) => {
|
|
108
|
-
const
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
228
|
+
const constraint = constraintAnnotations.reduce(
|
|
229
|
+
(acc: Constraint | undefined, c) => mergeConstraint(acc, c),
|
|
230
|
+
ctx.constraint
|
|
231
|
+
)
|
|
232
|
+
return { ...ctx, constraint }
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
function resetContext(ctx: Context) {
|
|
237
|
+
return { ...ctx, constraint: undefined }
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
function objectEntriesConstraints(ast: SchemaAST.Objects, constraint: Constraint | undefined, requiredKeys: number) {
|
|
241
|
+
if (constraint === undefined || (constraint.minLength === undefined && constraint.maxLength === undefined)) {
|
|
242
|
+
return undefined
|
|
243
|
+
}
|
|
244
|
+
if (
|
|
245
|
+
constraint.minLength !== undefined &&
|
|
246
|
+
ast.indexSignatures.length === 0 &&
|
|
247
|
+
constraint.minLength > ast.propertySignatures.length
|
|
248
|
+
) {
|
|
249
|
+
throw arbitraryError("object property constraints")
|
|
250
|
+
}
|
|
251
|
+
const out: FastCheck.ArrayConstraints = {}
|
|
252
|
+
if (constraint.minLength !== undefined) {
|
|
253
|
+
out.minLength = Math.max(0, constraint.minLength - requiredKeys)
|
|
254
|
+
}
|
|
255
|
+
if (constraint.maxLength !== undefined) {
|
|
256
|
+
out.maxLength = constraint.maxLength - requiredKeys
|
|
257
|
+
if (out.maxLength < 0) {
|
|
258
|
+
throw arbitraryError("object property constraints")
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
validateArrayConstraints(out, "object property")
|
|
262
|
+
return out
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
function objectWithOptionalCount(
|
|
266
|
+
fc: typeof FastCheck,
|
|
267
|
+
pss: Record<PropertyKey, FastCheck.Arbitrary<any>>,
|
|
268
|
+
orderedNames: ReadonlyArray<PropertyKey>,
|
|
269
|
+
requiredKeys: ReadonlyArray<PropertyKey>,
|
|
270
|
+
optionalNames: ReadonlyArray<PropertyKey>,
|
|
271
|
+
constraint: Constraint
|
|
272
|
+
) {
|
|
273
|
+
const requiredCount = requiredKeys.length
|
|
274
|
+
if (constraint.maxLength !== undefined && constraint.maxLength < requiredCount) {
|
|
275
|
+
throw arbitraryError("object property constraints")
|
|
276
|
+
}
|
|
277
|
+
const minOptional = constraint.minLength === undefined ? 0 : Math.max(0, constraint.minLength - requiredCount)
|
|
278
|
+
const maxOptional = constraint.maxLength === undefined
|
|
279
|
+
? optionalNames.length
|
|
280
|
+
: Math.min(optionalNames.length, constraint.maxLength - requiredCount)
|
|
281
|
+
if (minOptional > maxOptional) {
|
|
282
|
+
throw arbitraryError("object property constraints")
|
|
283
|
+
}
|
|
284
|
+
const full = fc.record<any>(pss, { requiredKeys: [...requiredKeys, ...optionalNames] })
|
|
285
|
+
const chosen = fc.shuffledSubarray([...optionalNames], { minLength: minOptional, maxLength: maxOptional })
|
|
286
|
+
return fc.tuple(full, chosen).map(([base, names]) => {
|
|
287
|
+
const keep = new Set<PropertyKey>([...requiredKeys, ...names])
|
|
288
|
+
const out: Record<PropertyKey, any> = {}
|
|
289
|
+
for (const name of orderedNames) {
|
|
290
|
+
if (keep.has(name)) {
|
|
291
|
+
out[name] = base[name]
|
|
114
292
|
}
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
293
|
+
}
|
|
294
|
+
return out
|
|
295
|
+
})
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
function toRangeConstraints<T extends number | bigint>(
|
|
299
|
+
ordered: OrderedConstraint | undefined,
|
|
300
|
+
min: (value: T, excluded: boolean) => T,
|
|
301
|
+
max: (value: T, excluded: boolean) => T,
|
|
302
|
+
error: string
|
|
303
|
+
) {
|
|
304
|
+
const out: { min?: T; max?: T } = {}
|
|
305
|
+
if (ordered?.minimum !== undefined) {
|
|
306
|
+
out.min = min(ordered.minimum as T, ordered.exclusiveMinimum === true)
|
|
307
|
+
}
|
|
308
|
+
if (ordered?.maximum !== undefined) {
|
|
309
|
+
out.max = max(ordered.maximum as T, ordered.exclusiveMaximum === true)
|
|
118
310
|
}
|
|
311
|
+
if (out.min !== undefined && out.max !== undefined && out.min > out.max) {
|
|
312
|
+
throw arbitraryError(error)
|
|
313
|
+
}
|
|
314
|
+
return out
|
|
119
315
|
}
|
|
120
316
|
|
|
121
|
-
function
|
|
122
|
-
return
|
|
317
|
+
function toIntegerConstraints(ordered: OrderedConstraint | undefined) {
|
|
318
|
+
return toRangeConstraints<number>(
|
|
319
|
+
ordered,
|
|
320
|
+
(minimum, excluded) => excluded ? Math.floor(minimum) + 1 : Math.ceil(minimum),
|
|
321
|
+
(maximum, excluded) => excluded ? Math.ceil(maximum) - 1 : Math.floor(maximum),
|
|
322
|
+
"integer constraints"
|
|
323
|
+
)
|
|
123
324
|
}
|
|
124
325
|
|
|
125
|
-
function
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
326
|
+
function toFloatConstraints(constraint: Constraint | undefined, ordered: OrderedConstraint | undefined) {
|
|
327
|
+
const out: FastCheck.FloatConstraints = {
|
|
328
|
+
...(constraint?.noInfinity ? { noDefaultInfinity: true } : {}),
|
|
329
|
+
...(constraint?.noNaN ? { noNaN: true } : {}),
|
|
330
|
+
...(ordered?.minimum !== undefined ? { min: ordered.minimum as number } : {}),
|
|
331
|
+
...(ordered?.exclusiveMinimum !== undefined ? { minExcluded: ordered.exclusiveMinimum } : {}),
|
|
332
|
+
...(ordered?.maximum !== undefined ? { max: ordered.maximum as number } : {}),
|
|
333
|
+
...(ordered?.exclusiveMaximum !== undefined ? { maxExcluded: ordered.exclusiveMaximum } : {})
|
|
131
334
|
}
|
|
132
|
-
if (
|
|
133
|
-
out.
|
|
335
|
+
if (
|
|
336
|
+
out.min !== undefined &&
|
|
337
|
+
out.max !== undefined &&
|
|
338
|
+
(out.min > out.max || (out.min === out.max && (out.minExcluded || out.maxExcluded)))
|
|
339
|
+
) {
|
|
340
|
+
throw arbitraryError("number constraints")
|
|
134
341
|
}
|
|
135
342
|
return out
|
|
136
343
|
}
|
|
137
344
|
|
|
345
|
+
function toBigIntConstraints(ordered: OrderedConstraint | undefined) {
|
|
346
|
+
return toRangeConstraints<bigint>(
|
|
347
|
+
ordered,
|
|
348
|
+
(minimum, excluded) => excluded ? minimum + BigInt(1) : minimum,
|
|
349
|
+
(maximum, excluded) => excluded ? maximum - BigInt(1) : maximum,
|
|
350
|
+
"the ordered bigint constraints"
|
|
351
|
+
)
|
|
352
|
+
}
|
|
353
|
+
|
|
138
354
|
interface LazyArbitraryWithContext<T> {
|
|
139
|
-
(fc: typeof FastCheck, ctx:
|
|
355
|
+
(fc: typeof FastCheck, ctx: Context, recursionStack?: RecursionStack): FastCheck.Arbitrary<T>
|
|
356
|
+
readonly terminal: (
|
|
357
|
+
fc: typeof FastCheck,
|
|
358
|
+
ctx: Context,
|
|
359
|
+
recursionStack?: RecursionStack
|
|
360
|
+
) => FastCheck.Arbitrary<T> | undefined
|
|
361
|
+
}
|
|
362
|
+
|
|
363
|
+
function makeLazy<T>(normal: Lazy<T>, terminal: LazyOption<T>): LazyArbitraryWithContext<T> {
|
|
364
|
+
const out =
|
|
365
|
+
((fc, ctx, recursionStack = emptyRecursionStack) => normal(fc, ctx, recursionStack)) as LazyArbitraryWithContext<T>
|
|
366
|
+
;(out as { terminal: LazyOption<T> }).terminal = (fc, ctx, recursionStack = emptyRecursionStack) =>
|
|
367
|
+
terminal(fc, ctx, recursionStack)
|
|
368
|
+
return out
|
|
369
|
+
}
|
|
370
|
+
|
|
371
|
+
function same<T>(f: Lazy<T>) {
|
|
372
|
+
return makeLazy(f, f)
|
|
373
|
+
}
|
|
374
|
+
|
|
375
|
+
function getSuspendRecursion(fc: typeof FastCheck, ast: SchemaAST.Suspend) {
|
|
376
|
+
const depthIdentifier = suspendDepthIdentifierMap.get(ast) ?? fc.createDepthIdentifier()
|
|
377
|
+
suspendDepthIdentifierMap.set(ast, depthIdentifier)
|
|
378
|
+
return { maxDepth: 2, depthIdentifier }
|
|
379
|
+
}
|
|
380
|
+
|
|
381
|
+
function oneOf<T>(fc: typeof FastCheck, arbitraries: ReadonlyArray<FastCheck.Arbitrary<T>>) {
|
|
382
|
+
return arbitraries.length === 0 ? undefined : arbitraries.length === 1 ? arbitraries[0] : fc.oneof(...arbitraries)
|
|
383
|
+
}
|
|
384
|
+
|
|
385
|
+
function reportChecks(report: MutableReport, checks: SchemaAST.Checks | undefined, path: ReadonlyArray<PropertyKey>) {
|
|
386
|
+
function visit(check: SchemaAST.Check<any>, covered: boolean) {
|
|
387
|
+
const arbitrary = check.annotations?.arbitrary
|
|
388
|
+
const nextCovered = covered || arbitrary?.constraint !== undefined || arbitrary?.candidate !== undefined
|
|
389
|
+
if (check._tag !== "Filter") {
|
|
390
|
+
for (const child of check.checks) {
|
|
391
|
+
visit(child, nextCovered)
|
|
392
|
+
}
|
|
393
|
+
} else if (!nextCovered) {
|
|
394
|
+
const meta = check.annotations?.meta
|
|
395
|
+
const description = typeof meta === "object" && meta !== null && "_tag" in meta && typeof meta._tag === "string"
|
|
396
|
+
? meta._tag
|
|
397
|
+
: check.annotations?.identifier ?? check.annotations?.expected
|
|
398
|
+
report.warnings.push({ _tag: "OpaqueFilter", path, ...(description === undefined ? {} : { description }) })
|
|
399
|
+
}
|
|
400
|
+
}
|
|
401
|
+
checks?.forEach((check) => visit(check, false))
|
|
140
402
|
}
|
|
141
403
|
|
|
142
404
|
/** @internal */
|
|
143
|
-
export function
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
405
|
+
export function collectReport(ast: SchemaAST.AST, report: MutableReport) {
|
|
406
|
+
const stack = new WeakSet<SchemaAST.AST>()
|
|
407
|
+
function visit(ast: SchemaAST.AST, path: ReadonlyArray<PropertyKey>) {
|
|
408
|
+
if (stack.has(ast)) {
|
|
409
|
+
return
|
|
410
|
+
}
|
|
411
|
+
stack.add(ast)
|
|
412
|
+
reportChecks(report, ast.checks, path)
|
|
413
|
+
switch (ast._tag) {
|
|
414
|
+
case "Declaration":
|
|
415
|
+
ast.typeParameters.forEach((tp) => visit(tp, path))
|
|
416
|
+
break
|
|
417
|
+
case "Arrays": {
|
|
418
|
+
for (const [i, type] of [...ast.elements, ...ast.rest].entries()) {
|
|
419
|
+
visit(type, [...path, i])
|
|
420
|
+
}
|
|
421
|
+
break
|
|
151
422
|
}
|
|
152
|
-
|
|
423
|
+
case "Objects":
|
|
424
|
+
ast.propertySignatures.forEach((ps) => visit(ps.type, [...path, ps.name]))
|
|
425
|
+
ast.indexSignatures.forEach((is) => {
|
|
426
|
+
visit(is.parameter, path)
|
|
427
|
+
visit(is.type, path)
|
|
428
|
+
})
|
|
429
|
+
break
|
|
430
|
+
case "Union":
|
|
431
|
+
ast.types.forEach((type) => visit(type, path))
|
|
432
|
+
break
|
|
433
|
+
case "Suspend":
|
|
434
|
+
visit(ast.thunk(), path)
|
|
435
|
+
break
|
|
436
|
+
}
|
|
437
|
+
stack.delete(ast)
|
|
153
438
|
}
|
|
154
|
-
|
|
439
|
+
visit(ast, [])
|
|
440
|
+
}
|
|
441
|
+
|
|
442
|
+
function applyCandidates(
|
|
443
|
+
fc: typeof FastCheck,
|
|
444
|
+
ctx: Context,
|
|
445
|
+
arbitraries: Array<ArbitraryFilter>,
|
|
446
|
+
base: FastCheck.Arbitrary<any> | undefined
|
|
447
|
+
) {
|
|
448
|
+
const weighted: Array<FastCheck.WeightedArbitrary<any>> = base === undefined
|
|
449
|
+
? []
|
|
450
|
+
: [{ arbitrary: base, weight: 1 }]
|
|
451
|
+
for (const { candidate } of arbitraries) {
|
|
452
|
+
if (!candidate) {
|
|
453
|
+
continue
|
|
454
|
+
}
|
|
455
|
+
const arbitrary = candidate.make(fc, ctx)
|
|
456
|
+
if (arbitrary === undefined) {
|
|
457
|
+
continue
|
|
458
|
+
}
|
|
459
|
+
const weight = candidate.weight ?? 1
|
|
460
|
+
if (!globalThis.Number.isInteger(weight) || weight <= 0) {
|
|
461
|
+
throw arbitraryError("a candidate with an invalid weight")
|
|
462
|
+
}
|
|
463
|
+
weighted.push({ arbitrary, weight })
|
|
464
|
+
}
|
|
465
|
+
return weighted.length === 0 ? undefined : weighted.length === 1 ? weighted[0].arbitrary : fc.oneof(...weighted)
|
|
466
|
+
}
|
|
467
|
+
|
|
468
|
+
function applyFilterLayer(
|
|
469
|
+
ast: SchemaAST.AST,
|
|
470
|
+
checks: ReturnType<typeof collectChecks>,
|
|
471
|
+
fc: typeof FastCheck,
|
|
472
|
+
ctx: Context,
|
|
473
|
+
base: FastCheck.Arbitrary<any> | undefined
|
|
474
|
+
) {
|
|
475
|
+
const out = applyCandidates(fc, ctx, checks.arbitraries, base)
|
|
476
|
+
return out === undefined ? undefined : applyChecks(ast, checks.filters, out)
|
|
477
|
+
}
|
|
478
|
+
|
|
479
|
+
function normalizeDerivation<T>(
|
|
480
|
+
output: Schema.Annotations.ToArbitrary.Output<T>,
|
|
481
|
+
hasTypeParameters: boolean
|
|
482
|
+
) {
|
|
483
|
+
if (!(typeof output === "object" && output !== null && "arbitrary" in output)) {
|
|
484
|
+
return { arbitrary: output, terminal: hasTypeParameters ? undefined : output }
|
|
485
|
+
}
|
|
486
|
+
const terminal = "terminal" in output ? output.terminal : hasTypeParameters ? undefined : output.arbitrary
|
|
487
|
+
return {
|
|
488
|
+
arbitrary: output.arbitrary,
|
|
489
|
+
terminal
|
|
490
|
+
}
|
|
491
|
+
}
|
|
492
|
+
|
|
493
|
+
function makeTypeParameters(
|
|
494
|
+
typeParameters: ReadonlyArray<LazyArbitraryWithContext<any>>,
|
|
495
|
+
fc: typeof FastCheck,
|
|
496
|
+
ctx: Context,
|
|
497
|
+
recursionStack: RecursionStack,
|
|
498
|
+
lazyNormal: boolean
|
|
499
|
+
) {
|
|
500
|
+
return typeParameters.map((tp) => ({
|
|
501
|
+
arbitrary: lazyNormal ? fc.constant(null).chain(() => tp(fc, ctx, recursionStack)) : tp(fc, ctx, recursionStack),
|
|
502
|
+
terminal: tp.terminal(fc, ctx, recursionStack)
|
|
503
|
+
}))
|
|
504
|
+
}
|
|
505
|
+
|
|
506
|
+
type BaseBuilder = (
|
|
507
|
+
fc: typeof FastCheck,
|
|
508
|
+
ctx: Context,
|
|
509
|
+
nextCtx: Context,
|
|
510
|
+
recursionStack: RecursionStack
|
|
511
|
+
) => FastCheck.Arbitrary<any> | undefined
|
|
512
|
+
|
|
513
|
+
function filterLayer(
|
|
514
|
+
ast: SchemaAST.AST,
|
|
515
|
+
checks: ReturnType<typeof collectChecks>,
|
|
516
|
+
normalBase: BaseBuilder,
|
|
517
|
+
terminalBase: BaseBuilder
|
|
518
|
+
): LazyArbitraryWithContext<any> {
|
|
519
|
+
const f = constraintContext(checks.arbitraries)
|
|
520
|
+
return makeLazy((fc, ctx, recursionStack) => {
|
|
521
|
+
const nextCtx = f(ctx)
|
|
522
|
+
return applyFilterLayer(ast, checks, fc, nextCtx, normalBase(fc, ctx, nextCtx, recursionStack))!
|
|
523
|
+
}, (fc, ctx, recursionStack) => {
|
|
524
|
+
const nextCtx = f(ctx)
|
|
525
|
+
return applyFilterLayer(ast, checks, fc, nextCtx, terminalBase(fc, ctx, nextCtx, recursionStack))
|
|
526
|
+
})
|
|
155
527
|
}
|
|
156
528
|
|
|
157
529
|
/** @internal */
|
|
158
|
-
export const memoized = memoize((ast: SchemaAST.AST)
|
|
159
|
-
return recur(ast, [])
|
|
160
|
-
})
|
|
530
|
+
export const memoized = memoize((ast: SchemaAST.AST) => recur(ast, []))
|
|
161
531
|
|
|
162
532
|
function recur(ast: SchemaAST.AST, path: ReadonlyArray<PropertyKey>): LazyArbitraryWithContext<any> {
|
|
163
533
|
// ---------------------------------------------
|
|
164
|
-
// handle
|
|
534
|
+
// handle annotations
|
|
165
535
|
// ---------------------------------------------
|
|
166
536
|
const annotation = InternalAnnotations.resolve(ast)?.toArbitrary as
|
|
167
537
|
| Schema.Annotations.ToArbitrary.Declaration<any, ReadonlyArray<Schema.Top>>
|
|
168
538
|
| undefined
|
|
169
539
|
if (annotation) {
|
|
170
540
|
const typeParameters = SchemaAST.isDeclaration(ast) ? ast.typeParameters.map((tp) => recur(tp, path)) : []
|
|
171
|
-
const
|
|
172
|
-
const
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
)
|
|
541
|
+
const checks = collectChecks(ast.checks)
|
|
542
|
+
const derive = (lazyNormal: boolean): BaseBuilder => (fc, ctx, nextCtx, recursionStack) =>
|
|
543
|
+
normalizeDerivation(
|
|
544
|
+
annotation(makeTypeParameters(typeParameters, fc, resetContext(ctx), recursionStack, lazyNormal))(fc, nextCtx),
|
|
545
|
+
typeParameters.length > 0
|
|
546
|
+
)[lazyNormal ? "terminal" : "arbitrary"]
|
|
547
|
+
return filterLayer(ast, checks, derive(false), derive(true))
|
|
179
548
|
}
|
|
180
549
|
if (ast.checks) {
|
|
181
|
-
const
|
|
182
|
-
const f = constraintContext(filters)
|
|
550
|
+
const checks = collectChecks(ast.checks)
|
|
183
551
|
const lawc = recur(SchemaAST.replaceChecks(ast, undefined), path)
|
|
184
|
-
return (
|
|
552
|
+
return filterLayer(
|
|
553
|
+
ast,
|
|
554
|
+
checks,
|
|
555
|
+
(fc, _ctx, nextCtx, recursionStack) => lawc(fc, nextCtx, recursionStack),
|
|
556
|
+
(fc, _ctx, nextCtx, recursionStack) => lawc.terminal(fc, nextCtx, recursionStack)
|
|
557
|
+
)
|
|
185
558
|
}
|
|
186
559
|
return base(ast, path)
|
|
187
560
|
}
|
|
@@ -192,132 +565,326 @@ function base(ast: SchemaAST.AST, path: ReadonlyArray<PropertyKey>): LazyArbitra
|
|
|
192
565
|
case "Declaration":
|
|
193
566
|
throw errorWithPath(`Unsupported AST ${ast._tag}`, path)
|
|
194
567
|
case "Null":
|
|
195
|
-
return (fc) => fc.constant(null)
|
|
568
|
+
return same((fc) => fc.constant(null))
|
|
196
569
|
case "Void":
|
|
197
570
|
case "Undefined":
|
|
198
|
-
return (fc) => fc.constant(undefined)
|
|
571
|
+
return same((fc) => fc.constant(undefined))
|
|
199
572
|
case "Unknown":
|
|
200
573
|
case "Any":
|
|
201
|
-
return (fc) => fc.anything()
|
|
574
|
+
return same((fc) => fc.anything())
|
|
202
575
|
case "String":
|
|
203
|
-
return (fc, ctx) => {
|
|
204
|
-
const constraint = ctx.
|
|
576
|
+
return same((fc, ctx) => {
|
|
577
|
+
const constraint = ctx.constraint
|
|
205
578
|
const patterns = constraint?.patterns
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
}
|
|
579
|
+
return patterns
|
|
580
|
+
? fc.oneof(...patterns.map((pattern) => fc.stringMatching(new RegExp(pattern))))
|
|
581
|
+
: fc.string(lengthToFastCheckConstraints(constraint))
|
|
582
|
+
})
|
|
211
583
|
case "Number":
|
|
212
|
-
return (fc, ctx) => {
|
|
213
|
-
const constraint = ctx.
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
}
|
|
584
|
+
return same((fc, ctx) => {
|
|
585
|
+
const constraint = ctx.constraint
|
|
586
|
+
const ordered = constraint?.ordered?.order === Order.Number ? constraint.ordered : undefined
|
|
587
|
+
return constraint?.integer
|
|
588
|
+
? fc.integer(toIntegerConstraints(ordered))
|
|
589
|
+
: fc.float(toFloatConstraints(constraint, ordered))
|
|
590
|
+
})
|
|
219
591
|
case "Boolean":
|
|
220
|
-
return (fc) => fc.boolean()
|
|
592
|
+
return same((fc) => fc.boolean())
|
|
221
593
|
case "BigInt":
|
|
222
|
-
return (fc, ctx) =>
|
|
594
|
+
return same((fc, ctx) => {
|
|
595
|
+
const ordered = ctx.constraint?.ordered?.order === Order.BigInt ? ctx.constraint.ordered : undefined
|
|
596
|
+
return fc.bigInt(toBigIntConstraints(ordered))
|
|
597
|
+
})
|
|
223
598
|
case "Symbol":
|
|
224
|
-
return (fc) => fc.string().map(Symbol.for)
|
|
599
|
+
return same((fc) => fc.string().map(Symbol.for))
|
|
225
600
|
case "Literal":
|
|
226
|
-
return (fc) => fc.constant(ast.literal)
|
|
601
|
+
return same((fc) => fc.constant(ast.literal))
|
|
227
602
|
case "UniqueSymbol":
|
|
228
|
-
return (fc) => fc.constant(ast.symbol)
|
|
603
|
+
return same((fc) => fc.constant(ast.symbol))
|
|
229
604
|
case "ObjectKeyword":
|
|
230
|
-
return (fc) => fc.oneof(fc.object(), fc.array(fc.anything()))
|
|
605
|
+
return same((fc) => fc.oneof(fc.object(), fc.array(fc.anything())))
|
|
231
606
|
case "Enum":
|
|
232
607
|
return recur(SchemaAST.enumsToLiterals(ast), path)
|
|
233
608
|
case "TemplateLiteral":
|
|
234
|
-
return (fc) => fc.stringMatching(SchemaAST.getTemplateLiteralRegExp(ast))
|
|
235
|
-
case "Arrays":
|
|
236
|
-
|
|
609
|
+
return same((fc) => fc.stringMatching(SchemaAST.getTemplateLiteralRegExp(ast)))
|
|
610
|
+
case "Arrays": {
|
|
611
|
+
const elements = ast.elements.map((ast, i) => ({
|
|
612
|
+
ast,
|
|
613
|
+
arbitrary: recur(ast, [...path, i])
|
|
614
|
+
}))
|
|
615
|
+
const len = ast.elements.length
|
|
616
|
+
const rest = ast.rest.map((ast, i) => ({
|
|
617
|
+
ast,
|
|
618
|
+
arbitrary: recur(ast, [...path, len + i])
|
|
619
|
+
}))
|
|
620
|
+
const terminal: LazyOption<any> = (fc, ctx, recursionStack) => {
|
|
621
|
+
const reset = resetContext(ctx)
|
|
622
|
+
const elementArbitraries: Array<FastCheck.Arbitrary<Option.Option<any>>> = []
|
|
623
|
+
const optionals: Array<FastCheck.Arbitrary<any> | undefined> = []
|
|
624
|
+
let length = 0
|
|
625
|
+
for (const element of elements) {
|
|
626
|
+
const out = element.arbitrary.terminal(fc, reset, recursionStack)
|
|
627
|
+
if (SchemaAST.isOptional(element.ast)) {
|
|
628
|
+
optionals.push(out)
|
|
629
|
+
continue
|
|
630
|
+
}
|
|
631
|
+
if (out === undefined) {
|
|
632
|
+
return undefined
|
|
633
|
+
}
|
|
634
|
+
length++
|
|
635
|
+
elementArbitraries.push(out.map(Option.some))
|
|
636
|
+
}
|
|
637
|
+
const minLength = ctx.constraint?.minLength ?? 0
|
|
638
|
+
const needsRest = Array.isReadonlyArrayNonEmpty(rest) && minLength > length + optionals.length
|
|
639
|
+
const optionalTarget = needsRest ? optionals.length : Math.max(0, minLength - length)
|
|
640
|
+
let includedOptionals = 0
|
|
641
|
+
for (const out of optionals) {
|
|
642
|
+
if (includedOptionals >= optionalTarget || out === undefined) {
|
|
643
|
+
elementArbitraries.push(fc.constant(Option.none()))
|
|
644
|
+
continue
|
|
645
|
+
}
|
|
646
|
+
includedOptionals++
|
|
647
|
+
length++
|
|
648
|
+
elementArbitraries.push(out.map(Option.some))
|
|
649
|
+
}
|
|
650
|
+
if (includedOptionals < optionalTarget) {
|
|
651
|
+
return undefined
|
|
652
|
+
}
|
|
653
|
+
let out = fc.tuple(...elementArbitraries).map(Array.getSomes)
|
|
654
|
+
if (Array.isReadonlyArrayNonEmpty(rest)) {
|
|
655
|
+
const [head, ...tail] = rest
|
|
656
|
+
const restCtx = ast.elements.length === 0 ? ctx : reset
|
|
657
|
+
const minRestLength = Math.max(0, minLength - length - tail.length)
|
|
658
|
+
const headArbitrary = minRestLength === 0
|
|
659
|
+
? undefined
|
|
660
|
+
: head.arbitrary.terminal(fc, reset, recursionStack)
|
|
661
|
+
if (minRestLength > 0 && headArbitrary === undefined) {
|
|
662
|
+
return undefined
|
|
663
|
+
}
|
|
664
|
+
const restArbitrary = minRestLength === 0
|
|
665
|
+
? fc.constant([])
|
|
666
|
+
: array(
|
|
667
|
+
fc,
|
|
668
|
+
{ ...restCtx, constraint: { ...restCtx.constraint, minLength: minRestLength } },
|
|
669
|
+
headArbitrary!,
|
|
670
|
+
true
|
|
671
|
+
)
|
|
672
|
+
out = appendArray(fc, out, len, restArbitrary)
|
|
673
|
+
if (tail.length > 0) {
|
|
674
|
+
const tailArbitraries: Array<FastCheck.Arbitrary<any>> = []
|
|
675
|
+
for (const element of tail) {
|
|
676
|
+
const out = element.arbitrary.terminal(fc, reset, recursionStack)
|
|
677
|
+
if (out === undefined) {
|
|
678
|
+
return undefined
|
|
679
|
+
}
|
|
680
|
+
tailArbitraries.push(out)
|
|
681
|
+
}
|
|
682
|
+
const t = fc.tuple(...tailArbitraries)
|
|
683
|
+
out = appendArray(fc, out, len, t)
|
|
684
|
+
}
|
|
685
|
+
}
|
|
686
|
+
return out
|
|
687
|
+
}
|
|
688
|
+
return makeLazy((fc, ctx, recursionStack) => {
|
|
237
689
|
const reset = resetContext(ctx)
|
|
238
690
|
// ---------------------------------------------
|
|
239
691
|
// handle elements
|
|
240
692
|
// ---------------------------------------------
|
|
241
|
-
const
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
return
|
|
693
|
+
const elementArbitraries: Array<FastCheck.Arbitrary<Option.Option<any>>> = elements.map(
|
|
694
|
+
({ ast, arbitrary }) => {
|
|
695
|
+
const out = arbitrary(fc, reset, recursionStack)
|
|
696
|
+
return SchemaAST.isOptional(ast)
|
|
697
|
+
? out.chain((a) => fc.boolean().map((b) => b ? Option.some(a) : Option.none()))
|
|
698
|
+
: out.map(Option.some)
|
|
245
699
|
}
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
let out = fc.tuple(...elements).map(Array.getSomes)
|
|
700
|
+
)
|
|
701
|
+
let out = fc.tuple(...elementArbitraries).map(Array.getSomes)
|
|
249
702
|
// ---------------------------------------------
|
|
250
703
|
// handle rest element
|
|
251
704
|
// ---------------------------------------------
|
|
252
|
-
if (Array.isReadonlyArrayNonEmpty(
|
|
253
|
-
const
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
out = out.chain((as) => {
|
|
258
|
-
if (as.length < len) {
|
|
259
|
-
return fc.constant(as)
|
|
260
|
-
}
|
|
261
|
-
return rest.map((rest) => [...as, ...rest])
|
|
262
|
-
})
|
|
705
|
+
if (Array.isReadonlyArrayNonEmpty(rest)) {
|
|
706
|
+
const [head, ...tail] = rest.map(({ arbitrary }) => arbitrary(fc, reset, recursionStack))
|
|
707
|
+
|
|
708
|
+
const restArbitrary = array(fc, ast.elements.length === 0 ? ctx : reset, head)
|
|
709
|
+
out = appendArray(fc, out, len, restArbitrary)
|
|
263
710
|
// ---------------------------------------------
|
|
264
711
|
// handle post rest elements
|
|
265
712
|
// ---------------------------------------------
|
|
266
713
|
if (tail.length > 0) {
|
|
267
714
|
const t = fc.tuple(...tail)
|
|
268
|
-
out =
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
715
|
+
out = appendArray(fc, out, len, t)
|
|
716
|
+
}
|
|
717
|
+
}
|
|
718
|
+
if (ctx.recursion) {
|
|
719
|
+
const terminalOut = terminal(fc, ctx, recursionStack)
|
|
720
|
+
if (terminalOut !== undefined) {
|
|
721
|
+
return fc.oneof(ctx.recursion, terminalOut, out)
|
|
274
722
|
}
|
|
275
723
|
}
|
|
276
724
|
return out
|
|
725
|
+
}, terminal)
|
|
726
|
+
}
|
|
727
|
+
case "Objects": {
|
|
728
|
+
const propertySignatures = ast.propertySignatures.map((ps) => ({
|
|
729
|
+
ps,
|
|
730
|
+
arbitrary: recur(ps.type, [...path, ps.name])
|
|
731
|
+
}))
|
|
732
|
+
const indexSignatures = ast.indexSignatures.map((is) => ({
|
|
733
|
+
is,
|
|
734
|
+
parameter: recur(is.parameter, path),
|
|
735
|
+
type: recur(is.type, path)
|
|
736
|
+
}))
|
|
737
|
+
const terminal: LazyOption<any> = (fc, ctx, recursionStack) => {
|
|
738
|
+
const reset = resetContext(ctx)
|
|
739
|
+
const pss: any = {}
|
|
740
|
+
const requiredKeys: Array<PropertyKey> = []
|
|
741
|
+
const optionals: Array<readonly [PropertyKey, FastCheck.Arbitrary<any>]> = []
|
|
742
|
+
for (const { ps, arbitrary } of propertySignatures) {
|
|
743
|
+
const name = ps.name
|
|
744
|
+
const out = arbitrary.terminal(fc, reset, recursionStack)
|
|
745
|
+
if (SchemaAST.isOptional(ps.type)) {
|
|
746
|
+
if (out !== undefined) {
|
|
747
|
+
optionals.push([name, out])
|
|
748
|
+
}
|
|
749
|
+
continue
|
|
750
|
+
}
|
|
751
|
+
if (out === undefined) {
|
|
752
|
+
return undefined
|
|
753
|
+
}
|
|
754
|
+
requiredKeys.push(name)
|
|
755
|
+
pss[name] = out
|
|
756
|
+
}
|
|
757
|
+
let optionalCount = Math.max(0, (ctx.constraint?.minLength ?? 0) - requiredKeys.length)
|
|
758
|
+
for (const [name, out] of optionals) {
|
|
759
|
+
if (optionalCount === 0) {
|
|
760
|
+
break
|
|
761
|
+
}
|
|
762
|
+
optionalCount--
|
|
763
|
+
requiredKeys.push(name)
|
|
764
|
+
pss[name] = out
|
|
765
|
+
}
|
|
766
|
+
if (optionalCount > 0 && ast.indexSignatures.length === 0) {
|
|
767
|
+
return undefined
|
|
768
|
+
}
|
|
769
|
+
let out = fc.record<any>(pss, { requiredKeys })
|
|
770
|
+
const entriesConstraints = objectEntriesConstraints(ast, ctx.constraint, requiredKeys.length)
|
|
771
|
+
const minEntries = entriesConstraints?.minLength ?? 0
|
|
772
|
+
for (const { parameter, type } of indexSignatures) {
|
|
773
|
+
let entries: FastCheck.Arbitrary<Array<readonly [PropertyKey, any]>>
|
|
774
|
+
if (minEntries === 0) {
|
|
775
|
+
entries = fc.constant([])
|
|
776
|
+
} else {
|
|
777
|
+
const key = parameter.terminal(fc, reset, recursionStack)
|
|
778
|
+
const value = type.terminal(fc, reset, recursionStack)
|
|
779
|
+
if (key === undefined || value === undefined) {
|
|
780
|
+
return undefined
|
|
781
|
+
}
|
|
782
|
+
entries = arrayWithConstraints(
|
|
783
|
+
fc,
|
|
784
|
+
fc.tuple(key, value),
|
|
785
|
+
{ ...entriesConstraints, maxLength: minEntries },
|
|
786
|
+
entryComparator
|
|
787
|
+
)
|
|
788
|
+
}
|
|
789
|
+
out = appendObjectEntries(out, entries)
|
|
790
|
+
}
|
|
791
|
+
return out
|
|
277
792
|
}
|
|
278
|
-
|
|
279
|
-
return (fc, ctx) => {
|
|
793
|
+
return makeLazy((fc, ctx, recursionStack) => {
|
|
280
794
|
const reset = resetContext(ctx)
|
|
281
795
|
// ---------------------------------------------
|
|
282
796
|
// handle property signatures
|
|
283
797
|
// ---------------------------------------------
|
|
284
798
|
const pss: any = {}
|
|
799
|
+
const orderedNames: Array<PropertyKey> = []
|
|
285
800
|
const requiredKeys: Array<PropertyKey> = []
|
|
286
|
-
|
|
801
|
+
const optionalNames: Array<PropertyKey> = []
|
|
802
|
+
for (const { ps, arbitrary } of propertySignatures) {
|
|
287
803
|
const name = ps.name
|
|
288
|
-
|
|
804
|
+
orderedNames.push(name)
|
|
805
|
+
if (SchemaAST.isOptional(ps.type)) {
|
|
806
|
+
optionalNames.push(name)
|
|
807
|
+
} else {
|
|
289
808
|
requiredKeys.push(name)
|
|
290
809
|
}
|
|
291
|
-
pss[name] =
|
|
810
|
+
pss[name] = arbitrary(fc, reset, recursionStack)
|
|
811
|
+
}
|
|
812
|
+
// When property-count constraints must be satisfied by selecting
|
|
813
|
+
// optional keys (no index signatures are available to fill the gap),
|
|
814
|
+
// generate a count-controlled subset of optional keys instead of
|
|
815
|
+
// relying on fast-check's independent inclusion plus discards. This
|
|
816
|
+
// enforces both bounds precisely while still varying which optionals
|
|
817
|
+
// appear.
|
|
818
|
+
const constraint = ctx.constraint
|
|
819
|
+
if (
|
|
820
|
+
optionalNames.length > 0 &&
|
|
821
|
+
indexSignatures.length === 0 &&
|
|
822
|
+
constraint !== undefined &&
|
|
823
|
+
(constraint.minLength !== undefined || constraint.maxLength !== undefined)
|
|
824
|
+
) {
|
|
825
|
+
return objectWithOptionalCount(fc, pss, orderedNames, requiredKeys, optionalNames, constraint)
|
|
292
826
|
}
|
|
293
827
|
let out = fc.record<any>(pss, { requiredKeys })
|
|
828
|
+
const entriesConstraints = objectEntriesConstraints(ast, ctx.constraint, requiredKeys.length)
|
|
294
829
|
// ---------------------------------------------
|
|
295
830
|
// handle index signatures
|
|
296
831
|
// ---------------------------------------------
|
|
297
|
-
for (const
|
|
298
|
-
const entry = fc.tuple(
|
|
299
|
-
const entries =
|
|
300
|
-
out = out
|
|
301
|
-
return entries.map((entries) => {
|
|
302
|
-
return {
|
|
303
|
-
...Object.fromEntries(entries),
|
|
304
|
-
...o
|
|
305
|
-
}
|
|
306
|
-
})
|
|
307
|
-
})
|
|
832
|
+
for (const { parameter, type } of indexSignatures) {
|
|
833
|
+
const entry = fc.tuple(parameter(fc, reset, recursionStack), type(fc, reset, recursionStack))
|
|
834
|
+
const entries = arrayWithConstraints(fc, entry, entriesConstraints, entryComparator)
|
|
835
|
+
out = appendObjectEntries(out, entries)
|
|
308
836
|
}
|
|
309
837
|
return out
|
|
310
|
-
}
|
|
311
|
-
|
|
312
|
-
|
|
838
|
+
}, terminal)
|
|
839
|
+
}
|
|
840
|
+
case "Union": {
|
|
841
|
+
const types = ast.types.map((ast) => recur(ast, path))
|
|
842
|
+
const terminal: LazyOption<any> = (fc, ctx, recursionStack) =>
|
|
843
|
+
oneOf(fc, types.map((type) => type.terminal(fc, ctx, recursionStack)).filter(Predicate.isNotUndefined))
|
|
844
|
+
return makeLazy((fc, ctx, recursionStack) => {
|
|
845
|
+
const arbitraries = types.map((type) => type(fc, ctx, recursionStack))
|
|
846
|
+
if (ctx.recursion) {
|
|
847
|
+
const terminalOut = terminal(fc, ctx, recursionStack)
|
|
848
|
+
if (terminalOut !== undefined) {
|
|
849
|
+
return fc.oneof(ctx.recursion, terminalOut, ...arbitraries)
|
|
850
|
+
}
|
|
851
|
+
}
|
|
852
|
+
const out = oneOf(fc, arbitraries)
|
|
853
|
+
if (out === undefined) {
|
|
854
|
+
throw arbitraryError("a union with no members")
|
|
855
|
+
}
|
|
856
|
+
return out
|
|
857
|
+
}, terminal)
|
|
858
|
+
}
|
|
313
859
|
case "Suspend": {
|
|
314
860
|
const memo = arbitraryMemoMap.get(ast)
|
|
315
861
|
|
|
316
862
|
if (memo) return memo
|
|
317
863
|
|
|
318
864
|
const get = SchemaAST.memoizeThunk(() => recur(ast.thunk(), path))
|
|
319
|
-
const out
|
|
320
|
-
|
|
865
|
+
const out = makeLazy((fc, ctx, recursionStack) => {
|
|
866
|
+
const recursion = getSuspendRecursion(fc, ast)
|
|
867
|
+
const nextCtx = { ...ctx, recursion }
|
|
868
|
+
const nextStack = recursionStack.includes(ast) ? recursionStack : [...recursionStack, ast]
|
|
869
|
+
const terminal = get().terminal(fc, nextCtx, nextStack)
|
|
870
|
+
if (terminal === undefined) {
|
|
871
|
+
throw errorWithPath(
|
|
872
|
+
"Unable to derive an arbitrary for a recursive schema without a finite generation path",
|
|
873
|
+
path
|
|
874
|
+
)
|
|
875
|
+
}
|
|
876
|
+
return fc.oneof(
|
|
877
|
+
recursion,
|
|
878
|
+
terminal,
|
|
879
|
+
fc.constant(null).chain(() => get()(fc, nextCtx, nextStack))
|
|
880
|
+
)
|
|
881
|
+
}, (fc, ctx, recursionStack) => {
|
|
882
|
+
if (recursionStack.includes(ast)) {
|
|
883
|
+
return undefined
|
|
884
|
+
}
|
|
885
|
+
const recursion = getSuspendRecursion(fc, ast)
|
|
886
|
+
return get().terminal(fc, { ...ctx, recursion }, [...recursionStack, ast])
|
|
887
|
+
})
|
|
321
888
|
|
|
322
889
|
arbitraryMemoMap.set(ast, out)
|
|
323
890
|
|