effect 4.0.0-beta.66 → 4.0.0-beta.68
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Array.d.ts +151 -106
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +50 -40
- package/dist/Array.js.map +1 -1
- package/dist/BigDecimal.d.ts +620 -553
- package/dist/BigDecimal.d.ts.map +1 -1
- package/dist/BigDecimal.js +298 -254
- package/dist/BigDecimal.js.map +1 -1
- package/dist/BigInt.d.ts +342 -274
- package/dist/BigInt.d.ts.map +1 -1
- package/dist/BigInt.js +168 -126
- package/dist/BigInt.js.map +1 -1
- package/dist/Boolean.d.ts +189 -156
- package/dist/Boolean.d.ts.map +1 -1
- package/dist/Boolean.js +85 -68
- package/dist/Boolean.js.map +1 -1
- package/dist/Brand.d.ts +30 -5
- package/dist/Brand.d.ts.map +1 -1
- package/dist/Brand.js +19 -2
- package/dist/Brand.js.map +1 -1
- package/dist/Cache.d.ts +239 -135
- package/dist/Cache.d.ts.map +1 -1
- package/dist/Cache.js +135 -59
- package/dist/Cache.js.map +1 -1
- package/dist/Cause.d.ts +84 -73
- package/dist/Cause.d.ts.map +1 -1
- package/dist/Cause.js +51 -44
- package/dist/Cause.js.map +1 -1
- package/dist/Channel.d.ts +1568 -632
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +685 -315
- package/dist/Channel.js.map +1 -1
- package/dist/ChannelSchema.d.ts +119 -10
- package/dist/ChannelSchema.d.ts.map +1 -1
- package/dist/ChannelSchema.js +45 -6
- package/dist/ChannelSchema.js.map +1 -1
- package/dist/Chunk.d.ts +574 -428
- package/dist/Chunk.d.ts.map +1 -1
- package/dist/Chunk.js +250 -191
- package/dist/Chunk.js.map +1 -1
- package/dist/Clock.d.ts +16 -9
- package/dist/Clock.d.ts.map +1 -1
- package/dist/Clock.js +9 -5
- package/dist/Clock.js.map +1 -1
- package/dist/Combiner.d.ts +11 -5
- package/dist/Combiner.d.ts.map +1 -1
- package/dist/Combiner.js +10 -4
- package/dist/Combiner.js.map +1 -1
- package/dist/Config.d.ts +80 -68
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js +53 -49
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.d.ts +33 -32
- package/dist/ConfigProvider.d.ts.map +1 -1
- package/dist/ConfigProvider.js +19 -18
- package/dist/ConfigProvider.js.map +1 -1
- package/dist/Console.d.ts +76 -50
- package/dist/Console.d.ts.map +1 -1
- package/dist/Console.js +69 -46
- package/dist/Console.js.map +1 -1
- package/dist/Context.d.ts +400 -189
- package/dist/Context.d.ts.map +1 -1
- package/dist/Context.js +143 -77
- package/dist/Context.js.map +1 -1
- package/dist/Cron.d.ts +67 -48
- package/dist/Cron.d.ts.map +1 -1
- package/dist/Cron.js +94 -36
- package/dist/Cron.js.map +1 -1
- package/dist/Crypto.d.ts +208 -0
- package/dist/Crypto.d.ts.map +1 -0
- package/dist/Crypto.js +157 -0
- package/dist/Crypto.js.map +1 -0
- package/dist/Data.d.ts +9 -3
- package/dist/Data.d.ts.map +1 -1
- package/dist/Data.js.map +1 -1
- package/dist/DateTime.d.ts +893 -464
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/DateTime.js +387 -228
- package/dist/DateTime.js.map +1 -1
- package/dist/Deferred.d.ts +367 -175
- package/dist/Deferred.d.ts.map +1 -1
- package/dist/Deferred.js +146 -72
- package/dist/Deferred.js.map +1 -1
- package/dist/Differ.d.ts +44 -2
- package/dist/Differ.d.ts.map +1 -1
- package/dist/Differ.js +36 -0
- package/dist/Duration.d.ts +333 -186
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +178 -107
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +2181 -2275
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +935 -850
- package/dist/Effect.js.map +1 -1
- package/dist/Effectable.d.ts +38 -3
- package/dist/Effectable.d.ts.map +1 -1
- package/dist/Effectable.js +3 -3
- package/dist/Effectable.js.map +1 -1
- package/dist/Encoding.d.ts +78 -28
- package/dist/Encoding.d.ts.map +1 -1
- package/dist/Encoding.js +75 -27
- package/dist/Encoding.js.map +1 -1
- package/dist/Equal.d.ts +4 -3
- package/dist/Equal.d.ts.map +1 -1
- package/dist/Equal.js +4 -3
- package/dist/Equal.js.map +1 -1
- package/dist/Equivalence.d.ts +18 -24
- package/dist/Equivalence.d.ts.map +1 -1
- package/dist/Equivalence.js +16 -21
- package/dist/Equivalence.js.map +1 -1
- package/dist/ErrorReporter.d.ts +66 -82
- package/dist/ErrorReporter.d.ts.map +1 -1
- package/dist/ErrorReporter.js +38 -29
- package/dist/ErrorReporter.js.map +1 -1
- package/dist/ExecutionPlan.d.ts +106 -12
- package/dist/ExecutionPlan.d.ts.map +1 -1
- package/dist/ExecutionPlan.js +23 -6
- package/dist/ExecutionPlan.js.map +1 -1
- package/dist/Exit.d.ts +6 -5
- package/dist/Exit.d.ts.map +1 -1
- package/dist/Exit.js.map +1 -1
- package/dist/Fiber.d.ts +71 -40
- package/dist/Fiber.d.ts.map +1 -1
- package/dist/Fiber.js +39 -21
- package/dist/Fiber.js.map +1 -1
- package/dist/FiberHandle.d.ts +118 -57
- package/dist/FiberHandle.d.ts.map +1 -1
- package/dist/FiberHandle.js +121 -39
- package/dist/FiberHandle.js.map +1 -1
- package/dist/FiberMap.d.ts +287 -159
- package/dist/FiberMap.d.ts.map +1 -1
- package/dist/FiberMap.js +175 -73
- package/dist/FiberMap.js.map +1 -1
- package/dist/FiberSet.d.ts +93 -52
- package/dist/FiberSet.d.ts.map +1 -1
- package/dist/FiberSet.js +97 -34
- package/dist/FiberSet.js.map +1 -1
- package/dist/FileSystem.d.ts +102 -73
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js +53 -39
- package/dist/FileSystem.js.map +1 -1
- package/dist/Filter.d.ts +166 -88
- package/dist/Filter.d.ts.map +1 -1
- package/dist/Filter.js +68 -42
- package/dist/Filter.js.map +1 -1
- package/dist/Formatter.d.ts +4 -2
- package/dist/Formatter.d.ts.map +1 -1
- package/dist/Formatter.js +3 -69
- package/dist/Formatter.js.map +1 -1
- package/dist/Function.d.ts +218 -151
- package/dist/Function.d.ts.map +1 -1
- package/dist/Function.js +94 -78
- package/dist/Function.js.map +1 -1
- package/dist/Graph.d.ts +714 -415
- package/dist/Graph.d.ts.map +1 -1
- package/dist/Graph.js +325 -182
- package/dist/Graph.js.map +1 -1
- package/dist/HKT.d.ts +29 -13
- package/dist/HKT.d.ts.map +1 -1
- package/dist/Hash.d.ts +35 -24
- package/dist/Hash.d.ts.map +1 -1
- package/dist/Hash.js +27 -17
- package/dist/Hash.js.map +1 -1
- package/dist/HashMap.d.ts +540 -388
- package/dist/HashMap.d.ts.map +1 -1
- package/dist/HashMap.js +262 -156
- package/dist/HashMap.js.map +1 -1
- package/dist/HashRing.d.ts +53 -34
- package/dist/HashRing.d.ts.map +1 -1
- package/dist/HashRing.js +83 -16
- package/dist/HashRing.js.map +1 -1
- package/dist/HashSet.d.ts +239 -153
- package/dist/HashSet.d.ts.map +1 -1
- package/dist/HashSet.js +110 -56
- package/dist/HashSet.js.map +1 -1
- package/dist/Inspectable.d.ts +26 -13
- package/dist/Inspectable.d.ts.map +1 -1
- package/dist/Inspectable.js +22 -10
- package/dist/Inspectable.js.map +1 -1
- package/dist/Iterable.d.ts +336 -222
- package/dist/Iterable.d.ts.map +1 -1
- package/dist/Iterable.js +146 -100
- package/dist/Iterable.js.map +1 -1
- package/dist/JsonPatch.d.ts +12 -9
- package/dist/JsonPatch.d.ts.map +1 -1
- package/dist/JsonPatch.js +9 -6
- package/dist/JsonPatch.js.map +1 -1
- package/dist/JsonPointer.d.ts +13 -11
- package/dist/JsonPointer.d.ts.map +1 -1
- package/dist/JsonPointer.js +13 -11
- 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 +10 -0
- package/dist/JsonSchema.js.map +1 -1
- package/dist/Latch.d.ts +97 -26
- package/dist/Latch.d.ts.map +1 -1
- package/dist/Latch.js +39 -20
- package/dist/Latch.js.map +1 -1
- package/dist/Layer.d.ts +472 -410
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js +290 -226
- package/dist/Layer.js.map +1 -1
- package/dist/LayerMap.d.ts +99 -26
- package/dist/LayerMap.d.ts.map +1 -1
- package/dist/LayerMap.js +58 -14
- package/dist/LayerMap.js.map +1 -1
- package/dist/LogLevel.d.ts +92 -131
- package/dist/LogLevel.d.ts.map +1 -1
- package/dist/LogLevel.js +25 -15
- package/dist/LogLevel.js.map +1 -1
- package/dist/Logger.d.ts +159 -104
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js +215 -189
- package/dist/Logger.js.map +1 -1
- package/dist/ManagedRuntime.d.ts +78 -19
- package/dist/ManagedRuntime.d.ts.map +1 -1
- package/dist/ManagedRuntime.js +24 -17
- package/dist/ManagedRuntime.js.map +1 -1
- package/dist/Match.d.ts +135 -161
- package/dist/Match.d.ts.map +1 -1
- package/dist/Match.js +86 -78
- package/dist/Match.js.map +1 -1
- package/dist/Metric.d.ts +330 -291
- package/dist/Metric.d.ts.map +1 -1
- package/dist/Metric.js +219 -214
- package/dist/Metric.js.map +1 -1
- package/dist/MutableHashMap.d.ts +146 -87
- package/dist/MutableHashMap.d.ts.map +1 -1
- package/dist/MutableHashMap.js +67 -43
- package/dist/MutableHashMap.js.map +1 -1
- package/dist/MutableHashSet.d.ts +52 -30
- package/dist/MutableHashSet.d.ts.map +1 -1
- package/dist/MutableHashSet.js +92 -38
- package/dist/MutableHashSet.js.map +1 -1
- package/dist/MutableList.d.ts +110 -68
- package/dist/MutableList.d.ts.map +1 -1
- package/dist/MutableList.js +135 -85
- package/dist/MutableList.js.map +1 -1
- package/dist/MutableRef.d.ts +99 -62
- package/dist/MutableRef.d.ts.map +1 -1
- package/dist/MutableRef.js +78 -60
- package/dist/MutableRef.js.map +1 -1
- package/dist/Newtype.d.ts +15 -2
- package/dist/Newtype.d.ts.map +1 -1
- package/dist/Newtype.js +8 -2
- package/dist/Newtype.js.map +1 -1
- package/dist/NonEmptyIterable.d.ts +38 -48
- package/dist/NonEmptyIterable.d.ts.map +1 -1
- package/dist/NonEmptyIterable.js +34 -25
- package/dist/NonEmptyIterable.js.map +1 -1
- package/dist/Number.d.ts +261 -205
- package/dist/Number.d.ts.map +1 -1
- package/dist/Number.js +119 -91
- package/dist/Number.js.map +1 -1
- package/dist/Optic.d.ts +6 -7
- package/dist/Optic.d.ts.map +1 -1
- package/dist/Optic.js +5 -6
- package/dist/Optic.js.map +1 -1
- package/dist/Option.d.ts +133 -156
- package/dist/Option.d.ts.map +1 -1
- package/dist/Option.js +64 -64
- package/dist/Option.js.map +1 -1
- package/dist/Order.d.ts +6 -6
- package/dist/Order.js +6 -6
- package/dist/Ordering.d.ts +56 -45
- package/dist/Ordering.d.ts.map +1 -1
- package/dist/Ordering.js +10 -8
- package/dist/Ordering.js.map +1 -1
- package/dist/PartitionedSemaphore.d.ts +225 -40
- package/dist/PartitionedSemaphore.d.ts.map +1 -1
- package/dist/PartitionedSemaphore.js +113 -17
- package/dist/PartitionedSemaphore.js.map +1 -1
- package/dist/Path.d.ts +77 -13
- package/dist/Path.d.ts.map +1 -1
- package/dist/Path.js +49 -4
- package/dist/Path.js.map +1 -1
- package/dist/Pipeable.d.ts +77 -18
- package/dist/Pipeable.d.ts.map +1 -1
- package/dist/Pipeable.js +63 -14
- package/dist/Pipeable.js.map +1 -1
- package/dist/PlatformError.d.ts +74 -6
- package/dist/PlatformError.d.ts.map +1 -1
- package/dist/PlatformError.js +68 -5
- package/dist/PlatformError.js.map +1 -1
- package/dist/Pool.d.ts +66 -31
- package/dist/Pool.d.ts.map +1 -1
- package/dist/Pool.js +26 -24
- package/dist/Pool.js.map +1 -1
- package/dist/Predicate.d.ts +16 -23
- package/dist/Predicate.d.ts.map +1 -1
- package/dist/Predicate.js +12 -17
- package/dist/Predicate.js.map +1 -1
- package/dist/PrimaryKey.d.ts +11 -3
- package/dist/PrimaryKey.d.ts.map +1 -1
- package/dist/PrimaryKey.js +9 -2
- package/dist/PrimaryKey.js.map +1 -1
- package/dist/PubSub.d.ts +385 -309
- package/dist/PubSub.d.ts.map +1 -1
- package/dist/PubSub.js +260 -207
- package/dist/PubSub.js.map +1 -1
- package/dist/Pull.d.ts +94 -25
- package/dist/Pull.d.ts.map +1 -1
- package/dist/Pull.js +61 -13
- package/dist/Pull.js.map +1 -1
- package/dist/Queue.d.ts +303 -184
- package/dist/Queue.d.ts.map +1 -1
- package/dist/Queue.js +231 -134
- package/dist/Queue.js.map +1 -1
- package/dist/Random.d.ts +65 -57
- package/dist/Random.d.ts.map +1 -1
- package/dist/Random.js +41 -66
- package/dist/Random.js.map +1 -1
- package/dist/RcMap.d.ts +151 -141
- package/dist/RcMap.d.ts.map +1 -1
- package/dist/RcMap.js +66 -20
- package/dist/RcMap.js.map +1 -1
- package/dist/RcRef.d.ts +68 -32
- package/dist/RcRef.d.ts.map +1 -1
- package/dist/RcRef.js +33 -16
- package/dist/RcRef.js.map +1 -1
- package/dist/Record.d.ts +282 -137
- package/dist/Record.d.ts.map +1 -1
- package/dist/Record.js +124 -62
- package/dist/Record.js.map +1 -1
- package/dist/Redactable.d.ts +7 -5
- package/dist/Redactable.d.ts.map +1 -1
- package/dist/Redactable.js +5 -3
- package/dist/Redactable.js.map +1 -1
- package/dist/Redacted.d.ts +63 -34
- package/dist/Redacted.d.ts.map +1 -1
- package/dist/Redacted.js +31 -15
- package/dist/Redacted.js.map +1 -1
- package/dist/Reducer.d.ts +3 -1
- package/dist/Reducer.d.ts.map +1 -1
- package/dist/Reducer.js +2 -0
- package/dist/Reducer.js.map +1 -1
- package/dist/Ref.d.ts +85 -66
- package/dist/Ref.d.ts.map +1 -1
- package/dist/Ref.js +57 -45
- package/dist/Ref.js.map +1 -1
- package/dist/References.d.ts +73 -31
- package/dist/References.d.ts.map +1 -1
- package/dist/References.js +66 -30
- package/dist/References.js.map +1 -1
- package/dist/RegExp.d.ts +12 -6
- package/dist/RegExp.d.ts.map +1 -1
- package/dist/RegExp.js +12 -6
- package/dist/RegExp.js.map +1 -1
- package/dist/Request.d.ts +159 -34
- package/dist/Request.d.ts.map +1 -1
- package/dist/Request.js +68 -12
- package/dist/Request.js.map +1 -1
- package/dist/RequestResolver.d.ts +262 -118
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +78 -42
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Resource.d.ts +13 -7
- package/dist/Resource.d.ts.map +1 -1
- package/dist/Resource.js +44 -6
- package/dist/Resource.js.map +1 -1
- package/dist/Result.d.ts +135 -151
- package/dist/Result.d.ts.map +1 -1
- package/dist/Result.js +56 -68
- package/dist/Result.js.map +1 -1
- package/dist/Runtime.d.ts +40 -20
- package/dist/Runtime.d.ts.map +1 -1
- package/dist/Runtime.js +34 -17
- package/dist/Runtime.js.map +1 -1
- package/dist/Schedule.d.ts +556 -590
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +265 -253
- package/dist/Schedule.js.map +1 -1
- package/dist/Scheduler.d.ts +44 -7
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js +34 -5
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +1293 -602
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +501 -361
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +122 -92
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +102 -77
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaGetter.d.ts +49 -36
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +42 -29
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaIssue.d.ts +19 -24
- package/dist/SchemaIssue.d.ts.map +1 -1
- package/dist/SchemaIssue.js +16 -14
- package/dist/SchemaIssue.js.map +1 -1
- package/dist/SchemaParser.d.ts +231 -63
- package/dist/SchemaParser.d.ts.map +1 -1
- package/dist/SchemaParser.js +266 -75
- package/dist/SchemaParser.js.map +1 -1
- package/dist/SchemaRepresentation.d.ts +89 -77
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +47 -37
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +97 -46
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +89 -38
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/SchemaUtils.d.ts +8 -1
- package/dist/SchemaUtils.d.ts.map +1 -1
- package/dist/SchemaUtils.js +24 -1
- package/dist/SchemaUtils.js.map +1 -1
- package/dist/Scope.d.ts +107 -65
- package/dist/Scope.d.ts.map +1 -1
- package/dist/Scope.js +61 -32
- package/dist/Scope.js.map +1 -1
- package/dist/ScopedCache.d.ts +141 -49
- package/dist/ScopedCache.d.ts.map +1 -1
- package/dist/ScopedCache.js +82 -21
- package/dist/ScopedCache.js.map +1 -1
- package/dist/ScopedRef.d.ts +28 -8
- package/dist/ScopedRef.d.ts.map +1 -1
- package/dist/ScopedRef.js +25 -5
- package/dist/ScopedRef.js.map +1 -1
- package/dist/Semaphore.d.ts +61 -37
- package/dist/Semaphore.d.ts.map +1 -1
- package/dist/Semaphore.js +18 -21
- package/dist/Semaphore.js.map +1 -1
- package/dist/Sink.d.ts +461 -206
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js +241 -90
- package/dist/Sink.js.map +1 -1
- package/dist/Stdio.d.ts +43 -6
- package/dist/Stdio.d.ts.map +1 -1
- package/dist/Stdio.js +33 -4
- package/dist/Stdio.js.map +1 -1
- package/dist/Stream.d.ts +2117 -1541
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +951 -682
- package/dist/Stream.js.map +1 -1
- package/dist/String.d.ts +174 -97
- package/dist/String.d.ts.map +1 -1
- package/dist/String.js +128 -69
- package/dist/String.js.map +1 -1
- package/dist/Struct.d.ts +20 -18
- package/dist/Struct.d.ts.map +1 -1
- package/dist/Struct.js +10 -8
- package/dist/Struct.js.map +1 -1
- package/dist/SubscriptionRef.d.ts +309 -204
- package/dist/SubscriptionRef.d.ts.map +1 -1
- package/dist/SubscriptionRef.js +126 -77
- package/dist/SubscriptionRef.js.map +1 -1
- package/dist/Symbol.d.ts +13 -5
- package/dist/Symbol.d.ts.map +1 -1
- package/dist/Symbol.js +13 -5
- package/dist/Symbol.js.map +1 -1
- package/dist/SynchronizedRef.d.ts +278 -62
- package/dist/SynchronizedRef.d.ts.map +1 -1
- package/dist/SynchronizedRef.js +116 -23
- package/dist/SynchronizedRef.js.map +1 -1
- package/dist/Take.d.ts +26 -2
- package/dist/Take.d.ts.map +1 -1
- package/dist/Take.js +4 -1
- package/dist/Take.js.map +1 -1
- package/dist/Terminal.d.ts +39 -7
- package/dist/Terminal.d.ts.map +1 -1
- package/dist/Terminal.js +10 -4
- package/dist/Terminal.js.map +1 -1
- package/dist/Tracer.d.ts +233 -59
- package/dist/Tracer.d.ts.map +1 -1
- package/dist/Tracer.js +94 -18
- package/dist/Tracer.js.map +1 -1
- package/dist/Trie.d.ts +280 -245
- package/dist/Trie.d.ts.map +1 -1
- package/dist/Trie.js +116 -102
- package/dist/Trie.js.map +1 -1
- package/dist/Tuple.d.ts +34 -32
- package/dist/Tuple.d.ts.map +1 -1
- package/dist/Tuple.js +16 -14
- package/dist/Tuple.js.map +1 -1
- package/dist/TxChunk.d.ts +200 -155
- package/dist/TxChunk.d.ts.map +1 -1
- package/dist/TxChunk.js +83 -61
- package/dist/TxChunk.js.map +1 -1
- package/dist/TxDeferred.d.ts +43 -29
- package/dist/TxDeferred.d.ts.map +1 -1
- package/dist/TxDeferred.js +22 -15
- package/dist/TxDeferred.js.map +1 -1
- package/dist/TxHashMap.d.ts +362 -223
- package/dist/TxHashMap.d.ts.map +1 -1
- package/dist/TxHashMap.js +171 -98
- package/dist/TxHashMap.js.map +1 -1
- package/dist/TxHashSet.d.ts +181 -111
- package/dist/TxHashSet.d.ts.map +1 -1
- package/dist/TxHashSet.js +87 -49
- package/dist/TxHashSet.js.map +1 -1
- package/dist/TxPriorityQueue.d.ts +94 -63
- package/dist/TxPriorityQueue.d.ts.map +1 -1
- package/dist/TxPriorityQueue.js +55 -37
- package/dist/TxPriorityQueue.js.map +1 -1
- package/dist/TxPubSub.d.ts +77 -49
- package/dist/TxPubSub.d.ts.map +1 -1
- package/dist/TxPubSub.js +60 -37
- package/dist/TxPubSub.js.map +1 -1
- package/dist/TxQueue.d.ts +277 -242
- package/dist/TxQueue.d.ts.map +1 -1
- package/dist/TxQueue.js +147 -101
- package/dist/TxQueue.js.map +1 -1
- package/dist/TxReentrantLock.d.ts +69 -46
- package/dist/TxReentrantLock.d.ts.map +1 -1
- package/dist/TxReentrantLock.js +48 -32
- package/dist/TxReentrantLock.js.map +1 -1
- package/dist/TxRef.d.ts +69 -40
- package/dist/TxRef.d.ts.map +1 -1
- package/dist/TxRef.js +34 -19
- package/dist/TxRef.js.map +1 -1
- package/dist/TxSemaphore.d.ts +101 -115
- package/dist/TxSemaphore.d.ts.map +1 -1
- package/dist/TxSemaphore.js +76 -77
- package/dist/TxSemaphore.js.map +1 -1
- package/dist/TxSubscriptionRef.d.ts +74 -50
- package/dist/TxSubscriptionRef.d.ts.map +1 -1
- package/dist/TxSubscriptionRef.js +34 -23
- package/dist/TxSubscriptionRef.js.map +1 -1
- package/dist/Types.d.ts +31 -34
- package/dist/Types.d.ts.map +1 -1
- package/dist/UndefinedOr.d.ts +62 -25
- package/dist/UndefinedOr.d.ts.map +1 -1
- package/dist/UndefinedOr.js +36 -25
- package/dist/UndefinedOr.js.map +1 -1
- package/dist/Unify.d.ts +72 -117
- package/dist/Unify.d.ts.map +1 -1
- package/dist/Unify.js +20 -6
- package/dist/Unify.js.map +1 -1
- package/dist/Utils.d.ts +5 -2
- package/dist/Utils.d.ts.map +1 -1
- package/dist/Utils.js +4 -0
- package/dist/Utils.js.map +1 -1
- package/dist/index.d.ts +1973 -418
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1973 -418
- package/dist/index.js.map +1 -1
- package/dist/internal/schema/schema.js +1 -1
- package/dist/internal/schema/schema.js.map +1 -1
- package/dist/testing/FastCheck.d.ts +9 -6
- package/dist/testing/FastCheck.d.ts.map +1 -1
- package/dist/testing/FastCheck.js +9 -6
- package/dist/testing/FastCheck.js.map +1 -1
- package/dist/testing/TestClock.d.ts +39 -35
- package/dist/testing/TestClock.d.ts.map +1 -1
- package/dist/testing/TestClock.js +42 -12
- package/dist/testing/TestClock.js.map +1 -1
- package/dist/testing/TestConsole.d.ts +44 -36
- package/dist/testing/TestConsole.d.ts.map +1 -1
- package/dist/testing/TestConsole.js +30 -15
- package/dist/testing/TestConsole.js.map +1 -1
- package/dist/testing/TestSchema.d.ts +2 -0
- package/dist/testing/TestSchema.d.ts.map +1 -1
- package/dist/testing/TestSchema.js +9 -7
- package/dist/testing/TestSchema.js.map +1 -1
- package/dist/testing/index.d.ts +34 -0
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +34 -0
- package/dist/testing/index.js.map +1 -1
- package/dist/unstable/ai/AiError.d.ts +205 -147
- package/dist/unstable/ai/AiError.d.ts.map +1 -1
- package/dist/unstable/ai/AiError.js +164 -109
- package/dist/unstable/ai/AiError.js.map +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.js +2 -2
- package/dist/unstable/ai/Chat.d.ts +64 -41
- package/dist/unstable/ai/Chat.d.ts.map +1 -1
- package/dist/unstable/ai/Chat.js +51 -33
- package/dist/unstable/ai/Chat.js.map +1 -1
- package/dist/unstable/ai/EmbeddingModel.d.ts +12 -11
- package/dist/unstable/ai/EmbeddingModel.d.ts.map +1 -1
- package/dist/unstable/ai/EmbeddingModel.js +9 -8
- package/dist/unstable/ai/EmbeddingModel.js.map +1 -1
- package/dist/unstable/ai/IdGenerator.d.ts +28 -18
- package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
- package/dist/unstable/ai/IdGenerator.js +18 -11
- package/dist/unstable/ai/IdGenerator.js.map +1 -1
- package/dist/unstable/ai/LanguageModel.d.ts +31 -25
- package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
- package/dist/unstable/ai/LanguageModel.js +20 -14
- package/dist/unstable/ai/LanguageModel.js.map +1 -1
- package/dist/unstable/ai/McpSchema.d.ts +342 -119
- package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
- package/dist/unstable/ai/McpSchema.js +266 -98
- package/dist/unstable/ai/McpSchema.js.map +1 -1
- package/dist/unstable/ai/McpServer.d.ts +56 -20
- package/dist/unstable/ai/McpServer.d.ts.map +1 -1
- package/dist/unstable/ai/McpServer.js +64 -16
- package/dist/unstable/ai/McpServer.js.map +1 -1
- package/dist/unstable/ai/Model.d.ts +10 -12
- package/dist/unstable/ai/Model.d.ts.map +1 -1
- package/dist/unstable/ai/Model.js +9 -7
- package/dist/unstable/ai/Model.js.map +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.js +2 -2
- package/dist/unstable/ai/Prompt.d.ts +200 -176
- package/dist/unstable/ai/Prompt.d.ts.map +1 -1
- package/dist/unstable/ai/Prompt.js +77 -68
- package/dist/unstable/ai/Prompt.js.map +1 -1
- package/dist/unstable/ai/Response.d.ts +173 -160
- package/dist/unstable/ai/Response.d.ts.map +1 -1
- package/dist/unstable/ai/Response.js +43 -48
- package/dist/unstable/ai/Response.js.map +1 -1
- package/dist/unstable/ai/ResponseIdTracker.d.ts +43 -4
- package/dist/unstable/ai/ResponseIdTracker.d.ts.map +1 -1
- package/dist/unstable/ai/ResponseIdTracker.js +27 -2
- package/dist/unstable/ai/ResponseIdTracker.js.map +1 -1
- package/dist/unstable/ai/Telemetry.d.ts +43 -33
- package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
- package/dist/unstable/ai/Telemetry.js +15 -11
- package/dist/unstable/ai/Telemetry.js.map +1 -1
- package/dist/unstable/ai/Tokenizer.d.ts +14 -9
- package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
- package/dist/unstable/ai/Tokenizer.js +10 -6
- package/dist/unstable/ai/Tokenizer.js.map +1 -1
- package/dist/unstable/ai/Tool.d.ts +167 -96
- package/dist/unstable/ai/Tool.d.ts.map +1 -1
- package/dist/unstable/ai/Tool.js +107 -53
- package/dist/unstable/ai/Tool.js.map +1 -1
- package/dist/unstable/ai/Toolkit.d.ts +32 -39
- package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
- package/dist/unstable/ai/Toolkit.js +7 -5
- package/dist/unstable/ai/Toolkit.js.map +1 -1
- package/dist/unstable/ai/index.d.ts +121 -29
- package/dist/unstable/ai/index.d.ts.map +1 -1
- package/dist/unstable/ai/index.js +121 -29
- package/dist/unstable/ai/index.js.map +1 -1
- package/dist/unstable/cli/Argument.d.ts +226 -134
- package/dist/unstable/cli/Argument.d.ts.map +1 -1
- package/dist/unstable/cli/Argument.js +101 -65
- package/dist/unstable/cli/Argument.js.map +1 -1
- package/dist/unstable/cli/CliError.d.ts +72 -26
- package/dist/unstable/cli/CliError.d.ts.map +1 -1
- package/dist/unstable/cli/CliError.js +86 -23
- package/dist/unstable/cli/CliError.js.map +1 -1
- package/dist/unstable/cli/CliOutput.d.ts +48 -19
- package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
- package/dist/unstable/cli/CliOutput.js +32 -9
- package/dist/unstable/cli/CliOutput.js.map +1 -1
- package/dist/unstable/cli/Command.d.ts +196 -115
- package/dist/unstable/cli/Command.d.ts.map +1 -1
- package/dist/unstable/cli/Command.js +45 -31
- package/dist/unstable/cli/Command.js.map +1 -1
- package/dist/unstable/cli/Completions.d.ts +7 -7
- package/dist/unstable/cli/Completions.js +1 -1
- package/dist/unstable/cli/Flag.d.ts +235 -142
- package/dist/unstable/cli/Flag.d.ts.map +1 -1
- package/dist/unstable/cli/Flag.js +111 -71
- package/dist/unstable/cli/Flag.js.map +1 -1
- package/dist/unstable/cli/GlobalFlag.d.ts +41 -13
- package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -1
- package/dist/unstable/cli/GlobalFlag.js +30 -7
- package/dist/unstable/cli/GlobalFlag.js.map +1 -1
- package/dist/unstable/cli/HelpDoc.d.ts +39 -14
- package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
- package/dist/unstable/cli/HelpDoc.js +21 -0
- package/dist/unstable/cli/Param.d.ts +110 -32
- package/dist/unstable/cli/Param.d.ts.map +1 -1
- package/dist/unstable/cli/Param.js +196 -135
- package/dist/unstable/cli/Param.js.map +1 -1
- package/dist/unstable/cli/Primitive.d.ts +79 -42
- package/dist/unstable/cli/Primitive.d.ts.map +1 -1
- package/dist/unstable/cli/Primitive.js +66 -35
- package/dist/unstable/cli/Primitive.js.map +1 -1
- package/dist/unstable/cli/Prompt.d.ts +183 -59
- package/dist/unstable/cli/Prompt.d.ts.map +1 -1
- package/dist/unstable/cli/Prompt.js +105 -23
- package/dist/unstable/cli/Prompt.js.map +1 -1
- package/dist/unstable/cli/index.d.ts +182 -0
- package/dist/unstable/cli/index.d.ts.map +1 -1
- package/dist/unstable/cli/index.js +205 -6
- package/dist/unstable/cli/index.js.map +1 -1
- package/dist/unstable/cli/internal/ansi.d.ts.map +1 -1
- package/dist/unstable/cli/internal/ansi.js +13 -0
- package/dist/unstable/cli/internal/ansi.js.map +1 -1
- package/dist/unstable/cli/internal/command.d.ts +5 -1
- package/dist/unstable/cli/internal/command.d.ts.map +1 -1
- package/dist/unstable/cli/internal/command.js +5 -1
- package/dist/unstable/cli/internal/command.js.map +1 -1
- package/dist/unstable/cli/internal/config.d.ts +3 -0
- package/dist/unstable/cli/internal/config.d.ts.map +1 -1
- package/dist/unstable/cli/internal/config.js.map +1 -1
- package/dist/unstable/cli/internal/lexer.js.map +1 -1
- package/dist/unstable/cli/internal/parser.js +0 -1
- package/dist/unstable/cli/internal/parser.js.map +1 -1
- package/dist/unstable/cluster/ClusterCron.d.ts +35 -1
- package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterCron.js +35 -1
- package/dist/unstable/cluster/ClusterCron.js.map +1 -1
- package/dist/unstable/cluster/ClusterError.d.ts +56 -7
- package/dist/unstable/cluster/ClusterError.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterError.js +56 -7
- package/dist/unstable/cluster/ClusterError.js.map +1 -1
- package/dist/unstable/cluster/ClusterMetrics.d.ts +39 -5
- package/dist/unstable/cluster/ClusterMetrics.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterMetrics.js +39 -5
- package/dist/unstable/cluster/ClusterMetrics.js.map +1 -1
- package/dist/unstable/cluster/ClusterSchema.d.ts +61 -8
- package/dist/unstable/cluster/ClusterSchema.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterSchema.js +61 -8
- package/dist/unstable/cluster/ClusterSchema.js.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts +14 -2
- package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.js +35 -2
- package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/unstable/cluster/DeliverAt.d.ts +39 -4
- package/dist/unstable/cluster/DeliverAt.d.ts.map +1 -1
- package/dist/unstable/cluster/DeliverAt.js +11 -3
- package/dist/unstable/cluster/DeliverAt.js.map +1 -1
- package/dist/unstable/cluster/Entity.d.ts +74 -16
- package/dist/unstable/cluster/Entity.d.ts.map +1 -1
- package/dist/unstable/cluster/Entity.js +75 -10
- package/dist/unstable/cluster/Entity.js.map +1 -1
- package/dist/unstable/cluster/EntityAddress.d.ts +30 -2
- package/dist/unstable/cluster/EntityAddress.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityAddress.js +30 -2
- package/dist/unstable/cluster/EntityAddress.js.map +1 -1
- package/dist/unstable/cluster/EntityId.d.ts +18 -3
- package/dist/unstable/cluster/EntityId.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityId.js +15 -2
- package/dist/unstable/cluster/EntityId.js.map +1 -1
- package/dist/unstable/cluster/EntityProxy.d.ts +42 -14
- package/dist/unstable/cluster/EntityProxy.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityProxy.js +30 -14
- package/dist/unstable/cluster/EntityProxy.js.map +1 -1
- package/dist/unstable/cluster/EntityProxyServer.d.ts +18 -2
- package/dist/unstable/cluster/EntityProxyServer.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityProxyServer.js +40 -8
- package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
- package/dist/unstable/cluster/EntityResource.d.ts +43 -6
- package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityResource.js +11 -4
- package/dist/unstable/cluster/EntityResource.js.map +1 -1
- package/dist/unstable/cluster/EntityType.d.ts +27 -3
- package/dist/unstable/cluster/EntityType.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityType.js +24 -2
- package/dist/unstable/cluster/EntityType.js.map +1 -1
- package/dist/unstable/cluster/Envelope.d.ts +105 -23
- package/dist/unstable/cluster/Envelope.d.ts.map +1 -1
- package/dist/unstable/cluster/Envelope.js +88 -14
- package/dist/unstable/cluster/Envelope.js.map +1 -1
- package/dist/unstable/cluster/HttpRunner.d.ts +88 -13
- package/dist/unstable/cluster/HttpRunner.d.ts.map +1 -1
- package/dist/unstable/cluster/HttpRunner.js +88 -13
- package/dist/unstable/cluster/HttpRunner.js.map +1 -1
- package/dist/unstable/cluster/K8sHttpClient.d.ts +49 -6
- package/dist/unstable/cluster/K8sHttpClient.d.ts.map +1 -1
- package/dist/unstable/cluster/K8sHttpClient.js +31 -6
- package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
- package/dist/unstable/cluster/MachineId.d.ts +24 -3
- package/dist/unstable/cluster/MachineId.d.ts.map +1 -1
- package/dist/unstable/cluster/MachineId.js +21 -2
- package/dist/unstable/cluster/MachineId.js.map +1 -1
- package/dist/unstable/cluster/Message.d.ts +102 -13
- package/dist/unstable/cluster/Message.d.ts.map +1 -1
- package/dist/unstable/cluster/Message.js +86 -10
- package/dist/unstable/cluster/Message.js.map +1 -1
- package/dist/unstable/cluster/MessageStorage.d.ts +126 -21
- package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/MessageStorage.js +70 -10
- package/dist/unstable/cluster/MessageStorage.js.map +1 -1
- package/dist/unstable/cluster/Reply.d.ts +101 -12
- package/dist/unstable/cluster/Reply.d.ts.map +1 -1
- package/dist/unstable/cluster/Reply.js +64 -8
- package/dist/unstable/cluster/Reply.js.map +1 -1
- package/dist/unstable/cluster/Runner.d.ts +47 -17
- package/dist/unstable/cluster/Runner.d.ts.map +1 -1
- package/dist/unstable/cluster/Runner.js +47 -17
- package/dist/unstable/cluster/Runner.js.map +1 -1
- package/dist/unstable/cluster/RunnerAddress.d.ts +34 -2
- package/dist/unstable/cluster/RunnerAddress.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerAddress.js +34 -2
- package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
- package/dist/unstable/cluster/RunnerHealth.d.ts +40 -12
- package/dist/unstable/cluster/RunnerHealth.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerHealth.js +40 -12
- package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
- package/dist/unstable/cluster/RunnerServer.d.ts +7 -4
- package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerServer.js +31 -4
- package/dist/unstable/cluster/RunnerServer.js.map +1 -1
- package/dist/unstable/cluster/RunnerStorage.d.ts +42 -5
- package/dist/unstable/cluster/RunnerStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerStorage.js +38 -4
- package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/Runners.d.ts +76 -13
- package/dist/unstable/cluster/Runners.d.ts.map +1 -1
- package/dist/unstable/cluster/Runners.js +73 -12
- package/dist/unstable/cluster/Runners.js.map +1 -1
- package/dist/unstable/cluster/ShardId.d.ts +53 -5
- package/dist/unstable/cluster/ShardId.d.ts.map +1 -1
- package/dist/unstable/cluster/ShardId.js +49 -4
- package/dist/unstable/cluster/ShardId.js.map +1 -1
- package/dist/unstable/cluster/Sharding.d.ts +10 -2
- package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
- package/dist/unstable/cluster/Sharding.js +35 -4
- package/dist/unstable/cluster/Sharding.js.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.d.ts +65 -9
- package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.js +66 -9
- package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
- package/dist/unstable/cluster/ShardingRegistrationEvent.d.ts +27 -6
- package/dist/unstable/cluster/ShardingRegistrationEvent.d.ts.map +1 -1
- package/dist/unstable/cluster/ShardingRegistrationEvent.js +28 -4
- package/dist/unstable/cluster/ShardingRegistrationEvent.js.map +1 -1
- package/dist/unstable/cluster/SingleRunner.d.ts +23 -1
- package/dist/unstable/cluster/SingleRunner.d.ts.map +1 -1
- package/dist/unstable/cluster/SingleRunner.js +23 -1
- package/dist/unstable/cluster/SingleRunner.js.map +1 -1
- package/dist/unstable/cluster/Singleton.d.ts +15 -1
- package/dist/unstable/cluster/Singleton.d.ts.map +1 -1
- package/dist/unstable/cluster/Singleton.js +15 -1
- package/dist/unstable/cluster/Singleton.js.map +1 -1
- package/dist/unstable/cluster/SingletonAddress.d.ts +21 -1
- package/dist/unstable/cluster/SingletonAddress.d.ts.map +1 -1
- package/dist/unstable/cluster/SingletonAddress.js +21 -1
- package/dist/unstable/cluster/SingletonAddress.js.map +1 -1
- package/dist/unstable/cluster/Snowflake.d.ts +90 -19
- package/dist/unstable/cluster/Snowflake.d.ts.map +1 -1
- package/dist/unstable/cluster/Snowflake.js +49 -13
- package/dist/unstable/cluster/Snowflake.js.map +1 -1
- package/dist/unstable/cluster/SocketRunner.d.ts +8 -2
- package/dist/unstable/cluster/SocketRunner.d.ts.map +1 -1
- package/dist/unstable/cluster/SocketRunner.js +29 -2
- package/dist/unstable/cluster/SocketRunner.js.map +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.d.ts +11 -3
- package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.js +27 -3
- package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
- package/dist/unstable/cluster/SqlRunnerStorage.d.ts +11 -3
- package/dist/unstable/cluster/SqlRunnerStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/SqlRunnerStorage.js +46 -7
- package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/TestRunner.d.ts +18 -1
- package/dist/unstable/cluster/TestRunner.d.ts.map +1 -1
- package/dist/unstable/cluster/TestRunner.js +18 -1
- package/dist/unstable/cluster/TestRunner.js.map +1 -1
- package/dist/unstable/cluster/index.d.ts +790 -0
- package/dist/unstable/cluster/index.d.ts.map +1 -1
- package/dist/unstable/cluster/index.js +790 -0
- package/dist/unstable/cluster/index.js.map +1 -1
- package/dist/unstable/cluster/internal/hash.js +12 -0
- package/dist/unstable/cluster/internal/hash.js.map +1 -1
- package/dist/unstable/devtools/DevTools.d.ts +26 -3
- package/dist/unstable/devtools/DevTools.d.ts.map +1 -1
- package/dist/unstable/devtools/DevTools.js +26 -3
- package/dist/unstable/devtools/DevTools.js.map +1 -1
- package/dist/unstable/devtools/DevToolsClient.d.ts +20 -5
- package/dist/unstable/devtools/DevToolsClient.d.ts.map +1 -1
- package/dist/unstable/devtools/DevToolsClient.js +32 -5
- package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
- package/dist/unstable/devtools/DevToolsSchema.d.ts +184 -44
- package/dist/unstable/devtools/DevToolsSchema.d.ts.map +1 -1
- package/dist/unstable/devtools/DevToolsSchema.js +102 -20
- package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
- package/dist/unstable/devtools/DevToolsServer.d.ts +27 -2
- package/dist/unstable/devtools/DevToolsServer.d.ts.map +1 -1
- package/dist/unstable/devtools/DevToolsServer.js +21 -1
- package/dist/unstable/devtools/DevToolsServer.js.map +1 -1
- package/dist/unstable/devtools/index.d.ts +58 -0
- package/dist/unstable/devtools/index.d.ts.map +1 -1
- package/dist/unstable/devtools/index.js +58 -0
- package/dist/unstable/devtools/index.js.map +1 -1
- package/dist/unstable/encoding/Msgpack.d.ts +81 -12
- package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
- package/dist/unstable/encoding/Msgpack.js +75 -9
- package/dist/unstable/encoding/Msgpack.js.map +1 -1
- package/dist/unstable/encoding/Ndjson.d.ts +149 -21
- package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
- package/dist/unstable/encoding/Ndjson.js +97 -13
- package/dist/unstable/encoding/Ndjson.js.map +1 -1
- package/dist/unstable/encoding/Sse.d.ts +109 -18
- package/dist/unstable/encoding/Sse.d.ts.map +1 -1
- package/dist/unstable/encoding/Sse.js +69 -13
- package/dist/unstable/encoding/Sse.js.map +1 -1
- package/dist/unstable/encoding/index.d.ts +49 -0
- package/dist/unstable/encoding/index.d.ts.map +1 -1
- package/dist/unstable/encoding/index.js +49 -0
- package/dist/unstable/encoding/index.js.map +1 -1
- package/dist/unstable/eventlog/Event.d.ts +115 -30
- package/dist/unstable/eventlog/Event.d.ts.map +1 -1
- package/dist/unstable/eventlog/Event.js +22 -2
- package/dist/unstable/eventlog/Event.js.map +1 -1
- package/dist/unstable/eventlog/EventGroup.d.ts +50 -17
- package/dist/unstable/eventlog/EventGroup.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventGroup.js +24 -6
- package/dist/unstable/eventlog/EventGroup.js.map +1 -1
- package/dist/unstable/eventlog/EventJournal.d.ts +104 -20
- package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventJournal.js +108 -16
- package/dist/unstable/eventlog/EventJournal.js.map +1 -1
- package/dist/unstable/eventlog/EventLog.d.ts +150 -31
- package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLog.js +111 -20
- package/dist/unstable/eventlog/EventLog.js.map +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.d.ts +42 -6
- package/dist/unstable/eventlog/EventLogEncryption.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.js +38 -5
- package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
- package/dist/unstable/eventlog/EventLogMessage.d.ts +92 -18
- package/dist/unstable/eventlog/EventLogMessage.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogMessage.js +72 -16
- package/dist/unstable/eventlog/EventLogMessage.js.map +1 -1
- package/dist/unstable/eventlog/EventLogRemote.d.ts +35 -8
- package/dist/unstable/eventlog/EventLogRemote.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogRemote.js +54 -8
- package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServer.d.ts +17 -3
- package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServer.js +17 -3
- package/dist/unstable/eventlog/EventLogServer.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +32 -6
- package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServerEncrypted.js +52 -6
- package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +74 -16
- package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServerUnencrypted.js +90 -16
- package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -1
- package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +59 -15
- package/dist/unstable/eventlog/EventLogSessionAuth.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogSessionAuth.js +73 -14
- package/dist/unstable/eventlog/EventLogSessionAuth.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventJournal.d.ts +10 -2
- package/dist/unstable/eventlog/SqlEventJournal.d.ts.map +1 -1
- package/dist/unstable/eventlog/SqlEventJournal.js +28 -2
- package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.d.ts +32 -3
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js +32 -3
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts +10 -2
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js +28 -2
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
- package/dist/unstable/eventlog/index.d.ts +240 -0
- package/dist/unstable/eventlog/index.d.ts.map +1 -1
- package/dist/unstable/eventlog/index.js +240 -0
- package/dist/unstable/eventlog/index.js.map +1 -1
- package/dist/unstable/http/Cookies.d.ts +156 -77
- package/dist/unstable/http/Cookies.d.ts.map +1 -1
- package/dist/unstable/http/Cookies.js +93 -39
- package/dist/unstable/http/Cookies.js.map +1 -1
- package/dist/unstable/http/Etag.d.ts +40 -7
- package/dist/unstable/http/Etag.d.ts.map +1 -1
- package/dist/unstable/http/Etag.js +27 -4
- package/dist/unstable/http/Etag.js.map +1 -1
- package/dist/unstable/http/FetchHttpClient.d.ts +29 -3
- package/dist/unstable/http/FetchHttpClient.d.ts.map +1 -1
- package/dist/unstable/http/FetchHttpClient.js +33 -4
- package/dist/unstable/http/FetchHttpClient.js.map +1 -1
- package/dist/unstable/http/FindMyWay.d.ts +1 -1
- package/dist/unstable/http/FindMyWay.js +1 -1
- package/dist/unstable/http/Headers.d.ts +182 -36
- package/dist/unstable/http/Headers.d.ts.map +1 -1
- package/dist/unstable/http/Headers.js +86 -16
- package/dist/unstable/http/Headers.js.map +1 -1
- package/dist/unstable/http/HttpBody.d.ts +114 -26
- package/dist/unstable/http/HttpBody.d.ts.map +1 -1
- package/dist/unstable/http/HttpBody.js +98 -20
- package/dist/unstable/http/HttpBody.js.map +1 -1
- package/dist/unstable/http/HttpClient.d.ts +204 -96
- package/dist/unstable/http/HttpClient.d.ts.map +1 -1
- package/dist/unstable/http/HttpClient.js +85 -38
- package/dist/unstable/http/HttpClient.js.map +1 -1
- package/dist/unstable/http/HttpClientError.d.ts +68 -12
- package/dist/unstable/http/HttpClientError.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientError.js +71 -9
- package/dist/unstable/http/HttpClientError.js.map +1 -1
- package/dist/unstable/http/HttpClientRequest.d.ts +318 -100
- package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientRequest.js +151 -45
- package/dist/unstable/http/HttpClientRequest.js.map +1 -1
- package/dist/unstable/http/HttpClientResponse.d.ts +59 -16
- package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientResponse.js +44 -11
- package/dist/unstable/http/HttpClientResponse.js.map +1 -1
- package/dist/unstable/http/HttpEffect.d.ts +42 -16
- package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
- package/dist/unstable/http/HttpEffect.js +33 -13
- package/dist/unstable/http/HttpEffect.js.map +1 -1
- package/dist/unstable/http/HttpIncomingMessage.d.ts +48 -7
- package/dist/unstable/http/HttpIncomingMessage.d.ts.map +1 -1
- package/dist/unstable/http/HttpIncomingMessage.js +45 -6
- package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
- package/dist/unstable/http/HttpMethod.d.ts +38 -6
- package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
- package/dist/unstable/http/HttpMethod.js +27 -2
- package/dist/unstable/http/HttpMethod.js.map +1 -1
- package/dist/unstable/http/HttpMiddleware.d.ts +38 -11
- package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/unstable/http/HttpMiddleware.js +52 -10
- package/dist/unstable/http/HttpMiddleware.js.map +1 -1
- package/dist/unstable/http/HttpPlatform.d.ts +34 -3
- package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
- package/dist/unstable/http/HttpPlatform.js +34 -3
- package/dist/unstable/http/HttpPlatform.js.map +1 -1
- package/dist/unstable/http/HttpRouter.d.ts +209 -62
- package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
- package/dist/unstable/http/HttpRouter.js +136 -41
- package/dist/unstable/http/HttpRouter.js.map +1 -1
- package/dist/unstable/http/HttpServer.d.ts +151 -22
- package/dist/unstable/http/HttpServer.d.ts.map +1 -1
- package/dist/unstable/http/HttpServer.js +76 -11
- package/dist/unstable/http/HttpServer.js.map +1 -1
- package/dist/unstable/http/HttpServerError.d.ts +93 -10
- package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerError.js +85 -8
- package/dist/unstable/http/HttpServerError.js.map +1 -1
- package/dist/unstable/http/HttpServerRequest.d.ts +125 -21
- package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerRequest.js +101 -20
- package/dist/unstable/http/HttpServerRequest.js.map +1 -1
- package/dist/unstable/http/HttpServerRespondable.d.ts +32 -6
- package/dist/unstable/http/HttpServerRespondable.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerRespondable.js +43 -5
- package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
- package/dist/unstable/http/HttpServerResponse.d.ts +391 -67
- package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerResponse.js +205 -33
- package/dist/unstable/http/HttpServerResponse.js.map +1 -1
- package/dist/unstable/http/HttpStaticServer.d.ts +24 -8
- package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -1
- package/dist/unstable/http/HttpStaticServer.js +24 -8
- package/dist/unstable/http/HttpStaticServer.js.map +1 -1
- package/dist/unstable/http/HttpTraceContext.d.ts +53 -6
- package/dist/unstable/http/HttpTraceContext.d.ts.map +1 -1
- package/dist/unstable/http/HttpTraceContext.js +47 -5
- package/dist/unstable/http/HttpTraceContext.js.map +1 -1
- package/dist/unstable/http/Multipart.d.ts +179 -28
- package/dist/unstable/http/Multipart.d.ts.map +1 -1
- package/dist/unstable/http/Multipart.js +131 -19
- package/dist/unstable/http/Multipart.js.map +1 -1
- package/dist/unstable/http/Multipasta/HeadersParser.d.ts +1 -1
- package/dist/unstable/http/Multipasta/HeadersParser.js +1 -1
- package/dist/unstable/http/Multipasta/Node.d.ts +1 -1
- package/dist/unstable/http/Multipasta/Node.js +1 -1
- package/dist/unstable/http/Multipasta/Search.d.ts +1 -1
- package/dist/unstable/http/Multipasta/Search.js +1 -1
- package/dist/unstable/http/Multipasta/Web.d.ts +1 -1
- package/dist/unstable/http/Multipasta/Web.js +1 -1
- package/dist/unstable/http/Multipasta.d.ts +1 -1
- package/dist/unstable/http/Multipasta.js +1 -1
- package/dist/unstable/http/Template.d.ts +53 -1
- package/dist/unstable/http/Template.d.ts.map +1 -1
- package/dist/unstable/http/Template.js +26 -0
- package/dist/unstable/http/Template.js.map +1 -1
- package/dist/unstable/http/Url.d.ts +70 -56
- package/dist/unstable/http/Url.d.ts.map +1 -1
- package/dist/unstable/http/Url.js +35 -21
- package/dist/unstable/http/Url.js.map +1 -1
- package/dist/unstable/http/UrlParams.d.ts +237 -51
- package/dist/unstable/http/UrlParams.d.ts.map +1 -1
- package/dist/unstable/http/UrlParams.js +120 -25
- package/dist/unstable/http/UrlParams.js.map +1 -1
- package/dist/unstable/http/index.d.ts +452 -0
- package/dist/unstable/http/index.d.ts.map +1 -1
- package/dist/unstable/http/index.js +452 -0
- package/dist/unstable/http/index.js.map +1 -1
- package/dist/unstable/httpapi/HttpApi.d.ts +49 -14
- package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApi.js +14 -8
- package/dist/unstable/httpapi/HttpApi.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts +54 -16
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.js +44 -6
- package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.d.ts +57 -15
- package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.js +42 -6
- package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +214 -59
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.js +53 -9
- package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.d.ts +81 -1
- package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.js +98 -1
- package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.d.ts +87 -20
- package/dist/unstable/httpapi/HttpApiGroup.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.js +5 -2
- package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +113 -22
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.js +49 -5
- package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiScalar.d.ts +19 -4
- package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiScalar.js +32 -2
- package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSchema.d.ts +86 -38
- package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiSchema.js +59 -35
- package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSecurity.d.ts +73 -17
- package/dist/unstable/httpapi/HttpApiSecurity.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiSecurity.js +38 -5
- package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSwagger.d.ts +4 -3
- package/dist/unstable/httpapi/HttpApiSwagger.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiSwagger.js +23 -3
- package/dist/unstable/httpapi/HttpApiSwagger.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiTest.d.ts +6 -1
- package/dist/unstable/httpapi/HttpApiTest.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiTest.js +26 -1
- package/dist/unstable/httpapi/HttpApiTest.js.map +1 -1
- package/dist/unstable/httpapi/OpenApi.d.ts +86 -15
- package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/OpenApi.js +73 -15
- package/dist/unstable/httpapi/OpenApi.js.map +1 -1
- package/dist/unstable/httpapi/index.d.ts +310 -25
- package/dist/unstable/httpapi/index.d.ts.map +1 -1
- package/dist/unstable/httpapi/index.js +310 -25
- package/dist/unstable/httpapi/index.js.map +1 -1
- package/dist/unstable/observability/Otlp.d.ts +33 -3
- package/dist/unstable/observability/Otlp.d.ts.map +1 -1
- package/dist/unstable/observability/Otlp.js +14 -3
- package/dist/unstable/observability/Otlp.js.map +1 -1
- package/dist/unstable/observability/OtlpExporter.d.ts +8 -1
- package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpExporter.js +32 -1
- package/dist/unstable/observability/OtlpExporter.js.map +1 -1
- package/dist/unstable/observability/OtlpLogger.d.ts +15 -2
- package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpLogger.js +29 -2
- package/dist/unstable/observability/OtlpLogger.js.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.d.ts +17 -5
- package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.js +32 -2
- package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
- package/dist/unstable/observability/OtlpResource.d.ts +49 -12
- package/dist/unstable/observability/OtlpResource.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpResource.js +47 -5
- package/dist/unstable/observability/OtlpResource.js.map +1 -1
- package/dist/unstable/observability/OtlpSerialization.d.ts +28 -3
- package/dist/unstable/observability/OtlpSerialization.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpSerialization.js +28 -3
- package/dist/unstable/observability/OtlpSerialization.js.map +1 -1
- package/dist/unstable/observability/OtlpTracer.d.ts +19 -2
- package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpTracer.js +32 -2
- package/dist/unstable/observability/OtlpTracer.js.map +1 -1
- package/dist/unstable/observability/PrometheusMetrics.d.ts +36 -16
- package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/PrometheusMetrics.js +9 -7
- package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
- package/dist/unstable/observability/index.d.ts +160 -3
- package/dist/unstable/observability/index.d.ts.map +1 -1
- package/dist/unstable/observability/index.js +160 -3
- package/dist/unstable/observability/index.js.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.d.ts +93 -18
- package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.js +81 -21
- package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
- package/dist/unstable/persistence/Persistable.d.ts +76 -15
- package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
- package/dist/unstable/persistence/Persistable.js +22 -5
- package/dist/unstable/persistence/Persistable.js.map +1 -1
- package/dist/unstable/persistence/PersistedCache.d.ts +27 -2
- package/dist/unstable/persistence/PersistedCache.d.ts.map +1 -1
- package/dist/unstable/persistence/PersistedCache.js +24 -1
- package/dist/unstable/persistence/PersistedCache.js.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.d.ts +73 -16
- package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.js +60 -13
- package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
- package/dist/unstable/persistence/Persistence.d.ts +98 -16
- package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
- package/dist/unstable/persistence/Persistence.js +91 -14
- package/dist/unstable/persistence/Persistence.js.map +1 -1
- package/dist/unstable/persistence/RateLimiter.d.ts +101 -21
- package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
- package/dist/unstable/persistence/RateLimiter.js +85 -16
- package/dist/unstable/persistence/RateLimiter.js.map +1 -1
- package/dist/unstable/persistence/Redis.d.ts +26 -5
- package/dist/unstable/persistence/Redis.d.ts.map +1 -1
- package/dist/unstable/persistence/Redis.js +36 -4
- package/dist/unstable/persistence/Redis.js.map +1 -1
- package/dist/unstable/persistence/index.d.ts +147 -0
- package/dist/unstable/persistence/index.d.ts.map +1 -1
- package/dist/unstable/persistence/index.js +147 -0
- package/dist/unstable/persistence/index.js.map +1 -1
- package/dist/unstable/process/ChildProcess.d.ts +87 -64
- package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcess.js +25 -18
- package/dist/unstable/process/ChildProcess.js.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.d.ts +23 -12
- package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.js +11 -6
- package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
- package/dist/unstable/process/index.d.ts +2 -1
- package/dist/unstable/process/index.d.ts.map +1 -1
- package/dist/unstable/process/index.js +2 -1
- package/dist/unstable/process/index.js.map +1 -1
- package/dist/unstable/reactivity/AsyncResult.d.ts +198 -59
- package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
- package/dist/unstable/reactivity/AsyncResult.js +121 -36
- package/dist/unstable/reactivity/AsyncResult.js.map +1 -1
- package/dist/unstable/reactivity/Atom.d.ts +544 -130
- package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
- package/dist/unstable/reactivity/Atom.js +252 -58
- package/dist/unstable/reactivity/Atom.js.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.d.ts +41 -2
- package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.js +35 -1
- package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
- package/dist/unstable/reactivity/AtomRef.d.ts +51 -7
- package/dist/unstable/reactivity/AtomRef.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRef.js +29 -3
- package/dist/unstable/reactivity/AtomRef.js.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.d.ts +135 -21
- package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.js +69 -10
- package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.d.ts +36 -2
- package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.js +29 -1
- package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
- package/dist/unstable/reactivity/Hydration.d.ts +28 -5
- package/dist/unstable/reactivity/Hydration.d.ts.map +1 -1
- package/dist/unstable/reactivity/Hydration.js +35 -3
- package/dist/unstable/reactivity/Hydration.js.map +1 -1
- package/dist/unstable/reactivity/Reactivity.d.ts +94 -13
- package/dist/unstable/reactivity/Reactivity.d.ts.map +1 -1
- package/dist/unstable/reactivity/Reactivity.js +60 -7
- package/dist/unstable/reactivity/Reactivity.js.map +1 -1
- package/dist/unstable/reactivity/index.d.ts +167 -0
- package/dist/unstable/reactivity/index.d.ts.map +1 -1
- package/dist/unstable/reactivity/index.js +167 -0
- package/dist/unstable/reactivity/index.js.map +1 -1
- package/dist/unstable/rpc/Rpc.d.ts +254 -56
- package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
- package/dist/unstable/rpc/Rpc.js +44 -11
- package/dist/unstable/rpc/Rpc.js.map +1 -1
- package/dist/unstable/rpc/RpcClient.d.ts +80 -19
- package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClient.js +52 -12
- package/dist/unstable/rpc/RpcClient.js.map +1 -1
- package/dist/unstable/rpc/RpcClientError.d.ts +26 -2
- package/dist/unstable/rpc/RpcClientError.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClientError.js +26 -2
- package/dist/unstable/rpc/RpcClientError.js.map +1 -1
- package/dist/unstable/rpc/RpcGroup.d.ts +51 -8
- package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcGroup.js +3 -1
- package/dist/unstable/rpc/RpcGroup.js.map +1 -1
- package/dist/unstable/rpc/RpcMessage.d.ts +128 -32
- package/dist/unstable/rpc/RpcMessage.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcMessage.js +23 -7
- package/dist/unstable/rpc/RpcMessage.js.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.d.ts +100 -20
- package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.js +39 -3
- package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
- package/dist/unstable/rpc/RpcSchema.d.ts +38 -4
- package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSchema.js +34 -3
- package/dist/unstable/rpc/RpcSchema.js.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.d.ts +60 -13
- package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.js +56 -12
- package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
- package/dist/unstable/rpc/RpcServer.d.ts +73 -23
- package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcServer.js +69 -22
- package/dist/unstable/rpc/RpcServer.js.map +1 -1
- package/dist/unstable/rpc/RpcTest.d.ts +20 -1
- package/dist/unstable/rpc/RpcTest.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcTest.js +20 -1
- package/dist/unstable/rpc/RpcTest.js.map +1 -1
- package/dist/unstable/rpc/RpcWorker.d.ts +39 -6
- package/dist/unstable/rpc/RpcWorker.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcWorker.js +16 -4
- package/dist/unstable/rpc/RpcWorker.js.map +1 -1
- package/dist/unstable/rpc/Utils.d.ts +10 -0
- package/dist/unstable/rpc/Utils.d.ts.map +1 -1
- package/dist/unstable/rpc/Utils.js +10 -0
- package/dist/unstable/rpc/Utils.js.map +1 -1
- package/dist/unstable/rpc/index.d.ts +272 -0
- package/dist/unstable/rpc/index.d.ts.map +1 -1
- package/dist/unstable/rpc/index.js +272 -0
- package/dist/unstable/rpc/index.js.map +1 -1
- package/dist/unstable/schema/Model.d.ts +192 -59
- package/dist/unstable/schema/Model.d.ts.map +1 -1
- package/dist/unstable/schema/Model.js +122 -38
- package/dist/unstable/schema/Model.js.map +1 -1
- package/dist/unstable/schema/VariantSchema.d.ts +101 -24
- package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
- package/dist/unstable/schema/VariantSchema.js +22 -6
- package/dist/unstable/schema/VariantSchema.js.map +1 -1
- package/dist/unstable/schema/index.d.ts +37 -0
- package/dist/unstable/schema/index.d.ts.map +1 -1
- package/dist/unstable/schema/index.js +37 -0
- package/dist/unstable/schema/index.js.map +1 -1
- package/dist/unstable/socket/Socket.d.ts +168 -34
- package/dist/unstable/socket/Socket.d.ts.map +1 -1
- package/dist/unstable/socket/Socket.js +124 -28
- package/dist/unstable/socket/Socket.js.map +1 -1
- package/dist/unstable/socket/SocketServer.d.ts +58 -10
- package/dist/unstable/socket/SocketServer.d.ts.map +1 -1
- package/dist/unstable/socket/SocketServer.js +43 -5
- package/dist/unstable/socket/SocketServer.js.map +1 -1
- package/dist/unstable/socket/index.d.ts +44 -0
- package/dist/unstable/socket/index.d.ts.map +1 -1
- package/dist/unstable/socket/index.js +44 -0
- package/dist/unstable/socket/index.js.map +1 -1
- package/dist/unstable/sql/Migrator.d.ts +40 -9
- package/dist/unstable/sql/Migrator.d.ts.map +1 -1
- package/dist/unstable/sql/Migrator.js +45 -5
- package/dist/unstable/sql/Migrator.js.map +1 -1
- package/dist/unstable/sql/SqlClient.d.ts +38 -2
- package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
- package/dist/unstable/sql/SqlClient.js +40 -1
- package/dist/unstable/sql/SqlClient.js.map +1 -1
- package/dist/unstable/sql/SqlConnection.d.ts +34 -3
- package/dist/unstable/sql/SqlConnection.d.ts.map +1 -1
- package/dist/unstable/sql/SqlConnection.js +22 -0
- package/dist/unstable/sql/SqlConnection.js.map +1 -1
- package/dist/unstable/sql/SqlError.d.ts +117 -0
- package/dist/unstable/sql/SqlError.d.ts.map +1 -1
- package/dist/unstable/sql/SqlError.js +131 -0
- package/dist/unstable/sql/SqlError.js.map +1 -1
- package/dist/unstable/sql/SqlModel.d.ts +25 -5
- package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
- package/dist/unstable/sql/SqlModel.js +8 -4
- package/dist/unstable/sql/SqlModel.js.map +1 -1
- package/dist/unstable/sql/SqlResolver.d.ts +56 -13
- package/dist/unstable/sql/SqlResolver.d.ts.map +1 -1
- package/dist/unstable/sql/SqlResolver.js +44 -10
- package/dist/unstable/sql/SqlResolver.js.map +1 -1
- package/dist/unstable/sql/SqlSchema.d.ts +29 -8
- package/dist/unstable/sql/SqlSchema.d.ts.map +1 -1
- package/dist/unstable/sql/SqlSchema.js +29 -8
- package/dist/unstable/sql/SqlSchema.js.map +1 -1
- package/dist/unstable/sql/SqlStream.d.ts +4 -0
- package/dist/unstable/sql/SqlStream.d.ts.map +1 -1
- package/dist/unstable/sql/SqlStream.js +24 -0
- package/dist/unstable/sql/SqlStream.js.map +1 -1
- package/dist/unstable/sql/Statement.d.ts +151 -24
- package/dist/unstable/sql/Statement.d.ts.map +1 -1
- package/dist/unstable/sql/Statement.js +91 -6
- package/dist/unstable/sql/Statement.js.map +1 -1
- package/dist/unstable/sql/index.d.ts +179 -1
- package/dist/unstable/sql/index.d.ts.map +1 -1
- package/dist/unstable/sql/index.js +179 -1
- package/dist/unstable/sql/index.js.map +1 -1
- package/dist/unstable/workers/Transferable.d.ts +72 -20
- package/dist/unstable/workers/Transferable.d.ts.map +1 -1
- package/dist/unstable/workers/Transferable.js +57 -14
- package/dist/unstable/workers/Transferable.js.map +1 -1
- package/dist/unstable/workers/Worker.d.ts +61 -8
- package/dist/unstable/workers/Worker.d.ts.map +1 -1
- package/dist/unstable/workers/Worker.js +44 -4
- package/dist/unstable/workers/Worker.js.map +1 -1
- package/dist/unstable/workers/WorkerError.d.ts +31 -9
- package/dist/unstable/workers/WorkerError.d.ts.map +1 -1
- package/dist/unstable/workers/WorkerError.js +44 -7
- package/dist/unstable/workers/WorkerError.js.map +1 -1
- package/dist/unstable/workers/WorkerRunner.d.ts +32 -3
- package/dist/unstable/workers/WorkerRunner.d.ts.map +1 -1
- package/dist/unstable/workers/WorkerRunner.js +24 -1
- package/dist/unstable/workers/WorkerRunner.js.map +1 -1
- package/dist/unstable/workers/index.d.ts +81 -1
- package/dist/unstable/workers/index.d.ts.map +1 -1
- package/dist/unstable/workers/index.js +81 -1
- package/dist/unstable/workers/index.js.map +1 -1
- package/dist/unstable/workflow/Activity.d.ts +61 -10
- package/dist/unstable/workflow/Activity.d.ts.map +1 -1
- package/dist/unstable/workflow/Activity.js +20 -5
- package/dist/unstable/workflow/Activity.js.map +1 -1
- package/dist/unstable/workflow/DurableClock.d.ts +12 -3
- package/dist/unstable/workflow/DurableClock.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableClock.js +22 -2
- package/dist/unstable/workflow/DurableClock.js.map +1 -1
- package/dist/unstable/workflow/DurableDeferred.d.ts +128 -31
- package/dist/unstable/workflow/DurableDeferred.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableDeferred.js +77 -13
- package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
- package/dist/unstable/workflow/DurableQueue.d.ts +33 -8
- package/dist/unstable/workflow/DurableQueue.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableQueue.js +26 -6
- package/dist/unstable/workflow/DurableQueue.js.map +1 -1
- package/dist/unstable/workflow/Workflow.d.ts +102 -31
- package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
- package/dist/unstable/workflow/Workflow.js +75 -19
- package/dist/unstable/workflow/Workflow.js.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.d.ts +40 -5
- package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.js +16 -4
- package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
- package/dist/unstable/workflow/WorkflowProxy.d.ts +40 -12
- package/dist/unstable/workflow/WorkflowProxy.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowProxy.js +8 -12
- package/dist/unstable/workflow/WorkflowProxy.js.map +1 -1
- package/dist/unstable/workflow/WorkflowProxyServer.d.ts +37 -2
- package/dist/unstable/workflow/WorkflowProxyServer.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowProxyServer.js +12 -6
- package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
- package/dist/unstable/workflow/index.d.ts +160 -0
- package/dist/unstable/workflow/index.d.ts.map +1 -1
- package/dist/unstable/workflow/index.js +160 -0
- package/dist/unstable/workflow/index.js.map +1 -1
- package/package.json +11 -11
- package/src/Array.ts +151 -106
- package/src/BigDecimal.ts +620 -553
- package/src/BigInt.ts +342 -274
- package/src/Boolean.ts +189 -156
- package/src/Brand.ts +30 -5
- package/src/Cache.ts +334 -167
- package/src/Cause.ts +84 -73
- package/src/Channel.ts +1639 -667
- package/src/ChannelSchema.ts +137 -12
- package/src/Chunk.ts +575 -429
- package/src/Clock.ts +16 -9
- package/src/Combiner.ts +11 -5
- package/src/Config.ts +80 -68
- package/src/ConfigProvider.ts +33 -32
- package/src/Console.ts +88 -58
- package/src/Context.ts +401 -190
- package/src/Cron.ts +109 -48
- package/src/Crypto.ts +327 -0
- package/src/Data.ts +9 -3
- package/src/DateTime.ts +893 -464
- package/src/Deferred.ts +367 -175
- package/src/Differ.ts +44 -2
- package/src/Duration.ts +333 -186
- package/src/Effect.ts +2201 -2289
- package/src/Effectable.ts +38 -3
- package/src/Encoding.ts +78 -28
- package/src/Equal.ts +4 -3
- package/src/Equivalence.ts +18 -24
- package/src/ErrorReporter.ts +66 -82
- package/src/ExecutionPlan.ts +106 -12
- package/src/Exit.ts +6 -5
- package/src/Fiber.ts +71 -40
- package/src/FiberHandle.ts +157 -57
- package/src/FiberMap.ts +328 -163
- package/src/FiberSet.ts +130 -52
- package/src/FileSystem.ts +104 -74
- package/src/Filter.ts +166 -88
- package/src/Formatter.ts +4 -70
- package/src/Function.ts +218 -151
- package/src/Graph.ts +714 -415
- package/src/HKT.ts +29 -13
- package/src/Hash.ts +35 -24
- package/src/HashMap.ts +540 -388
- package/src/HashRing.ts +111 -34
- package/src/HashSet.ts +239 -153
- package/src/Inspectable.ts +30 -17
- package/src/Iterable.ts +336 -222
- package/src/JsonPatch.ts +13 -10
- package/src/JsonPointer.ts +13 -11
- package/src/JsonSchema.ts +16 -0
- package/src/Latch.ts +97 -26
- package/src/Layer.ts +547 -445
- package/src/LayerMap.ts +99 -26
- package/src/LogLevel.ts +92 -131
- package/src/Logger.ts +365 -297
- package/src/ManagedRuntime.ts +78 -19
- package/src/Match.ts +135 -161
- package/src/Metric.ts +362 -313
- package/src/MutableHashMap.ts +202 -127
- package/src/MutableHashSet.ts +120 -52
- package/src/MutableList.ts +157 -100
- package/src/MutableRef.ts +129 -90
- package/src/Newtype.ts +15 -2
- package/src/NonEmptyIterable.ts +38 -48
- package/src/Number.ts +261 -205
- package/src/Optic.ts +6 -7
- package/src/Option.ts +133 -156
- package/src/Order.ts +6 -6
- package/src/Ordering.ts +56 -45
- package/src/PartitionedSemaphore.ts +225 -40
- package/src/Path.ts +77 -13
- package/src/Pipeable.ts +82 -24
- package/src/PlatformError.ts +74 -6
- package/src/Pool.ts +94 -31
- package/src/Predicate.ts +17 -24
- package/src/PrimaryKey.ts +11 -3
- package/src/PubSub.ts +385 -309
- package/src/Pull.ts +94 -25
- package/src/Queue.ts +303 -184
- package/src/Random.ts +69 -93
- package/src/RcMap.ts +151 -141
- package/src/RcRef.ts +68 -32
- package/src/Record.ts +282 -137
- package/src/Redactable.ts +7 -5
- package/src/Redacted.ts +63 -34
- package/src/Reducer.ts +3 -1
- package/src/Ref.ts +173 -134
- package/src/References.ts +73 -31
- package/src/RegExp.ts +12 -6
- package/src/Request.ts +159 -34
- package/src/RequestResolver.ts +278 -121
- package/src/Resource.ts +45 -7
- package/src/Result.ts +137 -153
- package/src/Runtime.ts +42 -21
- package/src/Schedule.ts +585 -613
- package/src/Scheduler.ts +44 -7
- package/src/Schema.ts +1309 -615
- package/src/SchemaAST.ts +123 -93
- package/src/SchemaGetter.ts +52 -37
- package/src/SchemaIssue.ts +19 -24
- package/src/SchemaParser.ts +306 -85
- package/src/SchemaRepresentation.ts +89 -77
- package/src/SchemaTransformation.ts +97 -46
- package/src/SchemaUtils.ts +24 -1
- package/src/Scope.ts +107 -65
- package/src/ScopedCache.ts +195 -59
- package/src/ScopedRef.ts +28 -8
- package/src/Semaphore.ts +61 -37
- package/src/Sink.ts +461 -206
- package/src/Stdio.ts +43 -6
- package/src/Stream.ts +2361 -1613
- package/src/String.ts +174 -97
- package/src/Struct.ts +20 -18
- package/src/SubscriptionRef.ts +309 -204
- package/src/Symbol.ts +13 -5
- package/src/SynchronizedRef.ts +278 -62
- package/src/Take.ts +26 -2
- package/src/Terminal.ts +40 -7
- package/src/Tracer.ts +233 -59
- package/src/Trie.ts +280 -245
- package/src/Tuple.ts +34 -32
- package/src/TxChunk.ts +200 -155
- package/src/TxDeferred.ts +43 -29
- package/src/TxHashMap.ts +370 -231
- package/src/TxHashSet.ts +253 -159
- package/src/TxPriorityQueue.ts +97 -65
- package/src/TxPubSub.ts +77 -49
- package/src/TxQueue.ts +277 -242
- package/src/TxReentrantLock.ts +70 -47
- package/src/TxRef.ts +69 -40
- package/src/TxSemaphore.ts +101 -115
- package/src/TxSubscriptionRef.ts +74 -50
- package/src/Types.ts +31 -34
- package/src/UndefinedOr.ts +62 -25
- package/src/Unify.ts +72 -117
- package/src/Utils.ts +5 -2
- package/src/index.ts +1976 -420
- package/src/internal/schema/schema.ts +1 -1
- package/src/testing/FastCheck.ts +9 -6
- package/src/testing/TestClock.ts +63 -35
- package/src/testing/TestConsole.ts +54 -36
- package/src/testing/TestSchema.ts +10 -8
- package/src/testing/index.ts +34 -0
- package/src/unstable/ai/AiError.ts +195 -137
- package/src/unstable/ai/AnthropicStructuredOutput.ts +2 -2
- package/src/unstable/ai/Chat.ts +68 -43
- package/src/unstable/ai/EmbeddingModel.ts +12 -11
- package/src/unstable/ai/IdGenerator.ts +28 -18
- package/src/unstable/ai/LanguageModel.ts +35 -27
- package/src/unstable/ai/McpSchema.ts +342 -119
- package/src/unstable/ai/McpServer.ts +79 -20
- package/src/unstable/ai/Model.ts +10 -12
- package/src/unstable/ai/OpenAiStructuredOutput.ts +2 -2
- package/src/unstable/ai/Prompt.ts +216 -192
- package/src/unstable/ai/Response.ts +179 -167
- package/src/unstable/ai/ResponseIdTracker.ts +43 -4
- package/src/unstable/ai/Telemetry.ts +43 -33
- package/src/unstable/ai/Tokenizer.ts +14 -9
- package/src/unstable/ai/Tool.ts +168 -97
- package/src/unstable/ai/Toolkit.ts +51 -46
- package/src/unstable/ai/index.ts +121 -29
- package/src/unstable/cli/Argument.ts +226 -134
- package/src/unstable/cli/CliError.ts +96 -26
- package/src/unstable/cli/CliOutput.ts +48 -19
- package/src/unstable/cli/Command.ts +196 -115
- package/src/unstable/cli/Completions.ts +7 -7
- package/src/unstable/cli/Flag.ts +235 -142
- package/src/unstable/cli/GlobalFlag.ts +41 -13
- package/src/unstable/cli/HelpDoc.ts +39 -14
- package/src/unstable/cli/Param.ts +395 -260
- package/src/unstable/cli/Primitive.ts +79 -42
- package/src/unstable/cli/Prompt.ts +207 -59
- package/src/unstable/cli/index.ts +205 -6
- package/src/unstable/cli/internal/ansi.ts +13 -0
- package/src/unstable/cli/internal/command.ts +5 -1
- package/src/unstable/cli/internal/config.ts +3 -0
- package/src/unstable/cli/internal/lexer.ts +11 -0
- package/src/unstable/cli/internal/parser.ts +0 -1
- package/src/unstable/cluster/ClusterCron.ts +35 -1
- package/src/unstable/cluster/ClusterError.ts +56 -7
- package/src/unstable/cluster/ClusterMetrics.ts +39 -5
- package/src/unstable/cluster/ClusterSchema.ts +61 -8
- package/src/unstable/cluster/ClusterWorkflowEngine.ts +35 -2
- package/src/unstable/cluster/DeliverAt.ts +39 -4
- package/src/unstable/cluster/Entity.ts +106 -16
- package/src/unstable/cluster/EntityAddress.ts +30 -2
- package/src/unstable/cluster/EntityId.ts +18 -3
- package/src/unstable/cluster/EntityProxy.ts +42 -14
- package/src/unstable/cluster/EntityProxyServer.ts +45 -8
- package/src/unstable/cluster/EntityResource.ts +43 -6
- package/src/unstable/cluster/EntityType.ts +27 -3
- package/src/unstable/cluster/Envelope.ts +128 -23
- package/src/unstable/cluster/HttpRunner.ts +88 -13
- package/src/unstable/cluster/K8sHttpClient.ts +49 -6
- package/src/unstable/cluster/MachineId.ts +24 -3
- package/src/unstable/cluster/Message.ts +102 -13
- package/src/unstable/cluster/MessageStorage.ts +126 -21
- package/src/unstable/cluster/Reply.ts +101 -12
- package/src/unstable/cluster/Runner.ts +47 -17
- package/src/unstable/cluster/RunnerAddress.ts +34 -2
- package/src/unstable/cluster/RunnerHealth.ts +40 -12
- package/src/unstable/cluster/RunnerServer.ts +31 -4
- package/src/unstable/cluster/RunnerStorage.ts +42 -5
- package/src/unstable/cluster/Runners.ts +76 -13
- package/src/unstable/cluster/ShardId.ts +53 -5
- package/src/unstable/cluster/Sharding.ts +35 -4
- package/src/unstable/cluster/ShardingConfig.ts +75 -10
- package/src/unstable/cluster/ShardingRegistrationEvent.ts +31 -7
- package/src/unstable/cluster/SingleRunner.ts +23 -1
- package/src/unstable/cluster/Singleton.ts +15 -1
- package/src/unstable/cluster/SingletonAddress.ts +21 -1
- package/src/unstable/cluster/Snowflake.ts +90 -19
- package/src/unstable/cluster/SocketRunner.ts +29 -2
- package/src/unstable/cluster/SqlMessageStorage.ts +27 -3
- package/src/unstable/cluster/SqlRunnerStorage.ts +46 -7
- package/src/unstable/cluster/TestRunner.ts +18 -1
- package/src/unstable/cluster/index.ts +790 -0
- package/src/unstable/cluster/internal/hash.ts +12 -0
- package/src/unstable/devtools/DevTools.ts +26 -3
- package/src/unstable/devtools/DevToolsClient.ts +32 -5
- package/src/unstable/devtools/DevToolsSchema.ts +201 -44
- package/src/unstable/devtools/DevToolsServer.ts +27 -2
- package/src/unstable/devtools/index.ts +58 -0
- package/src/unstable/encoding/Msgpack.ts +97 -12
- package/src/unstable/encoding/Ndjson.ts +149 -21
- package/src/unstable/encoding/Sse.ts +109 -18
- package/src/unstable/encoding/index.ts +49 -0
- package/src/unstable/eventlog/Event.ts +131 -30
- package/src/unstable/eventlog/EventGroup.ts +50 -17
- package/src/unstable/eventlog/EventJournal.ts +120 -20
- package/src/unstable/eventlog/EventLog.ts +150 -31
- package/src/unstable/eventlog/EventLogEncryption.ts +42 -6
- package/src/unstable/eventlog/EventLogMessage.ts +92 -18
- package/src/unstable/eventlog/EventLogRemote.ts +54 -8
- package/src/unstable/eventlog/EventLogServer.ts +33 -3
- package/src/unstable/eventlog/EventLogServerEncrypted.ts +52 -6
- package/src/unstable/eventlog/EventLogServerUnencrypted.ts +90 -16
- package/src/unstable/eventlog/EventLogSessionAuth.ts +77 -15
- package/src/unstable/eventlog/SqlEventJournal.ts +28 -2
- package/src/unstable/eventlog/SqlEventLogServerEncrypted.ts +32 -3
- package/src/unstable/eventlog/SqlEventLogServerUnencrypted.ts +28 -2
- package/src/unstable/eventlog/index.ts +240 -0
- package/src/unstable/http/Cookies.ts +156 -77
- package/src/unstable/http/Etag.ts +40 -7
- package/src/unstable/http/FetchHttpClient.ts +33 -4
- package/src/unstable/http/FindMyWay.ts +1 -1
- package/src/unstable/http/Headers.ts +252 -50
- package/src/unstable/http/HttpBody.ts +128 -26
- package/src/unstable/http/HttpClient.ts +204 -96
- package/src/unstable/http/HttpClientError.ts +80 -12
- package/src/unstable/http/HttpClientRequest.ts +318 -100
- package/src/unstable/http/HttpClientResponse.ts +59 -16
- package/src/unstable/http/HttpEffect.ts +66 -18
- package/src/unstable/http/HttpIncomingMessage.ts +48 -7
- package/src/unstable/http/HttpMethod.ts +38 -6
- package/src/unstable/http/HttpMiddleware.ts +60 -11
- package/src/unstable/http/HttpPlatform.ts +34 -3
- package/src/unstable/http/HttpRouter.ts +232 -69
- package/src/unstable/http/HttpServer.ts +151 -22
- package/src/unstable/http/HttpServerError.ts +93 -10
- package/src/unstable/http/HttpServerRequest.ts +125 -21
- package/src/unstable/http/HttpServerRespondable.ts +49 -6
- package/src/unstable/http/HttpServerResponse.ts +391 -67
- package/src/unstable/http/HttpStaticServer.ts +24 -8
- package/src/unstable/http/HttpTraceContext.ts +53 -6
- package/src/unstable/http/Multipart.ts +179 -28
- package/src/unstable/http/Multipasta/HeadersParser.ts +1 -1
- package/src/unstable/http/Multipasta/Node.ts +1 -1
- package/src/unstable/http/Multipasta/Search.ts +1 -1
- package/src/unstable/http/Multipasta/Web.ts +1 -1
- package/src/unstable/http/Multipasta.ts +1 -1
- package/src/unstable/http/Template.ts +53 -1
- package/src/unstable/http/Url.ts +70 -56
- package/src/unstable/http/UrlParams.ts +237 -51
- package/src/unstable/http/index.ts +452 -0
- package/src/unstable/httpapi/HttpApi.ts +49 -14
- package/src/unstable/httpapi/HttpApiBuilder.ts +81 -16
- package/src/unstable/httpapi/HttpApiClient.ts +78 -15
- package/src/unstable/httpapi/HttpApiEndpoint.ts +238 -59
- package/src/unstable/httpapi/HttpApiError.ts +100 -1
- package/src/unstable/httpapi/HttpApiGroup.ts +87 -20
- package/src/unstable/httpapi/HttpApiMiddleware.ts +113 -22
- package/src/unstable/httpapi/HttpApiScalar.ts +38 -4
- package/src/unstable/httpapi/HttpApiSchema.ts +86 -38
- package/src/unstable/httpapi/HttpApiSecurity.ts +73 -17
- package/src/unstable/httpapi/HttpApiSwagger.ts +23 -3
- package/src/unstable/httpapi/HttpApiTest.ts +26 -1
- package/src/unstable/httpapi/OpenApi.ts +115 -15
- package/src/unstable/httpapi/index.ts +310 -25
- package/src/unstable/observability/Otlp.ts +33 -3
- package/src/unstable/observability/OtlpExporter.ts +32 -1
- package/src/unstable/observability/OtlpLogger.ts +32 -2
- package/src/unstable/observability/OtlpMetrics.ts +39 -5
- package/src/unstable/observability/OtlpResource.ts +68 -12
- package/src/unstable/observability/OtlpSerialization.ts +28 -3
- package/src/unstable/observability/OtlpTracer.ts +41 -2
- package/src/unstable/observability/PrometheusMetrics.ts +36 -16
- package/src/unstable/observability/index.ts +160 -3
- package/src/unstable/persistence/KeyValueStore.ts +108 -28
- package/src/unstable/persistence/Persistable.ts +76 -15
- package/src/unstable/persistence/PersistedCache.ts +27 -2
- package/src/unstable/persistence/PersistedQueue.ts +98 -16
- package/src/unstable/persistence/Persistence.ts +98 -16
- package/src/unstable/persistence/RateLimiter.ts +101 -21
- package/src/unstable/persistence/Redis.ts +42 -5
- package/src/unstable/persistence/index.ts +147 -0
- package/src/unstable/process/ChildProcess.ts +90 -66
- package/src/unstable/process/ChildProcessSpawner.ts +23 -12
- package/src/unstable/process/index.ts +2 -1
- package/src/unstable/reactivity/AsyncResult.ts +204 -61
- package/src/unstable/reactivity/Atom.ts +598 -139
- package/src/unstable/reactivity/AtomHttpApi.ts +41 -2
- package/src/unstable/reactivity/AtomRef.ts +51 -7
- package/src/unstable/reactivity/AtomRegistry.ts +141 -22
- package/src/unstable/reactivity/AtomRpc.ts +36 -2
- package/src/unstable/reactivity/Hydration.ts +45 -5
- package/src/unstable/reactivity/Reactivity.ts +94 -13
- package/src/unstable/reactivity/index.ts +167 -0
- package/src/unstable/rpc/Rpc.ts +254 -56
- package/src/unstable/rpc/RpcClient.ts +106 -19
- package/src/unstable/rpc/RpcClientError.ts +26 -2
- package/src/unstable/rpc/RpcGroup.ts +51 -8
- package/src/unstable/rpc/RpcMessage.ts +128 -32
- package/src/unstable/rpc/RpcMiddleware.ts +100 -20
- package/src/unstable/rpc/RpcSchema.ts +38 -4
- package/src/unstable/rpc/RpcSerialization.ts +60 -13
- package/src/unstable/rpc/RpcServer.ts +107 -23
- package/src/unstable/rpc/RpcTest.ts +20 -1
- package/src/unstable/rpc/RpcWorker.ts +39 -6
- package/src/unstable/rpc/Utils.ts +33 -0
- package/src/unstable/rpc/index.ts +272 -0
- package/src/unstable/schema/Model.ts +245 -61
- package/src/unstable/schema/VariantSchema.ts +101 -24
- package/src/unstable/schema/index.ts +37 -0
- package/src/unstable/socket/Socket.ts +168 -34
- package/src/unstable/socket/SocketServer.ts +58 -10
- package/src/unstable/socket/index.ts +44 -0
- package/src/unstable/sql/Migrator.ts +61 -9
- package/src/unstable/sql/SqlClient.ts +59 -2
- package/src/unstable/sql/SqlConnection.ts +34 -3
- package/src/unstable/sql/SqlError.ts +135 -0
- package/src/unstable/sql/SqlModel.ts +25 -5
- package/src/unstable/sql/SqlResolver.ts +56 -13
- package/src/unstable/sql/SqlSchema.ts +29 -8
- package/src/unstable/sql/SqlStream.ts +24 -0
- package/src/unstable/sql/Statement.ts +168 -24
- package/src/unstable/sql/index.ts +179 -1
- package/src/unstable/workers/Transferable.ts +72 -20
- package/src/unstable/workers/Worker.ts +61 -8
- package/src/unstable/workers/WorkerError.ts +50 -9
- package/src/unstable/workers/WorkerRunner.ts +32 -3
- package/src/unstable/workers/index.ts +81 -1
- package/src/unstable/workflow/Activity.ts +61 -10
- package/src/unstable/workflow/DurableClock.ts +26 -3
- package/src/unstable/workflow/DurableDeferred.ts +148 -31
- package/src/unstable/workflow/DurableQueue.ts +33 -8
- package/src/unstable/workflow/Workflow.ts +123 -31
- package/src/unstable/workflow/WorkflowEngine.ts +40 -5
- package/src/unstable/workflow/WorkflowProxy.ts +40 -12
- package/src/unstable/workflow/WorkflowProxyServer.ts +41 -6
- package/src/unstable/workflow/index.ts +160 -0
package/src/Metric.ts
CHANGED
|
@@ -1,47 +1,54 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
* -
|
|
11
|
-
* -
|
|
12
|
-
* -
|
|
13
|
-
* -
|
|
14
|
-
* -
|
|
15
|
-
* -
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
*
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
2
|
+
* The `Metric` module provides tools for defining, updating, tagging, and
|
|
3
|
+
* reading application metrics from Effect programs. A `Metric<Input, State>`
|
|
4
|
+
* accepts typed input values and aggregates them into a typed state that can be
|
|
5
|
+
* read directly or exported from a snapshot.
|
|
6
|
+
*
|
|
7
|
+
* **Mental model**
|
|
8
|
+
*
|
|
9
|
+
* - A metric has an identifier, a type, an optional description, optional attributes, and mutable aggregate state
|
|
10
|
+
* - Use counters for cumulative values such as requests, errors, retries, or bytes processed
|
|
11
|
+
* - Use gauges for point-in-time values that can rise or fall, such as active connections or queue size
|
|
12
|
+
* - Use frequencies to count occurrences of discrete string values, such as status codes or action names
|
|
13
|
+
* - Use histograms to bucket numeric observations and inspect count, min, max, and sum
|
|
14
|
+
* - Use summaries to calculate quantiles over a bounded, time-based observation window
|
|
15
|
+
* - Metrics are updated from effects with {@link update} and {@link modify}, and read with {@link value}
|
|
16
|
+
* - Attributes tag metrics with key-value dimensions so the same logical metric can be grouped by service, endpoint, method, or other labels
|
|
17
|
+
* - Snapshots capture the currently registered metrics and their aggregate states for reporting or export
|
|
18
|
+
*
|
|
19
|
+
* **Common tasks**
|
|
20
|
+
*
|
|
21
|
+
* - Create counters: {@link counter}
|
|
22
|
+
* - Create gauges: {@link gauge}
|
|
23
|
+
* - Create frequencies: {@link frequency}
|
|
24
|
+
* - Create histograms: {@link histogram}, {@link linearBoundaries}, {@link exponentialBoundaries}
|
|
25
|
+
* - Create summaries: {@link summary}, {@link summaryWithTimestamp}
|
|
26
|
+
* - Measure effect duration: {@link timer}
|
|
27
|
+
* - Update a metric: {@link update}
|
|
28
|
+
* - Apply relative updates where supported: {@link modify}
|
|
29
|
+
* - Read one metric: {@link value}
|
|
30
|
+
* - Tag a metric: {@link withAttributes}
|
|
31
|
+
* - Transform accepted input values: {@link mapInput}
|
|
32
|
+
* - Record a constant input for repeated events: {@link withConstantInput}
|
|
33
|
+
* - Inspect all registered metrics: {@link snapshot}, {@link dump}
|
|
34
|
+
* - Enable fiber runtime metrics: {@link enableRuntimeMetrics}
|
|
35
|
+
*
|
|
36
|
+
* **Gotchas**
|
|
37
|
+
*
|
|
38
|
+
* - Counter and gauge metrics can use `number` inputs by default or `bigint` inputs with the `bigint` option
|
|
39
|
+
* - Incremental counters ignore negative updates; use non-incremental counters only when decreases are meaningful
|
|
40
|
+
* - {@link update} sets a gauge to an absolute value, while {@link modify} changes it relative to its current value
|
|
41
|
+
* - Histogram buckets are cumulative and depend on the boundaries supplied when the metric is created
|
|
42
|
+
* - Summary quantiles are calculated from the configured sliding window, so old observations expire
|
|
43
|
+
* - Prefer low-cardinality attributes; using unbounded values such as request IDs can create too many metric series
|
|
44
|
+
*
|
|
45
|
+
* **Quickstart**
|
|
46
|
+
*
|
|
47
|
+
* **Example** (Creating and updating metrics)
|
|
40
48
|
*
|
|
41
49
|
* ```ts
|
|
42
50
|
* import { Effect, Metric } from "effect"
|
|
43
51
|
*
|
|
44
|
-
* // Create metrics
|
|
45
52
|
* const requestCount = Metric.counter("http_requests_total", {
|
|
46
53
|
* description: "Total number of HTTP requests"
|
|
47
54
|
* })
|
|
@@ -51,31 +58,7 @@
|
|
|
51
58
|
* boundaries: Metric.linearBoundaries({ start: 0, width: 50, count: 20 })
|
|
52
59
|
* })
|
|
53
60
|
*
|
|
54
|
-
* // Use metrics in your application
|
|
55
61
|
* const handleRequest = Effect.gen(function*() {
|
|
56
|
-
* yield* Metric.update(requestCount, 1)
|
|
57
|
-
*
|
|
58
|
-
* const startTime = yield* Effect.clockWith((clock) => clock.currentTimeMillis)
|
|
59
|
-
*
|
|
60
|
-
* // Process request...
|
|
61
|
-
* yield* Effect.sleep("100 millis")
|
|
62
|
-
*
|
|
63
|
-
* const endTime = yield* Effect.clockWith((clock) => clock.currentTimeMillis)
|
|
64
|
-
* yield* Metric.update(responseTime, endTime - startTime)
|
|
65
|
-
* })
|
|
66
|
-
* ```
|
|
67
|
-
*
|
|
68
|
-
* ## Attributes and Tagging
|
|
69
|
-
*
|
|
70
|
-
* ```ts
|
|
71
|
-
* import { Effect, Metric } from "effect"
|
|
72
|
-
*
|
|
73
|
-
* const requestCount = Metric.counter("requests", {
|
|
74
|
-
* description: "Number of requests by endpoint and method"
|
|
75
|
-
* })
|
|
76
|
-
*
|
|
77
|
-
* const program = Effect.gen(function*() {
|
|
78
|
-
* // Add attributes to metrics
|
|
79
62
|
* yield* Metric.update(
|
|
80
63
|
* Metric.withAttributes(requestCount, {
|
|
81
64
|
* endpoint: "/api/users",
|
|
@@ -84,57 +67,21 @@
|
|
|
84
67
|
* 1
|
|
85
68
|
* )
|
|
86
69
|
*
|
|
87
|
-
*
|
|
88
|
-
* const taggedCounter = Metric.withAttributes(requestCount, {
|
|
89
|
-
* endpoint: "/api/posts",
|
|
90
|
-
* method: "POST"
|
|
91
|
-
* })
|
|
92
|
-
* yield* Metric.update(taggedCounter, 1)
|
|
93
|
-
* })
|
|
94
|
-
* ```
|
|
95
|
-
*
|
|
96
|
-
* ## Advanced Examples
|
|
97
|
-
*
|
|
98
|
-
* ```ts
|
|
99
|
-
* import { Effect, Metric } from "effect"
|
|
100
|
-
*
|
|
101
|
-
* // Business metrics
|
|
102
|
-
* const userSignups = Metric.counter("user_signups_total")
|
|
103
|
-
* const activeUsers = Metric.gauge("active_users_current")
|
|
104
|
-
* const featureUsage = Metric.frequency("feature_usage")
|
|
70
|
+
* yield* Metric.update(responseTime, 125)
|
|
105
71
|
*
|
|
106
|
-
*
|
|
107
|
-
* const dbQueryTime = Metric.summary("db_query_duration", {
|
|
108
|
-
* maxAge: "5 minutes",
|
|
109
|
-
* maxSize: 1000,
|
|
110
|
-
* quantiles: [0.5, 0.9, 0.95, 0.99]
|
|
72
|
+
* return yield* Metric.value(requestCount)
|
|
111
73
|
* })
|
|
74
|
+
* ```
|
|
112
75
|
*
|
|
113
|
-
*
|
|
114
|
-
* // Track user signup
|
|
115
|
-
* yield* Metric.update(userSignups, 1)
|
|
116
|
-
*
|
|
117
|
-
* // Update active user count
|
|
118
|
-
* yield* Metric.update(activeUsers, 1250)
|
|
119
|
-
*
|
|
120
|
-
* // Record feature usage
|
|
121
|
-
* yield* Metric.update(featureUsage, "dashboard_view")
|
|
76
|
+
* **See also**
|
|
122
77
|
*
|
|
123
|
-
*
|
|
124
|
-
*
|
|
125
|
-
*
|
|
126
|
-
*
|
|
127
|
-
* }
|
|
78
|
+
* - {@link counter} / {@link gauge} / {@link frequency} for common metric types
|
|
79
|
+
* - {@link histogram} / {@link summary} for distribution metrics
|
|
80
|
+
* - {@link update} / {@link modify} / {@link value} for working with metric state
|
|
81
|
+
* - {@link withAttributes} for adding dimensions
|
|
82
|
+
* - {@link snapshot} for exporting all registered metric values
|
|
128
83
|
*
|
|
129
|
-
*
|
|
130
|
-
* const getMetrics = Effect.gen(function*() {
|
|
131
|
-
* const snapshots = yield* Metric.snapshot
|
|
132
|
-
*
|
|
133
|
-
* for (const metric of snapshots) {
|
|
134
|
-
* console.log(`${metric.id}: ${JSON.stringify(metric.state)}`)
|
|
135
|
-
* }
|
|
136
|
-
* })
|
|
137
|
-
* ```
|
|
84
|
+
* @since 2.0.0
|
|
138
85
|
*/
|
|
139
86
|
|
|
140
87
|
import * as Arr from "./Array.ts"
|
|
@@ -170,7 +117,8 @@ import type { Contravariant, Covariant } from "./Types.ts"
|
|
|
170
117
|
* - Histograms
|
|
171
118
|
* - Summaries
|
|
172
119
|
*
|
|
173
|
-
*
|
|
120
|
+
* **Example** (Using multiple metric types)
|
|
121
|
+
*
|
|
174
122
|
* ```ts
|
|
175
123
|
* import { Data, Effect, Metric } from "effect"
|
|
176
124
|
*
|
|
@@ -224,8 +172,8 @@ import type { Contravariant, Covariant } from "./Types.ts"
|
|
|
224
172
|
* })
|
|
225
173
|
* ```
|
|
226
174
|
*
|
|
175
|
+
* @category models
|
|
227
176
|
* @since 2.0.0
|
|
228
|
-
* @category Models
|
|
229
177
|
*/
|
|
230
178
|
export interface Metric<in Input, out State> extends Pipeable {
|
|
231
179
|
readonly [TypeId]: typeof TypeId
|
|
@@ -246,7 +194,8 @@ export interface Metric<in Input, out State> extends Pipeable {
|
|
|
246
194
|
* Counters are useful for tracking monotonically increasing values like request counts,
|
|
247
195
|
* bytes processed, errors encountered, or any value that accumulates over time.
|
|
248
196
|
*
|
|
249
|
-
*
|
|
197
|
+
* **Example** (Using counter metrics)
|
|
198
|
+
*
|
|
250
199
|
* ```ts
|
|
251
200
|
* import { Data, Effect, Metric } from "effect"
|
|
252
201
|
*
|
|
@@ -300,15 +249,16 @@ export interface Metric<in Input, out State> extends Pipeable {
|
|
|
300
249
|
* })
|
|
301
250
|
* ```
|
|
302
251
|
*
|
|
303
|
-
* @since 2.0.0
|
|
304
252
|
* @category Metrics
|
|
253
|
+
* @since 2.0.0
|
|
305
254
|
*/
|
|
306
255
|
export interface Counter<in Input extends number | bigint> extends Metric<Input, CounterState<Input>> {}
|
|
307
256
|
|
|
308
257
|
/**
|
|
309
258
|
* State interface for Counter metrics containing the current count and increment mode.
|
|
310
259
|
*
|
|
311
|
-
*
|
|
260
|
+
* **Example** (Reading counter state)
|
|
261
|
+
*
|
|
312
262
|
* ```ts
|
|
313
263
|
* import { Data, Effect, Metric } from "effect"
|
|
314
264
|
*
|
|
@@ -361,8 +311,8 @@ export interface Counter<in Input extends number | bigint> extends Metric<Input,
|
|
|
361
311
|
* })
|
|
362
312
|
* ```
|
|
363
313
|
*
|
|
364
|
-
* @since 2.0.0
|
|
365
314
|
* @category Counter
|
|
315
|
+
* @since 4.0.0
|
|
366
316
|
*/
|
|
367
317
|
export interface CounterState<in Input extends number | bigint> {
|
|
368
318
|
readonly count: Input extends bigint ? bigint : number
|
|
@@ -376,7 +326,8 @@ export interface CounterState<in Input extends number | bigint> {
|
|
|
376
326
|
* how many times specific string values occur, such as HTTP status codes, user actions,
|
|
377
327
|
* error types, or any discrete string-based events.
|
|
378
328
|
*
|
|
379
|
-
*
|
|
329
|
+
* **Example** (Using frequency metrics)
|
|
330
|
+
*
|
|
380
331
|
* ```ts
|
|
381
332
|
* import { Data, Effect, Metric } from "effect"
|
|
382
333
|
*
|
|
@@ -446,15 +397,16 @@ export interface CounterState<in Input extends number | bigint> {
|
|
|
446
397
|
* })
|
|
447
398
|
* ```
|
|
448
399
|
*
|
|
449
|
-
* @since 2.0.0
|
|
450
400
|
* @category Metrics
|
|
401
|
+
* @since 2.0.0
|
|
451
402
|
*/
|
|
452
403
|
export interface Frequency extends Metric<string, FrequencyState> {}
|
|
453
404
|
|
|
454
405
|
/**
|
|
455
406
|
* State interface for Frequency metrics containing occurrence counts for discrete string values.
|
|
456
407
|
*
|
|
457
|
-
*
|
|
408
|
+
* **Example** (Reading frequency state)
|
|
409
|
+
*
|
|
458
410
|
* ```ts
|
|
459
411
|
* import { Data, Effect, Metric } from "effect"
|
|
460
412
|
*
|
|
@@ -530,8 +482,8 @@ export interface Frequency extends Metric<string, FrequencyState> {}
|
|
|
530
482
|
* })
|
|
531
483
|
* ```
|
|
532
484
|
*
|
|
533
|
-
* @since 2.0.0
|
|
534
485
|
* @category Metrics
|
|
486
|
+
* @since 4.0.0
|
|
535
487
|
*/
|
|
536
488
|
export interface FrequencyState {
|
|
537
489
|
readonly occurrences: ReadonlyMap<string, number>
|
|
@@ -543,7 +495,8 @@ export interface FrequencyState {
|
|
|
543
495
|
* Gauges are useful for tracking current state values like memory usage, CPU load,
|
|
544
496
|
* active connections, queue sizes, or any value that represents a current level.
|
|
545
497
|
*
|
|
546
|
-
*
|
|
498
|
+
* **Example** (Using gauge metrics)
|
|
499
|
+
*
|
|
547
500
|
* ```ts
|
|
548
501
|
* import { Data, Effect, Metric } from "effect"
|
|
549
502
|
*
|
|
@@ -590,15 +543,16 @@ export interface FrequencyState {
|
|
|
590
543
|
* })
|
|
591
544
|
* ```
|
|
592
545
|
*
|
|
593
|
-
* @since 2.0.0
|
|
594
546
|
* @category Metrics
|
|
547
|
+
* @since 2.0.0
|
|
595
548
|
*/
|
|
596
549
|
export interface Gauge<in Input extends number | bigint> extends Metric<Input, GaugeState<Input>> {}
|
|
597
550
|
|
|
598
551
|
/**
|
|
599
552
|
* State interface for Gauge metrics containing the current instantaneous value.
|
|
600
553
|
*
|
|
601
|
-
*
|
|
554
|
+
* **Example** (Reading gauge state)
|
|
555
|
+
*
|
|
602
556
|
* ```ts
|
|
603
557
|
* import { Data, Effect, Metric } from "effect"
|
|
604
558
|
*
|
|
@@ -658,8 +612,8 @@ export interface Gauge<in Input extends number | bigint> extends Metric<Input, G
|
|
|
658
612
|
* })
|
|
659
613
|
* ```
|
|
660
614
|
*
|
|
661
|
-
* @since 2.0.0
|
|
662
615
|
* @category Metrics
|
|
616
|
+
* @since 4.0.0
|
|
663
617
|
*/
|
|
664
618
|
export interface GaugeState<in Input extends number | bigint> {
|
|
665
619
|
readonly value: Input extends bigint ? bigint : number
|
|
@@ -671,7 +625,8 @@ export interface GaugeState<in Input extends number | bigint> {
|
|
|
671
625
|
* Histograms are ideal for measuring request durations, response sizes, and other continuous values
|
|
672
626
|
* where you need to understand the distribution of values rather than just aggregates.
|
|
673
627
|
*
|
|
674
|
-
*
|
|
628
|
+
* **Example** (Using histogram metrics)
|
|
629
|
+
*
|
|
675
630
|
* ```ts
|
|
676
631
|
* import { Data, Effect, Metric } from "effect"
|
|
677
632
|
*
|
|
@@ -746,15 +701,16 @@ export interface GaugeState<in Input extends number | bigint> {
|
|
|
746
701
|
* })
|
|
747
702
|
* ```
|
|
748
703
|
*
|
|
749
|
-
* @since 2.0.0
|
|
750
704
|
* @category Metrics
|
|
705
|
+
* @since 2.0.0
|
|
751
706
|
*/
|
|
752
707
|
export interface Histogram<Input> extends Metric<Input, HistogramState> {}
|
|
753
708
|
|
|
754
709
|
/**
|
|
755
710
|
* State interface for Histogram metrics containing bucket distributions and aggregate statistics.
|
|
756
711
|
*
|
|
757
|
-
*
|
|
712
|
+
* **Example** (Reading histogram state)
|
|
713
|
+
*
|
|
758
714
|
* ```ts
|
|
759
715
|
* import { Data, Effect, Metric } from "effect"
|
|
760
716
|
*
|
|
@@ -832,8 +788,8 @@ export interface Histogram<Input> extends Metric<Input, HistogramState> {}
|
|
|
832
788
|
* })
|
|
833
789
|
* ```
|
|
834
790
|
*
|
|
835
|
-
* @since 2.0.0
|
|
836
791
|
* @category Metrics
|
|
792
|
+
* @since 4.0.0
|
|
837
793
|
*/
|
|
838
794
|
export interface HistogramState {
|
|
839
795
|
readonly buckets: ReadonlyArray<[number, number]>
|
|
@@ -850,7 +806,8 @@ export interface HistogramState {
|
|
|
850
806
|
* (percentiles) such as median (50th), 95th percentile, 99th percentile, etc. They're ideal for
|
|
851
807
|
* understanding performance characteristics like response time distributions.
|
|
852
808
|
*
|
|
853
|
-
*
|
|
809
|
+
* **Example** (Using summary metrics)
|
|
810
|
+
*
|
|
854
811
|
* ```ts
|
|
855
812
|
* import { Data, Effect, Metric } from "effect"
|
|
856
813
|
*
|
|
@@ -935,15 +892,16 @@ export interface HistogramState {
|
|
|
935
892
|
* })
|
|
936
893
|
* ```
|
|
937
894
|
*
|
|
938
|
-
* @since 2.0.0
|
|
939
895
|
* @category Metrics
|
|
896
|
+
* @since 2.0.0
|
|
940
897
|
*/
|
|
941
898
|
export interface Summary<Input> extends Metric<Input, SummaryState> {}
|
|
942
899
|
|
|
943
900
|
/**
|
|
944
901
|
* State interface for Summary metrics containing quantile calculations and aggregate statistics.
|
|
945
902
|
*
|
|
946
|
-
*
|
|
903
|
+
* **Example** (Reading summary state)
|
|
904
|
+
*
|
|
947
905
|
* ```ts
|
|
948
906
|
* import { Data, Effect, Metric } from "effect"
|
|
949
907
|
*
|
|
@@ -1016,8 +974,8 @@ export interface Summary<Input> extends Metric<Input, SummaryState> {}
|
|
|
1016
974
|
* })
|
|
1017
975
|
* ```
|
|
1018
976
|
*
|
|
1019
|
-
* @since 2.0.0
|
|
1020
977
|
* @category Metrics
|
|
978
|
+
* @since 4.0.0
|
|
1021
979
|
*/
|
|
1022
980
|
export interface SummaryState {
|
|
1023
981
|
readonly quantiles: ReadonlyArray<readonly [number, number | undefined]>
|
|
@@ -1031,7 +989,8 @@ export interface SummaryState {
|
|
|
1031
989
|
* The `Metric` namespace provides a comprehensive system for collecting, aggregating, and observing
|
|
1032
990
|
* application metrics in Effect applications.
|
|
1033
991
|
*
|
|
1034
|
-
*
|
|
992
|
+
* **Example** (Collecting application metrics)
|
|
993
|
+
*
|
|
1035
994
|
* ```ts
|
|
1036
995
|
* import { Data, Effect, Metric } from "effect"
|
|
1037
996
|
*
|
|
@@ -1070,13 +1029,13 @@ export interface SummaryState {
|
|
|
1070
1029
|
* ```
|
|
1071
1030
|
*
|
|
1072
1031
|
* @since 2.0.0
|
|
1073
|
-
* @category models
|
|
1074
1032
|
*/
|
|
1075
1033
|
export declare namespace Metric {
|
|
1076
1034
|
/**
|
|
1077
1035
|
* Union type representing all available metric types in the Effect metrics system.
|
|
1078
1036
|
*
|
|
1079
|
-
*
|
|
1037
|
+
* **Example** (Inspecting metric types)
|
|
1038
|
+
*
|
|
1080
1039
|
* ```ts
|
|
1081
1040
|
* import { Data, Effect, Metric } from "effect"
|
|
1082
1041
|
*
|
|
@@ -1148,15 +1107,16 @@ export declare namespace Metric {
|
|
|
1148
1107
|
* })
|
|
1149
1108
|
* ```
|
|
1150
1109
|
*
|
|
1151
|
-
* @since 2.0.0
|
|
1152
1110
|
* @category types
|
|
1111
|
+
* @since 4.0.0
|
|
1153
1112
|
*/
|
|
1154
1113
|
export type Type = "Counter" | "Frequency" | "Gauge" | "Histogram" | "Summary"
|
|
1155
1114
|
|
|
1156
1115
|
/**
|
|
1157
1116
|
* Union type for metric attributes that can be provided as either an object or array of tuples.
|
|
1158
1117
|
*
|
|
1159
|
-
*
|
|
1118
|
+
* **Example** (Providing attributes in different formats)
|
|
1119
|
+
*
|
|
1160
1120
|
* ```ts
|
|
1161
1121
|
* import { Data, Effect, Metric } from "effect"
|
|
1162
1122
|
*
|
|
@@ -1223,15 +1183,16 @@ export declare namespace Metric {
|
|
|
1223
1183
|
* })
|
|
1224
1184
|
* ```
|
|
1225
1185
|
*
|
|
1226
|
-
* @since 2.0.0
|
|
1227
1186
|
* @category types
|
|
1187
|
+
* @since 4.0.0
|
|
1228
1188
|
*/
|
|
1229
1189
|
export type Attributes = AttributeSet | ReadonlyArray<[string, string]>
|
|
1230
1190
|
|
|
1231
1191
|
/**
|
|
1232
1192
|
* Type for metric attributes as a readonly record of string key-value pairs.
|
|
1233
1193
|
*
|
|
1234
|
-
*
|
|
1194
|
+
* **Example** (Combining metric attribute sets)
|
|
1195
|
+
*
|
|
1235
1196
|
* ```ts
|
|
1236
1197
|
* import { Data, Effect, Metric } from "effect"
|
|
1237
1198
|
*
|
|
@@ -1300,15 +1261,16 @@ export declare namespace Metric {
|
|
|
1300
1261
|
* })
|
|
1301
1262
|
* ```
|
|
1302
1263
|
*
|
|
1303
|
-
* @since 2.0.0
|
|
1304
1264
|
* @category types
|
|
1265
|
+
* @since 4.0.0
|
|
1305
1266
|
*/
|
|
1306
1267
|
export type AttributeSet = Readonly<Record<string, string>>
|
|
1307
1268
|
|
|
1308
1269
|
/**
|
|
1309
1270
|
* Utility type to extract the Input type from a Metric type.
|
|
1310
1271
|
*
|
|
1311
|
-
*
|
|
1272
|
+
* **Example** (Extracting metric input types)
|
|
1273
|
+
*
|
|
1312
1274
|
* ```ts
|
|
1313
1275
|
* import { Metric } from "effect"
|
|
1314
1276
|
*
|
|
@@ -1349,8 +1311,8 @@ export declare namespace Metric {
|
|
|
1349
1311
|
* // Metric.update(stringFrequency, 404) // ✗ Type error
|
|
1350
1312
|
* ```
|
|
1351
1313
|
*
|
|
1352
|
-
* @since 2.0.0
|
|
1353
1314
|
* @category types
|
|
1315
|
+
* @since 4.0.0
|
|
1354
1316
|
*/
|
|
1355
1317
|
export type Input<A> = A extends Metric<infer _Input, infer _State> ? _Input
|
|
1356
1318
|
: never
|
|
@@ -1358,7 +1320,8 @@ export declare namespace Metric {
|
|
|
1358
1320
|
/**
|
|
1359
1321
|
* Utility type to extract the State type from a Metric type.
|
|
1360
1322
|
*
|
|
1361
|
-
*
|
|
1323
|
+
* **Example** (Extracting metric state types)
|
|
1324
|
+
*
|
|
1362
1325
|
* ```ts
|
|
1363
1326
|
* import { Effect, Metric } from "effect"
|
|
1364
1327
|
*
|
|
@@ -1408,8 +1371,8 @@ export declare namespace Metric {
|
|
|
1408
1371
|
* })
|
|
1409
1372
|
* ```
|
|
1410
1373
|
*
|
|
1411
|
-
* @since 2.0.0
|
|
1412
1374
|
* @category types
|
|
1375
|
+
* @since 4.0.0
|
|
1413
1376
|
*/
|
|
1414
1377
|
export type State<A> = A extends Metric<infer _Input, infer _State> ? _State
|
|
1415
1378
|
: never
|
|
@@ -1417,7 +1380,8 @@ export declare namespace Metric {
|
|
|
1417
1380
|
/**
|
|
1418
1381
|
* Interface defining the core hooks for metric operations: get, update, and modify.
|
|
1419
1382
|
*
|
|
1420
|
-
*
|
|
1383
|
+
* **Example** (Using metric hooks)
|
|
1384
|
+
*
|
|
1421
1385
|
* ```ts
|
|
1422
1386
|
* import { Data, Effect, Metric } from "effect"
|
|
1423
1387
|
*
|
|
@@ -1453,8 +1417,8 @@ export declare namespace Metric {
|
|
|
1453
1417
|
* })
|
|
1454
1418
|
* ```
|
|
1455
1419
|
*
|
|
1456
|
-
* @since 2.0.0
|
|
1457
1420
|
* @category interfaces
|
|
1421
|
+
* @since 4.0.0
|
|
1458
1422
|
*/
|
|
1459
1423
|
export interface Hooks<in Input, out State> {
|
|
1460
1424
|
readonly get: (context: Context.Context<never>) => State
|
|
@@ -1465,7 +1429,8 @@ export declare namespace Metric {
|
|
|
1465
1429
|
/**
|
|
1466
1430
|
* Interface containing complete metadata information about a metric.
|
|
1467
1431
|
*
|
|
1468
|
-
*
|
|
1432
|
+
* **Example** (Inspecting metric metadata)
|
|
1433
|
+
*
|
|
1469
1434
|
* ```ts
|
|
1470
1435
|
* import { Data, Effect, Metric } from "effect"
|
|
1471
1436
|
*
|
|
@@ -1518,8 +1483,8 @@ export declare namespace Metric {
|
|
|
1518
1483
|
* })
|
|
1519
1484
|
* ```
|
|
1520
1485
|
*
|
|
1521
|
-
* @since 4.0.0
|
|
1522
1486
|
* @category interfaces
|
|
1487
|
+
* @since 4.0.0
|
|
1523
1488
|
*/
|
|
1524
1489
|
export interface Metadata<in Input, out State> {
|
|
1525
1490
|
readonly id: string
|
|
@@ -1532,7 +1497,8 @@ export declare namespace Metric {
|
|
|
1532
1497
|
/**
|
|
1533
1498
|
* Protocol interface for metric snapshots containing metadata and current state.
|
|
1534
1499
|
*
|
|
1535
|
-
*
|
|
1500
|
+
* **Example** (Inspecting metric snapshot protocols)
|
|
1501
|
+
*
|
|
1536
1502
|
* ```ts
|
|
1537
1503
|
* import { Data, Effect, Metric } from "effect"
|
|
1538
1504
|
*
|
|
@@ -1590,8 +1556,8 @@ export declare namespace Metric {
|
|
|
1590
1556
|
* })
|
|
1591
1557
|
* ```
|
|
1592
1558
|
*
|
|
1593
|
-
* @since 4.0.0
|
|
1594
1559
|
* @category interfaces
|
|
1560
|
+
* @since 4.0.0
|
|
1595
1561
|
*/
|
|
1596
1562
|
export interface SnapshotProto<T extends Type, State> {
|
|
1597
1563
|
readonly id: string
|
|
@@ -1604,7 +1570,8 @@ export declare namespace Metric {
|
|
|
1604
1570
|
/**
|
|
1605
1571
|
* Union type representing all possible metric snapshot types with their corresponding states.
|
|
1606
1572
|
*
|
|
1607
|
-
*
|
|
1573
|
+
* **Example** (Analyzing metric snapshots)
|
|
1574
|
+
*
|
|
1608
1575
|
* ```ts
|
|
1609
1576
|
* import { Data, Effect, Metric } from "effect"
|
|
1610
1577
|
*
|
|
@@ -1666,8 +1633,8 @@ export declare namespace Metric {
|
|
|
1666
1633
|
* })
|
|
1667
1634
|
* ```
|
|
1668
1635
|
*
|
|
1669
|
-
* @since 4.0.0
|
|
1670
1636
|
* @category types
|
|
1637
|
+
* @since 4.0.0
|
|
1671
1638
|
*/
|
|
1672
1639
|
export type Snapshot =
|
|
1673
1640
|
| SnapshotProto<"Counter", CounterState<number | bigint>>
|
|
@@ -1680,7 +1647,8 @@ export declare namespace Metric {
|
|
|
1680
1647
|
/**
|
|
1681
1648
|
* Service key for the current metric attributes context.
|
|
1682
1649
|
*
|
|
1683
|
-
*
|
|
1650
|
+
* **Example** (Using the current attributes key)
|
|
1651
|
+
*
|
|
1684
1652
|
* ```ts
|
|
1685
1653
|
* import { Data, Effect, Metric } from "effect"
|
|
1686
1654
|
*
|
|
@@ -1722,15 +1690,22 @@ export declare namespace Metric {
|
|
|
1722
1690
|
* })
|
|
1723
1691
|
* ```
|
|
1724
1692
|
*
|
|
1693
|
+
* @category references
|
|
1725
1694
|
* @since 4.0.0
|
|
1726
|
-
* @category References
|
|
1727
1695
|
*/
|
|
1728
1696
|
export const CurrentMetricAttributesKey = "effect/Metric/CurrentMetricAttributes" as const
|
|
1729
1697
|
|
|
1730
1698
|
/**
|
|
1731
|
-
*
|
|
1699
|
+
* `Context.Reference` for metric attributes applied from the current Effect
|
|
1700
|
+
* context.
|
|
1701
|
+
*
|
|
1702
|
+
* **Details**
|
|
1703
|
+
* The default value is an empty attribute set. Metric reads and updates merge
|
|
1704
|
+
* these contextual attributes with the metric's own attributes to select the
|
|
1705
|
+
* metric series being accessed.
|
|
1706
|
+
*
|
|
1707
|
+
* **Example** (Providing current metric attributes)
|
|
1732
1708
|
*
|
|
1733
|
-
* @example
|
|
1734
1709
|
* ```ts
|
|
1735
1710
|
* import { Data, Effect, Metric } from "effect"
|
|
1736
1711
|
*
|
|
@@ -1758,8 +1733,8 @@ export const CurrentMetricAttributesKey = "effect/Metric/CurrentMetricAttributes
|
|
|
1758
1733
|
* })
|
|
1759
1734
|
* ```
|
|
1760
1735
|
*
|
|
1736
|
+
* @category references
|
|
1761
1737
|
* @since 4.0.0
|
|
1762
|
-
* @category References
|
|
1763
1738
|
*/
|
|
1764
1739
|
export const CurrentMetricAttributes = Context.Reference<Metric.AttributeSet>(CurrentMetricAttributesKey, {
|
|
1765
1740
|
defaultValue: () => ({})
|
|
@@ -1768,10 +1743,14 @@ export const CurrentMetricAttributes = Context.Reference<Metric.AttributeSet>(Cu
|
|
|
1768
1743
|
const MetricRegistryKey = "~effect/observability/Metric/MetricRegistryKey"
|
|
1769
1744
|
|
|
1770
1745
|
/**
|
|
1771
|
-
*
|
|
1746
|
+
* `Context.Reference` for the metric registry in the current context.
|
|
1747
|
+
*
|
|
1748
|
+
* **Details**
|
|
1749
|
+
* The default registry is an empty `Map`. Metrics register their metadata and
|
|
1750
|
+
* hooks lazily in this map when they are read or updated.
|
|
1772
1751
|
*
|
|
1752
|
+
* @category references
|
|
1773
1753
|
* @since 4.0.0
|
|
1774
|
-
* @category References
|
|
1775
1754
|
*/
|
|
1776
1755
|
export const MetricRegistry = Context.Reference<Map<string, Metric.Metadata<any, any>>>(
|
|
1777
1756
|
MetricRegistryKey,
|
|
@@ -2150,7 +2129,8 @@ class MetricTransform<in Input, out State, in Input2> extends Metric$<Input2, St
|
|
|
2150
2129
|
* This function is useful for runtime type checking and ensuring that a value
|
|
2151
2130
|
* conforms to the Metric interface before performing metric operations.
|
|
2152
2131
|
*
|
|
2153
|
-
*
|
|
2132
|
+
* **Example** (Checking metric values)
|
|
2133
|
+
*
|
|
2154
2134
|
* ```ts
|
|
2155
2135
|
* import { Metric } from "effect"
|
|
2156
2136
|
*
|
|
@@ -2164,8 +2144,8 @@ class MetricTransform<in Input, out State, in Input2> extends Metric$<Input2, St
|
|
|
2164
2144
|
* console.log(Metric.isMetric(null)) // false
|
|
2165
2145
|
* ```
|
|
2166
2146
|
*
|
|
2147
|
+
* @category guards
|
|
2167
2148
|
* @since 4.0.0
|
|
2168
|
-
* @category Guards
|
|
2169
2149
|
*/
|
|
2170
2150
|
export const isMetric = (u: unknown): u is Metric<unknown, never> =>
|
|
2171
2151
|
Predicate.hasProperty(u, "~effect/Metric") && u["~effect/Metric"] === "~effect/Metric"
|
|
@@ -2183,7 +2163,8 @@ export const isMetric = (u: unknown): u is Metric<unknown, never> =>
|
|
|
2183
2163
|
* - `incremental` - Set to `true` to create a `Counter` that can only ever be
|
|
2184
2164
|
* incremented.
|
|
2185
2165
|
*
|
|
2186
|
-
*
|
|
2166
|
+
* **Example** (Creating counter metrics)
|
|
2167
|
+
*
|
|
2187
2168
|
* ```ts
|
|
2188
2169
|
* import { Data, Effect, Metric } from "effect"
|
|
2189
2170
|
*
|
|
@@ -2225,8 +2206,8 @@ export const isMetric = (u: unknown): u is Metric<unknown, never> =>
|
|
|
2225
2206
|
* })
|
|
2226
2207
|
* ```
|
|
2227
2208
|
*
|
|
2209
|
+
* @category constructors
|
|
2228
2210
|
* @since 2.0.0
|
|
2229
|
-
* @category Constructors
|
|
2230
2211
|
*/
|
|
2231
2212
|
export const counter: {
|
|
2232
2213
|
/**
|
|
@@ -2242,7 +2223,8 @@ export const counter: {
|
|
|
2242
2223
|
* - `incremental` - Set to `true` to create a `Counter` that can only ever be
|
|
2243
2224
|
* incremented.
|
|
2244
2225
|
*
|
|
2245
|
-
*
|
|
2226
|
+
* **Example** (Creating counter metrics)
|
|
2227
|
+
*
|
|
2246
2228
|
* ```ts
|
|
2247
2229
|
* import { Data, Effect, Metric } from "effect"
|
|
2248
2230
|
*
|
|
@@ -2284,8 +2266,8 @@ export const counter: {
|
|
|
2284
2266
|
* })
|
|
2285
2267
|
* ```
|
|
2286
2268
|
*
|
|
2269
|
+
* @category constructors
|
|
2287
2270
|
* @since 2.0.0
|
|
2288
|
-
* @category Constructors
|
|
2289
2271
|
*/
|
|
2290
2272
|
(
|
|
2291
2273
|
name: string,
|
|
@@ -2309,7 +2291,8 @@ export const counter: {
|
|
|
2309
2291
|
* - `incremental` - Set to `true` to create a `Counter` that can only ever be
|
|
2310
2292
|
* incremented.
|
|
2311
2293
|
*
|
|
2312
|
-
*
|
|
2294
|
+
* **Example** (Creating counter metrics)
|
|
2295
|
+
*
|
|
2313
2296
|
* ```ts
|
|
2314
2297
|
* import { Data, Effect, Metric } from "effect"
|
|
2315
2298
|
*
|
|
@@ -2351,8 +2334,8 @@ export const counter: {
|
|
|
2351
2334
|
* })
|
|
2352
2335
|
* ```
|
|
2353
2336
|
*
|
|
2337
|
+
* @category constructors
|
|
2354
2338
|
* @since 2.0.0
|
|
2355
|
-
* @category Constructors
|
|
2356
2339
|
*/
|
|
2357
2340
|
(
|
|
2358
2341
|
name: string,
|
|
@@ -2378,7 +2361,8 @@ export const counter: {
|
|
|
2378
2361
|
* - `attributes` - The attributes to associate with the `Gauge`.
|
|
2379
2362
|
* - `bigint` - Indicates if the `Gauge` should use the `bigint` type.
|
|
2380
2363
|
*
|
|
2381
|
-
*
|
|
2364
|
+
* **Example** (Creating gauge metrics)
|
|
2365
|
+
*
|
|
2382
2366
|
* ```ts
|
|
2383
2367
|
* import { Data, Effect, Metric } from "effect"
|
|
2384
2368
|
*
|
|
@@ -2425,8 +2409,8 @@ export const counter: {
|
|
|
2425
2409
|
* })
|
|
2426
2410
|
* ```
|
|
2427
2411
|
*
|
|
2412
|
+
* @category constructors
|
|
2428
2413
|
* @since 2.0.0
|
|
2429
|
-
* @category Constructors
|
|
2430
2414
|
*/
|
|
2431
2415
|
export const gauge: {
|
|
2432
2416
|
/**
|
|
@@ -2442,7 +2426,8 @@ export const gauge: {
|
|
|
2442
2426
|
* - `attributes` - The attributes to associate with the `Gauge`.
|
|
2443
2427
|
* - `bigint` - Indicates if the `Gauge` should use the `bigint` type.
|
|
2444
2428
|
*
|
|
2445
|
-
*
|
|
2429
|
+
* **Example** (Creating gauge metrics)
|
|
2430
|
+
*
|
|
2446
2431
|
* ```ts
|
|
2447
2432
|
* import { Data, Effect, Metric } from "effect"
|
|
2448
2433
|
*
|
|
@@ -2489,8 +2474,8 @@ export const gauge: {
|
|
|
2489
2474
|
* })
|
|
2490
2475
|
* ```
|
|
2491
2476
|
*
|
|
2477
|
+
* @category constructors
|
|
2492
2478
|
* @since 2.0.0
|
|
2493
|
-
* @category Constructors
|
|
2494
2479
|
*/
|
|
2495
2480
|
(
|
|
2496
2481
|
name: string,
|
|
@@ -2513,7 +2498,8 @@ export const gauge: {
|
|
|
2513
2498
|
* - `attributes` - The attributes to associate with the `Gauge`.
|
|
2514
2499
|
* - `bigint` - Indicates if the `Gauge` should use the `bigint` type.
|
|
2515
2500
|
*
|
|
2516
|
-
*
|
|
2501
|
+
* **Example** (Creating gauge metrics)
|
|
2502
|
+
*
|
|
2517
2503
|
* ```ts
|
|
2518
2504
|
* import { Data, Effect, Metric } from "effect"
|
|
2519
2505
|
*
|
|
@@ -2560,8 +2546,8 @@ export const gauge: {
|
|
|
2560
2546
|
* })
|
|
2561
2547
|
* ```
|
|
2562
2548
|
*
|
|
2549
|
+
* @category constructors
|
|
2563
2550
|
* @since 2.0.0
|
|
2564
|
-
* @category Constructors
|
|
2565
2551
|
*/
|
|
2566
2552
|
(
|
|
2567
2553
|
name: string,
|
|
@@ -2587,7 +2573,8 @@ export const gauge: {
|
|
|
2587
2573
|
* - `preregisteredWords` - Occurrences which are pre-registered with the
|
|
2588
2574
|
* `Frequency` metric occurrences.
|
|
2589
2575
|
*
|
|
2590
|
-
*
|
|
2576
|
+
* **Example** (Creating frequency metrics)
|
|
2577
|
+
*
|
|
2591
2578
|
* ```ts
|
|
2592
2579
|
* import { Data, Effect, Metric } from "effect"
|
|
2593
2580
|
*
|
|
@@ -2645,8 +2632,8 @@ export const gauge: {
|
|
|
2645
2632
|
* })
|
|
2646
2633
|
* ```
|
|
2647
2634
|
*
|
|
2635
|
+
* @category constructors
|
|
2648
2636
|
* @since 2.0.0
|
|
2649
|
-
* @category Constructors
|
|
2650
2637
|
*/
|
|
2651
2638
|
export const frequency = (name: string, options?: {
|
|
2652
2639
|
readonly description?: string | undefined
|
|
@@ -2666,7 +2653,8 @@ export const frequency = (name: string, options?: {
|
|
|
2666
2653
|
* - `attributes` - The attributes to associate with the `Histogram`.
|
|
2667
2654
|
* - `boundaries` - The bucket boundaries of the `Histogram`
|
|
2668
2655
|
*
|
|
2669
|
-
*
|
|
2656
|
+
* **Example** (Creating histogram metrics)
|
|
2657
|
+
*
|
|
2670
2658
|
* ```ts
|
|
2671
2659
|
* import { Data, Effect, Metric } from "effect"
|
|
2672
2660
|
*
|
|
@@ -2721,8 +2709,8 @@ export const frequency = (name: string, options?: {
|
|
|
2721
2709
|
* })
|
|
2722
2710
|
* ```
|
|
2723
2711
|
*
|
|
2712
|
+
* @category constructors
|
|
2724
2713
|
* @since 2.0.0
|
|
2725
|
-
* @category Constructors
|
|
2726
2714
|
*/
|
|
2727
2715
|
export const histogram = (name: string, options: {
|
|
2728
2716
|
readonly description?: string | undefined
|
|
@@ -2745,7 +2733,8 @@ export const histogram = (name: string, options: {
|
|
|
2745
2733
|
* - `maxSize` - The maximum number of observations to keep.
|
|
2746
2734
|
* - `quantiles` - An array of quantiles to calculate (e.g., [0.5, 0.9]).
|
|
2747
2735
|
*
|
|
2748
|
-
*
|
|
2736
|
+
* **Example** (Creating summary metrics)
|
|
2737
|
+
*
|
|
2749
2738
|
* ```ts
|
|
2750
2739
|
* import { Data, Duration, Effect, Metric } from "effect"
|
|
2751
2740
|
*
|
|
@@ -2771,13 +2760,10 @@ export const histogram = (name: string, options: {
|
|
|
2771
2760
|
* attributes: { service: "upload-service" }
|
|
2772
2761
|
* })
|
|
2773
2762
|
*
|
|
2774
|
-
* //
|
|
2775
|
-
*
|
|
2776
|
-
*
|
|
2763
|
+
* // Record deterministic response times
|
|
2764
|
+
* const responseTimes = [82, 96, 104, 118, 135, 170, 210, 240]
|
|
2765
|
+
* for (const responseTime of responseTimes) {
|
|
2777
2766
|
* yield* Metric.update(responseTimeSummary, responseTime)
|
|
2778
|
-
*
|
|
2779
|
-
* // Wait a bit to simulate different timestamps
|
|
2780
|
-
* yield* Effect.sleep(Duration.millis(100))
|
|
2781
2767
|
* }
|
|
2782
2768
|
*
|
|
2783
2769
|
* // Record some payload sizes
|
|
@@ -2790,20 +2776,28 @@ export const histogram = (name: string, options: {
|
|
|
2790
2776
|
* const responseStats = yield* Metric.value(responseTimeSummary)
|
|
2791
2777
|
* const payloadStats = yield* Metric.value(payloadSizeSummary)
|
|
2792
2778
|
*
|
|
2793
|
-
*
|
|
2794
|
-
*
|
|
2795
|
-
*
|
|
2796
|
-
*
|
|
2779
|
+
* console.log({
|
|
2780
|
+
* count: responseStats.count,
|
|
2781
|
+
* min: responseStats.min,
|
|
2782
|
+
* max: responseStats.max,
|
|
2783
|
+
* sum: responseStats.sum
|
|
2784
|
+
* }) // { count: 8, min: 82, max: 240, sum: 1155 }
|
|
2797
2785
|
*
|
|
2798
|
-
*
|
|
2799
|
-
*
|
|
2786
|
+
* console.log({
|
|
2787
|
+
* count: payloadStats.count,
|
|
2788
|
+
* min: payloadStats.min,
|
|
2789
|
+
* max: payloadStats.max,
|
|
2790
|
+
* sum: payloadStats.sum
|
|
2791
|
+
* }) // { count: 4, min: 1.2, max: 15.6, sum: 26 }
|
|
2792
|
+
*
|
|
2793
|
+
* // Both summaries include quantile information for their configured windows.
|
|
2800
2794
|
*
|
|
2801
2795
|
* return { responseStats, payloadStats }
|
|
2802
2796
|
* })
|
|
2803
2797
|
* ```
|
|
2804
2798
|
*
|
|
2799
|
+
* @category constructors
|
|
2805
2800
|
* @since 2.0.0
|
|
2806
|
-
* @category Constructors
|
|
2807
2801
|
*/
|
|
2808
2802
|
export const summary = (name: string, options: {
|
|
2809
2803
|
readonly description?: string | undefined
|
|
@@ -2819,11 +2813,12 @@ export const summary = (name: string, options: {
|
|
|
2819
2813
|
] as [number, number])
|
|
2820
2814
|
|
|
2821
2815
|
/**
|
|
2822
|
-
* Creates a `Summary` metric that records observations
|
|
2823
|
-
*
|
|
2816
|
+
* Creates a `Summary` metric that records observations with explicit
|
|
2817
|
+
* timestamps and calculates quantiles.
|
|
2824
2818
|
*
|
|
2825
|
-
* Summary metrics are most suitable for
|
|
2826
|
-
*
|
|
2819
|
+
* Summary metrics are most suitable for statistical information about a set of
|
|
2820
|
+
* values. Inputs to this metric are `[value, timestamp]` pairs; the current
|
|
2821
|
+
* clock is used when reading quantiles against the configured `maxAge`.
|
|
2827
2822
|
*
|
|
2828
2823
|
* **Options**
|
|
2829
2824
|
*
|
|
@@ -2833,7 +2828,8 @@ export const summary = (name: string, options: {
|
|
|
2833
2828
|
* - `maxSize` - The maximum number of observations to keep.
|
|
2834
2829
|
* - `quantiles` - An array of quantiles to calculate (e.g., [0.5, 0.9]).
|
|
2835
2830
|
*
|
|
2836
|
-
*
|
|
2831
|
+
* **Example** (Creating summaries with explicit timestamps)
|
|
2832
|
+
*
|
|
2837
2833
|
* ```ts
|
|
2838
2834
|
* import { Metric } from "effect"
|
|
2839
2835
|
*
|
|
@@ -2848,8 +2844,8 @@ export const summary = (name: string, options: {
|
|
|
2848
2844
|
* )
|
|
2849
2845
|
* ```
|
|
2850
2846
|
*
|
|
2851
|
-
* @
|
|
2852
|
-
* @
|
|
2847
|
+
* @category constructors
|
|
2848
|
+
* @since 4.0.0
|
|
2853
2849
|
*/
|
|
2854
2850
|
export const summaryWithTimestamp = (name: string, options: {
|
|
2855
2851
|
readonly description?: string | undefined
|
|
@@ -2869,7 +2865,8 @@ export const summaryWithTimestamp = (name: string, options: {
|
|
|
2869
2865
|
* If `options.boundaries` is not provided, the boundaries will be computed
|
|
2870
2866
|
* using `Metric.exponentialBoundaries({ start: 0.5, factor: 2, count: 35 })`.
|
|
2871
2867
|
*
|
|
2872
|
-
*
|
|
2868
|
+
* **Example** (Recording durations with a timer)
|
|
2869
|
+
*
|
|
2873
2870
|
* ```ts
|
|
2874
2871
|
* import { Data, Duration, Effect, Metric } from "effect"
|
|
2875
2872
|
*
|
|
@@ -2883,19 +2880,23 @@ export const summaryWithTimestamp = (name: string, options: {
|
|
|
2883
2880
|
* attributes: { service: "user-api" }
|
|
2884
2881
|
* })
|
|
2885
2882
|
*
|
|
2886
|
-
* //
|
|
2883
|
+
* // Record a measured API operation duration
|
|
2887
2884
|
* const apiOperation = Effect.gen(function*() {
|
|
2888
|
-
* const
|
|
2889
|
-
* yield* Effect.sleep(Duration.millis(100)) // Simulate work
|
|
2890
|
-
* const duration = Duration.millis(Date.now() - start)
|
|
2891
|
-
*
|
|
2892
|
-
* // Update the timer with the measured duration
|
|
2885
|
+
* const duration = Duration.millis(120)
|
|
2893
2886
|
* yield* Metric.update(apiRequestTimer, duration)
|
|
2887
|
+
*
|
|
2888
|
+
* const state = yield* Metric.value(apiRequestTimer)
|
|
2889
|
+
* console.log({
|
|
2890
|
+
* count: state.count,
|
|
2891
|
+
* min: state.min,
|
|
2892
|
+
* max: state.max,
|
|
2893
|
+
* sum: state.sum
|
|
2894
|
+
* }) // { count: 1, min: 120, max: 120, sum: 120 }
|
|
2894
2895
|
* })
|
|
2895
2896
|
* ```
|
|
2896
2897
|
*
|
|
2898
|
+
* @category constructors
|
|
2897
2899
|
* @since 2.0.0
|
|
2898
|
-
* @category Constructors
|
|
2899
2900
|
*/
|
|
2900
2901
|
export const timer = (name: string, options?: {
|
|
2901
2902
|
readonly description?: string | undefined
|
|
@@ -2913,15 +2914,17 @@ export const timer = (name: string, options?: {
|
|
|
2913
2914
|
/**
|
|
2914
2915
|
* Retrieves the current state of the specified `Metric`.
|
|
2915
2916
|
*
|
|
2916
|
-
*
|
|
2917
|
-
*
|
|
2918
|
-
*
|
|
2919
|
-
* -
|
|
2920
|
-
* -
|
|
2921
|
-
* -
|
|
2922
|
-
* -
|
|
2917
|
+
* **Details**
|
|
2918
|
+
* The returned state depends on the metric type:
|
|
2919
|
+
*
|
|
2920
|
+
* - Counter: `CounterState<number | bigint>` with `count` and `incremental`
|
|
2921
|
+
* - Gauge: `GaugeState<number | bigint>` with `value`
|
|
2922
|
+
* - Frequency: `FrequencyState` with `occurrences`
|
|
2923
|
+
* - Histogram: `HistogramState` with buckets, count, min, max, and sum
|
|
2924
|
+
* - Summary: `SummaryState` with quantiles, count, min, max, and sum
|
|
2925
|
+
*
|
|
2926
|
+
* **Example** (Reading metric state)
|
|
2923
2927
|
*
|
|
2924
|
-
* @example
|
|
2925
2928
|
* ```ts
|
|
2926
2929
|
* import { Effect, Metric } from "effect"
|
|
2927
2930
|
*
|
|
@@ -2949,8 +2952,8 @@ export const timer = (name: string, options?: {
|
|
|
2949
2952
|
* })
|
|
2950
2953
|
* ```
|
|
2951
2954
|
*
|
|
2955
|
+
* @category utils
|
|
2952
2956
|
* @since 2.0.0
|
|
2953
|
-
* @category Utilities
|
|
2954
2957
|
*/
|
|
2955
2958
|
export const value = <Input, State>(
|
|
2956
2959
|
self: Metric<Input, State>
|
|
@@ -2970,7 +2973,8 @@ export const value = <Input, State>(
|
|
|
2970
2973
|
* - **Histogram**: Same as `update` - records the input value in the appropriate bucket
|
|
2971
2974
|
* - **Summary**: Same as `update` - records the input observation
|
|
2972
2975
|
*
|
|
2973
|
-
*
|
|
2976
|
+
* **Example** (Modifying metric values)
|
|
2977
|
+
*
|
|
2974
2978
|
* ```ts
|
|
2975
2979
|
* import { Effect, Metric } from "effect"
|
|
2976
2980
|
*
|
|
@@ -2997,8 +3001,8 @@ export const value = <Input, State>(
|
|
|
2997
3001
|
* })
|
|
2998
3002
|
* ```
|
|
2999
3003
|
*
|
|
3000
|
-
* @
|
|
3001
|
-
* @
|
|
3004
|
+
* @category utils
|
|
3005
|
+
* @since 3.6.5
|
|
3002
3006
|
*/
|
|
3003
3007
|
export const modify: {
|
|
3004
3008
|
/**
|
|
@@ -3011,7 +3015,8 @@ export const modify: {
|
|
|
3011
3015
|
* - **Histogram**: Same as `update` - records the input value in the appropriate bucket
|
|
3012
3016
|
* - **Summary**: Same as `update` - records the input observation
|
|
3013
3017
|
*
|
|
3014
|
-
*
|
|
3018
|
+
* **Example** (Modifying metric values)
|
|
3019
|
+
*
|
|
3015
3020
|
* ```ts
|
|
3016
3021
|
* import { Effect, Metric } from "effect"
|
|
3017
3022
|
*
|
|
@@ -3038,8 +3043,8 @@ export const modify: {
|
|
|
3038
3043
|
* })
|
|
3039
3044
|
* ```
|
|
3040
3045
|
*
|
|
3041
|
-
* @
|
|
3042
|
-
* @
|
|
3046
|
+
* @category utils
|
|
3047
|
+
* @since 3.6.5
|
|
3043
3048
|
*/
|
|
3044
3049
|
<Input>(input: Input): <State>(self: Metric<Input, State>) => Effect<void>
|
|
3045
3050
|
/**
|
|
@@ -3052,7 +3057,8 @@ export const modify: {
|
|
|
3052
3057
|
* - **Histogram**: Same as `update` - records the input value in the appropriate bucket
|
|
3053
3058
|
* - **Summary**: Same as `update` - records the input observation
|
|
3054
3059
|
*
|
|
3055
|
-
*
|
|
3060
|
+
* **Example** (Modifying metric values)
|
|
3061
|
+
*
|
|
3056
3062
|
* ```ts
|
|
3057
3063
|
* import { Effect, Metric } from "effect"
|
|
3058
3064
|
*
|
|
@@ -3079,8 +3085,8 @@ export const modify: {
|
|
|
3079
3085
|
* })
|
|
3080
3086
|
* ```
|
|
3081
3087
|
*
|
|
3082
|
-
* @
|
|
3083
|
-
* @
|
|
3088
|
+
* @category utils
|
|
3089
|
+
* @since 3.6.5
|
|
3084
3090
|
*/
|
|
3085
3091
|
<Input, State>(self: Metric<Input, State>, input: Input): Effect<void>
|
|
3086
3092
|
} = dual<
|
|
@@ -3094,7 +3100,8 @@ export const modify: {
|
|
|
3094
3100
|
* - **Histogram**: Same as `update` - records the input value in the appropriate bucket
|
|
3095
3101
|
* - **Summary**: Same as `update` - records the input observation
|
|
3096
3102
|
*
|
|
3097
|
-
*
|
|
3103
|
+
* **Example** (Modifying metric values)
|
|
3104
|
+
*
|
|
3098
3105
|
* ```ts
|
|
3099
3106
|
* import { Effect, Metric } from "effect"
|
|
3100
3107
|
*
|
|
@@ -3121,8 +3128,8 @@ export const modify: {
|
|
|
3121
3128
|
* })
|
|
3122
3129
|
* ```
|
|
3123
3130
|
*
|
|
3124
|
-
* @
|
|
3125
|
-
* @
|
|
3131
|
+
* @category utils
|
|
3132
|
+
* @since 3.6.5
|
|
3126
3133
|
*/
|
|
3127
3134
|
<Input>(input: Input) => <State>(self: Metric<Input, State>) => Effect<void>,
|
|
3128
3135
|
/**
|
|
@@ -3135,7 +3142,8 @@ export const modify: {
|
|
|
3135
3142
|
* - **Histogram**: Same as `update` - records the input value in the appropriate bucket
|
|
3136
3143
|
* - **Summary**: Same as `update` - records the input observation
|
|
3137
3144
|
*
|
|
3138
|
-
*
|
|
3145
|
+
* **Example** (Modifying metric values)
|
|
3146
|
+
*
|
|
3139
3147
|
* ```ts
|
|
3140
3148
|
* import { Effect, Metric } from "effect"
|
|
3141
3149
|
*
|
|
@@ -3162,8 +3170,8 @@ export const modify: {
|
|
|
3162
3170
|
* })
|
|
3163
3171
|
* ```
|
|
3164
3172
|
*
|
|
3165
|
-
* @
|
|
3166
|
-
* @
|
|
3173
|
+
* @category utils
|
|
3174
|
+
* @since 3.6.5
|
|
3167
3175
|
*/
|
|
3168
3176
|
<Input, State>(self: Metric<Input, State>, input: Input) => Effect<void>
|
|
3169
3177
|
>(2, (self, input) =>
|
|
@@ -3182,7 +3190,8 @@ export const modify: {
|
|
|
3182
3190
|
* - **Histogram**: Records the input value in the appropriate bucket
|
|
3183
3191
|
* - **Summary**: Records the input value as a new observation
|
|
3184
3192
|
*
|
|
3185
|
-
*
|
|
3193
|
+
* **Example** (Updating metric values)
|
|
3194
|
+
*
|
|
3186
3195
|
* ```ts
|
|
3187
3196
|
* import { Effect, Metric } from "effect"
|
|
3188
3197
|
*
|
|
@@ -3218,8 +3227,8 @@ export const modify: {
|
|
|
3218
3227
|
* })
|
|
3219
3228
|
* ```
|
|
3220
3229
|
*
|
|
3230
|
+
* @category utils
|
|
3221
3231
|
* @since 2.0.0
|
|
3222
|
-
* @category Utilities
|
|
3223
3232
|
*/
|
|
3224
3233
|
export const update: {
|
|
3225
3234
|
/**
|
|
@@ -3232,7 +3241,8 @@ export const update: {
|
|
|
3232
3241
|
* - **Histogram**: Records the input value in the appropriate bucket
|
|
3233
3242
|
* - **Summary**: Records the input value as a new observation
|
|
3234
3243
|
*
|
|
3235
|
-
*
|
|
3244
|
+
* **Example** (Updating metric values)
|
|
3245
|
+
*
|
|
3236
3246
|
* ```ts
|
|
3237
3247
|
* import { Effect, Metric } from "effect"
|
|
3238
3248
|
*
|
|
@@ -3268,8 +3278,8 @@ export const update: {
|
|
|
3268
3278
|
* })
|
|
3269
3279
|
* ```
|
|
3270
3280
|
*
|
|
3281
|
+
* @category utils
|
|
3271
3282
|
* @since 2.0.0
|
|
3272
|
-
* @category Utilities
|
|
3273
3283
|
*/
|
|
3274
3284
|
<Input>(input: Input): <State>(self: Metric<Input, State>) => Effect<void>
|
|
3275
3285
|
/**
|
|
@@ -3282,7 +3292,8 @@ export const update: {
|
|
|
3282
3292
|
* - **Histogram**: Records the input value in the appropriate bucket
|
|
3283
3293
|
* - **Summary**: Records the input value as a new observation
|
|
3284
3294
|
*
|
|
3285
|
-
*
|
|
3295
|
+
* **Example** (Updating metric values)
|
|
3296
|
+
*
|
|
3286
3297
|
* ```ts
|
|
3287
3298
|
* import { Effect, Metric } from "effect"
|
|
3288
3299
|
*
|
|
@@ -3318,8 +3329,8 @@ export const update: {
|
|
|
3318
3329
|
* })
|
|
3319
3330
|
* ```
|
|
3320
3331
|
*
|
|
3332
|
+
* @category utils
|
|
3321
3333
|
* @since 2.0.0
|
|
3322
|
-
* @category Utilities
|
|
3323
3334
|
*/
|
|
3324
3335
|
<Input, State>(self: Metric<Input, State>, input: Input): Effect<void>
|
|
3325
3336
|
} = dual<
|
|
@@ -3333,7 +3344,8 @@ export const update: {
|
|
|
3333
3344
|
* - **Histogram**: Records the input value in the appropriate bucket
|
|
3334
3345
|
* - **Summary**: Records the input value as a new observation
|
|
3335
3346
|
*
|
|
3336
|
-
*
|
|
3347
|
+
* **Example** (Updating metric values)
|
|
3348
|
+
*
|
|
3337
3349
|
* ```ts
|
|
3338
3350
|
* import { Effect, Metric } from "effect"
|
|
3339
3351
|
*
|
|
@@ -3369,8 +3381,8 @@ export const update: {
|
|
|
3369
3381
|
* })
|
|
3370
3382
|
* ```
|
|
3371
3383
|
*
|
|
3384
|
+
* @category utils
|
|
3372
3385
|
* @since 2.0.0
|
|
3373
|
-
* @category Utilities
|
|
3374
3386
|
*/
|
|
3375
3387
|
<Input>(input: Input) => <State>(self: Metric<Input, State>) => Effect<void>,
|
|
3376
3388
|
/**
|
|
@@ -3383,7 +3395,8 @@ export const update: {
|
|
|
3383
3395
|
* - **Histogram**: Records the input value in the appropriate bucket
|
|
3384
3396
|
* - **Summary**: Records the input value as a new observation
|
|
3385
3397
|
*
|
|
3386
|
-
*
|
|
3398
|
+
* **Example** (Updating metric values)
|
|
3399
|
+
*
|
|
3387
3400
|
* ```ts
|
|
3388
3401
|
* import { Effect, Metric } from "effect"
|
|
3389
3402
|
*
|
|
@@ -3419,8 +3432,8 @@ export const update: {
|
|
|
3419
3432
|
* })
|
|
3420
3433
|
* ```
|
|
3421
3434
|
*
|
|
3435
|
+
* @category utils
|
|
3422
3436
|
* @since 2.0.0
|
|
3423
|
-
* @category Utilities
|
|
3424
3437
|
*/
|
|
3425
3438
|
<Input, State>(self: Metric<Input, State>, input: Input) => Effect<void>
|
|
3426
3439
|
>(
|
|
@@ -3434,7 +3447,8 @@ export const update: {
|
|
|
3434
3447
|
* of the specified new type, which must be transformable to the input type of
|
|
3435
3448
|
* this metric.
|
|
3436
3449
|
*
|
|
3437
|
-
*
|
|
3450
|
+
* **Example** (Mapping metric inputs)
|
|
3451
|
+
*
|
|
3438
3452
|
* ```ts
|
|
3439
3453
|
* import { Data, Effect, Metric } from "effect"
|
|
3440
3454
|
*
|
|
@@ -3464,8 +3478,8 @@ export const update: {
|
|
|
3464
3478
|
* })
|
|
3465
3479
|
* ```
|
|
3466
3480
|
*
|
|
3481
|
+
* @category mapping
|
|
3467
3482
|
* @since 2.0.0
|
|
3468
|
-
* @category Mapping
|
|
3469
3483
|
*/
|
|
3470
3484
|
export const mapInput: {
|
|
3471
3485
|
/**
|
|
@@ -3473,7 +3487,8 @@ export const mapInput: {
|
|
|
3473
3487
|
* of the specified new type, which must be transformable to the input type of
|
|
3474
3488
|
* this metric.
|
|
3475
3489
|
*
|
|
3476
|
-
*
|
|
3490
|
+
* **Example** (Mapping metric inputs)
|
|
3491
|
+
*
|
|
3477
3492
|
* ```ts
|
|
3478
3493
|
* import { Data, Effect, Metric } from "effect"
|
|
3479
3494
|
*
|
|
@@ -3503,8 +3518,8 @@ export const mapInput: {
|
|
|
3503
3518
|
* })
|
|
3504
3519
|
* ```
|
|
3505
3520
|
*
|
|
3521
|
+
* @category mapping
|
|
3506
3522
|
* @since 2.0.0
|
|
3507
|
-
* @category Mapping
|
|
3508
3523
|
*/
|
|
3509
3524
|
<Input, Input2 extends Input>(f: (input: Input2, context: Context.Context<never>) => Input): <State>(self: Metric<Input, State>) => Metric<Input2, State>
|
|
3510
3525
|
/**
|
|
@@ -3512,7 +3527,8 @@ export const mapInput: {
|
|
|
3512
3527
|
* of the specified new type, which must be transformable to the input type of
|
|
3513
3528
|
* this metric.
|
|
3514
3529
|
*
|
|
3515
|
-
*
|
|
3530
|
+
* **Example** (Mapping metric inputs)
|
|
3531
|
+
*
|
|
3516
3532
|
* ```ts
|
|
3517
3533
|
* import { Data, Effect, Metric } from "effect"
|
|
3518
3534
|
*
|
|
@@ -3542,8 +3558,8 @@ export const mapInput: {
|
|
|
3542
3558
|
* })
|
|
3543
3559
|
* ```
|
|
3544
3560
|
*
|
|
3561
|
+
* @category mapping
|
|
3545
3562
|
* @since 2.0.0
|
|
3546
|
-
* @category Mapping
|
|
3547
3563
|
*/
|
|
3548
3564
|
<Input, State, Input2>(
|
|
3549
3565
|
self: Metric<Input, State>,
|
|
@@ -3555,7 +3571,8 @@ export const mapInput: {
|
|
|
3555
3571
|
* of the specified new type, which must be transformable to the input type of
|
|
3556
3572
|
* this metric.
|
|
3557
3573
|
*
|
|
3558
|
-
*
|
|
3574
|
+
* **Example** (Mapping metric inputs)
|
|
3575
|
+
*
|
|
3559
3576
|
* ```ts
|
|
3560
3577
|
* import { Data, Effect, Metric } from "effect"
|
|
3561
3578
|
*
|
|
@@ -3585,8 +3602,8 @@ export const mapInput: {
|
|
|
3585
3602
|
* })
|
|
3586
3603
|
* ```
|
|
3587
3604
|
*
|
|
3605
|
+
* @category mapping
|
|
3588
3606
|
* @since 2.0.0
|
|
3589
|
-
* @category Mapping
|
|
3590
3607
|
*/
|
|
3591
3608
|
<Input, Input2 extends Input>(f: (input: Input2, context: Context.Context<never>) => Input) => <State>(self: Metric<Input, State>) => Metric<Input2, State>,
|
|
3592
3609
|
/**
|
|
@@ -3594,7 +3611,8 @@ export const mapInput: {
|
|
|
3594
3611
|
* of the specified new type, which must be transformable to the input type of
|
|
3595
3612
|
* this metric.
|
|
3596
3613
|
*
|
|
3597
|
-
*
|
|
3614
|
+
* **Example** (Mapping metric inputs)
|
|
3615
|
+
*
|
|
3598
3616
|
* ```ts
|
|
3599
3617
|
* import { Data, Effect, Metric } from "effect"
|
|
3600
3618
|
*
|
|
@@ -3624,8 +3642,8 @@ export const mapInput: {
|
|
|
3624
3642
|
* })
|
|
3625
3643
|
* ```
|
|
3626
3644
|
*
|
|
3645
|
+
* @category mapping
|
|
3627
3646
|
* @since 2.0.0
|
|
3628
|
-
* @category Mapping
|
|
3629
3647
|
*/
|
|
3630
3648
|
<Input, State, Input2>(
|
|
3631
3649
|
self: Metric<Input, State>,
|
|
@@ -3647,7 +3665,8 @@ export const mapInput: {
|
|
|
3647
3665
|
* of any type, and translates them to updates with the specified constant
|
|
3648
3666
|
* update value.
|
|
3649
3667
|
*
|
|
3650
|
-
*
|
|
3668
|
+
* **Example** (Ignoring inputs with a constant value)
|
|
3669
|
+
*
|
|
3651
3670
|
* ```ts
|
|
3652
3671
|
* import { Data, Effect, Metric } from "effect"
|
|
3653
3672
|
*
|
|
@@ -3674,8 +3693,8 @@ export const mapInput: {
|
|
|
3674
3693
|
* })
|
|
3675
3694
|
* ```
|
|
3676
3695
|
*
|
|
3677
|
-
* @since 2.0.0
|
|
3678
3696
|
* @category Input
|
|
3697
|
+
* @since 2.0.0
|
|
3679
3698
|
*/
|
|
3680
3699
|
export const withConstantInput: {
|
|
3681
3700
|
/**
|
|
@@ -3683,7 +3702,8 @@ export const withConstantInput: {
|
|
|
3683
3702
|
* of any type, and translates them to updates with the specified constant
|
|
3684
3703
|
* update value.
|
|
3685
3704
|
*
|
|
3686
|
-
*
|
|
3705
|
+
* **Example** (Ignoring inputs with a constant value)
|
|
3706
|
+
*
|
|
3687
3707
|
* ```ts
|
|
3688
3708
|
* import { Data, Effect, Metric } from "effect"
|
|
3689
3709
|
*
|
|
@@ -3710,8 +3730,8 @@ export const withConstantInput: {
|
|
|
3710
3730
|
* })
|
|
3711
3731
|
* ```
|
|
3712
3732
|
*
|
|
3713
|
-
* @since 2.0.0
|
|
3714
3733
|
* @category Input
|
|
3734
|
+
* @since 2.0.0
|
|
3715
3735
|
*/
|
|
3716
3736
|
<Input>(input: Input): <State>(self: Metric<Input, State>) => Metric<unknown, State>
|
|
3717
3737
|
/**
|
|
@@ -3719,7 +3739,8 @@ export const withConstantInput: {
|
|
|
3719
3739
|
* of any type, and translates them to updates with the specified constant
|
|
3720
3740
|
* update value.
|
|
3721
3741
|
*
|
|
3722
|
-
*
|
|
3742
|
+
* **Example** (Ignoring inputs with a constant value)
|
|
3743
|
+
*
|
|
3723
3744
|
* ```ts
|
|
3724
3745
|
* import { Data, Effect, Metric } from "effect"
|
|
3725
3746
|
*
|
|
@@ -3746,8 +3767,8 @@ export const withConstantInput: {
|
|
|
3746
3767
|
* })
|
|
3747
3768
|
* ```
|
|
3748
3769
|
*
|
|
3749
|
-
* @since 2.0.0
|
|
3750
3770
|
* @category Input
|
|
3771
|
+
* @since 2.0.0
|
|
3751
3772
|
*/
|
|
3752
3773
|
<Input, State>(self: Metric<Input, State>, input: Input): Metric<unknown, State>
|
|
3753
3774
|
} = dual<
|
|
@@ -3756,7 +3777,8 @@ export const withConstantInput: {
|
|
|
3756
3777
|
* of any type, and translates them to updates with the specified constant
|
|
3757
3778
|
* update value.
|
|
3758
3779
|
*
|
|
3759
|
-
*
|
|
3780
|
+
* **Example** (Ignoring inputs with a constant value)
|
|
3781
|
+
*
|
|
3760
3782
|
* ```ts
|
|
3761
3783
|
* import { Data, Effect, Metric } from "effect"
|
|
3762
3784
|
*
|
|
@@ -3783,8 +3805,8 @@ export const withConstantInput: {
|
|
|
3783
3805
|
* })
|
|
3784
3806
|
* ```
|
|
3785
3807
|
*
|
|
3786
|
-
* @since 2.0.0
|
|
3787
3808
|
* @category Input
|
|
3809
|
+
* @since 2.0.0
|
|
3788
3810
|
*/
|
|
3789
3811
|
<Input>(input: Input) => <State>(self: Metric<Input, State>) => Metric<unknown, State>,
|
|
3790
3812
|
/**
|
|
@@ -3792,7 +3814,8 @@ export const withConstantInput: {
|
|
|
3792
3814
|
* of any type, and translates them to updates with the specified constant
|
|
3793
3815
|
* update value.
|
|
3794
3816
|
*
|
|
3795
|
-
*
|
|
3817
|
+
* **Example** (Ignoring inputs with a constant value)
|
|
3818
|
+
*
|
|
3796
3819
|
* ```ts
|
|
3797
3820
|
* import { Data, Effect, Metric } from "effect"
|
|
3798
3821
|
*
|
|
@@ -3819,8 +3842,8 @@ export const withConstantInput: {
|
|
|
3819
3842
|
* })
|
|
3820
3843
|
* ```
|
|
3821
3844
|
*
|
|
3822
|
-
* @since 2.0.0
|
|
3823
3845
|
* @category Input
|
|
3846
|
+
* @since 2.0.0
|
|
3824
3847
|
*/
|
|
3825
3848
|
<Input, State>(self: Metric<Input, State>, input: Input) => Metric<unknown, State>
|
|
3826
3849
|
>(2, (self, input) => mapInput(self, () => input))
|
|
@@ -3832,7 +3855,8 @@ export const withConstantInput: {
|
|
|
3832
3855
|
* enabling filtering, grouping, and more detailed analysis. Each combination
|
|
3833
3856
|
* of attribute values creates a separate metric series.
|
|
3834
3857
|
*
|
|
3835
|
-
*
|
|
3858
|
+
* **Example** (Applying metric attributes)
|
|
3859
|
+
*
|
|
3836
3860
|
* ```ts
|
|
3837
3861
|
* import { Effect, Metric } from "effect"
|
|
3838
3862
|
*
|
|
@@ -3877,8 +3901,8 @@ export const withConstantInput: {
|
|
|
3877
3901
|
* })
|
|
3878
3902
|
* ```
|
|
3879
3903
|
*
|
|
3880
|
-
* @since 4.0.0
|
|
3881
3904
|
* @category Attributes
|
|
3905
|
+
* @since 4.0.0
|
|
3882
3906
|
*/
|
|
3883
3907
|
export const withAttributes: {
|
|
3884
3908
|
/**
|
|
@@ -3888,7 +3912,8 @@ export const withAttributes: {
|
|
|
3888
3912
|
* enabling filtering, grouping, and more detailed analysis. Each combination
|
|
3889
3913
|
* of attribute values creates a separate metric series.
|
|
3890
3914
|
*
|
|
3891
|
-
*
|
|
3915
|
+
* **Example** (Applying metric attributes)
|
|
3916
|
+
*
|
|
3892
3917
|
* ```ts
|
|
3893
3918
|
* import { Effect, Metric } from "effect"
|
|
3894
3919
|
*
|
|
@@ -3933,8 +3958,8 @@ export const withAttributes: {
|
|
|
3933
3958
|
* })
|
|
3934
3959
|
* ```
|
|
3935
3960
|
*
|
|
3936
|
-
* @since 4.0.0
|
|
3937
3961
|
* @category Attributes
|
|
3962
|
+
* @since 4.0.0
|
|
3938
3963
|
*/
|
|
3939
3964
|
(attributes: Metric.Attributes): <Input, State>(self: Metric<Input, State>) => Metric<Input, State>
|
|
3940
3965
|
/**
|
|
@@ -3944,7 +3969,8 @@ export const withAttributes: {
|
|
|
3944
3969
|
* enabling filtering, grouping, and more detailed analysis. Each combination
|
|
3945
3970
|
* of attribute values creates a separate metric series.
|
|
3946
3971
|
*
|
|
3947
|
-
*
|
|
3972
|
+
* **Example** (Applying metric attributes)
|
|
3973
|
+
*
|
|
3948
3974
|
* ```ts
|
|
3949
3975
|
* import { Effect, Metric } from "effect"
|
|
3950
3976
|
*
|
|
@@ -3989,8 +4015,8 @@ export const withAttributes: {
|
|
|
3989
4015
|
* })
|
|
3990
4016
|
* ```
|
|
3991
4017
|
*
|
|
3992
|
-
* @since 4.0.0
|
|
3993
4018
|
* @category Attributes
|
|
4019
|
+
* @since 4.0.0
|
|
3994
4020
|
*/
|
|
3995
4021
|
<Input, State>(self: Metric<Input, State>, attributes: Metric.Attributes): Metric<Input, State>
|
|
3996
4022
|
} = dual<
|
|
@@ -4001,7 +4027,8 @@ export const withAttributes: {
|
|
|
4001
4027
|
* enabling filtering, grouping, and more detailed analysis. Each combination
|
|
4002
4028
|
* of attribute values creates a separate metric series.
|
|
4003
4029
|
*
|
|
4004
|
-
*
|
|
4030
|
+
* **Example** (Applying metric attributes)
|
|
4031
|
+
*
|
|
4005
4032
|
* ```ts
|
|
4006
4033
|
* import { Effect, Metric } from "effect"
|
|
4007
4034
|
*
|
|
@@ -4046,8 +4073,8 @@ export const withAttributes: {
|
|
|
4046
4073
|
* })
|
|
4047
4074
|
* ```
|
|
4048
4075
|
*
|
|
4049
|
-
* @since 4.0.0
|
|
4050
4076
|
* @category Attributes
|
|
4077
|
+
* @since 4.0.0
|
|
4051
4078
|
*/
|
|
4052
4079
|
(attributes: Metric.Attributes) => <Input, State>(self: Metric<Input, State>) => Metric<Input, State>,
|
|
4053
4080
|
/**
|
|
@@ -4057,7 +4084,8 @@ export const withAttributes: {
|
|
|
4057
4084
|
* enabling filtering, grouping, and more detailed analysis. Each combination
|
|
4058
4085
|
* of attribute values creates a separate metric series.
|
|
4059
4086
|
*
|
|
4060
|
-
*
|
|
4087
|
+
* **Example** (Applying metric attributes)
|
|
4088
|
+
*
|
|
4061
4089
|
* ```ts
|
|
4062
4090
|
* import { Effect, Metric } from "effect"
|
|
4063
4091
|
*
|
|
@@ -4102,8 +4130,8 @@ export const withAttributes: {
|
|
|
4102
4130
|
* })
|
|
4103
4131
|
* ```
|
|
4104
4132
|
*
|
|
4105
|
-
* @since 4.0.0
|
|
4106
4133
|
* @category Attributes
|
|
4134
|
+
* @since 4.0.0
|
|
4107
4135
|
*/
|
|
4108
4136
|
<Input, State>(self: Metric<Input, State>, attributes: Metric.Attributes) => Metric<Input, State>
|
|
4109
4137
|
>(2, <Input, State>(
|
|
@@ -4125,7 +4153,8 @@ export const withAttributes: {
|
|
|
4125
4153
|
* Returns an array of metric snapshots, each containing the metric's metadata
|
|
4126
4154
|
* (name, description, type) and current state (values, counts, etc.).
|
|
4127
4155
|
*
|
|
4128
|
-
*
|
|
4156
|
+
* **Example** (Capturing metric snapshots)
|
|
4157
|
+
*
|
|
4129
4158
|
* ```ts
|
|
4130
4159
|
* import { Console, Data, Effect, Metric } from "effect"
|
|
4131
4160
|
*
|
|
@@ -4164,8 +4193,8 @@ export const withAttributes: {
|
|
|
4164
4193
|
* })
|
|
4165
4194
|
* ```
|
|
4166
4195
|
*
|
|
4167
|
-
* @since 2.0.0
|
|
4168
4196
|
* @category Snapshotting
|
|
4197
|
+
* @since 2.0.0
|
|
4169
4198
|
*/
|
|
4170
4199
|
export const snapshot: Effect<ReadonlyArray<Metric.Snapshot>> = InternalEffect.map(
|
|
4171
4200
|
InternalEffect.context(),
|
|
@@ -4180,7 +4209,8 @@ export const snapshot: Effect<ReadonlyArray<Metric.Snapshot>> = InternalEffect.m
|
|
|
4180
4209
|
* in an easy-to-read table showing names, descriptions, types, attributes,
|
|
4181
4210
|
* and current state values.
|
|
4182
4211
|
*
|
|
4183
|
-
*
|
|
4212
|
+
* **Example** (Dumping metrics as text)
|
|
4213
|
+
*
|
|
4184
4214
|
* ```ts
|
|
4185
4215
|
* import { Console, Data, Effect, Metric } from "effect"
|
|
4186
4216
|
*
|
|
@@ -4223,8 +4253,8 @@ export const snapshot: Effect<ReadonlyArray<Metric.Snapshot>> = InternalEffect.m
|
|
|
4223
4253
|
* })
|
|
4224
4254
|
* ```
|
|
4225
4255
|
*
|
|
4226
|
-
* @since 2.0.0
|
|
4227
4256
|
* @category Debugging
|
|
4257
|
+
* @since 4.0.0
|
|
4228
4258
|
*/
|
|
4229
4259
|
export const dump: Effect<string> = InternalEffect.flatMap(InternalEffect.context(), (context) => {
|
|
4230
4260
|
const metrics = snapshotUnsafe(context)
|
|
@@ -4269,7 +4299,8 @@ export const dump: Effect<string> = InternalEffect.flatMap(InternalEffect.contex
|
|
|
4269
4299
|
* manual handling of the services context. Use the safe `snapshot` function for normal
|
|
4270
4300
|
* application code.
|
|
4271
4301
|
*
|
|
4272
|
-
*
|
|
4302
|
+
* **Example** (Capturing snapshots from a context)
|
|
4303
|
+
*
|
|
4273
4304
|
* ```ts
|
|
4274
4305
|
* import { Data, Effect, Metric } from "effect"
|
|
4275
4306
|
*
|
|
@@ -4296,13 +4327,14 @@ export const dump: Effect<string> = InternalEffect.flatMap(InternalEffect.contex
|
|
|
4296
4327
|
*
|
|
4297
4328
|
* // Use snapshotUnsafe for direct, synchronous access
|
|
4298
4329
|
* const snapshots = Metric.snapshotUnsafe(services)
|
|
4330
|
+
* const exportBatchCreatedAt = 1_700_000_000_000
|
|
4299
4331
|
*
|
|
4300
4332
|
* // Process snapshots immediately (useful for exporters, debugging tools)
|
|
4301
4333
|
* const exportData = snapshots.map((snapshot) => ({
|
|
4302
4334
|
* name: snapshot.id,
|
|
4303
4335
|
* type: snapshot.type,
|
|
4304
4336
|
* value: snapshot.state,
|
|
4305
|
-
* timestamp:
|
|
4337
|
+
* timestamp: exportBatchCreatedAt
|
|
4306
4338
|
* }))
|
|
4307
4339
|
*
|
|
4308
4340
|
* // This is synchronous and doesn't involve Effect overhead
|
|
@@ -4318,8 +4350,8 @@ export const dump: Effect<string> = InternalEffect.flatMap(InternalEffect.contex
|
|
|
4318
4350
|
* })
|
|
4319
4351
|
* ```
|
|
4320
4352
|
*
|
|
4321
|
-
* @since 2.0.0
|
|
4322
4353
|
* @category Snapshotting
|
|
4354
|
+
* @since 4.0.0
|
|
4323
4355
|
*/
|
|
4324
4356
|
export const snapshotUnsafe = (context: Context.Context<never>): ReadonlyArray<Metric.Snapshot> => {
|
|
4325
4357
|
const registry = Context.get(context, MetricRegistry)
|
|
@@ -4398,7 +4430,8 @@ const attributesToString = (attributes: Metric.AttributeSet): string => {
|
|
|
4398
4430
|
* non-positive values, and automatically appending positive infinity as the
|
|
4399
4431
|
* final boundary.
|
|
4400
4432
|
*
|
|
4401
|
-
*
|
|
4433
|
+
* **Example** (Creating boundaries from values)
|
|
4434
|
+
*
|
|
4402
4435
|
* ```ts
|
|
4403
4436
|
* import { Data, Effect, Metric } from "effect"
|
|
4404
4437
|
*
|
|
@@ -4452,20 +4485,24 @@ const attributesToString = (attributes: Metric.AttributeSet): string => {
|
|
|
4452
4485
|
* })
|
|
4453
4486
|
* ```
|
|
4454
4487
|
*
|
|
4455
|
-
* @since 2.0.0
|
|
4456
4488
|
* @category Boundaries
|
|
4489
|
+
* @since 4.0.0
|
|
4457
4490
|
*/
|
|
4458
4491
|
export const boundariesFromIterable = (iterable: Iterable<number>): ReadonlyArray<number> =>
|
|
4459
4492
|
Arr.append(Arr.filter(new Set(iterable), (n) => n > 0), Number.POSITIVE_INFINITY)
|
|
4460
4493
|
|
|
4461
4494
|
/**
|
|
4462
|
-
*
|
|
4463
|
-
*
|
|
4495
|
+
* Creates histogram bucket boundaries from a linear sequence and appends
|
|
4496
|
+
* positive infinity.
|
|
4464
4497
|
*
|
|
4465
|
-
*
|
|
4466
|
-
*
|
|
4498
|
+
* **Details**
|
|
4499
|
+
* Generates `count - 1` finite boundaries using `start + width + index` for
|
|
4500
|
+
* each zero-based index, then applies the same normalization as
|
|
4501
|
+
* `boundariesFromIterable`: non-positive values are removed, duplicates are
|
|
4502
|
+
* collapsed, and `Infinity` is appended.
|
|
4503
|
+
*
|
|
4504
|
+
* **Example** (Creating linear boundaries)
|
|
4467
4505
|
*
|
|
4468
|
-
* @example
|
|
4469
4506
|
* ```ts
|
|
4470
4507
|
* import { Data, Effect, Metric } from "effect"
|
|
4471
4508
|
*
|
|
@@ -4474,13 +4511,12 @@ export const boundariesFromIterable = (iterable: Iterable<number>): ReadonlyArra
|
|
|
4474
4511
|
* }> {}
|
|
4475
4512
|
*
|
|
4476
4513
|
* // Create boundaries for response time histogram
|
|
4477
|
-
* // Buckets: 0-100ms, 100-200ms, 200-300ms, 300-400ms, 400ms+
|
|
4478
4514
|
* const responseBoundaries = Metric.linearBoundaries({
|
|
4479
4515
|
* start: 0, // Starting point
|
|
4480
|
-
* width: 100, //
|
|
4516
|
+
* width: 100, // Offset used for the first boundary
|
|
4481
4517
|
* count: 5 // Creates 4 boundaries + infinity
|
|
4482
4518
|
* })
|
|
4483
|
-
* console.log(responseBoundaries) // [100,
|
|
4519
|
+
* console.log(responseBoundaries) // [100, 101, 102, 103, Infinity]
|
|
4484
4520
|
*
|
|
4485
4521
|
* // Create a histogram using these boundaries
|
|
4486
4522
|
* const responseTimeHistogram = Metric.histogram("api_response_time", {
|
|
@@ -4490,17 +4526,17 @@ export const boundariesFromIterable = (iterable: Iterable<number>): ReadonlyArra
|
|
|
4490
4526
|
*
|
|
4491
4527
|
* const program = Effect.gen(function*() {
|
|
4492
4528
|
* // Record some response times
|
|
4493
|
-
* yield* Metric.update(responseTimeHistogram, 85)
|
|
4494
|
-
* yield* Metric.update(responseTimeHistogram,
|
|
4495
|
-
* yield* Metric.update(responseTimeHistogram, 450)
|
|
4529
|
+
* yield* Metric.update(responseTimeHistogram, 85)
|
|
4530
|
+
* yield* Metric.update(responseTimeHistogram, 101)
|
|
4531
|
+
* yield* Metric.update(responseTimeHistogram, 450)
|
|
4496
4532
|
*
|
|
4497
4533
|
* const value = yield* Metric.value(responseTimeHistogram)
|
|
4498
4534
|
* return value
|
|
4499
4535
|
* })
|
|
4500
4536
|
* ```
|
|
4501
4537
|
*
|
|
4502
|
-
* @since 2.0.0
|
|
4503
4538
|
* @category Boundaries
|
|
4539
|
+
* @since 4.0.0
|
|
4504
4540
|
*/
|
|
4505
4541
|
export const linearBoundaries = (options: {
|
|
4506
4542
|
readonly start: number
|
|
@@ -4516,7 +4552,8 @@ export const linearBoundaries = (options: {
|
|
|
4516
4552
|
* Creates boundaries that grow exponentially, useful for metrics that span
|
|
4517
4553
|
* multiple orders of magnitude. Each boundary is calculated as start * factor^i.
|
|
4518
4554
|
*
|
|
4519
|
-
*
|
|
4555
|
+
* **Example** (Creating exponential boundaries)
|
|
4556
|
+
*
|
|
4520
4557
|
* ```ts
|
|
4521
4558
|
* import { Data, Effect, Metric } from "effect"
|
|
4522
4559
|
*
|
|
@@ -4557,8 +4594,8 @@ export const linearBoundaries = (options: {
|
|
|
4557
4594
|
* })
|
|
4558
4595
|
* ```
|
|
4559
4596
|
*
|
|
4560
|
-
* @since 2.0.0
|
|
4561
4597
|
* @category Boundaries
|
|
4598
|
+
* @since 4.0.0
|
|
4562
4599
|
*/
|
|
4563
4600
|
export const exponentialBoundaries = (options: {
|
|
4564
4601
|
readonly start: number
|
|
@@ -4588,7 +4625,8 @@ const fiberFailures = counter("child_fiber_failures", {
|
|
|
4588
4625
|
/**
|
|
4589
4626
|
* Service key for the fiber runtime metrics service.
|
|
4590
4627
|
*
|
|
4591
|
-
*
|
|
4628
|
+
* **Example** (Using the fiber runtime metrics key)
|
|
4629
|
+
*
|
|
4592
4630
|
* ```ts
|
|
4593
4631
|
* import { Data, Effect, Layer, Metric } from "effect"
|
|
4594
4632
|
*
|
|
@@ -4618,8 +4656,8 @@ const fiberFailures = counter("child_fiber_failures", {
|
|
|
4618
4656
|
* })
|
|
4619
4657
|
* ```
|
|
4620
4658
|
*
|
|
4621
|
-
* @since 4.0.0
|
|
4622
4659
|
* @category Runtime Metrics
|
|
4660
|
+
* @since 4.0.0
|
|
4623
4661
|
*/
|
|
4624
4662
|
export const FiberRuntimeMetricsKey: "effect/observability/Metric/FiberRuntimeMetricsKey" =
|
|
4625
4663
|
InternalMetric.FiberRuntimeMetricsKey
|
|
@@ -4627,11 +4665,11 @@ export const FiberRuntimeMetricsKey: "effect/observability/Metric/FiberRuntimeMe
|
|
|
4627
4665
|
/**
|
|
4628
4666
|
* Interface for the fiber runtime metrics service that tracks fiber lifecycle events.
|
|
4629
4667
|
*
|
|
4630
|
-
*
|
|
4668
|
+
* **Example** (Providing a custom fiber metrics service)
|
|
4669
|
+
*
|
|
4631
4670
|
* ```ts
|
|
4632
|
-
* import type { Context } from "effect"
|
|
4633
4671
|
* import { Data, Effect, Layer, Metric } from "effect"
|
|
4634
|
-
* import type { Exit } from "effect
|
|
4672
|
+
* import type { Context, Exit } from "effect"
|
|
4635
4673
|
*
|
|
4636
4674
|
* class MetricsError extends Data.TaggedError("MetricsError")<{
|
|
4637
4675
|
* readonly operation: string
|
|
@@ -4645,7 +4683,7 @@ export const FiberRuntimeMetricsKey: "effect/observability/Metric/FiberRuntimeMe
|
|
|
4645
4683
|
* },
|
|
4646
4684
|
* recordFiberEnd: (
|
|
4647
4685
|
* context: Context.Context<never>,
|
|
4648
|
-
* exit: Exit<unknown, unknown>
|
|
4686
|
+
* exit: Exit.Exit<unknown, unknown>
|
|
4649
4687
|
* ) => {
|
|
4650
4688
|
* console.log("Fiber completed with exit:", exit)
|
|
4651
4689
|
* // Custom logic for tracking fiber completion based on exit status
|
|
@@ -4660,8 +4698,8 @@ export const FiberRuntimeMetricsKey: "effect/observability/Metric/FiberRuntimeMe
|
|
|
4660
4698
|
* })
|
|
4661
4699
|
* ```
|
|
4662
4700
|
*
|
|
4663
|
-
* @since 4.0.0
|
|
4664
4701
|
* @category Runtime Metrics
|
|
4702
|
+
* @since 4.0.0
|
|
4665
4703
|
*/
|
|
4666
4704
|
export interface FiberRuntimeMetricsService {
|
|
4667
4705
|
readonly recordFiberStart: (context: Context.Context<never>) => void
|
|
@@ -4669,9 +4707,15 @@ export interface FiberRuntimeMetricsService {
|
|
|
4669
4707
|
}
|
|
4670
4708
|
|
|
4671
4709
|
/**
|
|
4672
|
-
*
|
|
4710
|
+
* `Context.Reference` for the optional fiber runtime metrics service.
|
|
4711
|
+
*
|
|
4712
|
+
* **Details**
|
|
4713
|
+
* When provided, the runtime can notify the service about child-fiber start and
|
|
4714
|
+
* end events. When the reference is `undefined`, automatic fiber runtime metric
|
|
4715
|
+
* collection is disabled.
|
|
4716
|
+
*
|
|
4717
|
+
* **Example** (Accessing the fiber runtime metrics service)
|
|
4673
4718
|
*
|
|
4674
|
-
* @example
|
|
4675
4719
|
* ```ts
|
|
4676
4720
|
* import { Data, Effect, Metric } from "effect"
|
|
4677
4721
|
*
|
|
@@ -4710,8 +4754,8 @@ export interface FiberRuntimeMetricsService {
|
|
|
4710
4754
|
* })
|
|
4711
4755
|
* ```
|
|
4712
4756
|
*
|
|
4713
|
-
* @since 4.0.0
|
|
4714
4757
|
* @category Runtime Metrics
|
|
4758
|
+
* @since 4.0.0
|
|
4715
4759
|
*/
|
|
4716
4760
|
export const FiberRuntimeMetrics = Context.Reference<FiberRuntimeMetricsService | undefined>(
|
|
4717
4761
|
InternalMetric.FiberRuntimeMetricsKey,
|
|
@@ -4721,7 +4765,8 @@ export const FiberRuntimeMetrics = Context.Reference<FiberRuntimeMetricsService
|
|
|
4721
4765
|
/**
|
|
4722
4766
|
* Default implementation of the fiber runtime metrics service.
|
|
4723
4767
|
*
|
|
4724
|
-
*
|
|
4768
|
+
* **Example** (Using the default fiber metrics implementation)
|
|
4769
|
+
*
|
|
4725
4770
|
* ```ts
|
|
4726
4771
|
* import { Data, Effect, Layer, Metric } from "effect"
|
|
4727
4772
|
*
|
|
@@ -4759,8 +4804,8 @@ export const FiberRuntimeMetrics = Context.Reference<FiberRuntimeMetricsService
|
|
|
4759
4804
|
* })
|
|
4760
4805
|
* ```
|
|
4761
4806
|
*
|
|
4762
|
-
* @since 4.0.0
|
|
4763
4807
|
* @category Runtime Metrics
|
|
4808
|
+
* @since 4.0.0
|
|
4764
4809
|
*/
|
|
4765
4810
|
export const FiberRuntimeMetricsImpl: FiberRuntimeMetricsService = {
|
|
4766
4811
|
recordFiberStart(context: Context.Context<never>) {
|
|
@@ -4786,7 +4831,8 @@ export const FiberRuntimeMetricsImpl: FiberRuntimeMetricsService = {
|
|
|
4786
4831
|
* the recommended approach for production applications that need comprehensive
|
|
4787
4832
|
* fiber monitoring.
|
|
4788
4833
|
*
|
|
4789
|
-
*
|
|
4834
|
+
* **Example** (Enabling runtime metrics with a layer)
|
|
4835
|
+
*
|
|
4790
4836
|
* ```ts
|
|
4791
4837
|
* import { Console, Data, Effect, Layer, Metric } from "effect"
|
|
4792
4838
|
*
|
|
@@ -4871,15 +4917,16 @@ export const FiberRuntimeMetricsImpl: FiberRuntimeMetricsService = {
|
|
|
4871
4917
|
* )
|
|
4872
4918
|
* ```
|
|
4873
4919
|
*
|
|
4874
|
-
* @since 4.0.0
|
|
4875
4920
|
* @category Runtime Metrics
|
|
4921
|
+
* @since 4.0.0
|
|
4876
4922
|
*/
|
|
4877
4923
|
export const enableRuntimeMetricsLayer = Layer.succeed(FiberRuntimeMetrics)(FiberRuntimeMetricsImpl)
|
|
4878
4924
|
|
|
4879
4925
|
/**
|
|
4880
4926
|
* A Layer that disables automatic collection of fiber runtime metrics.
|
|
4881
4927
|
*
|
|
4882
|
-
*
|
|
4928
|
+
* **Example** (Disabling runtime metrics with a layer)
|
|
4929
|
+
*
|
|
4883
4930
|
* ```ts
|
|
4884
4931
|
* import { Data, Effect, Metric } from "effect"
|
|
4885
4932
|
*
|
|
@@ -4911,8 +4958,8 @@ export const enableRuntimeMetricsLayer = Layer.succeed(FiberRuntimeMetrics)(Fibe
|
|
|
4911
4958
|
* })
|
|
4912
4959
|
* ```
|
|
4913
4960
|
*
|
|
4914
|
-
* @since 4.0.0
|
|
4915
4961
|
* @category Runtime Metrics
|
|
4962
|
+
* @since 4.0.0
|
|
4916
4963
|
*/
|
|
4917
4964
|
export const disableRuntimeMetricsLayer = Layer.succeed(FiberRuntimeMetrics)(undefined)
|
|
4918
4965
|
|
|
@@ -4923,7 +4970,8 @@ export const disableRuntimeMetricsLayer = Layer.succeed(FiberRuntimeMetrics)(und
|
|
|
4923
4970
|
* started fibers, successful completions, and failures. These metrics provide valuable
|
|
4924
4971
|
* insights into the concurrency patterns and health of your Effect application.
|
|
4925
4972
|
*
|
|
4926
|
-
*
|
|
4973
|
+
* **Example** (Enabling runtime metrics for an effect)
|
|
4974
|
+
*
|
|
4927
4975
|
* ```ts
|
|
4928
4976
|
* import { Console, Data, Effect, Layer, Metric } from "effect"
|
|
4929
4977
|
*
|
|
@@ -4992,8 +5040,8 @@ export const disableRuntimeMetricsLayer = Layer.succeed(FiberRuntimeMetrics)(und
|
|
|
4992
5040
|
* )
|
|
4993
5041
|
* ```
|
|
4994
5042
|
*
|
|
4995
|
-
* @since 4.0.0
|
|
4996
5043
|
* @category Runtime Metrics
|
|
5044
|
+
* @since 4.0.0
|
|
4997
5045
|
*/
|
|
4998
5046
|
export const enableRuntimeMetrics: <A, E, R>(self: Effect<A, E, R>) => Effect<A, E, R> = InternalEffect.provideService(
|
|
4999
5047
|
FiberRuntimeMetrics,
|
|
@@ -5007,7 +5055,8 @@ export const enableRuntimeMetrics: <A, E, R>(self: Effect<A, E, R>) => Effect<A,
|
|
|
5007
5055
|
* parts of your application while keeping them enabled elsewhere, or when you need
|
|
5008
5056
|
* to avoid the overhead of metrics collection in performance-critical sections.
|
|
5009
5057
|
*
|
|
5010
|
-
*
|
|
5058
|
+
* **Example** (Disabling runtime metrics for an effect)
|
|
5059
|
+
*
|
|
5011
5060
|
* ```ts
|
|
5012
5061
|
* import { Console, Data, Effect, Layer, Metric } from "effect"
|
|
5013
5062
|
*
|
|
@@ -5035,7 +5084,7 @@ export const enableRuntimeMetrics: <A, E, R>(self: Effect<A, E, R>) => Effect<A,
|
|
|
5035
5084
|
* (_, i) =>
|
|
5036
5085
|
* Effect.gen(function*() {
|
|
5037
5086
|
* // Simulate intensive computation
|
|
5038
|
-
* const result = i * i +
|
|
5087
|
+
* const result = i * i + (i % 10) / 10
|
|
5039
5088
|
* return result
|
|
5040
5089
|
* })
|
|
5041
5090
|
* )
|
|
@@ -5077,8 +5126,8 @@ export const enableRuntimeMetrics: <A, E, R>(self: Effect<A, E, R>) => Effect<A,
|
|
|
5077
5126
|
* )
|
|
5078
5127
|
* ```
|
|
5079
5128
|
*
|
|
5080
|
-
* @since 4.0.0
|
|
5081
5129
|
* @category Runtime Metrics
|
|
5130
|
+
* @since 4.0.0
|
|
5082
5131
|
*/
|
|
5083
5132
|
export const disableRuntimeMetrics: <A, E, R>(self: Effect<A, E, R>) => Effect<A, E, R> = InternalEffect.provideService(
|
|
5084
5133
|
FiberRuntimeMetrics,
|