effect 4.0.1 → 4.0.2
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 +21 -0
- 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 +5 -0
- package/dist/Crypto.d.ts.map +1 -1
- package/dist/Crypto.js +3 -0
- 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 +171 -0
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/DateTime.js +89 -0
- 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 +90 -0
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +53 -0
- 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 +15 -0
- 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 +496 -1
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +280 -1
- 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 +7 -0
- package/dist/Stdio.d.ts.map +1 -1
- package/dist/Stdio.js +5 -0
- package/dist/Stdio.js.map +1 -1
- package/dist/Stream.d.ts +558 -0
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +261 -13
- 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 +32 -11
- package/dist/ai/McpServer.d.ts.map +1 -1
- package/dist/ai/McpServer.js +213 -169
- 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/mcpRuntime.js +79 -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/cluster/K8sHttpClient.d.ts.map +1 -1
- package/dist/cluster/K8sHttpClient.js +5 -2
- package/dist/cluster/K8sHttpClient.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/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 +9 -0
- package/dist/http/HttpClient.d.ts.map +1 -1
- package/dist/http/HttpClient.js +40 -21
- 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/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 +41 -39
- 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/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 +21 -94
- 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/internal/otlpProtobuf.js +32 -1
- package/dist/observability/internal/otlpProtobuf.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 +21 -3
- package/dist/rpc/RpcClient.d.ts.map +1 -1
- package/dist/rpc/RpcClient.js +38 -20
- package/dist/rpc/RpcClient.js.map +1 -1
- package/dist/rpc/RpcServer.d.ts.map +1 -1
- package/dist/rpc/RpcServer.js +18 -21
- 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/sql/SqlClient.js +4 -4
- 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/index.d.ts +3 -0
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +3 -0
- package/dist/testing/index.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 +50 -0
- package/src/Cron.ts +32 -1
- package/src/Crypto.ts +5 -0
- package/src/Data.ts +13 -0
- package/src/DateTime.ts +171 -0
- package/src/Deferred.ts +51 -0
- package/src/Differ.ts +2 -0
- package/src/Duration.ts +90 -0
- 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 +16 -0
- 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 +499 -4
- 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 +7 -0
- package/src/Stream.ts +622 -15
- 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 +107 -36
- package/src/ai/Telemetry.ts +62 -58
- package/src/ai/internal/mcpRuntime.ts +84 -43
- package/src/ai/internal/mcpStatefulRuntime.ts +2 -0
- package/src/cluster/K8sHttpClient.ts +12 -2
- 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/Headers.ts +8 -2
- package/src/http/HttpClient.ts +44 -27
- 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/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 +47 -45
- package/src/internal/schedule.ts +23 -17
- package/src/internal/schema/standardSchema.ts +2 -2
- package/src/internal/version.ts +2 -0
- package/src/observability/OtlpExporter.ts +9 -6
- package/src/observability/OtlpLogger.ts +20 -21
- package/src/observability/OtlpMetrics.ts +34 -93
- package/src/observability/OtlpResource.ts +18 -27
- package/src/observability/OtlpTracer.ts +34 -40
- package/src/observability/internal/otlpProtobuf.ts +60 -0
- 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 +48 -24
- package/src/rpc/RpcServer.ts +26 -24
- package/src/rpc/internal/tracing.ts +22 -0
- package/src/schema/SchemaCompiler/runtime.ts +4 -1
- package/src/sql/SqlClient.ts +4 -4
- package/src/sql/Statement.ts +59 -7
- package/src/testing/TestClock.ts +9 -0
- package/src/testing/TestConsole.ts +8 -0
- package/src/testing/index.ts +3 -0
|
@@ -39,6 +39,8 @@ import { OtlpSerialization } from "./OtlpSerialization.ts"
|
|
|
39
39
|
*
|
|
40
40
|
* `"delta"` reports changes since the last export. Each interval is independent with no dependency on previous measurements.
|
|
41
41
|
*
|
|
42
|
+
* Summaries are always cumulative, regardless of this setting.
|
|
43
|
+
*
|
|
42
44
|
* **Example** (Configuring aggregation temporality)
|
|
43
45
|
*
|
|
44
46
|
* ```ts import.meta.vitest
|
|
@@ -114,7 +116,6 @@ export const make: (options: {
|
|
|
114
116
|
let previousCounterState = new Map<string, number | bigint>()
|
|
115
117
|
let previousHistogramState = new Map<string, PreviousHistogramState>()
|
|
116
118
|
let previousFrequencyState = new Map<string, Map<string, number>>()
|
|
117
|
-
let previousSummaryState = new Map<string, PreviousSummaryState>()
|
|
118
119
|
let snapshotSequence = 0
|
|
119
120
|
let committedSnapshotSequence = -1
|
|
120
121
|
|
|
@@ -126,7 +127,6 @@ export const make: (options: {
|
|
|
126
127
|
const nextCounterState = new Map(previousCounterState)
|
|
127
128
|
const nextHistogramState = new Map(previousHistogramState)
|
|
128
129
|
const nextFrequencyState = new Map(previousFrequencyState)
|
|
129
|
-
const nextSummaryState = new Map(previousSummaryState)
|
|
130
130
|
const metricData: Array<IMetric> = []
|
|
131
131
|
const metricDataByName = new Map<string, IMetric>()
|
|
132
132
|
const addMetricData = (data: IMetric) => {
|
|
@@ -144,7 +144,7 @@ export const make: (options: {
|
|
|
144
144
|
|
|
145
145
|
for (let i = 0, len = snapshot.length; i < len; i++) {
|
|
146
146
|
const state = snapshot[i]
|
|
147
|
-
const unit = state.attributes?.unit ?? state.attributes?.time_unit
|
|
147
|
+
const unit = toUcumUnit(state.attributes?.unit ?? state.attributes?.time_unit)
|
|
148
148
|
const attributes = state.attributes ? OtlpResource.entriesToAttributes(Object.entries(state.attributes)) : []
|
|
149
149
|
const metricKey = makeMetricKey(state.id, state.attributes)
|
|
150
150
|
|
|
@@ -181,7 +181,7 @@ export const make: (options: {
|
|
|
181
181
|
timeUnixNano: nowTime
|
|
182
182
|
}
|
|
183
183
|
if (typeof reportValue === "bigint") {
|
|
184
|
-
dataPoint.asInt =
|
|
184
|
+
dataPoint.asInt = bigintToInt64(reportValue)
|
|
185
185
|
} else {
|
|
186
186
|
dataPoint.asDouble = reportValue
|
|
187
187
|
}
|
|
@@ -209,7 +209,7 @@ export const make: (options: {
|
|
|
209
209
|
timeUnixNano: nowTime
|
|
210
210
|
}
|
|
211
211
|
if (typeof state.state.value === "bigint") {
|
|
212
|
-
dataPoint.asInt =
|
|
212
|
+
dataPoint.asInt = bigintToInt64(state.state.value)
|
|
213
213
|
} else {
|
|
214
214
|
dataPoint.asDouble = state.state.value
|
|
215
215
|
}
|
|
@@ -344,91 +344,25 @@ export const make: (options: {
|
|
|
344
344
|
break
|
|
345
345
|
}
|
|
346
346
|
case "Summary": {
|
|
347
|
-
//
|
|
348
|
-
|
|
349
|
-
const dataPoints: Array<INumberDataPoint> = [{
|
|
350
|
-
attributes: [...attributes, { key: "quantile", value: { stringValue: "min" } }],
|
|
351
|
-
startTimeUnixNano: intervalStartTime,
|
|
352
|
-
timeUnixNano: nowTime,
|
|
353
|
-
asDouble: state.state.min
|
|
354
|
-
}]
|
|
355
|
-
for (const [quantile, value] of state.state.quantiles) {
|
|
356
|
-
dataPoints.push({
|
|
357
|
-
attributes: [...attributes, { key: "quantile", value: { stringValue: quantile.toString() } }],
|
|
358
|
-
startTimeUnixNano: intervalStartTime,
|
|
359
|
-
timeUnixNano: nowTime,
|
|
360
|
-
asDouble: value ?? 0
|
|
361
|
-
})
|
|
362
|
-
}
|
|
363
|
-
dataPoints.push({
|
|
364
|
-
attributes: [...attributes, { key: "quantile", value: { stringValue: "max" } }],
|
|
365
|
-
startTimeUnixNano: intervalStartTime,
|
|
366
|
-
timeUnixNano: nowTime,
|
|
367
|
-
asDouble: state.state.max
|
|
368
|
-
})
|
|
369
|
-
|
|
370
|
-
let reportCount = state.state.count
|
|
371
|
-
let reportSum = state.state.sum
|
|
372
|
-
|
|
373
|
-
if (isDelta) {
|
|
374
|
-
const previousState = previousSummaryState.get(metricKey)
|
|
375
|
-
if (previousState !== undefined) {
|
|
376
|
-
reportCount = state.state.count - previousState.count
|
|
377
|
-
reportSum = state.state.sum - previousState.sum
|
|
378
|
-
}
|
|
379
|
-
nextSummaryState.set(metricKey, {
|
|
380
|
-
count: state.state.count,
|
|
381
|
-
sum: state.state.sum
|
|
382
|
-
})
|
|
383
|
-
}
|
|
384
|
-
|
|
385
|
-
const countDataPoint: INumberDataPoint = {
|
|
347
|
+
// Count and sum are lifetime totals, so summaries are always cumulative
|
|
348
|
+
const dataPoint: ISummaryDataPoint = {
|
|
386
349
|
attributes,
|
|
387
|
-
startTimeUnixNano:
|
|
388
|
-
timeUnixNano: nowTime,
|
|
389
|
-
asInt: reportCount
|
|
390
|
-
}
|
|
391
|
-
const sumDataPoint: INumberDataPoint = {
|
|
392
|
-
attributes,
|
|
393
|
-
startTimeUnixNano: intervalStartTime,
|
|
350
|
+
startTimeUnixNano: startTime,
|
|
394
351
|
timeUnixNano: nowTime,
|
|
395
|
-
|
|
352
|
+
count: state.state.count,
|
|
353
|
+
sum: state.state.sum,
|
|
354
|
+
quantileValues: state.state.quantiles.flatMap(([quantile, value]) =>
|
|
355
|
+
value === undefined ? [] : [{ quantile, value }]
|
|
356
|
+
)
|
|
396
357
|
}
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
metricDataByName.get(`${state.id}_quantiles`)!.sum!.dataPoints.push(...dataPoints)
|
|
400
|
-
metricDataByName.get(`${state.id}_count`)!.sum!.dataPoints.push(countDataPoint)
|
|
401
|
-
metricDataByName.get(`${state.id}_sum`)!.sum!.dataPoints.push(sumDataPoint)
|
|
358
|
+
if (metricDataByName.has(state.id)) {
|
|
359
|
+
metricDataByName.get(state.id)!.summary!.dataPoints.push(dataPoint)
|
|
402
360
|
} else {
|
|
403
361
|
addMetricData({
|
|
404
|
-
name:
|
|
362
|
+
name: state.id,
|
|
405
363
|
description: state.description!,
|
|
406
364
|
unit,
|
|
407
|
-
|
|
408
|
-
aggregationTemporality: aggregationTemporalityEnum,
|
|
409
|
-
isMonotonic: false,
|
|
410
|
-
dataPoints
|
|
411
|
-
}
|
|
412
|
-
})
|
|
413
|
-
addMetricData({
|
|
414
|
-
name: `${state.id}_count`,
|
|
415
|
-
description: state.description!,
|
|
416
|
-
unit: "1",
|
|
417
|
-
sum: {
|
|
418
|
-
aggregationTemporality: aggregationTemporalityEnum,
|
|
419
|
-
isMonotonic: true,
|
|
420
|
-
dataPoints: [countDataPoint]
|
|
421
|
-
}
|
|
422
|
-
})
|
|
423
|
-
addMetricData({
|
|
424
|
-
name: `${state.id}_sum`,
|
|
425
|
-
description: state.description!,
|
|
426
|
-
unit: "1",
|
|
427
|
-
sum: {
|
|
428
|
-
aggregationTemporality: aggregationTemporalityEnum,
|
|
429
|
-
isMonotonic: true,
|
|
430
|
-
dataPoints: [sumDataPoint]
|
|
431
|
-
}
|
|
365
|
+
summary: { dataPoints: [dataPoint] }
|
|
432
366
|
})
|
|
433
367
|
}
|
|
434
368
|
break
|
|
@@ -451,7 +385,6 @@ export const make: (options: {
|
|
|
451
385
|
previousCounterState = nextCounterState
|
|
452
386
|
previousHistogramState = nextHistogramState
|
|
453
387
|
previousFrequencyState = nextFrequencyState
|
|
454
|
-
previousSummaryState = nextSummaryState
|
|
455
388
|
previousExportTimeNanos = nowNanos
|
|
456
389
|
committedSnapshotSequence = currentSnapshotSequence
|
|
457
390
|
})
|
|
@@ -567,6 +500,20 @@ const makeMetricKey = (id: string, attributes: Metric.Metric.AttributeSet | unde
|
|
|
567
500
|
return `${id}:${JSON.stringify(sortedEntries)}`
|
|
568
501
|
}
|
|
569
502
|
|
|
503
|
+
const ucumUnits = new Map([
|
|
504
|
+
["nanoseconds", "ns"],
|
|
505
|
+
["microseconds", "us"],
|
|
506
|
+
["milliseconds", "ms"],
|
|
507
|
+
["seconds", "s"],
|
|
508
|
+
["bytes", "By"]
|
|
509
|
+
])
|
|
510
|
+
|
|
511
|
+
const toUcumUnit = (unit: string | undefined): string => unit === undefined ? "1" : ucumUnits.get(unit) ?? unit
|
|
512
|
+
|
|
513
|
+
/** OTLP/JSON accepts int64 as a decimal string, which keeps values beyond 2^53 exact */
|
|
514
|
+
const bigintToInt64 = (value: bigint): number | string =>
|
|
515
|
+
Number.isSafeInteger(Number(value)) ? Number(value) : value.toString()
|
|
516
|
+
|
|
570
517
|
/** Previous state for histogram delta computation */
|
|
571
518
|
interface PreviousHistogramState {
|
|
572
519
|
readonly count: number
|
|
@@ -576,12 +523,6 @@ interface PreviousHistogramState {
|
|
|
576
523
|
readonly max: number
|
|
577
524
|
}
|
|
578
525
|
|
|
579
|
-
/** Previous state for summary delta computation */
|
|
580
|
-
interface PreviousSummaryState {
|
|
581
|
-
readonly count: number
|
|
582
|
-
readonly sum: number
|
|
583
|
-
}
|
|
584
|
-
|
|
585
526
|
/** Properties of an InstrumentationScope. */
|
|
586
527
|
interface IInstrumentationScope {
|
|
587
528
|
/** InstrumentationScope name */
|
|
@@ -675,7 +616,7 @@ interface INumberDataPoint {
|
|
|
675
616
|
/** NumberDataPoint asDouble */
|
|
676
617
|
asDouble?: number | null
|
|
677
618
|
/** NumberDataPoint asInt */
|
|
678
|
-
asInt?: number
|
|
619
|
+
asInt?: number | string
|
|
679
620
|
/** NumberDataPoint exemplars */
|
|
680
621
|
exemplars?: Array<IExemplar>
|
|
681
622
|
/** NumberDataPoint flags */
|
|
@@ -740,9 +681,9 @@ interface ISummaryDataPoint {
|
|
|
740
681
|
/** SummaryDataPoint attributes */
|
|
741
682
|
attributes?: Array<KeyValue>
|
|
742
683
|
/** SummaryDataPoint startTimeUnixNano */
|
|
743
|
-
startTimeUnixNano?:
|
|
684
|
+
startTimeUnixNano?: Fixed64
|
|
744
685
|
/** SummaryDataPoint timeUnixNano */
|
|
745
|
-
timeUnixNano?:
|
|
686
|
+
timeUnixNano?: Fixed64
|
|
746
687
|
/** SummaryDataPoint count */
|
|
747
688
|
count?: number
|
|
748
689
|
/** SummaryDataPoint sum */
|
|
@@ -13,6 +13,7 @@ import * as Config from "../Config.ts"
|
|
|
13
13
|
import * as Effect from "../Effect.ts"
|
|
14
14
|
import { format } from "../Formatter.ts"
|
|
15
15
|
import * as Schema from "../Schema.ts"
|
|
16
|
+
import * as Version from "../Version.ts"
|
|
16
17
|
|
|
17
18
|
/**
|
|
18
19
|
* OTLP resource metadata attached to exported logs, metrics, and traces.
|
|
@@ -28,46 +29,36 @@ export interface Resource {
|
|
|
28
29
|
droppedAttributesCount: number
|
|
29
30
|
}
|
|
30
31
|
|
|
32
|
+
const isBrowser = "window" in globalThis || "importScripts" in globalThis
|
|
33
|
+
|
|
31
34
|
/**
|
|
32
35
|
* Creates an OTLP resource from service metadata and additional attributes.
|
|
33
36
|
*
|
|
34
37
|
* **Details**
|
|
35
38
|
*
|
|
36
|
-
*
|
|
37
|
-
*
|
|
39
|
+
* Adds `telemetry.sdk.*` defaults and converts custom attributes to OTLP values.
|
|
40
|
+
* Custom attributes override SDK defaults; service options override matching
|
|
41
|
+
* attributes. Omitted service options add no service attributes.
|
|
38
42
|
*
|
|
39
43
|
* @stability unstable
|
|
40
44
|
* @category constructors
|
|
41
45
|
* @since 4.0.0
|
|
42
46
|
*/
|
|
43
47
|
export const make = (options: {
|
|
44
|
-
readonly serviceName
|
|
48
|
+
readonly serviceName?: string | undefined
|
|
45
49
|
readonly serviceVersion?: string | undefined
|
|
46
50
|
readonly attributes?: Record<string, unknown> | undefined
|
|
47
|
-
}): Resource => {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
:
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
resourceAttributes.push({
|
|
59
|
-
key: "service.version",
|
|
60
|
-
value: {
|
|
61
|
-
stringValue: options.serviceVersion
|
|
62
|
-
}
|
|
63
|
-
})
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
return {
|
|
67
|
-
attributes: resourceAttributes,
|
|
68
|
-
droppedAttributesCount: 0
|
|
69
|
-
}
|
|
70
|
-
}
|
|
51
|
+
}): Resource => ({
|
|
52
|
+
attributes: entriesToAttributes(Object.entries({
|
|
53
|
+
"telemetry.sdk.name": "effect",
|
|
54
|
+
"telemetry.sdk.language": isBrowser ? "webjs" : "nodejs",
|
|
55
|
+
"telemetry.sdk.version": Version.getCurrentVersion(),
|
|
56
|
+
...options.attributes,
|
|
57
|
+
...(options.serviceName ? { "service.name": options.serviceName } : undefined),
|
|
58
|
+
...(options.serviceVersion ? { "service.version": options.serviceVersion } : undefined)
|
|
59
|
+
})),
|
|
60
|
+
droppedAttributesCount: 0
|
|
61
|
+
})
|
|
71
62
|
|
|
72
63
|
/**
|
|
73
64
|
* Creates an OTLP resource from explicit options and OpenTelemetry
|
|
@@ -26,6 +26,7 @@ import * as Option from "../Option.ts"
|
|
|
26
26
|
import type * as Scope from "../Scope.ts"
|
|
27
27
|
import * as Tracer from "../Tracer.ts"
|
|
28
28
|
import type { ExtractTag } from "../Types.ts"
|
|
29
|
+
import * as Version from "../Version.ts"
|
|
29
30
|
import * as OtlpEnv from "./internal/otlpEnv.ts"
|
|
30
31
|
import * as Exporter from "./OtlpExporter.ts"
|
|
31
32
|
import type { KeyValue, Resource } from "./OtlpResource.ts"
|
|
@@ -67,7 +68,8 @@ export const make: (
|
|
|
67
68
|
const otelResource = yield* OtlpResource.fromConfig(options.resource)
|
|
68
69
|
const serialization = yield* OtlpSerialization
|
|
69
70
|
const scope: Scope = {
|
|
70
|
-
name:
|
|
71
|
+
name: "effect",
|
|
72
|
+
version: Version.getCurrentVersion()
|
|
71
73
|
}
|
|
72
74
|
|
|
73
75
|
const exporter = yield* Exporter.make({
|
|
@@ -295,53 +297,44 @@ const makeOtlpSpan = (self: SpanImpl): OtlpSpan => {
|
|
|
295
297
|
if (status.exit._tag === "Success") {
|
|
296
298
|
otelStatus = { code: StatusCode.Ok }
|
|
297
299
|
} else if (Cause.hasInterruptsOnly(status.exit.cause)) {
|
|
298
|
-
otelStatus = {
|
|
299
|
-
code: StatusCode.Ok,
|
|
300
|
-
message: "Interrupted"
|
|
301
|
-
}
|
|
300
|
+
otelStatus = { code: StatusCode.Unset }
|
|
302
301
|
attributes.push({
|
|
303
|
-
key: "
|
|
304
|
-
value: { stringValue: "⚠︎ Interrupted" }
|
|
305
|
-
}, {
|
|
306
|
-
key: "status.interrupted",
|
|
302
|
+
key: "effect.fiber.interrupted",
|
|
307
303
|
value: { boolValue: true }
|
|
308
304
|
})
|
|
309
305
|
} else {
|
|
310
306
|
const errors = Cause.prettyErrors(status.exit.cause, {
|
|
311
307
|
includeCauseInStack: true
|
|
312
308
|
})
|
|
313
|
-
otelStatus =
|
|
314
|
-
code: StatusCode.Error
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
{
|
|
325
|
-
"
|
|
326
|
-
"value": {
|
|
327
|
-
"stringValue": error.name
|
|
328
|
-
}
|
|
329
|
-
},
|
|
330
|
-
{
|
|
331
|
-
"key": "exception.message",
|
|
332
|
-
"value": {
|
|
333
|
-
"stringValue": error.message
|
|
334
|
-
}
|
|
335
|
-
},
|
|
336
|
-
{
|
|
337
|
-
"key": "exception.stacktrace",
|
|
338
|
-
"value": {
|
|
339
|
-
"stringValue": error.stack ?? "No stack trace available"
|
|
340
|
-
}
|
|
309
|
+
otelStatus = errors.length > 0
|
|
310
|
+
? { code: StatusCode.Error, message: errors[0].message }
|
|
311
|
+
: { code: StatusCode.Ok }
|
|
312
|
+
for (const error of errors) {
|
|
313
|
+
events.push({
|
|
314
|
+
name: "exception",
|
|
315
|
+
timeUnixNano: String(status.endTime),
|
|
316
|
+
droppedAttributesCount: 0,
|
|
317
|
+
attributes: [
|
|
318
|
+
{
|
|
319
|
+
"key": "exception.type",
|
|
320
|
+
"value": {
|
|
321
|
+
"stringValue": error.name
|
|
341
322
|
}
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
323
|
+
},
|
|
324
|
+
{
|
|
325
|
+
"key": "exception.message",
|
|
326
|
+
"value": {
|
|
327
|
+
"stringValue": error.message
|
|
328
|
+
}
|
|
329
|
+
},
|
|
330
|
+
{
|
|
331
|
+
"key": "exception.stacktrace",
|
|
332
|
+
"value": {
|
|
333
|
+
"stringValue": error.stack ?? "No stack trace available"
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
]
|
|
337
|
+
})
|
|
345
338
|
}
|
|
346
339
|
}
|
|
347
340
|
|
|
@@ -413,6 +406,7 @@ export interface ScopeSpan {
|
|
|
413
406
|
|
|
414
407
|
interface Scope {
|
|
415
408
|
readonly name: string
|
|
409
|
+
readonly version?: string
|
|
416
410
|
}
|
|
417
411
|
|
|
418
412
|
interface OtlpSpan {
|
|
@@ -493,6 +493,62 @@ export const encodeHistogram = (histogram: {
|
|
|
493
493
|
Proto.varintField(2, histogram.aggregationTemporality)
|
|
494
494
|
)
|
|
495
495
|
|
|
496
|
+
/**
|
|
497
|
+
* Encodes a SummaryDataPoint message.
|
|
498
|
+
*
|
|
499
|
+
* message SummaryDataPoint {
|
|
500
|
+
* repeated KeyValue attributes = 7;
|
|
501
|
+
* fixed64 start_time_unix_nano = 2;
|
|
502
|
+
* fixed64 time_unix_nano = 3;
|
|
503
|
+
* fixed64 count = 4;
|
|
504
|
+
* double sum = 5;
|
|
505
|
+
* repeated ValueAtQuantile quantile_values = 6;
|
|
506
|
+
* uint32 flags = 8;
|
|
507
|
+
* }
|
|
508
|
+
*
|
|
509
|
+
* message ValueAtQuantile {
|
|
510
|
+
* double quantile = 1;
|
|
511
|
+
* double value = 2;
|
|
512
|
+
* }
|
|
513
|
+
*
|
|
514
|
+
* @internal
|
|
515
|
+
*/
|
|
516
|
+
export const encodeSummaryDataPoint = (point: {
|
|
517
|
+
readonly attributes: ReadonlyArray<KeyValue>
|
|
518
|
+
readonly startTimeUnixNano: string
|
|
519
|
+
readonly timeUnixNano: string
|
|
520
|
+
readonly count: string | number | bigint
|
|
521
|
+
readonly sum: number
|
|
522
|
+
readonly quantileValues: ReadonlyArray<{ readonly quantile: number; readonly value: number }>
|
|
523
|
+
readonly flags?: number | undefined
|
|
524
|
+
}): Uint8Array =>
|
|
525
|
+
Proto.concat(
|
|
526
|
+
Proto.fixed64Field(2, BigInt(point.startTimeUnixNano)),
|
|
527
|
+
Proto.fixed64Field(3, BigInt(point.timeUnixNano)),
|
|
528
|
+
Proto.fixed64Field(4, BigInt(point.count)),
|
|
529
|
+
Proto.doubleField(5, point.sum),
|
|
530
|
+
Proto.repeatedField(
|
|
531
|
+
6,
|
|
532
|
+
point.quantileValues,
|
|
533
|
+
(q) => Proto.concat(Proto.doubleField(1, q.quantile), Proto.doubleField(2, q.value))
|
|
534
|
+
),
|
|
535
|
+
Proto.repeatedField(7, point.attributes, encodeKeyValue),
|
|
536
|
+
point.flags !== undefined ? Proto.varintField(8, point.flags) : new Uint8Array(0)
|
|
537
|
+
)
|
|
538
|
+
|
|
539
|
+
/**
|
|
540
|
+
* Encodes a Summary message.
|
|
541
|
+
*
|
|
542
|
+
* message Summary {
|
|
543
|
+
* repeated SummaryDataPoint data_points = 1;
|
|
544
|
+
* }
|
|
545
|
+
*
|
|
546
|
+
* @internal
|
|
547
|
+
*/
|
|
548
|
+
export const encodeSummary = (summary: {
|
|
549
|
+
readonly dataPoints: ReadonlyArray<Parameters<typeof encodeSummaryDataPoint>[0]>
|
|
550
|
+
}): Uint8Array => Proto.repeatedField(1, summary.dataPoints, encodeSummaryDataPoint)
|
|
551
|
+
|
|
496
552
|
/**
|
|
497
553
|
* Encodes a Metric message.
|
|
498
554
|
*
|
|
@@ -518,6 +574,7 @@ export const encodeMetric = (metric: {
|
|
|
518
574
|
readonly gauge?: Parameters<typeof encodeGauge>[0] | undefined
|
|
519
575
|
readonly sum?: Parameters<typeof encodeSum>[0] | undefined
|
|
520
576
|
readonly histogram?: Parameters<typeof encodeHistogram>[0] | undefined
|
|
577
|
+
readonly summary?: Parameters<typeof encodeSummary>[0] | undefined
|
|
521
578
|
}): Uint8Array =>
|
|
522
579
|
Proto.concat(
|
|
523
580
|
Proto.stringField(1, metric.name),
|
|
@@ -531,6 +588,9 @@ export const encodeMetric = (metric: {
|
|
|
531
588
|
: new Uint8Array(0),
|
|
532
589
|
metric.histogram !== undefined
|
|
533
590
|
? Proto.messageField(9, encodeHistogram(metric.histogram))
|
|
591
|
+
: new Uint8Array(0),
|
|
592
|
+
metric.summary !== undefined
|
|
593
|
+
? Proto.messageField(11, encodeSummary(metric.summary))
|
|
534
594
|
: new Uint8Array(0)
|
|
535
595
|
)
|
|
536
596
|
|
|
@@ -644,7 +644,7 @@ export const flatMap: {
|
|
|
644
644
|
* @category combinators
|
|
645
645
|
* @since 4.0.0
|
|
646
646
|
*/
|
|
647
|
-
<A, E, B, E2>(f: (a: A, prev: Success<A, E>) => AsyncResult<
|
|
647
|
+
<A, E, B, E2>(f: (a: A, prev: Success<A, E>) => AsyncResult<B, E2>): (self: AsyncResult<A, E>) => AsyncResult<B, E | E2>
|
|
648
648
|
/**
|
|
649
649
|
* Maps the success value of an `AsyncResult` and flattens the result.
|
|
650
650
|
*
|
package/src/reactivity/Atom.ts
CHANGED
|
@@ -818,7 +818,7 @@ export interface AtomRuntime<R, ER = never> extends Atom<AsyncResult.AsyncResult
|
|
|
818
818
|
| ((
|
|
819
819
|
get: AtomContext
|
|
820
820
|
) => Effect.Effect<SubscriptionRef.SubscriptionRef<A>, E, Scope.Scope | R | AtomRegistry | Reactivity.Reactivity>)
|
|
821
|
-
) => Writable<AsyncResult.AsyncResult<A, E>, A>
|
|
821
|
+
) => Writable<AsyncResult.AsyncResult<A, E | ER>, A>
|
|
822
822
|
}
|
|
823
823
|
|
|
824
824
|
/**
|
|
@@ -2774,18 +2774,21 @@ export const batch: (f: () => void) => void = Registry.batch
|
|
|
2774
2774
|
// -----------------------------------------------------------------------------
|
|
2775
2775
|
|
|
2776
2776
|
/**
|
|
2777
|
-
* Creates a
|
|
2777
|
+
* Creates a signal atom that increments when the document becomes visible.
|
|
2778
2778
|
*
|
|
2779
2779
|
* **Details**
|
|
2780
2780
|
*
|
|
2781
2781
|
* It listens for `visibilitychange` events on `window` and removes the listener
|
|
2782
|
-
* when the atom is disposed.
|
|
2782
|
+
* when the atom is disposed. Without `window`, it stays at `0` and adds no listener.
|
|
2783
2783
|
*
|
|
2784
2784
|
* @stability unstable
|
|
2785
2785
|
* @category constants
|
|
2786
2786
|
* @since 4.0.0
|
|
2787
2787
|
*/
|
|
2788
2788
|
export const windowFocusSignal: Atom<number> = readable((get) => {
|
|
2789
|
+
if (typeof window === "undefined") {
|
|
2790
|
+
return 0
|
|
2791
|
+
}
|
|
2789
2792
|
let count = 0
|
|
2790
2793
|
function update() {
|
|
2791
2794
|
if (document.visibilityState === "visible") {
|
|
@@ -2825,8 +2828,8 @@ export const makeRefreshOnSignal = <_>(signal: Atom<_>) => <A extends Atom<any>>
|
|
|
2825
2828
|
*
|
|
2826
2829
|
* **Details**
|
|
2827
2830
|
*
|
|
2828
|
-
*
|
|
2829
|
-
*
|
|
2831
|
+
* Without `window`, this helper does not trigger refreshes. Source atom updates
|
|
2832
|
+
* are still forwarded.
|
|
2830
2833
|
*
|
|
2831
2834
|
* @stability unstable
|
|
2832
2835
|
* @category combinators
|
|
@@ -2991,7 +2994,8 @@ function updateSearchParams() {
|
|
|
2991
2994
|
}
|
|
2992
2995
|
}
|
|
2993
2996
|
searchParamState.updates.clear()
|
|
2994
|
-
const
|
|
2997
|
+
const search = searchParams.toString()
|
|
2998
|
+
const newUrl = `${window.location.pathname}${search.length > 0 ? `?${search}` : ""}${window.location.hash}`
|
|
2995
2999
|
window.history.pushState({}, "", newUrl)
|
|
2996
3000
|
searchParamState.updating = false
|
|
2997
3001
|
}
|
|
@@ -57,7 +57,7 @@ export interface AtomHttpApiClient<Self, Id extends string, Groups extends HttpA
|
|
|
57
57
|
HttpApiGroup.Endpoints<Group>,
|
|
58
58
|
EndpointIdentifier
|
|
59
59
|
>,
|
|
60
|
-
const ResponseMode extends HttpApiEndpoint.ClientResponseMode =
|
|
60
|
+
const ResponseMode extends HttpApiEndpoint.ClientResponseMode = "decoded-only"
|
|
61
61
|
>(
|
|
62
62
|
group: GroupIdentifier,
|
|
63
63
|
endpoint: EndpointIdentifier,
|
|
@@ -353,9 +353,7 @@ type ResponseByMode<
|
|
|
353
353
|
Endpoint extends HttpApiEndpoint.Constraint,
|
|
354
354
|
ResponseMode extends HttpApiEndpoint.ClientResponseMode
|
|
355
355
|
> = HttpApiClient.Client.Response<
|
|
356
|
-
|
|
357
|
-
ReturnType<HttpApiClient.Client.Method<Extract<Endpoint, HttpApiEndpoint.ConstraintRequest>, never, never>>
|
|
358
|
-
>,
|
|
356
|
+
HttpApiClient.SuccessType<Extract<Endpoint, HttpApiEndpoint.ConstraintRequest>["~Success"]>,
|
|
359
357
|
ResponseMode
|
|
360
358
|
>
|
|
361
359
|
|
|
@@ -71,11 +71,13 @@ export interface AtomRegistry {
|
|
|
71
71
|
readonly scheduler: Scheduler
|
|
72
72
|
readonly schedulerAsync: Scheduler
|
|
73
73
|
readonly getNodes: () => ReadonlyMap<Atom.Atom<any> | string, Node<any>>
|
|
74
|
+
readonly ensureNode: <A>(atom: Atom.Atom<A>) => Node<A>
|
|
74
75
|
readonly get: <A>(atom: Atom.Atom<A>) => A
|
|
75
76
|
readonly mount: <A>(atom: Atom.Atom<A>) => () => void
|
|
76
77
|
readonly refresh: <A>(atom: Atom.Atom<A>) => void
|
|
77
78
|
readonly set: <R, W>(atom: Atom.Writable<R, W>, value: W) => void
|
|
78
79
|
readonly setSerializable: (key: string, encoded: unknown) => void
|
|
80
|
+
readonly preloadedSerializable: Map<string, unknown>
|
|
79
81
|
readonly modify: <R, W, A>(atom: Atom.Writable<R, W>, f: (_: R) => [returnValue: A, nextValue: W]) => A
|
|
80
82
|
readonly update: <R, W>(atom: Atom.Writable<R, W>, f: (_: R) => W) => void
|
|
81
83
|
readonly subscribe: <A>(atom: Atom.Atom<A>, f: (_: A) => void, options?: {
|
|
@@ -83,6 +85,7 @@ export interface AtomRegistry {
|
|
|
83
85
|
}) => () => void
|
|
84
86
|
readonly reset: () => void
|
|
85
87
|
readonly dispose: () => void
|
|
88
|
+
scheduleNodeRemoval(node: Node<any>): void
|
|
86
89
|
onNodeAdded?: ((node: Node<any>) => void) | undefined
|
|
87
90
|
onNodeRemoved?: ((node: Node<any>) => void) | undefined
|
|
88
91
|
}
|
|
@@ -102,10 +105,14 @@ export interface AtomRegistry {
|
|
|
102
105
|
export interface Node<A> {
|
|
103
106
|
readonly atom: Atom.Atom<A>
|
|
104
107
|
readonly value: () => A
|
|
108
|
+
readonly valueOption: () => Option.Option<A>
|
|
109
|
+
readonly canBeRemoved: boolean
|
|
105
110
|
parents: Set<Node<any>>
|
|
106
111
|
children: Set<Node<any>>
|
|
107
112
|
listeners: Set<() => void>
|
|
108
113
|
currentState(): "uninitialized" | "stale" | "valid" | "removed"
|
|
114
|
+
setInitialValue(value: A): void
|
|
115
|
+
subscribe(listener: () => void): () => void
|
|
109
116
|
}
|
|
110
117
|
|
|
111
118
|
/**
|