effect 4.0.1 → 4.0.3
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/ai-docs/package.json +2 -2
- package/ai-docs/tsconfig.json +2 -1
- package/dist/Array.d.ts +339 -0
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +143 -3
- package/dist/Array.js.map +1 -1
- package/dist/BigDecimal.d.ts +88 -0
- package/dist/BigDecimal.d.ts.map +1 -1
- package/dist/BigDecimal.js +44 -0
- package/dist/BigDecimal.js.map +1 -1
- package/dist/BigInt.d.ts +68 -0
- package/dist/BigInt.d.ts.map +1 -1
- package/dist/BigInt.js +36 -0
- package/dist/BigInt.js.map +1 -1
- package/dist/Boolean.d.ts +34 -0
- package/dist/Boolean.d.ts.map +1 -1
- package/dist/Boolean.js +18 -0
- package/dist/Boolean.js.map +1 -1
- package/dist/Brand.d.ts +9 -0
- package/dist/Brand.d.ts.map +1 -1
- package/dist/Brand.js +6 -0
- package/dist/Brand.js.map +1 -1
- package/dist/ByteSize.d.ts +86 -0
- package/dist/ByteSize.d.ts.map +1 -1
- package/dist/ByteSize.js +51 -0
- package/dist/ByteSize.js.map +1 -1
- package/dist/Cache.d.ts +38 -1
- package/dist/Cache.d.ts.map +1 -1
- package/dist/Cache.js +27 -7
- package/dist/Cache.js.map +1 -1
- package/dist/Cause.d.ts +82 -0
- package/dist/Cause.d.ts.map +1 -1
- package/dist/Cause.js +60 -0
- package/dist/Cause.js.map +1 -1
- package/dist/Channel.d.ts +327 -4
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +168 -8
- package/dist/Channel.js.map +1 -1
- package/dist/ChannelSchema.d.ts +11 -0
- package/dist/ChannelSchema.d.ts.map +1 -1
- package/dist/ChannelSchema.js +6 -0
- package/dist/ChannelSchema.js.map +1 -1
- package/dist/Chunk.d.ts +192 -0
- package/dist/Chunk.d.ts.map +1 -1
- package/dist/Chunk.js +78 -0
- package/dist/Chunk.js.map +1 -1
- package/dist/Clock.d.ts +7 -0
- package/dist/Clock.d.ts.map +1 -1
- package/dist/Clock.js +5 -0
- package/dist/Clock.js.map +1 -1
- package/dist/Combiner.d.ts +10 -0
- package/dist/Combiner.d.ts.map +1 -1
- package/dist/Combiner.js +8 -0
- package/dist/Combiner.js.map +1 -1
- package/dist/Config.d.ts +52 -12
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js +55 -5
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.d.ts +28 -0
- package/dist/ConfigProvider.d.ts.map +1 -1
- package/dist/ConfigProvider.js +19 -0
- package/dist/ConfigProvider.js.map +1 -1
- package/dist/Console.d.ts +22 -0
- package/dist/Console.d.ts.map +1 -1
- package/dist/Console.js +20 -0
- package/dist/Console.js.map +1 -1
- package/dist/Context.d.ts +50 -0
- package/dist/Context.d.ts.map +1 -1
- package/dist/Context.js +24 -3
- package/dist/Context.js.map +1 -1
- package/dist/Cron.d.ts +16 -0
- package/dist/Cron.d.ts.map +1 -1
- package/dist/Cron.js +26 -1
- package/dist/Cron.js.map +1 -1
- package/dist/Crypto.d.ts +38 -5
- package/dist/Crypto.d.ts.map +1 -1
- package/dist/Crypto.js +11 -2
- package/dist/Crypto.js.map +1 -1
- package/dist/Data.d.ts +13 -0
- package/dist/Data.d.ts.map +1 -1
- package/dist/Data.js +5 -0
- package/dist/Data.js.map +1 -1
- package/dist/DateTime.d.ts +180 -6
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/DateTime.js +98 -6
- package/dist/DateTime.js.map +1 -1
- package/dist/Deferred.d.ts +51 -0
- package/dist/Deferred.d.ts.map +1 -1
- package/dist/Deferred.js +22 -0
- package/dist/Deferred.js.map +1 -1
- package/dist/Differ.d.ts +2 -0
- package/dist/Differ.d.ts.map +1 -1
- package/dist/Differ.js +1 -0
- package/dist/Duration.d.ts +96 -6
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +80 -8
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +527 -0
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +240 -5
- package/dist/Effect.js.map +1 -1
- package/dist/Effectable.d.ts +4 -0
- package/dist/Effectable.d.ts.map +1 -1
- package/dist/Effectable.js +3 -0
- package/dist/Effectable.js.map +1 -1
- package/dist/Equal.d.ts +8 -0
- package/dist/Equal.d.ts.map +1 -1
- package/dist/Equal.js +9 -1
- package/dist/Equal.js.map +1 -1
- package/dist/Equivalence.d.ts +21 -0
- package/dist/Equivalence.d.ts.map +1 -1
- package/dist/Equivalence.js +16 -0
- package/dist/Equivalence.js.map +1 -1
- package/dist/ErrorReporter.d.ts +36 -0
- package/dist/ErrorReporter.d.ts.map +1 -1
- package/dist/ErrorReporter.js +11 -0
- package/dist/ErrorReporter.js.map +1 -1
- package/dist/ExecutionPlan.d.ts +49 -8
- package/dist/ExecutionPlan.d.ts.map +1 -1
- package/dist/ExecutionPlan.js +7 -0
- package/dist/ExecutionPlan.js.map +1 -1
- package/dist/Exit.d.ts +40 -0
- package/dist/Exit.d.ts.map +1 -1
- package/dist/Exit.js +27 -0
- package/dist/Exit.js.map +1 -1
- package/dist/Fiber.d.ts +20 -0
- package/dist/Fiber.d.ts.map +1 -1
- package/dist/Fiber.js +11 -0
- package/dist/Fiber.js.map +1 -1
- package/dist/FiberHandle.d.ts +21 -0
- package/dist/FiberHandle.d.ts.map +1 -1
- package/dist/FiberHandle.js +21 -4
- package/dist/FiberHandle.js.map +1 -1
- package/dist/FiberMap.d.ts +35 -0
- package/dist/FiberMap.d.ts.map +1 -1
- package/dist/FiberMap.js +19 -0
- package/dist/FiberMap.js.map +1 -1
- package/dist/FiberSet.d.ts +20 -0
- package/dist/FiberSet.d.ts.map +1 -1
- package/dist/FiberSet.js +14 -0
- package/dist/FiberSet.js.map +1 -1
- package/dist/FileSystem.d.ts +59 -2
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js +8 -0
- package/dist/FileSystem.js.map +1 -1
- package/dist/Filter.d.ts +55 -0
- package/dist/Filter.d.ts.map +1 -1
- package/dist/Filter.js +28 -0
- package/dist/Filter.js.map +1 -1
- package/dist/Formatter.d.ts +3 -0
- package/dist/Formatter.d.ts.map +1 -1
- package/dist/Formatter.js +39 -1
- package/dist/Formatter.js.map +1 -1
- package/dist/Function.d.ts +30 -0
- package/dist/Function.d.ts.map +1 -1
- package/dist/Function.js +20 -0
- package/dist/Function.js.map +1 -1
- package/dist/Graph.d.ts +247 -12
- package/dist/Graph.d.ts.map +1 -1
- package/dist/Graph.js +149 -28
- package/dist/Graph.js.map +1 -1
- package/dist/HKT.d.ts +5 -0
- package/dist/HKT.d.ts.map +1 -1
- package/dist/Hash.d.ts +14 -0
- package/dist/Hash.d.ts.map +1 -1
- package/dist/Hash.js +12 -0
- package/dist/Hash.js.map +1 -1
- package/dist/HashMap.d.ts +91 -0
- package/dist/HashMap.d.ts.map +1 -1
- package/dist/HashMap.js +39 -0
- package/dist/HashMap.js.map +1 -1
- package/dist/HashRing.d.ts +17 -0
- package/dist/HashRing.d.ts.map +1 -1
- package/dist/HashRing.js +9 -0
- package/dist/HashRing.js.map +1 -1
- package/dist/HashSet.d.ts +49 -0
- package/dist/HashSet.d.ts.map +1 -1
- package/dist/HashSet.js +19 -0
- package/dist/HashSet.js.map +1 -1
- package/dist/Inspectable.d.ts +7 -0
- package/dist/Inspectable.d.ts.map +1 -1
- package/dist/Inspectable.js +6 -0
- package/dist/Inspectable.js.map +1 -1
- package/dist/Iterable.d.ts +127 -0
- package/dist/Iterable.d.ts.map +1 -1
- package/dist/Iterable.js +51 -0
- package/dist/Iterable.js.map +1 -1
- package/dist/JsonPatch.d.ts +4 -0
- package/dist/JsonPatch.d.ts.map +1 -1
- package/dist/JsonPatch.js +3 -0
- package/dist/JsonPatch.js.map +1 -1
- package/dist/JsonPointer.d.ts +5 -0
- package/dist/JsonPointer.d.ts.map +1 -1
- package/dist/JsonPointer.js +5 -0
- package/dist/JsonPointer.js.map +1 -1
- package/dist/JsonSchema.d.ts +16 -0
- package/dist/JsonSchema.d.ts.map +1 -1
- package/dist/JsonSchema.js +11 -0
- package/dist/JsonSchema.js.map +1 -1
- package/dist/Latch.d.ts +14 -0
- package/dist/Latch.d.ts.map +1 -1
- package/dist/Latch.js +10 -0
- package/dist/Latch.js.map +1 -1
- package/dist/Layer.d.ts +100 -0
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js +45 -1
- package/dist/Layer.js.map +1 -1
- package/dist/LayerMap.d.ts +7 -0
- package/dist/LayerMap.d.ts.map +1 -1
- package/dist/LayerMap.js +4 -0
- package/dist/LayerMap.js.map +1 -1
- package/dist/LayerRef.d.ts +5 -0
- package/dist/LayerRef.d.ts.map +1 -1
- package/dist/LayerRef.js +3 -0
- package/dist/LayerRef.js.map +1 -1
- package/dist/LogLevel.d.ts +20 -0
- package/dist/LogLevel.d.ts.map +1 -1
- package/dist/LogLevel.js +9 -0
- package/dist/LogLevel.js.map +1 -1
- package/dist/Logger.d.ts +25 -0
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js +30 -4
- package/dist/Logger.js.map +1 -1
- package/dist/ManagedRuntime.d.ts +5 -0
- package/dist/ManagedRuntime.d.ts.map +1 -1
- package/dist/ManagedRuntime.js +9 -1
- package/dist/ManagedRuntime.js.map +1 -1
- package/dist/Match.d.ts +51 -0
- package/dist/Match.d.ts.map +1 -1
- package/dist/Match.js +39 -0
- package/dist/Match.js.map +1 -1
- package/dist/Metric.d.ts +59 -0
- package/dist/Metric.d.ts.map +1 -1
- package/dist/Metric.js +31 -0
- package/dist/Metric.js.map +1 -1
- package/dist/MutableHashMap.d.ts +32 -0
- package/dist/MutableHashMap.d.ts.map +1 -1
- package/dist/MutableHashMap.js +16 -0
- package/dist/MutableHashMap.js.map +1 -1
- package/dist/MutableHashSet.d.ts +16 -0
- package/dist/MutableHashSet.d.ts.map +1 -1
- package/dist/MutableHashSet.js +10 -0
- package/dist/MutableHashSet.js.map +1 -1
- package/dist/MutableList.d.ts +20 -0
- package/dist/MutableList.d.ts.map +1 -1
- package/dist/MutableList.js +18 -0
- package/dist/MutableList.js.map +1 -1
- package/dist/MutableRef.d.ts +31 -0
- package/dist/MutableRef.d.ts.map +1 -1
- package/dist/MutableRef.js +17 -0
- package/dist/MutableRef.js.map +1 -1
- package/dist/Newtype.d.ts +9 -0
- package/dist/Newtype.d.ts.map +1 -1
- package/dist/Newtype.js +6 -0
- package/dist/Newtype.js.map +1 -1
- package/dist/NonEmptyIterable.d.ts +4 -0
- package/dist/NonEmptyIterable.d.ts.map +1 -1
- package/dist/NonEmptyIterable.js +2 -0
- package/dist/NonEmptyIterable.js.map +1 -1
- package/dist/Number.d.ts +61 -0
- package/dist/Number.d.ts.map +1 -1
- package/dist/Number.js +31 -0
- package/dist/Number.js.map +1 -1
- package/dist/Optic.d.ts +41 -0
- package/dist/Optic.d.ts.map +1 -1
- package/dist/Optic.js +20 -0
- package/dist/Optic.js.map +1 -1
- package/dist/Option.d.ts +134 -0
- package/dist/Option.d.ts.map +1 -1
- package/dist/Option.js +61 -0
- package/dist/Option.js.map +1 -1
- package/dist/Order.d.ts +29 -0
- package/dist/Order.d.ts.map +1 -1
- package/dist/Order.js +24 -0
- package/dist/Order.js.map +1 -1
- package/dist/Ordering.d.ts +7 -0
- package/dist/Ordering.d.ts.map +1 -1
- package/dist/Ordering.js +3 -0
- package/dist/Ordering.js.map +1 -1
- package/dist/PartitionedSemaphore.d.ts +24 -0
- package/dist/PartitionedSemaphore.d.ts.map +1 -1
- package/dist/PartitionedSemaphore.js +47 -21
- package/dist/PartitionedSemaphore.js.map +1 -1
- package/dist/Path.d.ts +6 -0
- package/dist/Path.d.ts.map +1 -1
- package/dist/Path.js +4 -0
- package/dist/Path.js.map +1 -1
- package/dist/Pipeable.d.ts +7 -0
- package/dist/Pipeable.d.ts.map +1 -1
- package/dist/Pipeable.js +5 -0
- package/dist/Pipeable.js.map +1 -1
- package/dist/PlatformError.d.ts +8 -0
- package/dist/PlatformError.d.ts.map +1 -1
- package/dist/PlatformError.js +7 -0
- package/dist/PlatformError.js.map +1 -1
- package/dist/Pool.d.ts +19 -0
- package/dist/Pool.d.ts.map +1 -1
- package/dist/Pool.js +8 -1
- package/dist/Pool.js.map +1 -1
- package/dist/Predicate.d.ts +84 -0
- package/dist/Predicate.d.ts.map +1 -1
- package/dist/Predicate.js +48 -0
- package/dist/Predicate.js.map +1 -1
- package/dist/PrimaryKey.d.ts +5 -0
- package/dist/PrimaryKey.d.ts.map +1 -1
- package/dist/PrimaryKey.js +4 -0
- package/dist/PrimaryKey.js.map +1 -1
- package/dist/PubSub.d.ts +67 -5
- package/dist/PubSub.d.ts.map +1 -1
- package/dist/PubSub.js +60 -8
- package/dist/PubSub.js.map +1 -1
- package/dist/Pull.d.ts +20 -0
- package/dist/Pull.d.ts.map +1 -1
- package/dist/Pull.js +10 -0
- package/dist/Pull.js.map +1 -1
- package/dist/Queue.d.ts +60 -0
- package/dist/Queue.d.ts.map +1 -1
- package/dist/Queue.js +58 -8
- package/dist/Queue.js.map +1 -1
- package/dist/Random.d.ts +13 -0
- package/dist/Random.d.ts.map +1 -1
- package/dist/Random.js +9 -0
- package/dist/Random.js.map +1 -1
- package/dist/RcMap.d.ts +23 -0
- package/dist/RcMap.d.ts.map +1 -1
- package/dist/RcMap.js +8 -0
- package/dist/RcMap.js.map +1 -1
- package/dist/RcRef.d.ts +6 -0
- package/dist/RcRef.d.ts.map +1 -1
- package/dist/RcRef.js +3 -0
- package/dist/RcRef.js.map +1 -1
- package/dist/Record.d.ts +100 -0
- package/dist/Record.d.ts.map +1 -1
- package/dist/Record.js +43 -0
- package/dist/Record.js.map +1 -1
- package/dist/Redactable.d.ts +6 -0
- package/dist/Redactable.d.ts.map +1 -1
- package/dist/Redactable.js +4 -0
- package/dist/Redactable.js.map +1 -1
- package/dist/Redacted.d.ts +8 -0
- package/dist/Redacted.d.ts.map +1 -1
- package/dist/Redacted.js +6 -0
- package/dist/Redacted.js.map +1 -1
- package/dist/Reducer.d.ts +4 -0
- package/dist/Reducer.d.ts.map +1 -1
- package/dist/Reducer.js +3 -0
- package/dist/Reducer.js.map +1 -1
- package/dist/Ref.d.ts +20 -0
- package/dist/Ref.d.ts.map +1 -1
- package/dist/Ref.js +16 -0
- package/dist/Ref.js.map +1 -1
- package/dist/References.d.ts +21 -0
- package/dist/References.d.ts.map +1 -1
- package/dist/References.js +19 -0
- package/dist/References.js.map +1 -1
- package/dist/RegExp.d.ts +3 -0
- package/dist/RegExp.d.ts.map +1 -1
- package/dist/RegExp.js +4 -0
- package/dist/RegExp.js.map +1 -1
- package/dist/Request.d.ts +32 -0
- package/dist/Request.d.ts.map +1 -1
- package/dist/Request.js +12 -0
- package/dist/Request.js.map +1 -1
- package/dist/RequestResolver.d.ts +42 -0
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +27 -6
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Resource.d.ts +6 -0
- package/dist/Resource.d.ts.map +1 -1
- package/dist/Resource.js +6 -0
- package/dist/Resource.js.map +1 -1
- package/dist/Result.d.ts +91 -0
- package/dist/Result.d.ts.map +1 -1
- package/dist/Result.js +41 -0
- package/dist/Result.js.map +1 -1
- package/dist/Runtime.d.ts +9 -0
- package/dist/Runtime.d.ts.map +1 -1
- package/dist/Runtime.js +7 -0
- package/dist/Runtime.js.map +1 -1
- package/dist/Schedule.d.ts +57 -0
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +32 -0
- package/dist/Schedule.js.map +1 -1
- package/dist/Scheduler.d.ts +7 -0
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js +5 -0
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +969 -2
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +635 -5
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +107 -0
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +81 -1
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaGetter.d.ts +69 -2
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +63 -4
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaIssue.d.ts +33 -0
- package/dist/SchemaIssue.d.ts.map +1 -1
- package/dist/SchemaIssue.js +18 -0
- package/dist/SchemaIssue.js.map +1 -1
- package/dist/SchemaParser.d.ts +25 -0
- package/dist/SchemaParser.d.ts.map +1 -1
- package/dist/SchemaParser.js +26 -0
- package/dist/SchemaParser.js.map +1 -1
- package/dist/SchemaRepresentation.d.ts +147 -0
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +99 -0
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +53 -0
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +46 -0
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/Scope.d.ts +19 -0
- package/dist/Scope.d.ts.map +1 -1
- package/dist/Scope.js +12 -0
- package/dist/Scope.js.map +1 -1
- package/dist/ScopedCache.d.ts +34 -0
- package/dist/ScopedCache.d.ts.map +1 -1
- package/dist/ScopedCache.js +26 -3
- package/dist/ScopedCache.js.map +1 -1
- package/dist/ScopedRef.d.ts +9 -0
- package/dist/ScopedRef.d.ts.map +1 -1
- package/dist/ScopedRef.js +6 -0
- package/dist/ScopedRef.js.map +1 -1
- package/dist/Semaphore.d.ts +26 -0
- package/dist/Semaphore.d.ts.map +1 -1
- package/dist/Semaphore.js +10 -0
- package/dist/Semaphore.js.map +1 -1
- package/dist/Sink.d.ts +125 -1
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js +75 -1
- package/dist/Sink.js.map +1 -1
- package/dist/StandardSchema.d.ts +1 -0
- package/dist/StandardSchema.d.ts.map +1 -1
- package/dist/StandardSchema.js +1 -0
- package/dist/Stdio.d.ts +14 -1
- package/dist/Stdio.d.ts.map +1 -1
- package/dist/Stdio.js +6 -0
- package/dist/Stdio.js.map +1 -1
- package/dist/Stream.d.ts +569 -11
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +266 -18
- package/dist/Stream.js.map +1 -1
- package/dist/String.d.ts +87 -0
- package/dist/String.d.ts.map +1 -1
- package/dist/String.js +61 -0
- package/dist/String.js.map +1 -1
- package/dist/Struct.d.ts +46 -0
- package/dist/Struct.d.ts.map +1 -1
- package/dist/Struct.js +19 -0
- package/dist/Struct.js.map +1 -1
- package/dist/SubscriptionRef.d.ts +65 -0
- package/dist/SubscriptionRef.d.ts.map +1 -1
- package/dist/SubscriptionRef.js +25 -0
- package/dist/SubscriptionRef.js.map +1 -1
- package/dist/Symbol.d.ts +2 -0
- package/dist/Symbol.d.ts.map +1 -1
- package/dist/Symbol.js +2 -0
- package/dist/Symbol.js.map +1 -1
- package/dist/SynchronizedRef.d.ts +63 -0
- package/dist/SynchronizedRef.d.ts.map +1 -1
- package/dist/SynchronizedRef.js +24 -0
- package/dist/SynchronizedRef.js.map +1 -1
- package/dist/Take.d.ts +3 -0
- package/dist/Take.d.ts.map +1 -1
- package/dist/Take.js +1 -0
- package/dist/Take.js.map +1 -1
- package/dist/Terminal.d.ts +8 -0
- package/dist/Terminal.d.ts.map +1 -1
- package/dist/Terminal.js +4 -0
- package/dist/Terminal.js.map +1 -1
- package/dist/Tracer.d.ts +23 -0
- package/dist/Tracer.d.ts.map +1 -1
- package/dist/Tracer.js +12 -0
- package/dist/Tracer.js.map +1 -1
- package/dist/Trie.d.ts +68 -0
- package/dist/Trie.d.ts.map +1 -1
- package/dist/Trie.js +28 -0
- package/dist/Trie.js.map +1 -1
- package/dist/Tuple.d.ts +38 -0
- package/dist/Tuple.d.ts.map +1 -1
- package/dist/Tuple.js +18 -0
- package/dist/Tuple.js.map +1 -1
- package/dist/TxChunk.d.ts +52 -0
- package/dist/TxChunk.d.ts.map +1 -1
- package/dist/TxChunk.js +23 -0
- package/dist/TxChunk.js.map +1 -1
- package/dist/TxDeferred.d.ts +15 -0
- package/dist/TxDeferred.d.ts.map +1 -1
- package/dist/TxDeferred.js +8 -0
- package/dist/TxDeferred.js.map +1 -1
- package/dist/TxHashMap.d.ts +83 -0
- package/dist/TxHashMap.d.ts.map +1 -1
- package/dist/TxHashMap.js +52 -7
- package/dist/TxHashMap.js.map +1 -1
- package/dist/TxHashSet.d.ts +51 -0
- package/dist/TxHashSet.d.ts.map +1 -1
- package/dist/TxHashSet.js +29 -4
- package/dist/TxHashSet.js.map +1 -1
- package/dist/TxPriorityQueue.d.ts +30 -0
- package/dist/TxPriorityQueue.d.ts.map +1 -1
- package/dist/TxPriorityQueue.js +22 -1
- package/dist/TxPriorityQueue.js.map +1 -1
- package/dist/TxPubSub.d.ts +25 -0
- package/dist/TxPubSub.d.ts.map +1 -1
- package/dist/TxPubSub.js +19 -0
- package/dist/TxPubSub.js.map +1 -1
- package/dist/TxQueue.d.ts +51 -0
- package/dist/TxQueue.d.ts.map +1 -1
- package/dist/TxQueue.js +30 -0
- package/dist/TxQueue.js.map +1 -1
- package/dist/TxReentrantLock.d.ts +24 -0
- package/dist/TxReentrantLock.d.ts.map +1 -1
- package/dist/TxReentrantLock.js +32 -18
- package/dist/TxReentrantLock.js.map +1 -1
- package/dist/TxRef.d.ts +14 -0
- package/dist/TxRef.d.ts.map +1 -1
- package/dist/TxRef.js +7 -0
- package/dist/TxRef.js.map +1 -1
- package/dist/TxSemaphore.d.ts +25 -0
- package/dist/TxSemaphore.d.ts.map +1 -1
- package/dist/TxSemaphore.js +29 -13
- package/dist/TxSemaphore.js.map +1 -1
- package/dist/TxSubscriptionRef.d.ts +25 -0
- package/dist/TxSubscriptionRef.d.ts.map +1 -1
- package/dist/TxSubscriptionRef.js +12 -0
- package/dist/TxSubscriptionRef.js.map +1 -1
- package/dist/Types.d.ts +36 -0
- package/dist/Types.d.ts.map +1 -1
- package/dist/Types.js +1 -0
- package/dist/UndefinedOr.d.ts +15 -0
- package/dist/UndefinedOr.d.ts.map +1 -1
- package/dist/UndefinedOr.js +9 -0
- package/dist/UndefinedOr.js.map +1 -1
- package/dist/Unify.d.ts +15 -0
- package/dist/Unify.d.ts.map +1 -1
- package/dist/Unify.js +2 -0
- package/dist/Unify.js.map +1 -1
- package/dist/Utils.d.ts +4 -0
- package/dist/Utils.d.ts.map +1 -1
- package/dist/Utils.js +1 -0
- package/dist/Utils.js.map +1 -1
- package/dist/Version.d.ts +26 -0
- package/dist/Version.d.ts.map +1 -0
- package/dist/Version.js +36 -0
- package/dist/Version.js.map +1 -0
- package/dist/ai/Chat.js +1 -1
- package/dist/ai/Chat.js.map +1 -1
- package/dist/ai/DecisionModel.d.ts +22 -0
- package/dist/ai/DecisionModel.d.ts.map +1 -1
- package/dist/ai/DecisionModel.js +22 -4
- package/dist/ai/DecisionModel.js.map +1 -1
- package/dist/ai/LanguageModel.d.ts.map +1 -1
- package/dist/ai/LanguageModel.js +14 -13
- package/dist/ai/LanguageModel.js.map +1 -1
- package/dist/ai/McpServer.d.ts +38 -11
- package/dist/ai/McpServer.d.ts.map +1 -1
- package/dist/ai/McpServer.js +276 -190
- package/dist/ai/McpServer.js.map +1 -1
- package/dist/ai/Telemetry.d.ts +49 -41
- package/dist/ai/Telemetry.d.ts.map +1 -1
- package/dist/ai/Telemetry.js +6 -8
- package/dist/ai/Telemetry.js.map +1 -1
- package/dist/ai/internal/mcpProtocol/v2026_07_28.js +5 -0
- package/dist/ai/internal/mcpProtocol/v2026_07_28.js.map +1 -1
- package/dist/ai/internal/mcpProtocol.js.map +1 -1
- package/dist/ai/internal/mcpRuntime.js +80 -46
- package/dist/ai/internal/mcpRuntime.js.map +1 -1
- package/dist/ai/internal/mcpStatefulRuntime.js +1 -0
- package/dist/ai/internal/mcpStatefulRuntime.js.map +1 -1
- package/dist/cli/CliOutput.d.ts +27 -0
- package/dist/cli/CliOutput.d.ts.map +1 -1
- package/dist/cli/CliOutput.js +33 -10
- package/dist/cli/CliOutput.js.map +1 -1
- package/dist/cli/Command.d.ts.map +1 -1
- package/dist/cli/Command.js +6 -3
- package/dist/cli/Command.js.map +1 -1
- package/dist/cli/Completions.d.ts +3 -3
- package/dist/cli/Completions.d.ts.map +1 -1
- package/dist/cli/Completions.js +8 -5
- package/dist/cli/Completions.js.map +1 -1
- package/dist/cli/GlobalFlag.d.ts +5 -4
- package/dist/cli/GlobalFlag.d.ts.map +1 -1
- package/dist/cli/GlobalFlag.js +3 -3
- package/dist/cli/GlobalFlag.js.map +1 -1
- package/dist/cli/Prompt.d.ts +17 -1
- package/dist/cli/Prompt.d.ts.map +1 -1
- package/dist/cli/Prompt.js +119 -114
- package/dist/cli/Prompt.js.map +1 -1
- package/dist/cli/internal/ansi.d.ts +0 -1
- package/dist/cli/internal/ansi.d.ts.map +1 -1
- package/dist/cli/internal/ansi.js +20 -3
- package/dist/cli/internal/ansi.js.map +1 -1
- package/dist/cli/internal/completions/powershell.d.ts +2 -0
- package/dist/cli/internal/completions/powershell.d.ts.map +1 -0
- package/dist/cli/internal/completions/powershell.js +273 -0
- package/dist/cli/internal/completions/powershell.js.map +1 -0
- package/dist/cli/internal/completions/zsh.js +3 -2
- package/dist/cli/internal/completions/zsh.js.map +1 -1
- package/dist/cli/internal/wizard.d.ts +3 -3
- package/dist/cli/internal/wizard.d.ts.map +1 -1
- package/dist/cli/internal/wizard.js +21 -18
- package/dist/cli/internal/wizard.js.map +1 -1
- package/dist/cluster/ClusterSchema.d.ts +28 -0
- package/dist/cluster/ClusterSchema.d.ts.map +1 -1
- package/dist/cluster/ClusterSchema.js +30 -0
- package/dist/cluster/ClusterSchema.js.map +1 -1
- package/dist/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/cluster/ClusterWorkflowEngine.js +10 -18
- package/dist/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/cluster/K8sHttpClient.d.ts.map +1 -1
- package/dist/cluster/K8sHttpClient.js +5 -2
- package/dist/cluster/K8sHttpClient.js.map +1 -1
- package/dist/cluster/MessageStorage.d.ts +18 -3
- package/dist/cluster/MessageStorage.d.ts.map +1 -1
- package/dist/cluster/MessageStorage.js +31 -11
- package/dist/cluster/MessageStorage.js.map +1 -1
- package/dist/cluster/Runners.d.ts.map +1 -1
- package/dist/cluster/Runners.js +8 -2
- package/dist/cluster/Runners.js.map +1 -1
- package/dist/cluster/Sharding.d.ts.map +1 -1
- package/dist/cluster/Sharding.js +181 -62
- package/dist/cluster/Sharding.js.map +1 -1
- package/dist/cluster/SqlMessageStorage.d.ts +59 -19
- package/dist/cluster/SqlMessageStorage.d.ts.map +1 -1
- package/dist/cluster/SqlMessageStorage.js +84 -55
- package/dist/cluster/SqlMessageStorage.js.map +1 -1
- package/dist/cluster/SqlRunnerStorage.d.ts +68 -19
- package/dist/cluster/SqlRunnerStorage.d.ts.map +1 -1
- package/dist/cluster/SqlRunnerStorage.js +191 -113
- package/dist/cluster/SqlRunnerStorage.js.map +1 -1
- package/dist/cluster/internal/entityManager.js +104 -37
- package/dist/cluster/internal/entityManager.js.map +1 -1
- package/dist/encoding/Base64.d.ts +4 -0
- package/dist/encoding/Base64.d.ts.map +1 -1
- package/dist/encoding/Base64.js +4 -0
- package/dist/encoding/Base64.js.map +1 -1
- package/dist/encoding/Base64Url.d.ts +4 -0
- package/dist/encoding/Base64Url.d.ts.map +1 -1
- package/dist/encoding/Base64Url.js +4 -0
- package/dist/encoding/Base64Url.js.map +1 -1
- package/dist/encoding/EncodingError.d.ts +4 -0
- package/dist/encoding/EncodingError.d.ts.map +1 -1
- package/dist/encoding/EncodingError.js +4 -0
- package/dist/encoding/EncodingError.js.map +1 -1
- package/dist/encoding/Hex.d.ts +5 -0
- package/dist/encoding/Hex.d.ts.map +1 -1
- package/dist/encoding/Hex.js +5 -0
- package/dist/encoding/Hex.js.map +1 -1
- package/dist/encoding/Toml.js +2 -2
- package/dist/encoding/Toml.js.map +1 -1
- package/dist/encoding/Yaml.d.ts.map +1 -1
- package/dist/encoding/Yaml.js +6 -4
- package/dist/encoding/Yaml.js.map +1 -1
- package/dist/encoding/index.d.ts +4 -0
- package/dist/encoding/index.d.ts.map +1 -1
- package/dist/encoding/index.js +4 -0
- package/dist/encoding/index.js.map +1 -1
- package/dist/eventlog/SqlEventJournal.js +8 -4
- package/dist/eventlog/SqlEventJournal.js.map +1 -1
- package/dist/eventlog/SqlEventLogServerUnencrypted.d.ts +27 -10
- package/dist/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -1
- package/dist/eventlog/SqlEventLogServerUnencrypted.js +49 -7
- package/dist/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
- package/dist/http/FindMyWay/internal/router.js +3 -6
- package/dist/http/FindMyWay/internal/router.js.map +1 -1
- package/dist/http/Headers.d.ts +3 -1
- package/dist/http/Headers.d.ts.map +1 -1
- package/dist/http/Headers.js +4 -2
- package/dist/http/Headers.js.map +1 -1
- package/dist/http/HttpClient.d.ts +15 -0
- package/dist/http/HttpClient.d.ts.map +1 -1
- package/dist/http/HttpClient.js +79 -23
- package/dist/http/HttpClient.js.map +1 -1
- package/dist/http/HttpClientResponse.js +3 -1
- package/dist/http/HttpClientResponse.js.map +1 -1
- package/dist/http/HttpEffect.d.ts +3 -0
- package/dist/http/HttpEffect.d.ts.map +1 -1
- package/dist/http/HttpEffect.js +5 -2
- package/dist/http/HttpEffect.js.map +1 -1
- package/dist/http/HttpMiddleware.d.ts +17 -0
- package/dist/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/http/HttpMiddleware.js +56 -39
- package/dist/http/HttpMiddleware.js.map +1 -1
- package/dist/http/HttpServer.d.ts +1 -1
- package/dist/http/HttpServer.d.ts.map +1 -1
- package/dist/http/HttpTraceContext.d.ts.map +1 -1
- package/dist/http/HttpTraceContext.js +4 -2
- package/dist/http/HttpTraceContext.js.map +1 -1
- package/dist/http/internal/tracing.d.ts +2 -0
- package/dist/http/internal/tracing.d.ts.map +1 -0
- package/dist/http/internal/tracing.js +37 -0
- package/dist/http/internal/tracing.js.map +1 -0
- package/dist/http-api/HttpApiBuilder.js +2 -1
- package/dist/http-api/HttpApiBuilder.js.map +1 -1
- package/dist/http-api/HttpApiClient.d.ts +12 -3
- package/dist/http-api/HttpApiClient.d.ts.map +1 -1
- package/dist/http-api/HttpApiClient.js.map +1 -1
- package/dist/http-api/HttpApiError.d.ts +4 -3
- package/dist/http-api/HttpApiError.d.ts.map +1 -1
- package/dist/http-api/HttpApiError.js +7 -4
- package/dist/http-api/HttpApiError.js.map +1 -1
- package/dist/http-api/HttpApiSecurity.d.ts +8 -8
- package/dist/http-api/HttpApiSecurity.js +8 -8
- package/dist/index.d.ts +155 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +155 -0
- package/dist/index.js.map +1 -1
- package/dist/internal/arbitrary/array.js +3 -3
- package/dist/internal/arbitrary/array.js.map +1 -1
- package/dist/internal/arbitrary/model.js +26 -11
- package/dist/internal/arbitrary/model.js.map +1 -1
- package/dist/internal/arbitrary/runner.js +8 -8
- package/dist/internal/arbitrary/runner.js.map +1 -1
- package/dist/internal/arbitrary/schema.js +4 -5
- package/dist/internal/arbitrary/schema.js.map +1 -1
- package/dist/internal/effect.js +53 -46
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/schedule.js +7 -5
- package/dist/internal/schedule.js.map +1 -1
- package/dist/internal/schema/standardSchema.js +2 -2
- package/dist/internal/schema/standardSchema.js.map +1 -1
- package/dist/internal/version.d.ts +2 -0
- package/dist/internal/version.d.ts.map +1 -0
- package/dist/internal/version.js +3 -0
- package/dist/internal/version.js.map +1 -0
- package/dist/net/AddressResolver.d.ts +145 -0
- package/dist/net/AddressResolver.d.ts.map +1 -0
- package/dist/net/AddressResolver.js +114 -0
- package/dist/net/AddressResolver.js.map +1 -0
- package/dist/net/Dns.d.ts +596 -0
- package/dist/net/Dns.d.ts.map +1 -0
- package/dist/net/Dns.js +549 -0
- package/dist/net/Dns.js.map +1 -0
- package/dist/net/Host.d.ts +320 -0
- package/dist/net/Host.d.ts.map +1 -0
- package/dist/net/Host.js +342 -0
- package/dist/net/Host.js.map +1 -0
- package/dist/net/IpInterface.d.ts +76 -3
- package/dist/net/IpInterface.d.ts.map +1 -1
- package/dist/net/IpInterface.js +53 -4
- package/dist/net/IpInterface.js.map +1 -1
- package/dist/net/IpNetwork.d.ts +82 -8
- package/dist/net/IpNetwork.d.ts.map +1 -1
- package/dist/net/IpNetwork.js +60 -4
- package/dist/net/IpNetwork.js.map +1 -1
- package/dist/net/NetAddress.d.ts +388 -35
- package/dist/net/NetAddress.d.ts.map +1 -1
- package/dist/net/NetAddress.js +350 -34
- package/dist/net/NetAddress.js.map +1 -1
- package/dist/net/index.d.ts +15 -0
- package/dist/net/index.d.ts.map +1 -1
- package/dist/net/index.js +15 -0
- package/dist/net/index.js.map +1 -1
- package/dist/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/observability/OtlpExporter.js +5 -6
- package/dist/observability/OtlpExporter.js.map +1 -1
- package/dist/observability/OtlpLogger.d.ts.map +1 -1
- package/dist/observability/OtlpLogger.js +23 -27
- package/dist/observability/OtlpLogger.js.map +1 -1
- package/dist/observability/OtlpMetrics.d.ts +5 -3
- package/dist/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/observability/OtlpMetrics.js +36 -115
- package/dist/observability/OtlpMetrics.js.map +1 -1
- package/dist/observability/OtlpResource.d.ts +4 -3
- package/dist/observability/OtlpResource.d.ts.map +1 -1
- package/dist/observability/OtlpResource.js +20 -23
- package/dist/observability/OtlpResource.js.map +1 -1
- package/dist/observability/OtlpTracer.d.ts +1 -0
- package/dist/observability/OtlpTracer.d.ts.map +1 -1
- package/dist/observability/OtlpTracer.js +32 -36
- package/dist/observability/OtlpTracer.js.map +1 -1
- package/dist/observability/PrometheusMetrics.js +1 -0
- package/dist/observability/PrometheusMetrics.js.map +1 -1
- package/dist/observability/internal/otlpProtobuf.js +32 -1
- package/dist/observability/internal/otlpProtobuf.js.map +1 -1
- package/dist/persistence/PersistedQueue.d.ts +32 -3
- package/dist/persistence/PersistedQueue.d.ts.map +1 -1
- package/dist/persistence/PersistedQueue.js +75 -16
- package/dist/persistence/PersistedQueue.js.map +1 -1
- package/dist/reactivity/AsyncResult.d.ts +1 -1
- package/dist/reactivity/Atom.d.ts +5 -5
- package/dist/reactivity/Atom.d.ts.map +1 -1
- package/dist/reactivity/Atom.js +9 -5
- package/dist/reactivity/Atom.js.map +1 -1
- package/dist/reactivity/AtomHttpApi.d.ts +2 -2
- package/dist/reactivity/AtomHttpApi.d.ts.map +1 -1
- package/dist/reactivity/AtomRegistry.d.ts +8 -0
- package/dist/reactivity/AtomRegistry.d.ts.map +1 -1
- package/dist/reactivity/AtomRegistry.js.map +1 -1
- package/dist/rpc/RpcClient.d.ts +41 -7
- package/dist/rpc/RpcClient.d.ts.map +1 -1
- package/dist/rpc/RpcClient.js +50 -25
- package/dist/rpc/RpcClient.js.map +1 -1
- package/dist/rpc/RpcServer.d.ts +6 -0
- package/dist/rpc/RpcServer.d.ts.map +1 -1
- package/dist/rpc/RpcServer.js +59 -40
- package/dist/rpc/RpcServer.js.map +1 -1
- package/dist/rpc/internal/tracing.d.ts +2 -0
- package/dist/rpc/internal/tracing.d.ts.map +1 -0
- package/dist/rpc/internal/tracing.js +18 -0
- package/dist/rpc/internal/tracing.js.map +1 -0
- package/dist/schema/SchemaCompiler/runtime.js +9 -1
- package/dist/schema/SchemaCompiler/runtime.js.map +1 -1
- package/dist/socket/DatagramSocket.d.ts +456 -0
- package/dist/socket/DatagramSocket.d.ts.map +1 -0
- package/dist/socket/DatagramSocket.js +535 -0
- package/dist/socket/DatagramSocket.js.map +1 -0
- package/dist/socket/Socket.d.ts +14 -1
- package/dist/socket/Socket.d.ts.map +1 -1
- package/dist/socket/Socket.js +9 -1
- package/dist/socket/Socket.js.map +1 -1
- package/dist/socket/index.d.ts +5 -0
- package/dist/socket/index.d.ts.map +1 -1
- package/dist/socket/index.js +5 -0
- package/dist/socket/index.js.map +1 -1
- package/dist/sql/Migrator.d.ts.map +1 -1
- package/dist/sql/Migrator.js +7 -2
- package/dist/sql/Migrator.js.map +1 -1
- package/dist/sql/SqlClient.d.ts +7 -1
- package/dist/sql/SqlClient.d.ts.map +1 -1
- package/dist/sql/SqlClient.js +35 -10
- package/dist/sql/SqlClient.js.map +1 -1
- package/dist/sql/Statement.d.ts +21 -1
- package/dist/sql/Statement.d.ts.map +1 -1
- package/dist/sql/Statement.js +55 -7
- package/dist/sql/Statement.js.map +1 -1
- package/dist/testing/TestClock.d.ts +8 -0
- package/dist/testing/TestClock.d.ts.map +1 -1
- package/dist/testing/TestClock.js +7 -0
- package/dist/testing/TestClock.js.map +1 -1
- package/dist/testing/TestConsole.d.ts +7 -0
- package/dist/testing/TestConsole.d.ts.map +1 -1
- package/dist/testing/TestConsole.js +6 -0
- package/dist/testing/TestConsole.js.map +1 -1
- package/dist/testing/TestCrypto.d.ts +73 -0
- package/dist/testing/TestCrypto.d.ts.map +1 -0
- package/dist/testing/TestCrypto.js +87 -0
- package/dist/testing/TestCrypto.js.map +1 -0
- package/dist/testing/index.d.ts +8 -0
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +8 -0
- package/dist/testing/index.js.map +1 -1
- package/dist/workflow/DurableDeferred.d.ts +54 -0
- package/dist/workflow/DurableDeferred.d.ts.map +1 -1
- package/dist/workflow/DurableDeferred.js +78 -49
- package/dist/workflow/DurableDeferred.js.map +1 -1
- package/dist/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/workflow/WorkflowEngine.js +2 -1
- package/dist/workflow/WorkflowEngine.js.map +1 -1
- package/package.json +3 -3
- package/src/Array.ts +351 -3
- package/src/BigDecimal.ts +88 -0
- package/src/BigInt.ts +68 -0
- package/src/Boolean.ts +34 -0
- package/src/Brand.ts +10 -0
- package/src/ByteSize.ts +87 -0
- package/src/Cache.ts +50 -8
- package/src/Cause.ts +82 -0
- package/src/Channel.ts +368 -18
- package/src/ChannelSchema.ts +13 -0
- package/src/Chunk.ts +193 -0
- package/src/Clock.ts +7 -0
- package/src/Combiner.ts +10 -0
- package/src/Config.ts +82 -8
- package/src/ConfigProvider.ts +28 -0
- package/src/Console.ts +26 -0
- package/src/Context.ts +53 -3
- package/src/Cron.ts +32 -1
- package/src/Crypto.ts +48 -9
- package/src/Data.ts +13 -0
- package/src/DateTime.ts +180 -6
- package/src/Deferred.ts +51 -0
- package/src/Differ.ts +2 -0
- package/src/Duration.ts +126 -16
- package/src/Effect.ts +539 -5
- package/src/Effectable.ts +4 -0
- package/src/Equal.ts +12 -1
- package/src/Equivalence.ts +22 -0
- package/src/ErrorReporter.ts +36 -0
- package/src/ExecutionPlan.ts +58 -14
- package/src/Exit.ts +40 -0
- package/src/Fiber.ts +20 -0
- package/src/FiberHandle.ts +29 -4
- package/src/FiberMap.ts +38 -0
- package/src/FiberSet.ts +21 -0
- package/src/FileSystem.ts +64 -2
- package/src/Filter.ts +55 -0
- package/src/Formatter.ts +42 -1
- package/src/Function.ts +30 -0
- package/src/Graph.ts +317 -36
- package/src/HKT.ts +5 -0
- package/src/Hash.ts +15 -0
- package/src/HashMap.ts +91 -0
- package/src/HashRing.ts +18 -0
- package/src/HashSet.ts +53 -0
- package/src/Inspectable.ts +8 -0
- package/src/Iterable.ts +127 -0
- package/src/JsonPatch.ts +5 -0
- package/src/JsonPointer.ts +5 -0
- package/src/JsonSchema.ts +17 -0
- package/src/Latch.ts +14 -0
- package/src/Layer.ts +101 -1
- package/src/LayerMap.ts +7 -0
- package/src/LayerRef.ts +5 -0
- package/src/LogLevel.ts +20 -0
- package/src/Logger.ts +41 -5
- package/src/ManagedRuntime.ts +12 -1
- package/src/Match.ts +52 -0
- package/src/Metric.ts +69 -0
- package/src/MutableHashMap.ts +44 -0
- package/src/MutableHashSet.ts +17 -0
- package/src/MutableList.ts +21 -0
- package/src/MutableRef.ts +32 -0
- package/src/Newtype.ts +9 -0
- package/src/NonEmptyIterable.ts +4 -0
- package/src/Number.ts +61 -0
- package/src/Optic.ts +57 -0
- package/src/Option.ts +134 -0
- package/src/Order.ts +30 -0
- package/src/Ordering.ts +7 -0
- package/src/PartitionedSemaphore.ts +61 -22
- package/src/Path.ts +6 -0
- package/src/Pipeable.ts +7 -0
- package/src/PlatformError.ts +8 -0
- package/src/Pool.ts +20 -1
- package/src/Predicate.ts +85 -0
- package/src/PrimaryKey.ts +5 -0
- package/src/PubSub.ts +90 -9
- package/src/Pull.ts +20 -0
- package/src/Queue.ts +80 -10
- package/src/Random.ts +13 -0
- package/src/RcMap.ts +23 -0
- package/src/RcRef.ts +6 -0
- package/src/Record.ts +100 -0
- package/src/Redactable.ts +6 -0
- package/src/Redacted.ts +8 -0
- package/src/Reducer.ts +4 -0
- package/src/Ref.ts +42 -0
- package/src/References.ts +21 -0
- package/src/RegExp.ts +4 -0
- package/src/Request.ts +32 -0
- package/src/RequestResolver.ts +59 -10
- package/src/Resource.ts +7 -0
- package/src/Result.ts +93 -0
- package/src/Runtime.ts +10 -0
- package/src/Schedule.ts +61 -0
- package/src/Scheduler.ts +7 -0
- package/src/Schema.ts +1168 -9
- package/src/SchemaAST.ts +115 -1
- package/src/SchemaGetter.ts +80 -4
- package/src/SchemaIssue.ts +34 -0
- package/src/SchemaParser.ts +26 -0
- package/src/SchemaRepresentation.ts +148 -0
- package/src/SchemaTransformation.ts +53 -0
- package/src/Scope.ts +19 -0
- package/src/ScopedCache.ts +55 -3
- package/src/ScopedRef.ts +9 -0
- package/src/Semaphore.ts +26 -0
- package/src/Sink.ts +126 -2
- package/src/StandardSchema.ts +1 -0
- package/src/Stdio.ts +16 -2
- package/src/Stream.ts +633 -26
- package/src/String.ts +87 -0
- package/src/Struct.ts +46 -0
- package/src/SubscriptionRef.ts +65 -0
- package/src/Symbol.ts +2 -0
- package/src/SynchronizedRef.ts +63 -0
- package/src/Take.ts +3 -0
- package/src/Terminal.ts +8 -0
- package/src/Tracer.ts +23 -0
- package/src/Trie.ts +68 -0
- package/src/Tuple.ts +38 -0
- package/src/TxChunk.ts +52 -0
- package/src/TxDeferred.ts +15 -0
- package/src/TxHashMap.ts +97 -6
- package/src/TxHashSet.ts +83 -3
- package/src/TxPriorityQueue.ts +34 -2
- package/src/TxPubSub.ts +26 -0
- package/src/TxQueue.ts +51 -0
- package/src/TxReentrantLock.ts +53 -36
- package/src/TxRef.ts +14 -0
- package/src/TxSemaphore.ts +47 -31
- package/src/TxSubscriptionRef.ts +25 -0
- package/src/Types.ts +36 -0
- package/src/UndefinedOr.ts +15 -0
- package/src/Unify.ts +15 -0
- package/src/Utils.ts +4 -0
- package/src/Version.ts +38 -0
- package/src/ai/Chat.ts +1 -1
- package/src/ai/DecisionModel.ts +42 -1
- package/src/ai/LanguageModel.ts +16 -19
- package/src/ai/McpServer.ts +169 -58
- package/src/ai/Telemetry.ts +62 -58
- package/src/ai/internal/mcpProtocol/v2026_07_28.ts +5 -0
- package/src/ai/internal/mcpProtocol.ts +3 -0
- package/src/ai/internal/mcpRuntime.ts +86 -43
- package/src/ai/internal/mcpStatefulRuntime.ts +2 -0
- package/src/cli/CliOutput.ts +33 -16
- package/src/cli/Command.ts +4 -3
- package/src/cli/Completions.ts +9 -6
- package/src/cli/GlobalFlag.ts +19 -11
- package/src/cli/Prompt.ts +159 -149
- package/src/cli/internal/ansi.ts +26 -3
- package/src/cli/internal/completions/powershell.ts +322 -0
- package/src/cli/internal/completions/zsh.ts +4 -2
- package/src/cli/internal/wizard.ts +34 -26
- package/src/cluster/ClusterSchema.ts +32 -0
- package/src/cluster/ClusterWorkflowEngine.ts +13 -24
- package/src/cluster/K8sHttpClient.ts +12 -2
- package/src/cluster/MessageStorage.ts +45 -14
- package/src/cluster/Runners.ts +8 -2
- package/src/cluster/Sharding.ts +207 -49
- package/src/cluster/SqlMessageStorage.ts +118 -84
- package/src/cluster/SqlRunnerStorage.ts +224 -128
- package/src/cluster/internal/entityManager.ts +151 -55
- package/src/encoding/Base64.ts +4 -0
- package/src/encoding/Base64Url.ts +4 -0
- package/src/encoding/EncodingError.ts +5 -0
- package/src/encoding/Hex.ts +5 -0
- package/src/encoding/Toml.ts +2 -2
- package/src/encoding/Yaml.ts +8 -4
- package/src/encoding/index.ts +4 -0
- package/src/eventlog/SqlEventJournal.ts +18 -4
- package/src/eventlog/SqlEventLogServerUnencrypted.ts +282 -235
- package/src/http/FindMyWay/internal/router.ts +4 -7
- package/src/http/Headers.ts +8 -2
- package/src/http/HttpClient.ts +100 -29
- package/src/http/HttpClientResponse.ts +3 -1
- package/src/http/HttpEffect.ts +11 -2
- package/src/http/HttpMiddleware.ts +60 -45
- package/src/http/HttpServer.ts +1 -1
- package/src/http/HttpTraceContext.ts +8 -2
- package/src/http/internal/tracing.ts +52 -0
- package/src/http-api/HttpApiBuilder.ts +5 -1
- package/src/http-api/HttpApiClient.ts +13 -4
- package/src/http-api/HttpApiError.ts +8 -4
- package/src/http-api/HttpApiSecurity.ts +8 -8
- package/src/index.ts +156 -0
- package/src/internal/arbitrary/array.ts +3 -3
- package/src/internal/arbitrary/model.ts +37 -14
- package/src/internal/arbitrary/runner.ts +7 -7
- package/src/internal/arbitrary/schema.ts +4 -3
- package/src/internal/effect.ts +62 -58
- package/src/internal/schedule.ts +23 -17
- package/src/internal/schema/standardSchema.ts +2 -2
- package/src/internal/version.ts +2 -0
- package/src/net/AddressResolver.ts +222 -0
- package/src/net/Dns.ts +1035 -0
- package/src/net/Host.ts +472 -0
- package/src/net/IpInterface.ts +117 -7
- package/src/net/IpNetwork.ts +116 -17
- package/src/net/NetAddress.ts +611 -76
- package/src/net/index.ts +18 -0
- package/src/observability/OtlpExporter.ts +9 -6
- package/src/observability/OtlpLogger.ts +20 -21
- package/src/observability/OtlpMetrics.ts +46 -116
- package/src/observability/OtlpResource.ts +18 -27
- package/src/observability/OtlpTracer.ts +34 -40
- package/src/observability/PrometheusMetrics.ts +1 -0
- package/src/observability/internal/otlpProtobuf.ts +60 -0
- package/src/persistence/PersistedQueue.ts +146 -53
- package/src/reactivity/AsyncResult.ts +1 -1
- package/src/reactivity/Atom.ts +10 -6
- package/src/reactivity/AtomHttpApi.ts +2 -4
- package/src/reactivity/AtomRegistry.ts +7 -0
- package/src/rpc/RpcClient.ts +87 -41
- package/src/rpc/RpcServer.ts +85 -48
- package/src/rpc/internal/tracing.ts +22 -0
- package/src/schema/SchemaCompiler/runtime.ts +4 -1
- package/src/socket/DatagramSocket.ts +919 -0
- package/src/socket/Socket.ts +22 -2
- package/src/socket/index.ts +6 -0
- package/src/sql/Migrator.ts +21 -5
- package/src/sql/SqlClient.ts +43 -19
- package/src/sql/Statement.ts +59 -7
- package/src/testing/TestClock.ts +9 -0
- package/src/testing/TestConsole.ts +8 -0
- package/src/testing/TestCrypto.ts +94 -0
- package/src/testing/index.ts +9 -0
- package/src/workflow/DurableDeferred.ts +123 -48
- package/src/workflow/WorkflowEngine.ts +2 -1
package/dist/Graph.js
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
* both nodes and edges. The module includes traversal, analysis, path-finding,
|
|
7
7
|
* transformation, and diagram export utilities.
|
|
8
8
|
*
|
|
9
|
+
* @stability unstable
|
|
9
10
|
* @since 4.0.0
|
|
10
11
|
*/
|
|
11
12
|
import * as Data from "./Data.js";
|
|
@@ -37,6 +38,7 @@ const copyEdge = edge => ({
|
|
|
37
38
|
* Use when handling failures thrown by graph operations that reject invalid
|
|
38
39
|
* graph structure or unsupported algorithm inputs.
|
|
39
40
|
*
|
|
41
|
+
* @stability unstable
|
|
40
42
|
* @category errors
|
|
41
43
|
* @since 3.18.0
|
|
42
44
|
*/
|
|
@@ -93,6 +95,7 @@ const withMutationGuard = (graph, evaluate) => graph.mutable ? internal.withTran
|
|
|
93
95
|
* distinguish immutable graphs from mutable graphs or directed graphs from
|
|
94
96
|
* undirected graphs.
|
|
95
97
|
*
|
|
98
|
+
* @stability unstable
|
|
96
99
|
* @category guards
|
|
97
100
|
* @since 4.0.0
|
|
98
101
|
*/
|
|
@@ -128,6 +131,7 @@ export const isGraph = internal.isGraph;
|
|
|
128
131
|
* ```
|
|
129
132
|
*
|
|
130
133
|
* @see {@link toSnapshot} for capturing a graph snapshot
|
|
134
|
+
* @stability unstable
|
|
131
135
|
* @category constructors
|
|
132
136
|
* @since 4.0.0
|
|
133
137
|
*/
|
|
@@ -236,6 +240,7 @@ export const fromSnapshot = snapshot => {
|
|
|
236
240
|
* ```
|
|
237
241
|
*
|
|
238
242
|
* @see {@link fromSnapshot} for reconstructing an immutable graph
|
|
243
|
+
* @stability unstable
|
|
239
244
|
* @category converting
|
|
240
245
|
* @since 4.0.0
|
|
241
246
|
*/
|
|
@@ -278,6 +283,7 @@ export const toSnapshot = graph => {
|
|
|
278
283
|
*
|
|
279
284
|
* @see {@link directed} for constructing a directed graph directly
|
|
280
285
|
* @see {@link undirected} for constructing an undirected graph directly
|
|
286
|
+
* @stability unstable
|
|
281
287
|
* @category constructors
|
|
282
288
|
* @since 4.0.0
|
|
283
289
|
*/
|
|
@@ -323,6 +329,7 @@ export const make = type => mutate => {
|
|
|
323
329
|
* Array.of(Graph.nodeCount(graph), Graph.edgeCount(graph)) // => [3, 2]
|
|
324
330
|
* ```
|
|
325
331
|
*
|
|
332
|
+
* @stability unstable
|
|
326
333
|
* @category constructors
|
|
327
334
|
* @since 3.18.0
|
|
328
335
|
*/
|
|
@@ -356,6 +363,7 @@ export const directed = /*#__PURE__*/make("directed");
|
|
|
356
363
|
* Array.of(Graph.nodeCount(graph), Graph.edgeCount(graph)) // => [3, 2]
|
|
357
364
|
* ```
|
|
358
365
|
*
|
|
366
|
+
* @stability unstable
|
|
359
367
|
* @category constructors
|
|
360
368
|
* @since 3.18.0
|
|
361
369
|
*/
|
|
@@ -390,6 +398,7 @@ export const undirected = /*#__PURE__*/make("undirected");
|
|
|
390
398
|
*
|
|
391
399
|
* @see {@link endMutation} for finalizing the mutable graph
|
|
392
400
|
* @see {@link mutate} for automatically scoped mutation
|
|
401
|
+
* @stability unstable
|
|
393
402
|
* @category mutations
|
|
394
403
|
* @since 3.18.0
|
|
395
404
|
*/
|
|
@@ -423,6 +432,7 @@ export const beginMutation = graph => {
|
|
|
423
432
|
*
|
|
424
433
|
* @see {@link beginMutation} for opening a manual mutation scope
|
|
425
434
|
* @see {@link mutate} for automatically scoped mutation
|
|
435
|
+
* @stability unstable
|
|
426
436
|
* @category mutations
|
|
427
437
|
* @since 3.18.0
|
|
428
438
|
*/
|
|
@@ -488,6 +498,7 @@ const mutateScoped = (mutable, f) => {
|
|
|
488
498
|
*
|
|
489
499
|
* @see {@link beginMutation} for opening a manual mutation scope
|
|
490
500
|
* @see {@link endMutation} for finalizing a manual mutation scope
|
|
501
|
+
* @stability unstable
|
|
491
502
|
* @category mutations
|
|
492
503
|
* @since 3.18.0
|
|
493
504
|
*/
|
|
@@ -626,6 +637,7 @@ const assertSameKind = (self, that) => {
|
|
|
626
637
|
* ```
|
|
627
638
|
*
|
|
628
639
|
* @see {@link sum} for combining graphs without merging equal nodes
|
|
640
|
+
* @stability unstable
|
|
629
641
|
* @category set operations
|
|
630
642
|
* @since 4.0.0
|
|
631
643
|
*/
|
|
@@ -701,6 +713,7 @@ export const compose = /*#__PURE__*/dual(args => isGraph(args[0]) && isGraph(arg
|
|
|
701
713
|
* ```
|
|
702
714
|
*
|
|
703
715
|
* @see {@link compose} for identity-based graph union
|
|
716
|
+
* @stability unstable
|
|
704
717
|
* @category set operations
|
|
705
718
|
* @since 4.0.0
|
|
706
719
|
*/
|
|
@@ -786,6 +799,7 @@ export const intersection = /*#__PURE__*/dual(args => isGraph(args[0]) && isGrap
|
|
|
786
799
|
* ```
|
|
787
800
|
*
|
|
788
801
|
* @see {@link symmetricDifference} for retaining edges unique to either graph
|
|
802
|
+
* @stability unstable
|
|
789
803
|
* @category set operations
|
|
790
804
|
* @since 4.0.0
|
|
791
805
|
*/
|
|
@@ -862,6 +876,7 @@ export const difference = /*#__PURE__*/dual(args => isGraph(args[0]) && isGraph(
|
|
|
862
876
|
* ```
|
|
863
877
|
*
|
|
864
878
|
* @see {@link difference} for removing only the edges found in another graph
|
|
879
|
+
* @stability unstable
|
|
865
880
|
* @category set operations
|
|
866
881
|
* @since 4.0.0
|
|
867
882
|
*/
|
|
@@ -933,6 +948,7 @@ export const symmetricDifference = /*#__PURE__*/dual(args => isGraph(args[0]) &&
|
|
|
933
948
|
* ```
|
|
934
949
|
*
|
|
935
950
|
* @see {@link hasEdge} for testing one relationship
|
|
951
|
+
* @stability unstable
|
|
936
952
|
* @category set operations
|
|
937
953
|
* @since 4.0.0
|
|
938
954
|
*/
|
|
@@ -1001,6 +1017,7 @@ export const complement = /*#__PURE__*/dual(2, (self, createEdge) => {
|
|
|
1001
1017
|
* ```
|
|
1002
1018
|
*
|
|
1003
1019
|
* @see {@link inducedSubgraph} for selecting nodes while preserving identifiers
|
|
1020
|
+
* @stability unstable
|
|
1004
1021
|
* @category set operations
|
|
1005
1022
|
* @since 4.0.0
|
|
1006
1023
|
*/
|
|
@@ -1052,6 +1069,7 @@ export const neighborhood = /*#__PURE__*/dual(args => isGraph(args[0]), (self, n
|
|
|
1052
1069
|
*
|
|
1053
1070
|
* @see {@link neighborhood} for selecting nodes by traversal distance
|
|
1054
1071
|
*
|
|
1072
|
+
* @stability unstable
|
|
1055
1073
|
* @category set operations
|
|
1056
1074
|
* @since 4.0.0
|
|
1057
1075
|
*/
|
|
@@ -1112,6 +1130,7 @@ export const inducedSubgraph = /*#__PURE__*/dual(2, (self, nodeIndices) => {
|
|
|
1112
1130
|
*
|
|
1113
1131
|
* @see {@link compose} for merging overlapping logical nodes by identity
|
|
1114
1132
|
*
|
|
1133
|
+
* @stability unstable
|
|
1115
1134
|
* @category set operations
|
|
1116
1135
|
* @since 4.0.0
|
|
1117
1136
|
*/
|
|
@@ -1171,6 +1190,7 @@ export const sum = /*#__PURE__*/dual(2, (self, that) => {
|
|
|
1171
1190
|
* @see {@link mutate} for obtaining a mutable graph from an immutable graph
|
|
1172
1191
|
* @see {@link addEdge} for connecting existing nodes
|
|
1173
1192
|
*
|
|
1193
|
+
* @stability unstable
|
|
1174
1194
|
* @category mutations
|
|
1175
1195
|
* @since 3.18.0
|
|
1176
1196
|
*/
|
|
@@ -1206,6 +1226,7 @@ export const addNode = (mutable, data) => {
|
|
|
1206
1226
|
* Graph.getNode(graph, 0) // => Option.some("Node A")
|
|
1207
1227
|
* ```
|
|
1208
1228
|
*
|
|
1229
|
+
* @stability unstable
|
|
1209
1230
|
* @category getters
|
|
1210
1231
|
* @since 3.18.0
|
|
1211
1232
|
*/
|
|
@@ -1229,6 +1250,7 @@ export const getNode = /*#__PURE__*/dual(2, (graph, nodeIndex) => {
|
|
|
1229
1250
|
* Graph.hasNode(graph, 999) // => false
|
|
1230
1251
|
* ```
|
|
1231
1252
|
*
|
|
1253
|
+
* @stability unstable
|
|
1232
1254
|
* @category predicates
|
|
1233
1255
|
* @since 3.18.0
|
|
1234
1256
|
*/
|
|
@@ -1253,6 +1275,7 @@ export const hasNode = /*#__PURE__*/dual(2, (graph, nodeIndex) => internal.toImp
|
|
|
1253
1275
|
* Graph.nodeCount(graphWithNodes) // => 3
|
|
1254
1276
|
* ```
|
|
1255
1277
|
*
|
|
1278
|
+
* @stability unstable
|
|
1256
1279
|
* @category getters
|
|
1257
1280
|
* @since 3.18.0
|
|
1258
1281
|
*/
|
|
@@ -1275,6 +1298,7 @@ export const nodeCount = graph => internal.toImpl(graph).nodes.size;
|
|
|
1275
1298
|
* Graph.findNode(graph, (data) => data === "Node D") // => Option.none()
|
|
1276
1299
|
* ```
|
|
1277
1300
|
*
|
|
1301
|
+
* @stability unstable
|
|
1278
1302
|
* @category getters
|
|
1279
1303
|
* @since 3.18.0
|
|
1280
1304
|
*/
|
|
@@ -1307,6 +1331,7 @@ export const findNode = /*#__PURE__*/dual(2, (graph, predicate) => {
|
|
|
1307
1331
|
* Graph.findNodes(graph, (data) => data === "Not Found") // => []
|
|
1308
1332
|
* ```
|
|
1309
1333
|
*
|
|
1334
|
+
* @stability unstable
|
|
1310
1335
|
* @category getters
|
|
1311
1336
|
* @since 3.18.0
|
|
1312
1337
|
*/
|
|
@@ -1342,6 +1367,7 @@ export const findNodes = /*#__PURE__*/dual(2, (graph, predicate) => {
|
|
|
1342
1367
|
* Graph.findEdge(graph, (data) => data > 100) // => Option.none()
|
|
1343
1368
|
* ```
|
|
1344
1369
|
*
|
|
1370
|
+
* @stability unstable
|
|
1345
1371
|
* @category getters
|
|
1346
1372
|
* @since 3.18.0
|
|
1347
1373
|
*/
|
|
@@ -1377,6 +1403,7 @@ export const findEdge = /*#__PURE__*/dual(2, (graph, predicate) => {
|
|
|
1377
1403
|
* Graph.findEdges(graph, (data) => data > 100) // => []
|
|
1378
1404
|
* ```
|
|
1379
1405
|
*
|
|
1406
|
+
* @stability unstable
|
|
1380
1407
|
* @category getters
|
|
1381
1408
|
* @since 3.18.0
|
|
1382
1409
|
*/
|
|
@@ -1419,6 +1446,7 @@ export const findEdges = /*#__PURE__*/dual(2, (graph, predicate) => {
|
|
|
1419
1446
|
* Graph.getNode(graph, 0) // => Option.some("NODE A")
|
|
1420
1447
|
* ```
|
|
1421
1448
|
*
|
|
1449
|
+
* @stability unstable
|
|
1422
1450
|
* @category transforming
|
|
1423
1451
|
* @since 3.18.0
|
|
1424
1452
|
*/
|
|
@@ -1461,6 +1489,7 @@ export const updateNode = (mutable, index, f) => {
|
|
|
1461
1489
|
* Option.map(Graph.getEdge(result, 0), (edge) => edge.data) // => Option.some(20)
|
|
1462
1490
|
* ```
|
|
1463
1491
|
*
|
|
1492
|
+
* @stability unstable
|
|
1464
1493
|
* @category transforming
|
|
1465
1494
|
* @since 3.18.0
|
|
1466
1495
|
*/
|
|
@@ -1514,6 +1543,7 @@ export const updateEdge = (mutable, edgeIndex, f) => {
|
|
|
1514
1543
|
*
|
|
1515
1544
|
* @see {@link updateNode} for updating one node
|
|
1516
1545
|
* @see {@link filterMapNodes} for mapping while removing nodes
|
|
1546
|
+
* @stability unstable
|
|
1517
1547
|
* @category mapping
|
|
1518
1548
|
* @since 3.18.0
|
|
1519
1549
|
*/
|
|
@@ -1563,6 +1593,7 @@ export const mapNodes = (mutable, f) => {
|
|
|
1563
1593
|
*
|
|
1564
1594
|
* @see {@link updateEdge} for updating one edge
|
|
1565
1595
|
* @see {@link filterMapEdges} for mapping while removing edges
|
|
1596
|
+
* @stability unstable
|
|
1566
1597
|
* @category mapping
|
|
1567
1598
|
* @since 3.18.0
|
|
1568
1599
|
*/
|
|
@@ -1613,6 +1644,7 @@ export const mapEdges = (mutable, f) => {
|
|
|
1613
1644
|
* Option.map(Graph.getEdge(graph, 0), (edge) => edge.source) // => Option.some(1)
|
|
1614
1645
|
* ```
|
|
1615
1646
|
*
|
|
1647
|
+
* @stability unstable
|
|
1616
1648
|
* @category transforming
|
|
1617
1649
|
* @since 3.18.0
|
|
1618
1650
|
*/
|
|
@@ -1667,6 +1699,7 @@ export const reverse = mutable => {
|
|
|
1667
1699
|
* Graph.nodeCount(graph) // => 2
|
|
1668
1700
|
* ```
|
|
1669
1701
|
*
|
|
1702
|
+
* @stability unstable
|
|
1670
1703
|
* @category filtering
|
|
1671
1704
|
* @since 3.18.0
|
|
1672
1705
|
*/
|
|
@@ -1721,6 +1754,7 @@ export const filterMapNodes = (mutable, f) => {
|
|
|
1721
1754
|
* Graph.edgeCount(graph) // => 2
|
|
1722
1755
|
* ```
|
|
1723
1756
|
*
|
|
1757
|
+
* @stability unstable
|
|
1724
1758
|
* @category filtering
|
|
1725
1759
|
* @since 3.18.0
|
|
1726
1760
|
*/
|
|
@@ -1776,6 +1810,7 @@ export const filterMapEdges = (mutable, f) => {
|
|
|
1776
1810
|
* Graph.nodeCount(graph) // => 2
|
|
1777
1811
|
* ```
|
|
1778
1812
|
*
|
|
1813
|
+
* @stability unstable
|
|
1779
1814
|
* @category filtering
|
|
1780
1815
|
* @since 3.18.0
|
|
1781
1816
|
*/
|
|
@@ -1824,6 +1859,7 @@ export const filterNodes = (mutable, predicate) => {
|
|
|
1824
1859
|
* Graph.edgeCount(graph) // => 2
|
|
1825
1860
|
* ```
|
|
1826
1861
|
*
|
|
1862
|
+
* @stability unstable
|
|
1827
1863
|
* @category filtering
|
|
1828
1864
|
* @since 3.18.0
|
|
1829
1865
|
*/
|
|
@@ -1895,6 +1931,7 @@ const invalidateCycleFlagOnAddition = mutable => {
|
|
|
1895
1931
|
* @see {@link mutate} for obtaining a mutable graph from an immutable graph
|
|
1896
1932
|
* @see {@link addNode} for creating node indexes before connecting them
|
|
1897
1933
|
*
|
|
1934
|
+
* @stability unstable
|
|
1898
1935
|
* @category mutations
|
|
1899
1936
|
* @since 3.18.0
|
|
1900
1937
|
*/
|
|
@@ -1970,6 +2007,7 @@ export const addEdge = (mutable, source, target, data) => {
|
|
|
1970
2007
|
* Array.of(Graph.nodeCount(result), Graph.edgeCount(result)) // => [1, 0]
|
|
1971
2008
|
* ```
|
|
1972
2009
|
*
|
|
2010
|
+
* @stability unstable
|
|
1973
2011
|
* @category mutations
|
|
1974
2012
|
* @since 3.18.0
|
|
1975
2013
|
*/
|
|
@@ -1998,6 +2036,7 @@ export const removeNode = (mutable, nodeIndex) => {
|
|
|
1998
2036
|
*
|
|
1999
2037
|
* @see {@link removeNode} for removing one node
|
|
2000
2038
|
*
|
|
2039
|
+
* @stability unstable
|
|
2001
2040
|
* @category mutations
|
|
2002
2041
|
* @since 4.0.0
|
|
2003
2042
|
*/
|
|
@@ -2079,6 +2118,7 @@ const removeNodeInternal = (impl, nodeIndex) => {
|
|
|
2079
2118
|
* Array.of(Graph.nodeCount(result), Graph.edgeCount(result)) // => [2, 0]
|
|
2080
2119
|
* ```
|
|
2081
2120
|
*
|
|
2121
|
+
* @stability unstable
|
|
2082
2122
|
* @category mutations
|
|
2083
2123
|
* @since 3.18.0
|
|
2084
2124
|
*/
|
|
@@ -2108,6 +2148,7 @@ export const removeEdge = (mutable, edgeIndex) => {
|
|
|
2108
2148
|
*
|
|
2109
2149
|
* @see {@link removeEdge} for removing one edge
|
|
2110
2150
|
*
|
|
2151
|
+
* @stability unstable
|
|
2111
2152
|
* @category mutations
|
|
2112
2153
|
* @since 4.0.0
|
|
2113
2154
|
*/
|
|
@@ -2197,6 +2238,7 @@ const removeEdgeInternal = (mutable, edgeIndex) => {
|
|
|
2197
2238
|
* Graph.getEdge(graph, 0) // => Option.some({ source: 0, target: 1, data: 42 })
|
|
2198
2239
|
* ```
|
|
2199
2240
|
*
|
|
2241
|
+
* @stability unstable
|
|
2200
2242
|
* @category getters
|
|
2201
2243
|
* @since 3.18.0
|
|
2202
2244
|
*/
|
|
@@ -2233,6 +2275,7 @@ export const getEdge = /*#__PURE__*/dual(2, (graph, edgeIndex) => {
|
|
|
2233
2275
|
* ```
|
|
2234
2276
|
*
|
|
2235
2277
|
* @see {@link edgesBetween} for all matching edge identifiers
|
|
2278
|
+
* @stability unstable
|
|
2236
2279
|
* @category predicates
|
|
2237
2280
|
* @since 3.18.0
|
|
2238
2281
|
*/
|
|
@@ -2277,6 +2320,7 @@ export const hasEdge = /*#__PURE__*/dual(3, (graph, source, target) => {
|
|
|
2277
2320
|
* Graph.edgeCount(graphWithEdges) // => 3
|
|
2278
2321
|
* ```
|
|
2279
2322
|
*
|
|
2323
|
+
* @stability unstable
|
|
2280
2324
|
* @category getters
|
|
2281
2325
|
* @since 3.18.0
|
|
2282
2326
|
*/
|
|
@@ -2289,6 +2333,7 @@ export const edgeCount = graph => internal.toImpl(graph).edges.size;
|
|
|
2289
2333
|
* Each edge is returned once in graph edge order, including self-loops.
|
|
2290
2334
|
* Throws a `GraphError` when the node does not exist.
|
|
2291
2335
|
*
|
|
2336
|
+
* @stability unstable
|
|
2292
2337
|
* @category getters
|
|
2293
2338
|
* @since 4.0.0
|
|
2294
2339
|
*/
|
|
@@ -2340,6 +2385,7 @@ export const incidentEdges = /*#__PURE__*/dual(2, (graph, nodeIndex) => {
|
|
|
2340
2385
|
* Parallel edges and self-loops are returned separately in adjacency order.
|
|
2341
2386
|
* Throws a `GraphError` for an undirected graph or missing node.
|
|
2342
2387
|
*
|
|
2388
|
+
* @stability unstable
|
|
2343
2389
|
* @category getters
|
|
2344
2390
|
* @since 4.0.0
|
|
2345
2391
|
*/
|
|
@@ -2363,6 +2409,7 @@ export const outgoingEdges = /*#__PURE__*/dual(2, (graph, nodeIndex) => {
|
|
|
2363
2409
|
* Parallel edges and self-loops are returned separately in reverse-adjacency
|
|
2364
2410
|
* order. Throws a `GraphError` for an undirected graph or missing node.
|
|
2365
2411
|
*
|
|
2412
|
+
* @stability unstable
|
|
2366
2413
|
* @category getters
|
|
2367
2414
|
* @since 4.0.0
|
|
2368
2415
|
*/
|
|
@@ -2387,6 +2434,7 @@ export const incomingEdges = /*#__PURE__*/dual(2, (graph, nodeIndex) => {
|
|
|
2387
2434
|
* graphs include either stored orientation. Parallel edges are retained.
|
|
2388
2435
|
* Throws a `GraphError` when either node does not exist.
|
|
2389
2436
|
*
|
|
2437
|
+
* @stability unstable
|
|
2390
2438
|
* @category getters
|
|
2391
2439
|
* @since 4.0.0
|
|
2392
2440
|
*/
|
|
@@ -2421,6 +2469,7 @@ export const edgesBetween = /*#__PURE__*/dual(3, (graph, source, target) => {
|
|
|
2421
2469
|
* Parallel edges count separately and a self-loop contributes two. Throws a
|
|
2422
2470
|
* `GraphError` for a directed graph or missing node.
|
|
2423
2471
|
*
|
|
2472
|
+
* @stability unstable
|
|
2424
2473
|
* @category getters
|
|
2425
2474
|
* @since 4.0.0
|
|
2426
2475
|
*/
|
|
@@ -2444,6 +2493,7 @@ export const degree = /*#__PURE__*/dual(2, (graph, nodeIndex) => {
|
|
|
2444
2493
|
* Parallel edges count separately and a self-loop contributes one. Throws a
|
|
2445
2494
|
* `GraphError` for an undirected graph or missing node.
|
|
2446
2495
|
*
|
|
2496
|
+
* @stability unstable
|
|
2447
2497
|
* @category getters
|
|
2448
2498
|
* @since 4.0.0
|
|
2449
2499
|
*/
|
|
@@ -2467,6 +2517,7 @@ export const outDegree = /*#__PURE__*/dual(2, (graph, nodeIndex) => {
|
|
|
2467
2517
|
* Parallel edges count separately and a self-loop contributes one. Throws a
|
|
2468
2518
|
* `GraphError` for an undirected graph or missing node.
|
|
2469
2519
|
*
|
|
2520
|
+
* @stability unstable
|
|
2470
2521
|
* @category getters
|
|
2471
2522
|
* @since 4.0.0
|
|
2472
2523
|
*/
|
|
@@ -2563,6 +2614,7 @@ const ScanDegreeLimit = 32;
|
|
|
2563
2614
|
* Graph.neighbors(graph, 1) // => []
|
|
2564
2615
|
* ```
|
|
2565
2616
|
*
|
|
2617
|
+
* @stability unstable
|
|
2566
2618
|
* @category getters
|
|
2567
2619
|
* @since 3.18.0
|
|
2568
2620
|
*/
|
|
@@ -2592,6 +2644,7 @@ export const neighbors = /*#__PURE__*/dual(2, (graph, nodeIndex) => {
|
|
|
2592
2644
|
* @see {@link predecessors} for incoming neighbors in a directed graph
|
|
2593
2645
|
* @see {@link neighbors} for generic neighbor lookup across graph kinds
|
|
2594
2646
|
*
|
|
2647
|
+
* @stability unstable
|
|
2595
2648
|
* @category getters
|
|
2596
2649
|
* @since 4.0.0
|
|
2597
2650
|
*/
|
|
@@ -2622,6 +2675,7 @@ export const successors = /*#__PURE__*/dual(2, (graph, nodeIndex) => {
|
|
|
2622
2675
|
* @see {@link successors} for outgoing neighbors in a directed graph
|
|
2623
2676
|
* @see {@link neighbors} for generic neighbor lookup across graph kinds
|
|
2624
2677
|
*
|
|
2678
|
+
* @stability unstable
|
|
2625
2679
|
* @category getters
|
|
2626
2680
|
* @since 4.0.0
|
|
2627
2681
|
*/
|
|
@@ -2672,6 +2726,7 @@ export const predecessors = /*#__PURE__*/dual(2, (graph, nodeIndex) => {
|
|
|
2672
2726
|
* @deprecated Use {@link successors} for outgoing neighbors or {@link predecessors} for incoming neighbors.
|
|
2673
2727
|
* @see {@link successors} for outgoing neighbors in a directed graph
|
|
2674
2728
|
* @see {@link predecessors} for incoming neighbors in a directed graph
|
|
2729
|
+
* @stability unstable
|
|
2675
2730
|
* @category getters
|
|
2676
2731
|
* @since 3.18.0
|
|
2677
2732
|
*/
|
|
@@ -2710,6 +2765,7 @@ const escapeGraphVizString = value => value.replace(/\\/g, "\\\\").replace(/"/g,
|
|
|
2710
2765
|
* ```
|
|
2711
2766
|
*
|
|
2712
2767
|
* @see {@link toMermaid} for Mermaid diagram output
|
|
2768
|
+
* @stability unstable
|
|
2713
2769
|
* @category converting
|
|
2714
2770
|
* @since 3.18.0
|
|
2715
2771
|
*/
|
|
@@ -2804,6 +2860,7 @@ const formatMermaidNode = (nodeId, label, shape) => {
|
|
|
2804
2860
|
* ```
|
|
2805
2861
|
*
|
|
2806
2862
|
* @see {@link toGraphViz} for GraphViz DOT output
|
|
2863
|
+
* @stability unstable
|
|
2807
2864
|
* @category converting
|
|
2808
2865
|
* @since 3.18.0
|
|
2809
2866
|
*/
|
|
@@ -2860,6 +2917,7 @@ export const toMermaid = /*#__PURE__*/dual(args => isGraph(args[0]), (graph, opt
|
|
|
2860
2917
|
* one-edge cycle, and two parallel undirected edges form a two-edge cycle.
|
|
2861
2918
|
*
|
|
2862
2919
|
* @see {@link isAcyclic} when only a boolean cycle check is needed
|
|
2920
|
+
* @stability unstable
|
|
2863
2921
|
* @category algorithms
|
|
2864
2922
|
* @since 4.0.0
|
|
2865
2923
|
*/
|
|
@@ -2966,6 +3024,7 @@ export const findCycle = graph => {
|
|
|
2966
3024
|
*
|
|
2967
3025
|
* @see {@link findCycle} for retrieving one cycle witness
|
|
2968
3026
|
* @see {@link topo} for ordering a directed acyclic graph
|
|
3027
|
+
* @stability unstable
|
|
2969
3028
|
* @category algorithms
|
|
2970
3029
|
* @since 3.18.0
|
|
2971
3030
|
*/
|
|
@@ -3090,6 +3149,7 @@ export const isAcyclic = graph => {
|
|
|
3090
3149
|
* ```
|
|
3091
3150
|
*
|
|
3092
3151
|
* @see {@link maximumBipartiteMatching} for matching nodes after validation
|
|
3152
|
+
* @stability unstable
|
|
3093
3153
|
* @category algorithms
|
|
3094
3154
|
* @since 3.18.0
|
|
3095
3155
|
*/
|
|
@@ -3207,6 +3267,7 @@ const bipartiteColors = graph => {
|
|
|
3207
3267
|
* ```
|
|
3208
3268
|
*
|
|
3209
3269
|
* @see {@link isBipartite} for validating the graph without computing a matching
|
|
3270
|
+
* @stability unstable
|
|
3210
3271
|
* @category algorithms
|
|
3211
3272
|
* @since 4.0.0
|
|
3212
3273
|
*/
|
|
@@ -3424,6 +3485,7 @@ const getUnweightedDistances = (graph, source, direction) => {
|
|
|
3424
3485
|
* @see {@link bfs} for lazy traversal in increasing hop distance
|
|
3425
3486
|
* @see {@link dijkstra} for weighted shortest paths
|
|
3426
3487
|
*
|
|
3488
|
+
* @stability unstable
|
|
3427
3489
|
* @category algorithms
|
|
3428
3490
|
* @since 4.0.0
|
|
3429
3491
|
*/
|
|
@@ -3448,6 +3510,7 @@ export const unweightedDistances = /*#__PURE__*/dual(args => isGraph(args[0]), (
|
|
|
3448
3510
|
* @see {@link unweightedDistances} for hop distances to all reachable nodes
|
|
3449
3511
|
* @see {@link dijkstra} for a minimum-cost path
|
|
3450
3512
|
*
|
|
3513
|
+
* @stability unstable
|
|
3451
3514
|
* @category predicates
|
|
3452
3515
|
* @since 4.0.0
|
|
3453
3516
|
*/
|
|
@@ -3537,6 +3600,7 @@ export const hasPath = /*#__PURE__*/dual(args => isGraph(args[0]), (graph, sourc
|
|
|
3537
3600
|
* @see {@link isConnected} when only a boolean connectivity check is needed
|
|
3538
3601
|
* @see {@link weaklyConnectedComponents} for directed graphs with orientation ignored
|
|
3539
3602
|
* @see {@link stronglyConnectedComponents} for mutual directed reachability
|
|
3603
|
+
* @stability unstable
|
|
3540
3604
|
* @category algorithms
|
|
3541
3605
|
* @since 3.18.0
|
|
3542
3606
|
*/
|
|
@@ -3743,6 +3807,7 @@ const analyzeLowLinks = graph => {
|
|
|
3743
3807
|
*
|
|
3744
3808
|
* @see {@link articulationPoints} for single-node failure points
|
|
3745
3809
|
* @see {@link biconnectedComponents} for maximal regions without an articulation split
|
|
3810
|
+
* @stability unstable
|
|
3746
3811
|
* @category algorithms
|
|
3747
3812
|
* @since 4.0.0
|
|
3748
3813
|
*/
|
|
@@ -3780,6 +3845,7 @@ export const bridges = graph => analyzeLowLinks(graph).bridges;
|
|
|
3780
3845
|
*
|
|
3781
3846
|
* @see {@link bridges} for single-edge failure points
|
|
3782
3847
|
* @see {@link biconnectedComponents} for the regions joined at articulation points
|
|
3848
|
+
* @stability unstable
|
|
3783
3849
|
* @category algorithms
|
|
3784
3850
|
* @since 4.0.0
|
|
3785
3851
|
*/
|
|
@@ -3824,6 +3890,7 @@ export const articulationPoints = graph => analyzeLowLinks(graph).articulationPo
|
|
|
3824
3890
|
*
|
|
3825
3891
|
* @see {@link articulationPoints} for the nodes shared between components
|
|
3826
3892
|
* @see {@link bridges} for edges whose removal disconnects the graph
|
|
3893
|
+
* @stability unstable
|
|
3827
3894
|
* @category algorithms
|
|
3828
3895
|
* @since 4.0.0
|
|
3829
3896
|
*/
|
|
@@ -4011,6 +4078,7 @@ const solveMaximumFlow = (graph, config) => {
|
|
|
4011
4078
|
* ```
|
|
4012
4079
|
*
|
|
4013
4080
|
* @see {@link minimumCut} for the residual-reachability partition
|
|
4081
|
+
* @stability unstable
|
|
4014
4082
|
* @category algorithms
|
|
4015
4083
|
* @since 4.0.0
|
|
4016
4084
|
*/
|
|
@@ -4062,6 +4130,7 @@ export const maximumFlow = /*#__PURE__*/dual(2, (graph, config) => {
|
|
|
4062
4130
|
* ```
|
|
4063
4131
|
*
|
|
4064
4132
|
* @see {@link maximumFlow} for per-edge flow values
|
|
4133
|
+
* @stability unstable
|
|
4065
4134
|
* @category algorithms
|
|
4066
4135
|
* @since 4.0.0
|
|
4067
4136
|
*/
|
|
@@ -4100,6 +4169,7 @@ export const minimumCut = /*#__PURE__*/dual(2, (graph, config) => {
|
|
|
4100
4169
|
* @see {@link isWeaklyConnected} when only a boolean check is needed
|
|
4101
4170
|
* @see {@link stronglyConnectedComponents} for mutual directed reachability
|
|
4102
4171
|
*
|
|
4172
|
+
* @stability unstable
|
|
4103
4173
|
* @category algorithms
|
|
4104
4174
|
* @since 4.0.0
|
|
4105
4175
|
*/
|
|
@@ -4185,6 +4255,7 @@ export const weaklyConnectedComponents = graph => {
|
|
|
4185
4255
|
*
|
|
4186
4256
|
* @see {@link isStronglyConnected} when only a boolean check is needed
|
|
4187
4257
|
* @see {@link weaklyConnectedComponents} when edge orientation should be ignored
|
|
4258
|
+
* @stability unstable
|
|
4188
4259
|
* @category algorithms
|
|
4189
4260
|
* @since 3.18.0
|
|
4190
4261
|
*/
|
|
@@ -4303,6 +4374,7 @@ const csrReachesAll = (nodeCount, primary, secondary) => {
|
|
|
4303
4374
|
*
|
|
4304
4375
|
* @see {@link connectedComponents} for the component partition
|
|
4305
4376
|
*
|
|
4377
|
+
* @stability unstable
|
|
4306
4378
|
* @category predicates
|
|
4307
4379
|
* @since 4.0.0
|
|
4308
4380
|
*/
|
|
@@ -4330,6 +4402,7 @@ export const isConnected = graph => {
|
|
|
4330
4402
|
*
|
|
4331
4403
|
* @see {@link isStronglyConnected} when edge orientation must be respected
|
|
4332
4404
|
*
|
|
4405
|
+
* @stability unstable
|
|
4333
4406
|
* @category predicates
|
|
4334
4407
|
* @since 4.0.0
|
|
4335
4408
|
*/
|
|
@@ -4361,6 +4434,7 @@ export const isWeaklyConnected = graph => {
|
|
|
4361
4434
|
*
|
|
4362
4435
|
* @see {@link isWeaklyConnected} when edge orientation should be ignored
|
|
4363
4436
|
*
|
|
4437
|
+
* @stability unstable
|
|
4364
4438
|
* @category predicates
|
|
4365
4439
|
* @since 4.0.0
|
|
4366
4440
|
*/
|
|
@@ -4385,6 +4459,7 @@ export const isStronglyConnected = graph => {
|
|
|
4385
4459
|
* The empty graph is not a tree. Parallel edges and self-loops prevent a graph
|
|
4386
4460
|
* from being a tree. Throws a `GraphError` when used with a directed graph.
|
|
4387
4461
|
*
|
|
4462
|
+
* @stability unstable
|
|
4388
4463
|
* @category predicates
|
|
4389
4464
|
* @since 4.0.0
|
|
4390
4465
|
*/
|
|
@@ -4418,6 +4493,7 @@ export const isTree = graph => {
|
|
|
4418
4493
|
* Throws a `GraphError` for a directed graph or when a weight is `NaN` or
|
|
4419
4494
|
* `-Infinity`. Edges weighted `Infinity` are omitted.
|
|
4420
4495
|
*
|
|
4496
|
+
* @stability unstable
|
|
4421
4497
|
* @category algorithms
|
|
4422
4498
|
* @since 4.0.0
|
|
4423
4499
|
*/
|
|
@@ -4527,6 +4603,7 @@ export const minimumSpanningForest = /*#__PURE__*/dual(2, (graph, cost) => {
|
|
|
4527
4603
|
* coalesced by retaining the first edge for each required pair. Throws a
|
|
4528
4604
|
* `GraphError` for an undirected graph or cyclic input.
|
|
4529
4605
|
*
|
|
4606
|
+
* @stability unstable
|
|
4530
4607
|
* @category algorithms
|
|
4531
4608
|
* @since 4.0.0
|
|
4532
4609
|
*/
|
|
@@ -4747,6 +4824,7 @@ const denseMinHeapPop = heap => {
|
|
|
4747
4824
|
* @see {@link astar} when a useful heuristic can guide the search
|
|
4748
4825
|
* @see {@link bellmanFord} when edge costs may be negative
|
|
4749
4826
|
* @see {@link floydWarshall} when shortest paths are needed for all pairs
|
|
4827
|
+
* @stability unstable
|
|
4750
4828
|
* @category algorithms
|
|
4751
4829
|
* @since 3.18.0
|
|
4752
4830
|
*/
|
|
@@ -4860,14 +4938,16 @@ export const dijkstra = /*#__PURE__*/dual(2, (graph, config) => {
|
|
|
4860
4938
|
*
|
|
4861
4939
|
* **When to use**
|
|
4862
4940
|
*
|
|
4863
|
-
* Use when many or all node pairs will be queried and cubic computation
|
|
4864
|
-
*
|
|
4941
|
+
* Use when many or all node pairs will be queried and cubic distance computation
|
|
4942
|
+
* plus storage for reconstructed paths is acceptable.
|
|
4865
4943
|
*
|
|
4866
4944
|
* **Details**
|
|
4867
4945
|
*
|
|
4868
4946
|
* Computes distances, reconstructed node paths, and edge-data paths for every
|
|
4869
|
-
* source and target pair
|
|
4870
|
-
* `Infinity` behaves like an impassable edge.
|
|
4947
|
+
* source and target pair. Distance computation takes O(V^3) time. Negative edge
|
|
4948
|
+
* weights are allowed, and `Infinity` behaves like an impassable edge. Immutable
|
|
4949
|
+
* path witnesses can require O(V^3) working storage; reconstructed paths have
|
|
4950
|
+
* repeated nodes removed.
|
|
4871
4951
|
*
|
|
4872
4952
|
* **Gotchas**
|
|
4873
4953
|
*
|
|
@@ -4896,6 +4976,7 @@ export const dijkstra = /*#__PURE__*/dual(2, (graph, config) => {
|
|
|
4896
4976
|
*
|
|
4897
4977
|
* @see {@link dijkstra} for one query with non-negative edge costs
|
|
4898
4978
|
* @see {@link bellmanFord} for one query that may include negative edge costs
|
|
4979
|
+
* @stability unstable
|
|
4899
4980
|
* @category algorithms
|
|
4900
4981
|
* @since 3.18.0
|
|
4901
4982
|
*/
|
|
@@ -4905,13 +4986,10 @@ export const floydWarshall = /*#__PURE__*/dual(2, (graph, cost) => {
|
|
|
4905
4986
|
const edgeIds = csr.getEdgeIds(cache);
|
|
4906
4987
|
const edgeCache = csr.getEdgeEndpoints(cache);
|
|
4907
4988
|
const size = cache.nodeIds.length;
|
|
4908
|
-
|
|
4989
|
+
const witnesses = new Array(size * size);
|
|
4990
|
+
// The flat distance matrix avoids nested map lookups in the O(N^3) loop.
|
|
4909
4991
|
const distancesMatrix = new Float64Array(size * size);
|
|
4910
|
-
const nextMatrix = new Int32Array(size * size);
|
|
4911
|
-
const edgeMatrix = new Int32Array(size * size);
|
|
4912
4992
|
distancesMatrix.fill(Infinity);
|
|
4913
|
-
nextMatrix.fill(-1);
|
|
4914
|
-
edgeMatrix.fill(-1);
|
|
4915
4993
|
for (let i = 0; i < size; i++) {
|
|
4916
4994
|
distancesMatrix[i * size + i] = 0;
|
|
4917
4995
|
}
|
|
@@ -4928,15 +5006,19 @@ export const floydWarshall = /*#__PURE__*/dual(2, (graph, cost) => {
|
|
|
4928
5006
|
const position = source * size + target;
|
|
4929
5007
|
if (weight < distancesMatrix[position]) {
|
|
4930
5008
|
distancesMatrix[position] = weight;
|
|
4931
|
-
|
|
4932
|
-
|
|
5009
|
+
witnesses[position] = {
|
|
5010
|
+
target,
|
|
5011
|
+
edge
|
|
5012
|
+
};
|
|
4933
5013
|
}
|
|
4934
5014
|
if (graph.type === "undirected") {
|
|
4935
5015
|
const reverse = target * size + source;
|
|
4936
5016
|
if (weight < distancesMatrix[reverse]) {
|
|
4937
5017
|
distancesMatrix[reverse] = weight;
|
|
4938
|
-
|
|
4939
|
-
|
|
5018
|
+
witnesses[reverse] = {
|
|
5019
|
+
target: source,
|
|
5020
|
+
edge
|
|
5021
|
+
};
|
|
4940
5022
|
}
|
|
4941
5023
|
}
|
|
4942
5024
|
}
|
|
@@ -4949,7 +5031,7 @@ export const floydWarshall = /*#__PURE__*/dual(2, (graph, cost) => {
|
|
|
4949
5031
|
if (distanceIK === Infinity) {
|
|
4950
5032
|
continue;
|
|
4951
5033
|
}
|
|
4952
|
-
const
|
|
5034
|
+
const left = witnesses[iRow + k];
|
|
4953
5035
|
for (let j = 0; j < size; j++) {
|
|
4954
5036
|
const distanceKJ = distancesMatrix[kRow + j];
|
|
4955
5037
|
if (distanceKJ === Infinity) {
|
|
@@ -4961,9 +5043,14 @@ export const floydWarshall = /*#__PURE__*/dual(2, (graph, cost) => {
|
|
|
4961
5043
|
message: "Floyd-Warshall distance calculation exceeded the finite number range"
|
|
4962
5044
|
});
|
|
4963
5045
|
}
|
|
4964
|
-
if (candidate < distancesMatrix[iRow + j]
|
|
5046
|
+
if (candidate < distancesMatrix[iRow + j]) {
|
|
4965
5047
|
distancesMatrix[iRow + j] = candidate;
|
|
4966
|
-
|
|
5048
|
+
const right = witnesses[kRow + j];
|
|
5049
|
+
witnesses[iRow + j] = left === undefined ? right : right === undefined ? left : {
|
|
5050
|
+
target: j,
|
|
5051
|
+
left,
|
|
5052
|
+
right
|
|
5053
|
+
};
|
|
4967
5054
|
}
|
|
4968
5055
|
}
|
|
4969
5056
|
}
|
|
@@ -4979,6 +5066,9 @@ export const floydWarshall = /*#__PURE__*/dual(2, (graph, cost) => {
|
|
|
4979
5066
|
const paths = new Map();
|
|
4980
5067
|
const edgePaths = new Map();
|
|
4981
5068
|
const costs = new Map();
|
|
5069
|
+
// Reuse scratch storage; erased suffixes and completed paths clear only touched entries.
|
|
5070
|
+
const positions = new Int32Array(size);
|
|
5071
|
+
positions.fill(-1);
|
|
4982
5072
|
for (let i = 0; i < size; i++) {
|
|
4983
5073
|
const source = cache.nodeIds[i];
|
|
4984
5074
|
const distanceRow = new Map();
|
|
@@ -5005,19 +5095,35 @@ export const floydWarshall = /*#__PURE__*/dual(2, (graph, cost) => {
|
|
|
5005
5095
|
const path = [source];
|
|
5006
5096
|
const pathEdges = [];
|
|
5007
5097
|
const pathCosts = [];
|
|
5008
|
-
|
|
5009
|
-
|
|
5010
|
-
|
|
5011
|
-
|
|
5012
|
-
|
|
5013
|
-
|
|
5014
|
-
|
|
5015
|
-
|
|
5016
|
-
|
|
5017
|
-
|
|
5098
|
+
positions[i] = 0;
|
|
5099
|
+
const nodes = [i];
|
|
5100
|
+
const stack = [witnesses[i * size + j]];
|
|
5101
|
+
// Witnesses only reference older witnesses, so this traversal cannot
|
|
5102
|
+
// follow a cyclic pointer chain. Erase closed walks rather than return
|
|
5103
|
+
// a truncated route or reject a valid zero-cost cycle.
|
|
5104
|
+
while (stack.length > 0) {
|
|
5105
|
+
const witness = stack.pop();
|
|
5106
|
+
const position = positions[witness.target];
|
|
5107
|
+
if (position !== -1) {
|
|
5108
|
+
for (let p = position + 1; p < nodes.length; p++) {
|
|
5109
|
+
positions[nodes[p]] = -1;
|
|
5110
|
+
}
|
|
5111
|
+
nodes.length = position + 1;
|
|
5112
|
+
path.length = position + 1;
|
|
5113
|
+
pathEdges.length = position;
|
|
5114
|
+
pathCosts.length = position;
|
|
5115
|
+
} else if ("edge" in witness) {
|
|
5116
|
+
positions[witness.target] = nodes.length;
|
|
5117
|
+
nodes.push(witness.target);
|
|
5118
|
+
path.push(cache.nodeIds[witness.target]);
|
|
5119
|
+
pathEdges.push(edgeIds[witness.edge]);
|
|
5120
|
+
pathCosts.push(edges[witness.edge].data);
|
|
5121
|
+
} else {
|
|
5122
|
+
stack.push(witness.right, witness.left);
|
|
5018
5123
|
}
|
|
5019
|
-
|
|
5020
|
-
|
|
5124
|
+
}
|
|
5125
|
+
for (const node of nodes) {
|
|
5126
|
+
positions[node] = -1;
|
|
5021
5127
|
}
|
|
5022
5128
|
pathRow.set(target, path);
|
|
5023
5129
|
edgePathRow.set(target, pathEdges);
|
|
@@ -5084,6 +5190,7 @@ export const floydWarshall = /*#__PURE__*/dual(2, (graph, cost) => {
|
|
|
5084
5190
|
*
|
|
5085
5191
|
* @see {@link dijkstra} when no useful heuristic is available
|
|
5086
5192
|
* @see {@link bellmanFord} when edge costs may be negative
|
|
5193
|
+
* @stability unstable
|
|
5087
5194
|
* @category algorithms
|
|
5088
5195
|
* @since 3.18.0
|
|
5089
5196
|
*/
|
|
@@ -5261,6 +5368,7 @@ export const astar = /*#__PURE__*/dual(2, (graph, config) => {
|
|
|
5261
5368
|
* ```
|
|
5262
5369
|
*
|
|
5263
5370
|
* @see {@link dijkstra} for non-negative edge costs
|
|
5371
|
+
* @stability unstable
|
|
5264
5372
|
* @category algorithms
|
|
5265
5373
|
* @since 3.18.0
|
|
5266
5374
|
*/
|
|
@@ -5442,6 +5550,7 @@ const pathWalker = iterator => ({
|
|
|
5442
5550
|
*
|
|
5443
5551
|
* @see {@link allShortestPaths} for enumerating only minimum-cost routes
|
|
5444
5552
|
*
|
|
5553
|
+
* @stability unstable
|
|
5445
5554
|
* @category algorithms
|
|
5446
5555
|
* @since 4.0.0
|
|
5447
5556
|
*/
|
|
@@ -5544,6 +5653,7 @@ export const simplePaths = /*#__PURE__*/dual(2, (graph, config) => {
|
|
|
5544
5653
|
* @see {@link dijkstra} when one shortest path is sufficient
|
|
5545
5654
|
* @see {@link simplePaths} for routes regardless of cost
|
|
5546
5655
|
*
|
|
5656
|
+
* @stability unstable
|
|
5547
5657
|
* @category algorithms
|
|
5548
5658
|
* @since 4.0.0
|
|
5549
5659
|
*/
|
|
@@ -5720,6 +5830,7 @@ export const allShortestPaths = /*#__PURE__*/dual(2, (graph, config) => {
|
|
|
5720
5830
|
* Array.from(Graph.entries(allNodes)) // => [[0, "A"], [1, "B"]]
|
|
5721
5831
|
* ```
|
|
5722
5832
|
*
|
|
5833
|
+
* @stability unstable
|
|
5723
5834
|
* @category models
|
|
5724
5835
|
* @since 3.18.0
|
|
5725
5836
|
*/
|
|
@@ -5808,6 +5919,7 @@ const traversalStartPositions = (cache, start) => {
|
|
|
5808
5919
|
* Array.from(Graph.indices(dfs)) // => [0, 1]
|
|
5809
5920
|
* ```
|
|
5810
5921
|
*
|
|
5922
|
+
* @stability unstable
|
|
5811
5923
|
* @category iterators
|
|
5812
5924
|
* @since 3.18.0
|
|
5813
5925
|
*/
|
|
@@ -5830,6 +5942,7 @@ export const indices = walker => walker.visit((index, _) => index);
|
|
|
5830
5942
|
* Array.from(Graph.values(dfs)) // => ["A", "B"]
|
|
5831
5943
|
* ```
|
|
5832
5944
|
*
|
|
5945
|
+
* @stability unstable
|
|
5833
5946
|
* @category iterators
|
|
5834
5947
|
* @since 3.18.0
|
|
5835
5948
|
*/
|
|
@@ -5852,6 +5965,7 @@ export const values = walker => walker.visit((_, data) => data);
|
|
|
5852
5965
|
* Array.from(Graph.entries(dfs)) // => [[0, "A"], [1, "B"]]
|
|
5853
5966
|
* ```
|
|
5854
5967
|
*
|
|
5968
|
+
* @stability unstable
|
|
5855
5969
|
* @category iterators
|
|
5856
5970
|
* @since 3.18.0
|
|
5857
5971
|
*/
|
|
@@ -5898,6 +6012,7 @@ export const entries = walker => walker.visit((index, data) => [index, data]);
|
|
|
5898
6012
|
*
|
|
5899
6013
|
* @see {@link bfs} for traversal in increasing hop distance
|
|
5900
6014
|
* @see {@link dfsPostOrder} for emitting descendants before ancestors
|
|
6015
|
+
* @stability unstable
|
|
5901
6016
|
* @category iterators
|
|
5902
6017
|
* @since 3.18.0
|
|
5903
6018
|
*/
|
|
@@ -6058,6 +6173,7 @@ export const dfs = /*#__PURE__*/dual(args => isGraph(args[0]), (graph, config =
|
|
|
6058
6173
|
*
|
|
6059
6174
|
* @see {@link dfs} for branch-first traversal
|
|
6060
6175
|
* @see {@link unweightedDistances} for collecting hop counts
|
|
6176
|
+
* @stability unstable
|
|
6061
6177
|
* @category iterators
|
|
6062
6178
|
* @since 3.18.0
|
|
6063
6179
|
*/
|
|
@@ -6181,6 +6297,7 @@ export const bfs = /*#__PURE__*/dual(args => isGraph(args[0]), (graph, config =
|
|
|
6181
6297
|
* ```
|
|
6182
6298
|
*
|
|
6183
6299
|
* @see {@link isAcyclic} for checking the required graph property
|
|
6300
|
+
* @stability unstable
|
|
6184
6301
|
* @category iterators
|
|
6185
6302
|
* @since 3.18.0
|
|
6186
6303
|
*/
|
|
@@ -6314,6 +6431,7 @@ export const topo = /*#__PURE__*/dual(args => isGraph(args[0]), (graph, config =
|
|
|
6314
6431
|
* ```
|
|
6315
6432
|
*
|
|
6316
6433
|
* @see {@link dfs} for emitting nodes when first visited
|
|
6434
|
+
* @stability unstable
|
|
6317
6435
|
* @category iterators
|
|
6318
6436
|
* @since 3.18.0
|
|
6319
6437
|
*/
|
|
@@ -6441,6 +6559,7 @@ export const dfsPostOrder = /*#__PURE__*/dual(args => isGraph(args[0]), (graph,
|
|
|
6441
6559
|
* Array.from(Graph.indices(Graph.nodes(graph))) // => [0, 1, 2]
|
|
6442
6560
|
* ```
|
|
6443
6561
|
*
|
|
6562
|
+
* @stability unstable
|
|
6444
6563
|
* @category iterators
|
|
6445
6564
|
* @since 3.18.0
|
|
6446
6565
|
*/
|
|
@@ -6495,6 +6614,7 @@ export const nodes = graph => new Walker(f => ({
|
|
|
6495
6614
|
* Array.from(Graph.indices(Graph.edges(graph))) // => [0, 1]
|
|
6496
6615
|
* ```
|
|
6497
6616
|
*
|
|
6617
|
+
* @stability unstable
|
|
6498
6618
|
* @category iterators
|
|
6499
6619
|
* @since 3.18.0
|
|
6500
6620
|
*/
|
|
@@ -6560,6 +6680,7 @@ export const edges = graph => new Walker(f => ({
|
|
|
6560
6680
|
* Array.from(Graph.indices(Graph.externals(graph, { direction: "incoming" }))) // => [0, 3]
|
|
6561
6681
|
* ```
|
|
6562
6682
|
*
|
|
6683
|
+
* @stability unstable
|
|
6563
6684
|
* @category iterators
|
|
6564
6685
|
* @since 3.18.0
|
|
6565
6686
|
*/
|