effect 4.0.0-beta.102 → 4.0.0-beta.103
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 +971 -1037
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +381 -407
- package/dist/Array.js.map +1 -1
- package/dist/BigDecimal.d.ts +433 -756
- package/dist/BigDecimal.d.ts.map +1 -1
- package/dist/BigDecimal.js +200 -325
- package/dist/BigDecimal.js.map +1 -1
- package/dist/BigInt.d.ts +207 -267
- package/dist/BigInt.d.ts.map +1 -1
- package/dist/BigInt.js +107 -135
- package/dist/BigInt.js.map +1 -1
- package/dist/Boolean.d.ts +146 -188
- package/dist/Boolean.d.ts.map +1 -1
- package/dist/Boolean.js +64 -84
- package/dist/Boolean.js.map +1 -1
- package/dist/Brand.js.map +1 -1
- package/dist/Cache.d.ts +405 -254
- package/dist/Cache.d.ts.map +1 -1
- package/dist/Cache.js +166 -101
- package/dist/Cache.js.map +1 -1
- package/dist/Cause.d.ts +167 -277
- package/dist/Cause.d.ts.map +1 -1
- package/dist/Cause.js +122 -176
- package/dist/Cause.js.map +1 -1
- package/dist/Channel.d.ts +729 -768
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +514 -440
- package/dist/Channel.js.map +1 -1
- package/dist/ChannelSchema.d.ts +1 -1
- package/dist/ChannelSchema.d.ts.map +1 -1
- package/dist/ChannelSchema.js.map +1 -1
- package/dist/Chunk.d.ts +834 -1173
- package/dist/Chunk.d.ts.map +1 -1
- package/dist/Chunk.js +326 -439
- package/dist/Chunk.js.map +1 -1
- package/dist/Clock.d.ts +180 -49
- package/dist/Clock.d.ts.map +1 -1
- package/dist/Clock.js +96 -31
- package/dist/Clock.js.map +1 -1
- package/dist/Combiner.d.ts +20 -33
- package/dist/Combiner.d.ts.map +1 -1
- package/dist/Combiner.js +18 -30
- package/dist/Combiner.js.map +1 -1
- package/dist/Config.d.ts +225 -173
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js +336 -265
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.d.ts +194 -68
- package/dist/ConfigProvider.d.ts.map +1 -1
- package/dist/ConfigProvider.js +115 -80
- package/dist/ConfigProvider.js.map +1 -1
- package/dist/Console.d.ts +233 -33
- package/dist/Console.d.ts.map +1 -1
- package/dist/Console.js +232 -32
- package/dist/Console.js.map +1 -1
- package/dist/Context.d.ts +151 -274
- package/dist/Context.d.ts.map +1 -1
- package/dist/Context.js +171 -214
- package/dist/Context.js.map +1 -1
- package/dist/Cron.d.ts +68 -77
- package/dist/Cron.d.ts.map +1 -1
- package/dist/Cron.js +57 -66
- package/dist/Cron.js.map +1 -1
- package/dist/Crypto.d.ts +13 -15
- package/dist/Crypto.d.ts.map +1 -1
- package/dist/Crypto.js +9 -10
- package/dist/Crypto.js.map +1 -1
- package/dist/Data.d.ts +60 -80
- package/dist/Data.d.ts.map +1 -1
- package/dist/Data.js +16 -23
- package/dist/Data.js.map +1 -1
- package/dist/DateTime.d.ts +562 -660
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/DateTime.js +307 -362
- package/dist/DateTime.js.map +1 -1
- package/dist/Deferred.d.ts +253 -256
- package/dist/Deferred.d.ts.map +1 -1
- package/dist/Deferred.js +104 -96
- package/dist/Deferred.js.map +1 -1
- package/dist/Duration.d.ts +216 -308
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +132 -186
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +2841 -3247
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +1322 -1546
- package/dist/Effect.js.map +1 -1
- package/dist/Effectable.js.map +1 -1
- package/dist/Encoding.d.ts +22 -40
- package/dist/Encoding.d.ts.map +1 -1
- package/dist/Encoding.js +22 -40
- package/dist/Encoding.js.map +1 -1
- package/dist/Equal.d.ts +33 -37
- package/dist/Equal.d.ts.map +1 -1
- package/dist/Equal.js +29 -21
- package/dist/Equal.js.map +1 -1
- package/dist/Equivalence.d.ts +103 -105
- package/dist/Equivalence.d.ts.map +1 -1
- package/dist/Equivalence.js +77 -79
- package/dist/Equivalence.js.map +1 -1
- package/dist/ErrorReporter.d.ts +51 -27
- package/dist/ErrorReporter.d.ts.map +1 -1
- package/dist/ErrorReporter.js +50 -26
- package/dist/ErrorReporter.js.map +1 -1
- package/dist/ExecutionPlan.d.ts +13 -55
- package/dist/ExecutionPlan.d.ts.map +1 -1
- package/dist/ExecutionPlan.js +7 -28
- package/dist/ExecutionPlan.js.map +1 -1
- package/dist/Exit.d.ts +116 -192
- package/dist/Exit.d.ts.map +1 -1
- package/dist/Exit.js +82 -130
- package/dist/Exit.js.map +1 -1
- package/dist/Fiber.d.ts +82 -146
- package/dist/Fiber.d.ts.map +1 -1
- package/dist/Fiber.js +48 -87
- package/dist/Fiber.js.map +1 -1
- package/dist/FiberHandle.d.ts +152 -105
- package/dist/FiberHandle.d.ts.map +1 -1
- package/dist/FiberHandle.js +106 -73
- package/dist/FiberHandle.js.map +1 -1
- package/dist/FiberMap.d.ts +213 -168
- package/dist/FiberMap.d.ts.map +1 -1
- package/dist/FiberMap.js +114 -89
- package/dist/FiberMap.js.map +1 -1
- package/dist/FiberSet.d.ts +123 -81
- package/dist/FiberSet.d.ts.map +1 -1
- package/dist/FiberSet.js +85 -59
- package/dist/FiberSet.js.map +1 -1
- package/dist/FileSystem.d.ts +153 -264
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js +42 -147
- package/dist/FileSystem.js.map +1 -1
- package/dist/Filter.d.ts +61 -33
- package/dist/Filter.d.ts.map +1 -1
- package/dist/Filter.js +26 -15
- package/dist/Filter.js.map +1 -1
- package/dist/Formatter.d.ts +25 -33
- package/dist/Formatter.d.ts.map +1 -1
- package/dist/Formatter.js +48 -49
- package/dist/Formatter.js.map +1 -1
- package/dist/Function.d.ts +76 -145
- package/dist/Function.d.ts.map +1 -1
- package/dist/Function.js +40 -57
- package/dist/Function.js.map +1 -1
- package/dist/Graph.d.ts +360 -714
- package/dist/Graph.d.ts.map +1 -1
- package/dist/Graph.js +168 -297
- package/dist/Graph.js.map +1 -1
- package/dist/HKT.d.ts +12 -6
- package/dist/HKT.d.ts.map +1 -1
- package/dist/Hash.d.ts +47 -83
- package/dist/Hash.d.ts.map +1 -1
- package/dist/Hash.js +46 -68
- package/dist/Hash.js.map +1 -1
- package/dist/HashMap.d.ts +319 -411
- package/dist/HashMap.d.ts.map +1 -1
- package/dist/HashMap.js +122 -166
- package/dist/HashMap.js.map +1 -1
- package/dist/HashRing.d.ts.map +1 -1
- package/dist/HashRing.js +1 -0
- package/dist/HashRing.js.map +1 -1
- package/dist/HashSet.d.ts +177 -284
- package/dist/HashSet.d.ts.map +1 -1
- package/dist/HashSet.js +68 -109
- package/dist/HashSet.js.map +1 -1
- package/dist/Inspectable.d.ts +12 -12
- package/dist/Inspectable.js +8 -8
- package/dist/Inspectable.js.map +1 -1
- package/dist/Iterable.d.ts +620 -786
- package/dist/Iterable.d.ts.map +1 -1
- package/dist/Iterable.js +228 -306
- package/dist/Iterable.js.map +1 -1
- package/dist/JsonPatch.d.ts +11 -13
- package/dist/JsonPatch.d.ts.map +1 -1
- package/dist/JsonPatch.js +44 -102
- package/dist/JsonPatch.js.map +1 -1
- package/dist/JsonPointer.d.ts +8 -8
- package/dist/JsonPointer.js +8 -8
- package/dist/JsonPointer.js.map +1 -1
- package/dist/JsonSchema.d.ts +98 -44
- package/dist/JsonSchema.d.ts.map +1 -1
- package/dist/JsonSchema.js +297 -234
- package/dist/JsonSchema.js.map +1 -1
- package/dist/Latch.d.ts +23 -35
- package/dist/Latch.d.ts.map +1 -1
- package/dist/Latch.js +16 -28
- package/dist/Latch.js.map +1 -1
- package/dist/Layer.d.ts +359 -260
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js +195 -175
- package/dist/Layer.js.map +1 -1
- package/dist/LayerMap.d.ts +42 -29
- package/dist/LayerMap.d.ts.map +1 -1
- package/dist/LayerMap.js +31 -21
- package/dist/LayerMap.js.map +1 -1
- package/dist/LayerRef.d.ts +6 -2
- package/dist/LayerRef.d.ts.map +1 -1
- package/dist/LayerRef.js +6 -2
- package/dist/LayerRef.js.map +1 -1
- package/dist/LogLevel.d.ts +114 -214
- package/dist/LogLevel.d.ts.map +1 -1
- package/dist/LogLevel.js +41 -76
- package/dist/LogLevel.js.map +1 -1
- package/dist/Logger.d.ts +218 -467
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js +204 -450
- package/dist/Logger.js.map +1 -1
- package/dist/ManagedRuntime.d.ts +7 -5
- package/dist/ManagedRuntime.d.ts.map +1 -1
- package/dist/ManagedRuntime.js +7 -5
- package/dist/ManagedRuntime.js.map +1 -1
- package/dist/Match.d.ts +217 -252
- package/dist/Match.d.ts.map +1 -1
- package/dist/Match.js +150 -183
- package/dist/Match.js.map +1 -1
- package/dist/Metric.d.ts +442 -993
- package/dist/Metric.d.ts.map +1 -1
- package/dist/Metric.js +198 -642
- package/dist/Metric.js.map +1 -1
- package/dist/MutableHashMap.d.ts +144 -173
- package/dist/MutableHashMap.d.ts.map +1 -1
- package/dist/MutableHashMap.js +68 -79
- package/dist/MutableHashMap.js.map +1 -1
- package/dist/MutableHashSet.d.ts +84 -89
- package/dist/MutableHashSet.d.ts.map +1 -1
- package/dist/MutableHashSet.js +44 -47
- package/dist/MutableHashSet.js.map +1 -1
- package/dist/MutableList.d.ts +71 -370
- package/dist/MutableList.d.ts.map +1 -1
- package/dist/MutableList.js +59 -284
- package/dist/MutableList.js.map +1 -1
- package/dist/MutableRef.d.ts +420 -243
- package/dist/MutableRef.d.ts.map +1 -1
- package/dist/MutableRef.js +209 -120
- package/dist/MutableRef.js.map +1 -1
- package/dist/Newtype.d.ts +21 -14
- package/dist/Newtype.d.ts.map +1 -1
- package/dist/Newtype.js +15 -13
- package/dist/Newtype.js.map +1 -1
- package/dist/NonEmptyIterable.d.ts +7 -137
- package/dist/NonEmptyIterable.d.ts.map +1 -1
- package/dist/NonEmptyIterable.js +5 -93
- package/dist/NonEmptyIterable.js.map +1 -1
- package/dist/Number.d.ts +196 -233
- package/dist/Number.d.ts.map +1 -1
- package/dist/Number.js +90 -109
- package/dist/Number.js.map +1 -1
- package/dist/Optic.d.ts +97 -189
- package/dist/Optic.d.ts.map +1 -1
- package/dist/Optic.js +187 -290
- package/dist/Optic.js.map +1 -1
- package/dist/Option.d.ts +447 -812
- package/dist/Option.d.ts.map +1 -1
- package/dist/Option.js +211 -392
- package/dist/Option.js.map +1 -1
- package/dist/Order.d.ts +109 -109
- package/dist/Order.js +91 -91
- package/dist/Order.js.map +1 -1
- package/dist/Ordering.d.ts +20 -23
- package/dist/Ordering.d.ts.map +1 -1
- package/dist/Ordering.js +8 -9
- package/dist/Ordering.js.map +1 -1
- package/dist/PartitionedSemaphore.js.map +1 -1
- package/dist/Path.d.ts +38 -41
- package/dist/Path.d.ts.map +1 -1
- package/dist/Path.js +3 -4
- package/dist/Path.js.map +1 -1
- package/dist/Pipeable.d.ts +6 -5
- package/dist/Pipeable.d.ts.map +1 -1
- package/dist/Pipeable.js +2 -2
- package/dist/Pipeable.js.map +1 -1
- package/dist/PlatformError.d.ts +4 -4
- package/dist/PlatformError.js +3 -3
- package/dist/PlatformError.js.map +1 -1
- package/dist/Pool.d.ts +4 -2
- package/dist/Pool.d.ts.map +1 -1
- package/dist/Pool.js +4 -2
- package/dist/Pool.js.map +1 -1
- package/dist/Predicate.d.ts +200 -181
- package/dist/Predicate.d.ts.map +1 -1
- package/dist/Predicate.js +100 -108
- package/dist/Predicate.js.map +1 -1
- package/dist/PrimaryKey.d.ts +7 -7
- package/dist/PrimaryKey.js +5 -5
- package/dist/PrimaryKey.js.map +1 -1
- package/dist/PubSub.d.ts +425 -494
- package/dist/PubSub.d.ts.map +1 -1
- package/dist/PubSub.js +373 -362
- package/dist/PubSub.js.map +1 -1
- package/dist/Pull.d.ts +24 -18
- package/dist/Pull.d.ts.map +1 -1
- package/dist/Pull.js +11 -9
- package/dist/Pull.js.map +1 -1
- package/dist/Queue.d.ts +200 -159
- package/dist/Queue.d.ts.map +1 -1
- package/dist/Queue.js +162 -132
- package/dist/Queue.js.map +1 -1
- package/dist/Random.d.ts +49 -74
- package/dist/Random.d.ts.map +1 -1
- package/dist/Random.js +35 -54
- package/dist/Random.js.map +1 -1
- package/dist/RcMap.d.ts +121 -63
- package/dist/RcMap.d.ts.map +1 -1
- package/dist/RcMap.js +42 -21
- package/dist/RcMap.js.map +1 -1
- package/dist/RcRef.d.ts +24 -13
- package/dist/RcRef.d.ts.map +1 -1
- package/dist/RcRef.js +15 -9
- package/dist/RcRef.js.map +1 -1
- package/dist/Record.d.ts +291 -488
- package/dist/Record.d.ts.map +1 -1
- package/dist/Record.js +111 -202
- package/dist/Record.js.map +1 -1
- package/dist/Redactable.d.ts +6 -2
- package/dist/Redactable.d.ts.map +1 -1
- package/dist/Redactable.js +7 -2
- package/dist/Redactable.js.map +1 -1
- package/dist/Redacted.d.ts +25 -25
- package/dist/Redacted.d.ts.map +1 -1
- package/dist/Redacted.js +19 -20
- package/dist/Redacted.js.map +1 -1
- package/dist/Reducer.d.ts +8 -15
- package/dist/Reducer.d.ts.map +1 -1
- package/dist/Reducer.js +6 -12
- package/dist/Reducer.js.map +1 -1
- package/dist/Ref.d.ts +95 -165
- package/dist/Ref.d.ts.map +1 -1
- package/dist/Ref.js +75 -122
- package/dist/Ref.js.map +1 -1
- package/dist/References.d.ts +102 -168
- package/dist/References.d.ts.map +1 -1
- package/dist/References.js +102 -168
- package/dist/References.js.map +1 -1
- package/dist/RegExp.d.ts +10 -14
- package/dist/RegExp.d.ts.map +1 -1
- package/dist/RegExp.js +10 -14
- package/dist/RegExp.js.map +1 -1
- package/dist/Request.d.ts +31 -21
- package/dist/Request.d.ts.map +1 -1
- package/dist/Request.js +16 -13
- package/dist/Request.js.map +1 -1
- package/dist/RequestResolver.d.ts +201 -90
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +87 -41
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Resource.js.map +1 -1
- package/dist/Result.d.ts +302 -470
- package/dist/Result.d.ts.map +1 -1
- package/dist/Result.js +133 -217
- package/dist/Result.js.map +1 -1
- package/dist/Runtime.d.ts +50 -75
- package/dist/Runtime.d.ts.map +1 -1
- package/dist/Runtime.js +39 -60
- package/dist/Runtime.js.map +1 -1
- package/dist/Schedule.d.ts +290 -1636
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +162 -803
- package/dist/Schedule.js.map +1 -1
- package/dist/Scheduler.d.ts +5 -5
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js +18 -6
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +644 -642
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +491 -527
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +27 -50
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +366 -279
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaError.d.ts +7 -6
- package/dist/SchemaError.d.ts.map +1 -1
- package/dist/SchemaError.js +7 -6
- package/dist/SchemaError.js.map +1 -1
- package/dist/SchemaGetter.d.ts +217 -174
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +218 -185
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaIssue.d.ts +62 -190
- package/dist/SchemaIssue.d.ts.map +1 -1
- package/dist/SchemaIssue.js +73 -265
- package/dist/SchemaIssue.js.map +1 -1
- package/dist/SchemaParser.d.ts +2 -2
- package/dist/SchemaParser.d.ts.map +1 -1
- package/dist/SchemaParser.js +123 -75
- package/dist/SchemaParser.js.map +1 -1
- package/dist/SchemaRepresentation.d.ts +22 -36
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +20 -26
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +114 -74
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +120 -85
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/Scope.d.ts +123 -151
- package/dist/Scope.d.ts.map +1 -1
- package/dist/Scope.js +72 -92
- package/dist/Scope.js.map +1 -1
- package/dist/ScopedCache.js.map +1 -1
- package/dist/ScopedRef.d.ts +3 -3
- package/dist/ScopedRef.js +2 -2
- package/dist/ScopedRef.js.map +1 -1
- package/dist/Semaphore.d.ts +96 -10
- package/dist/Semaphore.d.ts.map +1 -1
- package/dist/Semaphore.js +78 -39
- package/dist/Semaphore.js.map +1 -1
- package/dist/Sink.d.ts +117 -107
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js +107 -100
- package/dist/Sink.js.map +1 -1
- package/dist/Stdio.d.ts +1 -1
- package/dist/Stdio.js.map +1 -1
- package/dist/Stream.d.ts +2415 -2949
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +1078 -1381
- package/dist/Stream.js.map +1 -1
- package/dist/String.d.ts +262 -308
- package/dist/String.d.ts.map +1 -1
- package/dist/String.js +184 -215
- package/dist/String.js.map +1 -1
- package/dist/Struct.d.ts +109 -114
- package/dist/Struct.d.ts.map +1 -1
- package/dist/Struct.js +41 -50
- package/dist/Struct.js.map +1 -1
- package/dist/SubscriptionRef.d.ts +282 -250
- package/dist/SubscriptionRef.d.ts.map +1 -1
- package/dist/SubscriptionRef.js +104 -92
- package/dist/SubscriptionRef.js.map +1 -1
- package/dist/Symbol.d.ts +3 -3
- package/dist/Symbol.js +3 -3
- package/dist/Symbol.js.map +1 -1
- package/dist/SynchronizedRef.js.map +1 -1
- package/dist/Take.js.map +1 -1
- package/dist/Terminal.d.ts +2 -2
- package/dist/Terminal.js +1 -1
- package/dist/Terminal.js.map +1 -1
- package/dist/Tracer.d.ts +100 -54
- package/dist/Tracer.d.ts.map +1 -1
- package/dist/Tracer.js +41 -24
- package/dist/Tracer.js.map +1 -1
- package/dist/Trie.d.ts +287 -679
- package/dist/Trie.d.ts.map +1 -1
- package/dist/Trie.js +109 -251
- package/dist/Trie.js.map +1 -1
- package/dist/Tuple.d.ts +92 -127
- package/dist/Tuple.d.ts.map +1 -1
- package/dist/Tuple.js +42 -57
- package/dist/Tuple.js.map +1 -1
- package/dist/TxChunk.d.ts +201 -121
- package/dist/TxChunk.d.ts.map +1 -1
- package/dist/TxChunk.js +85 -56
- package/dist/TxChunk.js.map +1 -1
- package/dist/TxDeferred.d.ts +62 -46
- package/dist/TxDeferred.d.ts.map +1 -1
- package/dist/TxDeferred.js +30 -22
- package/dist/TxDeferred.js.map +1 -1
- package/dist/TxHashMap.d.ts +631 -779
- package/dist/TxHashMap.d.ts.map +1 -1
- package/dist/TxHashMap.js +268 -330
- package/dist/TxHashMap.js.map +1 -1
- package/dist/TxHashSet.d.ts +297 -236
- package/dist/TxHashSet.d.ts.map +1 -1
- package/dist/TxHashSet.js +130 -100
- package/dist/TxHashSet.js.map +1 -1
- package/dist/TxPriorityQueue.d.ts +126 -95
- package/dist/TxPriorityQueue.d.ts.map +1 -1
- package/dist/TxPriorityQueue.js +74 -56
- package/dist/TxPriorityQueue.js.map +1 -1
- package/dist/TxPubSub.d.ts +101 -88
- package/dist/TxPubSub.d.ts.map +1 -1
- package/dist/TxPubSub.js +87 -66
- package/dist/TxPubSub.js.map +1 -1
- package/dist/TxQueue.d.ts +200 -180
- package/dist/TxQueue.d.ts.map +1 -1
- package/dist/TxQueue.js +160 -136
- package/dist/TxQueue.js.map +1 -1
- package/dist/TxReentrantLock.d.ts +97 -66
- package/dist/TxReentrantLock.d.ts.map +1 -1
- package/dist/TxReentrantLock.js +67 -45
- package/dist/TxReentrantLock.js.map +1 -1
- package/dist/TxRef.d.ts +51 -32
- package/dist/TxRef.d.ts.map +1 -1
- package/dist/TxRef.js +23 -15
- package/dist/TxRef.js.map +1 -1
- package/dist/TxSemaphore.d.ts +129 -95
- package/dist/TxSemaphore.d.ts.map +1 -1
- package/dist/TxSemaphore.js +85 -70
- package/dist/TxSemaphore.js.map +1 -1
- package/dist/TxSubscriptionRef.d.ts +97 -70
- package/dist/TxSubscriptionRef.d.ts.map +1 -1
- package/dist/TxSubscriptionRef.js +44 -34
- package/dist/TxSubscriptionRef.js.map +1 -1
- package/dist/Types.d.ts +126 -67
- package/dist/Types.d.ts.map +1 -1
- package/dist/UndefinedOr.js.map +1 -1
- package/dist/Unify.d.ts +45 -65
- package/dist/Unify.d.ts.map +1 -1
- package/dist/Unify.js +6 -9
- package/dist/Unify.js.map +1 -1
- package/dist/Utils.d.ts +23 -16
- package/dist/Utils.d.ts.map +1 -1
- package/dist/Utils.js +3 -7
- package/dist/Utils.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/internal/array.js.map +1 -1
- package/dist/internal/core.js +1 -1
- package/dist/internal/core.js.map +1 -1
- package/dist/internal/dateTime.js +4 -0
- package/dist/internal/dateTime.js.map +1 -1
- package/dist/internal/doNotation.js.map +1 -1
- package/dist/internal/effect.js +77 -40
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/equal.js.map +1 -1
- package/dist/internal/errors.js.map +1 -1
- package/dist/internal/executionPlan.js.map +1 -1
- package/dist/internal/hashMap.js.map +1 -1
- package/dist/internal/hashSet.js.map +1 -1
- package/dist/internal/layer.js.map +1 -1
- package/dist/internal/matcher.js.map +1 -1
- package/dist/internal/metric.js.map +1 -1
- package/dist/internal/option.js.map +1 -1
- package/dist/internal/persistence.d.ts +2 -0
- package/dist/internal/persistence.d.ts.map +1 -0
- package/dist/internal/persistence.js +3 -0
- package/dist/internal/persistence.js.map +1 -0
- package/dist/internal/random.js.map +1 -1
- package/dist/internal/rcRef.js.map +1 -1
- package/dist/internal/record.js.map +1 -1
- package/dist/internal/redacted.js.map +1 -1
- package/dist/internal/references.js +3 -0
- package/dist/internal/references.js.map +1 -1
- package/dist/internal/request.js.map +1 -1
- package/dist/internal/result.js.map +1 -1
- package/dist/internal/schedule.js.map +1 -1
- package/dist/internal/schema/annotations.js.map +1 -1
- package/dist/internal/schema/cause.js.map +1 -1
- package/dist/internal/schema/fromJsonSchemaDocument.js +13 -11
- package/dist/internal/schema/fromJsonSchemaDocument.js.map +1 -1
- package/dist/internal/schema/fromRepresentation.js +8 -15
- package/dist/internal/schema/fromRepresentation.js.map +1 -1
- package/dist/internal/schema/parser.d.ts +14 -0
- package/dist/internal/schema/parser.d.ts.map +1 -0
- package/dist/internal/schema/parser.js +13 -0
- package/dist/internal/schema/parser.js.map +1 -0
- package/dist/internal/schema/schema.js.map +1 -1
- package/dist/internal/schema/toArbitrary.js.map +1 -1
- package/dist/internal/schema/toCodeDocument.js.map +1 -1
- package/dist/internal/schema/toEquivalence.js.map +1 -1
- package/dist/internal/schema/toJsonSchemaDocument.js +48 -6
- package/dist/internal/schema/toJsonSchemaDocument.js.map +1 -1
- package/dist/internal/schema/toRepresentation.js +87 -107
- package/dist/internal/schema/toRepresentation.js.map +1 -1
- package/dist/internal/stackTraceLimit.js.map +1 -1
- package/dist/internal/stream.js.map +1 -1
- package/dist/internal/tracer.js.map +1 -1
- package/dist/internal/trie.js +13 -9
- package/dist/internal/trie.js.map +1 -1
- package/dist/testing/FastCheck.d.ts +8 -7
- package/dist/testing/FastCheck.d.ts.map +1 -1
- package/dist/testing/FastCheck.js +8 -7
- package/dist/testing/FastCheck.js.map +1 -1
- package/dist/testing/TestClock.d.ts +57 -28
- package/dist/testing/TestClock.d.ts.map +1 -1
- package/dist/testing/TestClock.js +50 -18
- package/dist/testing/TestClock.js.map +1 -1
- package/dist/testing/TestConsole.d.ts +32 -31
- package/dist/testing/TestConsole.d.ts.map +1 -1
- package/dist/testing/TestConsole.js +24 -22
- package/dist/testing/TestConsole.js.map +1 -1
- package/dist/testing/TestSchema.d.ts +29 -29
- package/dist/testing/TestSchema.js +25 -25
- package/dist/testing/TestSchema.js.map +1 -1
- package/dist/testing/index.js.map +1 -1
- package/dist/unstable/ai/AiError.d.ts +95 -118
- package/dist/unstable/ai/AiError.d.ts.map +1 -1
- package/dist/unstable/ai/AiError.js +94 -117
- package/dist/unstable/ai/AiError.js.map +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.js +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
- package/dist/unstable/ai/Chat.d.ts +132 -97
- package/dist/unstable/ai/Chat.d.ts.map +1 -1
- package/dist/unstable/ai/Chat.js +55 -51
- package/dist/unstable/ai/Chat.js.map +1 -1
- package/dist/unstable/ai/EmbeddingModel.js.map +1 -1
- package/dist/unstable/ai/IdGenerator.d.ts +32 -28
- package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
- package/dist/unstable/ai/IdGenerator.js +26 -21
- package/dist/unstable/ai/IdGenerator.js.map +1 -1
- package/dist/unstable/ai/LanguageModel.d.ts +107 -67
- package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
- package/dist/unstable/ai/LanguageModel.js +104 -64
- package/dist/unstable/ai/LanguageModel.js.map +1 -1
- package/dist/unstable/ai/McpProtocol.d.ts +30 -0
- package/dist/unstable/ai/McpProtocol.d.ts.map +1 -0
- package/dist/unstable/ai/McpProtocol.js +20 -0
- package/dist/unstable/ai/McpProtocol.js.map +1 -0
- package/dist/unstable/ai/McpSchema.d.ts +141 -75
- package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
- package/dist/unstable/ai/McpSchema.js +58 -50
- package/dist/unstable/ai/McpSchema.js.map +1 -1
- package/dist/unstable/ai/McpServer.d.ts +68 -59
- package/dist/unstable/ai/McpServer.d.ts.map +1 -1
- package/dist/unstable/ai/McpServer.js +694 -241
- package/dist/unstable/ai/McpServer.js.map +1 -1
- package/dist/unstable/ai/Model.d.ts +8 -19
- package/dist/unstable/ai/Model.d.ts.map +1 -1
- package/dist/unstable/ai/Model.js +9 -20
- package/dist/unstable/ai/Model.js.map +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.js +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
- package/dist/unstable/ai/Prompt.d.ts +112 -38
- package/dist/unstable/ai/Prompt.d.ts.map +1 -1
- package/dist/unstable/ai/Prompt.js +53 -17
- package/dist/unstable/ai/Prompt.js.map +1 -1
- package/dist/unstable/ai/Response.d.ts +28 -14
- package/dist/unstable/ai/Response.d.ts.map +1 -1
- package/dist/unstable/ai/Response.js +9 -4
- package/dist/unstable/ai/Response.js.map +1 -1
- package/dist/unstable/ai/ResponseIdTracker.js.map +1 -1
- package/dist/unstable/ai/Telemetry.d.ts +46 -13
- package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
- package/dist/unstable/ai/Telemetry.js +18 -7
- package/dist/unstable/ai/Telemetry.js.map +1 -1
- package/dist/unstable/ai/Tokenizer.d.ts +14 -3
- package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
- package/dist/unstable/ai/Tokenizer.js +10 -2
- package/dist/unstable/ai/Tokenizer.js.map +1 -1
- package/dist/unstable/ai/Tool.d.ts +59 -44
- package/dist/unstable/ai/Tool.d.ts.map +1 -1
- package/dist/unstable/ai/Tool.js +48 -39
- package/dist/unstable/ai/Tool.js.map +1 -1
- package/dist/unstable/ai/Toolkit.d.ts +26 -8
- package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
- package/dist/unstable/ai/Toolkit.js +18 -4
- package/dist/unstable/ai/Toolkit.js.map +1 -1
- package/dist/unstable/ai/index.d.ts +4 -0
- package/dist/unstable/ai/index.d.ts.map +1 -1
- package/dist/unstable/ai/index.js +4 -0
- package/dist/unstable/ai/index.js.map +1 -1
- package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
- package/dist/unstable/ai/internal/mcpProtocol.d.ts +21 -0
- package/dist/unstable/ai/internal/mcpProtocol.d.ts.map +1 -0
- package/dist/unstable/ai/internal/mcpProtocol.js +22 -0
- package/dist/unstable/ai/internal/mcpProtocol.js.map +1 -0
- package/dist/unstable/ai/internal/mcpProtocolRegistry.d.ts +2 -0
- package/dist/unstable/ai/internal/mcpProtocolRegistry.d.ts.map +1 -0
- package/dist/unstable/ai/internal/mcpProtocolRegistry.js +32 -0
- package/dist/unstable/ai/internal/mcpProtocolRegistry.js.map +1 -0
- package/dist/unstable/ai/internal/structured-output.js +14 -15
- package/dist/unstable/ai/internal/structured-output.js.map +1 -1
- package/dist/unstable/cli/Argument.d.ts +273 -69
- package/dist/unstable/cli/Argument.d.ts.map +1 -1
- package/dist/unstable/cli/Argument.js +111 -33
- package/dist/unstable/cli/Argument.js.map +1 -1
- package/dist/unstable/cli/CliConfig.js.map +1 -1
- package/dist/unstable/cli/CliError.d.ts +69 -76
- package/dist/unstable/cli/CliError.d.ts.map +1 -1
- package/dist/unstable/cli/CliError.js +57 -61
- package/dist/unstable/cli/CliError.js.map +1 -1
- package/dist/unstable/cli/CliOutput.d.ts +35 -54
- package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
- package/dist/unstable/cli/CliOutput.js +26 -42
- package/dist/unstable/cli/CliOutput.js.map +1 -1
- package/dist/unstable/cli/Command.d.ts +705 -107
- package/dist/unstable/cli/Command.d.ts.map +1 -1
- package/dist/unstable/cli/Command.js +238 -42
- package/dist/unstable/cli/Command.js.map +1 -1
- package/dist/unstable/cli/Completions.js.map +1 -1
- package/dist/unstable/cli/Flag.d.ts +418 -138
- package/dist/unstable/cli/Flag.d.ts.map +1 -1
- package/dist/unstable/cli/Flag.js +197 -71
- package/dist/unstable/cli/Flag.js.map +1 -1
- package/dist/unstable/cli/GlobalFlag.d.ts +1 -1
- package/dist/unstable/cli/GlobalFlag.js.map +1 -1
- package/dist/unstable/cli/HelpDoc.d.ts +12 -4
- package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
- package/dist/unstable/cli/Param.d.ts +292 -78
- package/dist/unstable/cli/Param.d.ts.map +1 -1
- package/dist/unstable/cli/Param.js +128 -46
- package/dist/unstable/cli/Param.js.map +1 -1
- package/dist/unstable/cli/Primitive.d.ts +370 -149
- package/dist/unstable/cli/Primitive.d.ts.map +1 -1
- package/dist/unstable/cli/Primitive.js +344 -136
- package/dist/unstable/cli/Primitive.js.map +1 -1
- package/dist/unstable/cli/Prompt.d.ts +23 -14
- package/dist/unstable/cli/Prompt.d.ts.map +1 -1
- package/dist/unstable/cli/Prompt.js +23 -14
- package/dist/unstable/cli/Prompt.js.map +1 -1
- package/dist/unstable/cli/index.js.map +1 -1
- package/dist/unstable/cli/internal/ansi.js.map +1 -1
- package/dist/unstable/cli/internal/auto-suggest.js.map +1 -1
- package/dist/unstable/cli/internal/command.js.map +1 -1
- package/dist/unstable/cli/internal/completions/bash.js.map +1 -1
- package/dist/unstable/cli/internal/completions/descriptor.js.map +1 -1
- package/dist/unstable/cli/internal/completions/fish.js.map +1 -1
- package/dist/unstable/cli/internal/completions/zsh.js.map +1 -1
- package/dist/unstable/cli/internal/config.js.map +1 -1
- package/dist/unstable/cli/internal/help.js.map +1 -1
- package/dist/unstable/cli/internal/lexer.js +17 -7
- package/dist/unstable/cli/internal/lexer.js.map +1 -1
- package/dist/unstable/cli/internal/parser.js +2 -2
- package/dist/unstable/cli/internal/parser.js.map +1 -1
- package/dist/unstable/cli/internal/wizard.js.map +1 -1
- package/dist/unstable/cluster/ClusterCron.js.map +1 -1
- package/dist/unstable/cluster/ClusterError.js.map +1 -1
- package/dist/unstable/cluster/ClusterMetrics.js.map +1 -1
- package/dist/unstable/cluster/ClusterSchema.d.ts +8 -8
- package/dist/unstable/cluster/ClusterSchema.js +8 -8
- package/dist/unstable/cluster/ClusterSchema.js.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.js +5 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/unstable/cluster/DeliverAt.js.map +1 -1
- package/dist/unstable/cluster/Entity.d.ts +10 -10
- package/dist/unstable/cluster/Entity.d.ts.map +1 -1
- package/dist/unstable/cluster/Entity.js +8 -8
- package/dist/unstable/cluster/Entity.js.map +1 -1
- package/dist/unstable/cluster/EntityAddress.js.map +1 -1
- package/dist/unstable/cluster/EntityId.js.map +1 -1
- package/dist/unstable/cluster/EntityProxy.d.ts +4 -2
- package/dist/unstable/cluster/EntityProxy.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityProxy.js +4 -2
- package/dist/unstable/cluster/EntityProxy.js.map +1 -1
- package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
- package/dist/unstable/cluster/EntityResource.d.ts +2 -2
- package/dist/unstable/cluster/EntityResource.js +2 -2
- package/dist/unstable/cluster/EntityResource.js.map +1 -1
- package/dist/unstable/cluster/EntityType.js.map +1 -1
- package/dist/unstable/cluster/Envelope.d.ts +3 -3
- package/dist/unstable/cluster/Envelope.js +3 -3
- package/dist/unstable/cluster/Envelope.js.map +1 -1
- package/dist/unstable/cluster/HttpRunner.d.ts +2 -2
- package/dist/unstable/cluster/HttpRunner.d.ts.map +1 -1
- package/dist/unstable/cluster/HttpRunner.js +6 -4
- package/dist/unstable/cluster/HttpRunner.js.map +1 -1
- package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
- package/dist/unstable/cluster/MachineId.js.map +1 -1
- package/dist/unstable/cluster/Message.d.ts +9 -9
- package/dist/unstable/cluster/Message.js +6 -6
- package/dist/unstable/cluster/Message.js.map +1 -1
- package/dist/unstable/cluster/MessageStorage.d.ts +15 -15
- package/dist/unstable/cluster/MessageStorage.js +5 -5
- package/dist/unstable/cluster/MessageStorage.js.map +1 -1
- package/dist/unstable/cluster/Reply.d.ts.map +1 -1
- package/dist/unstable/cluster/Reply.js +4 -4
- package/dist/unstable/cluster/Reply.js.map +1 -1
- package/dist/unstable/cluster/Runner.js.map +1 -1
- package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
- package/dist/unstable/cluster/RunnerHealth.d.ts +1 -1
- package/dist/unstable/cluster/RunnerHealth.js +1 -1
- package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
- package/dist/unstable/cluster/RunnerServer.d.ts +2 -1
- package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerServer.js +16 -16
- package/dist/unstable/cluster/RunnerServer.js.map +1 -1
- package/dist/unstable/cluster/RunnerStorage.d.ts +2 -2
- package/dist/unstable/cluster/RunnerStorage.js +1 -1
- package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/Runners.d.ts +6 -6
- package/dist/unstable/cluster/Runners.d.ts.map +1 -1
- package/dist/unstable/cluster/Runners.js +19 -10
- package/dist/unstable/cluster/Runners.js.map +1 -1
- package/dist/unstable/cluster/ShardId.js.map +1 -1
- package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
- package/dist/unstable/cluster/Sharding.js +3 -2
- package/dist/unstable/cluster/Sharding.js.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.d.ts +3 -3
- package/dist/unstable/cluster/ShardingConfig.js +3 -3
- package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
- package/dist/unstable/cluster/ShardingRegistrationEvent.js.map +1 -1
- package/dist/unstable/cluster/SingleRunner.js.map +1 -1
- package/dist/unstable/cluster/Singleton.js.map +1 -1
- package/dist/unstable/cluster/SingletonAddress.d.ts +1 -1
- package/dist/unstable/cluster/SingletonAddress.js +1 -1
- package/dist/unstable/cluster/SingletonAddress.js.map +1 -1
- package/dist/unstable/cluster/Snowflake.d.ts +8 -8
- package/dist/unstable/cluster/Snowflake.js +8 -8
- package/dist/unstable/cluster/Snowflake.js.map +1 -1
- package/dist/unstable/cluster/SocketRunner.js.map +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.js +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
- package/dist/unstable/cluster/SqlRunnerStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/SqlRunnerStorage.js +20 -5
- package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/TestRunner.js.map +1 -1
- package/dist/unstable/cluster/index.js.map +1 -1
- package/dist/unstable/cluster/internal/entityManager.js +5 -5
- package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
- package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
- package/dist/unstable/cluster/internal/hash.js.map +1 -1
- package/dist/unstable/cluster/internal/interruptors.js.map +1 -1
- package/dist/unstable/cluster/internal/resourceMap.js.map +1 -1
- package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
- package/dist/unstable/cluster/internal/shardLock.js.map +1 -1
- package/dist/unstable/devtools/DevTools.js.map +1 -1
- package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
- package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
- package/dist/unstable/devtools/DevToolsServer.js.map +1 -1
- package/dist/unstable/devtools/index.js.map +1 -1
- package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
- package/dist/unstable/encoding/Msgpack.js +6 -8
- package/dist/unstable/encoding/Msgpack.js.map +1 -1
- package/dist/unstable/encoding/Ndjson.js.map +1 -1
- package/dist/unstable/encoding/Sse.d.ts +72 -8
- package/dist/unstable/encoding/Sse.d.ts.map +1 -1
- package/dist/unstable/encoding/Sse.js +58 -8
- package/dist/unstable/encoding/Sse.js.map +1 -1
- package/dist/unstable/encoding/index.js.map +1 -1
- package/dist/unstable/eventlog/Event.d.ts +20 -20
- package/dist/unstable/eventlog/Event.js.map +1 -1
- package/dist/unstable/eventlog/EventGroup.d.ts +4 -4
- package/dist/unstable/eventlog/EventGroup.js.map +1 -1
- package/dist/unstable/eventlog/EventJournal.d.ts +15 -15
- package/dist/unstable/eventlog/EventJournal.js +13 -13
- package/dist/unstable/eventlog/EventJournal.js.map +1 -1
- package/dist/unstable/eventlog/EventLog.d.ts +3 -3
- package/dist/unstable/eventlog/EventLog.js +3 -3
- package/dist/unstable/eventlog/EventLog.js.map +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.d.ts +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.js +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
- package/dist/unstable/eventlog/EventLogMessage.d.ts +2 -2
- package/dist/unstable/eventlog/EventLogMessage.js +1 -1
- package/dist/unstable/eventlog/EventLogMessage.js.map +1 -1
- package/dist/unstable/eventlog/EventLogRemote.d.ts +15 -15
- package/dist/unstable/eventlog/EventLogRemote.js +1 -1
- package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServer.d.ts +11 -2
- package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServer.js +45 -21
- package/dist/unstable/eventlog/EventLogServer.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +4 -4
- package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServerEncrypted.js +13 -5
- package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +5 -5
- package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServerUnencrypted.js +14 -6
- package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -1
- package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +1 -1
- package/dist/unstable/eventlog/EventLogSessionAuth.js +1 -1
- package/dist/unstable/eventlog/EventLogSessionAuth.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
- package/dist/unstable/eventlog/index.js.map +1 -1
- package/dist/unstable/eventlog/internal/identityRootSecretDerivation.js.map +1 -1
- package/dist/unstable/http/Cookies.d.ts +2 -2
- package/dist/unstable/http/Cookies.d.ts.map +1 -1
- package/dist/unstable/http/Cookies.js +30 -18
- package/dist/unstable/http/Cookies.js.map +1 -1
- package/dist/unstable/http/Etag.d.ts +1 -1
- package/dist/unstable/http/Etag.js +1 -1
- package/dist/unstable/http/Etag.js.map +1 -1
- package/dist/unstable/http/FetchHttpClient.d.ts.map +1 -1
- package/dist/unstable/http/FetchHttpClient.js.map +1 -1
- package/dist/unstable/http/Headers.d.ts +2 -2
- package/dist/unstable/http/Headers.js +2 -2
- package/dist/unstable/http/Headers.js.map +1 -1
- package/dist/unstable/http/HttpBody.d.ts +5 -3
- package/dist/unstable/http/HttpBody.d.ts.map +1 -1
- package/dist/unstable/http/HttpBody.js +11 -5
- package/dist/unstable/http/HttpBody.js.map +1 -1
- package/dist/unstable/http/HttpClient.d.ts +51 -44
- package/dist/unstable/http/HttpClient.d.ts.map +1 -1
- package/dist/unstable/http/HttpClient.js +46 -17
- package/dist/unstable/http/HttpClient.js.map +1 -1
- package/dist/unstable/http/HttpClientError.js.map +1 -1
- package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientRequest.js +2 -0
- package/dist/unstable/http/HttpClientRequest.js.map +1 -1
- package/dist/unstable/http/HttpClientResponse.d.ts +4 -4
- package/dist/unstable/http/HttpClientResponse.js +2 -2
- package/dist/unstable/http/HttpClientResponse.js.map +1 -1
- package/dist/unstable/http/HttpEffect.d.ts +6 -6
- package/dist/unstable/http/HttpEffect.js +3 -3
- package/dist/unstable/http/HttpEffect.js.map +1 -1
- package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
- package/dist/unstable/http/HttpMethod.d.ts +6 -9
- package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
- package/dist/unstable/http/HttpMethod.js +6 -9
- package/dist/unstable/http/HttpMethod.js.map +1 -1
- package/dist/unstable/http/HttpMiddleware.d.ts +75 -9
- package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/unstable/http/HttpMiddleware.js +164 -39
- package/dist/unstable/http/HttpMiddleware.js.map +1 -1
- package/dist/unstable/http/HttpPlatform.d.ts +76 -0
- package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
- package/dist/unstable/http/HttpPlatform.js +32 -0
- package/dist/unstable/http/HttpPlatform.js.map +1 -1
- package/dist/unstable/http/HttpRouter.d.ts +88 -89
- package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
- package/dist/unstable/http/HttpRouter.js +78 -79
- package/dist/unstable/http/HttpRouter.js.map +1 -1
- package/dist/unstable/http/HttpServer.d.ts +13 -13
- package/dist/unstable/http/HttpServer.js +6 -6
- package/dist/unstable/http/HttpServer.js.map +1 -1
- package/dist/unstable/http/HttpServerError.d.ts +2 -2
- package/dist/unstable/http/HttpServerError.js +2 -2
- package/dist/unstable/http/HttpServerError.js.map +1 -1
- package/dist/unstable/http/HttpServerRequest.d.ts +4 -4
- package/dist/unstable/http/HttpServerRequest.js +4 -4
- package/dist/unstable/http/HttpServerRequest.js.map +1 -1
- package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
- package/dist/unstable/http/HttpServerResponse.d.ts +22 -0
- package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerResponse.js +10 -0
- package/dist/unstable/http/HttpServerResponse.js.map +1 -1
- package/dist/unstable/http/HttpStaticServer.d.ts +35 -7
- package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -1
- package/dist/unstable/http/HttpStaticServer.js +35 -7
- package/dist/unstable/http/HttpStaticServer.js.map +1 -1
- package/dist/unstable/http/HttpTraceContext.js.map +1 -1
- package/dist/unstable/http/Multipart.d.ts +6 -6
- package/dist/unstable/http/Multipart.js +5 -5
- package/dist/unstable/http/Multipart.js.map +1 -1
- package/dist/unstable/http/Template.js.map +1 -1
- package/dist/unstable/http/Url.d.ts +33 -63
- package/dist/unstable/http/Url.d.ts.map +1 -1
- package/dist/unstable/http/Url.js +14 -28
- package/dist/unstable/http/Url.js.map +1 -1
- package/dist/unstable/http/UrlParams.d.ts +10 -18
- package/dist/unstable/http/UrlParams.d.ts.map +1 -1
- package/dist/unstable/http/UrlParams.js +9 -17
- package/dist/unstable/http/UrlParams.js.map +1 -1
- package/dist/unstable/http/index.js.map +1 -1
- package/dist/unstable/http/internal/compression.d.ts +2 -0
- package/dist/unstable/http/internal/compression.d.ts.map +1 -0
- package/dist/unstable/http/internal/compression.js +155 -0
- package/dist/unstable/http/internal/compression.js.map +1 -0
- package/dist/unstable/http/internal/preResponseHandler.js.map +1 -1
- package/dist/unstable/httpapi/HttpApi.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.js +10 -11
- package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.d.ts +4 -5
- package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.js +11 -13
- package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +42 -42
- package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.d.ts +13 -13
- package/dist/unstable/httpapi/HttpApiError.js +13 -13
- package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.d.ts +15 -15
- package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +71 -24
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.js +57 -10
- package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiScalar.d.ts +0 -12
- package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSchema.d.ts +6 -6
- package/dist/unstable/httpapi/HttpApiSchema.js +4 -4
- package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSwagger.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiTest.js.map +1 -1
- package/dist/unstable/httpapi/OpenApi.d.ts +13 -13
- package/dist/unstable/httpapi/OpenApi.js +13 -13
- package/dist/unstable/httpapi/OpenApi.js.map +1 -1
- package/dist/unstable/httpapi/index.js.map +1 -1
- package/dist/unstable/httpapi/internal/html.js.map +1 -1
- package/dist/unstable/httpapi/internal/httpApiScalar.js.map +1 -1
- package/dist/unstable/httpapi/internal/httpApiSwagger.js.map +1 -1
- package/dist/unstable/httpapi/internal/mediaType.js.map +1 -1
- package/dist/unstable/observability/Otlp.js.map +1 -1
- package/dist/unstable/observability/OtlpExporter.d.ts +12 -14
- package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpExporter.js +17 -4
- package/dist/unstable/observability/OtlpExporter.js.map +1 -1
- package/dist/unstable/observability/OtlpLogger.js.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.d.ts +4 -1
- package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
- package/dist/unstable/observability/OtlpResource.d.ts +16 -7
- package/dist/unstable/observability/OtlpResource.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpResource.js +21 -12
- package/dist/unstable/observability/OtlpResource.js.map +1 -1
- package/dist/unstable/observability/OtlpSerialization.js.map +1 -1
- package/dist/unstable/observability/OtlpTracer.js.map +1 -1
- package/dist/unstable/observability/PrometheusMetrics.d.ts +13 -4
- package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/PrometheusMetrics.js +10 -3
- package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
- package/dist/unstable/observability/index.js.map +1 -1
- package/dist/unstable/observability/internal/otlpEnv.js +1 -1
- package/dist/unstable/observability/internal/otlpEnv.js.map +1 -1
- package/dist/unstable/observability/internal/otlpProtobuf.js.map +1 -1
- package/dist/unstable/observability/internal/protobuf.js +3 -0
- package/dist/unstable/observability/internal/protobuf.js.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.d.ts +8 -3
- package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.js +22 -13
- package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
- package/dist/unstable/persistence/Persistable.d.ts +8 -8
- package/dist/unstable/persistence/Persistable.js.map +1 -1
- package/dist/unstable/persistence/PersistedCache.js.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.d.ts +6 -6
- package/dist/unstable/persistence/PersistedQueue.js +6 -6
- package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
- package/dist/unstable/persistence/Persistence.d.ts +3 -3
- package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
- package/dist/unstable/persistence/Persistence.js +91 -15
- package/dist/unstable/persistence/Persistence.js.map +1 -1
- package/dist/unstable/persistence/RateLimiter.d.ts +26 -15
- package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
- package/dist/unstable/persistence/RateLimiter.js +24 -13
- package/dist/unstable/persistence/RateLimiter.js.map +1 -1
- package/dist/unstable/persistence/Redis.d.ts +2 -2
- package/dist/unstable/persistence/Redis.js +1 -1
- package/dist/unstable/persistence/Redis.js.map +1 -1
- package/dist/unstable/persistence/index.js.map +1 -1
- package/dist/unstable/process/ChildProcess.d.ts +64 -21
- package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcess.js +14 -5
- package/dist/unstable/process/ChildProcess.js.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.d.ts +21 -10
- package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.js +1 -1
- package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
- package/dist/unstable/process/index.js.map +1 -1
- package/dist/unstable/reactivity/AsyncResult.d.ts +8 -8
- package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
- package/dist/unstable/reactivity/AsyncResult.js +10 -10
- package/dist/unstable/reactivity/AsyncResult.js.map +1 -1
- package/dist/unstable/reactivity/Atom.d.ts +25 -22
- package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
- package/dist/unstable/reactivity/Atom.js +14 -13
- package/dist/unstable/reactivity/Atom.js.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.d.ts +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.js +4 -1
- package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
- package/dist/unstable/reactivity/AtomRef.js.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.js +24 -3
- package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.d.ts +1 -1
- package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.js +4 -1
- package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
- package/dist/unstable/reactivity/Hydration.d.ts +1 -1
- package/dist/unstable/reactivity/Hydration.js +1 -1
- package/dist/unstable/reactivity/Hydration.js.map +1 -1
- package/dist/unstable/reactivity/Reactivity.js.map +1 -1
- package/dist/unstable/reactivity/index.js.map +1 -1
- package/dist/unstable/rpc/Rpc.d.ts +35 -33
- package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
- package/dist/unstable/rpc/Rpc.js +4 -2
- package/dist/unstable/rpc/Rpc.js.map +1 -1
- package/dist/unstable/rpc/RpcClient.d.ts +12 -12
- package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClient.js +12 -11
- package/dist/unstable/rpc/RpcClient.js.map +1 -1
- package/dist/unstable/rpc/RpcClientError.js.map +1 -1
- package/dist/unstable/rpc/RpcGroup.d.ts +8 -8
- package/dist/unstable/rpc/RpcGroup.js +1 -1
- package/dist/unstable/rpc/RpcGroup.js.map +1 -1
- package/dist/unstable/rpc/RpcMessage.d.ts +31 -30
- package/dist/unstable/rpc/RpcMessage.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcMessage.js +6 -6
- package/dist/unstable/rpc/RpcMessage.js.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.d.ts +10 -10
- package/dist/unstable/rpc/RpcMiddleware.js +1 -1
- package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
- package/dist/unstable/rpc/RpcSchema.d.ts +4 -4
- package/dist/unstable/rpc/RpcSchema.js +3 -3
- package/dist/unstable/rpc/RpcSchema.js.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.d.ts +58 -7
- package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.js +175 -96
- package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
- package/dist/unstable/rpc/RpcServer.d.ts +13 -13
- package/dist/unstable/rpc/RpcServer.js +17 -13
- package/dist/unstable/rpc/RpcServer.js.map +1 -1
- package/dist/unstable/rpc/RpcTest.js.map +1 -1
- package/dist/unstable/rpc/RpcWorker.d.ts +5 -5
- package/dist/unstable/rpc/RpcWorker.js +4 -4
- package/dist/unstable/rpc/RpcWorker.js.map +1 -1
- package/dist/unstable/rpc/Utils.js.map +1 -1
- package/dist/unstable/rpc/index.js.map +1 -1
- package/dist/unstable/schema/Model.d.ts +52 -50
- package/dist/unstable/schema/Model.d.ts.map +1 -1
- package/dist/unstable/schema/Model.js +35 -33
- package/dist/unstable/schema/Model.js.map +1 -1
- package/dist/unstable/schema/VariantSchema.d.ts +5 -5
- package/dist/unstable/schema/VariantSchema.js +2 -2
- package/dist/unstable/schema/VariantSchema.js.map +1 -1
- package/dist/unstable/schema/index.js.map +1 -1
- package/dist/unstable/socket/Socket.d.ts +11 -3
- package/dist/unstable/socket/Socket.d.ts.map +1 -1
- package/dist/unstable/socket/Socket.js +9 -4
- package/dist/unstable/socket/Socket.js.map +1 -1
- package/dist/unstable/socket/SocketServer.js.map +1 -1
- package/dist/unstable/socket/index.js.map +1 -1
- package/dist/unstable/sql/Migrator.js.map +1 -1
- package/dist/unstable/sql/SqlClient.d.ts +1 -1
- package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
- package/dist/unstable/sql/SqlClient.js +2 -2
- package/dist/unstable/sql/SqlClient.js.map +1 -1
- package/dist/unstable/sql/SqlConnection.js.map +1 -1
- package/dist/unstable/sql/SqlError.js.map +1 -1
- package/dist/unstable/sql/SqlModel.d.ts +2 -2
- package/dist/unstable/sql/SqlModel.js +2 -2
- package/dist/unstable/sql/SqlModel.js.map +1 -1
- package/dist/unstable/sql/SqlResolver.d.ts +5 -5
- package/dist/unstable/sql/SqlResolver.js +2 -2
- package/dist/unstable/sql/SqlResolver.js.map +1 -1
- package/dist/unstable/sql/SqlSchema.js.map +1 -1
- package/dist/unstable/sql/SqlStream.js.map +1 -1
- package/dist/unstable/sql/Statement.d.ts +6 -6
- package/dist/unstable/sql/Statement.js +15 -15
- package/dist/unstable/sql/Statement.js.map +1 -1
- package/dist/unstable/sql/index.js.map +1 -1
- package/dist/unstable/workers/Transferable.d.ts +1 -1
- package/dist/unstable/workers/Transferable.js +1 -1
- package/dist/unstable/workers/Transferable.js.map +1 -1
- package/dist/unstable/workers/Worker.d.ts +2 -2
- package/dist/unstable/workers/Worker.js +2 -2
- package/dist/unstable/workers/Worker.js.map +1 -1
- package/dist/unstable/workers/WorkerError.d.ts +7 -7
- package/dist/unstable/workers/WorkerError.js +6 -6
- package/dist/unstable/workers/WorkerError.js.map +1 -1
- package/dist/unstable/workers/WorkerRunner.d.ts +1 -1
- package/dist/unstable/workers/WorkerRunner.js +1 -1
- package/dist/unstable/workers/WorkerRunner.js.map +1 -1
- package/dist/unstable/workers/index.js.map +1 -1
- package/dist/unstable/workflow/Activity.d.ts +2 -2
- package/dist/unstable/workflow/Activity.js +2 -2
- package/dist/unstable/workflow/Activity.js.map +1 -1
- package/dist/unstable/workflow/DurableClock.d.ts +1 -1
- package/dist/unstable/workflow/DurableClock.js +1 -1
- package/dist/unstable/workflow/DurableClock.js.map +1 -1
- package/dist/unstable/workflow/DurableDeferred.d.ts +10 -10
- package/dist/unstable/workflow/DurableDeferred.js +5 -5
- package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
- package/dist/unstable/workflow/DurableQueue.d.ts +22 -20
- package/dist/unstable/workflow/DurableQueue.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableQueue.js +22 -20
- package/dist/unstable/workflow/DurableQueue.js.map +1 -1
- package/dist/unstable/workflow/Workflow.d.ts +21 -21
- package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
- package/dist/unstable/workflow/Workflow.js +13 -14
- package/dist/unstable/workflow/Workflow.js.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.d.ts +1 -1
- package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
- package/dist/unstable/workflow/WorkflowProxy.d.ts +4 -2
- package/dist/unstable/workflow/WorkflowProxy.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowProxy.js +4 -2
- package/dist/unstable/workflow/WorkflowProxy.js.map +1 -1
- package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
- package/dist/unstable/workflow/index.js.map +1 -1
- package/dist/unstable/workflow/internal/crypto.js.map +1 -1
- package/package.json +5 -6
- package/src/Array.ts +982 -1045
- package/src/BigDecimal.ts +433 -756
- package/src/BigInt.ts +213 -269
- package/src/Boolean.ts +146 -188
- package/src/Cache.ts +409 -255
- package/src/Cause.ts +167 -277
- package/src/Channel.ts +891 -816
- package/src/ChannelSchema.ts +1 -1
- package/src/Chunk.ts +841 -1181
- package/src/Clock.ts +181 -49
- package/src/Combiner.ts +20 -33
- package/src/Config.ts +615 -332
- package/src/ConfigProvider.ts +214 -120
- package/src/Console.ts +289 -39
- package/src/Context.ts +319 -378
- package/src/Cron.ts +68 -77
- package/src/Crypto.ts +13 -15
- package/src/Data.ts +60 -80
- package/src/DateTime.ts +564 -660
- package/src/Deferred.ts +253 -256
- package/src/Duration.ts +216 -308
- package/src/Effect.ts +2893 -3279
- package/src/Encoding.ts +22 -40
- package/src/Equal.ts +49 -39
- package/src/Equivalence.ts +103 -105
- package/src/ErrorReporter.ts +51 -27
- package/src/ExecutionPlan.ts +13 -55
- package/src/Exit.ts +116 -192
- package/src/Fiber.ts +81 -148
- package/src/FiberHandle.ts +152 -105
- package/src/FiberMap.ts +225 -174
- package/src/FiberSet.ts +124 -82
- package/src/FileSystem.ts +155 -263
- package/src/Filter.ts +61 -33
- package/src/Formatter.ts +54 -56
- package/src/Function.ts +76 -145
- package/src/Graph.ts +416 -770
- package/src/HKT.ts +12 -6
- package/src/Hash.ts +52 -83
- package/src/HashMap.ts +319 -411
- package/src/HashRing.ts +1 -0
- package/src/HashSet.ts +177 -284
- package/src/Inspectable.ts +12 -12
- package/src/Iterable.ts +620 -786
- package/src/JsonPatch.ts +58 -112
- package/src/JsonPointer.ts +8 -8
- package/src/JsonSchema.ts +402 -244
- package/src/Latch.ts +23 -35
- package/src/Layer.ts +359 -260
- package/src/LayerMap.ts +49 -29
- package/src/LayerRef.ts +6 -2
- package/src/LogLevel.ts +114 -214
- package/src/Logger.ts +344 -697
- package/src/ManagedRuntime.ts +7 -5
- package/src/Match.ts +217 -252
- package/src/Metric.ts +516 -1089
- package/src/MutableHashMap.ts +218 -255
- package/src/MutableHashSet.ts +84 -89
- package/src/MutableList.ts +73 -370
- package/src/MutableRef.ts +420 -243
- package/src/Newtype.ts +21 -14
- package/src/NonEmptyIterable.ts +7 -137
- package/src/Number.ts +196 -233
- package/src/Optic.ts +243 -383
- package/src/Option.ts +447 -812
- package/src/Order.ts +109 -109
- package/src/Ordering.ts +20 -23
- package/src/Path.ts +38 -41
- package/src/Pipeable.ts +6 -5
- package/src/PlatformError.ts +4 -4
- package/src/Pool.ts +4 -2
- package/src/Predicate.ts +200 -181
- package/src/PrimaryKey.ts +7 -7
- package/src/PubSub.ts +526 -552
- package/src/Pull.ts +24 -18
- package/src/Queue.ts +200 -159
- package/src/Random.ts +49 -74
- package/src/RcMap.ts +121 -63
- package/src/RcRef.ts +24 -13
- package/src/Record.ts +291 -488
- package/src/Redactable.ts +10 -3
- package/src/Redacted.ts +25 -25
- package/src/Reducer.ts +8 -15
- package/src/Ref.ts +221 -361
- package/src/References.ts +102 -168
- package/src/RegExp.ts +10 -14
- package/src/Request.ts +31 -21
- package/src/RequestResolver.ts +202 -91
- package/src/Result.ts +312 -484
- package/src/Runtime.ts +50 -75
- package/src/Schedule.ts +308 -1734
- package/src/Scheduler.ts +20 -7
- package/src/Schema.ts +716 -745
- package/src/SchemaAST.ts +466 -358
- package/src/SchemaError.ts +7 -6
- package/src/SchemaGetter.ts +242 -190
- package/src/SchemaIssue.ts +89 -275
- package/src/SchemaParser.ts +180 -93
- package/src/SchemaRepresentation.ts +22 -40
- package/src/SchemaTransformation.ts +129 -88
- package/src/Scope.ts +123 -151
- package/src/ScopedRef.ts +4 -4
- package/src/Semaphore.ts +152 -51
- package/src/Sink.ts +128 -113
- package/src/Stdio.ts +1 -1
- package/src/Stream.ts +2602 -3123
- package/src/String.ts +275 -312
- package/src/Struct.ts +109 -114
- package/src/SubscriptionRef.ts +284 -252
- package/src/Symbol.ts +3 -3
- package/src/Terminal.ts +2 -2
- package/src/Tracer.ts +102 -55
- package/src/Trie.ts +287 -679
- package/src/Tuple.ts +92 -127
- package/src/TxChunk.ts +201 -121
- package/src/TxDeferred.ts +62 -46
- package/src/TxHashMap.ts +645 -799
- package/src/TxHashSet.ts +443 -356
- package/src/TxPriorityQueue.ts +130 -98
- package/src/TxPubSub.ts +107 -80
- package/src/TxQueue.ts +214 -183
- package/src/TxReentrantLock.ts +97 -66
- package/src/TxRef.ts +51 -32
- package/src/TxSemaphore.ts +129 -95
- package/src/TxSubscriptionRef.ts +97 -70
- package/src/Types.ts +126 -67
- package/src/Unify.ts +45 -65
- package/src/Utils.ts +23 -16
- package/src/internal/core.ts +2 -2
- package/src/internal/dateTime.ts +6 -0
- package/src/internal/effect.ts +93 -48
- package/src/internal/persistence.ts +2 -0
- package/src/internal/references.ts +3 -2
- package/src/internal/schema/fromJsonSchemaDocument.ts +15 -13
- package/src/internal/schema/fromRepresentation.ts +10 -16
- package/src/internal/schema/parser.ts +22 -0
- package/src/internal/schema/toJsonSchemaDocument.ts +60 -6
- package/src/internal/schema/toRepresentation.ts +104 -119
- package/src/internal/trie.ts +10 -11
- package/src/testing/FastCheck.ts +8 -7
- package/src/testing/TestClock.ts +72 -30
- package/src/testing/TestConsole.ts +32 -31
- package/src/testing/TestSchema.ts +29 -29
- package/src/unstable/ai/AiError.ts +95 -118
- package/src/unstable/ai/AnthropicStructuredOutput.ts +1 -1
- package/src/unstable/ai/Chat.ts +132 -97
- package/src/unstable/ai/IdGenerator.ts +32 -28
- package/src/unstable/ai/LanguageModel.ts +107 -67
- package/src/unstable/ai/McpProtocol.ts +48 -0
- package/src/unstable/ai/McpSchema.ts +60 -50
- package/src/unstable/ai/McpServer.ts +930 -304
- package/src/unstable/ai/Model.ts +9 -20
- package/src/unstable/ai/OpenAiStructuredOutput.ts +1 -1
- package/src/unstable/ai/Prompt.ts +145 -43
- package/src/unstable/ai/Response.ts +28 -14
- package/src/unstable/ai/Telemetry.ts +46 -13
- package/src/unstable/ai/Tokenizer.ts +14 -3
- package/src/unstable/ai/Tool.ts +59 -44
- package/src/unstable/ai/Toolkit.ts +26 -8
- package/src/unstable/ai/index.ts +5 -0
- package/src/unstable/ai/internal/mcpProtocol.ts +85 -0
- package/src/unstable/ai/internal/mcpProtocolRegistry.ts +70 -0
- package/src/unstable/ai/internal/structured-output.ts +13 -18
- package/src/unstable/cli/Argument.ts +273 -69
- package/src/unstable/cli/CliError.ts +69 -76
- package/src/unstable/cli/CliOutput.ts +44 -58
- package/src/unstable/cli/Command.ts +705 -107
- package/src/unstable/cli/Flag.ts +418 -138
- package/src/unstable/cli/GlobalFlag.ts +1 -1
- package/src/unstable/cli/HelpDoc.ts +12 -4
- package/src/unstable/cli/Param.ts +292 -78
- package/src/unstable/cli/Primitive.ts +370 -149
- package/src/unstable/cli/Prompt.ts +28 -14
- package/src/unstable/cli/internal/lexer.ts +8 -2
- package/src/unstable/cli/internal/parser.ts +2 -2
- package/src/unstable/cluster/ClusterSchema.ts +8 -8
- package/src/unstable/cluster/ClusterWorkflowEngine.ts +5 -1
- package/src/unstable/cluster/Entity.ts +15 -16
- package/src/unstable/cluster/EntityProxy.ts +4 -2
- package/src/unstable/cluster/EntityResource.ts +2 -2
- package/src/unstable/cluster/Envelope.ts +3 -3
- package/src/unstable/cluster/HttpRunner.ts +6 -4
- package/src/unstable/cluster/Message.ts +9 -9
- package/src/unstable/cluster/MessageStorage.ts +15 -15
- package/src/unstable/cluster/Reply.ts +4 -6
- package/src/unstable/cluster/RunnerHealth.ts +1 -1
- package/src/unstable/cluster/RunnerServer.ts +41 -8
- package/src/unstable/cluster/RunnerStorage.ts +2 -2
- package/src/unstable/cluster/Runners.ts +23 -12
- package/src/unstable/cluster/Sharding.ts +7 -8
- package/src/unstable/cluster/ShardingConfig.ts +3 -3
- package/src/unstable/cluster/SingletonAddress.ts +1 -1
- package/src/unstable/cluster/Snowflake.ts +8 -8
- package/src/unstable/cluster/SqlMessageStorage.ts +1 -1
- package/src/unstable/cluster/SqlRunnerStorage.ts +21 -5
- package/src/unstable/cluster/internal/entityManager.ts +11 -15
- package/src/unstable/encoding/Msgpack.ts +6 -8
- package/src/unstable/encoding/Sse.ts +98 -16
- package/src/unstable/eventlog/Event.ts +20 -20
- package/src/unstable/eventlog/EventGroup.ts +4 -4
- package/src/unstable/eventlog/EventJournal.ts +15 -15
- package/src/unstable/eventlog/EventLog.ts +3 -3
- package/src/unstable/eventlog/EventLogEncryption.ts +1 -1
- package/src/unstable/eventlog/EventLogMessage.ts +2 -2
- package/src/unstable/eventlog/EventLogRemote.ts +1 -1
- package/src/unstable/eventlog/EventLogServer.ts +41 -7
- package/src/unstable/eventlog/EventLogServerEncrypted.ts +13 -5
- package/src/unstable/eventlog/EventLogServerUnencrypted.ts +14 -6
- package/src/unstable/eventlog/EventLogSessionAuth.ts +1 -1
- package/src/unstable/http/Cookies.ts +35 -21
- package/src/unstable/http/Etag.ts +1 -1
- package/src/unstable/http/FetchHttpClient.ts +3 -1
- package/src/unstable/http/Headers.ts +2 -2
- package/src/unstable/http/HttpBody.ts +20 -5
- package/src/unstable/http/HttpClient.ts +83 -55
- package/src/unstable/http/HttpClientRequest.ts +2 -0
- package/src/unstable/http/HttpClientResponse.ts +4 -4
- package/src/unstable/http/HttpEffect.ts +8 -8
- package/src/unstable/http/HttpMethod.ts +6 -9
- package/src/unstable/http/HttpMiddleware.ts +202 -39
- package/src/unstable/http/HttpPlatform.ts +95 -0
- package/src/unstable/http/HttpRouter.ts +102 -98
- package/src/unstable/http/HttpServer.ts +13 -13
- package/src/unstable/http/HttpServerError.ts +2 -2
- package/src/unstable/http/HttpServerRequest.ts +4 -4
- package/src/unstable/http/HttpServerResponse.ts +30 -0
- package/src/unstable/http/HttpStaticServer.ts +35 -7
- package/src/unstable/http/Multipart.ts +6 -6
- package/src/unstable/http/Url.ts +33 -63
- package/src/unstable/http/UrlParams.ts +10 -18
- package/src/unstable/http/internal/compression.ts +196 -0
- package/src/unstable/httpapi/HttpApiBuilder.ts +10 -9
- package/src/unstable/httpapi/HttpApiClient.ts +14 -14
- package/src/unstable/httpapi/HttpApiEndpoint.ts +42 -42
- package/src/unstable/httpapi/HttpApiError.ts +13 -13
- package/src/unstable/httpapi/HttpApiGroup.ts +15 -15
- package/src/unstable/httpapi/HttpApiMiddleware.ts +71 -24
- package/src/unstable/httpapi/HttpApiScalar.ts +0 -12
- package/src/unstable/httpapi/HttpApiSchema.ts +6 -6
- package/src/unstable/httpapi/OpenApi.ts +13 -13
- package/src/unstable/observability/OtlpExporter.ts +31 -19
- package/src/unstable/observability/OtlpMetrics.ts +4 -1
- package/src/unstable/observability/OtlpResource.ts +26 -17
- package/src/unstable/observability/PrometheusMetrics.ts +13 -4
- package/src/unstable/observability/internal/otlpEnv.ts +1 -1
- package/src/unstable/observability/internal/protobuf.ts +3 -0
- package/src/unstable/persistence/KeyValueStore.ts +72 -49
- package/src/unstable/persistence/Persistable.ts +8 -8
- package/src/unstable/persistence/PersistedQueue.ts +6 -6
- package/src/unstable/persistence/Persistence.ts +126 -19
- package/src/unstable/persistence/RateLimiter.ts +26 -15
- package/src/unstable/persistence/Redis.ts +2 -2
- package/src/unstable/process/ChildProcess.ts +64 -21
- package/src/unstable/process/ChildProcessSpawner.ts +21 -10
- package/src/unstable/reactivity/AsyncResult.ts +12 -13
- package/src/unstable/reactivity/Atom.ts +28 -25
- package/src/unstable/reactivity/AtomHttpApi.ts +5 -4
- package/src/unstable/reactivity/AtomRegistry.ts +24 -3
- package/src/unstable/reactivity/AtomRpc.ts +5 -4
- package/src/unstable/reactivity/Hydration.ts +1 -1
- package/src/unstable/rpc/Rpc.ts +35 -33
- package/src/unstable/rpc/RpcClient.ts +16 -15
- package/src/unstable/rpc/RpcGroup.ts +8 -8
- package/src/unstable/rpc/RpcMessage.ts +31 -30
- package/src/unstable/rpc/RpcMiddleware.ts +10 -10
- package/src/unstable/rpc/RpcSchema.ts +4 -4
- package/src/unstable/rpc/RpcSerialization.ts +167 -68
- package/src/unstable/rpc/RpcServer.ts +18 -15
- package/src/unstable/rpc/RpcWorker.ts +5 -5
- package/src/unstable/schema/Model.ts +52 -50
- package/src/unstable/schema/VariantSchema.ts +5 -5
- package/src/unstable/socket/Socket.ts +17 -4
- package/src/unstable/sql/SqlClient.ts +5 -6
- package/src/unstable/sql/SqlModel.ts +2 -2
- package/src/unstable/sql/SqlResolver.ts +5 -5
- package/src/unstable/sql/Statement.ts +24 -23
- package/src/unstable/workers/Transferable.ts +1 -1
- package/src/unstable/workers/Worker.ts +2 -2
- package/src/unstable/workers/WorkerError.ts +7 -7
- package/src/unstable/workers/WorkerRunner.ts +1 -1
- package/src/unstable/workflow/Activity.ts +2 -2
- package/src/unstable/workflow/DurableClock.ts +1 -1
- package/src/unstable/workflow/DurableDeferred.ts +10 -10
- package/src/unstable/workflow/DurableQueue.ts +22 -20
- package/src/unstable/workflow/Workflow.ts +23 -23
- package/src/unstable/workflow/WorkflowEngine.ts +1 -1
- package/src/unstable/workflow/WorkflowProxy.ts +4 -2
- package/dist/internal/version.d.ts +0 -3
- package/dist/internal/version.d.ts.map +0 -1
- package/dist/internal/version.js +0 -2
- package/dist/internal/version.js.map +0 -1
- package/src/internal/version.ts +0 -2
package/dist/PubSub.d.ts
CHANGED
|
@@ -29,26 +29,27 @@ declare const TypeId = "~effect/PubSub";
|
|
|
29
29
|
*
|
|
30
30
|
* **Example** (Publishing and subscribing to messages)
|
|
31
31
|
*
|
|
32
|
-
* ```ts
|
|
32
|
+
* ```ts import.meta.vitest
|
|
33
33
|
* import { Effect, PubSub } from "effect"
|
|
34
34
|
*
|
|
35
|
-
* const program = Effect.gen(function*() {
|
|
35
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
36
36
|
* // Create a bounded PubSub with capacity 10
|
|
37
37
|
* const pubsub = yield* PubSub.bounded<string>(10)
|
|
38
38
|
*
|
|
39
39
|
* // Subscribe and consume messages
|
|
40
|
-
* yield*
|
|
41
|
-
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
40
|
+
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
42
41
|
*
|
|
43
|
-
*
|
|
44
|
-
*
|
|
45
|
-
*
|
|
42
|
+
* // Publish messages
|
|
43
|
+
* yield* PubSub.publish(pubsub, "Hello")
|
|
44
|
+
* yield* PubSub.publish(pubsub, "World")
|
|
46
45
|
*
|
|
47
|
-
*
|
|
48
|
-
*
|
|
49
|
-
*
|
|
50
|
-
*
|
|
51
|
-
*
|
|
46
|
+
* const message1 = yield* PubSub.take(subscription)
|
|
47
|
+
* const message2 = yield* PubSub.take(subscription)
|
|
48
|
+
* return [message1, message2]
|
|
49
|
+
* }))
|
|
50
|
+
*
|
|
51
|
+
* const actual = await Effect.runPromise(program)
|
|
52
|
+
* actual // => ["Hello", "World"]
|
|
52
53
|
* ```
|
|
53
54
|
*
|
|
54
55
|
* @category models
|
|
@@ -126,6 +127,7 @@ export declare namespace PubSub {
|
|
|
126
127
|
take(): A | undefined;
|
|
127
128
|
takeN(n: number): Array<A>;
|
|
128
129
|
takeAll(): Array<A>;
|
|
130
|
+
close(): void;
|
|
129
131
|
readonly remaining: number;
|
|
130
132
|
}
|
|
131
133
|
/**
|
|
@@ -168,31 +170,28 @@ declare const SubscriptionTypeId = "~effect/PubSub/Subscription";
|
|
|
168
170
|
*
|
|
169
171
|
* **Example** (Taking messages from a subscription)
|
|
170
172
|
*
|
|
171
|
-
* ```ts
|
|
173
|
+
* ```ts import.meta.vitest
|
|
172
174
|
* import { Effect, PubSub } from "effect"
|
|
173
175
|
*
|
|
174
|
-
* const program = Effect.gen(function*() {
|
|
176
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
175
177
|
* const pubsub = yield* PubSub.bounded<string>(10)
|
|
176
178
|
*
|
|
177
179
|
* // Subscribe within a scope for automatic cleanup
|
|
178
|
-
* yield*
|
|
179
|
-
*
|
|
180
|
-
*
|
|
181
|
-
*
|
|
182
|
-
*
|
|
183
|
-
*
|
|
184
|
-
*
|
|
185
|
-
*
|
|
186
|
-
*
|
|
187
|
-
*
|
|
188
|
-
*
|
|
189
|
-
*
|
|
190
|
-
*
|
|
191
|
-
*
|
|
192
|
-
*
|
|
193
|
-
* console.log(allMessages) // ["msg3"]
|
|
194
|
-
* }))
|
|
195
|
-
* })
|
|
180
|
+
* const subscription: PubSub.Subscription<string> = yield* PubSub.subscribe(pubsub)
|
|
181
|
+
*
|
|
182
|
+
* yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3"])
|
|
183
|
+
*
|
|
184
|
+
* // Take individual messages
|
|
185
|
+
* const message = yield* PubSub.take(subscription)
|
|
186
|
+
*
|
|
187
|
+
* // Take multiple messages
|
|
188
|
+
* const messages = yield* PubSub.takeUpTo(subscription, 1)
|
|
189
|
+
* const allMessages = yield* PubSub.takeAll(subscription)
|
|
190
|
+
* return { message, messages, allMessages }
|
|
191
|
+
* }))
|
|
192
|
+
*
|
|
193
|
+
* const actual = await Effect.runPromise(program)
|
|
194
|
+
* actual // => { message: "msg1", messages: ["msg2"], allMessages: ["msg3"] }
|
|
196
195
|
* ```
|
|
197
196
|
*
|
|
198
197
|
* @category models
|
|
@@ -216,7 +215,7 @@ export interface Subscription<out A> extends Pipeable {
|
|
|
216
215
|
*
|
|
217
216
|
* **Example** (Creating a PubSub with a custom strategy)
|
|
218
217
|
*
|
|
219
|
-
* ```ts
|
|
218
|
+
* ```ts import.meta.vitest
|
|
220
219
|
* import { Effect, PubSub } from "effect"
|
|
221
220
|
*
|
|
222
221
|
* const program = Effect.gen(function*() {
|
|
@@ -227,8 +226,13 @@ export interface Subscription<out A> extends Pipeable {
|
|
|
227
226
|
* })
|
|
228
227
|
*
|
|
229
228
|
* // Use the created PubSub
|
|
230
|
-
* yield* PubSub.publish(pubsub, "Hello")
|
|
229
|
+
* const published = yield* PubSub.publish(pubsub, "Hello")
|
|
230
|
+
* yield* PubSub.shutdown(pubsub)
|
|
231
|
+
* return published
|
|
231
232
|
* })
|
|
233
|
+
*
|
|
234
|
+
* const actual = await Effect.runPromise(program)
|
|
235
|
+
* actual // => true
|
|
232
236
|
* ```
|
|
233
237
|
*
|
|
234
238
|
* @category constructors
|
|
@@ -251,7 +255,7 @@ export declare const make: <A>(options: {
|
|
|
251
255
|
*
|
|
252
256
|
* **Example** (Creating a bounded PubSub)
|
|
253
257
|
*
|
|
254
|
-
* ```ts
|
|
258
|
+
* ```ts import.meta.vitest
|
|
255
259
|
* import { Effect, PubSub } from "effect"
|
|
256
260
|
*
|
|
257
261
|
* const program = Effect.gen(function*() {
|
|
@@ -263,7 +267,15 @@ export declare const make: <A>(options: {
|
|
|
263
267
|
* capacity: 100,
|
|
264
268
|
* replay: 10 // Last 10 messages replayed to new subscribers
|
|
265
269
|
* })
|
|
270
|
+
*
|
|
271
|
+
* const capacities = [PubSub.capacity(pubsub), PubSub.capacity(pubsubWithReplay)]
|
|
272
|
+
* yield* PubSub.shutdown(pubsub)
|
|
273
|
+
* yield* PubSub.shutdown(pubsubWithReplay)
|
|
274
|
+
* return capacities
|
|
266
275
|
* })
|
|
276
|
+
*
|
|
277
|
+
* const actual = await Effect.runPromise(program)
|
|
278
|
+
* actual // => [100, 100]
|
|
267
279
|
* ```
|
|
268
280
|
*
|
|
269
281
|
* @category constructors
|
|
@@ -283,33 +295,27 @@ export declare const bounded: <A>(capacity: number | {
|
|
|
283
295
|
*
|
|
284
296
|
* **Example** (Dropping messages when full)
|
|
285
297
|
*
|
|
286
|
-
* ```ts
|
|
298
|
+
* ```ts import.meta.vitest
|
|
287
299
|
* import { Effect, PubSub } from "effect"
|
|
288
300
|
*
|
|
289
|
-
* const program = Effect.gen(function*() {
|
|
301
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
290
302
|
* // Create dropping PubSub that drops new messages when full
|
|
291
303
|
* const pubsub = yield* PubSub.dropping<string>(3)
|
|
292
304
|
*
|
|
293
|
-
*
|
|
294
|
-
* const pubsubWithReplay = yield* PubSub.dropping<string>({
|
|
295
|
-
* capacity: 3,
|
|
296
|
-
* replay: 5
|
|
297
|
-
* })
|
|
305
|
+
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
298
306
|
*
|
|
299
|
-
*
|
|
300
|
-
*
|
|
307
|
+
* // Fill the PubSub and see dropping behavior
|
|
308
|
+
* yield* PubSub.publish(pubsub, "msg1") // succeeds
|
|
309
|
+
* yield* PubSub.publish(pubsub, "msg2") // succeeds
|
|
310
|
+
* yield* PubSub.publish(pubsub, "msg3") // succeeds
|
|
311
|
+
* const dropped = yield* PubSub.publish(pubsub, "msg4") // returns false (dropped)
|
|
301
312
|
*
|
|
302
|
-
*
|
|
303
|
-
*
|
|
304
|
-
*
|
|
305
|
-
* yield* PubSub.publish(pubsub, "msg3") // succeeds
|
|
306
|
-
* const dropped = yield* PubSub.publish(pubsub, "msg4") // returns false (dropped)
|
|
307
|
-
* console.log("Message dropped:", !dropped) // true
|
|
313
|
+
* const messages = yield* PubSub.takeAll(subscription)
|
|
314
|
+
* return { dropped: !dropped, messages }
|
|
315
|
+
* }))
|
|
308
316
|
*
|
|
309
|
-
*
|
|
310
|
-
*
|
|
311
|
-
* }))
|
|
312
|
-
* })
|
|
317
|
+
* const actual = await Effect.runPromise(program)
|
|
318
|
+
* actual // => { dropped: true, messages: ["msg1", "msg2", "msg3"] }
|
|
313
319
|
* ```
|
|
314
320
|
*
|
|
315
321
|
* @category constructors
|
|
@@ -329,32 +335,26 @@ export declare const dropping: <A>(capacity: number | {
|
|
|
329
335
|
*
|
|
330
336
|
* **Example** (Sliding old messages when full)
|
|
331
337
|
*
|
|
332
|
-
* ```ts
|
|
338
|
+
* ```ts import.meta.vitest
|
|
333
339
|
* import { Effect, PubSub } from "effect"
|
|
334
340
|
*
|
|
335
|
-
* const program = Effect.gen(function*() {
|
|
341
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
336
342
|
* // Create sliding PubSub that evicts old messages when full
|
|
337
343
|
* const pubsub = yield* PubSub.sliding<string>(3)
|
|
338
344
|
*
|
|
339
|
-
*
|
|
340
|
-
* const pubsubWithReplay = yield* PubSub.sliding<string>({
|
|
341
|
-
* capacity: 3,
|
|
342
|
-
* replay: 2
|
|
343
|
-
* })
|
|
345
|
+
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
344
346
|
*
|
|
345
|
-
*
|
|
346
|
-
*
|
|
347
|
+
* // Fill and overflow the PubSub
|
|
348
|
+
* yield* PubSub.publish(pubsub, "msg1")
|
|
349
|
+
* yield* PubSub.publish(pubsub, "msg2")
|
|
350
|
+
* yield* PubSub.publish(pubsub, "msg3")
|
|
351
|
+
* yield* PubSub.publish(pubsub, "msg4") // "msg1" is evicted
|
|
347
352
|
*
|
|
348
|
-
*
|
|
349
|
-
*
|
|
350
|
-
* yield* PubSub.publish(pubsub, "msg2")
|
|
351
|
-
* yield* PubSub.publish(pubsub, "msg3")
|
|
352
|
-
* yield* PubSub.publish(pubsub, "msg4") // "msg1" is evicted
|
|
353
|
+
* return yield* PubSub.takeAll(subscription)
|
|
354
|
+
* }))
|
|
353
355
|
*
|
|
354
|
-
*
|
|
355
|
-
*
|
|
356
|
-
* }))
|
|
357
|
-
* })
|
|
356
|
+
* const actual = await Effect.runPromise(program)
|
|
357
|
+
* actual // => ["msg2", "msg3", "msg4"]
|
|
358
358
|
* ```
|
|
359
359
|
*
|
|
360
360
|
* @category constructors
|
|
@@ -369,30 +369,25 @@ export declare const sliding: <A>(capacity: number | {
|
|
|
369
369
|
*
|
|
370
370
|
* **Example** (Creating an unbounded PubSub)
|
|
371
371
|
*
|
|
372
|
-
* ```ts
|
|
372
|
+
* ```ts import.meta.vitest
|
|
373
373
|
* import { Effect, PubSub } from "effect"
|
|
374
374
|
*
|
|
375
|
-
* const program = Effect.gen(function*() {
|
|
375
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
376
376
|
* // Create unbounded PubSub
|
|
377
377
|
* const pubsub = yield* PubSub.unbounded<string>()
|
|
378
378
|
*
|
|
379
|
-
*
|
|
380
|
-
* const pubsubWithReplay = yield* PubSub.unbounded<string>({
|
|
381
|
-
* replay: 10
|
|
382
|
-
* })
|
|
379
|
+
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
383
380
|
*
|
|
384
|
-
*
|
|
385
|
-
*
|
|
381
|
+
* // Can publish unlimited messages
|
|
382
|
+
* for (let i = 0; i < 3; i++) {
|
|
383
|
+
* yield* PubSub.publish(pubsub, `message-${i}`)
|
|
384
|
+
* }
|
|
386
385
|
*
|
|
387
|
-
*
|
|
388
|
-
*
|
|
389
|
-
* yield* PubSub.publish(pubsub, `message-${i}`)
|
|
390
|
-
* }
|
|
386
|
+
* return yield* PubSub.takeAll(subscription)
|
|
387
|
+
* }))
|
|
391
388
|
*
|
|
392
|
-
*
|
|
393
|
-
*
|
|
394
|
-
* }))
|
|
395
|
-
* })
|
|
389
|
+
* const actual = await Effect.runPromise(program)
|
|
390
|
+
* actual // => ["message-0", "message-1", "message-2"]
|
|
396
391
|
* ```
|
|
397
392
|
*
|
|
398
393
|
* @category constructors
|
|
@@ -461,18 +456,17 @@ export declare const makeAtomicUnbounded: <A>(options?: {
|
|
|
461
456
|
*
|
|
462
457
|
* **Example** (Getting PubSub capacity)
|
|
463
458
|
*
|
|
464
|
-
* ```ts
|
|
459
|
+
* ```ts import.meta.vitest
|
|
465
460
|
* import { Effect, PubSub } from "effect"
|
|
466
461
|
*
|
|
467
462
|
* const program = Effect.gen(function*() {
|
|
468
463
|
* const pubsub = yield* PubSub.bounded<string>(100)
|
|
469
|
-
* const cap = PubSub.capacity(pubsub)
|
|
470
|
-
* console.log("PubSub capacity:", cap) // 100
|
|
471
|
-
*
|
|
472
464
|
* const unboundedPubsub = yield* PubSub.unbounded<string>()
|
|
473
|
-
*
|
|
474
|
-
* console.log("Unbounded capacity:", unboundedCap) // Number.MAX_SAFE_INTEGER
|
|
465
|
+
* return [PubSub.capacity(pubsub), PubSub.capacity(unboundedPubsub)]
|
|
475
466
|
* })
|
|
467
|
+
*
|
|
468
|
+
* const actual = await Effect.runPromise(program)
|
|
469
|
+
* actual // => [100, Number.MAX_SAFE_INTEGER]
|
|
476
470
|
* ```
|
|
477
471
|
*
|
|
478
472
|
* @category getters
|
|
@@ -490,29 +484,28 @@ export declare const capacity: <A>(self: PubSub<A>) => number;
|
|
|
490
484
|
*
|
|
491
485
|
* **Example** (Getting PubSub size)
|
|
492
486
|
*
|
|
493
|
-
* ```ts
|
|
487
|
+
* ```ts import.meta.vitest
|
|
494
488
|
* import { Effect, PubSub } from "effect"
|
|
495
489
|
*
|
|
496
|
-
* const program = Effect.gen(function*() {
|
|
490
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
497
491
|
* const pubsub = yield* PubSub.bounded<string>(10)
|
|
498
492
|
*
|
|
499
493
|
* // Initially empty
|
|
500
494
|
* const initialSize = yield* PubSub.size(pubsub)
|
|
501
|
-
* console.log("Initial size:", initialSize) // 0
|
|
502
495
|
*
|
|
503
|
-
* yield*
|
|
504
|
-
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
496
|
+
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
505
497
|
*
|
|
506
|
-
*
|
|
507
|
-
*
|
|
508
|
-
*
|
|
498
|
+
* // Publish some messages for the active subscription
|
|
499
|
+
* yield* PubSub.publish(pubsub, "msg1")
|
|
500
|
+
* yield* PubSub.publish(pubsub, "msg2")
|
|
509
501
|
*
|
|
510
|
-
*
|
|
511
|
-
*
|
|
502
|
+
* const afterPublish = yield* PubSub.size(pubsub)
|
|
503
|
+
* const messages = yield* PubSub.takeAll(subscription)
|
|
504
|
+
* return { initialSize, afterPublish, messages }
|
|
505
|
+
* }))
|
|
512
506
|
*
|
|
513
|
-
*
|
|
514
|
-
*
|
|
515
|
-
* })
|
|
507
|
+
* const actual = await Effect.runPromise(program)
|
|
508
|
+
* actual // => { initialSize: 0, afterPublish: 2, messages: ["msg1", "msg2"] }
|
|
516
509
|
* ```
|
|
517
510
|
*
|
|
518
511
|
* @category getters
|
|
@@ -535,14 +528,16 @@ export declare const size: <A>(self: PubSub<A>) => Effect.Effect<number>;
|
|
|
535
528
|
*
|
|
536
529
|
* **Example** (Reading size synchronously)
|
|
537
530
|
*
|
|
538
|
-
* ```ts
|
|
539
|
-
* import { PubSub } from "effect"
|
|
531
|
+
* ```ts import.meta.vitest
|
|
532
|
+
* import { Effect, PubSub } from "effect"
|
|
540
533
|
*
|
|
541
|
-
*
|
|
542
|
-
*
|
|
534
|
+
* const program = Effect.gen(function*() {
|
|
535
|
+
* const pubsub = yield* PubSub.bounded<string>(2)
|
|
536
|
+
* return PubSub.sizeUnsafe(pubsub)
|
|
537
|
+
* })
|
|
543
538
|
*
|
|
544
|
-
* const
|
|
545
|
-
*
|
|
539
|
+
* const actual = await Effect.runPromise(program)
|
|
540
|
+
* actual // => 0
|
|
546
541
|
* ```
|
|
547
542
|
*
|
|
548
543
|
* @category getters
|
|
@@ -558,29 +553,28 @@ export declare const sizeUnsafe: <A>(self: PubSub<A>) => number;
|
|
|
558
553
|
*
|
|
559
554
|
* **Example** (Checking whether a PubSub is full)
|
|
560
555
|
*
|
|
561
|
-
* ```ts
|
|
556
|
+
* ```ts import.meta.vitest
|
|
562
557
|
* import { Effect, PubSub } from "effect"
|
|
563
558
|
*
|
|
564
|
-
* const program = Effect.gen(function*() {
|
|
559
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
565
560
|
* const pubsub = yield* PubSub.bounded<string>(2)
|
|
566
561
|
*
|
|
567
562
|
* // Initially not full
|
|
568
563
|
* const initiallyFull = yield* PubSub.isFull(pubsub)
|
|
569
|
-
* console.log("Initially full:", initiallyFull) // false
|
|
570
564
|
*
|
|
571
|
-
* yield*
|
|
572
|
-
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
565
|
+
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
573
566
|
*
|
|
574
|
-
*
|
|
575
|
-
*
|
|
576
|
-
*
|
|
567
|
+
* // Fill the PubSub for the active subscription
|
|
568
|
+
* yield* PubSub.publish(pubsub, "msg1")
|
|
569
|
+
* yield* PubSub.publish(pubsub, "msg2")
|
|
577
570
|
*
|
|
578
|
-
*
|
|
579
|
-
*
|
|
571
|
+
* const nowFull = yield* PubSub.isFull(pubsub)
|
|
572
|
+
* const messages = yield* PubSub.takeAll(subscription)
|
|
573
|
+
* return { initiallyFull, nowFull, messages }
|
|
574
|
+
* }))
|
|
580
575
|
*
|
|
581
|
-
*
|
|
582
|
-
*
|
|
583
|
-
* })
|
|
576
|
+
* const actual = await Effect.runPromise(program)
|
|
577
|
+
* actual // => { initiallyFull: false, nowFull: true, messages: ["msg1", "msg2"] }
|
|
584
578
|
* ```
|
|
585
579
|
*
|
|
586
580
|
* @category predicates
|
|
@@ -592,28 +586,27 @@ export declare const isFull: <A>(self: PubSub<A>) => Effect.Effect<boolean>;
|
|
|
592
586
|
*
|
|
593
587
|
* **Example** (Checking whether a PubSub is empty)
|
|
594
588
|
*
|
|
595
|
-
* ```ts
|
|
589
|
+
* ```ts import.meta.vitest
|
|
596
590
|
* import { Effect, PubSub } from "effect"
|
|
597
591
|
*
|
|
598
|
-
* const program = Effect.gen(function*() {
|
|
592
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
599
593
|
* const pubsub = yield* PubSub.bounded<string>(10)
|
|
600
594
|
*
|
|
601
595
|
* // Initially empty
|
|
602
596
|
* const initiallyEmpty = yield* PubSub.isEmpty(pubsub)
|
|
603
|
-
* console.log("Initially empty:", initiallyEmpty) // true
|
|
604
597
|
*
|
|
605
|
-
* yield*
|
|
606
|
-
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
598
|
+
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
607
599
|
*
|
|
608
|
-
*
|
|
609
|
-
*
|
|
600
|
+
* // Publish a message for the active subscription
|
|
601
|
+
* yield* PubSub.publish(pubsub, "Hello")
|
|
610
602
|
*
|
|
611
|
-
*
|
|
612
|
-
*
|
|
603
|
+
* const nowEmpty = yield* PubSub.isEmpty(pubsub)
|
|
604
|
+
* const message = yield* PubSub.take(subscription)
|
|
605
|
+
* return { initiallyEmpty, nowEmpty, message }
|
|
606
|
+
* }))
|
|
613
607
|
*
|
|
614
|
-
*
|
|
615
|
-
*
|
|
616
|
-
* })
|
|
608
|
+
* const actual = await Effect.runPromise(program)
|
|
609
|
+
* actual // => { initiallyEmpty: true, nowEmpty: false, message: "Hello" }
|
|
617
610
|
* ```
|
|
618
611
|
*
|
|
619
612
|
* @category predicates
|
|
@@ -632,7 +625,7 @@ export declare const isEmpty: <A>(self: PubSub<A>) => Effect.Effect<boolean>;
|
|
|
632
625
|
*
|
|
633
626
|
* **Example** (Shutting down a PubSub)
|
|
634
627
|
*
|
|
635
|
-
* ```ts
|
|
628
|
+
* ```ts import.meta.vitest
|
|
636
629
|
* import { Effect, PubSub } from "effect"
|
|
637
630
|
*
|
|
638
631
|
* const program = Effect.gen(function*() {
|
|
@@ -642,12 +635,14 @@ export declare const isEmpty: <A>(self: PubSub<A>) => Effect.Effect<boolean>;
|
|
|
642
635
|
* yield* PubSub.shutdown(pubsub)
|
|
643
636
|
*
|
|
644
637
|
* const isShutdown = yield* PubSub.isShutdown(pubsub)
|
|
645
|
-
* console.log("Is shutdown:", isShutdown) // true
|
|
646
638
|
*
|
|
647
639
|
* // Publishing after shutdown returns false
|
|
648
640
|
* const published = yield* PubSub.publish(pubsub, "msg1")
|
|
649
|
-
*
|
|
641
|
+
* return { isShutdown, published }
|
|
650
642
|
* })
|
|
643
|
+
*
|
|
644
|
+
* const actual = await Effect.runPromise(program)
|
|
645
|
+
* actual // => { isShutdown: true, published: false }
|
|
651
646
|
* ```
|
|
652
647
|
*
|
|
653
648
|
* @category lifecycle
|
|
@@ -660,7 +655,7 @@ export declare const shutdown: <A>(self: PubSub<A>) => Effect.Effect<void>;
|
|
|
660
655
|
*
|
|
661
656
|
* **Example** (Checking whether a PubSub is shut down)
|
|
662
657
|
*
|
|
663
|
-
* ```ts
|
|
658
|
+
* ```ts import.meta.vitest
|
|
664
659
|
* import { Effect, PubSub } from "effect"
|
|
665
660
|
*
|
|
666
661
|
* const program = Effect.gen(function*() {
|
|
@@ -668,14 +663,16 @@ export declare const shutdown: <A>(self: PubSub<A>) => Effect.Effect<void>;
|
|
|
668
663
|
*
|
|
669
664
|
* // Initially not shutdown
|
|
670
665
|
* const initiallyShutdown = yield* PubSub.isShutdown(pubsub)
|
|
671
|
-
* console.log("Initially shutdown:", initiallyShutdown) // false
|
|
672
666
|
*
|
|
673
667
|
* // Shutdown the PubSub
|
|
674
668
|
* yield* PubSub.shutdown(pubsub)
|
|
675
669
|
*
|
|
676
670
|
* const nowShutdown = yield* PubSub.isShutdown(pubsub)
|
|
677
|
-
*
|
|
671
|
+
* return [initiallyShutdown, nowShutdown]
|
|
678
672
|
* })
|
|
673
|
+
*
|
|
674
|
+
* const actual = await Effect.runPromise(program)
|
|
675
|
+
* actual // => [false, true]
|
|
679
676
|
* ```
|
|
680
677
|
*
|
|
681
678
|
* @category predicates
|
|
@@ -693,18 +690,18 @@ export declare const isShutdown: <A>(self: PubSub<A>) => Effect.Effect<boolean>;
|
|
|
693
690
|
*
|
|
694
691
|
* **Example** (Checking shutdown synchronously)
|
|
695
692
|
*
|
|
696
|
-
* ```ts
|
|
697
|
-
* import { PubSub } from "effect"
|
|
693
|
+
* ```ts import.meta.vitest
|
|
694
|
+
* import { Effect, PubSub } from "effect"
|
|
698
695
|
*
|
|
699
|
-
*
|
|
696
|
+
* const program = Effect.gen(function*() {
|
|
697
|
+
* const pubsub = yield* PubSub.bounded<string>(2)
|
|
698
|
+
* const initiallyShutdown = PubSub.isShutdownUnsafe(pubsub)
|
|
699
|
+
* yield* PubSub.shutdown(pubsub)
|
|
700
|
+
* return [initiallyShutdown, PubSub.isShutdownUnsafe(pubsub)]
|
|
701
|
+
* })
|
|
700
702
|
*
|
|
701
|
-
*
|
|
702
|
-
*
|
|
703
|
-
* if (isDown) {
|
|
704
|
-
* console.log("PubSub is shutdown, cannot publish")
|
|
705
|
-
* } else {
|
|
706
|
-
* console.log("PubSub is active")
|
|
707
|
-
* }
|
|
703
|
+
* const actual = await Effect.runPromise(program)
|
|
704
|
+
* actual // => [false, true]
|
|
708
705
|
* ```
|
|
709
706
|
*
|
|
710
707
|
* @category predicates
|
|
@@ -718,7 +715,7 @@ export declare const isShutdownUnsafe: <A>(self: PubSub<A>) => boolean;
|
|
|
718
715
|
*
|
|
719
716
|
* **Example** (Waiting for shutdown)
|
|
720
717
|
*
|
|
721
|
-
* ```ts
|
|
718
|
+
* ```ts import.meta.vitest
|
|
722
719
|
* import { Effect, Fiber, PubSub } from "effect"
|
|
723
720
|
*
|
|
724
721
|
* const program = Effect.gen(function*() {
|
|
@@ -728,19 +725,19 @@ export declare const isShutdownUnsafe: <A>(self: PubSub<A>) => boolean;
|
|
|
728
725
|
* const waiterFiber = yield* Effect.forkChild(
|
|
729
726
|
* Effect.gen(function*() {
|
|
730
727
|
* yield* PubSub.awaitShutdown(pubsub)
|
|
731
|
-
*
|
|
728
|
+
* return "PubSub has been shutdown!"
|
|
732
729
|
* })
|
|
733
730
|
* )
|
|
734
731
|
*
|
|
735
|
-
* // Do some work...
|
|
736
|
-
* yield* Effect.sleep("100 millis")
|
|
737
|
-
*
|
|
738
732
|
* // Shutdown the PubSub
|
|
739
733
|
* yield* PubSub.shutdown(pubsub)
|
|
740
734
|
*
|
|
741
735
|
* // The waiter will now complete
|
|
742
|
-
* yield* Fiber.join(waiterFiber)
|
|
736
|
+
* return yield* Fiber.join(waiterFiber)
|
|
743
737
|
* })
|
|
738
|
+
*
|
|
739
|
+
* const actual = await Effect.runPromise(program)
|
|
740
|
+
* actual // => "PubSub has been shutdown!"
|
|
744
741
|
* ```
|
|
745
742
|
*
|
|
746
743
|
* @category lifecycle
|
|
@@ -764,24 +761,24 @@ export declare const awaitShutdown: <A>(self: PubSub<A>) => Effect.Effect<void>;
|
|
|
764
761
|
*
|
|
765
762
|
* **Example** (Publishing a message)
|
|
766
763
|
*
|
|
767
|
-
* ```ts
|
|
764
|
+
* ```ts import.meta.vitest
|
|
768
765
|
* import { Effect, PubSub } from "effect"
|
|
769
766
|
*
|
|
770
|
-
* const program = Effect.gen(function*() {
|
|
767
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
771
768
|
* const pubsub = yield* PubSub.bounded<string>(10)
|
|
772
769
|
*
|
|
773
770
|
* // Publish a message
|
|
774
771
|
* const published = yield* PubSub.publish(pubsub, "Hello World")
|
|
775
|
-
* console.log("Message published:", published) // true
|
|
776
772
|
*
|
|
777
|
-
* yield*
|
|
778
|
-
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
773
|
+
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
779
774
|
*
|
|
780
|
-
*
|
|
781
|
-
*
|
|
782
|
-
*
|
|
783
|
-
*
|
|
784
|
-
*
|
|
775
|
+
* yield* PubSub.publish(pubsub, "Hello")
|
|
776
|
+
* const message = yield* PubSub.take(subscription)
|
|
777
|
+
* return { published, message }
|
|
778
|
+
* }))
|
|
779
|
+
*
|
|
780
|
+
* const actual = await Effect.runPromise(program)
|
|
781
|
+
* actual // => { published: true, message: "Hello" }
|
|
785
782
|
* ```
|
|
786
783
|
*
|
|
787
784
|
* @see {@link publishUnsafe} for a synchronous non-blocking attempt that does not run effectful surplus handling
|
|
@@ -807,24 +804,24 @@ export declare const publish: {
|
|
|
807
804
|
*
|
|
808
805
|
* **Example** (Publishing a message)
|
|
809
806
|
*
|
|
810
|
-
* ```ts
|
|
807
|
+
* ```ts import.meta.vitest
|
|
811
808
|
* import { Effect, PubSub } from "effect"
|
|
812
809
|
*
|
|
813
|
-
* const program = Effect.gen(function*() {
|
|
810
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
814
811
|
* const pubsub = yield* PubSub.bounded<string>(10)
|
|
815
812
|
*
|
|
816
813
|
* // Publish a message
|
|
817
814
|
* const published = yield* PubSub.publish(pubsub, "Hello World")
|
|
818
|
-
* console.log("Message published:", published) // true
|
|
819
815
|
*
|
|
820
|
-
* yield*
|
|
821
|
-
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
816
|
+
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
822
817
|
*
|
|
823
|
-
*
|
|
824
|
-
*
|
|
825
|
-
*
|
|
826
|
-
*
|
|
827
|
-
*
|
|
818
|
+
* yield* PubSub.publish(pubsub, "Hello")
|
|
819
|
+
* const message = yield* PubSub.take(subscription)
|
|
820
|
+
* return { published, message }
|
|
821
|
+
* }))
|
|
822
|
+
*
|
|
823
|
+
* const actual = await Effect.runPromise(program)
|
|
824
|
+
* actual // => { published: true, message: "Hello" }
|
|
828
825
|
* ```
|
|
829
826
|
*
|
|
830
827
|
* @see {@link publishUnsafe} for a synchronous non-blocking attempt that does not run effectful surplus handling
|
|
@@ -850,24 +847,24 @@ export declare const publish: {
|
|
|
850
847
|
*
|
|
851
848
|
* **Example** (Publishing a message)
|
|
852
849
|
*
|
|
853
|
-
* ```ts
|
|
850
|
+
* ```ts import.meta.vitest
|
|
854
851
|
* import { Effect, PubSub } from "effect"
|
|
855
852
|
*
|
|
856
|
-
* const program = Effect.gen(function*() {
|
|
853
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
857
854
|
* const pubsub = yield* PubSub.bounded<string>(10)
|
|
858
855
|
*
|
|
859
856
|
* // Publish a message
|
|
860
857
|
* const published = yield* PubSub.publish(pubsub, "Hello World")
|
|
861
|
-
* console.log("Message published:", published) // true
|
|
862
858
|
*
|
|
863
|
-
* yield*
|
|
864
|
-
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
859
|
+
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
865
860
|
*
|
|
866
|
-
*
|
|
867
|
-
*
|
|
868
|
-
*
|
|
869
|
-
*
|
|
870
|
-
*
|
|
861
|
+
* yield* PubSub.publish(pubsub, "Hello")
|
|
862
|
+
* const message = yield* PubSub.take(subscription)
|
|
863
|
+
* return { published, message }
|
|
864
|
+
* }))
|
|
865
|
+
*
|
|
866
|
+
* const actual = await Effect.runPromise(program)
|
|
867
|
+
* actual // => { published: true, message: "Hello" }
|
|
871
868
|
* ```
|
|
872
869
|
*
|
|
873
870
|
* @see {@link publishUnsafe} for a synchronous non-blocking attempt that does not run effectful surplus handling
|
|
@@ -894,24 +891,16 @@ export declare const publish: {
|
|
|
894
891
|
*
|
|
895
892
|
* **Example** (Publishing without suspending)
|
|
896
893
|
*
|
|
897
|
-
* ```ts
|
|
898
|
-
* import { PubSub } from "effect"
|
|
899
|
-
*
|
|
900
|
-
* declare const pubsub: PubSub.PubSub<string>
|
|
894
|
+
* ```ts import.meta.vitest
|
|
895
|
+
* import { Effect, PubSub } from "effect"
|
|
901
896
|
*
|
|
902
|
-
*
|
|
903
|
-
*
|
|
904
|
-
*
|
|
905
|
-
*
|
|
906
|
-
* } else {
|
|
907
|
-
* console.log("Message dropped (PubSub full or shutdown)")
|
|
908
|
-
* }
|
|
897
|
+
* const program = Effect.gen(function*() {
|
|
898
|
+
* const pubsub = yield* PubSub.bounded<string>(2)
|
|
899
|
+
* return PubSub.publishUnsafe(pubsub, "Hello")
|
|
900
|
+
* })
|
|
909
901
|
*
|
|
910
|
-
*
|
|
911
|
-
*
|
|
912
|
-
* const publishedCount =
|
|
913
|
-
* messages.filter((msg) => PubSub.publishUnsafe(pubsub, msg)).length
|
|
914
|
-
* console.log(`Published ${publishedCount} out of ${messages.length} messages`)
|
|
902
|
+
* const actual = await Effect.runPromise(program)
|
|
903
|
+
* actual // => true
|
|
915
904
|
* ```
|
|
916
905
|
*
|
|
917
906
|
* @see {@link publish} for effectful publishing that honors the configured surplus strategy
|
|
@@ -937,24 +926,16 @@ export declare const publishUnsafe: {
|
|
|
937
926
|
*
|
|
938
927
|
* **Example** (Publishing without suspending)
|
|
939
928
|
*
|
|
940
|
-
* ```ts
|
|
941
|
-
* import { PubSub } from "effect"
|
|
942
|
-
*
|
|
943
|
-
* declare const pubsub: PubSub.PubSub<string>
|
|
929
|
+
* ```ts import.meta.vitest
|
|
930
|
+
* import { Effect, PubSub } from "effect"
|
|
944
931
|
*
|
|
945
|
-
*
|
|
946
|
-
*
|
|
947
|
-
*
|
|
948
|
-
*
|
|
949
|
-
* } else {
|
|
950
|
-
* console.log("Message dropped (PubSub full or shutdown)")
|
|
951
|
-
* }
|
|
932
|
+
* const program = Effect.gen(function*() {
|
|
933
|
+
* const pubsub = yield* PubSub.bounded<string>(2)
|
|
934
|
+
* return PubSub.publishUnsafe(pubsub, "Hello")
|
|
935
|
+
* })
|
|
952
936
|
*
|
|
953
|
-
*
|
|
954
|
-
*
|
|
955
|
-
* const publishedCount =
|
|
956
|
-
* messages.filter((msg) => PubSub.publishUnsafe(pubsub, msg)).length
|
|
957
|
-
* console.log(`Published ${publishedCount} out of ${messages.length} messages`)
|
|
937
|
+
* const actual = await Effect.runPromise(program)
|
|
938
|
+
* actual // => true
|
|
958
939
|
* ```
|
|
959
940
|
*
|
|
960
941
|
* @see {@link publish} for effectful publishing that honors the configured surplus strategy
|
|
@@ -980,24 +961,16 @@ export declare const publishUnsafe: {
|
|
|
980
961
|
*
|
|
981
962
|
* **Example** (Publishing without suspending)
|
|
982
963
|
*
|
|
983
|
-
* ```ts
|
|
984
|
-
* import { PubSub } from "effect"
|
|
985
|
-
*
|
|
986
|
-
* declare const pubsub: PubSub.PubSub<string>
|
|
964
|
+
* ```ts import.meta.vitest
|
|
965
|
+
* import { Effect, PubSub } from "effect"
|
|
987
966
|
*
|
|
988
|
-
*
|
|
989
|
-
*
|
|
990
|
-
*
|
|
991
|
-
*
|
|
992
|
-
* } else {
|
|
993
|
-
* console.log("Message dropped (PubSub full or shutdown)")
|
|
994
|
-
* }
|
|
967
|
+
* const program = Effect.gen(function*() {
|
|
968
|
+
* const pubsub = yield* PubSub.bounded<string>(2)
|
|
969
|
+
* return PubSub.publishUnsafe(pubsub, "Hello")
|
|
970
|
+
* })
|
|
995
971
|
*
|
|
996
|
-
*
|
|
997
|
-
*
|
|
998
|
-
* const publishedCount =
|
|
999
|
-
* messages.filter((msg) => PubSub.publishUnsafe(pubsub, msg)).length
|
|
1000
|
-
* console.log(`Published ${publishedCount} out of ${messages.length} messages`)
|
|
972
|
+
* const actual = await Effect.runPromise(program)
|
|
973
|
+
* actual // => true
|
|
1001
974
|
* ```
|
|
1002
975
|
*
|
|
1003
976
|
* @see {@link publish} for effectful publishing that honors the configured surplus strategy
|
|
@@ -1013,37 +986,30 @@ export declare const publishUnsafe: {
|
|
|
1013
986
|
*
|
|
1014
987
|
* **Example** (Publishing multiple messages)
|
|
1015
988
|
*
|
|
1016
|
-
* ```ts
|
|
989
|
+
* ```ts import.meta.vitest
|
|
1017
990
|
* import { Effect, Fiber, PubSub } from "effect"
|
|
1018
991
|
*
|
|
1019
|
-
* const program = Effect.gen(function*() {
|
|
992
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
1020
993
|
* const pubsub = yield* PubSub.bounded<string>(10)
|
|
1021
994
|
*
|
|
1022
995
|
* // Publish multiple messages at once
|
|
1023
|
-
* const
|
|
1024
|
-
* const allPublished = yield* PubSub.publishAll(pubsub, messages)
|
|
1025
|
-
* console.log("All messages published:", allPublished) // true
|
|
996
|
+
* const allPublished = yield* PubSub.publishAll(pubsub, ["Hello", "World", "from", "Effect"])
|
|
1026
997
|
*
|
|
1027
998
|
* // With a smaller capacity and an active subscription
|
|
1028
999
|
* const smallPubsub = yield* PubSub.bounded<string>(2)
|
|
1029
|
-
* const
|
|
1030
|
-
*
|
|
1031
|
-
* yield* Effect.scoped(Effect.gen(function*() {
|
|
1032
|
-
* const subscription = yield* PubSub.subscribe(smallPubsub)
|
|
1033
|
-
*
|
|
1034
|
-
* // Will suspend until space becomes available for all messages
|
|
1035
|
-
* const fiber = yield* Effect.forkChild(PubSub.publishAll(smallPubsub, manyMessages))
|
|
1000
|
+
* const subscription = yield* PubSub.subscribe(smallPubsub)
|
|
1036
1001
|
*
|
|
1037
|
-
*
|
|
1038
|
-
*
|
|
1002
|
+
* // Will suspend until space becomes available for all messages
|
|
1003
|
+
* const fiber = yield* Effect.forkChild(PubSub.publishAll(smallPubsub, ["msg1", "msg2", "msg3", "msg4"]))
|
|
1039
1004
|
*
|
|
1040
|
-
*
|
|
1041
|
-
*
|
|
1005
|
+
* const firstBatch = yield* PubSub.takeBetween(subscription, 2, 2)
|
|
1006
|
+
* const result = yield* Fiber.join(fiber)
|
|
1007
|
+
* const secondBatch = yield* PubSub.takeAll(subscription)
|
|
1008
|
+
* return { allPublished, firstBatch, result, secondBatch }
|
|
1009
|
+
* }))
|
|
1042
1010
|
*
|
|
1043
|
-
*
|
|
1044
|
-
*
|
|
1045
|
-
* }))
|
|
1046
|
-
* })
|
|
1011
|
+
* const actual = await Effect.runPromise(program)
|
|
1012
|
+
* actual // => { allPublished: true, firstBatch: ["msg1", "msg2"], result: true, secondBatch: ["msg3", "msg4"] }
|
|
1047
1013
|
* ```
|
|
1048
1014
|
*
|
|
1049
1015
|
* @category publishing
|
|
@@ -1056,37 +1022,30 @@ export declare const publishAll: {
|
|
|
1056
1022
|
*
|
|
1057
1023
|
* **Example** (Publishing multiple messages)
|
|
1058
1024
|
*
|
|
1059
|
-
* ```ts
|
|
1025
|
+
* ```ts import.meta.vitest
|
|
1060
1026
|
* import { Effect, Fiber, PubSub } from "effect"
|
|
1061
1027
|
*
|
|
1062
|
-
* const program = Effect.gen(function*() {
|
|
1028
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
1063
1029
|
* const pubsub = yield* PubSub.bounded<string>(10)
|
|
1064
1030
|
*
|
|
1065
1031
|
* // Publish multiple messages at once
|
|
1066
|
-
* const
|
|
1067
|
-
* const allPublished = yield* PubSub.publishAll(pubsub, messages)
|
|
1068
|
-
* console.log("All messages published:", allPublished) // true
|
|
1032
|
+
* const allPublished = yield* PubSub.publishAll(pubsub, ["Hello", "World", "from", "Effect"])
|
|
1069
1033
|
*
|
|
1070
1034
|
* // With a smaller capacity and an active subscription
|
|
1071
1035
|
* const smallPubsub = yield* PubSub.bounded<string>(2)
|
|
1072
|
-
* const
|
|
1073
|
-
*
|
|
1074
|
-
* yield* Effect.scoped(Effect.gen(function*() {
|
|
1075
|
-
* const subscription = yield* PubSub.subscribe(smallPubsub)
|
|
1076
|
-
*
|
|
1077
|
-
* // Will suspend until space becomes available for all messages
|
|
1078
|
-
* const fiber = yield* Effect.forkChild(PubSub.publishAll(smallPubsub, manyMessages))
|
|
1036
|
+
* const subscription = yield* PubSub.subscribe(smallPubsub)
|
|
1079
1037
|
*
|
|
1080
|
-
*
|
|
1081
|
-
*
|
|
1038
|
+
* // Will suspend until space becomes available for all messages
|
|
1039
|
+
* const fiber = yield* Effect.forkChild(PubSub.publishAll(smallPubsub, ["msg1", "msg2", "msg3", "msg4"]))
|
|
1082
1040
|
*
|
|
1083
|
-
*
|
|
1084
|
-
*
|
|
1041
|
+
* const firstBatch = yield* PubSub.takeBetween(subscription, 2, 2)
|
|
1042
|
+
* const result = yield* Fiber.join(fiber)
|
|
1043
|
+
* const secondBatch = yield* PubSub.takeAll(subscription)
|
|
1044
|
+
* return { allPublished, firstBatch, result, secondBatch }
|
|
1045
|
+
* }))
|
|
1085
1046
|
*
|
|
1086
|
-
*
|
|
1087
|
-
*
|
|
1088
|
-
* }))
|
|
1089
|
-
* })
|
|
1047
|
+
* const actual = await Effect.runPromise(program)
|
|
1048
|
+
* actual // => { allPublished: true, firstBatch: ["msg1", "msg2"], result: true, secondBatch: ["msg3", "msg4"] }
|
|
1090
1049
|
* ```
|
|
1091
1050
|
*
|
|
1092
1051
|
* @category publishing
|
|
@@ -1099,37 +1058,30 @@ export declare const publishAll: {
|
|
|
1099
1058
|
*
|
|
1100
1059
|
* **Example** (Publishing multiple messages)
|
|
1101
1060
|
*
|
|
1102
|
-
* ```ts
|
|
1061
|
+
* ```ts import.meta.vitest
|
|
1103
1062
|
* import { Effect, Fiber, PubSub } from "effect"
|
|
1104
1063
|
*
|
|
1105
|
-
* const program = Effect.gen(function*() {
|
|
1064
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
1106
1065
|
* const pubsub = yield* PubSub.bounded<string>(10)
|
|
1107
1066
|
*
|
|
1108
1067
|
* // Publish multiple messages at once
|
|
1109
|
-
* const
|
|
1110
|
-
* const allPublished = yield* PubSub.publishAll(pubsub, messages)
|
|
1111
|
-
* console.log("All messages published:", allPublished) // true
|
|
1068
|
+
* const allPublished = yield* PubSub.publishAll(pubsub, ["Hello", "World", "from", "Effect"])
|
|
1112
1069
|
*
|
|
1113
1070
|
* // With a smaller capacity and an active subscription
|
|
1114
1071
|
* const smallPubsub = yield* PubSub.bounded<string>(2)
|
|
1115
|
-
* const
|
|
1072
|
+
* const subscription = yield* PubSub.subscribe(smallPubsub)
|
|
1116
1073
|
*
|
|
1117
|
-
*
|
|
1118
|
-
*
|
|
1074
|
+
* // Will suspend until space becomes available for all messages
|
|
1075
|
+
* const fiber = yield* Effect.forkChild(PubSub.publishAll(smallPubsub, ["msg1", "msg2", "msg3", "msg4"]))
|
|
1119
1076
|
*
|
|
1120
|
-
*
|
|
1121
|
-
*
|
|
1077
|
+
* const firstBatch = yield* PubSub.takeBetween(subscription, 2, 2)
|
|
1078
|
+
* const result = yield* Fiber.join(fiber)
|
|
1079
|
+
* const secondBatch = yield* PubSub.takeAll(subscription)
|
|
1080
|
+
* return { allPublished, firstBatch, result, secondBatch }
|
|
1081
|
+
* }))
|
|
1122
1082
|
*
|
|
1123
|
-
*
|
|
1124
|
-
*
|
|
1125
|
-
*
|
|
1126
|
-
* const result = yield* Fiber.join(fiber)
|
|
1127
|
-
* console.log("All messages eventually published:", result) // true
|
|
1128
|
-
*
|
|
1129
|
-
* const secondBatch = yield* PubSub.takeAll(subscription)
|
|
1130
|
-
* console.log("Second batch:", secondBatch) // ["msg3", "msg4"]
|
|
1131
|
-
* }))
|
|
1132
|
-
* })
|
|
1083
|
+
* const actual = await Effect.runPromise(program)
|
|
1084
|
+
* actual // => { allPublished: true, firstBatch: ["msg1", "msg2"], result: true, secondBatch: ["msg3", "msg4"] }
|
|
1133
1085
|
* ```
|
|
1134
1086
|
*
|
|
1135
1087
|
* @category publishing
|
|
@@ -1144,14 +1096,14 @@ export declare const publishAll: {
|
|
|
1144
1096
|
*
|
|
1145
1097
|
* **Example** (Subscribing to messages)
|
|
1146
1098
|
*
|
|
1147
|
-
* ```ts
|
|
1099
|
+
* ```ts import.meta.vitest
|
|
1148
1100
|
* import { Effect, PubSub } from "effect"
|
|
1149
1101
|
*
|
|
1150
1102
|
* const program = Effect.gen(function*() {
|
|
1151
1103
|
* const pubsub = yield* PubSub.bounded<string>(10)
|
|
1152
1104
|
*
|
|
1153
1105
|
* // Subscribe within a scope for automatic cleanup
|
|
1154
|
-
* yield* Effect.scoped(Effect.gen(function*() {
|
|
1106
|
+
* const first = yield* Effect.scoped(Effect.gen(function*() {
|
|
1155
1107
|
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
1156
1108
|
*
|
|
1157
1109
|
* // Publish some messages
|
|
@@ -1161,25 +1113,28 @@ export declare const publishAll: {
|
|
|
1161
1113
|
* // Take messages one by one
|
|
1162
1114
|
* const msg1 = yield* PubSub.take(subscription)
|
|
1163
1115
|
* const msg2 = yield* PubSub.take(subscription)
|
|
1164
|
-
* console.log(msg1, msg2) // "Hello", "World"
|
|
1165
1116
|
*
|
|
1166
1117
|
* // Subscription is automatically cleaned up when scope exits
|
|
1118
|
+
* return [msg1, msg2]
|
|
1167
1119
|
* }))
|
|
1168
1120
|
*
|
|
1169
|
-
* yield* Effect.scoped(Effect.gen(function*() {
|
|
1121
|
+
* const second = yield* Effect.scoped(Effect.gen(function*() {
|
|
1170
1122
|
* const sub1 = yield* PubSub.subscribe(pubsub)
|
|
1171
1123
|
* const sub2 = yield* PubSub.subscribe(pubsub)
|
|
1172
1124
|
*
|
|
1173
1125
|
* // Multiple subscribers can receive the same messages
|
|
1174
1126
|
* yield* PubSub.publish(pubsub, "Broadcast")
|
|
1175
1127
|
*
|
|
1176
|
-
*
|
|
1128
|
+
* return yield* Effect.all([
|
|
1177
1129
|
* PubSub.take(sub1),
|
|
1178
1130
|
* PubSub.take(sub2)
|
|
1179
1131
|
* ])
|
|
1180
|
-
* console.log("Both received:", msg1, msg2) // "Broadcast", "Broadcast"
|
|
1181
1132
|
* }))
|
|
1133
|
+
* return [first, second]
|
|
1182
1134
|
* })
|
|
1135
|
+
*
|
|
1136
|
+
* const actual = await Effect.runPromise(program)
|
|
1137
|
+
* actual // => [["Hello", "World"], ["Broadcast", "Broadcast"]]
|
|
1183
1138
|
* ```
|
|
1184
1139
|
*
|
|
1185
1140
|
* @category subscriptions
|
|
@@ -1192,28 +1147,26 @@ export declare const subscribe: <A>(self: PubSub<A>) => Effect.Effect<Subscripti
|
|
|
1192
1147
|
*
|
|
1193
1148
|
* **Example** (Taking a message)
|
|
1194
1149
|
*
|
|
1195
|
-
* ```ts
|
|
1150
|
+
* ```ts import.meta.vitest
|
|
1196
1151
|
* import { Effect, Fiber, PubSub } from "effect"
|
|
1197
1152
|
*
|
|
1198
|
-
* const program = Effect.gen(function*() {
|
|
1153
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
1199
1154
|
* const pubsub = yield* PubSub.bounded<string>(10)
|
|
1200
1155
|
*
|
|
1201
|
-
* yield*
|
|
1202
|
-
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
1156
|
+
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
1203
1157
|
*
|
|
1204
|
-
*
|
|
1205
|
-
*
|
|
1206
|
-
* PubSub.take(subscription)
|
|
1207
|
-
* )
|
|
1158
|
+
* // Start a fiber to take a message (will suspend)
|
|
1159
|
+
* const takeFiber = yield* Effect.forkChild(PubSub.take(subscription))
|
|
1208
1160
|
*
|
|
1209
|
-
*
|
|
1210
|
-
*
|
|
1161
|
+
* // Publish a message
|
|
1162
|
+
* yield* PubSub.publish(pubsub, "Hello")
|
|
1211
1163
|
*
|
|
1212
|
-
*
|
|
1213
|
-
*
|
|
1214
|
-
*
|
|
1215
|
-
*
|
|
1216
|
-
*
|
|
1164
|
+
* // The take will now complete
|
|
1165
|
+
* return yield* Fiber.join(takeFiber)
|
|
1166
|
+
* }))
|
|
1167
|
+
*
|
|
1168
|
+
* const actual = await Effect.runPromise(program)
|
|
1169
|
+
* actual // => "Hello"
|
|
1217
1170
|
* ```
|
|
1218
1171
|
*
|
|
1219
1172
|
* @category subscriptions
|
|
@@ -1226,23 +1179,23 @@ export declare const take: <A>(self: Subscription<A>) => Effect.Effect<A>;
|
|
|
1226
1179
|
*
|
|
1227
1180
|
* **Example** (Taking all available messages)
|
|
1228
1181
|
*
|
|
1229
|
-
* ```ts
|
|
1182
|
+
* ```ts import.meta.vitest
|
|
1230
1183
|
* import { Effect, PubSub } from "effect"
|
|
1231
1184
|
*
|
|
1232
|
-
* const program = Effect.gen(function*() {
|
|
1185
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
1233
1186
|
* const pubsub = yield* PubSub.bounded<string>(10)
|
|
1234
1187
|
*
|
|
1235
|
-
* yield*
|
|
1236
|
-
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
1188
|
+
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
1237
1189
|
*
|
|
1238
|
-
*
|
|
1239
|
-
*
|
|
1190
|
+
* // Publish multiple messages
|
|
1191
|
+
* yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3"])
|
|
1240
1192
|
*
|
|
1241
|
-
*
|
|
1242
|
-
*
|
|
1243
|
-
*
|
|
1244
|
-
*
|
|
1245
|
-
*
|
|
1193
|
+
* // Take all available messages at once
|
|
1194
|
+
* return yield* PubSub.takeAll(subscription)
|
|
1195
|
+
* }))
|
|
1196
|
+
*
|
|
1197
|
+
* const actual = await Effect.runPromise(program)
|
|
1198
|
+
* actual // => ["msg1", "msg2", "msg3"]
|
|
1246
1199
|
* ```
|
|
1247
1200
|
*
|
|
1248
1201
|
* @category subscriptions
|
|
@@ -1254,31 +1207,30 @@ export declare const takeAll: <A>(self: Subscription<A>) => Effect.Effect<Arr.No
|
|
|
1254
1207
|
*
|
|
1255
1208
|
* **Example** (Taking up to a maximum number of messages)
|
|
1256
1209
|
*
|
|
1257
|
-
* ```ts
|
|
1210
|
+
* ```ts import.meta.vitest
|
|
1258
1211
|
* import { Effect, PubSub } from "effect"
|
|
1259
1212
|
*
|
|
1260
|
-
* const program = Effect.gen(function*() {
|
|
1213
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
1261
1214
|
* const pubsub = yield* PubSub.bounded<string>(10)
|
|
1262
1215
|
*
|
|
1263
|
-
* yield*
|
|
1264
|
-
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
1216
|
+
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
1265
1217
|
*
|
|
1266
|
-
*
|
|
1267
|
-
*
|
|
1218
|
+
* // Publish multiple messages
|
|
1219
|
+
* yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3", "msg4", "msg5"])
|
|
1268
1220
|
*
|
|
1269
|
-
*
|
|
1270
|
-
*
|
|
1271
|
-
* console.log("Up to 3:", upTo3) // ["msg1", "msg2", "msg3"]
|
|
1221
|
+
* // Take up to 3 messages
|
|
1222
|
+
* const upTo3 = yield* PubSub.takeUpTo(subscription, 3)
|
|
1272
1223
|
*
|
|
1273
|
-
*
|
|
1274
|
-
*
|
|
1275
|
-
* console.log("Up to 5:", upTo5) // ["msg4", "msg5"]
|
|
1224
|
+
* // Take up to 5 more (only 2 remaining)
|
|
1225
|
+
* const upTo5 = yield* PubSub.takeUpTo(subscription, 5)
|
|
1276
1226
|
*
|
|
1277
|
-
*
|
|
1278
|
-
*
|
|
1279
|
-
*
|
|
1280
|
-
*
|
|
1281
|
-
*
|
|
1227
|
+
* // No more messages available
|
|
1228
|
+
* const noMore = yield* PubSub.takeUpTo(subscription, 10)
|
|
1229
|
+
* return [upTo3, upTo5, noMore]
|
|
1230
|
+
* }))
|
|
1231
|
+
*
|
|
1232
|
+
* const actual = await Effect.runPromise(program)
|
|
1233
|
+
* actual // => [["msg1", "msg2", "msg3"], ["msg4", "msg5"], []]
|
|
1282
1234
|
* ```
|
|
1283
1235
|
*
|
|
1284
1236
|
* @category subscriptions
|
|
@@ -1290,31 +1242,30 @@ export declare const takeUpTo: {
|
|
|
1290
1242
|
*
|
|
1291
1243
|
* **Example** (Taking up to a maximum number of messages)
|
|
1292
1244
|
*
|
|
1293
|
-
* ```ts
|
|
1245
|
+
* ```ts import.meta.vitest
|
|
1294
1246
|
* import { Effect, PubSub } from "effect"
|
|
1295
1247
|
*
|
|
1296
|
-
* const program = Effect.gen(function*() {
|
|
1248
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
1297
1249
|
* const pubsub = yield* PubSub.bounded<string>(10)
|
|
1298
1250
|
*
|
|
1299
|
-
* yield*
|
|
1300
|
-
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
1251
|
+
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
1301
1252
|
*
|
|
1302
|
-
*
|
|
1303
|
-
*
|
|
1253
|
+
* // Publish multiple messages
|
|
1254
|
+
* yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3", "msg4", "msg5"])
|
|
1304
1255
|
*
|
|
1305
|
-
*
|
|
1306
|
-
*
|
|
1307
|
-
* console.log("Up to 3:", upTo3) // ["msg1", "msg2", "msg3"]
|
|
1256
|
+
* // Take up to 3 messages
|
|
1257
|
+
* const upTo3 = yield* PubSub.takeUpTo(subscription, 3)
|
|
1308
1258
|
*
|
|
1309
|
-
*
|
|
1310
|
-
*
|
|
1311
|
-
* console.log("Up to 5:", upTo5) // ["msg4", "msg5"]
|
|
1259
|
+
* // Take up to 5 more (only 2 remaining)
|
|
1260
|
+
* const upTo5 = yield* PubSub.takeUpTo(subscription, 5)
|
|
1312
1261
|
*
|
|
1313
|
-
*
|
|
1314
|
-
*
|
|
1315
|
-
*
|
|
1316
|
-
*
|
|
1317
|
-
*
|
|
1262
|
+
* // No more messages available
|
|
1263
|
+
* const noMore = yield* PubSub.takeUpTo(subscription, 10)
|
|
1264
|
+
* return [upTo3, upTo5, noMore]
|
|
1265
|
+
* }))
|
|
1266
|
+
*
|
|
1267
|
+
* const actual = await Effect.runPromise(program)
|
|
1268
|
+
* actual // => [["msg1", "msg2", "msg3"], ["msg4", "msg5"], []]
|
|
1318
1269
|
* ```
|
|
1319
1270
|
*
|
|
1320
1271
|
* @category subscriptions
|
|
@@ -1326,31 +1277,30 @@ export declare const takeUpTo: {
|
|
|
1326
1277
|
*
|
|
1327
1278
|
* **Example** (Taking up to a maximum number of messages)
|
|
1328
1279
|
*
|
|
1329
|
-
* ```ts
|
|
1280
|
+
* ```ts import.meta.vitest
|
|
1330
1281
|
* import { Effect, PubSub } from "effect"
|
|
1331
1282
|
*
|
|
1332
|
-
* const program = Effect.gen(function*() {
|
|
1283
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
1333
1284
|
* const pubsub = yield* PubSub.bounded<string>(10)
|
|
1334
1285
|
*
|
|
1335
|
-
* yield*
|
|
1336
|
-
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
1286
|
+
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
1337
1287
|
*
|
|
1338
|
-
*
|
|
1339
|
-
*
|
|
1288
|
+
* // Publish multiple messages
|
|
1289
|
+
* yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3", "msg4", "msg5"])
|
|
1340
1290
|
*
|
|
1341
|
-
*
|
|
1342
|
-
*
|
|
1343
|
-
* console.log("Up to 3:", upTo3) // ["msg1", "msg2", "msg3"]
|
|
1291
|
+
* // Take up to 3 messages
|
|
1292
|
+
* const upTo3 = yield* PubSub.takeUpTo(subscription, 3)
|
|
1344
1293
|
*
|
|
1345
|
-
*
|
|
1346
|
-
*
|
|
1347
|
-
* console.log("Up to 5:", upTo5) // ["msg4", "msg5"]
|
|
1294
|
+
* // Take up to 5 more (only 2 remaining)
|
|
1295
|
+
* const upTo5 = yield* PubSub.takeUpTo(subscription, 5)
|
|
1348
1296
|
*
|
|
1349
|
-
*
|
|
1350
|
-
*
|
|
1351
|
-
*
|
|
1352
|
-
*
|
|
1353
|
-
*
|
|
1297
|
+
* // No more messages available
|
|
1298
|
+
* const noMore = yield* PubSub.takeUpTo(subscription, 10)
|
|
1299
|
+
* return [upTo3, upTo5, noMore]
|
|
1300
|
+
* }))
|
|
1301
|
+
*
|
|
1302
|
+
* const actual = await Effect.runPromise(program)
|
|
1303
|
+
* actual // => [["msg1", "msg2", "msg3"], ["msg4", "msg5"], []]
|
|
1354
1304
|
* ```
|
|
1355
1305
|
*
|
|
1356
1306
|
* @category subscriptions
|
|
@@ -1364,28 +1314,26 @@ export declare const takeUpTo: {
|
|
|
1364
1314
|
*
|
|
1365
1315
|
* **Example** (Taking between a minimum and maximum)
|
|
1366
1316
|
*
|
|
1367
|
-
* ```ts
|
|
1317
|
+
* ```ts import.meta.vitest
|
|
1368
1318
|
* import { Effect, Fiber, PubSub } from "effect"
|
|
1369
1319
|
*
|
|
1370
|
-
* const program = Effect.gen(function*() {
|
|
1320
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
1371
1321
|
* const pubsub = yield* PubSub.bounded<string>(10)
|
|
1372
1322
|
*
|
|
1373
|
-
* yield*
|
|
1374
|
-
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
1323
|
+
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
1375
1324
|
*
|
|
1376
|
-
*
|
|
1377
|
-
*
|
|
1378
|
-
* PubSub.takeBetween(subscription, 2, 5)
|
|
1379
|
-
* )
|
|
1325
|
+
* // Start taking between 2 and 5 messages (will suspend)
|
|
1326
|
+
* const takeFiber = yield* Effect.forkChild(PubSub.takeBetween(subscription, 2, 5))
|
|
1380
1327
|
*
|
|
1381
|
-
*
|
|
1382
|
-
*
|
|
1328
|
+
* // Publish 3 messages
|
|
1329
|
+
* yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3"])
|
|
1383
1330
|
*
|
|
1384
|
-
*
|
|
1385
|
-
*
|
|
1386
|
-
*
|
|
1387
|
-
*
|
|
1388
|
-
*
|
|
1331
|
+
* // Now the take will complete with 3 messages
|
|
1332
|
+
* return yield* Fiber.join(takeFiber)
|
|
1333
|
+
* }))
|
|
1334
|
+
*
|
|
1335
|
+
* const actual = await Effect.runPromise(program)
|
|
1336
|
+
* actual // => ["msg1", "msg2", "msg3"]
|
|
1389
1337
|
* ```
|
|
1390
1338
|
*
|
|
1391
1339
|
* @category subscriptions
|
|
@@ -1398,28 +1346,26 @@ export declare const takeBetween: {
|
|
|
1398
1346
|
*
|
|
1399
1347
|
* **Example** (Taking between a minimum and maximum)
|
|
1400
1348
|
*
|
|
1401
|
-
* ```ts
|
|
1349
|
+
* ```ts import.meta.vitest
|
|
1402
1350
|
* import { Effect, Fiber, PubSub } from "effect"
|
|
1403
1351
|
*
|
|
1404
|
-
* const program = Effect.gen(function*() {
|
|
1352
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
1405
1353
|
* const pubsub = yield* PubSub.bounded<string>(10)
|
|
1406
1354
|
*
|
|
1407
|
-
* yield*
|
|
1408
|
-
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
1355
|
+
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
1409
1356
|
*
|
|
1410
|
-
*
|
|
1411
|
-
*
|
|
1412
|
-
* PubSub.takeBetween(subscription, 2, 5)
|
|
1413
|
-
* )
|
|
1357
|
+
* // Start taking between 2 and 5 messages (will suspend)
|
|
1358
|
+
* const takeFiber = yield* Effect.forkChild(PubSub.takeBetween(subscription, 2, 5))
|
|
1414
1359
|
*
|
|
1415
|
-
*
|
|
1416
|
-
*
|
|
1360
|
+
* // Publish 3 messages
|
|
1361
|
+
* yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3"])
|
|
1417
1362
|
*
|
|
1418
|
-
*
|
|
1419
|
-
*
|
|
1420
|
-
*
|
|
1421
|
-
*
|
|
1422
|
-
*
|
|
1363
|
+
* // Now the take will complete with 3 messages
|
|
1364
|
+
* return yield* Fiber.join(takeFiber)
|
|
1365
|
+
* }))
|
|
1366
|
+
*
|
|
1367
|
+
* const actual = await Effect.runPromise(program)
|
|
1368
|
+
* actual // => ["msg1", "msg2", "msg3"]
|
|
1423
1369
|
* ```
|
|
1424
1370
|
*
|
|
1425
1371
|
* @category subscriptions
|
|
@@ -1432,28 +1378,26 @@ export declare const takeBetween: {
|
|
|
1432
1378
|
*
|
|
1433
1379
|
* **Example** (Taking between a minimum and maximum)
|
|
1434
1380
|
*
|
|
1435
|
-
* ```ts
|
|
1381
|
+
* ```ts import.meta.vitest
|
|
1436
1382
|
* import { Effect, Fiber, PubSub } from "effect"
|
|
1437
1383
|
*
|
|
1438
|
-
* const program = Effect.gen(function*() {
|
|
1384
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
1439
1385
|
* const pubsub = yield* PubSub.bounded<string>(10)
|
|
1440
1386
|
*
|
|
1441
|
-
* yield*
|
|
1442
|
-
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
1387
|
+
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
1443
1388
|
*
|
|
1444
|
-
*
|
|
1445
|
-
*
|
|
1446
|
-
* PubSub.takeBetween(subscription, 2, 5)
|
|
1447
|
-
* )
|
|
1389
|
+
* // Start taking between 2 and 5 messages (will suspend)
|
|
1390
|
+
* const takeFiber = yield* Effect.forkChild(PubSub.takeBetween(subscription, 2, 5))
|
|
1448
1391
|
*
|
|
1449
|
-
*
|
|
1450
|
-
*
|
|
1392
|
+
* // Publish 3 messages
|
|
1393
|
+
* yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3"])
|
|
1451
1394
|
*
|
|
1452
|
-
*
|
|
1453
|
-
*
|
|
1454
|
-
*
|
|
1455
|
-
*
|
|
1456
|
-
*
|
|
1395
|
+
* // Now the take will complete with 3 messages
|
|
1396
|
+
* return yield* Fiber.join(takeFiber)
|
|
1397
|
+
* }))
|
|
1398
|
+
*
|
|
1399
|
+
* const actual = await Effect.runPromise(program)
|
|
1400
|
+
* actual // => ["msg1", "msg2", "msg3"]
|
|
1457
1401
|
* ```
|
|
1458
1402
|
*
|
|
1459
1403
|
* @category subscriptions
|
|
@@ -1477,29 +1421,29 @@ export declare const takeBetween: {
|
|
|
1477
1421
|
*
|
|
1478
1422
|
* **Example** (Checking remaining messages)
|
|
1479
1423
|
*
|
|
1480
|
-
* ```ts
|
|
1424
|
+
* ```ts import.meta.vitest
|
|
1481
1425
|
* import { Effect, PubSub } from "effect"
|
|
1482
1426
|
*
|
|
1483
|
-
* const program = Effect.gen(function*() {
|
|
1427
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
1484
1428
|
* const pubsub = yield* PubSub.bounded<string>(10)
|
|
1485
1429
|
*
|
|
1486
|
-
* yield*
|
|
1487
|
-
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
1430
|
+
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
1488
1431
|
*
|
|
1489
|
-
*
|
|
1490
|
-
*
|
|
1432
|
+
* // Publish some messages
|
|
1433
|
+
* yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3"])
|
|
1491
1434
|
*
|
|
1492
|
-
*
|
|
1493
|
-
*
|
|
1494
|
-
* console.log("Messages available:", count) // 3
|
|
1435
|
+
* // Check how many messages are available
|
|
1436
|
+
* const count = yield* PubSub.remaining(subscription)
|
|
1495
1437
|
*
|
|
1496
|
-
*
|
|
1497
|
-
*
|
|
1438
|
+
* // Take one message
|
|
1439
|
+
* const message = yield* PubSub.take(subscription)
|
|
1498
1440
|
*
|
|
1499
|
-
*
|
|
1500
|
-
*
|
|
1501
|
-
*
|
|
1502
|
-
*
|
|
1441
|
+
* const remaining = yield* PubSub.remaining(subscription)
|
|
1442
|
+
* return { count, message, remaining }
|
|
1443
|
+
* }))
|
|
1444
|
+
*
|
|
1445
|
+
* const actual = await Effect.runPromise(program)
|
|
1446
|
+
* actual // => { count: 3, message: "msg1", remaining: 2 }
|
|
1503
1447
|
* ```
|
|
1504
1448
|
*
|
|
1505
1449
|
* @see {@link remainingUnsafe} for a synchronous check that reports shutdown as `Option.none()`
|
|
@@ -1519,23 +1463,17 @@ export declare const remaining: <A>(self: Subscription<A>) => Effect.Effect<numb
|
|
|
1519
1463
|
*
|
|
1520
1464
|
* **Example** (Checking remaining messages synchronously)
|
|
1521
1465
|
*
|
|
1522
|
-
* ```ts
|
|
1523
|
-
* import { PubSub } from "effect"
|
|
1466
|
+
* ```ts import.meta.vitest
|
|
1467
|
+
* import { Effect, Option, PubSub } from "effect"
|
|
1524
1468
|
*
|
|
1525
|
-
*
|
|
1526
|
-
*
|
|
1527
|
-
*
|
|
1528
|
-
*
|
|
1529
|
-
*
|
|
1530
|
-
* console.log("Messages available:", remainingOption.value)
|
|
1531
|
-
* } else {
|
|
1532
|
-
* console.log("Subscription is shutdown")
|
|
1533
|
-
* }
|
|
1469
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
1470
|
+
* const pubsub = yield* PubSub.bounded<string>(2)
|
|
1471
|
+
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
1472
|
+
* return PubSub.remainingUnsafe(subscription)
|
|
1473
|
+
* }))
|
|
1534
1474
|
*
|
|
1535
|
-
*
|
|
1536
|
-
*
|
|
1537
|
-
* // Process messages in batch
|
|
1538
|
-
* }
|
|
1475
|
+
* const actual = await Effect.runPromise(program)
|
|
1476
|
+
* actual // => Option.some(0)
|
|
1539
1477
|
* ```
|
|
1540
1478
|
*
|
|
1541
1479
|
* @see {@link remaining} for the effectful variant that interrupts on shutdown
|
|
@@ -1598,34 +1536,30 @@ export declare class BackPressureStrategy<in out A> implements PubSub.Strategy<A
|
|
|
1598
1536
|
*
|
|
1599
1537
|
* **Example** (Applying a dropping strategy)
|
|
1600
1538
|
*
|
|
1601
|
-
* ```ts
|
|
1539
|
+
* ```ts import.meta.vitest
|
|
1602
1540
|
* import { Effect, PubSub } from "effect"
|
|
1603
1541
|
*
|
|
1604
|
-
* const program = Effect.gen(function*() {
|
|
1605
|
-
* //
|
|
1606
|
-
* const pubsub = yield* PubSub.
|
|
1607
|
-
*
|
|
1608
|
-
* // Or explicitly create with dropping strategy
|
|
1609
|
-
* const customPubsub = yield* PubSub.make<string>({
|
|
1542
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
1543
|
+
* // Explicitly create a PubSub with a dropping strategy
|
|
1544
|
+
* const pubsub = yield* PubSub.make<string>({
|
|
1610
1545
|
* atomicPubSub: () => PubSub.makeAtomicBounded(2),
|
|
1611
1546
|
* strategy: () => new PubSub.DroppingStrategy()
|
|
1612
1547
|
* })
|
|
1613
1548
|
*
|
|
1614
|
-
* yield*
|
|
1615
|
-
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
1549
|
+
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
1616
1550
|
*
|
|
1617
|
-
*
|
|
1618
|
-
*
|
|
1619
|
-
*
|
|
1620
|
-
*
|
|
1551
|
+
* // Fill the PubSub
|
|
1552
|
+
* const pub1 = yield* PubSub.publish(pubsub, "msg1") // true
|
|
1553
|
+
* const pub2 = yield* PubSub.publish(pubsub, "msg2") // true
|
|
1554
|
+
* const pub3 = yield* PubSub.publish(pubsub, "msg3") // false (dropped)
|
|
1621
1555
|
*
|
|
1622
|
-
*
|
|
1556
|
+
* // Subscribers will only see the first two messages
|
|
1557
|
+
* const messages = yield* PubSub.takeAll(subscription)
|
|
1558
|
+
* return { published: [pub1, pub2, pub3], messages }
|
|
1559
|
+
* }))
|
|
1623
1560
|
*
|
|
1624
|
-
*
|
|
1625
|
-
*
|
|
1626
|
-
* console.log("Received messages:", messages) // ["msg1", "msg2"]
|
|
1627
|
-
* }))
|
|
1628
|
-
* })
|
|
1561
|
+
* const actual = await Effect.runPromise(program)
|
|
1562
|
+
* actual // => { published: [true, true, false], messages: ["msg1", "msg2"] }
|
|
1629
1563
|
* ```
|
|
1630
1564
|
*
|
|
1631
1565
|
* @category models
|
|
@@ -1657,33 +1591,30 @@ export declare class DroppingStrategy<in out A> implements PubSub.Strategy<A> {
|
|
|
1657
1591
|
*
|
|
1658
1592
|
* **Example** (Applying a sliding strategy)
|
|
1659
1593
|
*
|
|
1660
|
-
* ```ts
|
|
1594
|
+
* ```ts import.meta.vitest
|
|
1661
1595
|
* import { Effect, PubSub } from "effect"
|
|
1662
1596
|
*
|
|
1663
|
-
* const program = Effect.gen(function*() {
|
|
1664
|
-
* //
|
|
1665
|
-
* const pubsub = yield* PubSub.
|
|
1666
|
-
*
|
|
1667
|
-
* // Or explicitly create with sliding strategy
|
|
1668
|
-
* const customPubsub = yield* PubSub.make<string>({
|
|
1597
|
+
* const program = Effect.scoped(Effect.gen(function*() {
|
|
1598
|
+
* // Explicitly create a PubSub with a sliding strategy
|
|
1599
|
+
* const pubsub = yield* PubSub.make<string>({
|
|
1669
1600
|
* atomicPubSub: () => PubSub.makeAtomicBounded(2),
|
|
1670
1601
|
* strategy: () => new PubSub.SlidingStrategy()
|
|
1671
1602
|
* })
|
|
1672
1603
|
*
|
|
1673
|
-
* yield*
|
|
1674
|
-
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
1604
|
+
* const subscription = yield* PubSub.subscribe(pubsub)
|
|
1675
1605
|
*
|
|
1676
|
-
*
|
|
1677
|
-
*
|
|
1678
|
-
*
|
|
1679
|
-
*
|
|
1680
|
-
*
|
|
1606
|
+
* // Publish messages that exceed capacity
|
|
1607
|
+
* yield* PubSub.publish(pubsub, "msg1") // stored
|
|
1608
|
+
* yield* PubSub.publish(pubsub, "msg2") // stored
|
|
1609
|
+
* yield* PubSub.publish(pubsub, "msg3") // "msg1" evicted, "msg3" stored
|
|
1610
|
+
* yield* PubSub.publish(pubsub, "msg4") // "msg2" evicted, "msg4" stored
|
|
1681
1611
|
*
|
|
1682
|
-
*
|
|
1683
|
-
*
|
|
1684
|
-
*
|
|
1685
|
-
*
|
|
1686
|
-
*
|
|
1612
|
+
* // Subscribers will see the most recent messages
|
|
1613
|
+
* return yield* PubSub.takeAll(subscription)
|
|
1614
|
+
* }))
|
|
1615
|
+
*
|
|
1616
|
+
* const actual = await Effect.runPromise(program)
|
|
1617
|
+
* actual // => ["msg3", "msg4"]
|
|
1687
1618
|
* ```
|
|
1688
1619
|
*
|
|
1689
1620
|
* @category models
|