effect 4.0.0-beta.5 → 4.0.0-beta.51
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 +213 -385
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +149 -102
- package/dist/Array.js.map +1 -1
- package/dist/BigDecimal.d.ts +82 -45
- package/dist/BigDecimal.d.ts.map +1 -1
- package/dist/BigDecimal.js +105 -52
- package/dist/BigDecimal.js.map +1 -1
- package/dist/BigInt.d.ts +39 -32
- package/dist/BigInt.d.ts.map +1 -1
- package/dist/BigInt.js +36 -33
- package/dist/BigInt.js.map +1 -1
- package/dist/Brand.d.ts +3 -5
- package/dist/Brand.d.ts.map +1 -1
- package/dist/Brand.js +1 -1
- package/dist/Brand.js.map +1 -1
- package/dist/Cache.d.ts +14 -45
- package/dist/Cache.d.ts.map +1 -1
- package/dist/Cache.js +21 -47
- package/dist/Cache.js.map +1 -1
- package/dist/Cause.d.ts +54 -23
- package/dist/Cause.d.ts.map +1 -1
- package/dist/Cause.js +108 -10
- package/dist/Cause.js.map +1 -1
- package/dist/Channel.d.ts +166 -48
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +182 -91
- package/dist/Channel.js.map +1 -1
- package/dist/Chunk.d.ts +112 -304
- package/dist/Chunk.d.ts.map +1 -1
- package/dist/Chunk.js +56 -88
- package/dist/Chunk.js.map +1 -1
- package/dist/Clock.d.ts +2 -2
- package/dist/Clock.d.ts.map +1 -1
- package/dist/Clock.js.map +1 -1
- package/dist/Combiner.d.ts +280 -13
- package/dist/Combiner.d.ts.map +1 -1
- package/dist/Combiner.js +198 -7
- package/dist/Combiner.js.map +1 -1
- package/dist/Config.d.ts +171 -11
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js +69 -11
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.d.ts +6 -6
- package/dist/ConfigProvider.d.ts.map +1 -1
- package/dist/ConfigProvider.js +5 -5
- package/dist/ConfigProvider.js.map +1 -1
- package/dist/Console.d.ts +2 -2
- package/dist/Console.d.ts.map +1 -1
- package/dist/Console.js.map +1 -1
- package/dist/Context.d.ts +1150 -0
- package/dist/Context.d.ts.map +1 -0
- package/dist/{ServiceMap.js → Context.js} +181 -165
- package/dist/Context.js.map +1 -0
- package/dist/Cron.d.ts +11 -7
- package/dist/Cron.d.ts.map +1 -1
- package/dist/Cron.js +120 -63
- package/dist/Cron.js.map +1 -1
- package/dist/Data.d.ts +535 -366
- package/dist/Data.d.ts.map +1 -1
- package/dist/Data.js +132 -79
- package/dist/Data.js.map +1 -1
- package/dist/DateTime.d.ts +74 -255
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/DateTime.js +17 -62
- package/dist/DateTime.js.map +1 -1
- package/dist/Deferred.d.ts +12 -5
- package/dist/Deferred.d.ts.map +1 -1
- package/dist/Deferred.js +13 -5
- package/dist/Deferred.js.map +1 -1
- package/dist/Duration.d.ts +62 -32
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +109 -79
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +1377 -1147
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +465 -446
- package/dist/Effect.js.map +1 -1
- package/dist/Encoding.d.ts +194 -0
- package/dist/Encoding.d.ts.map +1 -0
- package/dist/Encoding.js +352 -0
- package/dist/Encoding.js.map +1 -0
- package/dist/Equal.d.ts +276 -109
- package/dist/Equal.d.ts.map +1 -1
- package/dist/Equal.js +140 -48
- package/dist/Equal.js.map +1 -1
- package/dist/Equivalence.d.ts +60 -3
- package/dist/Equivalence.d.ts.map +1 -1
- package/dist/Equivalence.js +70 -13
- package/dist/Equivalence.js.map +1 -1
- package/dist/ErrorReporter.d.ts +374 -0
- package/dist/ErrorReporter.d.ts.map +1 -0
- package/dist/ErrorReporter.js +245 -0
- package/dist/ErrorReporter.js.map +1 -0
- package/dist/ExecutionPlan.d.ts +6 -6
- package/dist/ExecutionPlan.d.ts.map +1 -1
- package/dist/ExecutionPlan.js +4 -4
- package/dist/ExecutionPlan.js.map +1 -1
- package/dist/Exit.d.ts +24 -12
- package/dist/Exit.d.ts.map +1 -1
- package/dist/Exit.js +8 -4
- package/dist/Exit.js.map +1 -1
- package/dist/Fiber.d.ts +10 -8
- package/dist/Fiber.d.ts.map +1 -1
- package/dist/Fiber.js.map +1 -1
- package/dist/FiberHandle.d.ts +11 -10
- package/dist/FiberHandle.d.ts.map +1 -1
- package/dist/FiberHandle.js +12 -11
- package/dist/FiberHandle.js.map +1 -1
- package/dist/FiberMap.d.ts +22 -21
- package/dist/FiberMap.d.ts.map +1 -1
- package/dist/FiberMap.js +10 -10
- package/dist/FiberMap.js.map +1 -1
- package/dist/FiberSet.d.ts +2 -2
- package/dist/FiberSet.d.ts.map +1 -1
- package/dist/FiberSet.js +4 -4
- package/dist/FiberSet.js.map +1 -1
- package/dist/FileSystem.d.ts +20 -19
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js +17 -13
- package/dist/FileSystem.js.map +1 -1
- package/dist/Filter.d.ts +4 -37
- package/dist/Filter.d.ts.map +1 -1
- package/dist/Filter.js +0 -13
- package/dist/Filter.js.map +1 -1
- package/dist/Formatter.d.ts +131 -47
- package/dist/Formatter.d.ts.map +1 -1
- package/dist/Formatter.js +229 -51
- package/dist/Formatter.js.map +1 -1
- package/dist/Function.d.ts +1 -9
- package/dist/Function.d.ts.map +1 -1
- package/dist/Function.js +2 -10
- package/dist/Function.js.map +1 -1
- package/dist/Graph.d.ts +65 -65
- package/dist/Graph.d.ts.map +1 -1
- package/dist/Graph.js +60 -62
- package/dist/Graph.js.map +1 -1
- package/dist/Hash.js +1 -1
- package/dist/Hash.js.map +1 -1
- package/dist/HashMap.d.ts +26 -19
- package/dist/HashMap.d.ts.map +1 -1
- package/dist/HashMap.js +7 -5
- package/dist/HashMap.js.map +1 -1
- package/dist/Iterable.d.ts +50 -50
- package/dist/Iterable.d.ts.map +1 -1
- package/dist/Iterable.js +106 -34
- package/dist/Iterable.js.map +1 -1
- package/dist/JsonSchema.d.ts +299 -10
- package/dist/JsonSchema.d.ts.map +1 -1
- package/dist/JsonSchema.js +323 -4
- package/dist/JsonSchema.js.map +1 -1
- package/dist/Latch.d.ts +175 -0
- package/dist/Latch.d.ts.map +1 -0
- package/dist/Latch.js +130 -0
- package/dist/Latch.js.map +1 -0
- package/dist/Layer.d.ts +599 -379
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js +249 -180
- package/dist/Layer.js.map +1 -1
- package/dist/LayerMap.d.ts +27 -26
- package/dist/LayerMap.d.ts.map +1 -1
- package/dist/LayerMap.js +21 -18
- package/dist/LayerMap.js.map +1 -1
- package/dist/LogLevel.d.ts +32 -0
- package/dist/LogLevel.d.ts.map +1 -1
- package/dist/LogLevel.js +28 -100
- package/dist/LogLevel.js.map +1 -1
- package/dist/Logger.d.ts +31 -97
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js +2 -3
- package/dist/Logger.js.map +1 -1
- package/dist/ManagedRuntime.d.ts +8 -8
- package/dist/ManagedRuntime.d.ts.map +1 -1
- package/dist/ManagedRuntime.js +34 -25
- package/dist/ManagedRuntime.js.map +1 -1
- package/dist/Metric.d.ts +23 -25
- package/dist/Metric.d.ts.map +1 -1
- package/dist/Metric.js +24 -26
- package/dist/Metric.js.map +1 -1
- package/dist/MutableHashMap.d.ts +7 -0
- package/dist/MutableHashMap.d.ts.map +1 -1
- package/dist/MutableHashMap.js +8 -0
- package/dist/MutableHashMap.js.map +1 -1
- package/dist/MutableHashSet.d.ts +7 -0
- package/dist/MutableHashSet.d.ts.map +1 -1
- package/dist/MutableHashSet.js +8 -0
- package/dist/MutableHashSet.js.map +1 -1
- package/dist/MutableList.d.ts.map +1 -1
- package/dist/MutableList.js +3 -0
- package/dist/MutableList.js.map +1 -1
- package/dist/Newtype.d.ts +291 -0
- package/dist/Newtype.d.ts.map +1 -0
- package/dist/Newtype.js +161 -0
- package/dist/Newtype.js.map +1 -0
- package/dist/Number.d.ts +74 -18
- package/dist/Number.d.ts.map +1 -1
- package/dist/Number.js +46 -18
- package/dist/Number.js.map +1 -1
- package/dist/Optic.d.ts +947 -18
- package/dist/Optic.d.ts.map +1 -1
- package/dist/Optic.js +454 -5
- package/dist/Optic.js.map +1 -1
- package/dist/Option.d.ts +25 -16
- package/dist/Option.d.ts.map +1 -1
- package/dist/Option.js +15 -9
- package/dist/Option.js.map +1 -1
- package/dist/Order.d.ts +6 -1
- package/dist/Order.d.ts.map +1 -1
- package/dist/Order.js +19 -14
- package/dist/Order.js.map +1 -1
- package/dist/PartitionedSemaphore.d.ts +146 -15
- package/dist/PartitionedSemaphore.d.ts.map +1 -1
- package/dist/PartitionedSemaphore.js +174 -61
- package/dist/PartitionedSemaphore.js.map +1 -1
- package/dist/Path.d.ts +2 -2
- package/dist/Path.d.ts.map +1 -1
- package/dist/Path.js +2 -2
- package/dist/Path.js.map +1 -1
- package/dist/Pipeable.d.ts +17 -0
- package/dist/Pipeable.d.ts.map +1 -1
- package/dist/Pipeable.js +19 -1
- package/dist/Pipeable.js.map +1 -1
- package/dist/PlatformError.d.ts +2 -2
- package/dist/Pool.d.ts +6 -4
- package/dist/Pool.d.ts.map +1 -1
- package/dist/Pool.js +11 -9
- package/dist/Pool.js.map +1 -1
- package/dist/PubSub.d.ts +8 -6
- package/dist/PubSub.d.ts.map +1 -1
- package/dist/PubSub.js +18 -10
- package/dist/PubSub.js.map +1 -1
- package/dist/Pull.d.ts.map +1 -1
- package/dist/Pull.js +1 -1
- package/dist/Pull.js.map +1 -1
- package/dist/Queue.d.ts +9 -6
- package/dist/Queue.d.ts.map +1 -1
- package/dist/Queue.js +7 -5
- package/dist/Queue.js.map +1 -1
- package/dist/Random.d.ts +36 -2
- package/dist/Random.d.ts.map +1 -1
- package/dist/Random.js +46 -35
- package/dist/Random.js.map +1 -1
- package/dist/RcMap.d.ts +4 -4
- package/dist/RcMap.d.ts.map +1 -1
- package/dist/RcMap.js +13 -13
- package/dist/RcMap.js.map +1 -1
- package/dist/RcRef.d.ts +1 -1
- package/dist/RcRef.d.ts.map +1 -1
- package/dist/Record.d.ts +63 -160
- package/dist/Record.d.ts.map +1 -1
- package/dist/Record.js +37 -56
- package/dist/Record.js.map +1 -1
- package/dist/Redactable.d.ts +139 -62
- package/dist/Redactable.d.ts.map +1 -1
- package/dist/Redactable.js +59 -55
- package/dist/Redactable.js.map +1 -1
- package/dist/Reducer.d.ts +166 -7
- package/dist/Reducer.d.ts.map +1 -1
- package/dist/Reducer.js +135 -1
- package/dist/Reducer.js.map +1 -1
- package/dist/References.d.ts +257 -229
- package/dist/References.d.ts.map +1 -1
- package/dist/References.js +240 -259
- package/dist/References.js.map +1 -1
- package/dist/Request.d.ts +6 -6
- package/dist/Request.d.ts.map +1 -1
- package/dist/Request.js +2 -1
- package/dist/Request.js.map +1 -1
- package/dist/RequestResolver.d.ts +25 -45
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +15 -36
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Resource.d.ts +0 -3
- package/dist/Resource.d.ts.map +1 -1
- package/dist/Resource.js +5 -4
- package/dist/Resource.js.map +1 -1
- package/dist/Result.d.ts +1 -1
- package/dist/Result.d.ts.map +1 -1
- package/dist/Result.js +1 -2
- package/dist/Result.js.map +1 -1
- package/dist/Runtime.d.ts +66 -0
- package/dist/Runtime.d.ts.map +1 -1
- package/dist/Runtime.js +79 -6
- package/dist/Runtime.js.map +1 -1
- package/dist/Schedule.d.ts +176 -293
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +162 -136
- package/dist/Schedule.js.map +1 -1
- package/dist/Scheduler.d.ts +36 -125
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js +37 -126
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +3326 -383
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +2315 -283
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +13 -2
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +340 -257
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaGetter.d.ts +57 -15
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +85 -25
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaIssue.d.ts.map +1 -1
- package/dist/SchemaIssue.js +29 -11
- package/dist/SchemaIssue.js.map +1 -1
- package/dist/SchemaParser.d.ts +44 -54
- package/dist/SchemaParser.d.ts.map +1 -1
- package/dist/SchemaParser.js +69 -4
- package/dist/SchemaParser.js.map +1 -1
- package/dist/SchemaRepresentation.d.ts +46 -45
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +65 -38
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +252 -3
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +319 -13
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/Scope.d.ts +2 -2
- package/dist/Scope.d.ts.map +1 -1
- package/dist/Scope.js.map +1 -1
- package/dist/ScopedCache.d.ts +2 -2
- package/dist/ScopedCache.d.ts.map +1 -1
- package/dist/ScopedCache.js +5 -5
- package/dist/ScopedCache.js.map +1 -1
- package/dist/Semaphore.d.ts +307 -0
- package/dist/Semaphore.d.ts.map +1 -0
- package/dist/Semaphore.js +220 -0
- package/dist/Semaphore.js.map +1 -0
- package/dist/Sink.d.ts +22 -19
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js +54 -7
- package/dist/Sink.js.map +1 -1
- package/dist/Stdio.d.ts +18 -6
- package/dist/Stdio.d.ts.map +1 -1
- package/dist/Stdio.js +20 -2
- package/dist/Stdio.js.map +1 -1
- package/dist/Stream.d.ts +465 -542
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +321 -144
- package/dist/Stream.js.map +1 -1
- package/dist/String.d.ts +114 -47
- package/dist/String.d.ts.map +1 -1
- package/dist/String.js +29 -47
- package/dist/String.js.map +1 -1
- package/dist/Struct.d.ts +23 -7
- package/dist/Struct.d.ts.map +1 -1
- package/dist/Struct.js +22 -0
- package/dist/Struct.js.map +1 -1
- package/dist/SubscriptionRef.d.ts +3 -3
- package/dist/SubscriptionRef.d.ts.map +1 -1
- package/dist/SubscriptionRef.js +85 -117
- package/dist/SubscriptionRef.js.map +1 -1
- package/dist/SynchronizedRef.d.ts +2 -1
- package/dist/SynchronizedRef.d.ts.map +1 -1
- package/dist/SynchronizedRef.js +2 -1
- package/dist/SynchronizedRef.js.map +1 -1
- package/dist/Terminal.d.ts +5 -4
- package/dist/Terminal.d.ts.map +1 -1
- package/dist/Terminal.js +2 -2
- package/dist/Terminal.js.map +1 -1
- package/dist/Tracer.d.ts +21 -20
- package/dist/Tracer.d.ts.map +1 -1
- package/dist/Tracer.js +13 -9
- package/dist/Tracer.js.map +1 -1
- package/dist/Trie.d.ts +44 -31
- package/dist/Trie.d.ts.map +1 -1
- package/dist/Trie.js +13 -9
- package/dist/Trie.js.map +1 -1
- package/dist/TxChunk.d.ts +4 -4
- package/dist/TxChunk.d.ts.map +1 -1
- package/dist/TxChunk.js +4 -4
- package/dist/TxChunk.js.map +1 -1
- package/dist/TxDeferred.d.ts +328 -0
- package/dist/TxDeferred.d.ts.map +1 -0
- package/dist/TxDeferred.js +197 -0
- package/dist/TxDeferred.js.map +1 -0
- package/dist/TxHashMap.d.ts +105 -86
- package/dist/TxHashMap.d.ts.map +1 -1
- package/dist/TxHashMap.js +51 -44
- package/dist/TxHashMap.js.map +1 -1
- package/dist/TxHashSet.d.ts +2 -2
- package/dist/TxHashSet.d.ts.map +1 -1
- package/dist/TxHashSet.js +16 -15
- package/dist/TxHashSet.js.map +1 -1
- package/dist/TxPriorityQueue.d.ts +609 -0
- package/dist/TxPriorityQueue.d.ts.map +1 -0
- package/dist/TxPriorityQueue.js +416 -0
- package/dist/TxPriorityQueue.js.map +1 -0
- package/dist/TxPubSub.d.ts +585 -0
- package/dist/TxPubSub.d.ts.map +1 -0
- package/dist/TxPubSub.js +521 -0
- package/dist/TxPubSub.js.map +1 -0
- package/dist/TxQueue.d.ts +1 -1
- package/dist/TxQueue.d.ts.map +1 -1
- package/dist/TxQueue.js +42 -57
- package/dist/TxQueue.js.map +1 -1
- package/dist/TxReentrantLock.d.ts +500 -0
- package/dist/TxReentrantLock.d.ts.map +1 -0
- package/dist/TxReentrantLock.js +481 -0
- package/dist/TxReentrantLock.js.map +1 -0
- package/dist/TxRef.d.ts +14 -20
- package/dist/TxRef.d.ts.map +1 -1
- package/dist/TxRef.js +8 -10
- package/dist/TxRef.js.map +1 -1
- package/dist/TxSemaphore.d.ts +162 -2
- package/dist/TxSemaphore.d.ts.map +1 -1
- package/dist/TxSemaphore.js +25 -10
- package/dist/TxSemaphore.js.map +1 -1
- package/dist/TxSubscriptionRef.d.ts +508 -0
- package/dist/TxSubscriptionRef.d.ts.map +1 -0
- package/dist/TxSubscriptionRef.js +293 -0
- package/dist/TxSubscriptionRef.js.map +1 -0
- package/dist/Types.d.ts +83 -17
- package/dist/Types.d.ts.map +1 -1
- package/dist/Unify.d.ts +8 -2
- package/dist/Unify.d.ts.map +1 -1
- package/dist/Unify.js.map +1 -1
- package/dist/Utils.d.ts +137 -65
- package/dist/Utils.d.ts.map +1 -1
- package/dist/Utils.js +38 -66
- package/dist/Utils.js.map +1 -1
- package/dist/index.d.ts +888 -71
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +888 -71
- package/dist/index.js.map +1 -1
- package/dist/internal/core.js +11 -3
- package/dist/internal/core.js.map +1 -1
- package/dist/internal/dateTime.js +77 -71
- package/dist/internal/dateTime.js.map +1 -1
- package/dist/internal/effect.js +485 -325
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/hashMap.js +7 -5
- package/dist/internal/hashMap.js.map +1 -1
- package/dist/internal/layer.js +3 -3
- package/dist/internal/layer.js.map +1 -1
- package/dist/internal/option.js +6 -0
- package/dist/internal/option.js.map +1 -1
- package/dist/internal/random.d.ts +2 -0
- package/dist/internal/random.d.ts.map +1 -0
- package/dist/internal/random.js +13 -0
- package/dist/internal/random.js.map +1 -0
- package/dist/internal/rcRef.js +11 -10
- package/dist/internal/rcRef.js.map +1 -1
- package/dist/internal/references.d.ts +2 -0
- package/dist/internal/references.d.ts.map +1 -0
- package/dist/internal/references.js +51 -0
- package/dist/internal/references.js.map +1 -0
- package/dist/internal/request.js +6 -6
- package/dist/internal/request.js.map +1 -1
- package/dist/internal/schedule.js +1 -1
- package/dist/internal/schedule.js.map +1 -1
- package/dist/internal/schema/annotations.js +2 -0
- package/dist/internal/schema/annotations.js.map +1 -1
- package/dist/internal/schema/representation.js +86 -107
- package/dist/internal/schema/representation.js.map +1 -1
- package/dist/internal/schema/schema.d.ts +10 -1
- package/dist/internal/schema/schema.d.ts.map +1 -1
- package/dist/internal/schema/schema.js +22 -1
- package/dist/internal/schema/schema.js.map +1 -1
- package/dist/internal/schema/to-codec.js +7 -10
- package/dist/internal/schema/to-codec.js.map +1 -1
- package/dist/internal/trie.js +8 -7
- package/dist/internal/trie.js.map +1 -1
- package/dist/testing/TestClock.d.ts +8 -7
- package/dist/testing/TestClock.d.ts.map +1 -1
- package/dist/testing/TestClock.js +6 -4
- package/dist/testing/TestClock.js.map +1 -1
- package/dist/testing/TestSchema.d.ts +267 -33
- package/dist/testing/TestSchema.d.ts.map +1 -1
- package/dist/testing/TestSchema.js +296 -23
- package/dist/testing/TestSchema.js.map +1 -1
- package/dist/testing/index.d.ts +64 -1
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +64 -1
- package/dist/testing/index.js.map +1 -1
- package/dist/unstable/ai/AiError.d.ts +155 -73
- package/dist/unstable/ai/AiError.d.ts.map +1 -1
- package/dist/unstable/ai/AiError.js +29 -23
- package/dist/unstable/ai/AiError.js.map +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.d.ts.map +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.js +9 -2
- package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
- package/dist/unstable/ai/Chat.d.ts +39 -11
- package/dist/unstable/ai/Chat.d.ts.map +1 -1
- package/dist/unstable/ai/Chat.js +41 -47
- package/dist/unstable/ai/Chat.js.map +1 -1
- package/dist/unstable/ai/EmbeddingModel.d.ts +130 -0
- package/dist/unstable/ai/EmbeddingModel.d.ts.map +1 -0
- package/dist/unstable/ai/EmbeddingModel.js +127 -0
- package/dist/unstable/ai/EmbeddingModel.js.map +1 -0
- package/dist/unstable/ai/IdGenerator.d.ts +2 -2
- package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
- package/dist/unstable/ai/IdGenerator.js +2 -2
- package/dist/unstable/ai/IdGenerator.js.map +1 -1
- package/dist/unstable/ai/LanguageModel.d.ts +119 -49
- package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
- package/dist/unstable/ai/LanguageModel.js +260 -61
- package/dist/unstable/ai/LanguageModel.js.map +1 -1
- package/dist/unstable/ai/McpSchema.d.ts +236 -141
- package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
- package/dist/unstable/ai/McpSchema.js +71 -19
- package/dist/unstable/ai/McpSchema.js.map +1 -1
- package/dist/unstable/ai/McpServer.d.ts +68 -15
- package/dist/unstable/ai/McpServer.d.ts.map +1 -1
- package/dist/unstable/ai/McpServer.js +218 -73
- package/dist/unstable/ai/McpServer.js.map +1 -1
- package/dist/unstable/ai/Model.d.ts +27 -9
- package/dist/unstable/ai/Model.d.ts.map +1 -1
- package/dist/unstable/ai/Model.js +25 -9
- package/dist/unstable/ai/Model.js.map +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.d.ts.map +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.js +9 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
- package/dist/unstable/ai/Prompt.d.ts +20 -20
- package/dist/unstable/ai/Prompt.d.ts.map +1 -1
- package/dist/unstable/ai/Prompt.js +6 -9
- package/dist/unstable/ai/Prompt.js.map +1 -1
- package/dist/unstable/ai/Response.d.ts +27 -27
- package/dist/unstable/ai/Response.d.ts.map +1 -1
- package/dist/unstable/ai/Response.js +7 -8
- package/dist/unstable/ai/Response.js.map +1 -1
- package/dist/unstable/ai/ResponseIdTracker.d.ts +38 -0
- package/dist/unstable/ai/ResponseIdTracker.d.ts.map +1 -0
- package/dist/unstable/ai/ResponseIdTracker.js +68 -0
- package/dist/unstable/ai/ResponseIdTracker.js.map +1 -0
- package/dist/unstable/ai/Telemetry.d.ts +35 -2
- package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
- package/dist/unstable/ai/Telemetry.js +2 -2
- package/dist/unstable/ai/Telemetry.js.map +1 -1
- package/dist/unstable/ai/Tokenizer.d.ts +2 -2
- package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
- package/dist/unstable/ai/Tokenizer.js +2 -2
- package/dist/unstable/ai/Tokenizer.js.map +1 -1
- package/dist/unstable/ai/Tool.d.ts +46 -16
- package/dist/unstable/ai/Tool.d.ts.map +1 -1
- package/dist/unstable/ai/Tool.js +68 -22
- package/dist/unstable/ai/Tool.js.map +1 -1
- package/dist/unstable/ai/Toolkit.d.ts +4 -4
- package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
- package/dist/unstable/ai/Toolkit.js +14 -21
- package/dist/unstable/ai/Toolkit.js.map +1 -1
- package/dist/unstable/ai/index.d.ts +22 -1
- package/dist/unstable/ai/index.d.ts.map +1 -1
- package/dist/unstable/ai/index.js +22 -1
- package/dist/unstable/ai/index.js.map +1 -1
- package/dist/unstable/ai/internal/codec-transformer.js +5 -7
- package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
- package/dist/unstable/cli/Argument.d.ts +4 -7
- package/dist/unstable/cli/Argument.d.ts.map +1 -1
- package/dist/unstable/cli/Argument.js +1 -3
- package/dist/unstable/cli/Argument.js.map +1 -1
- package/dist/unstable/cli/CliError.d.ts +55 -67
- package/dist/unstable/cli/CliError.d.ts.map +1 -1
- package/dist/unstable/cli/CliError.js +32 -57
- package/dist/unstable/cli/CliError.js.map +1 -1
- package/dist/unstable/cli/CliOutput.d.ts +5 -4
- package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
- package/dist/unstable/cli/CliOutput.js +67 -12
- package/dist/unstable/cli/CliOutput.js.map +1 -1
- package/dist/unstable/cli/Command.d.ts +372 -59
- package/dist/unstable/cli/Command.d.ts.map +1 -1
- package/dist/unstable/cli/Command.js +328 -66
- package/dist/unstable/cli/Command.js.map +1 -1
- package/dist/unstable/cli/Completions.d.ts +97 -0
- package/dist/unstable/cli/Completions.d.ts.map +1 -0
- package/dist/unstable/cli/Completions.js +25 -0
- package/dist/unstable/cli/Completions.js.map +1 -0
- package/dist/unstable/cli/Flag.d.ts +4 -5
- package/dist/unstable/cli/Flag.d.ts.map +1 -1
- package/dist/unstable/cli/Flag.js +1 -1
- package/dist/unstable/cli/Flag.js.map +1 -1
- package/dist/unstable/cli/GlobalFlag.d.ts +125 -0
- package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -0
- package/dist/unstable/cli/GlobalFlag.js +118 -0
- package/dist/unstable/cli/GlobalFlag.js.map +1 -0
- package/dist/unstable/cli/HelpDoc.d.ts +81 -11
- package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
- package/dist/unstable/cli/Param.d.ts +34 -6
- package/dist/unstable/cli/Param.d.ts.map +1 -1
- package/dist/unstable/cli/Param.js +24 -14
- package/dist/unstable/cli/Param.js.map +1 -1
- package/dist/unstable/cli/Primitive.d.ts +2 -2
- package/dist/unstable/cli/Primitive.d.ts.map +1 -1
- package/dist/unstable/cli/Primitive.js +1 -1
- package/dist/unstable/cli/Primitive.js.map +1 -1
- package/dist/unstable/cli/Prompt.js +266 -86
- package/dist/unstable/cli/Prompt.js.map +1 -1
- package/dist/unstable/cli/index.d.ts +8 -0
- package/dist/unstable/cli/index.d.ts.map +1 -1
- package/dist/unstable/cli/index.js +8 -0
- package/dist/unstable/cli/index.js.map +1 -1
- package/dist/unstable/cli/internal/command.d.ts +41 -15
- package/dist/unstable/cli/internal/command.d.ts.map +1 -1
- package/dist/unstable/cli/internal/command.js +84 -47
- 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.d.ts +2 -0
- package/dist/unstable/cli/internal/completions/descriptor.d.ts.map +1 -0
- package/dist/unstable/cli/internal/completions/{CommandDescriptor.js → descriptor.js} +17 -5
- package/dist/unstable/cli/internal/completions/descriptor.js.map +1 -0
- 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 +42 -0
- package/dist/unstable/cli/internal/config.js.map +1 -1
- package/dist/unstable/cli/internal/help.d.ts +33 -0
- package/dist/unstable/cli/internal/help.d.ts.map +1 -0
- package/dist/unstable/cli/internal/help.js +125 -0
- package/dist/unstable/cli/internal/help.js.map +1 -0
- package/dist/unstable/cli/internal/parser.js +155 -58
- package/dist/unstable/cli/internal/parser.js.map +1 -1
- package/dist/unstable/cluster/ClusterCron.d.ts +1 -1
- package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterCron.js +1 -1
- package/dist/unstable/cluster/ClusterCron.js.map +1 -1
- package/dist/unstable/cluster/ClusterError.d.ts +7 -7
- package/dist/unstable/cluster/ClusterSchema.d.ts +28 -7
- package/dist/unstable/cluster/ClusterSchema.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterSchema.js +28 -8
- package/dist/unstable/cluster/ClusterSchema.js.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts +4 -2
- package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.js +97 -63
- package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/unstable/cluster/DeliverAt.js +1 -1
- package/dist/unstable/cluster/DeliverAt.js.map +1 -1
- package/dist/unstable/cluster/Entity.d.ts +18 -16
- package/dist/unstable/cluster/Entity.d.ts.map +1 -1
- package/dist/unstable/cluster/Entity.js +31 -25
- package/dist/unstable/cluster/Entity.js.map +1 -1
- package/dist/unstable/cluster/EntityAddress.d.ts +2 -2
- package/dist/unstable/cluster/EntityAddress.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityAddress.js +1 -1
- package/dist/unstable/cluster/EntityAddress.js.map +1 -1
- package/dist/unstable/cluster/EntityProxy.js +3 -3
- package/dist/unstable/cluster/EntityProxy.js.map +1 -1
- package/dist/unstable/cluster/EntityProxyServer.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityProxyServer.js +4 -4
- package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
- package/dist/unstable/cluster/EntityResource.d.ts +4 -4
- package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityResource.js +2 -2
- package/dist/unstable/cluster/EntityResource.js.map +1 -1
- package/dist/unstable/cluster/Envelope.d.ts +4 -4
- package/dist/unstable/cluster/HttpRunner.js +2 -2
- package/dist/unstable/cluster/HttpRunner.js.map +1 -1
- package/dist/unstable/cluster/K8sHttpClient.d.ts +5 -5
- package/dist/unstable/cluster/K8sHttpClient.d.ts.map +1 -1
- package/dist/unstable/cluster/K8sHttpClient.js +6 -6
- package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
- package/dist/unstable/cluster/Message.d.ts +21 -15
- package/dist/unstable/cluster/Message.d.ts.map +1 -1
- package/dist/unstable/cluster/Message.js +16 -8
- package/dist/unstable/cluster/Message.js.map +1 -1
- package/dist/unstable/cluster/MessageStorage.d.ts +46 -23
- package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/MessageStorage.js +42 -26
- package/dist/unstable/cluster/MessageStorage.js.map +1 -1
- package/dist/unstable/cluster/Reply.d.ts +10 -9
- package/dist/unstable/cluster/Reply.d.ts.map +1 -1
- package/dist/unstable/cluster/Reply.js +8 -7
- package/dist/unstable/cluster/Reply.js.map +1 -1
- package/dist/unstable/cluster/Runner.d.ts +2 -2
- package/dist/unstable/cluster/Runner.d.ts.map +1 -1
- package/dist/unstable/cluster/Runner.js +1 -1
- package/dist/unstable/cluster/Runner.js.map +1 -1
- package/dist/unstable/cluster/RunnerAddress.d.ts +1 -1
- package/dist/unstable/cluster/RunnerAddress.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerAddress.js +1 -1
- package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
- package/dist/unstable/cluster/RunnerHealth.d.ts +2 -2
- package/dist/unstable/cluster/RunnerHealth.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerHealth.js +2 -2
- package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
- package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerServer.js +10 -9
- package/dist/unstable/cluster/RunnerServer.js.map +1 -1
- package/dist/unstable/cluster/RunnerStorage.d.ts +12 -12
- package/dist/unstable/cluster/RunnerStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerStorage.js +3 -3
- package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/Runners.d.ts +5 -4
- package/dist/unstable/cluster/Runners.d.ts.map +1 -1
- package/dist/unstable/cluster/Runners.js +20 -17
- package/dist/unstable/cluster/Runners.js.map +1 -1
- package/dist/unstable/cluster/ShardId.d.ts +35 -49
- package/dist/unstable/cluster/ShardId.d.ts.map +1 -1
- package/dist/unstable/cluster/ShardId.js +65 -67
- package/dist/unstable/cluster/ShardId.js.map +1 -1
- package/dist/unstable/cluster/Sharding.d.ts +4 -4
- package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
- package/dist/unstable/cluster/Sharding.js +66 -54
- package/dist/unstable/cluster/Sharding.js.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.d.ts +28 -27
- package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.js +27 -27
- package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
- package/dist/unstable/cluster/SingletonAddress.d.ts +2 -2
- package/dist/unstable/cluster/Snowflake.d.ts +2 -2
- package/dist/unstable/cluster/Snowflake.d.ts.map +1 -1
- package/dist/unstable/cluster/Snowflake.js +2 -2
- package/dist/unstable/cluster/Snowflake.js.map +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.js +24 -20
- 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 +7 -7
- package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/internal/entityManager.js +34 -27
- package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
- package/dist/unstable/cluster/internal/entityReaper.js +4 -3
- package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
- package/dist/unstable/cluster/internal/resourceMap.js +3 -3
- package/dist/unstable/cluster/internal/resourceMap.js.map +1 -1
- package/dist/unstable/cluster/internal/resourceRef.js +2 -1
- package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
- package/dist/unstable/devtools/DevToolsClient.d.ts +2 -2
- package/dist/unstable/devtools/DevToolsClient.d.ts.map +1 -1
- package/dist/unstable/devtools/DevToolsClient.js +9 -8
- package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
- package/dist/unstable/devtools/DevToolsSchema.d.ts +40 -40
- package/dist/unstable/devtools/DevToolsSchema.d.ts.map +1 -1
- package/dist/unstable/devtools/DevToolsSchema.js +9 -2
- package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
- package/dist/unstable/encoding/Msgpack.d.ts +1 -1
- package/dist/unstable/encoding/Ndjson.d.ts +9 -9
- package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
- package/dist/unstable/encoding/Ndjson.js.map +1 -1
- package/dist/unstable/encoding/Sse.d.ts +4 -4
- package/dist/unstable/encoding/Sse.d.ts.map +1 -1
- package/dist/unstable/encoding/Sse.js +1 -1
- package/dist/unstable/encoding/Sse.js.map +1 -1
- package/dist/unstable/eventlog/Event.d.ts +0 -6
- package/dist/unstable/eventlog/Event.d.ts.map +1 -1
- package/dist/unstable/eventlog/Event.js +0 -5
- package/dist/unstable/eventlog/Event.js.map +1 -1
- package/dist/unstable/eventlog/EventGroup.d.ts +0 -2
- package/dist/unstable/eventlog/EventGroup.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventGroup.js +0 -2
- package/dist/unstable/eventlog/EventGroup.js.map +1 -1
- package/dist/unstable/eventlog/EventJournal.d.ts +28 -11
- package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventJournal.js +130 -71
- package/dist/unstable/eventlog/EventJournal.js.map +1 -1
- package/dist/unstable/eventlog/EventLog.d.ts +94 -37
- package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLog.js +225 -150
- package/dist/unstable/eventlog/EventLog.js.map +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.d.ts +11 -9
- package/dist/unstable/eventlog/EventLogEncryption.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.js +15 -17
- package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
- package/dist/unstable/eventlog/EventLogMessage.d.ts +228 -0
- package/dist/unstable/eventlog/EventLogMessage.d.ts.map +1 -0
- package/dist/unstable/eventlog/EventLogMessage.js +214 -0
- package/dist/unstable/eventlog/EventLogMessage.js.map +1 -0
- package/dist/unstable/eventlog/EventLogRemote.d.ts +112 -194
- package/dist/unstable/eventlog/EventLogRemote.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogRemote.js +168 -322
- package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServer.d.ts +26 -48
- package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServer.js +128 -199
- package/dist/unstable/eventlog/EventLogServer.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +60 -0
- package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -0
- package/dist/unstable/eventlog/EventLogServerEncrypted.js +166 -0
- package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -0
- package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +183 -0
- package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -0
- package/dist/unstable/eventlog/EventLogServerUnencrypted.js +461 -0
- package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -0
- package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +117 -0
- package/dist/unstable/eventlog/EventLogSessionAuth.d.ts.map +1 -0
- package/dist/unstable/eventlog/EventLogSessionAuth.js +284 -0
- package/dist/unstable/eventlog/EventLogSessionAuth.js.map +1 -0
- package/dist/unstable/eventlog/{SqlEventLogJournal.d.ts → SqlEventJournal.d.ts} +2 -2
- package/dist/unstable/eventlog/SqlEventJournal.d.ts.map +1 -0
- package/dist/unstable/eventlog/{SqlEventLogJournal.js → SqlEventJournal.js} +28 -21
- package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -0
- package/dist/unstable/eventlog/{SqlEventLogServer.d.ts → SqlEventLogServerEncrypted.d.ts} +5 -5
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.d.ts.map +1 -0
- package/dist/unstable/eventlog/{SqlEventLogServer.js → SqlEventLogServerEncrypted.js} +69 -27
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -0
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts +25 -0
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -0
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js +355 -0
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -0
- package/dist/unstable/eventlog/index.d.ts +22 -2
- package/dist/unstable/eventlog/index.d.ts.map +1 -1
- package/dist/unstable/eventlog/index.js +22 -2
- package/dist/unstable/eventlog/index.js.map +1 -1
- package/dist/unstable/eventlog/internal/identityRootSecretDerivation.d.ts +2 -0
- package/dist/unstable/eventlog/internal/identityRootSecretDerivation.d.ts.map +1 -0
- package/dist/unstable/eventlog/internal/identityRootSecretDerivation.js +89 -0
- package/dist/unstable/eventlog/internal/identityRootSecretDerivation.js.map +1 -0
- package/dist/unstable/http/Cookies.d.ts +52 -7
- package/dist/unstable/http/Cookies.d.ts.map +1 -1
- package/dist/unstable/http/Cookies.js +27 -6
- package/dist/unstable/http/Cookies.js.map +1 -1
- package/dist/unstable/http/Etag.d.ts +2 -2
- package/dist/unstable/http/Etag.d.ts.map +1 -1
- package/dist/unstable/http/Etag.js +7 -3
- package/dist/unstable/http/Etag.js.map +1 -1
- package/dist/unstable/http/FetchHttpClient.d.ts +6 -3
- package/dist/unstable/http/FetchHttpClient.d.ts.map +1 -1
- package/dist/unstable/http/FetchHttpClient.js +5 -5
- package/dist/unstable/http/FetchHttpClient.js.map +1 -1
- package/dist/unstable/http/Headers.d.ts +24 -4
- package/dist/unstable/http/Headers.d.ts.map +1 -1
- package/dist/unstable/http/Headers.js +42 -13
- package/dist/unstable/http/Headers.js.map +1 -1
- package/dist/unstable/http/HttpBody.d.ts +1 -1
- package/dist/unstable/http/HttpClient.d.ts +125 -21
- package/dist/unstable/http/HttpClient.d.ts.map +1 -1
- package/dist/unstable/http/HttpClient.js +197 -19
- package/dist/unstable/http/HttpClient.js.map +1 -1
- package/dist/unstable/http/HttpClientError.d.ts +8 -8
- package/dist/unstable/http/HttpClientRequest.d.ts +43 -15
- package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientRequest.js +131 -21
- package/dist/unstable/http/HttpClientRequest.js.map +1 -1
- package/dist/unstable/http/HttpClientResponse.d.ts +2 -1
- package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientResponse.js +6 -1
- package/dist/unstable/http/HttpClientResponse.js.map +1 -1
- package/dist/unstable/http/HttpEffect.d.ts +13 -11
- package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
- package/dist/unstable/http/HttpEffect.js +67 -75
- package/dist/unstable/http/HttpEffect.js.map +1 -1
- package/dist/unstable/http/HttpIncomingMessage.d.ts +5 -4
- package/dist/unstable/http/HttpIncomingMessage.d.ts.map +1 -1
- package/dist/unstable/http/HttpIncomingMessage.js +2 -2
- package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
- package/dist/unstable/http/HttpMethod.d.ts +4 -4
- package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
- package/dist/unstable/http/HttpMethod.js +3 -3
- package/dist/unstable/http/HttpMethod.js.map +1 -1
- package/dist/unstable/http/HttpMiddleware.d.ts +4 -9
- package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/unstable/http/HttpMiddleware.js +47 -43
- package/dist/unstable/http/HttpMiddleware.js.map +1 -1
- package/dist/unstable/http/HttpPlatform.d.ts +2 -2
- package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
- package/dist/unstable/http/HttpPlatform.js +5 -4
- package/dist/unstable/http/HttpPlatform.js.map +1 -1
- package/dist/unstable/http/HttpRouter.d.ts +9 -8
- package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
- package/dist/unstable/http/HttpRouter.js +36 -36
- package/dist/unstable/http/HttpRouter.js.map +1 -1
- package/dist/unstable/http/HttpServer.d.ts +2 -2
- package/dist/unstable/http/HttpServer.d.ts.map +1 -1
- package/dist/unstable/http/HttpServer.js +4 -4
- package/dist/unstable/http/HttpServer.js.map +1 -1
- package/dist/unstable/http/HttpServerError.d.ts +22 -34
- package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerError.js +39 -45
- package/dist/unstable/http/HttpServerError.js.map +1 -1
- package/dist/unstable/http/HttpServerRequest.d.ts +19 -7
- package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerRequest.js +307 -13
- package/dist/unstable/http/HttpServerRequest.js.map +1 -1
- package/dist/unstable/http/HttpServerRespondable.d.ts +2 -2
- package/dist/unstable/http/HttpServerRespondable.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerRespondable.js +5 -5
- package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
- package/dist/unstable/http/HttpServerResponse.d.ts +52 -5
- package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerResponse.js +240 -5
- package/dist/unstable/http/HttpServerResponse.js.map +1 -1
- package/dist/unstable/http/HttpStaticServer.d.ts +69 -0
- package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -0
- package/dist/unstable/http/HttpStaticServer.js +353 -0
- package/dist/unstable/http/HttpStaticServer.js.map +1 -0
- package/dist/unstable/http/HttpTraceContext.d.ts +3 -2
- package/dist/unstable/http/HttpTraceContext.d.ts.map +1 -1
- package/dist/unstable/http/HttpTraceContext.js +27 -15
- package/dist/unstable/http/HttpTraceContext.js.map +1 -1
- package/dist/unstable/http/Multipart.d.ts +9 -9
- package/dist/unstable/http/Multipart.d.ts.map +1 -1
- package/dist/unstable/http/Multipart.js +7 -7
- package/dist/unstable/http/Multipart.js.map +1 -1
- package/dist/unstable/http/Url.d.ts +604 -0
- package/dist/unstable/http/Url.d.ts.map +1 -0
- package/dist/unstable/http/Url.js +256 -0
- package/dist/unstable/http/Url.js.map +1 -0
- package/dist/unstable/http/UrlParams.d.ts +19 -10
- package/dist/unstable/http/UrlParams.d.ts.map +1 -1
- package/dist/unstable/http/UrlParams.js +6 -7
- package/dist/unstable/http/UrlParams.js.map +1 -1
- package/dist/unstable/http/index.d.ts +8 -0
- package/dist/unstable/http/index.d.ts.map +1 -1
- package/dist/unstable/http/index.js +8 -0
- package/dist/unstable/http/index.js.map +1 -1
- package/dist/unstable/http/internal/preResponseHandler.d.ts +2 -0
- package/dist/unstable/http/internal/preResponseHandler.d.ts.map +1 -0
- package/dist/unstable/http/internal/preResponseHandler.js +10 -0
- package/dist/unstable/http/internal/preResponseHandler.js.map +1 -0
- package/dist/unstable/httpapi/HttpApi.d.ts +11 -11
- package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApi.js +8 -8
- package/dist/unstable/httpapi/HttpApi.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts +12 -9
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.js +53 -39
- package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.d.ts +83 -7
- package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.js +79 -11
- package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +211 -105
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.js +53 -47
- package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.d.ts +43 -26
- package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.js +125 -32
- package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.d.ts +9 -8
- package/dist/unstable/httpapi/HttpApiGroup.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.js +4 -4
- package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +49 -18
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.js +38 -8
- package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiScalar.d.ts +6 -0
- 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 +88 -9
- package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiSchema.js +86 -11
- package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSecurity.d.ts +9 -6
- package/dist/unstable/httpapi/HttpApiSecurity.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiSecurity.js +6 -6
- package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
- package/dist/unstable/httpapi/OpenApi.d.ts +17 -25
- package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/OpenApi.js +59 -60
- package/dist/unstable/httpapi/OpenApi.js.map +1 -1
- package/dist/unstable/observability/Otlp.d.ts +12 -12
- package/dist/unstable/observability/Otlp.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpExporter.d.ts +2 -2
- package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpExporter.js +8 -8
- package/dist/unstable/observability/OtlpExporter.js.map +1 -1
- package/dist/unstable/observability/OtlpLogger.d.ts +4 -4
- package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpLogger.js +7 -4
- package/dist/unstable/observability/OtlpLogger.js.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.d.ts +4 -4
- package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.js +2 -2
- package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
- package/dist/unstable/observability/OtlpSerialization.d.ts +2 -2
- package/dist/unstable/observability/OtlpSerialization.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpSerialization.js +2 -2
- package/dist/unstable/observability/OtlpSerialization.js.map +1 -1
- package/dist/unstable/observability/OtlpTracer.d.ts +4 -4
- package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpTracer.js +7 -3
- package/dist/unstable/observability/OtlpTracer.js.map +1 -1
- package/dist/unstable/observability/PrometheusMetrics.d.ts +3 -3
- package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/PrometheusMetrics.js +4 -33
- package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
- package/dist/unstable/observability/internal/protobuf.js +4 -4
- package/dist/unstable/observability/internal/protobuf.js.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.d.ts +24 -3
- package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.js +148 -6
- package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
- package/dist/unstable/persistence/Persistable.d.ts +2 -2
- package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
- package/dist/unstable/persistence/Persistable.js +1 -1
- package/dist/unstable/persistence/Persistable.js.map +1 -1
- package/dist/unstable/persistence/PersistedCache.d.ts +6 -6
- package/dist/unstable/persistence/PersistedCache.d.ts.map +1 -1
- package/dist/unstable/persistence/PersistedCache.js +12 -12
- package/dist/unstable/persistence/PersistedCache.js.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.d.ts +16 -16
- package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.js +15 -14
- package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
- package/dist/unstable/persistence/Persistence.d.ts +5 -5
- package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
- package/dist/unstable/persistence/Persistence.js +5 -5
- package/dist/unstable/persistence/Persistence.js.map +1 -1
- package/dist/unstable/persistence/RateLimiter.d.ts +9 -9
- package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
- package/dist/unstable/persistence/RateLimiter.js +4 -4
- package/dist/unstable/persistence/RateLimiter.js.map +1 -1
- package/dist/unstable/persistence/Redis.d.ts +3 -3
- package/dist/unstable/persistence/Redis.d.ts.map +1 -1
- package/dist/unstable/persistence/Redis.js +2 -2
- package/dist/unstable/persistence/Redis.js.map +1 -1
- package/dist/unstable/process/ChildProcess.d.ts +5 -128
- package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcess.js +1 -65
- package/dist/unstable/process/ChildProcess.js.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.d.ts +89 -8
- package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.js +22 -2
- package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
- package/dist/unstable/reactivity/Atom.d.ts +108 -47
- package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
- package/dist/unstable/reactivity/Atom.js +105 -25
- package/dist/unstable/reactivity/Atom.js.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.d.ts +22 -20
- package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.js +58 -26
- package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.d.ts +8 -2
- package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.js +57 -14
- package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.d.ts +12 -12
- package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.js +59 -31
- package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
- package/dist/unstable/reactivity/Reactivity.d.ts +2 -2
- package/dist/unstable/reactivity/Reactivity.d.ts.map +1 -1
- package/dist/unstable/reactivity/Reactivity.js +6 -6
- package/dist/unstable/reactivity/Reactivity.js.map +1 -1
- package/dist/unstable/reactivity/index.d.ts +2 -2
- package/dist/unstable/reactivity/index.d.ts.map +1 -1
- package/dist/unstable/reactivity/index.js +2 -2
- package/dist/unstable/reactivity/index.js.map +1 -1
- package/dist/unstable/rpc/Rpc.d.ts +47 -19
- package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
- package/dist/unstable/rpc/Rpc.js +39 -7
- package/dist/unstable/rpc/Rpc.js.map +1 -1
- package/dist/unstable/rpc/RpcClient.d.ts +26 -47
- package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClient.js +120 -77
- package/dist/unstable/rpc/RpcClient.js.map +1 -1
- package/dist/unstable/rpc/RpcClientError.d.ts +2 -2
- package/dist/unstable/rpc/RpcGroup.d.ts +15 -11
- package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcGroup.js +30 -20
- package/dist/unstable/rpc/RpcGroup.js.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.d.ts +12 -12
- package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.js +5 -5
- package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
- package/dist/unstable/rpc/RpcSchema.d.ts +14 -1
- package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSchema.js +17 -2
- package/dist/unstable/rpc/RpcSchema.js.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.d.ts +13 -2
- package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.js +60 -27
- package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
- package/dist/unstable/rpc/RpcServer.d.ts +8 -12
- package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcServer.js +78 -46
- package/dist/unstable/rpc/RpcServer.js.map +1 -1
- package/dist/unstable/rpc/RpcWorker.d.ts +2 -2
- package/dist/unstable/rpc/RpcWorker.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcWorker.js +4 -4
- package/dist/unstable/rpc/RpcWorker.js.map +1 -1
- package/dist/unstable/rpc/Utils.d.ts +6 -3
- package/dist/unstable/rpc/Utils.d.ts.map +1 -1
- package/dist/unstable/rpc/Utils.js +48 -6
- package/dist/unstable/rpc/Utils.js.map +1 -1
- package/dist/unstable/schema/Model.d.ts +24 -3
- package/dist/unstable/schema/Model.d.ts.map +1 -1
- package/dist/unstable/schema/Model.js +17 -4
- package/dist/unstable/schema/Model.js.map +1 -1
- package/dist/unstable/schema/VariantSchema.d.ts +7 -7
- package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
- package/dist/unstable/schema/VariantSchema.js +7 -18
- package/dist/unstable/schema/VariantSchema.js.map +1 -1
- package/dist/unstable/socket/Socket.d.ts +16 -15
- package/dist/unstable/socket/Socket.d.ts.map +1 -1
- package/dist/unstable/socket/Socket.js +22 -19
- package/dist/unstable/socket/Socket.js.map +1 -1
- package/dist/unstable/socket/SocketServer.d.ts +8 -5
- package/dist/unstable/socket/SocketServer.d.ts.map +1 -1
- package/dist/unstable/socket/SocketServer.js +2 -2
- package/dist/unstable/socket/SocketServer.js.map +1 -1
- package/dist/unstable/sql/Migrator.d.ts +1 -1
- package/dist/unstable/sql/Migrator.d.ts.map +1 -1
- package/dist/unstable/sql/Migrator.js +2 -2
- package/dist/unstable/sql/Migrator.js.map +1 -1
- package/dist/unstable/sql/SqlClient.d.ts +5 -5
- package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
- package/dist/unstable/sql/SqlClient.js +7 -7
- package/dist/unstable/sql/SqlClient.js.map +1 -1
- package/dist/unstable/sql/SqlConnection.d.ts +2 -2
- package/dist/unstable/sql/SqlConnection.d.ts.map +1 -1
- package/dist/unstable/sql/SqlConnection.js +5 -2
- package/dist/unstable/sql/SqlConnection.js.map +1 -1
- package/dist/unstable/sql/SqlError.d.ts +237 -17
- package/dist/unstable/sql/SqlError.d.ts.map +1 -1
- package/dist/unstable/sql/SqlError.js +260 -4
- package/dist/unstable/sql/SqlError.js.map +1 -1
- package/dist/unstable/sql/SqlModel.d.ts +8 -9
- package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
- package/dist/unstable/sql/SqlModel.js +12 -38
- package/dist/unstable/sql/SqlModel.js.map +1 -1
- package/dist/unstable/sql/SqlResolver.d.ts.map +1 -1
- package/dist/unstable/sql/SqlResolver.js +26 -17
- package/dist/unstable/sql/SqlResolver.js.map +1 -1
- package/dist/unstable/sql/SqlSchema.d.ts +17 -6
- package/dist/unstable/sql/SqlSchema.d.ts.map +1 -1
- package/dist/unstable/sql/SqlSchema.js +17 -7
- package/dist/unstable/sql/SqlSchema.js.map +1 -1
- package/dist/unstable/sql/Statement.d.ts +2 -2
- package/dist/unstable/sql/Statement.d.ts.map +1 -1
- package/dist/unstable/sql/Statement.js +2 -3
- package/dist/unstable/sql/Statement.js.map +1 -1
- package/dist/unstable/workers/Transferable.d.ts +4 -4
- package/dist/unstable/workers/Transferable.d.ts.map +1 -1
- package/dist/unstable/workers/Transferable.js +7 -7
- package/dist/unstable/workers/Transferable.js.map +1 -1
- package/dist/unstable/workers/Worker.d.ts +3 -3
- package/dist/unstable/workers/Worker.d.ts.map +1 -1
- package/dist/unstable/workers/Worker.js +8 -4
- package/dist/unstable/workers/Worker.js.map +1 -1
- package/dist/unstable/workers/WorkerError.d.ts +5 -5
- package/dist/unstable/workers/WorkerRunner.d.ts +2 -2
- package/dist/unstable/workers/WorkerRunner.d.ts.map +1 -1
- package/dist/unstable/workers/WorkerRunner.js +5 -2
- package/dist/unstable/workers/WorkerRunner.js.map +1 -1
- package/dist/unstable/workflow/Activity.d.ts +7 -2
- package/dist/unstable/workflow/Activity.d.ts.map +1 -1
- package/dist/unstable/workflow/Activity.js +17 -4
- package/dist/unstable/workflow/Activity.js.map +1 -1
- package/dist/unstable/workflow/DurableClock.d.ts +3 -6
- package/dist/unstable/workflow/DurableClock.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableClock.js +6 -6
- package/dist/unstable/workflow/DurableClock.js.map +1 -1
- package/dist/unstable/workflow/DurableDeferred.d.ts +1 -1
- package/dist/unstable/workflow/DurableDeferred.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableDeferred.js +15 -15
- package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
- package/dist/unstable/workflow/Workflow.d.ts +13 -12
- package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
- package/dist/unstable/workflow/Workflow.js +18 -18
- package/dist/unstable/workflow/Workflow.js.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.d.ts +26 -8
- package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.js +167 -17
- package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
- package/dist/unstable/workflow/WorkflowProxyServer.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowProxyServer.js +4 -4
- package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
- package/package.json +11 -11
- package/src/Array.ts +304 -447
- package/src/BigDecimal.ts +137 -82
- package/src/BigInt.ts +53 -45
- package/src/Brand.ts +3 -5
- package/src/Cache.ts +27 -54
- package/src/Cause.ts +58 -23
- package/src/Channel.ts +693 -224
- package/src/Chunk.ts +149 -331
- package/src/Clock.ts +2 -2
- package/src/Combiner.ts +280 -13
- package/src/Config.ts +197 -27
- package/src/ConfigProvider.ts +5 -5
- package/src/Console.ts +2 -2
- package/src/Context.ts +1454 -0
- package/src/Cron.ts +155 -63
- package/src/Data.ts +539 -376
- package/src/DateTime.ts +77 -258
- package/src/Deferred.ts +15 -6
- package/src/Duration.ts +123 -67
- package/src/Effect.ts +1629 -1355
- package/src/Encoding.ts +879 -0
- package/src/Equal.ts +295 -111
- package/src/Equivalence.ts +114 -52
- package/src/ErrorReporter.ts +458 -0
- package/src/ExecutionPlan.ts +8 -9
- package/src/Exit.ts +24 -12
- package/src/Fiber.ts +17 -8
- package/src/FiberHandle.ts +15 -14
- package/src/FiberMap.ts +27 -27
- package/src/FiberSet.ts +5 -5
- package/src/FileSystem.ts +34 -30
- package/src/Filter.ts +4 -62
- package/src/Formatter.ts +253 -51
- package/src/Function.ts +2 -10
- package/src/Graph.ts +131 -117
- package/src/Hash.ts +2 -2
- package/src/HashMap.ts +26 -19
- package/src/Iterable.ts +117 -63
- package/src/JsonSchema.ts +383 -10
- package/src/Latch.ts +194 -0
- package/src/Layer.ts +728 -441
- package/src/LayerMap.ts +38 -35
- package/src/LogLevel.ts +37 -0
- package/src/Logger.ts +35 -102
- package/src/ManagedRuntime.ts +61 -48
- package/src/Metric.ts +64 -66
- package/src/MutableHashMap.ts +9 -0
- package/src/MutableHashSet.ts +9 -0
- package/src/MutableList.ts +3 -0
- package/src/Newtype.ts +308 -0
- package/src/Number.ts +98 -29
- package/src/Optic.ts +948 -19
- package/src/Option.ts +34 -24
- package/src/Order.ts +39 -32
- package/src/PartitionedSemaphore.ts +288 -56
- package/src/Path.ts +2 -2
- package/src/Pipeable.ts +32 -1
- package/src/Pool.ts +18 -16
- package/src/PubSub.ts +30 -20
- package/src/Pull.ts +1 -1
- package/src/Queue.ts +11 -9
- package/src/Random.ts +51 -14
- package/src/RcMap.ts +19 -19
- package/src/RcRef.ts +1 -1
- package/src/Record.ts +94 -199
- package/src/Redactable.ts +146 -72
- package/src/Reducer.ts +166 -7
- package/src/References.ts +283 -287
- package/src/Request.ts +8 -7
- package/src/RequestResolver.ts +34 -55
- package/src/Resource.ts +6 -5
- package/src/Result.ts +2 -4
- package/src/Runtime.ts +102 -6
- package/src/Schedule.ts +460 -451
- package/src/Scheduler.ts +52 -129
- package/src/Schema.ts +4267 -752
- package/src/SchemaAST.ts +480 -302
- package/src/SchemaGetter.ts +92 -38
- package/src/SchemaIssue.ts +28 -15
- package/src/SchemaParser.ts +100 -29
- package/src/SchemaRepresentation.ts +59 -32
- package/src/SchemaTransformation.ts +364 -13
- package/src/Scope.ts +2 -2
- package/src/ScopedCache.ts +8 -8
- package/src/Semaphore.ts +442 -0
- package/src/Sink.ts +89 -34
- package/src/Stdio.ts +29 -6
- package/src/Stream.ts +898 -752
- package/src/String.ts +122 -69
- package/src/Struct.ts +33 -7
- package/src/SubscriptionRef.ts +101 -120
- package/src/SynchronizedRef.ts +3 -2
- package/src/Terminal.ts +5 -4
- package/src/Tracer.ts +23 -22
- package/src/Trie.ts +44 -31
- package/src/TxChunk.ts +26 -16
- package/src/TxDeferred.ts +391 -0
- package/src/TxHashMap.ts +347 -291
- package/src/TxHashSet.ts +54 -61
- package/src/TxPriorityQueue.ts +762 -0
- package/src/TxPubSub.ts +787 -0
- package/src/TxQueue.ts +221 -245
- package/src/TxReentrantLock.ts +729 -0
- package/src/TxRef.ts +31 -31
- package/src/TxSemaphore.ts +203 -31
- package/src/TxSubscriptionRef.ts +637 -0
- package/src/Types.ts +78 -17
- package/src/Unify.ts +26 -2
- package/src/Utils.ts +137 -111
- package/src/index.ts +898 -72
- package/src/internal/core.ts +19 -12
- package/src/internal/dateTime.ts +91 -96
- package/src/internal/effect.ts +1150 -611
- package/src/internal/hashMap.ts +12 -10
- package/src/internal/layer.ts +7 -7
- package/src/internal/option.ts +7 -0
- package/src/internal/random.ts +20 -0
- package/src/internal/rcRef.ts +14 -13
- package/src/internal/references.ts +72 -0
- package/src/internal/request.ts +8 -8
- package/src/internal/schedule.ts +3 -1
- package/src/internal/schema/annotations.ts +2 -0
- package/src/internal/schema/representation.ts +81 -95
- package/src/internal/schema/schema.ts +25 -1
- package/src/internal/schema/to-codec.ts +7 -17
- package/src/internal/trie.ts +21 -15
- package/src/testing/TestClock.ts +13 -11
- package/src/testing/TestSchema.ts +333 -36
- package/src/testing/index.ts +64 -1
- package/src/unstable/ai/AiError.ts +112 -54
- package/src/unstable/ai/AnthropicStructuredOutput.ts +7 -3
- package/src/unstable/ai/Chat.ts +137 -88
- package/src/unstable/ai/EmbeddingModel.ts +209 -0
- package/src/unstable/ai/IdGenerator.ts +2 -2
- package/src/unstable/ai/LanguageModel.ts +685 -255
- package/src/unstable/ai/McpSchema.ts +84 -22
- package/src/unstable/ai/McpServer.ts +299 -87
- package/src/unstable/ai/Model.ts +44 -13
- package/src/unstable/ai/OpenAiStructuredOutput.ts +9 -2
- package/src/unstable/ai/Prompt.ts +43 -49
- package/src/unstable/ai/Response.ts +31 -33
- package/src/unstable/ai/ResponseIdTracker.ts +95 -0
- package/src/unstable/ai/Telemetry.ts +2 -2
- package/src/unstable/ai/Tokenizer.ts +2 -2
- package/src/unstable/ai/Tool.ts +62 -36
- package/src/unstable/ai/Toolkit.ts +17 -26
- package/src/unstable/ai/index.ts +24 -1
- package/src/unstable/ai/internal/codec-transformer.ts +3 -9
- package/src/unstable/cli/Argument.ts +5 -8
- package/src/unstable/cli/CliError.ts +67 -66
- package/src/unstable/cli/CliOutput.ts +87 -15
- package/src/unstable/cli/Command.ts +808 -193
- package/src/unstable/cli/Completions.ts +107 -0
- package/src/unstable/cli/Flag.ts +5 -6
- package/src/unstable/cli/GlobalFlag.ts +242 -0
- package/src/unstable/cli/HelpDoc.ts +91 -11
- package/src/unstable/cli/Param.ts +54 -27
- package/src/unstable/cli/Primitive.ts +2 -2
- package/src/unstable/cli/Prompt.ts +275 -104
- package/src/unstable/cli/index.ts +10 -0
- package/src/unstable/cli/internal/command.ts +125 -64
- package/src/unstable/cli/internal/completions/bash.ts +7 -7
- package/src/unstable/cli/internal/completions/{CommandDescriptor.ts → descriptor.ts} +16 -58
- package/src/unstable/cli/internal/completions/fish.ts +7 -7
- package/src/unstable/cli/internal/completions/zsh.ts +8 -14
- package/src/unstable/cli/internal/config.ts +49 -0
- package/src/unstable/cli/internal/help.ts +171 -0
- package/src/unstable/cli/internal/parser.ts +201 -84
- package/src/unstable/cluster/ClusterCron.ts +2 -2
- package/src/unstable/cluster/ClusterSchema.ts +38 -10
- package/src/unstable/cluster/ClusterWorkflowEngine.ts +144 -81
- package/src/unstable/cluster/DeliverAt.ts +1 -1
- package/src/unstable/cluster/Entity.ts +59 -45
- package/src/unstable/cluster/EntityAddress.ts +1 -1
- package/src/unstable/cluster/EntityProxy.ts +3 -3
- package/src/unstable/cluster/EntityProxyServer.ts +4 -4
- package/src/unstable/cluster/EntityResource.ts +6 -6
- package/src/unstable/cluster/Envelope.ts +1 -1
- package/src/unstable/cluster/HttpRunner.ts +2 -2
- package/src/unstable/cluster/K8sHttpClient.ts +7 -7
- package/src/unstable/cluster/Message.ts +30 -17
- package/src/unstable/cluster/MessageStorage.ts +76 -46
- package/src/unstable/cluster/Reply.ts +13 -10
- package/src/unstable/cluster/Runner.ts +1 -1
- package/src/unstable/cluster/RunnerAddress.ts +1 -1
- package/src/unstable/cluster/RunnerHealth.ts +2 -2
- package/src/unstable/cluster/RunnerServer.ts +11 -14
- package/src/unstable/cluster/RunnerStorage.ts +9 -9
- package/src/unstable/cluster/Runners.ts +28 -23
- package/src/unstable/cluster/ShardId.ts +84 -74
- package/src/unstable/cluster/Sharding.ts +83 -66
- package/src/unstable/cluster/ShardingConfig.ts +39 -40
- package/src/unstable/cluster/Snowflake.ts +2 -2
- package/src/unstable/cluster/SqlMessageStorage.ts +29 -20
- package/src/unstable/cluster/SqlRunnerStorage.ts +13 -7
- package/src/unstable/cluster/internal/entityManager.ts +66 -46
- package/src/unstable/cluster/internal/entityReaper.ts +4 -3
- package/src/unstable/cluster/internal/resourceMap.ts +3 -3
- package/src/unstable/cluster/internal/resourceRef.ts +2 -1
- package/src/unstable/devtools/DevToolsClient.ts +26 -21
- package/src/unstable/devtools/DevToolsSchema.ts +16 -3
- package/src/unstable/encoding/Ndjson.ts +17 -17
- package/src/unstable/encoding/Sse.ts +3 -5
- package/src/unstable/eventlog/Event.ts +0 -8
- package/src/unstable/eventlog/EventGroup.ts +0 -4
- package/src/unstable/eventlog/EventJournal.ts +148 -80
- package/src/unstable/eventlog/EventLog.ts +360 -233
- package/src/unstable/eventlog/EventLogEncryption.ts +18 -32
- package/src/unstable/eventlog/EventLogMessage.ts +277 -0
- package/src/unstable/eventlog/EventLogRemote.ts +264 -410
- package/src/unstable/eventlog/EventLogServer.ts +183 -275
- package/src/unstable/eventlog/EventLogServerEncrypted.ts +206 -0
- package/src/unstable/eventlog/EventLogServerUnencrypted.ts +749 -0
- package/src/unstable/eventlog/EventLogSessionAuth.ts +437 -0
- package/src/unstable/eventlog/{SqlEventLogJournal.ts → SqlEventJournal.ts} +38 -22
- package/src/unstable/eventlog/{SqlEventLogServer.ts → SqlEventLogServerEncrypted.ts} +110 -43
- package/src/unstable/eventlog/SqlEventLogServerUnencrypted.ts +506 -0
- package/src/unstable/eventlog/index.ts +27 -2
- package/src/unstable/eventlog/internal/identityRootSecretDerivation.ts +153 -0
- package/src/unstable/http/Cookies.ts +94 -11
- package/src/unstable/http/Etag.ts +7 -5
- package/src/unstable/http/FetchHttpClient.ts +5 -5
- package/src/unstable/http/Headers.ts +70 -20
- package/src/unstable/http/HttpClient.ts +385 -42
- package/src/unstable/http/HttpClientRequest.ts +151 -39
- package/src/unstable/http/HttpClientResponse.ts +12 -6
- package/src/unstable/http/HttpEffect.ts +86 -100
- package/src/unstable/http/HttpIncomingMessage.ts +5 -4
- package/src/unstable/http/HttpMethod.ts +16 -4
- package/src/unstable/http/HttpMiddleware.ts +50 -50
- package/src/unstable/http/HttpPlatform.ts +5 -4
- package/src/unstable/http/HttpRouter.ts +46 -46
- package/src/unstable/http/HttpServer.ts +5 -11
- package/src/unstable/http/HttpServerError.ts +45 -47
- package/src/unstable/http/HttpServerRequest.ts +414 -23
- package/src/unstable/http/HttpServerRespondable.ts +6 -6
- package/src/unstable/http/HttpServerResponse.ts +351 -13
- package/src/unstable/http/HttpStaticServer.ts +456 -0
- package/src/unstable/http/HttpTraceContext.ts +31 -17
- package/src/unstable/http/Multipart.ts +10 -10
- package/src/unstable/http/Url.ts +650 -0
- package/src/unstable/http/UrlParams.ts +31 -19
- package/src/unstable/http/index.ts +10 -0
- package/src/unstable/http/internal/preResponseHandler.ts +15 -0
- package/src/unstable/httpapi/HttpApi.ts +21 -21
- package/src/unstable/httpapi/HttpApiBuilder.ts +128 -55
- package/src/unstable/httpapi/HttpApiClient.ts +186 -34
- package/src/unstable/httpapi/HttpApiEndpoint.ts +225 -113
- package/src/unstable/httpapi/HttpApiError.ts +108 -30
- package/src/unstable/httpapi/HttpApiGroup.ts +18 -17
- package/src/unstable/httpapi/HttpApiMiddleware.ts +95 -33
- package/src/unstable/httpapi/HttpApiScalar.ts +6 -0
- package/src/unstable/httpapi/HttpApiSchema.ts +106 -11
- package/src/unstable/httpapi/HttpApiSecurity.ts +13 -13
- package/src/unstable/httpapi/OpenApi.ts +73 -72
- package/src/unstable/observability/Otlp.ts +12 -12
- package/src/unstable/observability/OtlpExporter.ts +14 -10
- package/src/unstable/observability/OtlpLogger.ts +13 -9
- package/src/unstable/observability/OtlpMetrics.ts +6 -6
- package/src/unstable/observability/OtlpSerialization.ts +2 -2
- package/src/unstable/observability/OtlpTracer.ts +14 -10
- package/src/unstable/observability/PrometheusMetrics.ts +5 -5
- package/src/unstable/observability/internal/protobuf.ts +4 -4
- package/src/unstable/persistence/KeyValueStore.ts +230 -7
- package/src/unstable/persistence/Persistable.ts +3 -3
- package/src/unstable/persistence/PersistedCache.ts +35 -21
- package/src/unstable/persistence/PersistedQueue.ts +28 -27
- package/src/unstable/persistence/Persistence.ts +7 -7
- package/src/unstable/persistence/RateLimiter.ts +7 -7
- package/src/unstable/persistence/Redis.ts +2 -2
- package/src/unstable/process/ChildProcess.ts +6 -208
- package/src/unstable/process/ChildProcessSpawner.ts +120 -15
- package/src/unstable/reactivity/Atom.ts +280 -124
- package/src/unstable/reactivity/AtomHttpApi.ts +115 -59
- package/src/unstable/reactivity/AtomRegistry.ts +70 -16
- package/src/unstable/reactivity/AtomRpc.ts +82 -37
- package/src/unstable/reactivity/Reactivity.ts +6 -6
- package/src/unstable/reactivity/index.ts +2 -2
- package/src/unstable/rpc/Rpc.ts +77 -32
- package/src/unstable/rpc/RpcClient.ts +165 -145
- package/src/unstable/rpc/RpcGroup.ts +51 -34
- package/src/unstable/rpc/RpcMiddleware.ts +28 -22
- package/src/unstable/rpc/RpcSchema.ts +24 -6
- package/src/unstable/rpc/RpcSerialization.ts +97 -54
- package/src/unstable/rpc/RpcServer.ts +97 -69
- package/src/unstable/rpc/RpcWorker.ts +5 -5
- package/src/unstable/rpc/Utils.ts +65 -5
- package/src/unstable/schema/Model.ts +35 -6
- package/src/unstable/schema/VariantSchema.ts +14 -27
- package/src/unstable/socket/Socket.ts +42 -38
- package/src/unstable/socket/SocketServer.ts +2 -2
- package/src/unstable/sql/Migrator.ts +7 -5
- package/src/unstable/sql/SqlClient.ts +13 -11
- package/src/unstable/sql/SqlConnection.ts +2 -2
- package/src/unstable/sql/SqlError.ts +365 -11
- package/src/unstable/sql/SqlModel.ts +57 -85
- package/src/unstable/sql/SqlResolver.ts +26 -16
- package/src/unstable/sql/SqlSchema.ts +42 -26
- package/src/unstable/sql/Statement.ts +2 -3
- package/src/unstable/workers/Transferable.ts +17 -19
- package/src/unstable/workers/Worker.ts +6 -5
- package/src/unstable/workers/WorkerRunner.ts +2 -2
- package/src/unstable/workflow/Activity.ts +27 -4
- package/src/unstable/workflow/DurableClock.ts +11 -11
- package/src/unstable/workflow/DurableDeferred.ts +16 -16
- package/src/unstable/workflow/Workflow.ts +32 -25
- package/src/unstable/workflow/WorkflowEngine.ts +239 -25
- package/src/unstable/workflow/WorkflowProxyServer.ts +4 -4
- package/dist/NullOr.d.ts +0 -149
- package/dist/NullOr.d.ts.map +0 -1
- package/dist/NullOr.js +0 -152
- package/dist/NullOr.js.map +0 -1
- package/dist/ServiceMap.d.ts +0 -1126
- package/dist/ServiceMap.d.ts.map +0 -1
- package/dist/ServiceMap.js.map +0 -1
- package/dist/encoding/Base64.d.ts +0 -67
- package/dist/encoding/Base64.d.ts.map +0 -1
- package/dist/encoding/Base64.js +0 -146
- package/dist/encoding/Base64.js.map +0 -1
- package/dist/encoding/Base64Url.d.ts +0 -60
- package/dist/encoding/Base64Url.d.ts.map +0 -1
- package/dist/encoding/Base64Url.js +0 -89
- package/dist/encoding/Base64Url.js.map +0 -1
- package/dist/encoding/EncodingError.d.ts +0 -31
- package/dist/encoding/EncodingError.d.ts.map +0 -1
- package/dist/encoding/EncodingError.js +0 -22
- package/dist/encoding/EncodingError.js.map +0 -1
- package/dist/encoding/Hex.d.ts +0 -61
- package/dist/encoding/Hex.d.ts.map +0 -1
- package/dist/encoding/Hex.js +0 -115
- package/dist/encoding/Hex.js.map +0 -1
- package/dist/encoding/index.d.ts +0 -26
- package/dist/encoding/index.d.ts.map +0 -1
- package/dist/encoding/index.js +0 -27
- package/dist/encoding/index.js.map +0 -1
- package/dist/unstable/cli/internal/builtInFlags.d.ts +0 -7
- package/dist/unstable/cli/internal/builtInFlags.d.ts.map +0 -1
- package/dist/unstable/cli/internal/builtInFlags.js +0 -44
- package/dist/unstable/cli/internal/builtInFlags.js.map +0 -1
- package/dist/unstable/cli/internal/completions/CommandDescriptor.d.ts +0 -2
- package/dist/unstable/cli/internal/completions/CommandDescriptor.d.ts.map +0 -1
- package/dist/unstable/cli/internal/completions/CommandDescriptor.js.map +0 -1
- package/dist/unstable/cli/internal/completions/Completions.d.ts +0 -2
- package/dist/unstable/cli/internal/completions/Completions.d.ts.map +0 -1
- package/dist/unstable/cli/internal/completions/Completions.js +0 -23
- package/dist/unstable/cli/internal/completions/Completions.js.map +0 -1
- package/dist/unstable/eventlog/SqlEventLogJournal.d.ts.map +0 -1
- package/dist/unstable/eventlog/SqlEventLogJournal.js.map +0 -1
- package/dist/unstable/eventlog/SqlEventLogServer.d.ts.map +0 -1
- package/dist/unstable/eventlog/SqlEventLogServer.js.map +0 -1
- package/src/NullOr.ts +0 -204
- package/src/ServiceMap.ts +0 -1410
- package/src/encoding/Base64.ts +0 -366
- package/src/encoding/Base64Url.ts +0 -104
- package/src/encoding/EncodingError.ts +0 -35
- package/src/encoding/Hex.ts +0 -390
- package/src/encoding/index.ts +0 -31
- package/src/unstable/cli/internal/builtInFlags.ts +0 -78
- package/src/unstable/cli/internal/completions/Completions.ts +0 -31
package/src/TxHashMap.ts
CHANGED
|
@@ -11,6 +11,8 @@ import { NodeInspectSymbol, toJson } from "./Inspectable.ts"
|
|
|
11
11
|
import * as Option from "./Option.ts"
|
|
12
12
|
import type { Pipeable } from "./Pipeable.ts"
|
|
13
13
|
import { pipeArguments } from "./Pipeable.ts"
|
|
14
|
+
import { hasProperty } from "./Predicate.ts"
|
|
15
|
+
import type { Result } from "./Result.ts"
|
|
14
16
|
import * as TxRef from "./TxRef.ts"
|
|
15
17
|
|
|
16
18
|
const TypeId = "~effect/transactions/TxHashMap"
|
|
@@ -41,7 +43,7 @@ const TxHashMapProto = {
|
|
|
41
43
|
*
|
|
42
44
|
* @example
|
|
43
45
|
* ```ts
|
|
44
|
-
* import { Effect,
|
|
46
|
+
* import { Effect, TxHashMap } from "effect"
|
|
45
47
|
*
|
|
46
48
|
* const program = Effect.gen(function*() {
|
|
47
49
|
* // Create a transactional hash map
|
|
@@ -53,10 +55,10 @@ const TxHashMapProto = {
|
|
|
53
55
|
* console.log(user) // Option.some("Alice")
|
|
54
56
|
*
|
|
55
57
|
* // Multi-step atomic operations
|
|
56
|
-
* yield* Effect.
|
|
58
|
+
* yield* Effect.tx(
|
|
57
59
|
* Effect.gen(function*() {
|
|
58
60
|
* const currentUser = yield* TxHashMap.get(txMap, "user1")
|
|
59
|
-
* if (
|
|
61
|
+
* if (currentUser._tag === "Some") {
|
|
60
62
|
* yield* TxHashMap.set(txMap, "user1", currentUser.value + "_updated")
|
|
61
63
|
* yield* TxHashMap.remove(txMap, "user2")
|
|
62
64
|
* }
|
|
@@ -273,7 +275,9 @@ export const empty = <K, V>(): Effect.Effect<TxHashMap<K, V>> =>
|
|
|
273
275
|
* @since 2.0.0
|
|
274
276
|
* @category constructors
|
|
275
277
|
*/
|
|
276
|
-
export const make = <K, V>(
|
|
278
|
+
export const make = <K, V>(
|
|
279
|
+
...entries: Array<readonly [K, V]>
|
|
280
|
+
): Effect.Effect<TxHashMap<K, V>> =>
|
|
277
281
|
Effect.gen(function*() {
|
|
278
282
|
const hashMap = HashMap.make(...entries)
|
|
279
283
|
const ref = yield* TxRef.make(hashMap)
|
|
@@ -314,7 +318,9 @@ export const make = <K, V>(...entries: Array<readonly [K, V]>): Effect.Effect<Tx
|
|
|
314
318
|
* @since 2.0.0
|
|
315
319
|
* @category constructors
|
|
316
320
|
*/
|
|
317
|
-
export const fromIterable = <K, V>(
|
|
321
|
+
export const fromIterable = <K, V>(
|
|
322
|
+
entries: Iterable<readonly [K, V]>
|
|
323
|
+
): Effect.Effect<TxHashMap<K, V>> =>
|
|
318
324
|
Effect.gen(function*() {
|
|
319
325
|
const hashMap = HashMap.fromIterable(entries)
|
|
320
326
|
const ref = yield* TxRef.make(hashMap)
|
|
@@ -343,7 +349,7 @@ export const fromIterable = <K, V>(entries: Iterable<readonly [K, V]>): Effect.E
|
|
|
343
349
|
*
|
|
344
350
|
* // Use with pipe syntax for type-safe access
|
|
345
351
|
* const bobRole = yield* TxHashMap.get(userMap, "bob")
|
|
346
|
-
* if (
|
|
352
|
+
* if (bobRole._tag === "Some") {
|
|
347
353
|
* console.log(bobRole.value.role) // "user"
|
|
348
354
|
* }
|
|
349
355
|
* })
|
|
@@ -375,7 +381,7 @@ export const get: {
|
|
|
375
381
|
*
|
|
376
382
|
* // Use with pipe syntax for type-safe access
|
|
377
383
|
* const bobRole = yield* TxHashMap.get(userMap, "bob")
|
|
378
|
-
* if (
|
|
384
|
+
* if (bobRole._tag === "Some") {
|
|
379
385
|
* console.log(bobRole.value.role) // "user"
|
|
380
386
|
* }
|
|
381
387
|
* })
|
|
@@ -407,7 +413,7 @@ export const get: {
|
|
|
407
413
|
*
|
|
408
414
|
* // Use with pipe syntax for type-safe access
|
|
409
415
|
* const bobRole = yield* TxHashMap.get(userMap, "bob")
|
|
410
|
-
* if (
|
|
416
|
+
* if (bobRole._tag === "Some") {
|
|
411
417
|
* console.log(bobRole.value.role) // "user"
|
|
412
418
|
* }
|
|
413
419
|
* })
|
|
@@ -756,16 +762,14 @@ export const remove: {
|
|
|
756
762
|
} = dual(
|
|
757
763
|
2,
|
|
758
764
|
<K1 extends K, K, V>(self: TxHashMap<K, V>, key: K1): Effect.Effect<boolean> =>
|
|
759
|
-
Effect.
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
})
|
|
768
|
-
)
|
|
765
|
+
Effect.gen(function*() {
|
|
766
|
+
const currentMap = yield* TxRef.get(self.ref)
|
|
767
|
+
const existed = HashMap.has(currentMap, key)
|
|
768
|
+
if (existed) {
|
|
769
|
+
yield* TxRef.set(self.ref, HashMap.remove(currentMap, key))
|
|
770
|
+
}
|
|
771
|
+
return existed
|
|
772
|
+
}).pipe(Effect.tx)
|
|
769
773
|
)
|
|
770
774
|
|
|
771
775
|
/**
|
|
@@ -1038,19 +1042,21 @@ export const modify: {
|
|
|
1038
1042
|
<K, V>(self: TxHashMap<K, V>, key: K, f: (value: V) => V): Effect.Effect<Option.Option<V>>
|
|
1039
1043
|
} = dual(
|
|
1040
1044
|
3,
|
|
1041
|
-
<K, V>(
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1045
|
+
<K, V>(
|
|
1046
|
+
self: TxHashMap<K, V>,
|
|
1047
|
+
key: K,
|
|
1048
|
+
f: (value: V) => V
|
|
1049
|
+
): Effect.Effect<Option.Option<V>> =>
|
|
1050
|
+
Effect.gen(function*() {
|
|
1051
|
+
const currentMap = yield* TxRef.get(self.ref)
|
|
1052
|
+
const currentValue = HashMap.get(currentMap, key)
|
|
1053
|
+
if (Option.isSome(currentValue)) {
|
|
1054
|
+
const newValue = f(currentValue.value)
|
|
1055
|
+
yield* TxRef.set(self.ref, HashMap.set(currentMap, key, newValue))
|
|
1056
|
+
return currentValue
|
|
1057
|
+
}
|
|
1058
|
+
return Option.none()
|
|
1059
|
+
}).pipe(Effect.tx)
|
|
1054
1060
|
)
|
|
1055
1061
|
|
|
1056
1062
|
/**
|
|
@@ -1062,7 +1068,7 @@ export const modify: {
|
|
|
1062
1068
|
*
|
|
1063
1069
|
* @example
|
|
1064
1070
|
* ```ts
|
|
1065
|
-
* import { Effect,
|
|
1071
|
+
* import { Effect, TxHashMap } from "effect"
|
|
1066
1072
|
*
|
|
1067
1073
|
* const program = Effect.gen(function*() {
|
|
1068
1074
|
* const storage = yield* TxHashMap.make<string, string | number>([
|
|
@@ -1070,26 +1076,32 @@ export const modify: {
|
|
|
1070
1076
|
* "content1"
|
|
1071
1077
|
* ], ["access_count", 0])
|
|
1072
1078
|
*
|
|
1073
|
-
* // Increment counter or initialize to 1
|
|
1074
|
-
* const updateFn = (opt: Option.Option<string | number>) =>
|
|
1075
|
-
* Option.isSome(opt) && typeof opt.value === "number"
|
|
1076
|
-
* ? Option.some(opt.value + 1)
|
|
1077
|
-
* : Option.some(1)
|
|
1078
|
-
*
|
|
1079
1079
|
* // Increment existing counter
|
|
1080
|
-
* yield* TxHashMap.modifyAt(storage, "access_count",
|
|
1080
|
+
* yield* TxHashMap.modifyAt(storage, "access_count", (current) =>
|
|
1081
|
+
* current._tag === "Some" && typeof current.value === "number"
|
|
1082
|
+
* ? { ...current, value: current.value + 1 }
|
|
1083
|
+
* : current
|
|
1084
|
+
* )
|
|
1081
1085
|
* const count1 = yield* TxHashMap.get(storage, "access_count")
|
|
1082
1086
|
* console.log(count1) // Option.some(1)
|
|
1083
1087
|
*
|
|
1084
1088
|
* // Increment existing counter again
|
|
1085
|
-
* yield* TxHashMap.modifyAt(storage, "access_count",
|
|
1089
|
+
* yield* TxHashMap.modifyAt(storage, "access_count", (current) =>
|
|
1090
|
+
* current._tag === "Some" && typeof current.value === "number"
|
|
1091
|
+
* ? { ...current, value: current.value + 1 }
|
|
1092
|
+
* : current
|
|
1093
|
+
* )
|
|
1086
1094
|
* const count2 = yield* TxHashMap.get(storage, "access_count")
|
|
1087
1095
|
* console.log(count2) // Option.some(2)
|
|
1088
1096
|
*
|
|
1089
|
-
* //
|
|
1090
|
-
* yield* TxHashMap.modifyAt(storage, "file1.txt", () =>
|
|
1091
|
-
*
|
|
1092
|
-
*
|
|
1097
|
+
* // Update an existing string entry
|
|
1098
|
+
* yield* TxHashMap.modifyAt(storage, "file1.txt", (current) =>
|
|
1099
|
+
* current._tag === "Some" && typeof current.value === "string"
|
|
1100
|
+
* ? { ...current, value: `${current.value}.bak` }
|
|
1101
|
+
* : current
|
|
1102
|
+
* )
|
|
1103
|
+
* const backup = yield* TxHashMap.get(storage, "file1.txt")
|
|
1104
|
+
* console.log(backup) // Option.some("content1.bak")
|
|
1093
1105
|
* })
|
|
1094
1106
|
* ```
|
|
1095
1107
|
*
|
|
@@ -1106,7 +1118,7 @@ export const modifyAt: {
|
|
|
1106
1118
|
*
|
|
1107
1119
|
* @example
|
|
1108
1120
|
* ```ts
|
|
1109
|
-
* import { Effect,
|
|
1121
|
+
* import { Effect, TxHashMap } from "effect"
|
|
1110
1122
|
*
|
|
1111
1123
|
* const program = Effect.gen(function*() {
|
|
1112
1124
|
* const storage = yield* TxHashMap.make<string, string | number>([
|
|
@@ -1114,26 +1126,32 @@ export const modifyAt: {
|
|
|
1114
1126
|
* "content1"
|
|
1115
1127
|
* ], ["access_count", 0])
|
|
1116
1128
|
*
|
|
1117
|
-
* // Increment counter or initialize to 1
|
|
1118
|
-
* const updateFn = (opt: Option.Option<string | number>) =>
|
|
1119
|
-
* Option.isSome(opt) && typeof opt.value === "number"
|
|
1120
|
-
* ? Option.some(opt.value + 1)
|
|
1121
|
-
* : Option.some(1)
|
|
1122
|
-
*
|
|
1123
1129
|
* // Increment existing counter
|
|
1124
|
-
* yield* TxHashMap.modifyAt(storage, "access_count",
|
|
1130
|
+
* yield* TxHashMap.modifyAt(storage, "access_count", (current) =>
|
|
1131
|
+
* current._tag === "Some" && typeof current.value === "number"
|
|
1132
|
+
* ? { ...current, value: current.value + 1 }
|
|
1133
|
+
* : current
|
|
1134
|
+
* )
|
|
1125
1135
|
* const count1 = yield* TxHashMap.get(storage, "access_count")
|
|
1126
1136
|
* console.log(count1) // Option.some(1)
|
|
1127
1137
|
*
|
|
1128
1138
|
* // Increment existing counter again
|
|
1129
|
-
* yield* TxHashMap.modifyAt(storage, "access_count",
|
|
1139
|
+
* yield* TxHashMap.modifyAt(storage, "access_count", (current) =>
|
|
1140
|
+
* current._tag === "Some" && typeof current.value === "number"
|
|
1141
|
+
* ? { ...current, value: current.value + 1 }
|
|
1142
|
+
* : current
|
|
1143
|
+
* )
|
|
1130
1144
|
* const count2 = yield* TxHashMap.get(storage, "access_count")
|
|
1131
1145
|
* console.log(count2) // Option.some(2)
|
|
1132
1146
|
*
|
|
1133
|
-
* //
|
|
1134
|
-
* yield* TxHashMap.modifyAt(storage, "file1.txt", () =>
|
|
1135
|
-
*
|
|
1136
|
-
*
|
|
1147
|
+
* // Update an existing string entry
|
|
1148
|
+
* yield* TxHashMap.modifyAt(storage, "file1.txt", (current) =>
|
|
1149
|
+
* current._tag === "Some" && typeof current.value === "string"
|
|
1150
|
+
* ? { ...current, value: `${current.value}.bak` }
|
|
1151
|
+
* : current
|
|
1152
|
+
* )
|
|
1153
|
+
* const backup = yield* TxHashMap.get(storage, "file1.txt")
|
|
1154
|
+
* console.log(backup) // Option.some("content1.bak")
|
|
1137
1155
|
* })
|
|
1138
1156
|
* ```
|
|
1139
1157
|
*
|
|
@@ -1150,7 +1168,7 @@ export const modifyAt: {
|
|
|
1150
1168
|
*
|
|
1151
1169
|
* @example
|
|
1152
1170
|
* ```ts
|
|
1153
|
-
* import { Effect,
|
|
1171
|
+
* import { Effect, TxHashMap } from "effect"
|
|
1154
1172
|
*
|
|
1155
1173
|
* const program = Effect.gen(function*() {
|
|
1156
1174
|
* const storage = yield* TxHashMap.make<string, string | number>([
|
|
@@ -1158,26 +1176,32 @@ export const modifyAt: {
|
|
|
1158
1176
|
* "content1"
|
|
1159
1177
|
* ], ["access_count", 0])
|
|
1160
1178
|
*
|
|
1161
|
-
* // Increment counter or initialize to 1
|
|
1162
|
-
* const updateFn = (opt: Option.Option<string | number>) =>
|
|
1163
|
-
* Option.isSome(opt) && typeof opt.value === "number"
|
|
1164
|
-
* ? Option.some(opt.value + 1)
|
|
1165
|
-
* : Option.some(1)
|
|
1166
|
-
*
|
|
1167
1179
|
* // Increment existing counter
|
|
1168
|
-
* yield* TxHashMap.modifyAt(storage, "access_count",
|
|
1180
|
+
* yield* TxHashMap.modifyAt(storage, "access_count", (current) =>
|
|
1181
|
+
* current._tag === "Some" && typeof current.value === "number"
|
|
1182
|
+
* ? { ...current, value: current.value + 1 }
|
|
1183
|
+
* : current
|
|
1184
|
+
* )
|
|
1169
1185
|
* const count1 = yield* TxHashMap.get(storage, "access_count")
|
|
1170
1186
|
* console.log(count1) // Option.some(1)
|
|
1171
1187
|
*
|
|
1172
1188
|
* // Increment existing counter again
|
|
1173
|
-
* yield* TxHashMap.modifyAt(storage, "access_count",
|
|
1189
|
+
* yield* TxHashMap.modifyAt(storage, "access_count", (current) =>
|
|
1190
|
+
* current._tag === "Some" && typeof current.value === "number"
|
|
1191
|
+
* ? { ...current, value: current.value + 1 }
|
|
1192
|
+
* : current
|
|
1193
|
+
* )
|
|
1174
1194
|
* const count2 = yield* TxHashMap.get(storage, "access_count")
|
|
1175
1195
|
* console.log(count2) // Option.some(2)
|
|
1176
1196
|
*
|
|
1177
|
-
* //
|
|
1178
|
-
* yield* TxHashMap.modifyAt(storage, "file1.txt", () =>
|
|
1179
|
-
*
|
|
1180
|
-
*
|
|
1197
|
+
* // Update an existing string entry
|
|
1198
|
+
* yield* TxHashMap.modifyAt(storage, "file1.txt", (current) =>
|
|
1199
|
+
* current._tag === "Some" && typeof current.value === "string"
|
|
1200
|
+
* ? { ...current, value: `${current.value}.bak` }
|
|
1201
|
+
* : current
|
|
1202
|
+
* )
|
|
1203
|
+
* const backup = yield* TxHashMap.get(storage, "file1.txt")
|
|
1204
|
+
* console.log(backup) // Option.some("content1.bak")
|
|
1181
1205
|
* })
|
|
1182
1206
|
* ```
|
|
1183
1207
|
*
|
|
@@ -1191,20 +1215,22 @@ export const modifyAt: {
|
|
|
1191
1215
|
): Effect.Effect<void>
|
|
1192
1216
|
} = dual(
|
|
1193
1217
|
3,
|
|
1194
|
-
<K, V>(
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
|
|
1198
|
-
|
|
1199
|
-
|
|
1218
|
+
<K, V>(
|
|
1219
|
+
self: TxHashMap<K, V>,
|
|
1220
|
+
key: K,
|
|
1221
|
+
f: (value: Option.Option<V>) => Option.Option<V>
|
|
1222
|
+
): Effect.Effect<void> =>
|
|
1223
|
+
Effect.gen(function*() {
|
|
1224
|
+
const currentMap = yield* TxRef.get(self.ref)
|
|
1225
|
+
const currentValue = HashMap.get(currentMap, key)
|
|
1226
|
+
const newValue = f(currentValue)
|
|
1200
1227
|
|
|
1201
|
-
|
|
1202
|
-
|
|
1203
|
-
|
|
1204
|
-
|
|
1205
|
-
|
|
1206
|
-
|
|
1207
|
-
)
|
|
1228
|
+
if (Option.isSome(newValue)) {
|
|
1229
|
+
yield* TxRef.set(self.ref, HashMap.set(currentMap, key, newValue.value))
|
|
1230
|
+
} else if (Option.isSome(currentValue)) {
|
|
1231
|
+
yield* TxRef.set(self.ref, HashMap.remove(currentMap, key))
|
|
1232
|
+
}
|
|
1233
|
+
}).pipe(Effect.tx)
|
|
1208
1234
|
)
|
|
1209
1235
|
|
|
1210
1236
|
/**
|
|
@@ -1227,7 +1253,7 @@ export const modifyAt: {
|
|
|
1227
1253
|
* // Useful for iteration
|
|
1228
1254
|
* for (const username of usernames) {
|
|
1229
1255
|
* const role = yield* TxHashMap.get(userRoles, username)
|
|
1230
|
-
* if (
|
|
1256
|
+
* if (role._tag === "Some") {
|
|
1231
1257
|
* console.log(`${username}: ${role.value}`)
|
|
1232
1258
|
* }
|
|
1233
1259
|
* }
|
|
@@ -1311,7 +1337,9 @@ export const values = <K, V>(self: TxHashMap<K, V>): Effect.Effect<Array<V>> =>
|
|
|
1311
1337
|
* @since 2.0.0
|
|
1312
1338
|
* @category combinators
|
|
1313
1339
|
*/
|
|
1314
|
-
export const entries = <K, V>(
|
|
1340
|
+
export const entries = <K, V>(
|
|
1341
|
+
self: TxHashMap<K, V>
|
|
1342
|
+
): Effect.Effect<Array<readonly [K, V]>> =>
|
|
1315
1343
|
Effect.gen(function*() {
|
|
1316
1344
|
const map = yield* TxRef.get(self.ref)
|
|
1317
1345
|
return HashMap.toEntries(map)
|
|
@@ -1351,7 +1379,9 @@ export const entries = <K, V>(self: TxHashMap<K, V>): Effect.Effect<Array<readon
|
|
|
1351
1379
|
* @since 2.0.0
|
|
1352
1380
|
* @category combinators
|
|
1353
1381
|
*/
|
|
1354
|
-
export const snapshot = <K, V>(
|
|
1382
|
+
export const snapshot = <K, V>(
|
|
1383
|
+
self: TxHashMap<K, V>
|
|
1384
|
+
): Effect.Effect<HashMap.HashMap<K, V>> => TxRef.get(self.ref)
|
|
1355
1385
|
|
|
1356
1386
|
/**
|
|
1357
1387
|
* Merges another HashMap into this TxHashMap. If both maps contain the same key,
|
|
@@ -1499,8 +1529,10 @@ export const union: {
|
|
|
1499
1529
|
<K1 extends K, K, V1 extends V, V>(self: TxHashMap<K, V>, other: HashMap.HashMap<K1, V1>): Effect.Effect<void>
|
|
1500
1530
|
} = dual(
|
|
1501
1531
|
2,
|
|
1502
|
-
<K1 extends K, K, V1 extends V, V>(
|
|
1503
|
-
|
|
1532
|
+
<K1 extends K, K, V1 extends V, V>(
|
|
1533
|
+
self: TxHashMap<K, V>,
|
|
1534
|
+
other: HashMap.HashMap<K1, V1>
|
|
1535
|
+
): Effect.Effect<void> => TxRef.update(self.ref, (map) => HashMap.union(map, other))
|
|
1504
1536
|
)
|
|
1505
1537
|
|
|
1506
1538
|
/**
|
|
@@ -1850,7 +1882,7 @@ export const setMany: {
|
|
|
1850
1882
|
* @category guards
|
|
1851
1883
|
*/
|
|
1852
1884
|
export const isTxHashMap = <K, V>(value: unknown): value is TxHashMap<K, V> => {
|
|
1853
|
-
return
|
|
1885
|
+
return hasProperty(value, TypeId)
|
|
1854
1886
|
}
|
|
1855
1887
|
|
|
1856
1888
|
/**
|
|
@@ -1966,8 +1998,11 @@ export const getHash: {
|
|
|
1966
1998
|
<K1 extends K, K, V>(self: TxHashMap<K, V>, key: K1, hash: number): Effect.Effect<Option.Option<V>>
|
|
1967
1999
|
} = dual(
|
|
1968
2000
|
3,
|
|
1969
|
-
<K1 extends K, K, V>(
|
|
1970
|
-
|
|
2001
|
+
<K1 extends K, K, V>(
|
|
2002
|
+
self: TxHashMap<K, V>,
|
|
2003
|
+
key: K1,
|
|
2004
|
+
hash: number
|
|
2005
|
+
): Effect.Effect<Option.Option<V>> => TxRef.get(self.ref).pipe(Effect.map((map) => HashMap.getHash(map, key, hash)))
|
|
1971
2006
|
)
|
|
1972
2007
|
|
|
1973
2008
|
/**
|
|
@@ -2110,8 +2145,11 @@ export const hasHash: {
|
|
|
2110
2145
|
<K1 extends K, K, V>(self: TxHashMap<K, V>, key: K1, hash: number): Effect.Effect<boolean>
|
|
2111
2146
|
} = dual(
|
|
2112
2147
|
3,
|
|
2113
|
-
<K1 extends K, K, V>(
|
|
2114
|
-
|
|
2148
|
+
<K1 extends K, K, V>(
|
|
2149
|
+
self: TxHashMap<K, V>,
|
|
2150
|
+
key: K1,
|
|
2151
|
+
hash: number
|
|
2152
|
+
): Effect.Effect<boolean> => TxRef.get(self.ref).pipe(Effect.map((map) => HashMap.hasHash(map, key, hash)))
|
|
2115
2153
|
)
|
|
2116
2154
|
|
|
2117
2155
|
/**
|
|
@@ -2254,14 +2292,15 @@ export const map: {
|
|
|
2254
2292
|
<K, V, A>(self: TxHashMap<K, V>, f: (value: V, key: K) => A): Effect.Effect<TxHashMap<K, A>>
|
|
2255
2293
|
} = dual(
|
|
2256
2294
|
2,
|
|
2257
|
-
<K, V, A>(
|
|
2258
|
-
|
|
2259
|
-
|
|
2260
|
-
|
|
2261
|
-
|
|
2262
|
-
|
|
2263
|
-
|
|
2264
|
-
|
|
2295
|
+
<K, V, A>(
|
|
2296
|
+
self: TxHashMap<K, V>,
|
|
2297
|
+
f: (value: V, key: K) => A
|
|
2298
|
+
): Effect.Effect<TxHashMap<K, A>> =>
|
|
2299
|
+
Effect.gen(function*() {
|
|
2300
|
+
const currentMap = yield* TxRef.get(self.ref)
|
|
2301
|
+
const mappedMap = HashMap.map(currentMap, f)
|
|
2302
|
+
return yield* fromHashMap(mappedMap)
|
|
2303
|
+
}).pipe(Effect.tx)
|
|
2265
2304
|
)
|
|
2266
2305
|
|
|
2267
2306
|
/**
|
|
@@ -2511,14 +2550,15 @@ export const filter: {
|
|
|
2511
2550
|
<K, V>(self: TxHashMap<K, V>, predicate: (value: V, key: K) => boolean): Effect.Effect<TxHashMap<K, V>>
|
|
2512
2551
|
} = dual(
|
|
2513
2552
|
2,
|
|
2514
|
-
<K, V>(
|
|
2515
|
-
|
|
2516
|
-
|
|
2517
|
-
|
|
2518
|
-
|
|
2519
|
-
|
|
2520
|
-
|
|
2521
|
-
|
|
2553
|
+
<K, V>(
|
|
2554
|
+
self: TxHashMap<K, V>,
|
|
2555
|
+
predicate: (value: V, key: K) => boolean
|
|
2556
|
+
): Effect.Effect<TxHashMap<K, V>> =>
|
|
2557
|
+
Effect.gen(function*() {
|
|
2558
|
+
const currentMap = yield* TxRef.get(self.ref)
|
|
2559
|
+
const filteredMap = HashMap.filter(currentMap, predicate)
|
|
2560
|
+
return yield* fromHashMap(filteredMap)
|
|
2561
|
+
}).pipe(Effect.tx)
|
|
2522
2562
|
)
|
|
2523
2563
|
|
|
2524
2564
|
/**
|
|
@@ -2688,20 +2728,23 @@ export const reduce: {
|
|
|
2688
2728
|
<K, V, A>(self: TxHashMap<K, V>, zero: A, f: (accumulator: A, value: V, key: K) => A): Effect.Effect<A>
|
|
2689
2729
|
} = dual(
|
|
2690
2730
|
3,
|
|
2691
|
-
<K, V, A>(
|
|
2692
|
-
|
|
2731
|
+
<K, V, A>(
|
|
2732
|
+
self: TxHashMap<K, V>,
|
|
2733
|
+
zero: A,
|
|
2734
|
+
f: (accumulator: A, value: V, key: K) => A
|
|
2735
|
+
): Effect.Effect<A> => TxRef.get(self.ref).pipe(Effect.map((map) => HashMap.reduce(map, zero, f)))
|
|
2693
2736
|
)
|
|
2694
2737
|
|
|
2695
2738
|
/**
|
|
2696
|
-
* Combines filtering and mapping in a single operation. Applies a
|
|
2697
|
-
*
|
|
2739
|
+
* Combines filtering and mapping in a single operation. Applies a filter to each
|
|
2740
|
+
* entry, keeping only successful results and transforming them.
|
|
2698
2741
|
*
|
|
2699
2742
|
* **Return behavior**: This function returns a new TxHashMap reference containing
|
|
2700
|
-
* only the transformed entries that
|
|
2743
|
+
* only the transformed entries that succeeded. The original TxHashMap is not modified.
|
|
2701
2744
|
*
|
|
2702
2745
|
* @example
|
|
2703
2746
|
* ```ts
|
|
2704
|
-
* import { Effect, Option, TxHashMap } from "effect"
|
|
2747
|
+
* import { Effect, Option, Result, TxHashMap } from "effect"
|
|
2705
2748
|
*
|
|
2706
2749
|
* const program = Effect.gen(function*() {
|
|
2707
2750
|
* // Create a mixed data map
|
|
@@ -2716,10 +2759,10 @@ export const reduce: {
|
|
|
2716
2759
|
* const activeAdminAges = yield* TxHashMap.filterMap(
|
|
2717
2760
|
* userData,
|
|
2718
2761
|
* (user, username) => {
|
|
2719
|
-
* if (!user.active || user.role !== "admin") return
|
|
2762
|
+
* if (!user.active || user.role !== "admin") return Result.failVoid
|
|
2720
2763
|
* const age = parseInt(user.age)
|
|
2721
|
-
* if (isNaN(age)) return
|
|
2722
|
-
* return
|
|
2764
|
+
* if (isNaN(age)) return Result.failVoid
|
|
2765
|
+
* return Result.succeed({
|
|
2723
2766
|
* username,
|
|
2724
2767
|
* age,
|
|
2725
2768
|
* seniority: age > 27 ? "senior" : "junior"
|
|
@@ -2737,7 +2780,7 @@ export const reduce: {
|
|
|
2737
2780
|
* const validAges = yield* userData.pipe(
|
|
2738
2781
|
* TxHashMap.filterMap((user) => {
|
|
2739
2782
|
* const age = parseInt(user.age)
|
|
2740
|
-
* return isNaN(age) ?
|
|
2783
|
+
* return isNaN(age) ? Result.failVoid : Result.succeed(age)
|
|
2741
2784
|
* })
|
|
2742
2785
|
* )
|
|
2743
2786
|
*
|
|
@@ -2751,15 +2794,15 @@ export const reduce: {
|
|
|
2751
2794
|
*/
|
|
2752
2795
|
export const filterMap: {
|
|
2753
2796
|
/**
|
|
2754
|
-
* Combines filtering and mapping in a single operation. Applies a
|
|
2755
|
-
*
|
|
2797
|
+
* Combines filtering and mapping in a single operation. Applies a filter to each
|
|
2798
|
+
* entry, keeping only successful results and transforming them.
|
|
2756
2799
|
*
|
|
2757
2800
|
* **Return behavior**: This function returns a new TxHashMap reference containing
|
|
2758
|
-
* only the transformed entries that
|
|
2801
|
+
* only the transformed entries that succeeded. The original TxHashMap is not modified.
|
|
2759
2802
|
*
|
|
2760
2803
|
* @example
|
|
2761
2804
|
* ```ts
|
|
2762
|
-
* import { Effect, Option, TxHashMap } from "effect"
|
|
2805
|
+
* import { Effect, Option, Result, TxHashMap } from "effect"
|
|
2763
2806
|
*
|
|
2764
2807
|
* const program = Effect.gen(function*() {
|
|
2765
2808
|
* // Create a mixed data map
|
|
@@ -2774,10 +2817,10 @@ export const filterMap: {
|
|
|
2774
2817
|
* const activeAdminAges = yield* TxHashMap.filterMap(
|
|
2775
2818
|
* userData,
|
|
2776
2819
|
* (user, username) => {
|
|
2777
|
-
* if (!user.active || user.role !== "admin") return
|
|
2820
|
+
* if (!user.active || user.role !== "admin") return Result.failVoid
|
|
2778
2821
|
* const age = parseInt(user.age)
|
|
2779
|
-
* if (isNaN(age)) return
|
|
2780
|
-
* return
|
|
2822
|
+
* if (isNaN(age)) return Result.failVoid
|
|
2823
|
+
* return Result.succeed({
|
|
2781
2824
|
* username,
|
|
2782
2825
|
* age,
|
|
2783
2826
|
* seniority: age > 27 ? "senior" : "junior"
|
|
@@ -2795,7 +2838,7 @@ export const filterMap: {
|
|
|
2795
2838
|
* const validAges = yield* userData.pipe(
|
|
2796
2839
|
* TxHashMap.filterMap((user) => {
|
|
2797
2840
|
* const age = parseInt(user.age)
|
|
2798
|
-
* return isNaN(age) ?
|
|
2841
|
+
* return isNaN(age) ? Result.failVoid : Result.succeed(age)
|
|
2799
2842
|
* })
|
|
2800
2843
|
* )
|
|
2801
2844
|
*
|
|
@@ -2807,17 +2850,17 @@ export const filterMap: {
|
|
|
2807
2850
|
* @since 2.0.0
|
|
2808
2851
|
* @category combinators
|
|
2809
2852
|
*/
|
|
2810
|
-
<
|
|
2853
|
+
<V, K, A, X>(f: (input: V, key: K) => Result<A, X>): (self: TxHashMap<K, V>) => Effect.Effect<TxHashMap<K, A>>
|
|
2811
2854
|
/**
|
|
2812
|
-
* Combines filtering and mapping in a single operation. Applies a
|
|
2813
|
-
*
|
|
2855
|
+
* Combines filtering and mapping in a single operation. Applies a filter to each
|
|
2856
|
+
* entry, keeping only successful results and transforming them.
|
|
2814
2857
|
*
|
|
2815
2858
|
* **Return behavior**: This function returns a new TxHashMap reference containing
|
|
2816
|
-
* only the transformed entries that
|
|
2859
|
+
* only the transformed entries that succeeded. The original TxHashMap is not modified.
|
|
2817
2860
|
*
|
|
2818
2861
|
* @example
|
|
2819
2862
|
* ```ts
|
|
2820
|
-
* import { Effect, Option, TxHashMap } from "effect"
|
|
2863
|
+
* import { Effect, Option, Result, TxHashMap } from "effect"
|
|
2821
2864
|
*
|
|
2822
2865
|
* const program = Effect.gen(function*() {
|
|
2823
2866
|
* // Create a mixed data map
|
|
@@ -2832,10 +2875,10 @@ export const filterMap: {
|
|
|
2832
2875
|
* const activeAdminAges = yield* TxHashMap.filterMap(
|
|
2833
2876
|
* userData,
|
|
2834
2877
|
* (user, username) => {
|
|
2835
|
-
* if (!user.active || user.role !== "admin") return
|
|
2878
|
+
* if (!user.active || user.role !== "admin") return Result.failVoid
|
|
2836
2879
|
* const age = parseInt(user.age)
|
|
2837
|
-
* if (isNaN(age)) return
|
|
2838
|
-
* return
|
|
2880
|
+
* if (isNaN(age)) return Result.failVoid
|
|
2881
|
+
* return Result.succeed({
|
|
2839
2882
|
* username,
|
|
2840
2883
|
* age,
|
|
2841
2884
|
* seniority: age > 27 ? "senior" : "junior"
|
|
@@ -2853,7 +2896,7 @@ export const filterMap: {
|
|
|
2853
2896
|
* const validAges = yield* userData.pipe(
|
|
2854
2897
|
* TxHashMap.filterMap((user) => {
|
|
2855
2898
|
* const age = parseInt(user.age)
|
|
2856
|
-
* return isNaN(age) ?
|
|
2899
|
+
* return isNaN(age) ? Result.failVoid : Result.succeed(age)
|
|
2857
2900
|
* })
|
|
2858
2901
|
* )
|
|
2859
2902
|
*
|
|
@@ -2865,17 +2908,18 @@ export const filterMap: {
|
|
|
2865
2908
|
* @since 2.0.0
|
|
2866
2909
|
* @category combinators
|
|
2867
2910
|
*/
|
|
2868
|
-
<K, V, A>(self: TxHashMap<K, V>, f: (
|
|
2911
|
+
<K, V, A, X>(self: TxHashMap<K, V>, f: (input: V, key: K) => Result<A, X>): Effect.Effect<TxHashMap<K, A>>
|
|
2869
2912
|
} = dual(
|
|
2870
2913
|
2,
|
|
2871
|
-
<K, V, A
|
|
2872
|
-
|
|
2873
|
-
|
|
2874
|
-
|
|
2875
|
-
|
|
2876
|
-
|
|
2877
|
-
|
|
2878
|
-
|
|
2914
|
+
<K, V, A, X>(
|
|
2915
|
+
self: TxHashMap<K, V>,
|
|
2916
|
+
f: (input: V, key: K) => Result<A, X>
|
|
2917
|
+
): Effect.Effect<TxHashMap<K, A>> =>
|
|
2918
|
+
Effect.gen(function*() {
|
|
2919
|
+
const currentMap = yield* TxRef.get(self.ref)
|
|
2920
|
+
const filteredMap = HashMap.filterMap(currentMap, f)
|
|
2921
|
+
return yield* fromHashMap(filteredMap)
|
|
2922
|
+
}).pipe(Effect.tx)
|
|
2879
2923
|
)
|
|
2880
2924
|
|
|
2881
2925
|
/**
|
|
@@ -3003,8 +3047,10 @@ export const hasBy: {
|
|
|
3003
3047
|
<K, V>(self: TxHashMap<K, V>, predicate: (value: V, key: K) => boolean): Effect.Effect<boolean>
|
|
3004
3048
|
} = dual(
|
|
3005
3049
|
2,
|
|
3006
|
-
<K, V>(
|
|
3007
|
-
|
|
3050
|
+
<K, V>(
|
|
3051
|
+
self: TxHashMap<K, V>,
|
|
3052
|
+
predicate: (value: V, key: K) => boolean
|
|
3053
|
+
): Effect.Effect<boolean> => TxRef.get(self.ref).pipe(Effect.map((map) => HashMap.hasBy(map, predicate)))
|
|
3008
3054
|
)
|
|
3009
3055
|
|
|
3010
3056
|
/**
|
|
@@ -3029,8 +3075,8 @@ export const hasBy: {
|
|
|
3029
3075
|
* (task) => task.priority >= 2 && !task.completed
|
|
3030
3076
|
* )
|
|
3031
3077
|
*
|
|
3032
|
-
* if (highPriorityTask) {
|
|
3033
|
-
* const [taskId, task] = highPriorityTask
|
|
3078
|
+
* if (highPriorityTask._tag === "Some") {
|
|
3079
|
+
* const [taskId, task] = highPriorityTask.value
|
|
3034
3080
|
* console.log(`Found task: ${taskId}, priority: ${task.priority}`)
|
|
3035
3081
|
* // "Found task: task3, priority: 2"
|
|
3036
3082
|
* }
|
|
@@ -3040,8 +3086,8 @@ export const hasBy: {
|
|
|
3040
3086
|
* TxHashMap.findFirst((task) => task.assignee === "alice")
|
|
3041
3087
|
* )
|
|
3042
3088
|
*
|
|
3043
|
-
* if (aliceTask) {
|
|
3044
|
-
* console.log(`Alice's task: ${aliceTask[0]}`)
|
|
3089
|
+
* if (aliceTask._tag === "Some") {
|
|
3090
|
+
* console.log(`Alice's task: ${aliceTask.value[0]}`)
|
|
3045
3091
|
* }
|
|
3046
3092
|
* })
|
|
3047
3093
|
* ```
|
|
@@ -3072,8 +3118,8 @@ export const findFirst: {
|
|
|
3072
3118
|
* (task) => task.priority >= 2 && !task.completed
|
|
3073
3119
|
* )
|
|
3074
3120
|
*
|
|
3075
|
-
* if (highPriorityTask) {
|
|
3076
|
-
* const [taskId, task] = highPriorityTask
|
|
3121
|
+
* if (highPriorityTask._tag === "Some") {
|
|
3122
|
+
* const [taskId, task] = highPriorityTask.value
|
|
3077
3123
|
* console.log(`Found task: ${taskId}, priority: ${task.priority}`)
|
|
3078
3124
|
* // "Found task: task3, priority: 2"
|
|
3079
3125
|
* }
|
|
@@ -3083,8 +3129,8 @@ export const findFirst: {
|
|
|
3083
3129
|
* TxHashMap.findFirst((task) => task.assignee === "alice")
|
|
3084
3130
|
* )
|
|
3085
3131
|
*
|
|
3086
|
-
* if (aliceTask) {
|
|
3087
|
-
* console.log(`Alice's task: ${aliceTask[0]}`)
|
|
3132
|
+
* if (aliceTask._tag === "Some") {
|
|
3133
|
+
* console.log(`Alice's task: ${aliceTask.value[0]}`)
|
|
3088
3134
|
* }
|
|
3089
3135
|
* })
|
|
3090
3136
|
* ```
|
|
@@ -3092,7 +3138,7 @@ export const findFirst: {
|
|
|
3092
3138
|
* @since 2.0.0
|
|
3093
3139
|
* @category combinators
|
|
3094
3140
|
*/
|
|
3095
|
-
<K, V>(predicate: (value: V, key: K) => boolean): (self: TxHashMap<K, V>) => Effect.Effect<[K, V]
|
|
3141
|
+
<K, V>(predicate: (value: V, key: K) => boolean): (self: TxHashMap<K, V>) => Effect.Effect<Option.Option<[K, V]>>
|
|
3096
3142
|
/**
|
|
3097
3143
|
* Finds the first entry in the TxHashMap that matches the given predicate.
|
|
3098
3144
|
* Returns the key-value pair as a tuple wrapped in an Option.
|
|
@@ -3115,8 +3161,8 @@ export const findFirst: {
|
|
|
3115
3161
|
* (task) => task.priority >= 2 && !task.completed
|
|
3116
3162
|
* )
|
|
3117
3163
|
*
|
|
3118
|
-
* if (highPriorityTask) {
|
|
3119
|
-
* const [taskId, task] = highPriorityTask
|
|
3164
|
+
* if (highPriorityTask._tag === "Some") {
|
|
3165
|
+
* const [taskId, task] = highPriorityTask.value
|
|
3120
3166
|
* console.log(`Found task: ${taskId}, priority: ${task.priority}`)
|
|
3121
3167
|
* // "Found task: task3, priority: 2"
|
|
3122
3168
|
* }
|
|
@@ -3126,8 +3172,8 @@ export const findFirst: {
|
|
|
3126
3172
|
* TxHashMap.findFirst((task) => task.assignee === "alice")
|
|
3127
3173
|
* )
|
|
3128
3174
|
*
|
|
3129
|
-
* if (aliceTask) {
|
|
3130
|
-
* console.log(`Alice's task: ${aliceTask[0]}`)
|
|
3175
|
+
* if (aliceTask._tag === "Some") {
|
|
3176
|
+
* console.log(`Alice's task: ${aliceTask.value[0]}`)
|
|
3131
3177
|
* }
|
|
3132
3178
|
* })
|
|
3133
3179
|
* ```
|
|
@@ -3135,10 +3181,13 @@ export const findFirst: {
|
|
|
3135
3181
|
* @since 2.0.0
|
|
3136
3182
|
* @category combinators
|
|
3137
3183
|
*/
|
|
3138
|
-
<K, V>(self: TxHashMap<K, V>, predicate: (value: V, key: K) => boolean): Effect.Effect<[K, V]
|
|
3184
|
+
<K, V>(self: TxHashMap<K, V>, predicate: (value: V, key: K) => boolean): Effect.Effect<Option.Option<[K, V]>>
|
|
3139
3185
|
} = dual(
|
|
3140
3186
|
2,
|
|
3141
|
-
<K, V>(
|
|
3187
|
+
<K, V>(
|
|
3188
|
+
self: TxHashMap<K, V>,
|
|
3189
|
+
predicate: (value: V, key: K) => boolean
|
|
3190
|
+
): Effect.Effect<Option.Option<[K, V]>> =>
|
|
3142
3191
|
TxRef.get(self.ref).pipe(Effect.map((map) => HashMap.findFirst(map, predicate)))
|
|
3143
3192
|
)
|
|
3144
3193
|
|
|
@@ -3267,8 +3316,10 @@ export const some: {
|
|
|
3267
3316
|
<K, V>(self: TxHashMap<K, V>, predicate: (value: V, key: K) => boolean): Effect.Effect<boolean>
|
|
3268
3317
|
} = dual(
|
|
3269
3318
|
2,
|
|
3270
|
-
<K, V>(
|
|
3271
|
-
|
|
3319
|
+
<K, V>(
|
|
3320
|
+
self: TxHashMap<K, V>,
|
|
3321
|
+
predicate: (value: V, key: K) => boolean
|
|
3322
|
+
): Effect.Effect<boolean> => TxRef.get(self.ref).pipe(Effect.map((map) => HashMap.some(map, predicate)))
|
|
3272
3323
|
)
|
|
3273
3324
|
|
|
3274
3325
|
/**
|
|
@@ -3396,8 +3447,10 @@ export const every: {
|
|
|
3396
3447
|
<K, V>(self: TxHashMap<K, V>, predicate: (value: V, key: K) => boolean): Effect.Effect<boolean>
|
|
3397
3448
|
} = dual(
|
|
3398
3449
|
2,
|
|
3399
|
-
<K, V>(
|
|
3400
|
-
|
|
3450
|
+
<K, V>(
|
|
3451
|
+
self: TxHashMap<K, V>,
|
|
3452
|
+
predicate: (value: V, key: K) => boolean
|
|
3453
|
+
): Effect.Effect<boolean> => TxRef.get(self.ref).pipe(Effect.map((map) => HashMap.every(map, predicate)))
|
|
3401
3454
|
)
|
|
3402
3455
|
|
|
3403
3456
|
/**
|
|
@@ -3528,7 +3581,10 @@ export const forEach: {
|
|
|
3528
3581
|
<K, V, R, E>(self: TxHashMap<K, V>, f: (value: V, key: K) => Effect.Effect<void, E, R>): Effect.Effect<void, E, R>
|
|
3529
3582
|
} = dual(
|
|
3530
3583
|
2,
|
|
3531
|
-
<K, V, R, E>(
|
|
3584
|
+
<K, V, R, E>(
|
|
3585
|
+
self: TxHashMap<K, V>,
|
|
3586
|
+
f: (value: V, key: K) => Effect.Effect<void, E, R>
|
|
3587
|
+
): Effect.Effect<void, E, R> =>
|
|
3532
3588
|
Effect.gen(function*() {
|
|
3533
3589
|
const currentMap = yield* TxRef.get(self.ref)
|
|
3534
3590
|
const entries = HashMap.toEntries(currentMap)
|
|
@@ -3701,123 +3757,121 @@ export const flatMap: {
|
|
|
3701
3757
|
self: TxHashMap<K, V>,
|
|
3702
3758
|
f: (value: V, key: K) => Effect.Effect<TxHashMap<K, A>>
|
|
3703
3759
|
): Effect.Effect<TxHashMap<K, A>> =>
|
|
3704
|
-
Effect.
|
|
3705
|
-
|
|
3706
|
-
|
|
3707
|
-
|
|
3708
|
-
|
|
3709
|
-
|
|
3710
|
-
|
|
3711
|
-
|
|
3712
|
-
|
|
3713
|
-
|
|
3714
|
-
|
|
3715
|
-
|
|
3716
|
-
|
|
3717
|
-
|
|
3718
|
-
|
|
3719
|
-
|
|
3720
|
-
|
|
3721
|
-
|
|
3722
|
-
|
|
3723
|
-
|
|
3724
|
-
|
|
3725
|
-
|
|
3726
|
-
|
|
3727
|
-
|
|
3728
|
-
|
|
3729
|
-
*
|
|
3730
|
-
|
|
3731
|
-
|
|
3732
|
-
|
|
3733
|
-
|
|
3734
|
-
|
|
3735
|
-
|
|
3736
|
-
|
|
3737
|
-
|
|
3738
|
-
|
|
3739
|
-
|
|
3740
|
-
|
|
3741
|
-
|
|
3742
|
-
|
|
3743
|
-
|
|
3744
|
-
|
|
3745
|
-
|
|
3746
|
-
|
|
3747
|
-
|
|
3748
|
-
|
|
3749
|
-
|
|
3750
|
-
|
|
3751
|
-
|
|
3752
|
-
|
|
3753
|
-
|
|
3754
|
-
|
|
3755
|
-
|
|
3756
|
-
|
|
3757
|
-
|
|
3758
|
-
|
|
3759
|
-
|
|
3760
|
-
|
|
3761
|
-
|
|
3762
|
-
|
|
3763
|
-
|
|
3764
|
-
|
|
3765
|
-
|
|
3766
|
-
|
|
3767
|
-
|
|
3768
|
-
|
|
3769
|
-
|
|
3770
|
-
|
|
3771
|
-
|
|
3772
|
-
|
|
3773
|
-
|
|
3774
|
-
|
|
3775
|
-
|
|
3776
|
-
|
|
3777
|
-
|
|
3778
|
-
|
|
3779
|
-
|
|
3780
|
-
*
|
|
3781
|
-
|
|
3782
|
-
|
|
3783
|
-
|
|
3784
|
-
|
|
3785
|
-
|
|
3786
|
-
|
|
3787
|
-
|
|
3788
|
-
|
|
3789
|
-
|
|
3790
|
-
|
|
3791
|
-
|
|
3792
|
-
|
|
3793
|
-
|
|
3794
|
-
|
|
3795
|
-
|
|
3796
|
-
|
|
3797
|
-
|
|
3798
|
-
|
|
3799
|
-
|
|
3800
|
-
|
|
3801
|
-
|
|
3802
|
-
|
|
3803
|
-
|
|
3804
|
-
|
|
3805
|
-
|
|
3806
|
-
|
|
3807
|
-
|
|
3808
|
-
|
|
3809
|
-
A>()
|
|
3760
|
+
Effect.gen(function*() {
|
|
3761
|
+
const currentMap = yield* TxRef.get(self.ref)
|
|
3762
|
+
const result = yield* empty</**
|
|
3763
|
+
* Transforms the TxHashMap by applying a function that returns a TxHashMap to each entry,
|
|
3764
|
+
* then flattening the results. Useful for complex transformations that require creating new maps.
|
|
3765
|
+
*
|
|
3766
|
+
* **Return behavior**: This function returns a new TxHashMap reference with the
|
|
3767
|
+
* flattened results. The original TxHashMap is not modified.
|
|
3768
|
+
*
|
|
3769
|
+
* @example
|
|
3770
|
+
* ```ts
|
|
3771
|
+
* import { Effect, TxHashMap } from "effect"
|
|
3772
|
+
*
|
|
3773
|
+
* const program = Effect.gen(function*() {
|
|
3774
|
+
* // Create a department-employee map
|
|
3775
|
+
* const departments = yield* TxHashMap.make(
|
|
3776
|
+
* ["engineering", ["alice", "bob"]],
|
|
3777
|
+
* ["marketing", ["charlie", "diana"]]
|
|
3778
|
+
* )
|
|
3779
|
+
*
|
|
3780
|
+
* // Expand each department into individual employee entries with metadata
|
|
3781
|
+
* const employeeDetails = yield* TxHashMap.flatMap(
|
|
3782
|
+
* departments,
|
|
3783
|
+
* (employees, department) =>
|
|
3784
|
+
* Effect.gen(function*() {
|
|
3785
|
+
* const employeeMap = yield* TxHashMap.empty<
|
|
3786
|
+
* string,
|
|
3787
|
+
* { department: string; role: string }
|
|
3788
|
+
* >()
|
|
3789
|
+
* for (let i = 0; i < employees.length; i++) {
|
|
3790
|
+
* const employee = employees[i]
|
|
3791
|
+
* const role = i === 0 ? "lead" : "member"
|
|
3792
|
+
* yield* TxHashMap.set(employeeMap, employee, { department, role })
|
|
3793
|
+
* }
|
|
3794
|
+
* return employeeMap
|
|
3795
|
+
* })
|
|
3796
|
+
* )
|
|
3797
|
+
*
|
|
3798
|
+
* // Check the flattened result
|
|
3799
|
+
* const alice = yield* TxHashMap.get(employeeDetails, "alice")
|
|
3800
|
+
* console.log(alice) // Option.some({ department: "engineering", role: "lead" })
|
|
3801
|
+
*
|
|
3802
|
+
* const charlie = yield* TxHashMap.get(employeeDetails, "charlie")
|
|
3803
|
+
* console.log(charlie) // Option.some({ department: "marketing", role: "lead" })
|
|
3804
|
+
*
|
|
3805
|
+
* const size = yield* TxHashMap.size(employeeDetails)
|
|
3806
|
+
* console.log(size) // 4 (all employees)
|
|
3807
|
+
* })
|
|
3808
|
+
* ```
|
|
3809
|
+
*
|
|
3810
|
+
* @since 2.0.0
|
|
3811
|
+
* @category combinators
|
|
3812
|
+
*/
|
|
3813
|
+
K, /**
|
|
3814
|
+
* Transforms the TxHashMap by applying a function that returns a TxHashMap to each entry,
|
|
3815
|
+
* then flattening the results. Useful for complex transformations that require creating new maps.
|
|
3816
|
+
*
|
|
3817
|
+
* **Return behavior**: This function returns a new TxHashMap reference with the
|
|
3818
|
+
* flattened results. The original TxHashMap is not modified.
|
|
3819
|
+
*
|
|
3820
|
+
* @example
|
|
3821
|
+
* ```ts
|
|
3822
|
+
* import { Effect, TxHashMap } from "effect"
|
|
3823
|
+
*
|
|
3824
|
+
* const program = Effect.gen(function*() {
|
|
3825
|
+
* // Create a department-employee map
|
|
3826
|
+
* const departments = yield* TxHashMap.make(
|
|
3827
|
+
* ["engineering", ["alice", "bob"]],
|
|
3828
|
+
* ["marketing", ["charlie", "diana"]]
|
|
3829
|
+
* )
|
|
3830
|
+
*
|
|
3831
|
+
* // Expand each department into individual employee entries with metadata
|
|
3832
|
+
* const employeeDetails = yield* TxHashMap.flatMap(
|
|
3833
|
+
* departments,
|
|
3834
|
+
* (employees, department) =>
|
|
3835
|
+
* Effect.gen(function*() {
|
|
3836
|
+
* const employeeMap = yield* TxHashMap.empty<
|
|
3837
|
+
* string,
|
|
3838
|
+
* { department: string; role: string }
|
|
3839
|
+
* >()
|
|
3840
|
+
* for (let i = 0; i < employees.length; i++) {
|
|
3841
|
+
* const employee = employees[i]
|
|
3842
|
+
* const role = i === 0 ? "lead" : "member"
|
|
3843
|
+
* yield* TxHashMap.set(employeeMap, employee, { department, role })
|
|
3844
|
+
* }
|
|
3845
|
+
* return employeeMap
|
|
3846
|
+
* })
|
|
3847
|
+
* )
|
|
3848
|
+
*
|
|
3849
|
+
* // Check the flattened result
|
|
3850
|
+
* const alice = yield* TxHashMap.get(employeeDetails, "alice")
|
|
3851
|
+
* console.log(alice) // Option.some({ department: "engineering", role: "lead" })
|
|
3852
|
+
*
|
|
3853
|
+
* const charlie = yield* TxHashMap.get(employeeDetails, "charlie")
|
|
3854
|
+
* console.log(charlie) // Option.some({ department: "marketing", role: "lead" })
|
|
3855
|
+
*
|
|
3856
|
+
* const size = yield* TxHashMap.size(employeeDetails)
|
|
3857
|
+
* console.log(size) // 4 (all employees)
|
|
3858
|
+
* })
|
|
3859
|
+
* ```
|
|
3860
|
+
*
|
|
3861
|
+
* @since 2.0.0
|
|
3862
|
+
* @category combinators
|
|
3863
|
+
*/
|
|
3864
|
+
A>()
|
|
3810
3865
|
|
|
3811
|
-
|
|
3812
|
-
|
|
3813
|
-
|
|
3814
|
-
|
|
3815
|
-
|
|
3816
|
-
|
|
3866
|
+
const mapEntries = HashMap.toEntries(currentMap)
|
|
3867
|
+
for (const [key, value] of mapEntries) {
|
|
3868
|
+
const newMap = yield* f(value, key)
|
|
3869
|
+
const newEntries = yield* entries(newMap)
|
|
3870
|
+
yield* setMany(result, newEntries)
|
|
3871
|
+
}
|
|
3817
3872
|
|
|
3818
|
-
|
|
3819
|
-
|
|
3820
|
-
)
|
|
3873
|
+
return result
|
|
3874
|
+
}).pipe(Effect.tx)
|
|
3821
3875
|
)
|
|
3822
3876
|
|
|
3823
3877
|
/**
|
|
@@ -3865,14 +3919,14 @@ export const flatMap: {
|
|
|
3865
3919
|
* @since 2.0.0
|
|
3866
3920
|
* @category combinators
|
|
3867
3921
|
*/
|
|
3868
|
-
export const compact = <K, A>(
|
|
3869
|
-
|
|
3870
|
-
|
|
3871
|
-
|
|
3872
|
-
|
|
3873
|
-
|
|
3874
|
-
|
|
3875
|
-
)
|
|
3922
|
+
export const compact = <K, A>(
|
|
3923
|
+
self: TxHashMap<K, Option.Option<A>>
|
|
3924
|
+
): Effect.Effect<TxHashMap<K, A>> =>
|
|
3925
|
+
Effect.gen(function*() {
|
|
3926
|
+
const currentMap = yield* TxRef.get(self.ref)
|
|
3927
|
+
const compactedMap = HashMap.compact(currentMap)
|
|
3928
|
+
return yield* fromHashMap(compactedMap)
|
|
3929
|
+
}).pipe(Effect.tx)
|
|
3876
3930
|
|
|
3877
3931
|
/**
|
|
3878
3932
|
* Returns an array of all key-value pairs in the TxHashMap.
|
|
@@ -3908,7 +3962,9 @@ export const compact = <K, A>(self: TxHashMap<K, Option.Option<A>>): Effect.Effe
|
|
|
3908
3962
|
* @since 2.0.0
|
|
3909
3963
|
* @category combinators
|
|
3910
3964
|
*/
|
|
3911
|
-
export const toEntries = <K, V>(
|
|
3965
|
+
export const toEntries = <K, V>(
|
|
3966
|
+
self: TxHashMap<K, V>
|
|
3967
|
+
): Effect.Effect<Array<readonly [K, V]>> => entries(self)
|
|
3912
3968
|
|
|
3913
3969
|
/**
|
|
3914
3970
|
* Returns an array of all values in the TxHashMap.
|