effect 4.0.0-beta.101 → 4.0.0-beta.103
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Array.d.ts +971 -1037
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +462 -412
- package/dist/Array.js.map +1 -1
- package/dist/BigDecimal.d.ts +433 -756
- package/dist/BigDecimal.d.ts.map +1 -1
- package/dist/BigDecimal.js +200 -325
- package/dist/BigDecimal.js.map +1 -1
- package/dist/BigInt.d.ts +207 -267
- package/dist/BigInt.d.ts.map +1 -1
- package/dist/BigInt.js +107 -135
- package/dist/BigInt.js.map +1 -1
- package/dist/Boolean.d.ts +146 -188
- package/dist/Boolean.d.ts.map +1 -1
- package/dist/Boolean.js +64 -84
- package/dist/Boolean.js.map +1 -1
- package/dist/Brand.js.map +1 -1
- package/dist/Cache.d.ts +405 -254
- package/dist/Cache.d.ts.map +1 -1
- package/dist/Cache.js +166 -101
- package/dist/Cache.js.map +1 -1
- package/dist/Cause.d.ts +167 -277
- package/dist/Cause.d.ts.map +1 -1
- package/dist/Cause.js +122 -176
- package/dist/Cause.js.map +1 -1
- package/dist/Channel.d.ts +729 -768
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +541 -449
- package/dist/Channel.js.map +1 -1
- package/dist/ChannelSchema.d.ts +1 -1
- package/dist/ChannelSchema.d.ts.map +1 -1
- package/dist/ChannelSchema.js.map +1 -1
- package/dist/Chunk.d.ts +834 -1173
- package/dist/Chunk.d.ts.map +1 -1
- package/dist/Chunk.js +326 -439
- package/dist/Chunk.js.map +1 -1
- package/dist/Clock.d.ts +180 -49
- package/dist/Clock.d.ts.map +1 -1
- package/dist/Clock.js +96 -31
- package/dist/Clock.js.map +1 -1
- package/dist/Combiner.d.ts +20 -33
- package/dist/Combiner.d.ts.map +1 -1
- package/dist/Combiner.js +18 -30
- package/dist/Combiner.js.map +1 -1
- package/dist/Config.d.ts +226 -174
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js +339 -267
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.d.ts +194 -68
- package/dist/ConfigProvider.d.ts.map +1 -1
- package/dist/ConfigProvider.js +122 -87
- package/dist/ConfigProvider.js.map +1 -1
- package/dist/Console.d.ts +233 -33
- package/dist/Console.d.ts.map +1 -1
- package/dist/Console.js +232 -32
- package/dist/Console.js.map +1 -1
- package/dist/Context.d.ts +151 -274
- package/dist/Context.d.ts.map +1 -1
- package/dist/Context.js +171 -214
- package/dist/Context.js.map +1 -1
- package/dist/Cron.d.ts +68 -77
- package/dist/Cron.d.ts.map +1 -1
- package/dist/Cron.js +57 -66
- package/dist/Cron.js.map +1 -1
- package/dist/Crypto.d.ts +13 -15
- package/dist/Crypto.d.ts.map +1 -1
- package/dist/Crypto.js +9 -10
- package/dist/Crypto.js.map +1 -1
- package/dist/Data.d.ts +60 -80
- package/dist/Data.d.ts.map +1 -1
- package/dist/Data.js +18 -24
- package/dist/Data.js.map +1 -1
- package/dist/DateTime.d.ts +562 -660
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/DateTime.js +307 -362
- package/dist/DateTime.js.map +1 -1
- package/dist/Deferred.d.ts +253 -256
- package/dist/Deferred.d.ts.map +1 -1
- package/dist/Deferred.js +104 -96
- package/dist/Deferred.js.map +1 -1
- package/dist/Duration.d.ts +216 -308
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +132 -186
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +2897 -3342
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +1383 -1580
- package/dist/Effect.js.map +1 -1
- package/dist/Effectable.js.map +1 -1
- package/dist/Encoding.d.ts +22 -40
- package/dist/Encoding.d.ts.map +1 -1
- package/dist/Encoding.js +22 -40
- package/dist/Encoding.js.map +1 -1
- package/dist/Equal.d.ts +33 -37
- package/dist/Equal.d.ts.map +1 -1
- package/dist/Equal.js +29 -21
- package/dist/Equal.js.map +1 -1
- package/dist/Equivalence.d.ts +103 -105
- package/dist/Equivalence.d.ts.map +1 -1
- package/dist/Equivalence.js +77 -79
- package/dist/Equivalence.js.map +1 -1
- package/dist/ErrorReporter.d.ts +51 -27
- package/dist/ErrorReporter.d.ts.map +1 -1
- package/dist/ErrorReporter.js +50 -26
- package/dist/ErrorReporter.js.map +1 -1
- package/dist/ExecutionPlan.d.ts +13 -55
- package/dist/ExecutionPlan.d.ts.map +1 -1
- package/dist/ExecutionPlan.js +7 -28
- package/dist/ExecutionPlan.js.map +1 -1
- package/dist/Exit.d.ts +116 -192
- package/dist/Exit.d.ts.map +1 -1
- package/dist/Exit.js +82 -130
- package/dist/Exit.js.map +1 -1
- package/dist/Fiber.d.ts +82 -146
- package/dist/Fiber.d.ts.map +1 -1
- package/dist/Fiber.js +48 -87
- package/dist/Fiber.js.map +1 -1
- package/dist/FiberHandle.d.ts +152 -105
- package/dist/FiberHandle.d.ts.map +1 -1
- package/dist/FiberHandle.js +109 -75
- package/dist/FiberHandle.js.map +1 -1
- package/dist/FiberMap.d.ts +213 -168
- package/dist/FiberMap.d.ts.map +1 -1
- package/dist/FiberMap.js +114 -89
- package/dist/FiberMap.js.map +1 -1
- package/dist/FiberSet.d.ts +123 -81
- package/dist/FiberSet.d.ts.map +1 -1
- package/dist/FiberSet.js +85 -59
- package/dist/FiberSet.js.map +1 -1
- package/dist/FileSystem.d.ts +153 -264
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js +42 -147
- package/dist/FileSystem.js.map +1 -1
- package/dist/Filter.d.ts +61 -33
- package/dist/Filter.d.ts.map +1 -1
- package/dist/Filter.js +26 -15
- package/dist/Filter.js.map +1 -1
- package/dist/Formatter.d.ts +25 -33
- package/dist/Formatter.d.ts.map +1 -1
- package/dist/Formatter.js +48 -49
- package/dist/Formatter.js.map +1 -1
- package/dist/Function.d.ts +76 -145
- package/dist/Function.d.ts.map +1 -1
- package/dist/Function.js +40 -57
- package/dist/Function.js.map +1 -1
- package/dist/Graph.d.ts +360 -714
- package/dist/Graph.d.ts.map +1 -1
- package/dist/Graph.js +168 -297
- package/dist/Graph.js.map +1 -1
- package/dist/HKT.d.ts +12 -6
- package/dist/HKT.d.ts.map +1 -1
- package/dist/Hash.d.ts +47 -83
- package/dist/Hash.d.ts.map +1 -1
- package/dist/Hash.js +46 -68
- package/dist/Hash.js.map +1 -1
- package/dist/HashMap.d.ts +319 -411
- package/dist/HashMap.d.ts.map +1 -1
- package/dist/HashMap.js +122 -166
- package/dist/HashMap.js.map +1 -1
- package/dist/HashRing.d.ts.map +1 -1
- package/dist/HashRing.js +1 -0
- package/dist/HashRing.js.map +1 -1
- package/dist/HashSet.d.ts +177 -284
- package/dist/HashSet.d.ts.map +1 -1
- package/dist/HashSet.js +68 -109
- package/dist/HashSet.js.map +1 -1
- package/dist/Inspectable.d.ts +12 -12
- package/dist/Inspectable.js +8 -8
- package/dist/Inspectable.js.map +1 -1
- package/dist/Iterable.d.ts +620 -786
- package/dist/Iterable.d.ts.map +1 -1
- package/dist/Iterable.js +230 -307
- package/dist/Iterable.js.map +1 -1
- package/dist/JsonPatch.d.ts +11 -13
- package/dist/JsonPatch.d.ts.map +1 -1
- package/dist/JsonPatch.js +46 -103
- package/dist/JsonPatch.js.map +1 -1
- package/dist/JsonPointer.d.ts +8 -8
- package/dist/JsonPointer.js +8 -8
- package/dist/JsonPointer.js.map +1 -1
- package/dist/JsonSchema.d.ts +98 -44
- package/dist/JsonSchema.d.ts.map +1 -1
- package/dist/JsonSchema.js +300 -239
- package/dist/JsonSchema.js.map +1 -1
- package/dist/Latch.d.ts +23 -35
- package/dist/Latch.d.ts.map +1 -1
- package/dist/Latch.js +16 -28
- package/dist/Latch.js.map +1 -1
- package/dist/Layer.d.ts +359 -260
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js +195 -175
- package/dist/Layer.js.map +1 -1
- package/dist/LayerMap.d.ts +42 -29
- package/dist/LayerMap.d.ts.map +1 -1
- package/dist/LayerMap.js +31 -21
- package/dist/LayerMap.js.map +1 -1
- package/dist/LayerRef.d.ts +6 -2
- package/dist/LayerRef.d.ts.map +1 -1
- package/dist/LayerRef.js +6 -2
- package/dist/LayerRef.js.map +1 -1
- package/dist/LogLevel.d.ts +114 -214
- package/dist/LogLevel.d.ts.map +1 -1
- package/dist/LogLevel.js +41 -76
- package/dist/LogLevel.js.map +1 -1
- package/dist/Logger.d.ts +218 -467
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js +207 -452
- package/dist/Logger.js.map +1 -1
- package/dist/ManagedRuntime.d.ts +16 -5
- package/dist/ManagedRuntime.d.ts.map +1 -1
- package/dist/ManagedRuntime.js +10 -5
- package/dist/ManagedRuntime.js.map +1 -1
- package/dist/Match.d.ts +217 -252
- package/dist/Match.d.ts.map +1 -1
- package/dist/Match.js +150 -183
- package/dist/Match.js.map +1 -1
- package/dist/Metric.d.ts +442 -993
- package/dist/Metric.d.ts.map +1 -1
- package/dist/Metric.js +202 -645
- package/dist/Metric.js.map +1 -1
- package/dist/MutableHashMap.d.ts +144 -173
- package/dist/MutableHashMap.d.ts.map +1 -1
- package/dist/MutableHashMap.js +68 -79
- package/dist/MutableHashMap.js.map +1 -1
- package/dist/MutableHashSet.d.ts +84 -89
- package/dist/MutableHashSet.d.ts.map +1 -1
- package/dist/MutableHashSet.js +44 -47
- package/dist/MutableHashSet.js.map +1 -1
- package/dist/MutableList.d.ts +71 -370
- package/dist/MutableList.d.ts.map +1 -1
- package/dist/MutableList.js +59 -284
- package/dist/MutableList.js.map +1 -1
- package/dist/MutableRef.d.ts +420 -243
- package/dist/MutableRef.d.ts.map +1 -1
- package/dist/MutableRef.js +209 -120
- package/dist/MutableRef.js.map +1 -1
- package/dist/Newtype.d.ts +21 -14
- package/dist/Newtype.d.ts.map +1 -1
- package/dist/Newtype.js +15 -13
- package/dist/Newtype.js.map +1 -1
- package/dist/NonEmptyIterable.d.ts +7 -137
- package/dist/NonEmptyIterable.d.ts.map +1 -1
- package/dist/NonEmptyIterable.js +5 -93
- package/dist/NonEmptyIterable.js.map +1 -1
- package/dist/Number.d.ts +196 -233
- package/dist/Number.d.ts.map +1 -1
- package/dist/Number.js +90 -109
- package/dist/Number.js.map +1 -1
- package/dist/Optic.d.ts +97 -189
- package/dist/Optic.d.ts.map +1 -1
- package/dist/Optic.js +190 -292
- package/dist/Optic.js.map +1 -1
- package/dist/Option.d.ts +447 -812
- package/dist/Option.d.ts.map +1 -1
- package/dist/Option.js +213 -393
- package/dist/Option.js.map +1 -1
- package/dist/Order.d.ts +109 -109
- package/dist/Order.js +91 -91
- package/dist/Order.js.map +1 -1
- package/dist/Ordering.d.ts +20 -23
- package/dist/Ordering.d.ts.map +1 -1
- package/dist/Ordering.js +8 -9
- package/dist/Ordering.js.map +1 -1
- package/dist/PartitionedSemaphore.d.ts.map +1 -1
- package/dist/PartitionedSemaphore.js +1 -4
- package/dist/PartitionedSemaphore.js.map +1 -1
- package/dist/Path.d.ts +38 -41
- package/dist/Path.d.ts.map +1 -1
- package/dist/Path.js +3 -4
- package/dist/Path.js.map +1 -1
- package/dist/Pipeable.d.ts +6 -5
- package/dist/Pipeable.d.ts.map +1 -1
- package/dist/Pipeable.js +2 -2
- package/dist/Pipeable.js.map +1 -1
- package/dist/PlatformError.d.ts +4 -4
- package/dist/PlatformError.js +3 -3
- package/dist/PlatformError.js.map +1 -1
- package/dist/Pool.d.ts +4 -2
- package/dist/Pool.d.ts.map +1 -1
- package/dist/Pool.js +4 -2
- package/dist/Pool.js.map +1 -1
- package/dist/Predicate.d.ts +200 -181
- package/dist/Predicate.d.ts.map +1 -1
- package/dist/Predicate.js +100 -108
- package/dist/Predicate.js.map +1 -1
- package/dist/PrimaryKey.d.ts +7 -7
- package/dist/PrimaryKey.js +5 -5
- package/dist/PrimaryKey.js.map +1 -1
- package/dist/PubSub.d.ts +425 -494
- package/dist/PubSub.d.ts.map +1 -1
- package/dist/PubSub.js +373 -362
- package/dist/PubSub.js.map +1 -1
- package/dist/Pull.d.ts +24 -18
- package/dist/Pull.d.ts.map +1 -1
- package/dist/Pull.js +11 -9
- package/dist/Pull.js.map +1 -1
- package/dist/Queue.d.ts +200 -159
- package/dist/Queue.d.ts.map +1 -1
- package/dist/Queue.js +162 -132
- package/dist/Queue.js.map +1 -1
- package/dist/Random.d.ts +49 -74
- package/dist/Random.d.ts.map +1 -1
- package/dist/Random.js +35 -54
- package/dist/Random.js.map +1 -1
- package/dist/RcMap.d.ts +121 -63
- package/dist/RcMap.d.ts.map +1 -1
- package/dist/RcMap.js +42 -21
- package/dist/RcMap.js.map +1 -1
- package/dist/RcRef.d.ts +24 -13
- package/dist/RcRef.d.ts.map +1 -1
- package/dist/RcRef.js +15 -9
- package/dist/RcRef.js.map +1 -1
- package/dist/Record.d.ts +361 -466
- package/dist/Record.d.ts.map +1 -1
- package/dist/Record.js +163 -216
- package/dist/Record.js.map +1 -1
- package/dist/Redactable.d.ts +6 -2
- package/dist/Redactable.d.ts.map +1 -1
- package/dist/Redactable.js +7 -2
- package/dist/Redactable.js.map +1 -1
- package/dist/Redacted.d.ts +25 -25
- package/dist/Redacted.d.ts.map +1 -1
- package/dist/Redacted.js +19 -20
- package/dist/Redacted.js.map +1 -1
- package/dist/Reducer.d.ts +8 -15
- package/dist/Reducer.d.ts.map +1 -1
- package/dist/Reducer.js +6 -12
- package/dist/Reducer.js.map +1 -1
- package/dist/Ref.d.ts +95 -165
- package/dist/Ref.d.ts.map +1 -1
- package/dist/Ref.js +75 -122
- package/dist/Ref.js.map +1 -1
- package/dist/References.d.ts +102 -213
- package/dist/References.d.ts.map +1 -1
- package/dist/References.js +102 -213
- package/dist/References.js.map +1 -1
- package/dist/RegExp.d.ts +10 -14
- package/dist/RegExp.d.ts.map +1 -1
- package/dist/RegExp.js +10 -14
- package/dist/RegExp.js.map +1 -1
- package/dist/Request.d.ts +31 -21
- package/dist/Request.d.ts.map +1 -1
- package/dist/Request.js +25 -19
- package/dist/Request.js.map +1 -1
- package/dist/RequestResolver.d.ts +201 -90
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +87 -41
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Resource.js.map +1 -1
- package/dist/Result.d.ts +302 -470
- package/dist/Result.d.ts.map +1 -1
- package/dist/Result.js +135 -218
- package/dist/Result.js.map +1 -1
- package/dist/Runtime.d.ts +50 -75
- package/dist/Runtime.d.ts.map +1 -1
- package/dist/Runtime.js +39 -60
- package/dist/Runtime.js.map +1 -1
- package/dist/Schedule.d.ts +290 -1636
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +162 -803
- package/dist/Schedule.js.map +1 -1
- package/dist/Scheduler.d.ts +5 -5
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js +18 -6
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +1835 -1060
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +2708 -1050
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +29 -52
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +537 -391
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaError.d.ts +7 -6
- package/dist/SchemaError.d.ts.map +1 -1
- package/dist/SchemaError.js +8 -7
- package/dist/SchemaError.js.map +1 -1
- package/dist/SchemaGetter.d.ts +230 -185
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +252 -209
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaIssue.d.ts +62 -190
- package/dist/SchemaIssue.d.ts.map +1 -1
- package/dist/SchemaIssue.js +74 -266
- package/dist/SchemaIssue.js.map +1 -1
- package/dist/SchemaParser.d.ts +2 -2
- package/dist/SchemaParser.d.ts.map +1 -1
- package/dist/SchemaParser.js +123 -86
- package/dist/SchemaParser.js.map +1 -1
- package/dist/SchemaRepresentation.d.ts +398 -1513
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +290 -2854
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +116 -76
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +123 -88
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/Scope.d.ts +123 -151
- package/dist/Scope.d.ts.map +1 -1
- package/dist/Scope.js +72 -92
- package/dist/Scope.js.map +1 -1
- package/dist/ScopedCache.js.map +1 -1
- package/dist/ScopedRef.d.ts +3 -3
- package/dist/ScopedRef.js +2 -2
- package/dist/ScopedRef.js.map +1 -1
- package/dist/Semaphore.d.ts +101 -13
- package/dist/Semaphore.d.ts.map +1 -1
- package/dist/Semaphore.js +78 -39
- package/dist/Semaphore.js.map +1 -1
- package/dist/Sink.d.ts +117 -107
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js +107 -100
- package/dist/Sink.js.map +1 -1
- package/dist/Stdio.d.ts +1 -1
- package/dist/Stdio.js.map +1 -1
- package/dist/Stream.d.ts +2430 -2958
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +1124 -1397
- package/dist/Stream.js.map +1 -1
- package/dist/String.d.ts +262 -308
- package/dist/String.d.ts.map +1 -1
- package/dist/String.js +184 -215
- package/dist/String.js.map +1 -1
- package/dist/Struct.d.ts +109 -114
- package/dist/Struct.d.ts.map +1 -1
- package/dist/Struct.js +46 -54
- package/dist/Struct.js.map +1 -1
- package/dist/SubscriptionRef.d.ts +282 -250
- package/dist/SubscriptionRef.d.ts.map +1 -1
- package/dist/SubscriptionRef.js +104 -92
- package/dist/SubscriptionRef.js.map +1 -1
- package/dist/Symbol.d.ts +3 -3
- package/dist/Symbol.js +3 -3
- package/dist/Symbol.js.map +1 -1
- package/dist/SynchronizedRef.js.map +1 -1
- package/dist/Take.js.map +1 -1
- package/dist/Terminal.d.ts +2 -2
- package/dist/Terminal.js +1 -1
- package/dist/Terminal.js.map +1 -1
- package/dist/Tracer.d.ts +100 -54
- package/dist/Tracer.d.ts.map +1 -1
- package/dist/Tracer.js +41 -24
- package/dist/Tracer.js.map +1 -1
- package/dist/Trie.d.ts +287 -679
- package/dist/Trie.d.ts.map +1 -1
- package/dist/Trie.js +109 -251
- package/dist/Trie.js.map +1 -1
- package/dist/Tuple.d.ts +92 -127
- package/dist/Tuple.d.ts.map +1 -1
- package/dist/Tuple.js +42 -57
- package/dist/Tuple.js.map +1 -1
- package/dist/TxChunk.d.ts +201 -121
- package/dist/TxChunk.d.ts.map +1 -1
- package/dist/TxChunk.js +85 -56
- package/dist/TxChunk.js.map +1 -1
- package/dist/TxDeferred.d.ts +62 -46
- package/dist/TxDeferred.d.ts.map +1 -1
- package/dist/TxDeferred.js +30 -22
- package/dist/TxDeferred.js.map +1 -1
- package/dist/TxHashMap.d.ts +631 -779
- package/dist/TxHashMap.d.ts.map +1 -1
- package/dist/TxHashMap.js +268 -330
- package/dist/TxHashMap.js.map +1 -1
- package/dist/TxHashSet.d.ts +297 -236
- package/dist/TxHashSet.d.ts.map +1 -1
- package/dist/TxHashSet.js +130 -100
- package/dist/TxHashSet.js.map +1 -1
- package/dist/TxPriorityQueue.d.ts +126 -95
- package/dist/TxPriorityQueue.d.ts.map +1 -1
- package/dist/TxPriorityQueue.js +74 -56
- package/dist/TxPriorityQueue.js.map +1 -1
- package/dist/TxPubSub.d.ts +101 -88
- package/dist/TxPubSub.d.ts.map +1 -1
- package/dist/TxPubSub.js +87 -66
- package/dist/TxPubSub.js.map +1 -1
- package/dist/TxQueue.d.ts +200 -180
- package/dist/TxQueue.d.ts.map +1 -1
- package/dist/TxQueue.js +160 -136
- package/dist/TxQueue.js.map +1 -1
- package/dist/TxReentrantLock.d.ts +97 -66
- package/dist/TxReentrantLock.d.ts.map +1 -1
- package/dist/TxReentrantLock.js +67 -45
- package/dist/TxReentrantLock.js.map +1 -1
- package/dist/TxRef.d.ts +51 -32
- package/dist/TxRef.d.ts.map +1 -1
- package/dist/TxRef.js +23 -15
- package/dist/TxRef.js.map +1 -1
- package/dist/TxSemaphore.d.ts +129 -95
- package/dist/TxSemaphore.d.ts.map +1 -1
- package/dist/TxSemaphore.js +85 -70
- package/dist/TxSemaphore.js.map +1 -1
- package/dist/TxSubscriptionRef.d.ts +97 -70
- package/dist/TxSubscriptionRef.d.ts.map +1 -1
- package/dist/TxSubscriptionRef.js +44 -34
- package/dist/TxSubscriptionRef.js.map +1 -1
- package/dist/Types.d.ts +127 -70
- package/dist/Types.d.ts.map +1 -1
- package/dist/UndefinedOr.js.map +1 -1
- package/dist/Unify.d.ts +45 -65
- package/dist/Unify.d.ts.map +1 -1
- package/dist/Unify.js +6 -9
- package/dist/Unify.js.map +1 -1
- package/dist/Utils.d.ts +23 -16
- package/dist/Utils.d.ts.map +1 -1
- package/dist/Utils.js +3 -7
- package/dist/Utils.js.map +1 -1
- package/dist/index.d.ts +0 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -4
- package/dist/index.js.map +1 -1
- package/dist/internal/array.js.map +1 -1
- package/dist/internal/core.js +3 -2
- package/dist/internal/core.js.map +1 -1
- package/dist/internal/dateTime.js +4 -0
- package/dist/internal/dateTime.js.map +1 -1
- package/dist/internal/doNotation.js.map +1 -1
- package/dist/internal/effect.js +141 -61
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/equal.js.map +1 -1
- package/dist/internal/errors.js.map +1 -1
- package/dist/internal/executionPlan.js.map +1 -1
- package/dist/internal/hashMap.js.map +1 -1
- package/dist/internal/hashSet.js.map +1 -1
- package/dist/internal/layer.js.map +1 -1
- package/dist/internal/matcher.js +1 -1
- package/dist/internal/matcher.js.map +1 -1
- package/dist/internal/metric.js.map +1 -1
- package/dist/internal/option.js.map +1 -1
- package/dist/internal/persistence.d.ts +2 -0
- package/dist/internal/persistence.d.ts.map +1 -0
- package/dist/internal/persistence.js +3 -0
- package/dist/internal/persistence.js.map +1 -0
- package/dist/internal/random.js.map +1 -1
- package/dist/internal/rcRef.js.map +1 -1
- package/dist/internal/record.d.ts +0 -3
- package/dist/internal/record.d.ts.map +1 -1
- package/dist/internal/record.js +10 -5
- package/dist/internal/record.js.map +1 -1
- package/dist/internal/redacted.js.map +1 -1
- package/dist/internal/references.js +3 -4
- package/dist/internal/references.js.map +1 -1
- package/dist/internal/request.js.map +1 -1
- package/dist/internal/result.js.map +1 -1
- package/dist/internal/schedule.js.map +1 -1
- package/dist/internal/schema/annotations.js +12 -0
- package/dist/internal/schema/annotations.js.map +1 -1
- package/dist/internal/schema/cause.js.map +1 -1
- package/dist/internal/schema/fromJsonSchemaDocument.d.ts +2 -0
- package/dist/internal/schema/fromJsonSchemaDocument.d.ts.map +1 -0
- package/dist/internal/schema/fromJsonSchemaDocument.js +745 -0
- package/dist/internal/schema/fromJsonSchemaDocument.js.map +1 -0
- package/dist/internal/schema/fromRepresentation.d.ts +2 -0
- package/dist/internal/schema/fromRepresentation.d.ts.map +1 -0
- package/dist/internal/schema/fromRepresentation.js +245 -0
- package/dist/internal/schema/fromRepresentation.js.map +1 -0
- package/dist/internal/schema/parser.d.ts +14 -0
- package/dist/internal/schema/parser.d.ts.map +1 -0
- package/dist/internal/schema/parser.js +13 -0
- package/dist/internal/schema/parser.js.map +1 -0
- package/dist/internal/schema/schema.js +28 -40
- package/dist/internal/schema/schema.js.map +1 -1
- package/dist/internal/schema/{arbitrary.d.ts → toArbitrary.d.ts} +1 -1
- package/dist/internal/schema/toArbitrary.d.ts.map +1 -0
- package/dist/internal/schema/{arbitrary.js → toArbitrary.js} +8 -9
- package/dist/internal/schema/toArbitrary.js.map +1 -0
- package/dist/internal/schema/toCodeDocument.d.ts +2 -0
- package/dist/internal/schema/toCodeDocument.d.ts.map +1 -0
- package/dist/internal/schema/toCodeDocument.js +438 -0
- package/dist/internal/schema/toCodeDocument.js.map +1 -0
- package/dist/internal/schema/toEquivalence.d.ts +2 -0
- package/dist/internal/schema/toEquivalence.d.ts.map +1 -0
- package/dist/internal/schema/{equivalence.js → toEquivalence.js} +15 -13
- package/dist/internal/schema/toEquivalence.js.map +1 -0
- package/dist/internal/schema/toJsonSchemaDocument.d.ts +2 -0
- package/dist/internal/schema/toJsonSchemaDocument.d.ts.map +1 -0
- package/dist/internal/schema/toJsonSchemaDocument.js +508 -0
- package/dist/internal/schema/toJsonSchemaDocument.js.map +1 -0
- package/dist/internal/schema/toRepresentation.d.ts +2 -0
- package/dist/internal/schema/toRepresentation.d.ts.map +1 -0
- package/dist/internal/schema/toRepresentation.js +349 -0
- package/dist/internal/schema/toRepresentation.js.map +1 -0
- package/dist/internal/stackTraceLimit.js +3 -6
- package/dist/internal/stackTraceLimit.js.map +1 -1
- package/dist/internal/stream.js.map +1 -1
- package/dist/internal/tracer.js.map +1 -1
- package/dist/internal/trie.js +13 -9
- package/dist/internal/trie.js.map +1 -1
- package/dist/testing/FastCheck.d.ts +8 -7
- package/dist/testing/FastCheck.d.ts.map +1 -1
- package/dist/testing/FastCheck.js +8 -7
- package/dist/testing/FastCheck.js.map +1 -1
- package/dist/testing/TestClock.d.ts +57 -28
- package/dist/testing/TestClock.d.ts.map +1 -1
- package/dist/testing/TestClock.js +54 -19
- package/dist/testing/TestClock.js.map +1 -1
- package/dist/testing/TestConsole.d.ts +32 -31
- package/dist/testing/TestConsole.d.ts.map +1 -1
- package/dist/testing/TestConsole.js +24 -22
- package/dist/testing/TestConsole.js.map +1 -1
- package/dist/testing/TestSchema.d.ts +29 -29
- package/dist/testing/TestSchema.js +25 -25
- package/dist/testing/TestSchema.js.map +1 -1
- package/dist/testing/index.js.map +1 -1
- package/dist/unstable/ai/AiError.d.ts +121 -144
- package/dist/unstable/ai/AiError.d.ts.map +1 -1
- package/dist/unstable/ai/AiError.js +99 -121
- package/dist/unstable/ai/AiError.js.map +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +22 -7
- package/dist/unstable/ai/AnthropicStructuredOutput.d.ts.map +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.js +87 -317
- package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
- package/dist/unstable/ai/Chat.d.ts +132 -97
- package/dist/unstable/ai/Chat.d.ts.map +1 -1
- package/dist/unstable/ai/Chat.js +55 -51
- package/dist/unstable/ai/Chat.js.map +1 -1
- package/dist/unstable/ai/EmbeddingModel.d.ts +1 -1
- package/dist/unstable/ai/EmbeddingModel.js +1 -1
- package/dist/unstable/ai/EmbeddingModel.js.map +1 -1
- package/dist/unstable/ai/IdGenerator.d.ts +32 -28
- package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
- package/dist/unstable/ai/IdGenerator.js +26 -21
- package/dist/unstable/ai/IdGenerator.js.map +1 -1
- package/dist/unstable/ai/LanguageModel.d.ts +111 -68
- package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
- package/dist/unstable/ai/LanguageModel.js +123 -81
- package/dist/unstable/ai/LanguageModel.js.map +1 -1
- package/dist/unstable/ai/McpProtocol.d.ts +30 -0
- package/dist/unstable/ai/McpProtocol.d.ts.map +1 -0
- package/dist/unstable/ai/McpProtocol.js +20 -0
- package/dist/unstable/ai/McpProtocol.js.map +1 -0
- package/dist/unstable/ai/McpSchema.d.ts +316 -250
- package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
- package/dist/unstable/ai/McpSchema.js +71 -63
- package/dist/unstable/ai/McpSchema.js.map +1 -1
- package/dist/unstable/ai/McpServer.d.ts +71 -62
- package/dist/unstable/ai/McpServer.d.ts.map +1 -1
- package/dist/unstable/ai/McpServer.js +765 -245
- package/dist/unstable/ai/McpServer.js.map +1 -1
- package/dist/unstable/ai/Model.d.ts +8 -19
- package/dist/unstable/ai/Model.d.ts.map +1 -1
- package/dist/unstable/ai/Model.js +9 -20
- package/dist/unstable/ai/Model.js.map +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +33 -11
- package/dist/unstable/ai/OpenAiStructuredOutput.d.ts.map +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.js +194 -378
- package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
- package/dist/unstable/ai/Prompt.d.ts +112 -38
- package/dist/unstable/ai/Prompt.d.ts.map +1 -1
- package/dist/unstable/ai/Prompt.js +53 -17
- package/dist/unstable/ai/Prompt.js.map +1 -1
- package/dist/unstable/ai/Response.d.ts +47 -33
- package/dist/unstable/ai/Response.d.ts.map +1 -1
- package/dist/unstable/ai/Response.js +23 -18
- package/dist/unstable/ai/Response.js.map +1 -1
- package/dist/unstable/ai/ResponseIdTracker.js.map +1 -1
- package/dist/unstable/ai/Telemetry.d.ts +46 -13
- package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
- package/dist/unstable/ai/Telemetry.js +18 -7
- package/dist/unstable/ai/Telemetry.js.map +1 -1
- package/dist/unstable/ai/Tokenizer.d.ts +14 -3
- package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
- package/dist/unstable/ai/Tokenizer.js +10 -2
- package/dist/unstable/ai/Tokenizer.js.map +1 -1
- package/dist/unstable/ai/Tool.d.ts +63 -44
- package/dist/unstable/ai/Tool.d.ts.map +1 -1
- package/dist/unstable/ai/Tool.js +59 -42
- package/dist/unstable/ai/Tool.js.map +1 -1
- package/dist/unstable/ai/Toolkit.d.ts +35 -9
- package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
- package/dist/unstable/ai/Toolkit.js +32 -14
- package/dist/unstable/ai/Toolkit.js.map +1 -1
- package/dist/unstable/ai/index.d.ts +4 -0
- package/dist/unstable/ai/index.d.ts.map +1 -1
- package/dist/unstable/ai/index.js +4 -0
- package/dist/unstable/ai/index.js.map +1 -1
- package/dist/unstable/ai/internal/codec-transformer.js +15 -12
- package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
- package/dist/unstable/ai/internal/mcpProtocol.d.ts +21 -0
- package/dist/unstable/ai/internal/mcpProtocol.d.ts.map +1 -0
- package/dist/unstable/ai/internal/mcpProtocol.js +22 -0
- package/dist/unstable/ai/internal/mcpProtocol.js.map +1 -0
- package/dist/unstable/ai/internal/mcpProtocolRegistry.d.ts +2 -0
- package/dist/unstable/ai/internal/mcpProtocolRegistry.d.ts.map +1 -0
- package/dist/unstable/ai/internal/mcpProtocolRegistry.js +32 -0
- package/dist/unstable/ai/internal/mcpProtocolRegistry.js.map +1 -0
- package/dist/unstable/ai/internal/structured-output.d.ts +2 -0
- package/dist/unstable/ai/internal/structured-output.d.ts.map +1 -0
- package/dist/unstable/ai/internal/structured-output.js +315 -0
- package/dist/unstable/ai/internal/structured-output.js.map +1 -0
- package/dist/unstable/cli/Argument.d.ts +273 -69
- package/dist/unstable/cli/Argument.d.ts.map +1 -1
- package/dist/unstable/cli/Argument.js +111 -33
- package/dist/unstable/cli/Argument.js.map +1 -1
- package/dist/unstable/cli/CliConfig.js.map +1 -1
- package/dist/unstable/cli/CliError.d.ts +105 -74
- package/dist/unstable/cli/CliError.d.ts.map +1 -1
- package/dist/unstable/cli/CliError.js +98 -63
- package/dist/unstable/cli/CliError.js.map +1 -1
- package/dist/unstable/cli/CliOutput.d.ts +35 -54
- package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
- package/dist/unstable/cli/CliOutput.js +26 -42
- package/dist/unstable/cli/CliOutput.js.map +1 -1
- package/dist/unstable/cli/Command.d.ts +705 -107
- package/dist/unstable/cli/Command.d.ts.map +1 -1
- package/dist/unstable/cli/Command.js +252 -47
- package/dist/unstable/cli/Command.js.map +1 -1
- package/dist/unstable/cli/Completions.js.map +1 -1
- package/dist/unstable/cli/Flag.d.ts +418 -138
- package/dist/unstable/cli/Flag.d.ts.map +1 -1
- package/dist/unstable/cli/Flag.js +197 -71
- package/dist/unstable/cli/Flag.js.map +1 -1
- package/dist/unstable/cli/GlobalFlag.d.ts +1 -1
- package/dist/unstable/cli/GlobalFlag.js.map +1 -1
- package/dist/unstable/cli/HelpDoc.d.ts +12 -4
- package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
- package/dist/unstable/cli/Param.d.ts +292 -78
- package/dist/unstable/cli/Param.d.ts.map +1 -1
- package/dist/unstable/cli/Param.js +131 -49
- package/dist/unstable/cli/Param.js.map +1 -1
- package/dist/unstable/cli/Primitive.d.ts +370 -149
- package/dist/unstable/cli/Primitive.d.ts.map +1 -1
- package/dist/unstable/cli/Primitive.js +345 -137
- package/dist/unstable/cli/Primitive.js.map +1 -1
- package/dist/unstable/cli/Prompt.d.ts +23 -14
- package/dist/unstable/cli/Prompt.d.ts.map +1 -1
- package/dist/unstable/cli/Prompt.js +23 -14
- package/dist/unstable/cli/Prompt.js.map +1 -1
- package/dist/unstable/cli/index.js.map +1 -1
- package/dist/unstable/cli/internal/ansi.js.map +1 -1
- package/dist/unstable/cli/internal/auto-suggest.js.map +1 -1
- package/dist/unstable/cli/internal/command.d.ts +3 -1
- package/dist/unstable/cli/internal/command.d.ts.map +1 -1
- package/dist/unstable/cli/internal/command.js +11 -4
- package/dist/unstable/cli/internal/command.js.map +1 -1
- package/dist/unstable/cli/internal/completions/bash.js.map +1 -1
- package/dist/unstable/cli/internal/completions/descriptor.js.map +1 -1
- package/dist/unstable/cli/internal/completions/fish.js.map +1 -1
- package/dist/unstable/cli/internal/completions/zsh.js.map +1 -1
- package/dist/unstable/cli/internal/config.d.ts +0 -48
- package/dist/unstable/cli/internal/config.d.ts.map +1 -1
- package/dist/unstable/cli/internal/config.js +8 -10
- package/dist/unstable/cli/internal/config.js.map +1 -1
- package/dist/unstable/cli/internal/help.js.map +1 -1
- package/dist/unstable/cli/internal/lexer.js +17 -7
- package/dist/unstable/cli/internal/lexer.js.map +1 -1
- package/dist/unstable/cli/internal/parser.js +2 -2
- package/dist/unstable/cli/internal/parser.js.map +1 -1
- package/dist/unstable/cli/internal/wizard.js.map +1 -1
- package/dist/unstable/cluster/ClusterCron.js.map +1 -1
- package/dist/unstable/cluster/ClusterError.js.map +1 -1
- package/dist/unstable/cluster/ClusterMetrics.js.map +1 -1
- package/dist/unstable/cluster/ClusterSchema.d.ts +8 -8
- package/dist/unstable/cluster/ClusterSchema.js +8 -8
- package/dist/unstable/cluster/ClusterSchema.js.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.js +6 -2
- package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/unstable/cluster/DeliverAt.js.map +1 -1
- package/dist/unstable/cluster/Entity.d.ts +10 -10
- package/dist/unstable/cluster/Entity.d.ts.map +1 -1
- package/dist/unstable/cluster/Entity.js +9 -9
- package/dist/unstable/cluster/Entity.js.map +1 -1
- package/dist/unstable/cluster/EntityAddress.js.map +1 -1
- package/dist/unstable/cluster/EntityId.js.map +1 -1
- package/dist/unstable/cluster/EntityProxy.d.ts +4 -2
- package/dist/unstable/cluster/EntityProxy.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityProxy.js +4 -2
- package/dist/unstable/cluster/EntityProxy.js.map +1 -1
- package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
- package/dist/unstable/cluster/EntityResource.d.ts +2 -2
- package/dist/unstable/cluster/EntityResource.js +2 -2
- package/dist/unstable/cluster/EntityResource.js.map +1 -1
- package/dist/unstable/cluster/EntityType.js.map +1 -1
- package/dist/unstable/cluster/Envelope.d.ts +3 -3
- package/dist/unstable/cluster/Envelope.d.ts.map +1 -1
- package/dist/unstable/cluster/Envelope.js +5 -4
- package/dist/unstable/cluster/Envelope.js.map +1 -1
- package/dist/unstable/cluster/HttpRunner.d.ts +2 -2
- package/dist/unstable/cluster/HttpRunner.d.ts.map +1 -1
- package/dist/unstable/cluster/HttpRunner.js +6 -4
- package/dist/unstable/cluster/HttpRunner.js.map +1 -1
- package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
- package/dist/unstable/cluster/MachineId.js.map +1 -1
- package/dist/unstable/cluster/Message.d.ts +9 -9
- package/dist/unstable/cluster/Message.js +6 -6
- package/dist/unstable/cluster/Message.js.map +1 -1
- package/dist/unstable/cluster/MessageStorage.d.ts +15 -15
- package/dist/unstable/cluster/MessageStorage.js +5 -5
- package/dist/unstable/cluster/MessageStorage.js.map +1 -1
- package/dist/unstable/cluster/Reply.d.ts.map +1 -1
- package/dist/unstable/cluster/Reply.js +5 -5
- package/dist/unstable/cluster/Reply.js.map +1 -1
- package/dist/unstable/cluster/Runner.d.ts +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.js +1 -1
- package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
- package/dist/unstable/cluster/RunnerHealth.d.ts +1 -1
- package/dist/unstable/cluster/RunnerHealth.js +1 -1
- package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
- package/dist/unstable/cluster/RunnerServer.d.ts +2 -1
- package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerServer.js +16 -16
- package/dist/unstable/cluster/RunnerServer.js.map +1 -1
- package/dist/unstable/cluster/RunnerStorage.d.ts +2 -2
- package/dist/unstable/cluster/RunnerStorage.js +1 -1
- package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/Runners.d.ts +6 -6
- package/dist/unstable/cluster/Runners.d.ts.map +1 -1
- package/dist/unstable/cluster/Runners.js +19 -10
- package/dist/unstable/cluster/Runners.js.map +1 -1
- package/dist/unstable/cluster/ShardId.js +1 -1
- package/dist/unstable/cluster/ShardId.js.map +1 -1
- package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
- package/dist/unstable/cluster/Sharding.js +128 -26
- package/dist/unstable/cluster/Sharding.js.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.d.ts +13 -5
- package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.js +3 -3
- package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
- package/dist/unstable/cluster/ShardingRegistrationEvent.js.map +1 -1
- package/dist/unstable/cluster/SingleRunner.d.ts +4 -2
- package/dist/unstable/cluster/SingleRunner.d.ts.map +1 -1
- package/dist/unstable/cluster/SingleRunner.js +2 -1
- package/dist/unstable/cluster/SingleRunner.js.map +1 -1
- package/dist/unstable/cluster/Singleton.js.map +1 -1
- package/dist/unstable/cluster/SingletonAddress.d.ts +1 -1
- package/dist/unstable/cluster/SingletonAddress.js +1 -1
- package/dist/unstable/cluster/SingletonAddress.js.map +1 -1
- package/dist/unstable/cluster/Snowflake.d.ts +8 -8
- package/dist/unstable/cluster/Snowflake.js +8 -8
- package/dist/unstable/cluster/Snowflake.js.map +1 -1
- package/dist/unstable/cluster/SocketRunner.js.map +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.d.ts +7 -4
- package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.js +56 -25
- 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 +127 -65
- package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/TestRunner.js.map +1 -1
- package/dist/unstable/cluster/index.js.map +1 -1
- package/dist/unstable/cluster/internal/entityManager.js +24 -12
- package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
- package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
- package/dist/unstable/cluster/internal/hash.js.map +1 -1
- package/dist/unstable/cluster/internal/interruptors.js.map +1 -1
- package/dist/unstable/cluster/internal/resourceMap.js.map +1 -1
- package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
- package/dist/unstable/cluster/internal/shardLock.d.ts +2 -0
- package/dist/unstable/cluster/internal/shardLock.d.ts.map +1 -0
- package/dist/unstable/cluster/internal/shardLock.js +4 -0
- package/dist/unstable/cluster/internal/shardLock.js.map +1 -0
- package/dist/unstable/devtools/DevTools.js.map +1 -1
- package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
- package/dist/unstable/devtools/DevToolsSchema.d.ts +20 -20
- package/dist/unstable/devtools/DevToolsSchema.d.ts.map +1 -1
- package/dist/unstable/devtools/DevToolsSchema.js +8 -5
- package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
- package/dist/unstable/devtools/DevToolsServer.js.map +1 -1
- package/dist/unstable/devtools/index.js.map +1 -1
- package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
- package/dist/unstable/encoding/Msgpack.js +6 -8
- package/dist/unstable/encoding/Msgpack.js.map +1 -1
- package/dist/unstable/encoding/Ndjson.js.map +1 -1
- package/dist/unstable/encoding/Sse.d.ts +72 -8
- package/dist/unstable/encoding/Sse.d.ts.map +1 -1
- package/dist/unstable/encoding/Sse.js +58 -8
- package/dist/unstable/encoding/Sse.js.map +1 -1
- package/dist/unstable/encoding/index.js.map +1 -1
- package/dist/unstable/eventlog/Event.d.ts +20 -20
- package/dist/unstable/eventlog/Event.js.map +1 -1
- package/dist/unstable/eventlog/EventGroup.d.ts +4 -4
- package/dist/unstable/eventlog/EventGroup.js.map +1 -1
- package/dist/unstable/eventlog/EventJournal.d.ts +16 -16
- package/dist/unstable/eventlog/EventJournal.js +14 -14
- package/dist/unstable/eventlog/EventJournal.js.map +1 -1
- package/dist/unstable/eventlog/EventLog.d.ts +3 -3
- package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLog.js +18 -14
- package/dist/unstable/eventlog/EventLog.js.map +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.d.ts +2 -2
- package/dist/unstable/eventlog/EventLogEncryption.js +2 -2
- package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
- package/dist/unstable/eventlog/EventLogMessage.d.ts +6 -6
- package/dist/unstable/eventlog/EventLogMessage.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogMessage.js +9 -4
- package/dist/unstable/eventlog/EventLogMessage.js.map +1 -1
- package/dist/unstable/eventlog/EventLogRemote.d.ts +15 -15
- package/dist/unstable/eventlog/EventLogRemote.js +1 -1
- package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServer.d.ts +11 -2
- package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServer.js +45 -21
- package/dist/unstable/eventlog/EventLogServer.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +4 -4
- package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServerEncrypted.js +13 -5
- package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +5 -5
- package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServerUnencrypted.js +14 -6
- package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -1
- package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +1 -1
- package/dist/unstable/eventlog/EventLogSessionAuth.js +1 -1
- package/dist/unstable/eventlog/EventLogSessionAuth.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventJournal.js +2 -2
- package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js +3 -3
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
- package/dist/unstable/eventlog/index.js.map +1 -1
- package/dist/unstable/eventlog/internal/identityRootSecretDerivation.js.map +1 -1
- package/dist/unstable/http/Cookies.d.ts +2 -2
- package/dist/unstable/http/Cookies.d.ts.map +1 -1
- package/dist/unstable/http/Cookies.js +54 -40
- package/dist/unstable/http/Cookies.js.map +1 -1
- package/dist/unstable/http/Etag.d.ts +1 -1
- package/dist/unstable/http/Etag.js +1 -1
- package/dist/unstable/http/Etag.js.map +1 -1
- package/dist/unstable/http/FetchHttpClient.d.ts.map +1 -1
- package/dist/unstable/http/FetchHttpClient.js.map +1 -1
- package/dist/unstable/http/Headers.d.ts +2 -2
- package/dist/unstable/http/Headers.js +10 -10
- package/dist/unstable/http/Headers.js.map +1 -1
- package/dist/unstable/http/HttpBody.d.ts +5 -3
- package/dist/unstable/http/HttpBody.d.ts.map +1 -1
- package/dist/unstable/http/HttpBody.js +11 -5
- package/dist/unstable/http/HttpBody.js.map +1 -1
- package/dist/unstable/http/HttpClient.d.ts +51 -44
- package/dist/unstable/http/HttpClient.d.ts.map +1 -1
- package/dist/unstable/http/HttpClient.js +46 -17
- package/dist/unstable/http/HttpClient.js.map +1 -1
- package/dist/unstable/http/HttpClientError.js.map +1 -1
- package/dist/unstable/http/HttpClientRequest.d.ts +44 -0
- package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientRequest.js +16 -0
- package/dist/unstable/http/HttpClientRequest.js.map +1 -1
- package/dist/unstable/http/HttpClientResponse.d.ts +4 -4
- package/dist/unstable/http/HttpClientResponse.js +2 -2
- package/dist/unstable/http/HttpClientResponse.js.map +1 -1
- package/dist/unstable/http/HttpEffect.d.ts +6 -6
- package/dist/unstable/http/HttpEffect.js +3 -3
- package/dist/unstable/http/HttpEffect.js.map +1 -1
- package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
- package/dist/unstable/http/HttpMethod.d.ts +6 -9
- package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
- package/dist/unstable/http/HttpMethod.js +6 -9
- package/dist/unstable/http/HttpMethod.js.map +1 -1
- package/dist/unstable/http/HttpMiddleware.d.ts +75 -9
- package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/unstable/http/HttpMiddleware.js +164 -39
- package/dist/unstable/http/HttpMiddleware.js.map +1 -1
- package/dist/unstable/http/HttpPlatform.d.ts +76 -0
- package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
- package/dist/unstable/http/HttpPlatform.js +32 -0
- package/dist/unstable/http/HttpPlatform.js.map +1 -1
- package/dist/unstable/http/HttpRouter.d.ts +88 -89
- package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
- package/dist/unstable/http/HttpRouter.js +78 -79
- package/dist/unstable/http/HttpRouter.js.map +1 -1
- package/dist/unstable/http/HttpServer.d.ts +13 -13
- package/dist/unstable/http/HttpServer.js +6 -6
- package/dist/unstable/http/HttpServer.js.map +1 -1
- package/dist/unstable/http/HttpServerError.d.ts +2 -2
- package/dist/unstable/http/HttpServerError.js +2 -2
- package/dist/unstable/http/HttpServerError.js.map +1 -1
- package/dist/unstable/http/HttpServerRequest.d.ts +4 -4
- package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerRequest.js +9 -8
- package/dist/unstable/http/HttpServerRequest.js.map +1 -1
- package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
- package/dist/unstable/http/HttpServerResponse.d.ts +22 -0
- package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerResponse.js +10 -0
- package/dist/unstable/http/HttpServerResponse.js.map +1 -1
- package/dist/unstable/http/HttpStaticServer.d.ts +35 -7
- package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -1
- package/dist/unstable/http/HttpStaticServer.js +35 -7
- package/dist/unstable/http/HttpStaticServer.js.map +1 -1
- package/dist/unstable/http/HttpTraceContext.js.map +1 -1
- package/dist/unstable/http/Multipart.d.ts +6 -6
- package/dist/unstable/http/Multipart.d.ts.map +1 -1
- package/dist/unstable/http/Multipart.js +22 -20
- package/dist/unstable/http/Multipart.js.map +1 -1
- package/dist/unstable/http/Template.js +1 -1
- package/dist/unstable/http/Template.js.map +1 -1
- package/dist/unstable/http/Url.d.ts +33 -63
- package/dist/unstable/http/Url.d.ts.map +1 -1
- package/dist/unstable/http/Url.js +14 -28
- package/dist/unstable/http/Url.js.map +1 -1
- package/dist/unstable/http/UrlParams.d.ts +10 -18
- package/dist/unstable/http/UrlParams.d.ts.map +1 -1
- package/dist/unstable/http/UrlParams.js +26 -31
- package/dist/unstable/http/UrlParams.js.map +1 -1
- package/dist/unstable/http/index.js.map +1 -1
- package/dist/unstable/http/internal/compression.d.ts +2 -0
- package/dist/unstable/http/internal/compression.d.ts.map +1 -0
- package/dist/unstable/http/internal/compression.js +155 -0
- package/dist/unstable/http/internal/compression.js.map +1 -0
- package/dist/unstable/http/internal/preResponseHandler.js.map +1 -1
- package/dist/unstable/httpapi/HttpApi.js +3 -3
- package/dist/unstable/httpapi/HttpApi.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.js +10 -11
- package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.d.ts +4 -5
- package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.js +16 -18
- package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +42 -42
- package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.d.ts +13 -13
- package/dist/unstable/httpapi/HttpApiError.js +13 -13
- package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.d.ts +15 -15
- package/dist/unstable/httpapi/HttpApiGroup.js +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +71 -24
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.js +57 -10
- package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiScalar.d.ts +0 -12
- package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSchema.d.ts +6 -6
- package/dist/unstable/httpapi/HttpApiSchema.js +4 -4
- package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSwagger.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiTest.js.map +1 -1
- package/dist/unstable/httpapi/OpenApi.d.ts +13 -13
- package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/OpenApi.js +50 -37
- package/dist/unstable/httpapi/OpenApi.js.map +1 -1
- package/dist/unstable/httpapi/index.js.map +1 -1
- package/dist/unstable/httpapi/internal/html.js.map +1 -1
- package/dist/unstable/httpapi/internal/httpApiScalar.js.map +1 -1
- package/dist/unstable/httpapi/internal/httpApiSwagger.js.map +1 -1
- package/dist/unstable/httpapi/internal/mediaType.js.map +1 -1
- package/dist/unstable/observability/Otlp.js.map +1 -1
- package/dist/unstable/observability/OtlpExporter.d.ts +70 -1
- package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpExporter.js +84 -6
- package/dist/unstable/observability/OtlpExporter.js.map +1 -1
- package/dist/unstable/observability/OtlpLogger.d.ts +4 -3
- package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpLogger.js +2 -2
- package/dist/unstable/observability/OtlpLogger.js.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.d.ts +11 -4
- package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.js +5 -2
- package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
- package/dist/unstable/observability/OtlpResource.d.ts +16 -7
- package/dist/unstable/observability/OtlpResource.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpResource.js +21 -12
- package/dist/unstable/observability/OtlpResource.js.map +1 -1
- package/dist/unstable/observability/OtlpSerialization.js.map +1 -1
- package/dist/unstable/observability/OtlpTracer.d.ts +4 -3
- package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpTracer.js +2 -2
- package/dist/unstable/observability/OtlpTracer.js.map +1 -1
- package/dist/unstable/observability/PrometheusMetrics.d.ts +13 -4
- package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/PrometheusMetrics.js +10 -3
- package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
- package/dist/unstable/observability/index.js.map +1 -1
- package/dist/unstable/observability/internal/otlpEnv.js +1 -1
- package/dist/unstable/observability/internal/otlpEnv.js.map +1 -1
- package/dist/unstable/observability/internal/otlpProtobuf.js.map +1 -1
- package/dist/unstable/observability/internal/protobuf.js +3 -0
- package/dist/unstable/observability/internal/protobuf.js.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.d.ts +8 -3
- package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.js +22 -13
- package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
- package/dist/unstable/persistence/Persistable.d.ts +8 -8
- package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
- package/dist/unstable/persistence/Persistable.js +2 -1
- package/dist/unstable/persistence/Persistable.js.map +1 -1
- package/dist/unstable/persistence/PersistedCache.js.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.d.ts +6 -6
- package/dist/unstable/persistence/PersistedQueue.js +6 -6
- package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
- package/dist/unstable/persistence/Persistence.d.ts +3 -3
- package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
- package/dist/unstable/persistence/Persistence.js +91 -15
- package/dist/unstable/persistence/Persistence.js.map +1 -1
- package/dist/unstable/persistence/RateLimiter.d.ts +28 -17
- package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
- package/dist/unstable/persistence/RateLimiter.js +26 -15
- package/dist/unstable/persistence/RateLimiter.js.map +1 -1
- package/dist/unstable/persistence/Redis.d.ts +2 -2
- package/dist/unstable/persistence/Redis.d.ts.map +1 -1
- package/dist/unstable/persistence/Redis.js +3 -3
- package/dist/unstable/persistence/Redis.js.map +1 -1
- package/dist/unstable/persistence/index.js.map +1 -1
- package/dist/unstable/process/ChildProcess.d.ts +64 -21
- package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcess.js +14 -5
- package/dist/unstable/process/ChildProcess.js.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.d.ts +21 -10
- package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.js +4 -2
- package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
- package/dist/unstable/process/index.js.map +1 -1
- package/dist/unstable/reactivity/AsyncResult.d.ts +8 -8
- package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
- package/dist/unstable/reactivity/AsyncResult.js +14 -13
- package/dist/unstable/reactivity/AsyncResult.js.map +1 -1
- package/dist/unstable/reactivity/Atom.d.ts +105 -19
- package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
- package/dist/unstable/reactivity/Atom.js +44 -12
- package/dist/unstable/reactivity/Atom.js.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.d.ts +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.js +4 -1
- package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
- package/dist/unstable/reactivity/AtomRef.js.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.js +25 -4
- package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.d.ts +1 -1
- package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.js +4 -1
- package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
- package/dist/unstable/reactivity/Hydration.d.ts +1 -1
- package/dist/unstable/reactivity/Hydration.js +1 -1
- package/dist/unstable/reactivity/Hydration.js.map +1 -1
- package/dist/unstable/reactivity/Reactivity.js.map +1 -1
- package/dist/unstable/reactivity/index.js.map +1 -1
- package/dist/unstable/rpc/Rpc.d.ts +35 -33
- package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
- package/dist/unstable/rpc/Rpc.js +4 -2
- package/dist/unstable/rpc/Rpc.js.map +1 -1
- package/dist/unstable/rpc/RpcClient.d.ts +12 -12
- package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClient.js +14 -12
- package/dist/unstable/rpc/RpcClient.js.map +1 -1
- package/dist/unstable/rpc/RpcClientError.js.map +1 -1
- package/dist/unstable/rpc/RpcGroup.d.ts +8 -8
- package/dist/unstable/rpc/RpcGroup.js +1 -1
- package/dist/unstable/rpc/RpcGroup.js.map +1 -1
- package/dist/unstable/rpc/RpcMessage.d.ts +31 -30
- package/dist/unstable/rpc/RpcMessage.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcMessage.js +6 -6
- package/dist/unstable/rpc/RpcMessage.js.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.d.ts +10 -10
- package/dist/unstable/rpc/RpcMiddleware.js +1 -1
- package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
- package/dist/unstable/rpc/RpcSchema.d.ts +4 -4
- package/dist/unstable/rpc/RpcSchema.js +3 -3
- package/dist/unstable/rpc/RpcSchema.js.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.d.ts +58 -7
- package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.js +175 -96
- package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
- package/dist/unstable/rpc/RpcServer.d.ts +13 -13
- package/dist/unstable/rpc/RpcServer.js +17 -13
- package/dist/unstable/rpc/RpcServer.js.map +1 -1
- package/dist/unstable/rpc/RpcTest.js.map +1 -1
- package/dist/unstable/rpc/RpcWorker.d.ts +5 -5
- package/dist/unstable/rpc/RpcWorker.js +4 -4
- package/dist/unstable/rpc/RpcWorker.js.map +1 -1
- package/dist/unstable/rpc/Utils.js.map +1 -1
- package/dist/unstable/rpc/index.js.map +1 -1
- package/dist/unstable/schema/Model.d.ts +52 -50
- package/dist/unstable/schema/Model.d.ts.map +1 -1
- package/dist/unstable/schema/Model.js +35 -33
- package/dist/unstable/schema/Model.js.map +1 -1
- package/dist/unstable/schema/VariantSchema.d.ts +6 -7
- package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
- package/dist/unstable/schema/VariantSchema.js +15 -12
- package/dist/unstable/schema/VariantSchema.js.map +1 -1
- package/dist/unstable/schema/index.js.map +1 -1
- package/dist/unstable/socket/Socket.d.ts +12 -4
- package/dist/unstable/socket/Socket.d.ts.map +1 -1
- package/dist/unstable/socket/Socket.js +10 -5
- package/dist/unstable/socket/Socket.js.map +1 -1
- package/dist/unstable/socket/SocketServer.js.map +1 -1
- package/dist/unstable/socket/index.js.map +1 -1
- package/dist/unstable/sql/Migrator.js.map +1 -1
- package/dist/unstable/sql/SqlClient.d.ts +1 -1
- package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
- package/dist/unstable/sql/SqlClient.js +2 -2
- package/dist/unstable/sql/SqlClient.js.map +1 -1
- package/dist/unstable/sql/SqlConnection.js.map +1 -1
- package/dist/unstable/sql/SqlError.d.ts +2 -2
- package/dist/unstable/sql/SqlError.js +2 -2
- package/dist/unstable/sql/SqlError.js.map +1 -1
- package/dist/unstable/sql/SqlModel.d.ts +2 -2
- package/dist/unstable/sql/SqlModel.js +2 -2
- package/dist/unstable/sql/SqlModel.js.map +1 -1
- package/dist/unstable/sql/SqlResolver.d.ts +5 -5
- package/dist/unstable/sql/SqlResolver.js +2 -2
- package/dist/unstable/sql/SqlResolver.js.map +1 -1
- package/dist/unstable/sql/SqlSchema.js.map +1 -1
- package/dist/unstable/sql/SqlStream.js.map +1 -1
- package/dist/unstable/sql/Statement.d.ts +6 -6
- package/dist/unstable/sql/Statement.d.ts.map +1 -1
- package/dist/unstable/sql/Statement.js +22 -21
- package/dist/unstable/sql/Statement.js.map +1 -1
- package/dist/unstable/sql/index.js.map +1 -1
- package/dist/unstable/workers/Transferable.d.ts +1 -1
- package/dist/unstable/workers/Transferable.js +1 -1
- package/dist/unstable/workers/Transferable.js.map +1 -1
- package/dist/unstable/workers/Worker.d.ts +2 -2
- package/dist/unstable/workers/Worker.js +2 -2
- package/dist/unstable/workers/Worker.js.map +1 -1
- package/dist/unstable/workers/WorkerError.d.ts +7 -7
- package/dist/unstable/workers/WorkerError.js +6 -6
- package/dist/unstable/workers/WorkerError.js.map +1 -1
- package/dist/unstable/workers/WorkerRunner.d.ts +1 -1
- package/dist/unstable/workers/WorkerRunner.js +1 -1
- package/dist/unstable/workers/WorkerRunner.js.map +1 -1
- package/dist/unstable/workers/index.js.map +1 -1
- package/dist/unstable/workflow/Activity.d.ts +2 -2
- package/dist/unstable/workflow/Activity.js +2 -2
- package/dist/unstable/workflow/Activity.js.map +1 -1
- package/dist/unstable/workflow/DurableClock.d.ts +1 -1
- package/dist/unstable/workflow/DurableClock.js +1 -1
- package/dist/unstable/workflow/DurableClock.js.map +1 -1
- package/dist/unstable/workflow/DurableDeferred.d.ts +10 -10
- package/dist/unstable/workflow/DurableDeferred.js +5 -5
- package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
- package/dist/unstable/workflow/DurableQueue.d.ts +22 -20
- package/dist/unstable/workflow/DurableQueue.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableQueue.js +22 -20
- package/dist/unstable/workflow/DurableQueue.js.map +1 -1
- package/dist/unstable/workflow/Workflow.d.ts +21 -21
- package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
- package/dist/unstable/workflow/Workflow.js +13 -14
- package/dist/unstable/workflow/Workflow.js.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.d.ts +1 -1
- package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
- package/dist/unstable/workflow/WorkflowProxy.d.ts +4 -2
- package/dist/unstable/workflow/WorkflowProxy.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowProxy.js +4 -2
- package/dist/unstable/workflow/WorkflowProxy.js.map +1 -1
- package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
- package/dist/unstable/workflow/index.js.map +1 -1
- package/dist/unstable/workflow/internal/crypto.js.map +1 -1
- package/package.json +5 -6
- package/src/Array.ts +1068 -1070
- package/src/BigDecimal.ts +433 -756
- package/src/BigInt.ts +213 -269
- package/src/Boolean.ts +146 -188
- package/src/Cache.ts +409 -255
- package/src/Cause.ts +167 -277
- package/src/Channel.ts +923 -830
- package/src/ChannelSchema.ts +1 -1
- package/src/Chunk.ts +841 -1181
- package/src/Clock.ts +181 -49
- package/src/Combiner.ts +20 -33
- package/src/Config.ts +618 -334
- package/src/ConfigProvider.ts +221 -127
- package/src/Console.ts +289 -39
- package/src/Context.ts +319 -378
- package/src/Cron.ts +68 -77
- package/src/Crypto.ts +13 -15
- package/src/Data.ts +63 -82
- package/src/DateTime.ts +564 -660
- package/src/Deferred.ts +253 -256
- package/src/Duration.ts +216 -308
- package/src/Effect.ts +2958 -3390
- package/src/Encoding.ts +22 -40
- package/src/Equal.ts +49 -39
- package/src/Equivalence.ts +103 -105
- package/src/ErrorReporter.ts +51 -27
- package/src/ExecutionPlan.ts +13 -55
- package/src/Exit.ts +116 -192
- package/src/Fiber.ts +81 -148
- package/src/FiberHandle.ts +155 -107
- package/src/FiberMap.ts +225 -174
- package/src/FiberSet.ts +124 -82
- package/src/FileSystem.ts +155 -263
- package/src/Filter.ts +61 -33
- package/src/Formatter.ts +54 -56
- package/src/Function.ts +76 -145
- package/src/Graph.ts +416 -770
- package/src/HKT.ts +12 -6
- package/src/Hash.ts +52 -83
- package/src/HashMap.ts +319 -411
- package/src/HashRing.ts +1 -0
- package/src/HashSet.ts +177 -284
- package/src/Inspectable.ts +12 -12
- package/src/Iterable.ts +622 -787
- package/src/JsonPatch.ts +60 -113
- package/src/JsonPointer.ts +8 -8
- package/src/JsonSchema.ts +405 -249
- package/src/Latch.ts +23 -35
- package/src/Layer.ts +359 -260
- package/src/LayerMap.ts +49 -29
- package/src/LayerRef.ts +6 -2
- package/src/LogLevel.ts +114 -214
- package/src/Logger.ts +347 -699
- package/src/ManagedRuntime.ts +20 -5
- package/src/Match.ts +217 -252
- package/src/Metric.ts +520 -1092
- package/src/MutableHashMap.ts +218 -255
- package/src/MutableHashSet.ts +84 -89
- package/src/MutableList.ts +73 -370
- package/src/MutableRef.ts +420 -243
- package/src/Newtype.ts +21 -14
- package/src/NonEmptyIterable.ts +7 -137
- package/src/Number.ts +196 -233
- package/src/Optic.ts +246 -385
- package/src/Option.ts +449 -813
- package/src/Order.ts +109 -109
- package/src/Ordering.ts +20 -23
- package/src/PartitionedSemaphore.ts +1 -4
- package/src/Path.ts +38 -41
- package/src/Pipeable.ts +6 -5
- package/src/PlatformError.ts +4 -4
- package/src/Pool.ts +4 -2
- package/src/Predicate.ts +200 -181
- package/src/PrimaryKey.ts +7 -7
- package/src/PubSub.ts +526 -552
- package/src/Pull.ts +24 -18
- package/src/Queue.ts +200 -159
- package/src/Random.ts +49 -74
- package/src/RcMap.ts +121 -63
- package/src/RcRef.ts +24 -13
- package/src/Record.ts +387 -487
- package/src/Redactable.ts +10 -3
- package/src/Redacted.ts +25 -25
- package/src/Reducer.ts +8 -15
- package/src/Ref.ts +221 -361
- package/src/References.ts +102 -214
- package/src/RegExp.ts +10 -14
- package/src/Request.ts +36 -28
- package/src/RequestResolver.ts +202 -91
- package/src/Result.ts +314 -485
- package/src/Runtime.ts +50 -75
- package/src/Schedule.ts +308 -1734
- package/src/Scheduler.ts +20 -7
- package/src/Schema.ts +3156 -1634
- package/src/SchemaAST.ts +676 -489
- package/src/SchemaError.ts +8 -7
- package/src/SchemaGetter.ts +277 -218
- package/src/SchemaIssue.ts +90 -276
- package/src/SchemaParser.ts +179 -116
- package/src/SchemaRepresentation.ts +698 -3417
- package/src/SchemaTransformation.ts +132 -91
- package/src/Scope.ts +123 -151
- package/src/ScopedRef.ts +4 -4
- package/src/Semaphore.ts +157 -54
- package/src/Sink.ts +128 -113
- package/src/Stdio.ts +1 -1
- package/src/Stream.ts +2665 -3142
- package/src/String.ts +275 -312
- package/src/Struct.ts +114 -118
- package/src/SubscriptionRef.ts +284 -252
- package/src/Symbol.ts +3 -3
- package/src/Terminal.ts +2 -2
- package/src/Tracer.ts +102 -55
- package/src/Trie.ts +287 -679
- package/src/Tuple.ts +92 -127
- package/src/TxChunk.ts +201 -121
- package/src/TxDeferred.ts +62 -46
- package/src/TxHashMap.ts +645 -799
- package/src/TxHashSet.ts +443 -356
- package/src/TxPriorityQueue.ts +130 -98
- package/src/TxPubSub.ts +107 -80
- package/src/TxQueue.ts +214 -183
- package/src/TxReentrantLock.ts +97 -66
- package/src/TxRef.ts +51 -32
- package/src/TxSemaphore.ts +129 -95
- package/src/TxSubscriptionRef.ts +97 -70
- package/src/Types.ts +127 -70
- package/src/Unify.ts +45 -65
- package/src/Utils.ts +23 -16
- package/src/index.ts +0 -5
- package/src/internal/core.ts +5 -4
- package/src/internal/dateTime.ts +6 -0
- package/src/internal/effect.ts +160 -79
- package/src/internal/matcher.ts +1 -1
- package/src/internal/persistence.ts +2 -0
- package/src/internal/record.ts +11 -7
- package/src/internal/references.ts +3 -7
- package/src/internal/schema/annotations.ts +44 -0
- package/src/internal/schema/fromJsonSchemaDocument.ts +959 -0
- package/src/internal/schema/fromRepresentation.ts +339 -0
- package/src/internal/schema/parser.ts +22 -0
- package/src/internal/schema/schema.ts +45 -46
- package/src/internal/schema/{arbitrary.ts → toArbitrary.ts} +8 -10
- package/src/internal/schema/toCodeDocument.ts +572 -0
- package/src/internal/schema/{equivalence.ts → toEquivalence.ts} +12 -7
- package/src/internal/schema/toJsonSchemaDocument.ts +529 -0
- package/src/internal/schema/toRepresentation.ts +386 -0
- package/src/internal/stackTraceLimit.ts +3 -7
- package/src/internal/trie.ts +10 -11
- package/src/testing/FastCheck.ts +8 -7
- package/src/testing/TestClock.ts +73 -31
- package/src/testing/TestConsole.ts +32 -31
- package/src/testing/TestSchema.ts +29 -29
- package/src/unstable/ai/AiError.ts +100 -122
- package/src/unstable/ai/AnthropicStructuredOutput.ts +103 -334
- package/src/unstable/ai/Chat.ts +132 -97
- package/src/unstable/ai/EmbeddingModel.ts +1 -1
- package/src/unstable/ai/IdGenerator.ts +32 -28
- package/src/unstable/ai/LanguageModel.ts +137 -95
- package/src/unstable/ai/McpProtocol.ts +48 -0
- package/src/unstable/ai/McpSchema.ts +75 -65
- package/src/unstable/ai/McpServer.ts +1045 -303
- package/src/unstable/ai/Model.ts +9 -20
- package/src/unstable/ai/OpenAiStructuredOutput.ts +231 -396
- package/src/unstable/ai/Prompt.ts +145 -43
- package/src/unstable/ai/Response.ts +52 -38
- package/src/unstable/ai/Telemetry.ts +46 -13
- package/src/unstable/ai/Tokenizer.ts +14 -3
- package/src/unstable/ai/Tool.ts +81 -48
- package/src/unstable/ai/Toolkit.ts +45 -15
- package/src/unstable/ai/index.ts +5 -0
- package/src/unstable/ai/internal/codec-transformer.ts +13 -7
- package/src/unstable/ai/internal/mcpProtocol.ts +85 -0
- package/src/unstable/ai/internal/mcpProtocolRegistry.ts +70 -0
- package/src/unstable/ai/internal/structured-output.ts +453 -0
- package/src/unstable/cli/Argument.ts +273 -69
- package/src/unstable/cli/CliError.ts +116 -77
- package/src/unstable/cli/CliOutput.ts +44 -58
- package/src/unstable/cli/Command.ts +709 -111
- package/src/unstable/cli/Flag.ts +418 -138
- package/src/unstable/cli/GlobalFlag.ts +1 -1
- package/src/unstable/cli/HelpDoc.ts +12 -4
- package/src/unstable/cli/Param.ts +295 -81
- package/src/unstable/cli/Primitive.ts +371 -150
- package/src/unstable/cli/Prompt.ts +28 -14
- package/src/unstable/cli/internal/command.ts +13 -5
- package/src/unstable/cli/internal/config.ts +8 -10
- package/src/unstable/cli/internal/lexer.ts +8 -2
- package/src/unstable/cli/internal/parser.ts +2 -2
- package/src/unstable/cluster/ClusterSchema.ts +8 -8
- package/src/unstable/cluster/ClusterWorkflowEngine.ts +8 -4
- package/src/unstable/cluster/Entity.ts +16 -17
- package/src/unstable/cluster/EntityProxy.ts +4 -2
- package/src/unstable/cluster/EntityResource.ts +2 -2
- package/src/unstable/cluster/Envelope.ts +5 -4
- package/src/unstable/cluster/HttpRunner.ts +6 -4
- package/src/unstable/cluster/Message.ts +9 -9
- package/src/unstable/cluster/MessageStorage.ts +15 -15
- package/src/unstable/cluster/Reply.ts +5 -7
- package/src/unstable/cluster/Runner.ts +1 -1
- package/src/unstable/cluster/RunnerAddress.ts +1 -1
- package/src/unstable/cluster/RunnerHealth.ts +1 -1
- package/src/unstable/cluster/RunnerServer.ts +41 -8
- package/src/unstable/cluster/RunnerStorage.ts +2 -2
- package/src/unstable/cluster/Runners.ts +23 -12
- package/src/unstable/cluster/ShardId.ts +1 -1
- package/src/unstable/cluster/Sharding.ts +168 -42
- package/src/unstable/cluster/ShardingConfig.ts +8 -4
- package/src/unstable/cluster/SingleRunner.ts +4 -2
- package/src/unstable/cluster/SingletonAddress.ts +1 -1
- package/src/unstable/cluster/Snowflake.ts +8 -8
- package/src/unstable/cluster/SqlMessageStorage.ts +84 -36
- package/src/unstable/cluster/SqlRunnerStorage.ts +205 -119
- package/src/unstable/cluster/internal/entityManager.ts +42 -25
- package/src/unstable/cluster/internal/shardLock.ts +9 -0
- package/src/unstable/devtools/DevToolsSchema.ts +10 -5
- package/src/unstable/encoding/Msgpack.ts +6 -8
- package/src/unstable/encoding/Sse.ts +98 -16
- package/src/unstable/eventlog/Event.ts +20 -20
- package/src/unstable/eventlog/EventGroup.ts +4 -4
- package/src/unstable/eventlog/EventJournal.ts +16 -16
- package/src/unstable/eventlog/EventLog.ts +24 -14
- package/src/unstable/eventlog/EventLogEncryption.ts +2 -2
- package/src/unstable/eventlog/EventLogMessage.ts +12 -5
- package/src/unstable/eventlog/EventLogRemote.ts +1 -1
- package/src/unstable/eventlog/EventLogServer.ts +41 -7
- package/src/unstable/eventlog/EventLogServerEncrypted.ts +13 -5
- package/src/unstable/eventlog/EventLogServerUnencrypted.ts +14 -6
- package/src/unstable/eventlog/EventLogSessionAuth.ts +1 -1
- package/src/unstable/eventlog/SqlEventJournal.ts +2 -2
- package/src/unstable/eventlog/SqlEventLogServerEncrypted.ts +1 -1
- package/src/unstable/eventlog/SqlEventLogServerUnencrypted.ts +6 -3
- package/src/unstable/http/Cookies.ts +64 -45
- package/src/unstable/http/Etag.ts +1 -1
- package/src/unstable/http/FetchHttpClient.ts +3 -1
- package/src/unstable/http/Headers.ts +10 -10
- package/src/unstable/http/HttpBody.ts +20 -5
- package/src/unstable/http/HttpClient.ts +83 -55
- package/src/unstable/http/HttpClientRequest.ts +59 -0
- package/src/unstable/http/HttpClientResponse.ts +4 -4
- package/src/unstable/http/HttpEffect.ts +8 -8
- package/src/unstable/http/HttpMethod.ts +6 -9
- package/src/unstable/http/HttpMiddleware.ts +202 -39
- package/src/unstable/http/HttpPlatform.ts +95 -0
- package/src/unstable/http/HttpRouter.ts +102 -98
- package/src/unstable/http/HttpServer.ts +13 -13
- package/src/unstable/http/HttpServerError.ts +2 -2
- package/src/unstable/http/HttpServerRequest.ts +9 -8
- package/src/unstable/http/HttpServerResponse.ts +30 -0
- package/src/unstable/http/HttpStaticServer.ts +35 -7
- package/src/unstable/http/Multipart.ts +22 -19
- package/src/unstable/http/Template.ts +1 -1
- package/src/unstable/http/Url.ts +33 -63
- package/src/unstable/http/UrlParams.ts +27 -32
- package/src/unstable/http/internal/compression.ts +196 -0
- package/src/unstable/httpapi/HttpApi.ts +3 -3
- package/src/unstable/httpapi/HttpApiBuilder.ts +10 -9
- package/src/unstable/httpapi/HttpApiClient.ts +19 -19
- package/src/unstable/httpapi/HttpApiEndpoint.ts +42 -42
- package/src/unstable/httpapi/HttpApiError.ts +13 -13
- package/src/unstable/httpapi/HttpApiGroup.ts +16 -16
- package/src/unstable/httpapi/HttpApiMiddleware.ts +71 -24
- package/src/unstable/httpapi/HttpApiScalar.ts +0 -12
- package/src/unstable/httpapi/HttpApiSchema.ts +6 -6
- package/src/unstable/httpapi/OpenApi.ts +65 -41
- package/src/unstable/observability/OtlpExporter.ts +126 -10
- package/src/unstable/observability/OtlpLogger.ts +5 -5
- package/src/unstable/observability/OtlpMetrics.ts +12 -5
- package/src/unstable/observability/OtlpResource.ts +26 -17
- package/src/unstable/observability/OtlpTracer.ts +8 -4
- package/src/unstable/observability/PrometheusMetrics.ts +13 -4
- package/src/unstable/observability/internal/otlpEnv.ts +1 -1
- package/src/unstable/observability/internal/protobuf.ts +3 -0
- package/src/unstable/persistence/KeyValueStore.ts +72 -49
- package/src/unstable/persistence/Persistable.ts +11 -10
- package/src/unstable/persistence/PersistedQueue.ts +6 -6
- package/src/unstable/persistence/Persistence.ts +126 -19
- package/src/unstable/persistence/RateLimiter.ts +28 -17
- package/src/unstable/persistence/Redis.ts +4 -4
- package/src/unstable/process/ChildProcess.ts +64 -21
- package/src/unstable/process/ChildProcessSpawner.ts +22 -11
- package/src/unstable/reactivity/AsyncResult.ts +16 -16
- package/src/unstable/reactivity/Atom.ts +117 -22
- package/src/unstable/reactivity/AtomHttpApi.ts +5 -4
- package/src/unstable/reactivity/AtomRegistry.ts +25 -4
- package/src/unstable/reactivity/AtomRpc.ts +5 -4
- package/src/unstable/reactivity/Hydration.ts +1 -1
- package/src/unstable/rpc/Rpc.ts +35 -33
- package/src/unstable/rpc/RpcClient.ts +18 -16
- package/src/unstable/rpc/RpcGroup.ts +8 -8
- package/src/unstable/rpc/RpcMessage.ts +31 -30
- package/src/unstable/rpc/RpcMiddleware.ts +10 -10
- package/src/unstable/rpc/RpcSchema.ts +4 -4
- package/src/unstable/rpc/RpcSerialization.ts +167 -68
- package/src/unstable/rpc/RpcServer.ts +18 -15
- package/src/unstable/rpc/RpcWorker.ts +5 -5
- package/src/unstable/schema/Model.ts +52 -50
- package/src/unstable/schema/VariantSchema.ts +19 -29
- package/src/unstable/socket/Socket.ts +18 -5
- package/src/unstable/sql/SqlClient.ts +5 -6
- package/src/unstable/sql/SqlError.ts +2 -2
- package/src/unstable/sql/SqlModel.ts +2 -2
- package/src/unstable/sql/SqlResolver.ts +5 -5
- package/src/unstable/sql/Statement.ts +31 -29
- package/src/unstable/workers/Transferable.ts +1 -1
- package/src/unstable/workers/Worker.ts +2 -2
- package/src/unstable/workers/WorkerError.ts +7 -7
- package/src/unstable/workers/WorkerRunner.ts +1 -1
- package/src/unstable/workflow/Activity.ts +2 -2
- package/src/unstable/workflow/DurableClock.ts +1 -1
- package/src/unstable/workflow/DurableDeferred.ts +10 -10
- package/src/unstable/workflow/DurableQueue.ts +22 -20
- package/src/unstable/workflow/Workflow.ts +23 -23
- package/src/unstable/workflow/WorkflowEngine.ts +1 -1
- package/src/unstable/workflow/WorkflowProxy.ts +4 -2
- package/dist/SchemaUtils.d.ts +0 -28
- package/dist/SchemaUtils.d.ts.map +0 -1
- package/dist/SchemaUtils.js +0 -45
- package/dist/SchemaUtils.js.map +0 -1
- package/dist/internal/schema/arbitrary.d.ts.map +0 -1
- package/dist/internal/schema/arbitrary.js.map +0 -1
- package/dist/internal/schema/equivalence.d.ts +0 -2
- package/dist/internal/schema/equivalence.d.ts.map +0 -1
- package/dist/internal/schema/equivalence.js.map +0 -1
- package/dist/internal/schema/representation.d.ts +0 -2
- package/dist/internal/schema/representation.d.ts.map +0 -1
- package/dist/internal/schema/representation.js +0 -865
- package/dist/internal/schema/representation.js.map +0 -1
- package/dist/internal/version.d.ts +0 -3
- package/dist/internal/version.d.ts.map +0 -1
- package/dist/internal/version.js +0 -2
- package/dist/internal/version.js.map +0 -1
- package/src/SchemaUtils.ts +0 -51
- package/src/internal/schema/representation.ts +0 -795
- package/src/internal/version.ts +0 -2
package/src/Record.ts
CHANGED
|
@@ -15,6 +15,7 @@ import * as Equal from "./Equal.ts"
|
|
|
15
15
|
import type { Equivalence } from "./Equivalence.ts"
|
|
16
16
|
import { dual, identity } from "./Function.ts"
|
|
17
17
|
import type { TypeLambda } from "./HKT.ts"
|
|
18
|
+
import * as InternalRecord from "./internal/record.ts"
|
|
18
19
|
import * as Option from "./Option.ts"
|
|
19
20
|
import * as Reducer from "./Reducer.ts"
|
|
20
21
|
import type { Result } from "./Result.ts"
|
|
@@ -27,7 +28,7 @@ import type { NoInfer } from "./Types.ts"
|
|
|
27
28
|
*
|
|
28
29
|
* **Example** (Defining a readonly record type)
|
|
29
30
|
*
|
|
30
|
-
* ```ts
|
|
31
|
+
* ```ts import.meta.vitest
|
|
31
32
|
* import type { Record } from "effect"
|
|
32
33
|
*
|
|
33
34
|
* // Creating a readonly record type
|
|
@@ -37,6 +38,7 @@ import type { NoInfer } from "./Types.ts"
|
|
|
37
38
|
* name: "John",
|
|
38
39
|
* age: 30
|
|
39
40
|
* }
|
|
41
|
+
* user // => { name: "John", age: 30 }
|
|
40
42
|
* ```
|
|
41
43
|
*
|
|
42
44
|
* @category models
|
|
@@ -52,7 +54,7 @@ export type ReadonlyRecord<in out K extends string | symbol, out A> = {
|
|
|
52
54
|
*
|
|
53
55
|
* **Example** (Using readonly record helper types)
|
|
54
56
|
*
|
|
55
|
-
* ```ts
|
|
57
|
+
* ```ts import.meta.vitest
|
|
56
58
|
* import type { Record } from "effect"
|
|
57
59
|
*
|
|
58
60
|
* // Using NonLiteralKey to convert literal keys to generic types
|
|
@@ -60,6 +62,9 @@ export type ReadonlyRecord<in out K extends string | symbol, out A> = {
|
|
|
60
62
|
*
|
|
61
63
|
* // Using IntersectKeys to find common keys between record types
|
|
62
64
|
* type CommonKeys = Record.ReadonlyRecord.IntersectKeys<"a" | "b", "b" | "c"> // "b"
|
|
65
|
+
*
|
|
66
|
+
* "key" satisfies GenericKey
|
|
67
|
+
* "b" satisfies CommonKeys
|
|
63
68
|
* ```
|
|
64
69
|
*
|
|
65
70
|
* @since 2.0.0
|
|
@@ -76,7 +81,7 @@ export declare namespace ReadonlyRecord {
|
|
|
76
81
|
*
|
|
77
82
|
* **Example** (Converting literal keys to non-literal keys)
|
|
78
83
|
*
|
|
79
|
-
* ```ts
|
|
84
|
+
* ```ts import.meta.vitest
|
|
80
85
|
* import type { Record } from "effect"
|
|
81
86
|
*
|
|
82
87
|
* // For literal string keys, this becomes 'string'
|
|
@@ -84,6 +89,10 @@ export declare namespace ReadonlyRecord {
|
|
|
84
89
|
*
|
|
85
90
|
* // For symbol keys, this becomes 'symbol'
|
|
86
91
|
* type Example2 = Record.ReadonlyRecord.NonLiteralKey<symbol> // symbol
|
|
92
|
+
*
|
|
93
|
+
* const symbol: Example2 = Symbol.for("key")
|
|
94
|
+
* "key" satisfies Example1
|
|
95
|
+
* symbol
|
|
87
96
|
* ```
|
|
88
97
|
*
|
|
89
98
|
* @category models
|
|
@@ -98,7 +107,7 @@ export declare namespace ReadonlyRecord {
|
|
|
98
107
|
*
|
|
99
108
|
* **Example** (Intersecting record keys)
|
|
100
109
|
*
|
|
101
|
-
* ```ts
|
|
110
|
+
* ```ts import.meta.vitest
|
|
102
111
|
* import type { Record } from "effect"
|
|
103
112
|
*
|
|
104
113
|
* // Intersection of literal keys
|
|
@@ -106,6 +115,9 @@ export declare namespace ReadonlyRecord {
|
|
|
106
115
|
*
|
|
107
116
|
* // Intersection with generic string
|
|
108
117
|
* type Example2 = Record.ReadonlyRecord.IntersectKeys<string, "a" | "b"> // string
|
|
118
|
+
*
|
|
119
|
+
* "b" satisfies Example1
|
|
120
|
+
* "a" satisfies Example2
|
|
109
121
|
* ```
|
|
110
122
|
*
|
|
111
123
|
* @category models
|
|
@@ -122,7 +134,7 @@ export declare namespace ReadonlyRecord {
|
|
|
122
134
|
*
|
|
123
135
|
* **Example** (Applying a readonly record type lambda)
|
|
124
136
|
*
|
|
125
|
-
* ```ts
|
|
137
|
+
* ```ts import.meta.vitest
|
|
126
138
|
* import type { HKT, Record } from "effect"
|
|
127
139
|
*
|
|
128
140
|
* type Settings = HKT.Kind<
|
|
@@ -137,9 +149,10 @@ export declare namespace ReadonlyRecord {
|
|
|
137
149
|
* port: 3000,
|
|
138
150
|
* retries: 3
|
|
139
151
|
* }
|
|
152
|
+
* defaults // => { port: 3000, retries: 3 }
|
|
140
153
|
* ```
|
|
141
154
|
*
|
|
142
|
-
* @category
|
|
155
|
+
* @category utility types
|
|
143
156
|
* @since 2.0.0
|
|
144
157
|
*/
|
|
145
158
|
export interface ReadonlyRecordTypeLambda<K extends string = string> extends TypeLambda {
|
|
@@ -151,16 +164,15 @@ export interface ReadonlyRecordTypeLambda<K extends string = string> extends Typ
|
|
|
151
164
|
*
|
|
152
165
|
* **Example** (Creating an empty record)
|
|
153
166
|
*
|
|
154
|
-
* ```ts
|
|
167
|
+
* ```ts import.meta.vitest
|
|
155
168
|
* import { Record } from "effect"
|
|
156
169
|
*
|
|
157
170
|
* // Create an empty record
|
|
158
171
|
* const emptyRecord = Record.empty<string, number>()
|
|
159
|
-
*
|
|
172
|
+
* emptyRecord // => {}
|
|
160
173
|
*
|
|
161
174
|
* // The type ensures type safety for future operations
|
|
162
|
-
*
|
|
163
|
-
* console.log(withValue) // { count: 42 }
|
|
175
|
+
* Record.set(emptyRecord, "count", 42) // => { count: 42 }
|
|
164
176
|
* ```
|
|
165
177
|
*
|
|
166
178
|
* @category constructors
|
|
@@ -176,12 +188,11 @@ export const empty = <K extends string | symbol = never, V = never>(): Record<
|
|
|
176
188
|
*
|
|
177
189
|
* **Example** (Checking for an empty record)
|
|
178
190
|
*
|
|
179
|
-
* ```ts
|
|
191
|
+
* ```ts import.meta.vitest
|
|
180
192
|
* import { Record } from "effect"
|
|
181
|
-
* import * as assert from "node:assert"
|
|
182
193
|
*
|
|
183
|
-
*
|
|
184
|
-
*
|
|
194
|
+
* Record.isEmptyRecord({}) // => true
|
|
195
|
+
* Record.isEmptyRecord({ a: 3 }) // => false
|
|
185
196
|
* ```
|
|
186
197
|
*
|
|
187
198
|
* @category guards
|
|
@@ -195,12 +206,11 @@ export const isEmptyRecord = <K extends string, A>(self: Record<K, A>): self is
|
|
|
195
206
|
*
|
|
196
207
|
* **Example** (Checking for an empty readonly record)
|
|
197
208
|
*
|
|
198
|
-
* ```ts
|
|
209
|
+
* ```ts import.meta.vitest
|
|
199
210
|
* import { Record } from "effect"
|
|
200
|
-
* import * as assert from "node:assert"
|
|
201
211
|
*
|
|
202
|
-
*
|
|
203
|
-
*
|
|
212
|
+
* Record.isEmptyReadonlyRecord({}) // => true
|
|
213
|
+
* Record.isEmptyReadonlyRecord({ a: 3 }) // => false
|
|
204
214
|
* ```
|
|
205
215
|
*
|
|
206
216
|
* @category guards
|
|
@@ -216,16 +226,10 @@ export const isEmptyReadonlyRecord: <K extends string, A>(
|
|
|
216
226
|
*
|
|
217
227
|
* **Example** (Building a record from mapped iterable values)
|
|
218
228
|
*
|
|
219
|
-
* ```ts
|
|
229
|
+
* ```ts import.meta.vitest
|
|
220
230
|
* import { Record } from "effect"
|
|
221
|
-
* import * as assert from "node:assert"
|
|
222
|
-
*
|
|
223
|
-
* const input = [1, 2, 3, 4]
|
|
224
231
|
*
|
|
225
|
-
*
|
|
226
|
-
* Record.fromIterableWith(input, (a) => [String(a), a * 2]),
|
|
227
|
-
* { "1": 2, "2": 4, "3": 6, "4": 8 }
|
|
228
|
-
* )
|
|
232
|
+
* Record.fromIterableWith([1, 2, 3, 4], (a) => [String(a), a * 2]) // => { "1": 2, "2": 4, "3": 6, "4": 8 }
|
|
229
233
|
* ```
|
|
230
234
|
*
|
|
231
235
|
* @category constructors
|
|
@@ -238,16 +242,10 @@ export const fromIterableWith: {
|
|
|
238
242
|
*
|
|
239
243
|
* **Example** (Building a record from mapped iterable values)
|
|
240
244
|
*
|
|
241
|
-
* ```ts
|
|
245
|
+
* ```ts import.meta.vitest
|
|
242
246
|
* import { Record } from "effect"
|
|
243
|
-
* import * as assert from "node:assert"
|
|
244
|
-
*
|
|
245
|
-
* const input = [1, 2, 3, 4]
|
|
246
247
|
*
|
|
247
|
-
*
|
|
248
|
-
* Record.fromIterableWith(input, (a) => [String(a), a * 2]),
|
|
249
|
-
* { "1": 2, "2": 4, "3": 6, "4": 8 }
|
|
250
|
-
* )
|
|
248
|
+
* Record.fromIterableWith([1, 2, 3, 4], (a) => [String(a), a * 2]) // => { "1": 2, "2": 4, "3": 6, "4": 8 }
|
|
251
249
|
* ```
|
|
252
250
|
*
|
|
253
251
|
* @category constructors
|
|
@@ -260,16 +258,10 @@ export const fromIterableWith: {
|
|
|
260
258
|
*
|
|
261
259
|
* **Example** (Building a record from mapped iterable values)
|
|
262
260
|
*
|
|
263
|
-
* ```ts
|
|
261
|
+
* ```ts import.meta.vitest
|
|
264
262
|
* import { Record } from "effect"
|
|
265
|
-
* import * as assert from "node:assert"
|
|
266
|
-
*
|
|
267
|
-
* const input = [1, 2, 3, 4]
|
|
268
263
|
*
|
|
269
|
-
*
|
|
270
|
-
* Record.fromIterableWith(input, (a) => [String(a), a * 2]),
|
|
271
|
-
* { "1": 2, "2": 4, "3": 6, "4": 8 }
|
|
272
|
-
* )
|
|
264
|
+
* Record.fromIterableWith([1, 2, 3, 4], (a) => [String(a), a * 2]) // => { "1": 2, "2": 4, "3": 6, "4": 8 }
|
|
273
265
|
* ```
|
|
274
266
|
*
|
|
275
267
|
* @category constructors
|
|
@@ -285,7 +277,7 @@ export const fromIterableWith: {
|
|
|
285
277
|
const out: Record<string, B> = empty()
|
|
286
278
|
for (const a of self) {
|
|
287
279
|
const [k, b] = f(a)
|
|
288
|
-
out
|
|
280
|
+
InternalRecord.assignProperty(out, k, b)
|
|
289
281
|
}
|
|
290
282
|
return out
|
|
291
283
|
}
|
|
@@ -296,31 +288,77 @@ export const fromIterableWith: {
|
|
|
296
288
|
*
|
|
297
289
|
* **Example** (Building a record keyed by iterable values)
|
|
298
290
|
*
|
|
299
|
-
* ```ts
|
|
291
|
+
* ```ts import.meta.vitest
|
|
300
292
|
* import { Record } from "effect"
|
|
301
|
-
* import * as assert from "node:assert"
|
|
302
293
|
*
|
|
303
294
|
* const users = [
|
|
304
295
|
* { id: "2", name: "name2" },
|
|
305
296
|
* { id: "1", name: "name1" }
|
|
306
297
|
* ]
|
|
307
298
|
*
|
|
308
|
-
*
|
|
309
|
-
*
|
|
310
|
-
*
|
|
311
|
-
*
|
|
312
|
-
* "1": { id: "1", name: "name1" }
|
|
313
|
-
* }
|
|
314
|
-
* )
|
|
299
|
+
* Record.fromIterableBy(
|
|
300
|
+
* users,
|
|
301
|
+
* (user) => user.id
|
|
302
|
+
* ) // => { "1": { id: "1", name: "name1" }, "2": { id: "2", name: "name2" } }
|
|
315
303
|
* ```
|
|
316
304
|
*
|
|
317
305
|
* @category constructors
|
|
318
306
|
* @since 2.0.0
|
|
319
307
|
*/
|
|
320
|
-
export const fromIterableBy
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
308
|
+
export const fromIterableBy: {
|
|
309
|
+
/**
|
|
310
|
+
* Creates a new record from an iterable, utilizing the provided function to determine the key for each element.
|
|
311
|
+
*
|
|
312
|
+
* **Example** (Building a record keyed by iterable values)
|
|
313
|
+
*
|
|
314
|
+
* ```ts import.meta.vitest
|
|
315
|
+
* import { Record } from "effect"
|
|
316
|
+
*
|
|
317
|
+
* const users = [
|
|
318
|
+
* { id: "2", name: "name2" },
|
|
319
|
+
* { id: "1", name: "name1" }
|
|
320
|
+
* ]
|
|
321
|
+
*
|
|
322
|
+
* Record.fromIterableBy(
|
|
323
|
+
* users,
|
|
324
|
+
* (user) => user.id
|
|
325
|
+
* ) // => { "1": { id: "1", name: "name1" }, "2": { id: "2", name: "name2" } }
|
|
326
|
+
* ```
|
|
327
|
+
*
|
|
328
|
+
* @category constructors
|
|
329
|
+
* @since 2.0.0
|
|
330
|
+
*/
|
|
331
|
+
<A, K extends string | symbol>(f: (a: A) => K): (items: Iterable<A>) => Record<ReadonlyRecord.NonLiteralKey<K>, A>
|
|
332
|
+
/**
|
|
333
|
+
* Creates a new record from an iterable, utilizing the provided function to determine the key for each element.
|
|
334
|
+
*
|
|
335
|
+
* **Example** (Building a record keyed by iterable values)
|
|
336
|
+
*
|
|
337
|
+
* ```ts import.meta.vitest
|
|
338
|
+
* import { Record } from "effect"
|
|
339
|
+
*
|
|
340
|
+
* const users = [
|
|
341
|
+
* { id: "2", name: "name2" },
|
|
342
|
+
* { id: "1", name: "name1" }
|
|
343
|
+
* ]
|
|
344
|
+
*
|
|
345
|
+
* Record.fromIterableBy(
|
|
346
|
+
* users,
|
|
347
|
+
* (user) => user.id
|
|
348
|
+
* ) // => { "1": { id: "1", name: "name1" }, "2": { id: "2", name: "name2" } }
|
|
349
|
+
* ```
|
|
350
|
+
*
|
|
351
|
+
* @category constructors
|
|
352
|
+
* @since 2.0.0
|
|
353
|
+
*/
|
|
354
|
+
<A, K extends string | symbol>(items: Iterable<A>, f: (a: A) => K): Record<ReadonlyRecord.NonLiteralKey<K>, A>
|
|
355
|
+
} = dual(
|
|
356
|
+
2,
|
|
357
|
+
<A, K extends string | symbol>(
|
|
358
|
+
items: Iterable<A>,
|
|
359
|
+
f: (a: A) => K
|
|
360
|
+
): Record<ReadonlyRecord.NonLiteralKey<K>, A> => fromIterableWith(items, (a) => [f(a), a])
|
|
361
|
+
)
|
|
324
362
|
|
|
325
363
|
/**
|
|
326
364
|
* Builds a record from an iterable of key-value pairs.
|
|
@@ -332,13 +370,10 @@ export const fromIterableBy = <A, K extends string | symbol>(
|
|
|
332
370
|
*
|
|
333
371
|
* **Example** (Building a record from entries)
|
|
334
372
|
*
|
|
335
|
-
* ```ts
|
|
373
|
+
* ```ts import.meta.vitest
|
|
336
374
|
* import { Record } from "effect"
|
|
337
|
-
* import * as assert from "node:assert"
|
|
338
375
|
*
|
|
339
|
-
*
|
|
340
|
-
*
|
|
341
|
-
* assert.deepStrictEqual(Record.fromEntries(input), { a: 1, b: 2 })
|
|
376
|
+
* Record.fromEntries([["a", 1], ["b", 2]]) // => { a: 1, b: 2 }
|
|
342
377
|
* ```
|
|
343
378
|
*
|
|
344
379
|
* @category constructors
|
|
@@ -353,15 +388,11 @@ export const fromEntries: <Entry extends readonly [string | symbol, any]>(
|
|
|
353
388
|
*
|
|
354
389
|
* **Example** (Collecting mapped record values)
|
|
355
390
|
*
|
|
356
|
-
* ```ts
|
|
391
|
+
* ```ts import.meta.vitest
|
|
357
392
|
* import { Record } from "effect"
|
|
358
|
-
* import * as assert from "node:assert"
|
|
359
393
|
*
|
|
360
394
|
* const x = { a: 1, b: 2, c: 3 }
|
|
361
|
-
*
|
|
362
|
-
* "b",
|
|
363
|
-
* 2
|
|
364
|
-
* ], ["c", 3]])
|
|
395
|
+
* Record.collect(x, (key, n) => [key, n]) // => [["a", 1], ["b", 2], ["c", 3]]
|
|
365
396
|
* ```
|
|
366
397
|
*
|
|
367
398
|
* @category converting
|
|
@@ -373,15 +404,11 @@ export const collect: {
|
|
|
373
404
|
*
|
|
374
405
|
* **Example** (Collecting mapped record values)
|
|
375
406
|
*
|
|
376
|
-
* ```ts
|
|
407
|
+
* ```ts import.meta.vitest
|
|
377
408
|
* import { Record } from "effect"
|
|
378
|
-
* import * as assert from "node:assert"
|
|
379
409
|
*
|
|
380
410
|
* const x = { a: 1, b: 2, c: 3 }
|
|
381
|
-
*
|
|
382
|
-
* "b",
|
|
383
|
-
* 2
|
|
384
|
-
* ], ["c", 3]])
|
|
411
|
+
* Record.collect(x, (key, n) => [key, n]) // => [["a", 1], ["b", 2], ["c", 3]]
|
|
385
412
|
* ```
|
|
386
413
|
*
|
|
387
414
|
* @category converting
|
|
@@ -393,15 +420,11 @@ export const collect: {
|
|
|
393
420
|
*
|
|
394
421
|
* **Example** (Collecting mapped record values)
|
|
395
422
|
*
|
|
396
|
-
* ```ts
|
|
423
|
+
* ```ts import.meta.vitest
|
|
397
424
|
* import { Record } from "effect"
|
|
398
|
-
* import * as assert from "node:assert"
|
|
399
425
|
*
|
|
400
426
|
* const x = { a: 1, b: 2, c: 3 }
|
|
401
|
-
*
|
|
402
|
-
* "b",
|
|
403
|
-
* 2
|
|
404
|
-
* ], ["c", 3]])
|
|
427
|
+
* Record.collect(x, (key, n) => [key, n]) // => [["a", 1], ["b", 2], ["c", 3]]
|
|
405
428
|
* ```
|
|
406
429
|
*
|
|
407
430
|
* @category converting
|
|
@@ -424,12 +447,11 @@ export const collect: {
|
|
|
424
447
|
*
|
|
425
448
|
* **Example** (Converting a record to entries)
|
|
426
449
|
*
|
|
427
|
-
* ```ts
|
|
450
|
+
* ```ts import.meta.vitest
|
|
428
451
|
* import { Record } from "effect"
|
|
429
|
-
* import * as assert from "node:assert"
|
|
430
452
|
*
|
|
431
453
|
* const x = { a: 1, b: 2, c: 3 }
|
|
432
|
-
*
|
|
454
|
+
* Record.toEntries(x) // => [["a", 1], ["b", 2], ["c", 3]]
|
|
433
455
|
* ```
|
|
434
456
|
*
|
|
435
457
|
* @category converting
|
|
@@ -445,11 +467,10 @@ export const toEntries: <K extends string, A>(self: ReadonlyRecord<K, A>) => Arr
|
|
|
445
467
|
*
|
|
446
468
|
* **Example** (Getting the record size)
|
|
447
469
|
*
|
|
448
|
-
* ```ts
|
|
470
|
+
* ```ts import.meta.vitest
|
|
449
471
|
* import { Record } from "effect"
|
|
450
|
-
* import * as assert from "node:assert"
|
|
451
472
|
*
|
|
452
|
-
*
|
|
473
|
+
* Record.size({ a: "a", b: 1, c: true }) // => 3
|
|
453
474
|
* ```
|
|
454
475
|
*
|
|
455
476
|
* @category getters
|
|
@@ -462,15 +483,14 @@ export const size = <K extends string, A>(self: ReadonlyRecord<K, A>): number =>
|
|
|
462
483
|
*
|
|
463
484
|
* **Example** (Checking key membership)
|
|
464
485
|
*
|
|
465
|
-
* ```ts
|
|
486
|
+
* ```ts import.meta.vitest
|
|
466
487
|
* import { Record } from "effect"
|
|
467
|
-
* import * as assert from "node:assert"
|
|
468
488
|
*
|
|
469
|
-
*
|
|
470
|
-
*
|
|
489
|
+
* Record.has({ a: 1, b: 2 }, "a") // => true
|
|
490
|
+
* Record.has(Record.empty<string>(), "c") // => false
|
|
471
491
|
* ```
|
|
472
492
|
*
|
|
473
|
-
* @category
|
|
493
|
+
* @category predicates
|
|
474
494
|
* @since 2.0.0
|
|
475
495
|
*/
|
|
476
496
|
export const has: {
|
|
@@ -479,15 +499,14 @@ export const has: {
|
|
|
479
499
|
*
|
|
480
500
|
* **Example** (Checking key membership)
|
|
481
501
|
*
|
|
482
|
-
* ```ts
|
|
502
|
+
* ```ts import.meta.vitest
|
|
483
503
|
* import { Record } from "effect"
|
|
484
|
-
* import * as assert from "node:assert"
|
|
485
504
|
*
|
|
486
|
-
*
|
|
487
|
-
*
|
|
505
|
+
* Record.has({ a: 1, b: 2 }, "a") // => true
|
|
506
|
+
* Record.has(Record.empty<string>(), "c") // => false
|
|
488
507
|
* ```
|
|
489
508
|
*
|
|
490
|
-
* @category
|
|
509
|
+
* @category predicates
|
|
491
510
|
* @since 2.0.0
|
|
492
511
|
*/
|
|
493
512
|
<K extends string | symbol>(key: NoInfer<K>): <A>(self: ReadonlyRecord<K, A>) => boolean
|
|
@@ -496,15 +515,14 @@ export const has: {
|
|
|
496
515
|
*
|
|
497
516
|
* **Example** (Checking key membership)
|
|
498
517
|
*
|
|
499
|
-
* ```ts
|
|
518
|
+
* ```ts import.meta.vitest
|
|
500
519
|
* import { Record } from "effect"
|
|
501
|
-
* import * as assert from "node:assert"
|
|
502
520
|
*
|
|
503
|
-
*
|
|
504
|
-
*
|
|
521
|
+
* Record.has({ a: 1, b: 2 }, "a") // => true
|
|
522
|
+
* Record.has(Record.empty<string>(), "c") // => false
|
|
505
523
|
* ```
|
|
506
524
|
*
|
|
507
|
-
* @category
|
|
525
|
+
* @category predicates
|
|
508
526
|
* @since 2.0.0
|
|
509
527
|
*/
|
|
510
528
|
<K extends string | symbol, A>(self: ReadonlyRecord<K, A>, key: NoInfer<K>): boolean
|
|
@@ -521,14 +539,13 @@ export const has: {
|
|
|
521
539
|
*
|
|
522
540
|
* **Example** (Getting a value as an Option)
|
|
523
541
|
*
|
|
524
|
-
* ```ts
|
|
542
|
+
* ```ts import.meta.vitest
|
|
525
543
|
* import { Option, Record as R } from "effect"
|
|
526
|
-
* import * as assert from "node:assert"
|
|
527
544
|
*
|
|
528
545
|
* const person: Record<string, unknown> = { name: "John Doe", age: 35 }
|
|
529
546
|
*
|
|
530
|
-
*
|
|
531
|
-
*
|
|
547
|
+
* R.get(person, "name") // => Option.some("John Doe")
|
|
548
|
+
* R.get(person, "email") // => Option.none()
|
|
532
549
|
* ```
|
|
533
550
|
*
|
|
534
551
|
* @category getters
|
|
@@ -540,14 +557,13 @@ export const get: {
|
|
|
540
557
|
*
|
|
541
558
|
* **Example** (Getting a value as an Option)
|
|
542
559
|
*
|
|
543
|
-
* ```ts
|
|
560
|
+
* ```ts import.meta.vitest
|
|
544
561
|
* import { Option, Record as R } from "effect"
|
|
545
|
-
* import * as assert from "node:assert"
|
|
546
562
|
*
|
|
547
563
|
* const person: Record<string, unknown> = { name: "John Doe", age: 35 }
|
|
548
564
|
*
|
|
549
|
-
*
|
|
550
|
-
*
|
|
565
|
+
* R.get(person, "name") // => Option.some("John Doe")
|
|
566
|
+
* R.get(person, "email") // => Option.none()
|
|
551
567
|
* ```
|
|
552
568
|
*
|
|
553
569
|
* @category getters
|
|
@@ -559,14 +575,13 @@ export const get: {
|
|
|
559
575
|
*
|
|
560
576
|
* **Example** (Getting a value as an Option)
|
|
561
577
|
*
|
|
562
|
-
* ```ts
|
|
578
|
+
* ```ts import.meta.vitest
|
|
563
579
|
* import { Option, Record as R } from "effect"
|
|
564
|
-
* import * as assert from "node:assert"
|
|
565
580
|
*
|
|
566
581
|
* const person: Record<string, unknown> = { name: "John Doe", age: 35 }
|
|
567
582
|
*
|
|
568
|
-
*
|
|
569
|
-
*
|
|
583
|
+
* R.get(person, "name") // => Option.some("John Doe")
|
|
584
|
+
* R.get(person, "email") // => Option.none()
|
|
570
585
|
* ```
|
|
571
586
|
*
|
|
572
587
|
* @category getters
|
|
@@ -576,7 +591,7 @@ export const get: {
|
|
|
576
591
|
} = dual(
|
|
577
592
|
2,
|
|
578
593
|
<K extends string | symbol, A>(self: ReadonlyRecord<K, A>, key: NoInfer<K>): Option.Option<A> =>
|
|
579
|
-
|
|
594
|
+
Object.hasOwn(self, key) ? Option.some(self[key]) : Option.none()
|
|
580
595
|
)
|
|
581
596
|
|
|
582
597
|
/**
|
|
@@ -585,15 +600,15 @@ export const get: {
|
|
|
585
600
|
*
|
|
586
601
|
* **Example** (Modifying a value at a key)
|
|
587
602
|
*
|
|
588
|
-
* ```ts
|
|
589
|
-
* import { Record } from "effect"
|
|
603
|
+
* ```ts import.meta.vitest
|
|
604
|
+
* import { Option, Record } from "effect"
|
|
590
605
|
*
|
|
591
606
|
* const f = (x: number) => x * 2
|
|
592
607
|
*
|
|
593
608
|
* const input: Record<string, number> = { a: 3 }
|
|
594
609
|
*
|
|
595
|
-
* Record.modify(input, "a", f) // Option.some({ a: 6 })
|
|
596
|
-
* Record.modify(input, "b", f) // Option.none()
|
|
610
|
+
* Record.modify(input, "a", f) // => Option.some({ a: 6 })
|
|
611
|
+
* Record.modify(input, "b", f) // => Option.none()
|
|
597
612
|
* ```
|
|
598
613
|
*
|
|
599
614
|
* @category mutations
|
|
@@ -606,15 +621,15 @@ export const modify: {
|
|
|
606
621
|
*
|
|
607
622
|
* **Example** (Modifying a value at a key)
|
|
608
623
|
*
|
|
609
|
-
* ```ts
|
|
610
|
-
* import { Record } from "effect"
|
|
624
|
+
* ```ts import.meta.vitest
|
|
625
|
+
* import { Option, Record } from "effect"
|
|
611
626
|
*
|
|
612
627
|
* const f = (x: number) => x * 2
|
|
613
628
|
*
|
|
614
629
|
* const input: Record<string, number> = { a: 3 }
|
|
615
630
|
*
|
|
616
|
-
* Record.modify(input, "a", f) // Option.some({ a: 6 })
|
|
617
|
-
* Record.modify(input, "b", f) // Option.none()
|
|
631
|
+
* Record.modify(input, "a", f) // => Option.some({ a: 6 })
|
|
632
|
+
* Record.modify(input, "b", f) // => Option.none()
|
|
618
633
|
* ```
|
|
619
634
|
*
|
|
620
635
|
* @category mutations
|
|
@@ -627,15 +642,15 @@ export const modify: {
|
|
|
627
642
|
*
|
|
628
643
|
* **Example** (Modifying a value at a key)
|
|
629
644
|
*
|
|
630
|
-
* ```ts
|
|
631
|
-
* import { Record } from "effect"
|
|
645
|
+
* ```ts import.meta.vitest
|
|
646
|
+
* import { Option, Record } from "effect"
|
|
632
647
|
*
|
|
633
648
|
* const f = (x: number) => x * 2
|
|
634
649
|
*
|
|
635
650
|
* const input: Record<string, number> = { a: 3 }
|
|
636
651
|
*
|
|
637
|
-
* Record.modify(input, "a", f) // Option.some({ a: 6 })
|
|
638
|
-
* Record.modify(input, "b", f) // Option.none()
|
|
652
|
+
* Record.modify(input, "a", f) // => Option.some({ a: 6 })
|
|
653
|
+
* Record.modify(input, "b", f) // => Option.none()
|
|
639
654
|
* ```
|
|
640
655
|
*
|
|
641
656
|
* @category mutations
|
|
@@ -665,11 +680,11 @@ export const modify: {
|
|
|
665
680
|
*
|
|
666
681
|
* **Example** (Replacing a value at a key)
|
|
667
682
|
*
|
|
668
|
-
* ```ts
|
|
669
|
-
* import { Record } from "effect"
|
|
683
|
+
* ```ts import.meta.vitest
|
|
684
|
+
* import { Option, Record } from "effect"
|
|
670
685
|
*
|
|
671
|
-
* Record.replace({ a: 1, b: 2, c: 3 }, "a", 10) // Option.some({ a: 10, b: 2, c: 3 })
|
|
672
|
-
* Record.replace(Record.empty<string>(), "a", 10) // Option.none()
|
|
686
|
+
* Record.replace({ a: 1, b: 2, c: 3 }, "a", 10) // => Option.some({ a: 10, b: 2, c: 3 })
|
|
687
|
+
* Record.replace(Record.empty<string>(), "a", 10) // => Option.none()
|
|
673
688
|
* ```
|
|
674
689
|
*
|
|
675
690
|
* @category mutations
|
|
@@ -687,11 +702,11 @@ export const replace: {
|
|
|
687
702
|
*
|
|
688
703
|
* **Example** (Replacing a value at a key)
|
|
689
704
|
*
|
|
690
|
-
* ```ts
|
|
691
|
-
* import { Record } from "effect"
|
|
705
|
+
* ```ts import.meta.vitest
|
|
706
|
+
* import { Option, Record } from "effect"
|
|
692
707
|
*
|
|
693
|
-
* Record.replace({ a: 1, b: 2, c: 3 }, "a", 10) // Option.some({ a: 10, b: 2, c: 3 })
|
|
694
|
-
* Record.replace(Record.empty<string>(), "a", 10) // Option.none()
|
|
708
|
+
* Record.replace({ a: 1, b: 2, c: 3 }, "a", 10) // => Option.some({ a: 10, b: 2, c: 3 })
|
|
709
|
+
* Record.replace(Record.empty<string>(), "a", 10) // => Option.none()
|
|
695
710
|
* ```
|
|
696
711
|
*
|
|
697
712
|
* @category mutations
|
|
@@ -709,11 +724,11 @@ export const replace: {
|
|
|
709
724
|
*
|
|
710
725
|
* **Example** (Replacing a value at a key)
|
|
711
726
|
*
|
|
712
|
-
* ```ts
|
|
713
|
-
* import { Record } from "effect"
|
|
727
|
+
* ```ts import.meta.vitest
|
|
728
|
+
* import { Option, Record } from "effect"
|
|
714
729
|
*
|
|
715
|
-
* Record.replace({ a: 1, b: 2, c: 3 }, "a", 10) // Option.some({ a: 10, b: 2, c: 3 })
|
|
716
|
-
* Record.replace(Record.empty<string>(), "a", 10) // Option.none()
|
|
730
|
+
* Record.replace({ a: 1, b: 2, c: 3 }, "a", 10) // => Option.some({ a: 10, b: 2, c: 3 })
|
|
731
|
+
* Record.replace(Record.empty<string>(), "a", 10) // => Option.none()
|
|
717
732
|
* ```
|
|
718
733
|
*
|
|
719
734
|
* @category mutations
|
|
@@ -743,11 +758,10 @@ export const replace: {
|
|
|
743
758
|
*
|
|
744
759
|
* **Example** (Removing a key)
|
|
745
760
|
*
|
|
746
|
-
* ```ts
|
|
761
|
+
* ```ts import.meta.vitest
|
|
747
762
|
* import { Record } from "effect"
|
|
748
|
-
* import * as assert from "node:assert"
|
|
749
763
|
*
|
|
750
|
-
*
|
|
764
|
+
* Record.remove({ a: 1, b: 2 }, "a") // => { b: 2 }
|
|
751
765
|
* ```
|
|
752
766
|
*
|
|
753
767
|
* @category mutations
|
|
@@ -768,11 +782,10 @@ export const remove: {
|
|
|
768
782
|
*
|
|
769
783
|
* **Example** (Removing a key)
|
|
770
784
|
*
|
|
771
|
-
* ```ts
|
|
785
|
+
* ```ts import.meta.vitest
|
|
772
786
|
* import { Record } from "effect"
|
|
773
|
-
* import * as assert from "node:assert"
|
|
774
787
|
*
|
|
775
|
-
*
|
|
788
|
+
* Record.remove({ a: 1, b: 2 }, "a") // => { b: 2 }
|
|
776
789
|
* ```
|
|
777
790
|
*
|
|
778
791
|
* @category mutations
|
|
@@ -793,11 +806,10 @@ export const remove: {
|
|
|
793
806
|
*
|
|
794
807
|
* **Example** (Removing a key)
|
|
795
808
|
*
|
|
796
|
-
* ```ts
|
|
809
|
+
* ```ts import.meta.vitest
|
|
797
810
|
* import { Record } from "effect"
|
|
798
|
-
* import * as assert from "node:assert"
|
|
799
811
|
*
|
|
800
|
-
*
|
|
812
|
+
* Record.remove({ a: 1, b: 2 }, "a") // => { b: 2 }
|
|
801
813
|
* ```
|
|
802
814
|
*
|
|
803
815
|
* @category mutations
|
|
@@ -823,13 +835,13 @@ export const remove: {
|
|
|
823
835
|
*
|
|
824
836
|
* **Example** (Popping a value and removing its key)
|
|
825
837
|
*
|
|
826
|
-
* ```ts
|
|
827
|
-
* import { Record } from "effect"
|
|
838
|
+
* ```ts import.meta.vitest
|
|
839
|
+
* import { Option, Record } from "effect"
|
|
828
840
|
*
|
|
829
841
|
* const input: Record<string, number> = { a: 1, b: 2 }
|
|
830
842
|
*
|
|
831
|
-
* Record.pop(input, "a") // Option.some([1, { b: 2 }])
|
|
832
|
-
* Record.pop(input, "c") // Option.none()
|
|
843
|
+
* Record.pop(input, "a") // => Option.some([1, { b: 2 }])
|
|
844
|
+
* Record.pop(input, "c") // => Option.none()
|
|
833
845
|
* ```
|
|
834
846
|
*
|
|
835
847
|
* @category mutations
|
|
@@ -843,13 +855,13 @@ export const pop: {
|
|
|
843
855
|
*
|
|
844
856
|
* **Example** (Popping a value and removing its key)
|
|
845
857
|
*
|
|
846
|
-
* ```ts
|
|
847
|
-
* import { Record } from "effect"
|
|
858
|
+
* ```ts import.meta.vitest
|
|
859
|
+
* import { Option, Record } from "effect"
|
|
848
860
|
*
|
|
849
861
|
* const input: Record<string, number> = { a: 1, b: 2 }
|
|
850
862
|
*
|
|
851
|
-
* Record.pop(input, "a") // Option.some([1, { b: 2 }])
|
|
852
|
-
* Record.pop(input, "c") // Option.none()
|
|
863
|
+
* Record.pop(input, "a") // => Option.some([1, { b: 2 }])
|
|
864
|
+
* Record.pop(input, "c") // => Option.none()
|
|
853
865
|
* ```
|
|
854
866
|
*
|
|
855
867
|
* @category mutations
|
|
@@ -863,13 +875,13 @@ export const pop: {
|
|
|
863
875
|
*
|
|
864
876
|
* **Example** (Popping a value and removing its key)
|
|
865
877
|
*
|
|
866
|
-
* ```ts
|
|
867
|
-
* import { Record } from "effect"
|
|
878
|
+
* ```ts import.meta.vitest
|
|
879
|
+
* import { Option, Record } from "effect"
|
|
868
880
|
*
|
|
869
881
|
* const input: Record<string, number> = { a: 1, b: 2 }
|
|
870
882
|
*
|
|
871
|
-
* Record.pop(input, "a") // Option.some([1, { b: 2 }])
|
|
872
|
-
* Record.pop(input, "c") // Option.none()
|
|
883
|
+
* Record.pop(input, "a") // => Option.some([1, { b: 2 }])
|
|
884
|
+
* Record.pop(input, "c") // => Option.none()
|
|
873
885
|
* ```
|
|
874
886
|
*
|
|
875
887
|
* @category mutations
|
|
@@ -887,17 +899,16 @@ export const pop: {
|
|
|
887
899
|
*
|
|
888
900
|
* **Example** (Mapping record values)
|
|
889
901
|
*
|
|
890
|
-
* ```ts
|
|
902
|
+
* ```ts import.meta.vitest
|
|
891
903
|
* import { Record } from "effect"
|
|
892
|
-
* import * as assert from "node:assert"
|
|
893
904
|
*
|
|
894
905
|
* const f = (n: number) => `-${n}`
|
|
895
906
|
*
|
|
896
|
-
*
|
|
907
|
+
* Record.map({ a: 3, b: 5 }, f) // => { a: "-3", b: "-5" }
|
|
897
908
|
*
|
|
898
909
|
* const g = (n: number, key: string) => `${key.toUpperCase()}-${n}`
|
|
899
910
|
*
|
|
900
|
-
*
|
|
911
|
+
* Record.map({ a: 3, b: 5 }, g) // => { a: "A-3", b: "B-5" }
|
|
901
912
|
* ```
|
|
902
913
|
*
|
|
903
914
|
* @category mapping
|
|
@@ -909,17 +920,16 @@ export const map: {
|
|
|
909
920
|
*
|
|
910
921
|
* **Example** (Mapping record values)
|
|
911
922
|
*
|
|
912
|
-
* ```ts
|
|
923
|
+
* ```ts import.meta.vitest
|
|
913
924
|
* import { Record } from "effect"
|
|
914
|
-
* import * as assert from "node:assert"
|
|
915
925
|
*
|
|
916
926
|
* const f = (n: number) => `-${n}`
|
|
917
927
|
*
|
|
918
|
-
*
|
|
928
|
+
* Record.map({ a: 3, b: 5 }, f) // => { a: "-3", b: "-5" }
|
|
919
929
|
*
|
|
920
930
|
* const g = (n: number, key: string) => `${key.toUpperCase()}-${n}`
|
|
921
931
|
*
|
|
922
|
-
*
|
|
932
|
+
* Record.map({ a: 3, b: 5 }, g) // => { a: "A-3", b: "B-5" }
|
|
923
933
|
* ```
|
|
924
934
|
*
|
|
925
935
|
* @category mapping
|
|
@@ -931,17 +941,16 @@ export const map: {
|
|
|
931
941
|
*
|
|
932
942
|
* **Example** (Mapping record values)
|
|
933
943
|
*
|
|
934
|
-
* ```ts
|
|
944
|
+
* ```ts import.meta.vitest
|
|
935
945
|
* import { Record } from "effect"
|
|
936
|
-
* import * as assert from "node:assert"
|
|
937
946
|
*
|
|
938
947
|
* const f = (n: number) => `-${n}`
|
|
939
948
|
*
|
|
940
|
-
*
|
|
949
|
+
* Record.map({ a: 3, b: 5 }, f) // => { a: "-3", b: "-5" }
|
|
941
950
|
*
|
|
942
951
|
* const g = (n: number, key: string) => `${key.toUpperCase()}-${n}`
|
|
943
952
|
*
|
|
944
|
-
*
|
|
953
|
+
* Record.map({ a: 3, b: 5 }, g) // => { a: "A-3", b: "B-5" }
|
|
945
954
|
* ```
|
|
946
955
|
*
|
|
947
956
|
* @category mapping
|
|
@@ -953,7 +962,7 @@ export const map: {
|
|
|
953
962
|
<K extends string, A, B>(self: ReadonlyRecord<K, A>, f: (a: A, key: NoInfer<K>) => B): Record<K, B> => {
|
|
954
963
|
const out: Record<K, B> = { ...self } as any
|
|
955
964
|
for (const key of keys(self)) {
|
|
956
|
-
out
|
|
965
|
+
InternalRecord.assignProperty(out, key, f(self[key], key))
|
|
957
966
|
}
|
|
958
967
|
return out
|
|
959
968
|
}
|
|
@@ -964,14 +973,10 @@ export const map: {
|
|
|
964
973
|
*
|
|
965
974
|
* **Example** (Mapping record keys)
|
|
966
975
|
*
|
|
967
|
-
* ```ts
|
|
976
|
+
* ```ts import.meta.vitest
|
|
968
977
|
* import { Record } from "effect"
|
|
969
|
-
* import * as assert from "node:assert"
|
|
970
978
|
*
|
|
971
|
-
*
|
|
972
|
-
* Record.mapKeys({ a: 3, b: 5 }, (key) => key.toUpperCase()),
|
|
973
|
-
* { A: 3, B: 5 }
|
|
974
|
-
* )
|
|
979
|
+
* Record.mapKeys({ a: 3, b: 5 }, (key) => key.toUpperCase()) // => { A: 3, B: 5 }
|
|
975
980
|
* ```
|
|
976
981
|
*
|
|
977
982
|
* @category mapping
|
|
@@ -983,14 +988,10 @@ export const mapKeys: {
|
|
|
983
988
|
*
|
|
984
989
|
* **Example** (Mapping record keys)
|
|
985
990
|
*
|
|
986
|
-
* ```ts
|
|
991
|
+
* ```ts import.meta.vitest
|
|
987
992
|
* import { Record } from "effect"
|
|
988
|
-
* import * as assert from "node:assert"
|
|
989
993
|
*
|
|
990
|
-
*
|
|
991
|
-
* Record.mapKeys({ a: 3, b: 5 }, (key) => key.toUpperCase()),
|
|
992
|
-
* { A: 3, B: 5 }
|
|
993
|
-
* )
|
|
994
|
+
* Record.mapKeys({ a: 3, b: 5 }, (key) => key.toUpperCase()) // => { A: 3, B: 5 }
|
|
994
995
|
* ```
|
|
995
996
|
*
|
|
996
997
|
* @category mapping
|
|
@@ -1002,14 +1003,10 @@ export const mapKeys: {
|
|
|
1002
1003
|
*
|
|
1003
1004
|
* **Example** (Mapping record keys)
|
|
1004
1005
|
*
|
|
1005
|
-
* ```ts
|
|
1006
|
+
* ```ts import.meta.vitest
|
|
1006
1007
|
* import { Record } from "effect"
|
|
1007
|
-
* import * as assert from "node:assert"
|
|
1008
1008
|
*
|
|
1009
|
-
*
|
|
1010
|
-
* Record.mapKeys({ a: 3, b: 5 }, (key) => key.toUpperCase()),
|
|
1011
|
-
* { A: 3, B: 5 }
|
|
1012
|
-
* )
|
|
1009
|
+
* Record.mapKeys({ a: 3, b: 5 }, (key) => key.toUpperCase()) // => { A: 3, B: 5 }
|
|
1013
1010
|
* ```
|
|
1014
1011
|
*
|
|
1015
1012
|
* @category mapping
|
|
@@ -1025,7 +1022,7 @@ export const mapKeys: {
|
|
|
1025
1022
|
const out: Record<K2, A> = {} as any
|
|
1026
1023
|
for (const key of keys(self)) {
|
|
1027
1024
|
const a = self[key]
|
|
1028
|
-
out
|
|
1025
|
+
InternalRecord.assignProperty(out, f(key, a), a)
|
|
1029
1026
|
}
|
|
1030
1027
|
return out
|
|
1031
1028
|
}
|
|
@@ -1036,14 +1033,10 @@ export const mapKeys: {
|
|
|
1036
1033
|
*
|
|
1037
1034
|
* **Example** (Mapping record entries)
|
|
1038
1035
|
*
|
|
1039
|
-
* ```ts
|
|
1036
|
+
* ```ts import.meta.vitest
|
|
1040
1037
|
* import { Record } from "effect"
|
|
1041
|
-
* import * as assert from "node:assert"
|
|
1042
1038
|
*
|
|
1043
|
-
*
|
|
1044
|
-
* Record.mapEntries({ a: 3, b: 5 }, (a, key) => [key.toUpperCase(), a + 1]),
|
|
1045
|
-
* { A: 4, B: 6 }
|
|
1046
|
-
* )
|
|
1039
|
+
* Record.mapEntries({ a: 3, b: 5 }, (a, key) => [key.toUpperCase(), a + 1]) // => { A: 4, B: 6 }
|
|
1047
1040
|
* ```
|
|
1048
1041
|
*
|
|
1049
1042
|
* @category mapping
|
|
@@ -1055,14 +1048,10 @@ export const mapEntries: {
|
|
|
1055
1048
|
*
|
|
1056
1049
|
* **Example** (Mapping record entries)
|
|
1057
1050
|
*
|
|
1058
|
-
* ```ts
|
|
1051
|
+
* ```ts import.meta.vitest
|
|
1059
1052
|
* import { Record } from "effect"
|
|
1060
|
-
* import * as assert from "node:assert"
|
|
1061
1053
|
*
|
|
1062
|
-
*
|
|
1063
|
-
* Record.mapEntries({ a: 3, b: 5 }, (a, key) => [key.toUpperCase(), a + 1]),
|
|
1064
|
-
* { A: 4, B: 6 }
|
|
1065
|
-
* )
|
|
1054
|
+
* Record.mapEntries({ a: 3, b: 5 }, (a, key) => [key.toUpperCase(), a + 1]) // => { A: 4, B: 6 }
|
|
1066
1055
|
* ```
|
|
1067
1056
|
*
|
|
1068
1057
|
* @category mapping
|
|
@@ -1074,14 +1063,10 @@ export const mapEntries: {
|
|
|
1074
1063
|
*
|
|
1075
1064
|
* **Example** (Mapping record entries)
|
|
1076
1065
|
*
|
|
1077
|
-
* ```ts
|
|
1066
|
+
* ```ts import.meta.vitest
|
|
1078
1067
|
* import { Record } from "effect"
|
|
1079
|
-
* import * as assert from "node:assert"
|
|
1080
1068
|
*
|
|
1081
|
-
*
|
|
1082
|
-
* Record.mapEntries({ a: 3, b: 5 }, (a, key) => [key.toUpperCase(), a + 1]),
|
|
1083
|
-
* { A: 4, B: 6 }
|
|
1084
|
-
* )
|
|
1069
|
+
* Record.mapEntries({ a: 3, b: 5 }, (a, key) => [key.toUpperCase(), a + 1]) // => { A: 4, B: 6 }
|
|
1085
1070
|
* ```
|
|
1086
1071
|
*
|
|
1087
1072
|
* @category mapping
|
|
@@ -1097,7 +1082,7 @@ export const mapEntries: {
|
|
|
1097
1082
|
const out = {} as Record<K2, B>
|
|
1098
1083
|
for (const key of keys(self)) {
|
|
1099
1084
|
const [k, b] = f(self[key], key)
|
|
1100
|
-
out
|
|
1085
|
+
InternalRecord.assignProperty(out, k, b)
|
|
1101
1086
|
}
|
|
1102
1087
|
return out
|
|
1103
1088
|
}
|
|
@@ -1109,13 +1094,12 @@ export const mapEntries: {
|
|
|
1109
1094
|
*
|
|
1110
1095
|
* **Example** (Filtering and mapping with Result)
|
|
1111
1096
|
*
|
|
1112
|
-
* ```ts
|
|
1097
|
+
* ```ts import.meta.vitest
|
|
1113
1098
|
* import { Record, Result } from "effect"
|
|
1114
|
-
* import * as assert from "node:assert"
|
|
1115
1099
|
*
|
|
1116
1100
|
* const x = { a: 1, b: 2, c: 3 }
|
|
1117
1101
|
* const f = (a: number, key: string) => a > 2 ? Result.succeed(a * 2) : Result.failVoid
|
|
1118
|
-
*
|
|
1102
|
+
* Record.filterMap(x, f) // => { c: 6 }
|
|
1119
1103
|
* ```
|
|
1120
1104
|
*
|
|
1121
1105
|
* @category filtering
|
|
@@ -1128,13 +1112,12 @@ export const filterMap: {
|
|
|
1128
1112
|
*
|
|
1129
1113
|
* **Example** (Filtering and mapping with Result)
|
|
1130
1114
|
*
|
|
1131
|
-
* ```ts
|
|
1115
|
+
* ```ts import.meta.vitest
|
|
1132
1116
|
* import { Record, Result } from "effect"
|
|
1133
|
-
* import * as assert from "node:assert"
|
|
1134
1117
|
*
|
|
1135
1118
|
* const x = { a: 1, b: 2, c: 3 }
|
|
1136
1119
|
* const f = (a: number, key: string) => a > 2 ? Result.succeed(a * 2) : Result.failVoid
|
|
1137
|
-
*
|
|
1120
|
+
* Record.filterMap(x, f) // => { c: 6 }
|
|
1138
1121
|
* ```
|
|
1139
1122
|
*
|
|
1140
1123
|
* @category filtering
|
|
@@ -1147,13 +1130,12 @@ export const filterMap: {
|
|
|
1147
1130
|
*
|
|
1148
1131
|
* **Example** (Filtering and mapping with Result)
|
|
1149
1132
|
*
|
|
1150
|
-
* ```ts
|
|
1133
|
+
* ```ts import.meta.vitest
|
|
1151
1134
|
* import { Record, Result } from "effect"
|
|
1152
|
-
* import * as assert from "node:assert"
|
|
1153
1135
|
*
|
|
1154
1136
|
* const x = { a: 1, b: 2, c: 3 }
|
|
1155
1137
|
* const f = (a: number, key: string) => a > 2 ? Result.succeed(a * 2) : Result.failVoid
|
|
1156
|
-
*
|
|
1138
|
+
* Record.filterMap(x, f) // => { c: 6 }
|
|
1157
1139
|
* ```
|
|
1158
1140
|
*
|
|
1159
1141
|
* @category filtering
|
|
@@ -1170,7 +1152,7 @@ export const filterMap: {
|
|
|
1170
1152
|
for (const key of keys(self)) {
|
|
1171
1153
|
const result = f(self[key], key)
|
|
1172
1154
|
if (R.isSuccess(result)) {
|
|
1173
|
-
out
|
|
1155
|
+
InternalRecord.assignProperty(out, key, result.success)
|
|
1174
1156
|
}
|
|
1175
1157
|
}
|
|
1176
1158
|
return out
|
|
@@ -1182,12 +1164,11 @@ export const filterMap: {
|
|
|
1182
1164
|
*
|
|
1183
1165
|
* **Example** (Filtering record values)
|
|
1184
1166
|
*
|
|
1185
|
-
* ```ts
|
|
1167
|
+
* ```ts import.meta.vitest
|
|
1186
1168
|
* import { Record } from "effect"
|
|
1187
|
-
* import * as assert from "node:assert"
|
|
1188
1169
|
*
|
|
1189
1170
|
* const x = { a: 1, b: 2, c: 3, d: 4 }
|
|
1190
|
-
*
|
|
1171
|
+
* Record.filter(x, (n) => n > 2) // => { c: 3, d: 4 }
|
|
1191
1172
|
* ```
|
|
1192
1173
|
*
|
|
1193
1174
|
* @category filtering
|
|
@@ -1199,12 +1180,11 @@ export const filter: {
|
|
|
1199
1180
|
*
|
|
1200
1181
|
* **Example** (Filtering record values)
|
|
1201
1182
|
*
|
|
1202
|
-
* ```ts
|
|
1183
|
+
* ```ts import.meta.vitest
|
|
1203
1184
|
* import { Record } from "effect"
|
|
1204
|
-
* import * as assert from "node:assert"
|
|
1205
1185
|
*
|
|
1206
1186
|
* const x = { a: 1, b: 2, c: 3, d: 4 }
|
|
1207
|
-
*
|
|
1187
|
+
* Record.filter(x, (n) => n > 2) // => { c: 3, d: 4 }
|
|
1208
1188
|
* ```
|
|
1209
1189
|
*
|
|
1210
1190
|
* @category filtering
|
|
@@ -1216,12 +1196,11 @@ export const filter: {
|
|
|
1216
1196
|
*
|
|
1217
1197
|
* **Example** (Filtering record values)
|
|
1218
1198
|
*
|
|
1219
|
-
* ```ts
|
|
1199
|
+
* ```ts import.meta.vitest
|
|
1220
1200
|
* import { Record } from "effect"
|
|
1221
|
-
* import * as assert from "node:assert"
|
|
1222
1201
|
*
|
|
1223
1202
|
* const x = { a: 1, b: 2, c: 3, d: 4 }
|
|
1224
|
-
*
|
|
1203
|
+
* Record.filter(x, (n) => n > 2) // => { c: 3, d: 4 }
|
|
1225
1204
|
* ```
|
|
1226
1205
|
*
|
|
1227
1206
|
* @category filtering
|
|
@@ -1233,12 +1212,11 @@ export const filter: {
|
|
|
1233
1212
|
*
|
|
1234
1213
|
* **Example** (Filtering record values)
|
|
1235
1214
|
*
|
|
1236
|
-
* ```ts
|
|
1215
|
+
* ```ts import.meta.vitest
|
|
1237
1216
|
* import { Record } from "effect"
|
|
1238
|
-
* import * as assert from "node:assert"
|
|
1239
1217
|
*
|
|
1240
1218
|
* const x = { a: 1, b: 2, c: 3, d: 4 }
|
|
1241
|
-
*
|
|
1219
|
+
* Record.filter(x, (n) => n > 2) // => { c: 3, d: 4 }
|
|
1242
1220
|
* ```
|
|
1243
1221
|
*
|
|
1244
1222
|
* @category filtering
|
|
@@ -1250,12 +1228,11 @@ export const filter: {
|
|
|
1250
1228
|
*
|
|
1251
1229
|
* **Example** (Filtering record values)
|
|
1252
1230
|
*
|
|
1253
|
-
* ```ts
|
|
1231
|
+
* ```ts import.meta.vitest
|
|
1254
1232
|
* import { Record } from "effect"
|
|
1255
|
-
* import * as assert from "node:assert"
|
|
1256
1233
|
*
|
|
1257
1234
|
* const x = { a: 1, b: 2, c: 3, d: 4 }
|
|
1258
|
-
*
|
|
1235
|
+
* Record.filter(x, (n) => n > 2) // => { c: 3, d: 4 }
|
|
1259
1236
|
* ```
|
|
1260
1237
|
*
|
|
1261
1238
|
* @category filtering
|
|
@@ -1271,7 +1248,7 @@ export const filter: {
|
|
|
1271
1248
|
const out: Record<string, A> = empty()
|
|
1272
1249
|
for (const key of keys(self)) {
|
|
1273
1250
|
if (predicate(self[key], key)) {
|
|
1274
|
-
out
|
|
1251
|
+
InternalRecord.assignProperty(out, key, self[key])
|
|
1275
1252
|
}
|
|
1276
1253
|
}
|
|
1277
1254
|
return out
|
|
@@ -1284,14 +1261,10 @@ export const filter: {
|
|
|
1284
1261
|
*
|
|
1285
1262
|
* **Example** (Extracting Some values)
|
|
1286
1263
|
*
|
|
1287
|
-
* ```ts
|
|
1264
|
+
* ```ts import.meta.vitest
|
|
1288
1265
|
* import { Option, Record } from "effect"
|
|
1289
|
-
* import * as assert from "node:assert"
|
|
1290
1266
|
*
|
|
1291
|
-
*
|
|
1292
|
-
* Record.getSomes({ a: Option.some(1), b: Option.none(), c: Option.some(2) }),
|
|
1293
|
-
* { a: 1, c: 2 }
|
|
1294
|
-
* )
|
|
1267
|
+
* Record.getSomes({ a: Option.some(1), b: Option.none(), c: Option.some(2) }) // => { a: 1, c: 2 }
|
|
1295
1268
|
* ```
|
|
1296
1269
|
*
|
|
1297
1270
|
* @category filtering
|
|
@@ -1306,7 +1279,7 @@ export const getSomes: <K extends string, A>(
|
|
|
1306
1279
|
for (const key of keys(self)) {
|
|
1307
1280
|
const option = self[key]
|
|
1308
1281
|
if (Option.isSome(option)) {
|
|
1309
|
-
out
|
|
1282
|
+
InternalRecord.assignProperty(out, key, option.value)
|
|
1310
1283
|
}
|
|
1311
1284
|
}
|
|
1312
1285
|
return out
|
|
@@ -1318,18 +1291,14 @@ export const getSomes: <K extends string, A>(
|
|
|
1318
1291
|
*
|
|
1319
1292
|
* **Example** (Extracting Result failures)
|
|
1320
1293
|
*
|
|
1321
|
-
* ```ts
|
|
1294
|
+
* ```ts import.meta.vitest
|
|
1322
1295
|
* import { Record, Result } from "effect"
|
|
1323
|
-
* import * as assert from "node:assert"
|
|
1324
1296
|
*
|
|
1325
|
-
*
|
|
1326
|
-
* Record.getFailures({
|
|
1297
|
+
* Record.getFailures({
|
|
1327
1298
|
* a: Result.succeed(1),
|
|
1328
1299
|
* b: Result.fail("err"),
|
|
1329
1300
|
* c: Result.succeed(2)
|
|
1330
|
-
*
|
|
1331
|
-
* { b: "err" }
|
|
1332
|
-
* )
|
|
1301
|
+
* }) // => { b: "err" }
|
|
1333
1302
|
* ```
|
|
1334
1303
|
*
|
|
1335
1304
|
* @category filtering
|
|
@@ -1342,7 +1311,7 @@ export const getFailures = <K extends string, A, E>(
|
|
|
1342
1311
|
for (const key of keys(self)) {
|
|
1343
1312
|
const value = self[key]
|
|
1344
1313
|
if (R.isFailure(value)) {
|
|
1345
|
-
out
|
|
1314
|
+
InternalRecord.assignProperty(out, key, value.failure)
|
|
1346
1315
|
}
|
|
1347
1316
|
}
|
|
1348
1317
|
|
|
@@ -1355,18 +1324,14 @@ export const getFailures = <K extends string, A, E>(
|
|
|
1355
1324
|
*
|
|
1356
1325
|
* **Example** (Extracting Result successes)
|
|
1357
1326
|
*
|
|
1358
|
-
* ```ts
|
|
1327
|
+
* ```ts import.meta.vitest
|
|
1359
1328
|
* import { Record, Result } from "effect"
|
|
1360
|
-
* import * as assert from "node:assert"
|
|
1361
1329
|
*
|
|
1362
|
-
*
|
|
1363
|
-
* Record.getSuccesses({
|
|
1330
|
+
* Record.getSuccesses({
|
|
1364
1331
|
* a: Result.succeed(1),
|
|
1365
1332
|
* b: Result.fail("err"),
|
|
1366
1333
|
* c: Result.succeed(2)
|
|
1367
|
-
*
|
|
1368
|
-
* { a: 1, c: 2 }
|
|
1369
|
-
* )
|
|
1334
|
+
* }) // => { a: 1, c: 2 }
|
|
1370
1335
|
* ```
|
|
1371
1336
|
*
|
|
1372
1337
|
* @category filtering
|
|
@@ -1379,7 +1344,7 @@ export const getSuccesses = <K extends string, A, E>(
|
|
|
1379
1344
|
for (const key of keys(self)) {
|
|
1380
1345
|
const value = self[key]
|
|
1381
1346
|
if (R.isSuccess(value)) {
|
|
1382
|
-
out
|
|
1347
|
+
InternalRecord.assignProperty(out, key, value.success)
|
|
1383
1348
|
}
|
|
1384
1349
|
}
|
|
1385
1350
|
|
|
@@ -1397,13 +1362,12 @@ export const getSuccesses = <K extends string, A, E>(
|
|
|
1397
1362
|
*
|
|
1398
1363
|
* **Example** (Partitioning with Result)
|
|
1399
1364
|
*
|
|
1400
|
-
* ```ts
|
|
1365
|
+
* ```ts import.meta.vitest
|
|
1401
1366
|
* import { Record, Result } from "effect"
|
|
1402
|
-
* import * as assert from "node:assert"
|
|
1403
1367
|
*
|
|
1404
1368
|
* const x = { a: 1, b: 2, c: 3 }
|
|
1405
1369
|
* const f = (n: number) => (n % 2 === 0 ? Result.succeed(n) : Result.fail(n))
|
|
1406
|
-
*
|
|
1370
|
+
* Record.partition(x, f) // => [{ a: 1, c: 3 }, { b: 2 }]
|
|
1407
1371
|
* ```
|
|
1408
1372
|
*
|
|
1409
1373
|
* @category filtering
|
|
@@ -1421,13 +1385,12 @@ export const partition: {
|
|
|
1421
1385
|
*
|
|
1422
1386
|
* **Example** (Partitioning with Result)
|
|
1423
1387
|
*
|
|
1424
|
-
* ```ts
|
|
1388
|
+
* ```ts import.meta.vitest
|
|
1425
1389
|
* import { Record, Result } from "effect"
|
|
1426
|
-
* import * as assert from "node:assert"
|
|
1427
1390
|
*
|
|
1428
1391
|
* const x = { a: 1, b: 2, c: 3 }
|
|
1429
1392
|
* const f = (n: number) => (n % 2 === 0 ? Result.succeed(n) : Result.fail(n))
|
|
1430
|
-
*
|
|
1393
|
+
* Record.partition(x, f) // => [{ a: 1, c: 3 }, { b: 2 }]
|
|
1431
1394
|
* ```
|
|
1432
1395
|
*
|
|
1433
1396
|
* @category filtering
|
|
@@ -1447,13 +1410,12 @@ export const partition: {
|
|
|
1447
1410
|
*
|
|
1448
1411
|
* **Example** (Partitioning with Result)
|
|
1449
1412
|
*
|
|
1450
|
-
* ```ts
|
|
1413
|
+
* ```ts import.meta.vitest
|
|
1451
1414
|
* import { Record, Result } from "effect"
|
|
1452
|
-
* import * as assert from "node:assert"
|
|
1453
1415
|
*
|
|
1454
1416
|
* const x = { a: 1, b: 2, c: 3 }
|
|
1455
1417
|
* const f = (n: number) => (n % 2 === 0 ? Result.succeed(n) : Result.fail(n))
|
|
1456
|
-
*
|
|
1418
|
+
* Record.partition(x, f) // => [{ a: 1, c: 3 }, { b: 2 }]
|
|
1457
1419
|
* ```
|
|
1458
1420
|
*
|
|
1459
1421
|
* @category filtering
|
|
@@ -1471,9 +1433,9 @@ export const partition: {
|
|
|
1471
1433
|
for (const key of keys(self)) {
|
|
1472
1434
|
const e = f(self[key], key)
|
|
1473
1435
|
if (R.isFailure(e)) {
|
|
1474
|
-
left
|
|
1436
|
+
InternalRecord.assignProperty(left, key, e.failure)
|
|
1475
1437
|
} else {
|
|
1476
|
-
right
|
|
1438
|
+
InternalRecord.assignProperty(right, key, e.success)
|
|
1477
1439
|
}
|
|
1478
1440
|
}
|
|
1479
1441
|
return [left, right]
|
|
@@ -1486,14 +1448,10 @@ export const partition: {
|
|
|
1486
1448
|
*
|
|
1487
1449
|
* **Example** (Separating Result values)
|
|
1488
1450
|
*
|
|
1489
|
-
* ```ts
|
|
1451
|
+
* ```ts import.meta.vitest
|
|
1490
1452
|
* import { Record, Result } from "effect"
|
|
1491
|
-
* import * as assert from "node:assert"
|
|
1492
1453
|
*
|
|
1493
|
-
*
|
|
1494
|
-
* Record.separate({ a: Result.fail("e"), b: Result.succeed(1) }),
|
|
1495
|
-
* [{ a: "e" }, { b: 1 }]
|
|
1496
|
-
* )
|
|
1454
|
+
* Record.separate({ a: Result.fail("e"), b: Result.succeed(1) }) // => [{ a: "e" }, { b: 1 }]
|
|
1497
1455
|
* ```
|
|
1498
1456
|
*
|
|
1499
1457
|
* @category filtering
|
|
@@ -1508,11 +1466,10 @@ export const separate: <K extends string, A, B>(
|
|
|
1508
1466
|
*
|
|
1509
1467
|
* **Example** (Getting record keys)
|
|
1510
1468
|
*
|
|
1511
|
-
* ```ts
|
|
1469
|
+
* ```ts import.meta.vitest
|
|
1512
1470
|
* import { Record } from "effect"
|
|
1513
|
-
* import * as assert from "node:assert"
|
|
1514
1471
|
*
|
|
1515
|
-
*
|
|
1472
|
+
* Record.keys({ a: 1, b: 2, c: 3 }) // => ["a", "b", "c"]
|
|
1516
1473
|
* ```
|
|
1517
1474
|
*
|
|
1518
1475
|
* @category getters
|
|
@@ -1526,11 +1483,10 @@ export const keys = <K extends string | symbol, A>(self: ReadonlyRecord<K, A>):
|
|
|
1526
1483
|
*
|
|
1527
1484
|
* **Example** (Getting record values)
|
|
1528
1485
|
*
|
|
1529
|
-
* ```ts
|
|
1486
|
+
* ```ts import.meta.vitest
|
|
1530
1487
|
* import { Record } from "effect"
|
|
1531
|
-
* import * as assert from "node:assert"
|
|
1532
1488
|
*
|
|
1533
|
-
*
|
|
1489
|
+
* Record.values({ a: 1, b: 2, c: 3 }) // => [1, 2, 3]
|
|
1534
1490
|
* ```
|
|
1535
1491
|
*
|
|
1536
1492
|
* @category getters
|
|
@@ -1543,12 +1499,11 @@ export const values = <K extends string, A>(self: ReadonlyRecord<K, A>): Array<A
|
|
|
1543
1499
|
*
|
|
1544
1500
|
* **Example** (Setting a record value)
|
|
1545
1501
|
*
|
|
1546
|
-
* ```ts
|
|
1502
|
+
* ```ts import.meta.vitest
|
|
1547
1503
|
* import { Record } from "effect"
|
|
1548
|
-
* import * as assert from "node:assert"
|
|
1549
1504
|
*
|
|
1550
|
-
*
|
|
1551
|
-
*
|
|
1505
|
+
* Record.set("a", 5)({ a: 1, b: 2 }) // => { a: 5, b: 2 }
|
|
1506
|
+
* Record.set("c", 5)({ a: 1, b: 2 }) // => { a: 1, b: 2, c: 5 }
|
|
1552
1507
|
* ```
|
|
1553
1508
|
*
|
|
1554
1509
|
* @category mutations
|
|
@@ -1560,12 +1515,11 @@ export const set: {
|
|
|
1560
1515
|
*
|
|
1561
1516
|
* **Example** (Setting a record value)
|
|
1562
1517
|
*
|
|
1563
|
-
* ```ts
|
|
1518
|
+
* ```ts import.meta.vitest
|
|
1564
1519
|
* import { Record } from "effect"
|
|
1565
|
-
* import * as assert from "node:assert"
|
|
1566
1520
|
*
|
|
1567
|
-
*
|
|
1568
|
-
*
|
|
1521
|
+
* Record.set("a", 5)({ a: 1, b: 2 }) // => { a: 5, b: 2 }
|
|
1522
|
+
* Record.set("c", 5)({ a: 1, b: 2 }) // => { a: 1, b: 2, c: 5 }
|
|
1569
1523
|
* ```
|
|
1570
1524
|
*
|
|
1571
1525
|
* @category mutations
|
|
@@ -1577,12 +1531,11 @@ export const set: {
|
|
|
1577
1531
|
*
|
|
1578
1532
|
* **Example** (Setting a record value)
|
|
1579
1533
|
*
|
|
1580
|
-
* ```ts
|
|
1534
|
+
* ```ts import.meta.vitest
|
|
1581
1535
|
* import { Record } from "effect"
|
|
1582
|
-
* import * as assert from "node:assert"
|
|
1583
1536
|
*
|
|
1584
|
-
*
|
|
1585
|
-
*
|
|
1537
|
+
* Record.set("a", 5)({ a: 1, b: 2 }) // => { a: 5, b: 2 }
|
|
1538
|
+
* Record.set("c", 5)({ a: 1, b: 2 }) // => { a: 1, b: 2, c: 5 }
|
|
1586
1539
|
* ```
|
|
1587
1540
|
*
|
|
1588
1541
|
* @category mutations
|
|
@@ -1600,13 +1553,50 @@ export const set: {
|
|
|
1600
1553
|
}
|
|
1601
1554
|
)
|
|
1602
1555
|
|
|
1556
|
+
/**
|
|
1557
|
+
* Mutates a record by assigning a value to a property.
|
|
1558
|
+
*
|
|
1559
|
+
* **When to use**
|
|
1560
|
+
*
|
|
1561
|
+
* Use when incrementally constructing a new record and copying it for every
|
|
1562
|
+
* property would be unnecessary.
|
|
1563
|
+
*
|
|
1564
|
+
* **Gotchas**
|
|
1565
|
+
*
|
|
1566
|
+
* This function mutates `self`. When `key` is `"__proto__"`, it creates an
|
|
1567
|
+
* own data property instead of changing the object's prototype.
|
|
1568
|
+
*
|
|
1569
|
+
* **Example** (Assigning an external key safely)
|
|
1570
|
+
*
|
|
1571
|
+
* ```ts import.meta.vitest
|
|
1572
|
+
* import { Record } from "effect"
|
|
1573
|
+
*
|
|
1574
|
+
* const key: string = "__proto__" // Assume this comes from external input
|
|
1575
|
+
* const value = { polluted: true }
|
|
1576
|
+
*
|
|
1577
|
+
* const unsafe: Record<string, unknown> = {}
|
|
1578
|
+
* unsafe[key] = value
|
|
1579
|
+
* Object.getPrototypeOf(unsafe) === value // => true
|
|
1580
|
+
*
|
|
1581
|
+
* const safe: Record<string, unknown> = {}
|
|
1582
|
+
* Record.assignProperty(safe, key, value)
|
|
1583
|
+
* Object.getPrototypeOf(safe) === Object.prototype // => true
|
|
1584
|
+
* safe[key] === value // => true
|
|
1585
|
+
* ```
|
|
1586
|
+
*
|
|
1587
|
+
* @see {@link set} for an immutable update
|
|
1588
|
+
* @category mutations
|
|
1589
|
+
* @since 4.0.0
|
|
1590
|
+
*/
|
|
1591
|
+
export const assignProperty: (self: object, key: PropertyKey, value: unknown) => void = InternalRecord.assignProperty
|
|
1592
|
+
|
|
1603
1593
|
/**
|
|
1604
1594
|
* Checks whether all the keys and values in one record are also found in another record.
|
|
1605
1595
|
* Uses the provided equivalence function to compare values.
|
|
1606
1596
|
*
|
|
1607
1597
|
* **Example** (Checking subrecords with a custom equivalence)
|
|
1608
1598
|
*
|
|
1609
|
-
* ```ts
|
|
1599
|
+
* ```ts import.meta.vitest
|
|
1610
1600
|
* import { Equivalence, Record } from "effect"
|
|
1611
1601
|
*
|
|
1612
1602
|
* const isSubrecord = Record.isSubrecordBy(
|
|
@@ -1619,15 +1609,9 @@ export const set: {
|
|
|
1619
1609
|
* status: "active"
|
|
1620
1610
|
* }
|
|
1621
1611
|
*
|
|
1622
|
-
*
|
|
1623
|
-
*
|
|
1624
|
-
* ) //
|
|
1625
|
-
* console.log(
|
|
1626
|
-
* isSubrecord({ role: "Admin", status: "inactive" }, available)
|
|
1627
|
-
* ) // false
|
|
1628
|
-
* console.log(
|
|
1629
|
-
* isSubrecord(required, { role: "editor", status: "active" })
|
|
1630
|
-
* ) // false
|
|
1612
|
+
* isSubrecord(required, available) // => true
|
|
1613
|
+
* isSubrecord({ role: "Admin", status: "inactive" }, available) // => false
|
|
1614
|
+
* isSubrecord(required, { role: "editor", status: "active" }) // => false
|
|
1631
1615
|
* ```
|
|
1632
1616
|
*
|
|
1633
1617
|
* @category predicates
|
|
@@ -1656,18 +1640,11 @@ export const isSubrecordBy = <A>(equivalence: Equivalence<A>): {
|
|
|
1656
1640
|
*
|
|
1657
1641
|
* **Example** (Checking subrecords)
|
|
1658
1642
|
*
|
|
1659
|
-
* ```ts
|
|
1643
|
+
* ```ts import.meta.vitest
|
|
1660
1644
|
* import { Record } from "effect"
|
|
1661
|
-
* import * as assert from "node:assert"
|
|
1662
1645
|
*
|
|
1663
|
-
*
|
|
1664
|
-
*
|
|
1665
|
-
* true
|
|
1666
|
-
* )
|
|
1667
|
-
* assert.deepStrictEqual(
|
|
1668
|
-
* Record.isSubrecord({ a: 1, b: 2 }, { a: 1 } as Record<string, number>),
|
|
1669
|
-
* false
|
|
1670
|
-
* )
|
|
1646
|
+
* Record.isSubrecord({ a: 1 } as Record<string, number>, { a: 1, b: 2 }) // => true
|
|
1647
|
+
* Record.isSubrecord({ a: 1, b: 2 }, { a: 1 } as Record<string, number>) // => false
|
|
1671
1648
|
* ```
|
|
1672
1649
|
*
|
|
1673
1650
|
* @category predicates
|
|
@@ -1684,18 +1661,11 @@ export const isSubrecord: {
|
|
|
1684
1661
|
*
|
|
1685
1662
|
* **Example** (Checking subrecords)
|
|
1686
1663
|
*
|
|
1687
|
-
* ```ts
|
|
1664
|
+
* ```ts import.meta.vitest
|
|
1688
1665
|
* import { Record } from "effect"
|
|
1689
|
-
*
|
|
1690
|
-
*
|
|
1691
|
-
*
|
|
1692
|
-
* Record.isSubrecord({ a: 1 } as Record<string, number>, { a: 1, b: 2 }),
|
|
1693
|
-
* true
|
|
1694
|
-
* )
|
|
1695
|
-
* assert.deepStrictEqual(
|
|
1696
|
-
* Record.isSubrecord({ a: 1, b: 2 }, { a: 1 } as Record<string, number>),
|
|
1697
|
-
* false
|
|
1698
|
-
* )
|
|
1666
|
+
*
|
|
1667
|
+
* Record.isSubrecord({ a: 1 } as Record<string, number>, { a: 1, b: 2 }) // => true
|
|
1668
|
+
* Record.isSubrecord({ a: 1, b: 2 }, { a: 1 } as Record<string, number>) // => false
|
|
1699
1669
|
* ```
|
|
1700
1670
|
*
|
|
1701
1671
|
* @category predicates
|
|
@@ -1712,18 +1682,11 @@ export const isSubrecord: {
|
|
|
1712
1682
|
*
|
|
1713
1683
|
* **Example** (Checking subrecords)
|
|
1714
1684
|
*
|
|
1715
|
-
* ```ts
|
|
1685
|
+
* ```ts import.meta.vitest
|
|
1716
1686
|
* import { Record } from "effect"
|
|
1717
|
-
*
|
|
1718
|
-
*
|
|
1719
|
-
*
|
|
1720
|
-
* Record.isSubrecord({ a: 1 } as Record<string, number>, { a: 1, b: 2 }),
|
|
1721
|
-
* true
|
|
1722
|
-
* )
|
|
1723
|
-
* assert.deepStrictEqual(
|
|
1724
|
-
* Record.isSubrecord({ a: 1, b: 2 }, { a: 1 } as Record<string, number>),
|
|
1725
|
-
* false
|
|
1726
|
-
* )
|
|
1687
|
+
*
|
|
1688
|
+
* Record.isSubrecord({ a: 1 } as Record<string, number>, { a: 1, b: 2 }) // => true
|
|
1689
|
+
* Record.isSubrecord({ a: 1, b: 2 }, { a: 1 } as Record<string, number>) // => false
|
|
1727
1690
|
* ```
|
|
1728
1691
|
*
|
|
1729
1692
|
* @category predicates
|
|
@@ -1737,14 +1700,10 @@ export const isSubrecord: {
|
|
|
1737
1700
|
*
|
|
1738
1701
|
* **Example** (Reducing record values)
|
|
1739
1702
|
*
|
|
1740
|
-
* ```ts
|
|
1703
|
+
* ```ts import.meta.vitest
|
|
1741
1704
|
* import { Record } from "effect"
|
|
1742
|
-
* import * as assert from "node:assert"
|
|
1743
1705
|
*
|
|
1744
|
-
*
|
|
1745
|
-
* Record.reduce({ a: 1, b: 2, c: 3 }, 0, (acc, value, key) => acc + value),
|
|
1746
|
-
* 6
|
|
1747
|
-
* )
|
|
1706
|
+
* Record.reduce({ a: 1, b: 2, c: 3 }, 0, (acc, value) => acc + value) // => 6
|
|
1748
1707
|
* ```
|
|
1749
1708
|
*
|
|
1750
1709
|
* @category folding
|
|
@@ -1756,14 +1715,10 @@ export const reduce: {
|
|
|
1756
1715
|
*
|
|
1757
1716
|
* **Example** (Reducing record values)
|
|
1758
1717
|
*
|
|
1759
|
-
* ```ts
|
|
1718
|
+
* ```ts import.meta.vitest
|
|
1760
1719
|
* import { Record } from "effect"
|
|
1761
|
-
* import * as assert from "node:assert"
|
|
1762
1720
|
*
|
|
1763
|
-
*
|
|
1764
|
-
* Record.reduce({ a: 1, b: 2, c: 3 }, 0, (acc, value, key) => acc + value),
|
|
1765
|
-
* 6
|
|
1766
|
-
* )
|
|
1721
|
+
* Record.reduce({ a: 1, b: 2, c: 3 }, 0, (acc, value) => acc + value) // => 6
|
|
1767
1722
|
* ```
|
|
1768
1723
|
*
|
|
1769
1724
|
* @category folding
|
|
@@ -1775,14 +1730,10 @@ export const reduce: {
|
|
|
1775
1730
|
*
|
|
1776
1731
|
* **Example** (Reducing record values)
|
|
1777
1732
|
*
|
|
1778
|
-
* ```ts
|
|
1733
|
+
* ```ts import.meta.vitest
|
|
1779
1734
|
* import { Record } from "effect"
|
|
1780
|
-
* import * as assert from "node:assert"
|
|
1781
1735
|
*
|
|
1782
|
-
*
|
|
1783
|
-
* Record.reduce({ a: 1, b: 2, c: 3 }, 0, (acc, value, key) => acc + value),
|
|
1784
|
-
* 6
|
|
1785
|
-
* )
|
|
1736
|
+
* Record.reduce({ a: 1, b: 2, c: 3 }, 0, (acc, value) => acc + value) // => 6
|
|
1786
1737
|
* ```
|
|
1787
1738
|
*
|
|
1788
1739
|
* @category folding
|
|
@@ -1813,15 +1764,14 @@ export const reduce: {
|
|
|
1813
1764
|
*
|
|
1814
1765
|
* **Example** (Checking every record value)
|
|
1815
1766
|
*
|
|
1816
|
-
* ```ts
|
|
1767
|
+
* ```ts import.meta.vitest
|
|
1817
1768
|
* import { Record } from "effect"
|
|
1818
|
-
* import * as assert from "node:assert"
|
|
1819
1769
|
*
|
|
1820
|
-
*
|
|
1821
|
-
*
|
|
1770
|
+
* Record.every({ a: 1, b: 2 }, (n) => n > 0) // => true
|
|
1771
|
+
* Record.every({ a: 1, b: -1 }, (n) => n > 0) // => false
|
|
1822
1772
|
* ```
|
|
1823
1773
|
*
|
|
1824
|
-
* @category
|
|
1774
|
+
* @category guards
|
|
1825
1775
|
* @since 2.0.0
|
|
1826
1776
|
*/
|
|
1827
1777
|
export const every: {
|
|
@@ -1830,15 +1780,14 @@ export const every: {
|
|
|
1830
1780
|
*
|
|
1831
1781
|
* **Example** (Checking every record value)
|
|
1832
1782
|
*
|
|
1833
|
-
* ```ts
|
|
1783
|
+
* ```ts import.meta.vitest
|
|
1834
1784
|
* import { Record } from "effect"
|
|
1835
|
-
* import * as assert from "node:assert"
|
|
1836
1785
|
*
|
|
1837
|
-
*
|
|
1838
|
-
*
|
|
1786
|
+
* Record.every({ a: 1, b: 2 }, (n) => n > 0) // => true
|
|
1787
|
+
* Record.every({ a: 1, b: -1 }, (n) => n > 0) // => false
|
|
1839
1788
|
* ```
|
|
1840
1789
|
*
|
|
1841
|
-
* @category
|
|
1790
|
+
* @category guards
|
|
1842
1791
|
* @since 2.0.0
|
|
1843
1792
|
*/
|
|
1844
1793
|
<A, K extends string, B extends A>(refinement: (value: A, key: K) => value is B): (self: ReadonlyRecord<K, A>) => self is ReadonlyRecord<K, B>
|
|
@@ -1847,15 +1796,14 @@ export const every: {
|
|
|
1847
1796
|
*
|
|
1848
1797
|
* **Example** (Checking every record value)
|
|
1849
1798
|
*
|
|
1850
|
-
* ```ts
|
|
1799
|
+
* ```ts import.meta.vitest
|
|
1851
1800
|
* import { Record } from "effect"
|
|
1852
|
-
* import * as assert from "node:assert"
|
|
1853
1801
|
*
|
|
1854
|
-
*
|
|
1855
|
-
*
|
|
1802
|
+
* Record.every({ a: 1, b: 2 }, (n) => n > 0) // => true
|
|
1803
|
+
* Record.every({ a: 1, b: -1 }, (n) => n > 0) // => false
|
|
1856
1804
|
* ```
|
|
1857
1805
|
*
|
|
1858
|
-
* @category
|
|
1806
|
+
* @category guards
|
|
1859
1807
|
* @since 2.0.0
|
|
1860
1808
|
*/
|
|
1861
1809
|
<A, K extends string>(predicate: (value: A, key: K) => boolean): (self: ReadonlyRecord<K, A>) => boolean
|
|
@@ -1864,15 +1812,14 @@ export const every: {
|
|
|
1864
1812
|
*
|
|
1865
1813
|
* **Example** (Checking every record value)
|
|
1866
1814
|
*
|
|
1867
|
-
* ```ts
|
|
1815
|
+
* ```ts import.meta.vitest
|
|
1868
1816
|
* import { Record } from "effect"
|
|
1869
|
-
* import * as assert from "node:assert"
|
|
1870
1817
|
*
|
|
1871
|
-
*
|
|
1872
|
-
*
|
|
1818
|
+
* Record.every({ a: 1, b: 2 }, (n) => n > 0) // => true
|
|
1819
|
+
* Record.every({ a: 1, b: -1 }, (n) => n > 0) // => false
|
|
1873
1820
|
* ```
|
|
1874
1821
|
*
|
|
1875
|
-
* @category
|
|
1822
|
+
* @category guards
|
|
1876
1823
|
* @since 2.0.0
|
|
1877
1824
|
*/
|
|
1878
1825
|
<A, K extends string, B extends A>(self: ReadonlyRecord<K, A>, refinement: (value: A, key: K) => value is B): self is ReadonlyRecord<K, B>
|
|
@@ -1881,15 +1828,14 @@ export const every: {
|
|
|
1881
1828
|
*
|
|
1882
1829
|
* **Example** (Checking every record value)
|
|
1883
1830
|
*
|
|
1884
|
-
* ```ts
|
|
1831
|
+
* ```ts import.meta.vitest
|
|
1885
1832
|
* import { Record } from "effect"
|
|
1886
|
-
* import * as assert from "node:assert"
|
|
1887
1833
|
*
|
|
1888
|
-
*
|
|
1889
|
-
*
|
|
1834
|
+
* Record.every({ a: 1, b: 2 }, (n) => n > 0) // => true
|
|
1835
|
+
* Record.every({ a: 1, b: -1 }, (n) => n > 0) // => false
|
|
1890
1836
|
* ```
|
|
1891
1837
|
*
|
|
1892
|
-
* @category
|
|
1838
|
+
* @category guards
|
|
1893
1839
|
* @since 2.0.0
|
|
1894
1840
|
*/
|
|
1895
1841
|
<K extends string, A>(self: ReadonlyRecord<K, A>, predicate: (value: A, key: K) => boolean): boolean
|
|
@@ -1913,12 +1859,11 @@ export const every: {
|
|
|
1913
1859
|
*
|
|
1914
1860
|
* **Example** (Checking for any matching value)
|
|
1915
1861
|
*
|
|
1916
|
-
* ```ts
|
|
1862
|
+
* ```ts import.meta.vitest
|
|
1917
1863
|
* import { Record } from "effect"
|
|
1918
|
-
* import * as assert from "node:assert"
|
|
1919
1864
|
*
|
|
1920
|
-
*
|
|
1921
|
-
*
|
|
1865
|
+
* Record.some({ a: 1, b: 2 }, (n) => n > 1) // => true
|
|
1866
|
+
* Record.some({ a: 1, b: 2 }, (n) => n > 2) // => false
|
|
1922
1867
|
* ```
|
|
1923
1868
|
*
|
|
1924
1869
|
* @category predicates
|
|
@@ -1930,12 +1875,11 @@ export const some: {
|
|
|
1930
1875
|
*
|
|
1931
1876
|
* **Example** (Checking for any matching value)
|
|
1932
1877
|
*
|
|
1933
|
-
* ```ts
|
|
1878
|
+
* ```ts import.meta.vitest
|
|
1934
1879
|
* import { Record } from "effect"
|
|
1935
|
-
* import * as assert from "node:assert"
|
|
1936
1880
|
*
|
|
1937
|
-
*
|
|
1938
|
-
*
|
|
1881
|
+
* Record.some({ a: 1, b: 2 }, (n) => n > 1) // => true
|
|
1882
|
+
* Record.some({ a: 1, b: 2 }, (n) => n > 2) // => false
|
|
1939
1883
|
* ```
|
|
1940
1884
|
*
|
|
1941
1885
|
* @category predicates
|
|
@@ -1947,12 +1891,11 @@ export const some: {
|
|
|
1947
1891
|
*
|
|
1948
1892
|
* **Example** (Checking for any matching value)
|
|
1949
1893
|
*
|
|
1950
|
-
* ```ts
|
|
1894
|
+
* ```ts import.meta.vitest
|
|
1951
1895
|
* import { Record } from "effect"
|
|
1952
|
-
* import * as assert from "node:assert"
|
|
1953
1896
|
*
|
|
1954
|
-
*
|
|
1955
|
-
*
|
|
1897
|
+
* Record.some({ a: 1, b: 2 }, (n) => n > 1) // => true
|
|
1898
|
+
* Record.some({ a: 1, b: 2 }, (n) => n > 2) // => false
|
|
1956
1899
|
* ```
|
|
1957
1900
|
*
|
|
1958
1901
|
* @category predicates
|
|
@@ -1977,14 +1920,10 @@ export const some: {
|
|
|
1977
1920
|
*
|
|
1978
1921
|
* **Example** (Merging records with union)
|
|
1979
1922
|
*
|
|
1980
|
-
* ```ts
|
|
1923
|
+
* ```ts import.meta.vitest
|
|
1981
1924
|
* import { Record } from "effect"
|
|
1982
|
-
* import * as assert from "node:assert"
|
|
1983
1925
|
*
|
|
1984
|
-
*
|
|
1985
|
-
* Record.union({ a: 1, b: 2 }, { b: 3, c: 4 }, (a, b) => a + b),
|
|
1986
|
-
* { a: 1, b: 5, c: 4 }
|
|
1987
|
-
* )
|
|
1926
|
+
* Record.union({ a: 1, b: 2 }, { b: 3, c: 4 }, (a, b) => a + b) // => { a: 1, b: 5, c: 4 }
|
|
1988
1927
|
* ```
|
|
1989
1928
|
*
|
|
1990
1929
|
* @category combining
|
|
@@ -1997,14 +1936,10 @@ export const union: {
|
|
|
1997
1936
|
*
|
|
1998
1937
|
* **Example** (Merging records with union)
|
|
1999
1938
|
*
|
|
2000
|
-
* ```ts
|
|
1939
|
+
* ```ts import.meta.vitest
|
|
2001
1940
|
* import { Record } from "effect"
|
|
2002
|
-
* import * as assert from "node:assert"
|
|
2003
1941
|
*
|
|
2004
|
-
*
|
|
2005
|
-
* Record.union({ a: 1, b: 2 }, { b: 3, c: 4 }, (a, b) => a + b),
|
|
2006
|
-
* { a: 1, b: 5, c: 4 }
|
|
2007
|
-
* )
|
|
1942
|
+
* Record.union({ a: 1, b: 2 }, { b: 3, c: 4 }, (a, b) => a + b) // => { a: 1, b: 5, c: 4 }
|
|
2008
1943
|
* ```
|
|
2009
1944
|
*
|
|
2010
1945
|
* @category combining
|
|
@@ -2017,14 +1952,10 @@ export const union: {
|
|
|
2017
1952
|
*
|
|
2018
1953
|
* **Example** (Merging records with union)
|
|
2019
1954
|
*
|
|
2020
|
-
* ```ts
|
|
1955
|
+
* ```ts import.meta.vitest
|
|
2021
1956
|
* import { Record } from "effect"
|
|
2022
|
-
* import * as assert from "node:assert"
|
|
2023
1957
|
*
|
|
2024
|
-
*
|
|
2025
|
-
* Record.union({ a: 1, b: 2 }, { b: 3, c: 4 }, (a, b) => a + b),
|
|
2026
|
-
* { a: 1, b: 5, c: 4 }
|
|
2027
|
-
* )
|
|
1958
|
+
* Record.union({ a: 1, b: 2 }, { b: 3, c: 4 }, (a, b) => a + b) // => { a: 1, b: 5, c: 4 }
|
|
2028
1959
|
* ```
|
|
2029
1960
|
*
|
|
2030
1961
|
* @category combining
|
|
@@ -2051,14 +1982,14 @@ export const union: {
|
|
|
2051
1982
|
const out: Record<string, A | B | C> = empty()
|
|
2052
1983
|
for (const key of keys(self)) {
|
|
2053
1984
|
if (has(that, key as any)) {
|
|
2054
|
-
out
|
|
1985
|
+
InternalRecord.assignProperty(out, key, combine(self[key], that[key as unknown as K1]))
|
|
2055
1986
|
} else {
|
|
2056
|
-
out
|
|
1987
|
+
InternalRecord.assignProperty(out, key, self[key])
|
|
2057
1988
|
}
|
|
2058
1989
|
}
|
|
2059
1990
|
for (const key of keys(that)) {
|
|
2060
1991
|
if (!has(out, key)) {
|
|
2061
|
-
out
|
|
1992
|
+
InternalRecord.assignProperty(out, key, that[key])
|
|
2062
1993
|
}
|
|
2063
1994
|
}
|
|
2064
1995
|
return out
|
|
@@ -2071,14 +2002,10 @@ export const union: {
|
|
|
2071
2002
|
*
|
|
2072
2003
|
* **Example** (Merging intersecting keys)
|
|
2073
2004
|
*
|
|
2074
|
-
* ```ts
|
|
2005
|
+
* ```ts import.meta.vitest
|
|
2075
2006
|
* import { Record } from "effect"
|
|
2076
|
-
* import * as assert from "node:assert"
|
|
2077
2007
|
*
|
|
2078
|
-
*
|
|
2079
|
-
* Record.intersection({ a: 1, b: 2 }, { b: 3, c: 4 }, (a, b) => a + b),
|
|
2080
|
-
* { b: 5 }
|
|
2081
|
-
* )
|
|
2008
|
+
* Record.intersection({ a: 1, b: 2 }, { b: 3, c: 4 }, (a, b) => a + b) // => { b: 5 }
|
|
2082
2009
|
* ```
|
|
2083
2010
|
*
|
|
2084
2011
|
* @category combining
|
|
@@ -2091,14 +2018,10 @@ export const intersection: {
|
|
|
2091
2018
|
*
|
|
2092
2019
|
* **Example** (Merging intersecting keys)
|
|
2093
2020
|
*
|
|
2094
|
-
* ```ts
|
|
2021
|
+
* ```ts import.meta.vitest
|
|
2095
2022
|
* import { Record } from "effect"
|
|
2096
|
-
* import * as assert from "node:assert"
|
|
2097
2023
|
*
|
|
2098
|
-
*
|
|
2099
|
-
* Record.intersection({ a: 1, b: 2 }, { b: 3, c: 4 }, (a, b) => a + b),
|
|
2100
|
-
* { b: 5 }
|
|
2101
|
-
* )
|
|
2024
|
+
* Record.intersection({ a: 1, b: 2 }, { b: 3, c: 4 }, (a, b) => a + b) // => { b: 5 }
|
|
2102
2025
|
* ```
|
|
2103
2026
|
*
|
|
2104
2027
|
* @category combining
|
|
@@ -2111,14 +2034,10 @@ export const intersection: {
|
|
|
2111
2034
|
*
|
|
2112
2035
|
* **Example** (Merging intersecting keys)
|
|
2113
2036
|
*
|
|
2114
|
-
* ```ts
|
|
2037
|
+
* ```ts import.meta.vitest
|
|
2115
2038
|
* import { Record } from "effect"
|
|
2116
|
-
* import * as assert from "node:assert"
|
|
2117
2039
|
*
|
|
2118
|
-
*
|
|
2119
|
-
* Record.intersection({ a: 1, b: 2 }, { b: 3, c: 4 }, (a, b) => a + b),
|
|
2120
|
-
* { b: 5 }
|
|
2121
|
-
* )
|
|
2040
|
+
* Record.intersection({ a: 1, b: 2 }, { b: 3, c: 4 }, (a, b) => a + b) // => { b: 5 }
|
|
2122
2041
|
* ```
|
|
2123
2042
|
*
|
|
2124
2043
|
* @category combining
|
|
@@ -2142,7 +2061,7 @@ export const intersection: {
|
|
|
2142
2061
|
}
|
|
2143
2062
|
for (const key of keys(self)) {
|
|
2144
2063
|
if (has(that, key as any)) {
|
|
2145
|
-
out
|
|
2064
|
+
InternalRecord.assignProperty(out, key, combine(self[key], that[key as unknown as K1]))
|
|
2146
2065
|
}
|
|
2147
2066
|
}
|
|
2148
2067
|
return out
|
|
@@ -2155,14 +2074,10 @@ export const intersection: {
|
|
|
2155
2074
|
*
|
|
2156
2075
|
* **Example** (Keeping keys unique to each record)
|
|
2157
2076
|
*
|
|
2158
|
-
* ```ts
|
|
2077
|
+
* ```ts import.meta.vitest
|
|
2159
2078
|
* import { Record } from "effect"
|
|
2160
|
-
* import * as assert from "node:assert"
|
|
2161
2079
|
*
|
|
2162
|
-
*
|
|
2163
|
-
* Record.difference({ a: 1, b: 2 }, { b: 3, c: 4 }),
|
|
2164
|
-
* { a: 1, c: 4 }
|
|
2165
|
-
* )
|
|
2080
|
+
* Record.difference({ a: 1, b: 2 }, { b: 3, c: 4 }) // => { a: 1, c: 4 }
|
|
2166
2081
|
* ```
|
|
2167
2082
|
*
|
|
2168
2083
|
* @category combining
|
|
@@ -2175,14 +2090,10 @@ export const difference: {
|
|
|
2175
2090
|
*
|
|
2176
2091
|
* **Example** (Keeping keys unique to each record)
|
|
2177
2092
|
*
|
|
2178
|
-
* ```ts
|
|
2093
|
+
* ```ts import.meta.vitest
|
|
2179
2094
|
* import { Record } from "effect"
|
|
2180
|
-
* import * as assert from "node:assert"
|
|
2181
2095
|
*
|
|
2182
|
-
*
|
|
2183
|
-
* Record.difference({ a: 1, b: 2 }, { b: 3, c: 4 }),
|
|
2184
|
-
* { a: 1, c: 4 }
|
|
2185
|
-
* )
|
|
2096
|
+
* Record.difference({ a: 1, b: 2 }, { b: 3, c: 4 }) // => { a: 1, c: 4 }
|
|
2186
2097
|
* ```
|
|
2187
2098
|
*
|
|
2188
2099
|
* @category combining
|
|
@@ -2195,14 +2106,10 @@ export const difference: {
|
|
|
2195
2106
|
*
|
|
2196
2107
|
* **Example** (Keeping keys unique to each record)
|
|
2197
2108
|
*
|
|
2198
|
-
* ```ts
|
|
2109
|
+
* ```ts import.meta.vitest
|
|
2199
2110
|
* import { Record } from "effect"
|
|
2200
|
-
* import * as assert from "node:assert"
|
|
2201
2111
|
*
|
|
2202
|
-
*
|
|
2203
|
-
* Record.difference({ a: 1, b: 2 }, { b: 3, c: 4 }),
|
|
2204
|
-
* { a: 1, c: 4 }
|
|
2205
|
-
* )
|
|
2112
|
+
* Record.difference({ a: 1, b: 2 }, { b: 3, c: 4 }) // => { a: 1, c: 4 }
|
|
2206
2113
|
* ```
|
|
2207
2114
|
*
|
|
2208
2115
|
* @category combining
|
|
@@ -2222,12 +2129,12 @@ export const difference: {
|
|
|
2222
2129
|
const out = {} as Record<K0 | K1, A | B>
|
|
2223
2130
|
for (const key of keys(self)) {
|
|
2224
2131
|
if (!has(that, key as any)) {
|
|
2225
|
-
out
|
|
2132
|
+
InternalRecord.assignProperty(out, key, self[key])
|
|
2226
2133
|
}
|
|
2227
2134
|
}
|
|
2228
2135
|
for (const key of keys(that)) {
|
|
2229
2136
|
if (!has(self, key as any)) {
|
|
2230
|
-
out
|
|
2137
|
+
InternalRecord.assignProperty(out, key, that[key])
|
|
2231
2138
|
}
|
|
2232
2139
|
}
|
|
2233
2140
|
return out
|
|
@@ -2239,14 +2146,13 @@ export const difference: {
|
|
|
2239
2146
|
*
|
|
2240
2147
|
* **Example** (Comparing records with a value equivalence)
|
|
2241
2148
|
*
|
|
2242
|
-
* ```ts
|
|
2149
|
+
* ```ts import.meta.vitest
|
|
2243
2150
|
* import { Equal, Record } from "effect"
|
|
2244
|
-
* import * as assert from "node:assert"
|
|
2245
2151
|
*
|
|
2246
2152
|
* const recordEquivalence = Record.makeEquivalence(Equal.asEquivalence<number>())
|
|
2247
2153
|
*
|
|
2248
|
-
*
|
|
2249
|
-
*
|
|
2154
|
+
* recordEquivalence({ a: 1, b: 2 }, { a: 1, b: 2 }) // => true
|
|
2155
|
+
* recordEquivalence({ a: 1, b: 2 }, { a: 1, b: 3 }) // => false
|
|
2250
2156
|
* ```
|
|
2251
2157
|
*
|
|
2252
2158
|
* @category instances
|
|
@@ -2264,11 +2170,10 @@ export const makeEquivalence = <K extends string, A>(
|
|
|
2264
2170
|
*
|
|
2265
2171
|
* **Example** (Creating a singleton record)
|
|
2266
2172
|
*
|
|
2267
|
-
* ```ts
|
|
2173
|
+
* ```ts import.meta.vitest
|
|
2268
2174
|
* import { Record } from "effect"
|
|
2269
|
-
* import * as assert from "node:assert"
|
|
2270
2175
|
*
|
|
2271
|
-
*
|
|
2176
|
+
* Record.singleton("a", 1) // => { a: 1 }
|
|
2272
2177
|
* ```
|
|
2273
2178
|
*
|
|
2274
2179
|
* @category constructors
|
|
@@ -2343,18 +2248,17 @@ export function makeReducerIntersection<K extends string, A>(
|
|
|
2343
2248
|
*
|
|
2344
2249
|
* **Example** (Finding the first matching entry)
|
|
2345
2250
|
*
|
|
2346
|
-
* ```ts
|
|
2347
|
-
* import { Record } from "effect"
|
|
2251
|
+
* ```ts import.meta.vitest
|
|
2252
|
+
* import { Option, Record } from "effect"
|
|
2348
2253
|
*
|
|
2349
2254
|
* const record = { a: 1, b: 2, c: 3 }
|
|
2350
|
-
*
|
|
2255
|
+
* Record.findFirst(
|
|
2351
2256
|
* record,
|
|
2352
2257
|
* (value, key) => value > 1 && key !== "b"
|
|
2353
|
-
* )
|
|
2354
|
-
* console.log(result) // Option.Some(["c", 3])
|
|
2258
|
+
* ) // => Option.some(["c", 3])
|
|
2355
2259
|
* ```
|
|
2356
2260
|
*
|
|
2357
|
-
* @category
|
|
2261
|
+
* @category searching
|
|
2358
2262
|
* @since 3.14.0
|
|
2359
2263
|
*/
|
|
2360
2264
|
export const findFirst: {
|
|
@@ -2364,18 +2268,17 @@ export const findFirst: {
|
|
|
2364
2268
|
*
|
|
2365
2269
|
* **Example** (Finding the first matching entry)
|
|
2366
2270
|
*
|
|
2367
|
-
* ```ts
|
|
2368
|
-
* import { Record } from "effect"
|
|
2271
|
+
* ```ts import.meta.vitest
|
|
2272
|
+
* import { Option, Record } from "effect"
|
|
2369
2273
|
*
|
|
2370
2274
|
* const record = { a: 1, b: 2, c: 3 }
|
|
2371
|
-
*
|
|
2275
|
+
* Record.findFirst(
|
|
2372
2276
|
* record,
|
|
2373
2277
|
* (value, key) => value > 1 && key !== "b"
|
|
2374
|
-
* )
|
|
2375
|
-
* console.log(result) // Option.Some(["c", 3])
|
|
2278
|
+
* ) // => Option.some(["c", 3])
|
|
2376
2279
|
* ```
|
|
2377
2280
|
*
|
|
2378
|
-
* @category
|
|
2281
|
+
* @category searching
|
|
2379
2282
|
* @since 3.14.0
|
|
2380
2283
|
*/
|
|
2381
2284
|
<K extends string | symbol, V, V2 extends V>(refinement: (value: NoInfer<V>, key: NoInfer<K>) => value is V2): (self: ReadonlyRecord<K, V>) => Option.Option<[K, V2]>
|
|
@@ -2385,18 +2288,17 @@ export const findFirst: {
|
|
|
2385
2288
|
*
|
|
2386
2289
|
* **Example** (Finding the first matching entry)
|
|
2387
2290
|
*
|
|
2388
|
-
* ```ts
|
|
2389
|
-
* import { Record } from "effect"
|
|
2291
|
+
* ```ts import.meta.vitest
|
|
2292
|
+
* import { Option, Record } from "effect"
|
|
2390
2293
|
*
|
|
2391
2294
|
* const record = { a: 1, b: 2, c: 3 }
|
|
2392
|
-
*
|
|
2295
|
+
* Record.findFirst(
|
|
2393
2296
|
* record,
|
|
2394
2297
|
* (value, key) => value > 1 && key !== "b"
|
|
2395
|
-
* )
|
|
2396
|
-
* console.log(result) // Option.Some(["c", 3])
|
|
2298
|
+
* ) // => Option.some(["c", 3])
|
|
2397
2299
|
* ```
|
|
2398
2300
|
*
|
|
2399
|
-
* @category
|
|
2301
|
+
* @category searching
|
|
2400
2302
|
* @since 3.14.0
|
|
2401
2303
|
*/
|
|
2402
2304
|
<K extends string | symbol, V>(predicate: (value: NoInfer<V>, key: NoInfer<K>) => boolean): (self: ReadonlyRecord<K, V>) => Option.Option<[K, V]>
|
|
@@ -2406,18 +2308,17 @@ export const findFirst: {
|
|
|
2406
2308
|
*
|
|
2407
2309
|
* **Example** (Finding the first matching entry)
|
|
2408
2310
|
*
|
|
2409
|
-
* ```ts
|
|
2410
|
-
* import { Record } from "effect"
|
|
2311
|
+
* ```ts import.meta.vitest
|
|
2312
|
+
* import { Option, Record } from "effect"
|
|
2411
2313
|
*
|
|
2412
2314
|
* const record = { a: 1, b: 2, c: 3 }
|
|
2413
|
-
*
|
|
2315
|
+
* Record.findFirst(
|
|
2414
2316
|
* record,
|
|
2415
2317
|
* (value, key) => value > 1 && key !== "b"
|
|
2416
|
-
* )
|
|
2417
|
-
* console.log(result) // Option.Some(["c", 3])
|
|
2318
|
+
* ) // => Option.some(["c", 3])
|
|
2418
2319
|
* ```
|
|
2419
2320
|
*
|
|
2420
|
-
* @category
|
|
2321
|
+
* @category searching
|
|
2421
2322
|
* @since 3.14.0
|
|
2422
2323
|
*/
|
|
2423
2324
|
<K extends string | symbol, V, V2 extends V>(
|
|
@@ -2430,18 +2331,17 @@ export const findFirst: {
|
|
|
2430
2331
|
*
|
|
2431
2332
|
* **Example** (Finding the first matching entry)
|
|
2432
2333
|
*
|
|
2433
|
-
* ```ts
|
|
2434
|
-
* import { Record } from "effect"
|
|
2334
|
+
* ```ts import.meta.vitest
|
|
2335
|
+
* import { Option, Record } from "effect"
|
|
2435
2336
|
*
|
|
2436
2337
|
* const record = { a: 1, b: 2, c: 3 }
|
|
2437
|
-
*
|
|
2338
|
+
* Record.findFirst(
|
|
2438
2339
|
* record,
|
|
2439
2340
|
* (value, key) => value > 1 && key !== "b"
|
|
2440
|
-
* )
|
|
2441
|
-
* console.log(result) // Option.Some(["c", 3])
|
|
2341
|
+
* ) // => Option.some(["c", 3])
|
|
2442
2342
|
* ```
|
|
2443
2343
|
*
|
|
2444
|
-
* @category
|
|
2344
|
+
* @category searching
|
|
2445
2345
|
* @since 3.14.0
|
|
2446
2346
|
*/
|
|
2447
2347
|
<K extends string | symbol, V>(
|