effect 4.0.0-beta.102 → 4.0.0-beta.103
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Array.d.ts +971 -1037
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +381 -407
- package/dist/Array.js.map +1 -1
- package/dist/BigDecimal.d.ts +433 -756
- package/dist/BigDecimal.d.ts.map +1 -1
- package/dist/BigDecimal.js +200 -325
- package/dist/BigDecimal.js.map +1 -1
- package/dist/BigInt.d.ts +207 -267
- package/dist/BigInt.d.ts.map +1 -1
- package/dist/BigInt.js +107 -135
- package/dist/BigInt.js.map +1 -1
- package/dist/Boolean.d.ts +146 -188
- package/dist/Boolean.d.ts.map +1 -1
- package/dist/Boolean.js +64 -84
- package/dist/Boolean.js.map +1 -1
- package/dist/Brand.js.map +1 -1
- package/dist/Cache.d.ts +405 -254
- package/dist/Cache.d.ts.map +1 -1
- package/dist/Cache.js +166 -101
- package/dist/Cache.js.map +1 -1
- package/dist/Cause.d.ts +167 -277
- package/dist/Cause.d.ts.map +1 -1
- package/dist/Cause.js +122 -176
- package/dist/Cause.js.map +1 -1
- package/dist/Channel.d.ts +729 -768
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +514 -440
- package/dist/Channel.js.map +1 -1
- package/dist/ChannelSchema.d.ts +1 -1
- package/dist/ChannelSchema.d.ts.map +1 -1
- package/dist/ChannelSchema.js.map +1 -1
- package/dist/Chunk.d.ts +834 -1173
- package/dist/Chunk.d.ts.map +1 -1
- package/dist/Chunk.js +326 -439
- package/dist/Chunk.js.map +1 -1
- package/dist/Clock.d.ts +180 -49
- package/dist/Clock.d.ts.map +1 -1
- package/dist/Clock.js +96 -31
- package/dist/Clock.js.map +1 -1
- package/dist/Combiner.d.ts +20 -33
- package/dist/Combiner.d.ts.map +1 -1
- package/dist/Combiner.js +18 -30
- package/dist/Combiner.js.map +1 -1
- package/dist/Config.d.ts +225 -173
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js +336 -265
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.d.ts +194 -68
- package/dist/ConfigProvider.d.ts.map +1 -1
- package/dist/ConfigProvider.js +115 -80
- package/dist/ConfigProvider.js.map +1 -1
- package/dist/Console.d.ts +233 -33
- package/dist/Console.d.ts.map +1 -1
- package/dist/Console.js +232 -32
- package/dist/Console.js.map +1 -1
- package/dist/Context.d.ts +151 -274
- package/dist/Context.d.ts.map +1 -1
- package/dist/Context.js +171 -214
- package/dist/Context.js.map +1 -1
- package/dist/Cron.d.ts +68 -77
- package/dist/Cron.d.ts.map +1 -1
- package/dist/Cron.js +57 -66
- package/dist/Cron.js.map +1 -1
- package/dist/Crypto.d.ts +13 -15
- package/dist/Crypto.d.ts.map +1 -1
- package/dist/Crypto.js +9 -10
- package/dist/Crypto.js.map +1 -1
- package/dist/Data.d.ts +60 -80
- package/dist/Data.d.ts.map +1 -1
- package/dist/Data.js +16 -23
- package/dist/Data.js.map +1 -1
- package/dist/DateTime.d.ts +562 -660
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/DateTime.js +307 -362
- package/dist/DateTime.js.map +1 -1
- package/dist/Deferred.d.ts +253 -256
- package/dist/Deferred.d.ts.map +1 -1
- package/dist/Deferred.js +104 -96
- package/dist/Deferred.js.map +1 -1
- package/dist/Duration.d.ts +216 -308
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +132 -186
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +2841 -3247
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +1322 -1546
- package/dist/Effect.js.map +1 -1
- package/dist/Effectable.js.map +1 -1
- package/dist/Encoding.d.ts +22 -40
- package/dist/Encoding.d.ts.map +1 -1
- package/dist/Encoding.js +22 -40
- package/dist/Encoding.js.map +1 -1
- package/dist/Equal.d.ts +33 -37
- package/dist/Equal.d.ts.map +1 -1
- package/dist/Equal.js +29 -21
- package/dist/Equal.js.map +1 -1
- package/dist/Equivalence.d.ts +103 -105
- package/dist/Equivalence.d.ts.map +1 -1
- package/dist/Equivalence.js +77 -79
- package/dist/Equivalence.js.map +1 -1
- package/dist/ErrorReporter.d.ts +51 -27
- package/dist/ErrorReporter.d.ts.map +1 -1
- package/dist/ErrorReporter.js +50 -26
- package/dist/ErrorReporter.js.map +1 -1
- package/dist/ExecutionPlan.d.ts +13 -55
- package/dist/ExecutionPlan.d.ts.map +1 -1
- package/dist/ExecutionPlan.js +7 -28
- package/dist/ExecutionPlan.js.map +1 -1
- package/dist/Exit.d.ts +116 -192
- package/dist/Exit.d.ts.map +1 -1
- package/dist/Exit.js +82 -130
- package/dist/Exit.js.map +1 -1
- package/dist/Fiber.d.ts +82 -146
- package/dist/Fiber.d.ts.map +1 -1
- package/dist/Fiber.js +48 -87
- package/dist/Fiber.js.map +1 -1
- package/dist/FiberHandle.d.ts +152 -105
- package/dist/FiberHandle.d.ts.map +1 -1
- package/dist/FiberHandle.js +106 -73
- package/dist/FiberHandle.js.map +1 -1
- package/dist/FiberMap.d.ts +213 -168
- package/dist/FiberMap.d.ts.map +1 -1
- package/dist/FiberMap.js +114 -89
- package/dist/FiberMap.js.map +1 -1
- package/dist/FiberSet.d.ts +123 -81
- package/dist/FiberSet.d.ts.map +1 -1
- package/dist/FiberSet.js +85 -59
- package/dist/FiberSet.js.map +1 -1
- package/dist/FileSystem.d.ts +153 -264
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js +42 -147
- package/dist/FileSystem.js.map +1 -1
- package/dist/Filter.d.ts +61 -33
- package/dist/Filter.d.ts.map +1 -1
- package/dist/Filter.js +26 -15
- package/dist/Filter.js.map +1 -1
- package/dist/Formatter.d.ts +25 -33
- package/dist/Formatter.d.ts.map +1 -1
- package/dist/Formatter.js +48 -49
- package/dist/Formatter.js.map +1 -1
- package/dist/Function.d.ts +76 -145
- package/dist/Function.d.ts.map +1 -1
- package/dist/Function.js +40 -57
- package/dist/Function.js.map +1 -1
- package/dist/Graph.d.ts +360 -714
- package/dist/Graph.d.ts.map +1 -1
- package/dist/Graph.js +168 -297
- package/dist/Graph.js.map +1 -1
- package/dist/HKT.d.ts +12 -6
- package/dist/HKT.d.ts.map +1 -1
- package/dist/Hash.d.ts +47 -83
- package/dist/Hash.d.ts.map +1 -1
- package/dist/Hash.js +46 -68
- package/dist/Hash.js.map +1 -1
- package/dist/HashMap.d.ts +319 -411
- package/dist/HashMap.d.ts.map +1 -1
- package/dist/HashMap.js +122 -166
- package/dist/HashMap.js.map +1 -1
- package/dist/HashRing.d.ts.map +1 -1
- package/dist/HashRing.js +1 -0
- package/dist/HashRing.js.map +1 -1
- package/dist/HashSet.d.ts +177 -284
- package/dist/HashSet.d.ts.map +1 -1
- package/dist/HashSet.js +68 -109
- package/dist/HashSet.js.map +1 -1
- package/dist/Inspectable.d.ts +12 -12
- package/dist/Inspectable.js +8 -8
- package/dist/Inspectable.js.map +1 -1
- package/dist/Iterable.d.ts +620 -786
- package/dist/Iterable.d.ts.map +1 -1
- package/dist/Iterable.js +228 -306
- package/dist/Iterable.js.map +1 -1
- package/dist/JsonPatch.d.ts +11 -13
- package/dist/JsonPatch.d.ts.map +1 -1
- package/dist/JsonPatch.js +44 -102
- package/dist/JsonPatch.js.map +1 -1
- package/dist/JsonPointer.d.ts +8 -8
- package/dist/JsonPointer.js +8 -8
- package/dist/JsonPointer.js.map +1 -1
- package/dist/JsonSchema.d.ts +98 -44
- package/dist/JsonSchema.d.ts.map +1 -1
- package/dist/JsonSchema.js +297 -234
- package/dist/JsonSchema.js.map +1 -1
- package/dist/Latch.d.ts +23 -35
- package/dist/Latch.d.ts.map +1 -1
- package/dist/Latch.js +16 -28
- package/dist/Latch.js.map +1 -1
- package/dist/Layer.d.ts +359 -260
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js +195 -175
- package/dist/Layer.js.map +1 -1
- package/dist/LayerMap.d.ts +42 -29
- package/dist/LayerMap.d.ts.map +1 -1
- package/dist/LayerMap.js +31 -21
- package/dist/LayerMap.js.map +1 -1
- package/dist/LayerRef.d.ts +6 -2
- package/dist/LayerRef.d.ts.map +1 -1
- package/dist/LayerRef.js +6 -2
- package/dist/LayerRef.js.map +1 -1
- package/dist/LogLevel.d.ts +114 -214
- package/dist/LogLevel.d.ts.map +1 -1
- package/dist/LogLevel.js +41 -76
- package/dist/LogLevel.js.map +1 -1
- package/dist/Logger.d.ts +218 -467
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js +204 -450
- package/dist/Logger.js.map +1 -1
- package/dist/ManagedRuntime.d.ts +7 -5
- package/dist/ManagedRuntime.d.ts.map +1 -1
- package/dist/ManagedRuntime.js +7 -5
- package/dist/ManagedRuntime.js.map +1 -1
- package/dist/Match.d.ts +217 -252
- package/dist/Match.d.ts.map +1 -1
- package/dist/Match.js +150 -183
- package/dist/Match.js.map +1 -1
- package/dist/Metric.d.ts +442 -993
- package/dist/Metric.d.ts.map +1 -1
- package/dist/Metric.js +198 -642
- package/dist/Metric.js.map +1 -1
- package/dist/MutableHashMap.d.ts +144 -173
- package/dist/MutableHashMap.d.ts.map +1 -1
- package/dist/MutableHashMap.js +68 -79
- package/dist/MutableHashMap.js.map +1 -1
- package/dist/MutableHashSet.d.ts +84 -89
- package/dist/MutableHashSet.d.ts.map +1 -1
- package/dist/MutableHashSet.js +44 -47
- package/dist/MutableHashSet.js.map +1 -1
- package/dist/MutableList.d.ts +71 -370
- package/dist/MutableList.d.ts.map +1 -1
- package/dist/MutableList.js +59 -284
- package/dist/MutableList.js.map +1 -1
- package/dist/MutableRef.d.ts +420 -243
- package/dist/MutableRef.d.ts.map +1 -1
- package/dist/MutableRef.js +209 -120
- package/dist/MutableRef.js.map +1 -1
- package/dist/Newtype.d.ts +21 -14
- package/dist/Newtype.d.ts.map +1 -1
- package/dist/Newtype.js +15 -13
- package/dist/Newtype.js.map +1 -1
- package/dist/NonEmptyIterable.d.ts +7 -137
- package/dist/NonEmptyIterable.d.ts.map +1 -1
- package/dist/NonEmptyIterable.js +5 -93
- package/dist/NonEmptyIterable.js.map +1 -1
- package/dist/Number.d.ts +196 -233
- package/dist/Number.d.ts.map +1 -1
- package/dist/Number.js +90 -109
- package/dist/Number.js.map +1 -1
- package/dist/Optic.d.ts +97 -189
- package/dist/Optic.d.ts.map +1 -1
- package/dist/Optic.js +187 -290
- package/dist/Optic.js.map +1 -1
- package/dist/Option.d.ts +447 -812
- package/dist/Option.d.ts.map +1 -1
- package/dist/Option.js +211 -392
- package/dist/Option.js.map +1 -1
- package/dist/Order.d.ts +109 -109
- package/dist/Order.js +91 -91
- package/dist/Order.js.map +1 -1
- package/dist/Ordering.d.ts +20 -23
- package/dist/Ordering.d.ts.map +1 -1
- package/dist/Ordering.js +8 -9
- package/dist/Ordering.js.map +1 -1
- package/dist/PartitionedSemaphore.js.map +1 -1
- package/dist/Path.d.ts +38 -41
- package/dist/Path.d.ts.map +1 -1
- package/dist/Path.js +3 -4
- package/dist/Path.js.map +1 -1
- package/dist/Pipeable.d.ts +6 -5
- package/dist/Pipeable.d.ts.map +1 -1
- package/dist/Pipeable.js +2 -2
- package/dist/Pipeable.js.map +1 -1
- package/dist/PlatformError.d.ts +4 -4
- package/dist/PlatformError.js +3 -3
- package/dist/PlatformError.js.map +1 -1
- package/dist/Pool.d.ts +4 -2
- package/dist/Pool.d.ts.map +1 -1
- package/dist/Pool.js +4 -2
- package/dist/Pool.js.map +1 -1
- package/dist/Predicate.d.ts +200 -181
- package/dist/Predicate.d.ts.map +1 -1
- package/dist/Predicate.js +100 -108
- package/dist/Predicate.js.map +1 -1
- package/dist/PrimaryKey.d.ts +7 -7
- package/dist/PrimaryKey.js +5 -5
- package/dist/PrimaryKey.js.map +1 -1
- package/dist/PubSub.d.ts +425 -494
- package/dist/PubSub.d.ts.map +1 -1
- package/dist/PubSub.js +373 -362
- package/dist/PubSub.js.map +1 -1
- package/dist/Pull.d.ts +24 -18
- package/dist/Pull.d.ts.map +1 -1
- package/dist/Pull.js +11 -9
- package/dist/Pull.js.map +1 -1
- package/dist/Queue.d.ts +200 -159
- package/dist/Queue.d.ts.map +1 -1
- package/dist/Queue.js +162 -132
- package/dist/Queue.js.map +1 -1
- package/dist/Random.d.ts +49 -74
- package/dist/Random.d.ts.map +1 -1
- package/dist/Random.js +35 -54
- package/dist/Random.js.map +1 -1
- package/dist/RcMap.d.ts +121 -63
- package/dist/RcMap.d.ts.map +1 -1
- package/dist/RcMap.js +42 -21
- package/dist/RcMap.js.map +1 -1
- package/dist/RcRef.d.ts +24 -13
- package/dist/RcRef.d.ts.map +1 -1
- package/dist/RcRef.js +15 -9
- package/dist/RcRef.js.map +1 -1
- package/dist/Record.d.ts +291 -488
- package/dist/Record.d.ts.map +1 -1
- package/dist/Record.js +111 -202
- package/dist/Record.js.map +1 -1
- package/dist/Redactable.d.ts +6 -2
- package/dist/Redactable.d.ts.map +1 -1
- package/dist/Redactable.js +7 -2
- package/dist/Redactable.js.map +1 -1
- package/dist/Redacted.d.ts +25 -25
- package/dist/Redacted.d.ts.map +1 -1
- package/dist/Redacted.js +19 -20
- package/dist/Redacted.js.map +1 -1
- package/dist/Reducer.d.ts +8 -15
- package/dist/Reducer.d.ts.map +1 -1
- package/dist/Reducer.js +6 -12
- package/dist/Reducer.js.map +1 -1
- package/dist/Ref.d.ts +95 -165
- package/dist/Ref.d.ts.map +1 -1
- package/dist/Ref.js +75 -122
- package/dist/Ref.js.map +1 -1
- package/dist/References.d.ts +102 -168
- package/dist/References.d.ts.map +1 -1
- package/dist/References.js +102 -168
- package/dist/References.js.map +1 -1
- package/dist/RegExp.d.ts +10 -14
- package/dist/RegExp.d.ts.map +1 -1
- package/dist/RegExp.js +10 -14
- package/dist/RegExp.js.map +1 -1
- package/dist/Request.d.ts +31 -21
- package/dist/Request.d.ts.map +1 -1
- package/dist/Request.js +16 -13
- package/dist/Request.js.map +1 -1
- package/dist/RequestResolver.d.ts +201 -90
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +87 -41
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Resource.js.map +1 -1
- package/dist/Result.d.ts +302 -470
- package/dist/Result.d.ts.map +1 -1
- package/dist/Result.js +133 -217
- package/dist/Result.js.map +1 -1
- package/dist/Runtime.d.ts +50 -75
- package/dist/Runtime.d.ts.map +1 -1
- package/dist/Runtime.js +39 -60
- package/dist/Runtime.js.map +1 -1
- package/dist/Schedule.d.ts +290 -1636
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +162 -803
- package/dist/Schedule.js.map +1 -1
- package/dist/Scheduler.d.ts +5 -5
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js +18 -6
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +644 -642
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +491 -527
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +27 -50
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +366 -279
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaError.d.ts +7 -6
- package/dist/SchemaError.d.ts.map +1 -1
- package/dist/SchemaError.js +7 -6
- package/dist/SchemaError.js.map +1 -1
- package/dist/SchemaGetter.d.ts +217 -174
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +218 -185
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaIssue.d.ts +62 -190
- package/dist/SchemaIssue.d.ts.map +1 -1
- package/dist/SchemaIssue.js +73 -265
- package/dist/SchemaIssue.js.map +1 -1
- package/dist/SchemaParser.d.ts +2 -2
- package/dist/SchemaParser.d.ts.map +1 -1
- package/dist/SchemaParser.js +123 -75
- package/dist/SchemaParser.js.map +1 -1
- package/dist/SchemaRepresentation.d.ts +22 -36
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +20 -26
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +114 -74
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +120 -85
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/Scope.d.ts +123 -151
- package/dist/Scope.d.ts.map +1 -1
- package/dist/Scope.js +72 -92
- package/dist/Scope.js.map +1 -1
- package/dist/ScopedCache.js.map +1 -1
- package/dist/ScopedRef.d.ts +3 -3
- package/dist/ScopedRef.js +2 -2
- package/dist/ScopedRef.js.map +1 -1
- package/dist/Semaphore.d.ts +96 -10
- package/dist/Semaphore.d.ts.map +1 -1
- package/dist/Semaphore.js +78 -39
- package/dist/Semaphore.js.map +1 -1
- package/dist/Sink.d.ts +117 -107
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js +107 -100
- package/dist/Sink.js.map +1 -1
- package/dist/Stdio.d.ts +1 -1
- package/dist/Stdio.js.map +1 -1
- package/dist/Stream.d.ts +2415 -2949
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +1078 -1381
- package/dist/Stream.js.map +1 -1
- package/dist/String.d.ts +262 -308
- package/dist/String.d.ts.map +1 -1
- package/dist/String.js +184 -215
- package/dist/String.js.map +1 -1
- package/dist/Struct.d.ts +109 -114
- package/dist/Struct.d.ts.map +1 -1
- package/dist/Struct.js +41 -50
- package/dist/Struct.js.map +1 -1
- package/dist/SubscriptionRef.d.ts +282 -250
- package/dist/SubscriptionRef.d.ts.map +1 -1
- package/dist/SubscriptionRef.js +104 -92
- package/dist/SubscriptionRef.js.map +1 -1
- package/dist/Symbol.d.ts +3 -3
- package/dist/Symbol.js +3 -3
- package/dist/Symbol.js.map +1 -1
- package/dist/SynchronizedRef.js.map +1 -1
- package/dist/Take.js.map +1 -1
- package/dist/Terminal.d.ts +2 -2
- package/dist/Terminal.js +1 -1
- package/dist/Terminal.js.map +1 -1
- package/dist/Tracer.d.ts +100 -54
- package/dist/Tracer.d.ts.map +1 -1
- package/dist/Tracer.js +41 -24
- package/dist/Tracer.js.map +1 -1
- package/dist/Trie.d.ts +287 -679
- package/dist/Trie.d.ts.map +1 -1
- package/dist/Trie.js +109 -251
- package/dist/Trie.js.map +1 -1
- package/dist/Tuple.d.ts +92 -127
- package/dist/Tuple.d.ts.map +1 -1
- package/dist/Tuple.js +42 -57
- package/dist/Tuple.js.map +1 -1
- package/dist/TxChunk.d.ts +201 -121
- package/dist/TxChunk.d.ts.map +1 -1
- package/dist/TxChunk.js +85 -56
- package/dist/TxChunk.js.map +1 -1
- package/dist/TxDeferred.d.ts +62 -46
- package/dist/TxDeferred.d.ts.map +1 -1
- package/dist/TxDeferred.js +30 -22
- package/dist/TxDeferred.js.map +1 -1
- package/dist/TxHashMap.d.ts +631 -779
- package/dist/TxHashMap.d.ts.map +1 -1
- package/dist/TxHashMap.js +268 -330
- package/dist/TxHashMap.js.map +1 -1
- package/dist/TxHashSet.d.ts +297 -236
- package/dist/TxHashSet.d.ts.map +1 -1
- package/dist/TxHashSet.js +130 -100
- package/dist/TxHashSet.js.map +1 -1
- package/dist/TxPriorityQueue.d.ts +126 -95
- package/dist/TxPriorityQueue.d.ts.map +1 -1
- package/dist/TxPriorityQueue.js +74 -56
- package/dist/TxPriorityQueue.js.map +1 -1
- package/dist/TxPubSub.d.ts +101 -88
- package/dist/TxPubSub.d.ts.map +1 -1
- package/dist/TxPubSub.js +87 -66
- package/dist/TxPubSub.js.map +1 -1
- package/dist/TxQueue.d.ts +200 -180
- package/dist/TxQueue.d.ts.map +1 -1
- package/dist/TxQueue.js +160 -136
- package/dist/TxQueue.js.map +1 -1
- package/dist/TxReentrantLock.d.ts +97 -66
- package/dist/TxReentrantLock.d.ts.map +1 -1
- package/dist/TxReentrantLock.js +67 -45
- package/dist/TxReentrantLock.js.map +1 -1
- package/dist/TxRef.d.ts +51 -32
- package/dist/TxRef.d.ts.map +1 -1
- package/dist/TxRef.js +23 -15
- package/dist/TxRef.js.map +1 -1
- package/dist/TxSemaphore.d.ts +129 -95
- package/dist/TxSemaphore.d.ts.map +1 -1
- package/dist/TxSemaphore.js +85 -70
- package/dist/TxSemaphore.js.map +1 -1
- package/dist/TxSubscriptionRef.d.ts +97 -70
- package/dist/TxSubscriptionRef.d.ts.map +1 -1
- package/dist/TxSubscriptionRef.js +44 -34
- package/dist/TxSubscriptionRef.js.map +1 -1
- package/dist/Types.d.ts +126 -67
- package/dist/Types.d.ts.map +1 -1
- package/dist/UndefinedOr.js.map +1 -1
- package/dist/Unify.d.ts +45 -65
- package/dist/Unify.d.ts.map +1 -1
- package/dist/Unify.js +6 -9
- package/dist/Unify.js.map +1 -1
- package/dist/Utils.d.ts +23 -16
- package/dist/Utils.d.ts.map +1 -1
- package/dist/Utils.js +3 -7
- package/dist/Utils.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/internal/array.js.map +1 -1
- package/dist/internal/core.js +1 -1
- package/dist/internal/core.js.map +1 -1
- package/dist/internal/dateTime.js +4 -0
- package/dist/internal/dateTime.js.map +1 -1
- package/dist/internal/doNotation.js.map +1 -1
- package/dist/internal/effect.js +77 -40
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/equal.js.map +1 -1
- package/dist/internal/errors.js.map +1 -1
- package/dist/internal/executionPlan.js.map +1 -1
- package/dist/internal/hashMap.js.map +1 -1
- package/dist/internal/hashSet.js.map +1 -1
- package/dist/internal/layer.js.map +1 -1
- package/dist/internal/matcher.js.map +1 -1
- package/dist/internal/metric.js.map +1 -1
- package/dist/internal/option.js.map +1 -1
- package/dist/internal/persistence.d.ts +2 -0
- package/dist/internal/persistence.d.ts.map +1 -0
- package/dist/internal/persistence.js +3 -0
- package/dist/internal/persistence.js.map +1 -0
- package/dist/internal/random.js.map +1 -1
- package/dist/internal/rcRef.js.map +1 -1
- package/dist/internal/record.js.map +1 -1
- package/dist/internal/redacted.js.map +1 -1
- package/dist/internal/references.js +3 -0
- package/dist/internal/references.js.map +1 -1
- package/dist/internal/request.js.map +1 -1
- package/dist/internal/result.js.map +1 -1
- package/dist/internal/schedule.js.map +1 -1
- package/dist/internal/schema/annotations.js.map +1 -1
- package/dist/internal/schema/cause.js.map +1 -1
- package/dist/internal/schema/fromJsonSchemaDocument.js +13 -11
- package/dist/internal/schema/fromJsonSchemaDocument.js.map +1 -1
- package/dist/internal/schema/fromRepresentation.js +8 -15
- package/dist/internal/schema/fromRepresentation.js.map +1 -1
- package/dist/internal/schema/parser.d.ts +14 -0
- package/dist/internal/schema/parser.d.ts.map +1 -0
- package/dist/internal/schema/parser.js +13 -0
- package/dist/internal/schema/parser.js.map +1 -0
- package/dist/internal/schema/schema.js.map +1 -1
- package/dist/internal/schema/toArbitrary.js.map +1 -1
- package/dist/internal/schema/toCodeDocument.js.map +1 -1
- package/dist/internal/schema/toEquivalence.js.map +1 -1
- package/dist/internal/schema/toJsonSchemaDocument.js +48 -6
- package/dist/internal/schema/toJsonSchemaDocument.js.map +1 -1
- package/dist/internal/schema/toRepresentation.js +87 -107
- package/dist/internal/schema/toRepresentation.js.map +1 -1
- package/dist/internal/stackTraceLimit.js.map +1 -1
- package/dist/internal/stream.js.map +1 -1
- package/dist/internal/tracer.js.map +1 -1
- package/dist/internal/trie.js +13 -9
- package/dist/internal/trie.js.map +1 -1
- package/dist/testing/FastCheck.d.ts +8 -7
- package/dist/testing/FastCheck.d.ts.map +1 -1
- package/dist/testing/FastCheck.js +8 -7
- package/dist/testing/FastCheck.js.map +1 -1
- package/dist/testing/TestClock.d.ts +57 -28
- package/dist/testing/TestClock.d.ts.map +1 -1
- package/dist/testing/TestClock.js +50 -18
- package/dist/testing/TestClock.js.map +1 -1
- package/dist/testing/TestConsole.d.ts +32 -31
- package/dist/testing/TestConsole.d.ts.map +1 -1
- package/dist/testing/TestConsole.js +24 -22
- package/dist/testing/TestConsole.js.map +1 -1
- package/dist/testing/TestSchema.d.ts +29 -29
- package/dist/testing/TestSchema.js +25 -25
- package/dist/testing/TestSchema.js.map +1 -1
- package/dist/testing/index.js.map +1 -1
- package/dist/unstable/ai/AiError.d.ts +95 -118
- package/dist/unstable/ai/AiError.d.ts.map +1 -1
- package/dist/unstable/ai/AiError.js +94 -117
- package/dist/unstable/ai/AiError.js.map +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.js +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
- package/dist/unstable/ai/Chat.d.ts +132 -97
- package/dist/unstable/ai/Chat.d.ts.map +1 -1
- package/dist/unstable/ai/Chat.js +55 -51
- package/dist/unstable/ai/Chat.js.map +1 -1
- package/dist/unstable/ai/EmbeddingModel.js.map +1 -1
- package/dist/unstable/ai/IdGenerator.d.ts +32 -28
- package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
- package/dist/unstable/ai/IdGenerator.js +26 -21
- package/dist/unstable/ai/IdGenerator.js.map +1 -1
- package/dist/unstable/ai/LanguageModel.d.ts +107 -67
- package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
- package/dist/unstable/ai/LanguageModel.js +104 -64
- package/dist/unstable/ai/LanguageModel.js.map +1 -1
- package/dist/unstable/ai/McpProtocol.d.ts +30 -0
- package/dist/unstable/ai/McpProtocol.d.ts.map +1 -0
- package/dist/unstable/ai/McpProtocol.js +20 -0
- package/dist/unstable/ai/McpProtocol.js.map +1 -0
- package/dist/unstable/ai/McpSchema.d.ts +141 -75
- package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
- package/dist/unstable/ai/McpSchema.js +58 -50
- package/dist/unstable/ai/McpSchema.js.map +1 -1
- package/dist/unstable/ai/McpServer.d.ts +68 -59
- package/dist/unstable/ai/McpServer.d.ts.map +1 -1
- package/dist/unstable/ai/McpServer.js +694 -241
- package/dist/unstable/ai/McpServer.js.map +1 -1
- package/dist/unstable/ai/Model.d.ts +8 -19
- package/dist/unstable/ai/Model.d.ts.map +1 -1
- package/dist/unstable/ai/Model.js +9 -20
- package/dist/unstable/ai/Model.js.map +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.js +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
- package/dist/unstable/ai/Prompt.d.ts +112 -38
- package/dist/unstable/ai/Prompt.d.ts.map +1 -1
- package/dist/unstable/ai/Prompt.js +53 -17
- package/dist/unstable/ai/Prompt.js.map +1 -1
- package/dist/unstable/ai/Response.d.ts +28 -14
- package/dist/unstable/ai/Response.d.ts.map +1 -1
- package/dist/unstable/ai/Response.js +9 -4
- package/dist/unstable/ai/Response.js.map +1 -1
- package/dist/unstable/ai/ResponseIdTracker.js.map +1 -1
- package/dist/unstable/ai/Telemetry.d.ts +46 -13
- package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
- package/dist/unstable/ai/Telemetry.js +18 -7
- package/dist/unstable/ai/Telemetry.js.map +1 -1
- package/dist/unstable/ai/Tokenizer.d.ts +14 -3
- package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
- package/dist/unstable/ai/Tokenizer.js +10 -2
- package/dist/unstable/ai/Tokenizer.js.map +1 -1
- package/dist/unstable/ai/Tool.d.ts +59 -44
- package/dist/unstable/ai/Tool.d.ts.map +1 -1
- package/dist/unstable/ai/Tool.js +48 -39
- package/dist/unstable/ai/Tool.js.map +1 -1
- package/dist/unstable/ai/Toolkit.d.ts +26 -8
- package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
- package/dist/unstable/ai/Toolkit.js +18 -4
- package/dist/unstable/ai/Toolkit.js.map +1 -1
- package/dist/unstable/ai/index.d.ts +4 -0
- package/dist/unstable/ai/index.d.ts.map +1 -1
- package/dist/unstable/ai/index.js +4 -0
- package/dist/unstable/ai/index.js.map +1 -1
- package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
- package/dist/unstable/ai/internal/mcpProtocol.d.ts +21 -0
- package/dist/unstable/ai/internal/mcpProtocol.d.ts.map +1 -0
- package/dist/unstable/ai/internal/mcpProtocol.js +22 -0
- package/dist/unstable/ai/internal/mcpProtocol.js.map +1 -0
- package/dist/unstable/ai/internal/mcpProtocolRegistry.d.ts +2 -0
- package/dist/unstable/ai/internal/mcpProtocolRegistry.d.ts.map +1 -0
- package/dist/unstable/ai/internal/mcpProtocolRegistry.js +32 -0
- package/dist/unstable/ai/internal/mcpProtocolRegistry.js.map +1 -0
- package/dist/unstable/ai/internal/structured-output.js +14 -15
- package/dist/unstable/ai/internal/structured-output.js.map +1 -1
- package/dist/unstable/cli/Argument.d.ts +273 -69
- package/dist/unstable/cli/Argument.d.ts.map +1 -1
- package/dist/unstable/cli/Argument.js +111 -33
- package/dist/unstable/cli/Argument.js.map +1 -1
- package/dist/unstable/cli/CliConfig.js.map +1 -1
- package/dist/unstable/cli/CliError.d.ts +69 -76
- package/dist/unstable/cli/CliError.d.ts.map +1 -1
- package/dist/unstable/cli/CliError.js +57 -61
- package/dist/unstable/cli/CliError.js.map +1 -1
- package/dist/unstable/cli/CliOutput.d.ts +35 -54
- package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
- package/dist/unstable/cli/CliOutput.js +26 -42
- package/dist/unstable/cli/CliOutput.js.map +1 -1
- package/dist/unstable/cli/Command.d.ts +705 -107
- package/dist/unstable/cli/Command.d.ts.map +1 -1
- package/dist/unstable/cli/Command.js +238 -42
- package/dist/unstable/cli/Command.js.map +1 -1
- package/dist/unstable/cli/Completions.js.map +1 -1
- package/dist/unstable/cli/Flag.d.ts +418 -138
- package/dist/unstable/cli/Flag.d.ts.map +1 -1
- package/dist/unstable/cli/Flag.js +197 -71
- package/dist/unstable/cli/Flag.js.map +1 -1
- package/dist/unstable/cli/GlobalFlag.d.ts +1 -1
- package/dist/unstable/cli/GlobalFlag.js.map +1 -1
- package/dist/unstable/cli/HelpDoc.d.ts +12 -4
- package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
- package/dist/unstable/cli/Param.d.ts +292 -78
- package/dist/unstable/cli/Param.d.ts.map +1 -1
- package/dist/unstable/cli/Param.js +128 -46
- package/dist/unstable/cli/Param.js.map +1 -1
- package/dist/unstable/cli/Primitive.d.ts +370 -149
- package/dist/unstable/cli/Primitive.d.ts.map +1 -1
- package/dist/unstable/cli/Primitive.js +344 -136
- package/dist/unstable/cli/Primitive.js.map +1 -1
- package/dist/unstable/cli/Prompt.d.ts +23 -14
- package/dist/unstable/cli/Prompt.d.ts.map +1 -1
- package/dist/unstable/cli/Prompt.js +23 -14
- package/dist/unstable/cli/Prompt.js.map +1 -1
- package/dist/unstable/cli/index.js.map +1 -1
- package/dist/unstable/cli/internal/ansi.js.map +1 -1
- package/dist/unstable/cli/internal/auto-suggest.js.map +1 -1
- package/dist/unstable/cli/internal/command.js.map +1 -1
- package/dist/unstable/cli/internal/completions/bash.js.map +1 -1
- package/dist/unstable/cli/internal/completions/descriptor.js.map +1 -1
- package/dist/unstable/cli/internal/completions/fish.js.map +1 -1
- package/dist/unstable/cli/internal/completions/zsh.js.map +1 -1
- package/dist/unstable/cli/internal/config.js.map +1 -1
- package/dist/unstable/cli/internal/help.js.map +1 -1
- package/dist/unstable/cli/internal/lexer.js +17 -7
- package/dist/unstable/cli/internal/lexer.js.map +1 -1
- package/dist/unstable/cli/internal/parser.js +2 -2
- package/dist/unstable/cli/internal/parser.js.map +1 -1
- package/dist/unstable/cli/internal/wizard.js.map +1 -1
- package/dist/unstable/cluster/ClusterCron.js.map +1 -1
- package/dist/unstable/cluster/ClusterError.js.map +1 -1
- package/dist/unstable/cluster/ClusterMetrics.js.map +1 -1
- package/dist/unstable/cluster/ClusterSchema.d.ts +8 -8
- package/dist/unstable/cluster/ClusterSchema.js +8 -8
- package/dist/unstable/cluster/ClusterSchema.js.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.js +5 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/unstable/cluster/DeliverAt.js.map +1 -1
- package/dist/unstable/cluster/Entity.d.ts +10 -10
- package/dist/unstable/cluster/Entity.d.ts.map +1 -1
- package/dist/unstable/cluster/Entity.js +8 -8
- package/dist/unstable/cluster/Entity.js.map +1 -1
- package/dist/unstable/cluster/EntityAddress.js.map +1 -1
- package/dist/unstable/cluster/EntityId.js.map +1 -1
- package/dist/unstable/cluster/EntityProxy.d.ts +4 -2
- package/dist/unstable/cluster/EntityProxy.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityProxy.js +4 -2
- package/dist/unstable/cluster/EntityProxy.js.map +1 -1
- package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
- package/dist/unstable/cluster/EntityResource.d.ts +2 -2
- package/dist/unstable/cluster/EntityResource.js +2 -2
- package/dist/unstable/cluster/EntityResource.js.map +1 -1
- package/dist/unstable/cluster/EntityType.js.map +1 -1
- package/dist/unstable/cluster/Envelope.d.ts +3 -3
- package/dist/unstable/cluster/Envelope.js +3 -3
- package/dist/unstable/cluster/Envelope.js.map +1 -1
- package/dist/unstable/cluster/HttpRunner.d.ts +2 -2
- package/dist/unstable/cluster/HttpRunner.d.ts.map +1 -1
- package/dist/unstable/cluster/HttpRunner.js +6 -4
- package/dist/unstable/cluster/HttpRunner.js.map +1 -1
- package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
- package/dist/unstable/cluster/MachineId.js.map +1 -1
- package/dist/unstable/cluster/Message.d.ts +9 -9
- package/dist/unstable/cluster/Message.js +6 -6
- package/dist/unstable/cluster/Message.js.map +1 -1
- package/dist/unstable/cluster/MessageStorage.d.ts +15 -15
- package/dist/unstable/cluster/MessageStorage.js +5 -5
- package/dist/unstable/cluster/MessageStorage.js.map +1 -1
- package/dist/unstable/cluster/Reply.d.ts.map +1 -1
- package/dist/unstable/cluster/Reply.js +4 -4
- package/dist/unstable/cluster/Reply.js.map +1 -1
- package/dist/unstable/cluster/Runner.js.map +1 -1
- package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
- package/dist/unstable/cluster/RunnerHealth.d.ts +1 -1
- package/dist/unstable/cluster/RunnerHealth.js +1 -1
- package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
- package/dist/unstable/cluster/RunnerServer.d.ts +2 -1
- package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerServer.js +16 -16
- package/dist/unstable/cluster/RunnerServer.js.map +1 -1
- package/dist/unstable/cluster/RunnerStorage.d.ts +2 -2
- package/dist/unstable/cluster/RunnerStorage.js +1 -1
- package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/Runners.d.ts +6 -6
- package/dist/unstable/cluster/Runners.d.ts.map +1 -1
- package/dist/unstable/cluster/Runners.js +19 -10
- package/dist/unstable/cluster/Runners.js.map +1 -1
- package/dist/unstable/cluster/ShardId.js.map +1 -1
- package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
- package/dist/unstable/cluster/Sharding.js +3 -2
- package/dist/unstable/cluster/Sharding.js.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.d.ts +3 -3
- package/dist/unstable/cluster/ShardingConfig.js +3 -3
- package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
- package/dist/unstable/cluster/ShardingRegistrationEvent.js.map +1 -1
- package/dist/unstable/cluster/SingleRunner.js.map +1 -1
- package/dist/unstable/cluster/Singleton.js.map +1 -1
- package/dist/unstable/cluster/SingletonAddress.d.ts +1 -1
- package/dist/unstable/cluster/SingletonAddress.js +1 -1
- package/dist/unstable/cluster/SingletonAddress.js.map +1 -1
- package/dist/unstable/cluster/Snowflake.d.ts +8 -8
- package/dist/unstable/cluster/Snowflake.js +8 -8
- package/dist/unstable/cluster/Snowflake.js.map +1 -1
- package/dist/unstable/cluster/SocketRunner.js.map +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.js +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
- package/dist/unstable/cluster/SqlRunnerStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/SqlRunnerStorage.js +20 -5
- package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/TestRunner.js.map +1 -1
- package/dist/unstable/cluster/index.js.map +1 -1
- package/dist/unstable/cluster/internal/entityManager.js +5 -5
- package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
- package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
- package/dist/unstable/cluster/internal/hash.js.map +1 -1
- package/dist/unstable/cluster/internal/interruptors.js.map +1 -1
- package/dist/unstable/cluster/internal/resourceMap.js.map +1 -1
- package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
- package/dist/unstable/cluster/internal/shardLock.js.map +1 -1
- package/dist/unstable/devtools/DevTools.js.map +1 -1
- package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
- package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
- package/dist/unstable/devtools/DevToolsServer.js.map +1 -1
- package/dist/unstable/devtools/index.js.map +1 -1
- package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
- package/dist/unstable/encoding/Msgpack.js +6 -8
- package/dist/unstable/encoding/Msgpack.js.map +1 -1
- package/dist/unstable/encoding/Ndjson.js.map +1 -1
- package/dist/unstable/encoding/Sse.d.ts +72 -8
- package/dist/unstable/encoding/Sse.d.ts.map +1 -1
- package/dist/unstable/encoding/Sse.js +58 -8
- package/dist/unstable/encoding/Sse.js.map +1 -1
- package/dist/unstable/encoding/index.js.map +1 -1
- package/dist/unstable/eventlog/Event.d.ts +20 -20
- package/dist/unstable/eventlog/Event.js.map +1 -1
- package/dist/unstable/eventlog/EventGroup.d.ts +4 -4
- package/dist/unstable/eventlog/EventGroup.js.map +1 -1
- package/dist/unstable/eventlog/EventJournal.d.ts +15 -15
- package/dist/unstable/eventlog/EventJournal.js +13 -13
- package/dist/unstable/eventlog/EventJournal.js.map +1 -1
- package/dist/unstable/eventlog/EventLog.d.ts +3 -3
- package/dist/unstable/eventlog/EventLog.js +3 -3
- package/dist/unstable/eventlog/EventLog.js.map +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.d.ts +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.js +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
- package/dist/unstable/eventlog/EventLogMessage.d.ts +2 -2
- package/dist/unstable/eventlog/EventLogMessage.js +1 -1
- package/dist/unstable/eventlog/EventLogMessage.js.map +1 -1
- package/dist/unstable/eventlog/EventLogRemote.d.ts +15 -15
- package/dist/unstable/eventlog/EventLogRemote.js +1 -1
- package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServer.d.ts +11 -2
- package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServer.js +45 -21
- package/dist/unstable/eventlog/EventLogServer.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +4 -4
- package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServerEncrypted.js +13 -5
- package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +5 -5
- package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServerUnencrypted.js +14 -6
- package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -1
- package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +1 -1
- package/dist/unstable/eventlog/EventLogSessionAuth.js +1 -1
- package/dist/unstable/eventlog/EventLogSessionAuth.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
- package/dist/unstable/eventlog/index.js.map +1 -1
- package/dist/unstable/eventlog/internal/identityRootSecretDerivation.js.map +1 -1
- package/dist/unstable/http/Cookies.d.ts +2 -2
- package/dist/unstable/http/Cookies.d.ts.map +1 -1
- package/dist/unstable/http/Cookies.js +30 -18
- package/dist/unstable/http/Cookies.js.map +1 -1
- package/dist/unstable/http/Etag.d.ts +1 -1
- package/dist/unstable/http/Etag.js +1 -1
- package/dist/unstable/http/Etag.js.map +1 -1
- package/dist/unstable/http/FetchHttpClient.d.ts.map +1 -1
- package/dist/unstable/http/FetchHttpClient.js.map +1 -1
- package/dist/unstable/http/Headers.d.ts +2 -2
- package/dist/unstable/http/Headers.js +2 -2
- package/dist/unstable/http/Headers.js.map +1 -1
- package/dist/unstable/http/HttpBody.d.ts +5 -3
- package/dist/unstable/http/HttpBody.d.ts.map +1 -1
- package/dist/unstable/http/HttpBody.js +11 -5
- package/dist/unstable/http/HttpBody.js.map +1 -1
- package/dist/unstable/http/HttpClient.d.ts +51 -44
- package/dist/unstable/http/HttpClient.d.ts.map +1 -1
- package/dist/unstable/http/HttpClient.js +46 -17
- package/dist/unstable/http/HttpClient.js.map +1 -1
- package/dist/unstable/http/HttpClientError.js.map +1 -1
- package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientRequest.js +2 -0
- package/dist/unstable/http/HttpClientRequest.js.map +1 -1
- package/dist/unstable/http/HttpClientResponse.d.ts +4 -4
- package/dist/unstable/http/HttpClientResponse.js +2 -2
- package/dist/unstable/http/HttpClientResponse.js.map +1 -1
- package/dist/unstable/http/HttpEffect.d.ts +6 -6
- package/dist/unstable/http/HttpEffect.js +3 -3
- package/dist/unstable/http/HttpEffect.js.map +1 -1
- package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
- package/dist/unstable/http/HttpMethod.d.ts +6 -9
- package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
- package/dist/unstable/http/HttpMethod.js +6 -9
- package/dist/unstable/http/HttpMethod.js.map +1 -1
- package/dist/unstable/http/HttpMiddleware.d.ts +75 -9
- package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/unstable/http/HttpMiddleware.js +164 -39
- package/dist/unstable/http/HttpMiddleware.js.map +1 -1
- package/dist/unstable/http/HttpPlatform.d.ts +76 -0
- package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
- package/dist/unstable/http/HttpPlatform.js +32 -0
- package/dist/unstable/http/HttpPlatform.js.map +1 -1
- package/dist/unstable/http/HttpRouter.d.ts +88 -89
- package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
- package/dist/unstable/http/HttpRouter.js +78 -79
- package/dist/unstable/http/HttpRouter.js.map +1 -1
- package/dist/unstable/http/HttpServer.d.ts +13 -13
- package/dist/unstable/http/HttpServer.js +6 -6
- package/dist/unstable/http/HttpServer.js.map +1 -1
- package/dist/unstable/http/HttpServerError.d.ts +2 -2
- package/dist/unstable/http/HttpServerError.js +2 -2
- package/dist/unstable/http/HttpServerError.js.map +1 -1
- package/dist/unstable/http/HttpServerRequest.d.ts +4 -4
- package/dist/unstable/http/HttpServerRequest.js +4 -4
- package/dist/unstable/http/HttpServerRequest.js.map +1 -1
- package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
- package/dist/unstable/http/HttpServerResponse.d.ts +22 -0
- package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerResponse.js +10 -0
- package/dist/unstable/http/HttpServerResponse.js.map +1 -1
- package/dist/unstable/http/HttpStaticServer.d.ts +35 -7
- package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -1
- package/dist/unstable/http/HttpStaticServer.js +35 -7
- package/dist/unstable/http/HttpStaticServer.js.map +1 -1
- package/dist/unstable/http/HttpTraceContext.js.map +1 -1
- package/dist/unstable/http/Multipart.d.ts +6 -6
- package/dist/unstable/http/Multipart.js +5 -5
- package/dist/unstable/http/Multipart.js.map +1 -1
- package/dist/unstable/http/Template.js.map +1 -1
- package/dist/unstable/http/Url.d.ts +33 -63
- package/dist/unstable/http/Url.d.ts.map +1 -1
- package/dist/unstable/http/Url.js +14 -28
- package/dist/unstable/http/Url.js.map +1 -1
- package/dist/unstable/http/UrlParams.d.ts +10 -18
- package/dist/unstable/http/UrlParams.d.ts.map +1 -1
- package/dist/unstable/http/UrlParams.js +9 -17
- package/dist/unstable/http/UrlParams.js.map +1 -1
- package/dist/unstable/http/index.js.map +1 -1
- package/dist/unstable/http/internal/compression.d.ts +2 -0
- package/dist/unstable/http/internal/compression.d.ts.map +1 -0
- package/dist/unstable/http/internal/compression.js +155 -0
- package/dist/unstable/http/internal/compression.js.map +1 -0
- package/dist/unstable/http/internal/preResponseHandler.js.map +1 -1
- package/dist/unstable/httpapi/HttpApi.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.js +10 -11
- package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.d.ts +4 -5
- package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.js +11 -13
- package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +42 -42
- package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.d.ts +13 -13
- package/dist/unstable/httpapi/HttpApiError.js +13 -13
- package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.d.ts +15 -15
- package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +71 -24
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.js +57 -10
- package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiScalar.d.ts +0 -12
- package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSchema.d.ts +6 -6
- package/dist/unstable/httpapi/HttpApiSchema.js +4 -4
- package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSwagger.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiTest.js.map +1 -1
- package/dist/unstable/httpapi/OpenApi.d.ts +13 -13
- package/dist/unstable/httpapi/OpenApi.js +13 -13
- package/dist/unstable/httpapi/OpenApi.js.map +1 -1
- package/dist/unstable/httpapi/index.js.map +1 -1
- package/dist/unstable/httpapi/internal/html.js.map +1 -1
- package/dist/unstable/httpapi/internal/httpApiScalar.js.map +1 -1
- package/dist/unstable/httpapi/internal/httpApiSwagger.js.map +1 -1
- package/dist/unstable/httpapi/internal/mediaType.js.map +1 -1
- package/dist/unstable/observability/Otlp.js.map +1 -1
- package/dist/unstable/observability/OtlpExporter.d.ts +12 -14
- package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpExporter.js +17 -4
- package/dist/unstable/observability/OtlpExporter.js.map +1 -1
- package/dist/unstable/observability/OtlpLogger.js.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.d.ts +4 -1
- package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
- package/dist/unstable/observability/OtlpResource.d.ts +16 -7
- package/dist/unstable/observability/OtlpResource.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpResource.js +21 -12
- package/dist/unstable/observability/OtlpResource.js.map +1 -1
- package/dist/unstable/observability/OtlpSerialization.js.map +1 -1
- package/dist/unstable/observability/OtlpTracer.js.map +1 -1
- package/dist/unstable/observability/PrometheusMetrics.d.ts +13 -4
- package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/PrometheusMetrics.js +10 -3
- package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
- package/dist/unstable/observability/index.js.map +1 -1
- package/dist/unstable/observability/internal/otlpEnv.js +1 -1
- package/dist/unstable/observability/internal/otlpEnv.js.map +1 -1
- package/dist/unstable/observability/internal/otlpProtobuf.js.map +1 -1
- package/dist/unstable/observability/internal/protobuf.js +3 -0
- package/dist/unstable/observability/internal/protobuf.js.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.d.ts +8 -3
- package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.js +22 -13
- package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
- package/dist/unstable/persistence/Persistable.d.ts +8 -8
- package/dist/unstable/persistence/Persistable.js.map +1 -1
- package/dist/unstable/persistence/PersistedCache.js.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.d.ts +6 -6
- package/dist/unstable/persistence/PersistedQueue.js +6 -6
- package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
- package/dist/unstable/persistence/Persistence.d.ts +3 -3
- package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
- package/dist/unstable/persistence/Persistence.js +91 -15
- package/dist/unstable/persistence/Persistence.js.map +1 -1
- package/dist/unstable/persistence/RateLimiter.d.ts +26 -15
- package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
- package/dist/unstable/persistence/RateLimiter.js +24 -13
- package/dist/unstable/persistence/RateLimiter.js.map +1 -1
- package/dist/unstable/persistence/Redis.d.ts +2 -2
- package/dist/unstable/persistence/Redis.js +1 -1
- package/dist/unstable/persistence/Redis.js.map +1 -1
- package/dist/unstable/persistence/index.js.map +1 -1
- package/dist/unstable/process/ChildProcess.d.ts +64 -21
- package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcess.js +14 -5
- package/dist/unstable/process/ChildProcess.js.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.d.ts +21 -10
- package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.js +1 -1
- package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
- package/dist/unstable/process/index.js.map +1 -1
- package/dist/unstable/reactivity/AsyncResult.d.ts +8 -8
- package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
- package/dist/unstable/reactivity/AsyncResult.js +10 -10
- package/dist/unstable/reactivity/AsyncResult.js.map +1 -1
- package/dist/unstable/reactivity/Atom.d.ts +25 -22
- package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
- package/dist/unstable/reactivity/Atom.js +14 -13
- package/dist/unstable/reactivity/Atom.js.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.d.ts +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.js +4 -1
- package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
- package/dist/unstable/reactivity/AtomRef.js.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.js +24 -3
- package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.d.ts +1 -1
- package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.js +4 -1
- package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
- package/dist/unstable/reactivity/Hydration.d.ts +1 -1
- package/dist/unstable/reactivity/Hydration.js +1 -1
- package/dist/unstable/reactivity/Hydration.js.map +1 -1
- package/dist/unstable/reactivity/Reactivity.js.map +1 -1
- package/dist/unstable/reactivity/index.js.map +1 -1
- package/dist/unstable/rpc/Rpc.d.ts +35 -33
- package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
- package/dist/unstable/rpc/Rpc.js +4 -2
- package/dist/unstable/rpc/Rpc.js.map +1 -1
- package/dist/unstable/rpc/RpcClient.d.ts +12 -12
- package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClient.js +12 -11
- package/dist/unstable/rpc/RpcClient.js.map +1 -1
- package/dist/unstable/rpc/RpcClientError.js.map +1 -1
- package/dist/unstable/rpc/RpcGroup.d.ts +8 -8
- package/dist/unstable/rpc/RpcGroup.js +1 -1
- package/dist/unstable/rpc/RpcGroup.js.map +1 -1
- package/dist/unstable/rpc/RpcMessage.d.ts +31 -30
- package/dist/unstable/rpc/RpcMessage.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcMessage.js +6 -6
- package/dist/unstable/rpc/RpcMessage.js.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.d.ts +10 -10
- package/dist/unstable/rpc/RpcMiddleware.js +1 -1
- package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
- package/dist/unstable/rpc/RpcSchema.d.ts +4 -4
- package/dist/unstable/rpc/RpcSchema.js +3 -3
- package/dist/unstable/rpc/RpcSchema.js.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.d.ts +58 -7
- package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.js +175 -96
- package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
- package/dist/unstable/rpc/RpcServer.d.ts +13 -13
- package/dist/unstable/rpc/RpcServer.js +17 -13
- package/dist/unstable/rpc/RpcServer.js.map +1 -1
- package/dist/unstable/rpc/RpcTest.js.map +1 -1
- package/dist/unstable/rpc/RpcWorker.d.ts +5 -5
- package/dist/unstable/rpc/RpcWorker.js +4 -4
- package/dist/unstable/rpc/RpcWorker.js.map +1 -1
- package/dist/unstable/rpc/Utils.js.map +1 -1
- package/dist/unstable/rpc/index.js.map +1 -1
- package/dist/unstable/schema/Model.d.ts +52 -50
- package/dist/unstable/schema/Model.d.ts.map +1 -1
- package/dist/unstable/schema/Model.js +35 -33
- package/dist/unstable/schema/Model.js.map +1 -1
- package/dist/unstable/schema/VariantSchema.d.ts +5 -5
- package/dist/unstable/schema/VariantSchema.js +2 -2
- package/dist/unstable/schema/VariantSchema.js.map +1 -1
- package/dist/unstable/schema/index.js.map +1 -1
- package/dist/unstable/socket/Socket.d.ts +11 -3
- package/dist/unstable/socket/Socket.d.ts.map +1 -1
- package/dist/unstable/socket/Socket.js +9 -4
- package/dist/unstable/socket/Socket.js.map +1 -1
- package/dist/unstable/socket/SocketServer.js.map +1 -1
- package/dist/unstable/socket/index.js.map +1 -1
- package/dist/unstable/sql/Migrator.js.map +1 -1
- package/dist/unstable/sql/SqlClient.d.ts +1 -1
- package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
- package/dist/unstable/sql/SqlClient.js +2 -2
- package/dist/unstable/sql/SqlClient.js.map +1 -1
- package/dist/unstable/sql/SqlConnection.js.map +1 -1
- package/dist/unstable/sql/SqlError.js.map +1 -1
- package/dist/unstable/sql/SqlModel.d.ts +2 -2
- package/dist/unstable/sql/SqlModel.js +2 -2
- package/dist/unstable/sql/SqlModel.js.map +1 -1
- package/dist/unstable/sql/SqlResolver.d.ts +5 -5
- package/dist/unstable/sql/SqlResolver.js +2 -2
- package/dist/unstable/sql/SqlResolver.js.map +1 -1
- package/dist/unstable/sql/SqlSchema.js.map +1 -1
- package/dist/unstable/sql/SqlStream.js.map +1 -1
- package/dist/unstable/sql/Statement.d.ts +6 -6
- package/dist/unstable/sql/Statement.js +15 -15
- package/dist/unstable/sql/Statement.js.map +1 -1
- package/dist/unstable/sql/index.js.map +1 -1
- package/dist/unstable/workers/Transferable.d.ts +1 -1
- package/dist/unstable/workers/Transferable.js +1 -1
- package/dist/unstable/workers/Transferable.js.map +1 -1
- package/dist/unstable/workers/Worker.d.ts +2 -2
- package/dist/unstable/workers/Worker.js +2 -2
- package/dist/unstable/workers/Worker.js.map +1 -1
- package/dist/unstable/workers/WorkerError.d.ts +7 -7
- package/dist/unstable/workers/WorkerError.js +6 -6
- package/dist/unstable/workers/WorkerError.js.map +1 -1
- package/dist/unstable/workers/WorkerRunner.d.ts +1 -1
- package/dist/unstable/workers/WorkerRunner.js +1 -1
- package/dist/unstable/workers/WorkerRunner.js.map +1 -1
- package/dist/unstable/workers/index.js.map +1 -1
- package/dist/unstable/workflow/Activity.d.ts +2 -2
- package/dist/unstable/workflow/Activity.js +2 -2
- package/dist/unstable/workflow/Activity.js.map +1 -1
- package/dist/unstable/workflow/DurableClock.d.ts +1 -1
- package/dist/unstable/workflow/DurableClock.js +1 -1
- package/dist/unstable/workflow/DurableClock.js.map +1 -1
- package/dist/unstable/workflow/DurableDeferred.d.ts +10 -10
- package/dist/unstable/workflow/DurableDeferred.js +5 -5
- package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
- package/dist/unstable/workflow/DurableQueue.d.ts +22 -20
- package/dist/unstable/workflow/DurableQueue.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableQueue.js +22 -20
- package/dist/unstable/workflow/DurableQueue.js.map +1 -1
- package/dist/unstable/workflow/Workflow.d.ts +21 -21
- package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
- package/dist/unstable/workflow/Workflow.js +13 -14
- package/dist/unstable/workflow/Workflow.js.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.d.ts +1 -1
- package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
- package/dist/unstable/workflow/WorkflowProxy.d.ts +4 -2
- package/dist/unstable/workflow/WorkflowProxy.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowProxy.js +4 -2
- package/dist/unstable/workflow/WorkflowProxy.js.map +1 -1
- package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
- package/dist/unstable/workflow/index.js.map +1 -1
- package/dist/unstable/workflow/internal/crypto.js.map +1 -1
- package/package.json +5 -6
- package/src/Array.ts +982 -1045
- package/src/BigDecimal.ts +433 -756
- package/src/BigInt.ts +213 -269
- package/src/Boolean.ts +146 -188
- package/src/Cache.ts +409 -255
- package/src/Cause.ts +167 -277
- package/src/Channel.ts +891 -816
- package/src/ChannelSchema.ts +1 -1
- package/src/Chunk.ts +841 -1181
- package/src/Clock.ts +181 -49
- package/src/Combiner.ts +20 -33
- package/src/Config.ts +615 -332
- package/src/ConfigProvider.ts +214 -120
- package/src/Console.ts +289 -39
- package/src/Context.ts +319 -378
- package/src/Cron.ts +68 -77
- package/src/Crypto.ts +13 -15
- package/src/Data.ts +60 -80
- package/src/DateTime.ts +564 -660
- package/src/Deferred.ts +253 -256
- package/src/Duration.ts +216 -308
- package/src/Effect.ts +2893 -3279
- package/src/Encoding.ts +22 -40
- package/src/Equal.ts +49 -39
- package/src/Equivalence.ts +103 -105
- package/src/ErrorReporter.ts +51 -27
- package/src/ExecutionPlan.ts +13 -55
- package/src/Exit.ts +116 -192
- package/src/Fiber.ts +81 -148
- package/src/FiberHandle.ts +152 -105
- package/src/FiberMap.ts +225 -174
- package/src/FiberSet.ts +124 -82
- package/src/FileSystem.ts +155 -263
- package/src/Filter.ts +61 -33
- package/src/Formatter.ts +54 -56
- package/src/Function.ts +76 -145
- package/src/Graph.ts +416 -770
- package/src/HKT.ts +12 -6
- package/src/Hash.ts +52 -83
- package/src/HashMap.ts +319 -411
- package/src/HashRing.ts +1 -0
- package/src/HashSet.ts +177 -284
- package/src/Inspectable.ts +12 -12
- package/src/Iterable.ts +620 -786
- package/src/JsonPatch.ts +58 -112
- package/src/JsonPointer.ts +8 -8
- package/src/JsonSchema.ts +402 -244
- package/src/Latch.ts +23 -35
- package/src/Layer.ts +359 -260
- package/src/LayerMap.ts +49 -29
- package/src/LayerRef.ts +6 -2
- package/src/LogLevel.ts +114 -214
- package/src/Logger.ts +344 -697
- package/src/ManagedRuntime.ts +7 -5
- package/src/Match.ts +217 -252
- package/src/Metric.ts +516 -1089
- package/src/MutableHashMap.ts +218 -255
- package/src/MutableHashSet.ts +84 -89
- package/src/MutableList.ts +73 -370
- package/src/MutableRef.ts +420 -243
- package/src/Newtype.ts +21 -14
- package/src/NonEmptyIterable.ts +7 -137
- package/src/Number.ts +196 -233
- package/src/Optic.ts +243 -383
- package/src/Option.ts +447 -812
- package/src/Order.ts +109 -109
- package/src/Ordering.ts +20 -23
- package/src/Path.ts +38 -41
- package/src/Pipeable.ts +6 -5
- package/src/PlatformError.ts +4 -4
- package/src/Pool.ts +4 -2
- package/src/Predicate.ts +200 -181
- package/src/PrimaryKey.ts +7 -7
- package/src/PubSub.ts +526 -552
- package/src/Pull.ts +24 -18
- package/src/Queue.ts +200 -159
- package/src/Random.ts +49 -74
- package/src/RcMap.ts +121 -63
- package/src/RcRef.ts +24 -13
- package/src/Record.ts +291 -488
- package/src/Redactable.ts +10 -3
- package/src/Redacted.ts +25 -25
- package/src/Reducer.ts +8 -15
- package/src/Ref.ts +221 -361
- package/src/References.ts +102 -168
- package/src/RegExp.ts +10 -14
- package/src/Request.ts +31 -21
- package/src/RequestResolver.ts +202 -91
- package/src/Result.ts +312 -484
- package/src/Runtime.ts +50 -75
- package/src/Schedule.ts +308 -1734
- package/src/Scheduler.ts +20 -7
- package/src/Schema.ts +716 -745
- package/src/SchemaAST.ts +466 -358
- package/src/SchemaError.ts +7 -6
- package/src/SchemaGetter.ts +242 -190
- package/src/SchemaIssue.ts +89 -275
- package/src/SchemaParser.ts +180 -93
- package/src/SchemaRepresentation.ts +22 -40
- package/src/SchemaTransformation.ts +129 -88
- package/src/Scope.ts +123 -151
- package/src/ScopedRef.ts +4 -4
- package/src/Semaphore.ts +152 -51
- package/src/Sink.ts +128 -113
- package/src/Stdio.ts +1 -1
- package/src/Stream.ts +2602 -3123
- package/src/String.ts +275 -312
- package/src/Struct.ts +109 -114
- package/src/SubscriptionRef.ts +284 -252
- package/src/Symbol.ts +3 -3
- package/src/Terminal.ts +2 -2
- package/src/Tracer.ts +102 -55
- package/src/Trie.ts +287 -679
- package/src/Tuple.ts +92 -127
- package/src/TxChunk.ts +201 -121
- package/src/TxDeferred.ts +62 -46
- package/src/TxHashMap.ts +645 -799
- package/src/TxHashSet.ts +443 -356
- package/src/TxPriorityQueue.ts +130 -98
- package/src/TxPubSub.ts +107 -80
- package/src/TxQueue.ts +214 -183
- package/src/TxReentrantLock.ts +97 -66
- package/src/TxRef.ts +51 -32
- package/src/TxSemaphore.ts +129 -95
- package/src/TxSubscriptionRef.ts +97 -70
- package/src/Types.ts +126 -67
- package/src/Unify.ts +45 -65
- package/src/Utils.ts +23 -16
- package/src/internal/core.ts +2 -2
- package/src/internal/dateTime.ts +6 -0
- package/src/internal/effect.ts +93 -48
- package/src/internal/persistence.ts +2 -0
- package/src/internal/references.ts +3 -2
- package/src/internal/schema/fromJsonSchemaDocument.ts +15 -13
- package/src/internal/schema/fromRepresentation.ts +10 -16
- package/src/internal/schema/parser.ts +22 -0
- package/src/internal/schema/toJsonSchemaDocument.ts +60 -6
- package/src/internal/schema/toRepresentation.ts +104 -119
- package/src/internal/trie.ts +10 -11
- package/src/testing/FastCheck.ts +8 -7
- package/src/testing/TestClock.ts +72 -30
- package/src/testing/TestConsole.ts +32 -31
- package/src/testing/TestSchema.ts +29 -29
- package/src/unstable/ai/AiError.ts +95 -118
- package/src/unstable/ai/AnthropicStructuredOutput.ts +1 -1
- package/src/unstable/ai/Chat.ts +132 -97
- package/src/unstable/ai/IdGenerator.ts +32 -28
- package/src/unstable/ai/LanguageModel.ts +107 -67
- package/src/unstable/ai/McpProtocol.ts +48 -0
- package/src/unstable/ai/McpSchema.ts +60 -50
- package/src/unstable/ai/McpServer.ts +930 -304
- package/src/unstable/ai/Model.ts +9 -20
- package/src/unstable/ai/OpenAiStructuredOutput.ts +1 -1
- package/src/unstable/ai/Prompt.ts +145 -43
- package/src/unstable/ai/Response.ts +28 -14
- package/src/unstable/ai/Telemetry.ts +46 -13
- package/src/unstable/ai/Tokenizer.ts +14 -3
- package/src/unstable/ai/Tool.ts +59 -44
- package/src/unstable/ai/Toolkit.ts +26 -8
- package/src/unstable/ai/index.ts +5 -0
- package/src/unstable/ai/internal/mcpProtocol.ts +85 -0
- package/src/unstable/ai/internal/mcpProtocolRegistry.ts +70 -0
- package/src/unstable/ai/internal/structured-output.ts +13 -18
- package/src/unstable/cli/Argument.ts +273 -69
- package/src/unstable/cli/CliError.ts +69 -76
- package/src/unstable/cli/CliOutput.ts +44 -58
- package/src/unstable/cli/Command.ts +705 -107
- package/src/unstable/cli/Flag.ts +418 -138
- package/src/unstable/cli/GlobalFlag.ts +1 -1
- package/src/unstable/cli/HelpDoc.ts +12 -4
- package/src/unstable/cli/Param.ts +292 -78
- package/src/unstable/cli/Primitive.ts +370 -149
- package/src/unstable/cli/Prompt.ts +28 -14
- package/src/unstable/cli/internal/lexer.ts +8 -2
- package/src/unstable/cli/internal/parser.ts +2 -2
- package/src/unstable/cluster/ClusterSchema.ts +8 -8
- package/src/unstable/cluster/ClusterWorkflowEngine.ts +5 -1
- package/src/unstable/cluster/Entity.ts +15 -16
- package/src/unstable/cluster/EntityProxy.ts +4 -2
- package/src/unstable/cluster/EntityResource.ts +2 -2
- package/src/unstable/cluster/Envelope.ts +3 -3
- package/src/unstable/cluster/HttpRunner.ts +6 -4
- package/src/unstable/cluster/Message.ts +9 -9
- package/src/unstable/cluster/MessageStorage.ts +15 -15
- package/src/unstable/cluster/Reply.ts +4 -6
- package/src/unstable/cluster/RunnerHealth.ts +1 -1
- package/src/unstable/cluster/RunnerServer.ts +41 -8
- package/src/unstable/cluster/RunnerStorage.ts +2 -2
- package/src/unstable/cluster/Runners.ts +23 -12
- package/src/unstable/cluster/Sharding.ts +7 -8
- package/src/unstable/cluster/ShardingConfig.ts +3 -3
- package/src/unstable/cluster/SingletonAddress.ts +1 -1
- package/src/unstable/cluster/Snowflake.ts +8 -8
- package/src/unstable/cluster/SqlMessageStorage.ts +1 -1
- package/src/unstable/cluster/SqlRunnerStorage.ts +21 -5
- package/src/unstable/cluster/internal/entityManager.ts +11 -15
- package/src/unstable/encoding/Msgpack.ts +6 -8
- package/src/unstable/encoding/Sse.ts +98 -16
- package/src/unstable/eventlog/Event.ts +20 -20
- package/src/unstable/eventlog/EventGroup.ts +4 -4
- package/src/unstable/eventlog/EventJournal.ts +15 -15
- package/src/unstable/eventlog/EventLog.ts +3 -3
- package/src/unstable/eventlog/EventLogEncryption.ts +1 -1
- package/src/unstable/eventlog/EventLogMessage.ts +2 -2
- package/src/unstable/eventlog/EventLogRemote.ts +1 -1
- package/src/unstable/eventlog/EventLogServer.ts +41 -7
- package/src/unstable/eventlog/EventLogServerEncrypted.ts +13 -5
- package/src/unstable/eventlog/EventLogServerUnencrypted.ts +14 -6
- package/src/unstable/eventlog/EventLogSessionAuth.ts +1 -1
- package/src/unstable/http/Cookies.ts +35 -21
- package/src/unstable/http/Etag.ts +1 -1
- package/src/unstable/http/FetchHttpClient.ts +3 -1
- package/src/unstable/http/Headers.ts +2 -2
- package/src/unstable/http/HttpBody.ts +20 -5
- package/src/unstable/http/HttpClient.ts +83 -55
- package/src/unstable/http/HttpClientRequest.ts +2 -0
- package/src/unstable/http/HttpClientResponse.ts +4 -4
- package/src/unstable/http/HttpEffect.ts +8 -8
- package/src/unstable/http/HttpMethod.ts +6 -9
- package/src/unstable/http/HttpMiddleware.ts +202 -39
- package/src/unstable/http/HttpPlatform.ts +95 -0
- package/src/unstable/http/HttpRouter.ts +102 -98
- package/src/unstable/http/HttpServer.ts +13 -13
- package/src/unstable/http/HttpServerError.ts +2 -2
- package/src/unstable/http/HttpServerRequest.ts +4 -4
- package/src/unstable/http/HttpServerResponse.ts +30 -0
- package/src/unstable/http/HttpStaticServer.ts +35 -7
- package/src/unstable/http/Multipart.ts +6 -6
- package/src/unstable/http/Url.ts +33 -63
- package/src/unstable/http/UrlParams.ts +10 -18
- package/src/unstable/http/internal/compression.ts +196 -0
- package/src/unstable/httpapi/HttpApiBuilder.ts +10 -9
- package/src/unstable/httpapi/HttpApiClient.ts +14 -14
- package/src/unstable/httpapi/HttpApiEndpoint.ts +42 -42
- package/src/unstable/httpapi/HttpApiError.ts +13 -13
- package/src/unstable/httpapi/HttpApiGroup.ts +15 -15
- package/src/unstable/httpapi/HttpApiMiddleware.ts +71 -24
- package/src/unstable/httpapi/HttpApiScalar.ts +0 -12
- package/src/unstable/httpapi/HttpApiSchema.ts +6 -6
- package/src/unstable/httpapi/OpenApi.ts +13 -13
- package/src/unstable/observability/OtlpExporter.ts +31 -19
- package/src/unstable/observability/OtlpMetrics.ts +4 -1
- package/src/unstable/observability/OtlpResource.ts +26 -17
- package/src/unstable/observability/PrometheusMetrics.ts +13 -4
- package/src/unstable/observability/internal/otlpEnv.ts +1 -1
- package/src/unstable/observability/internal/protobuf.ts +3 -0
- package/src/unstable/persistence/KeyValueStore.ts +72 -49
- package/src/unstable/persistence/Persistable.ts +8 -8
- package/src/unstable/persistence/PersistedQueue.ts +6 -6
- package/src/unstable/persistence/Persistence.ts +126 -19
- package/src/unstable/persistence/RateLimiter.ts +26 -15
- package/src/unstable/persistence/Redis.ts +2 -2
- package/src/unstable/process/ChildProcess.ts +64 -21
- package/src/unstable/process/ChildProcessSpawner.ts +21 -10
- package/src/unstable/reactivity/AsyncResult.ts +12 -13
- package/src/unstable/reactivity/Atom.ts +28 -25
- package/src/unstable/reactivity/AtomHttpApi.ts +5 -4
- package/src/unstable/reactivity/AtomRegistry.ts +24 -3
- package/src/unstable/reactivity/AtomRpc.ts +5 -4
- package/src/unstable/reactivity/Hydration.ts +1 -1
- package/src/unstable/rpc/Rpc.ts +35 -33
- package/src/unstable/rpc/RpcClient.ts +16 -15
- package/src/unstable/rpc/RpcGroup.ts +8 -8
- package/src/unstable/rpc/RpcMessage.ts +31 -30
- package/src/unstable/rpc/RpcMiddleware.ts +10 -10
- package/src/unstable/rpc/RpcSchema.ts +4 -4
- package/src/unstable/rpc/RpcSerialization.ts +167 -68
- package/src/unstable/rpc/RpcServer.ts +18 -15
- package/src/unstable/rpc/RpcWorker.ts +5 -5
- package/src/unstable/schema/Model.ts +52 -50
- package/src/unstable/schema/VariantSchema.ts +5 -5
- package/src/unstable/socket/Socket.ts +17 -4
- package/src/unstable/sql/SqlClient.ts +5 -6
- package/src/unstable/sql/SqlModel.ts +2 -2
- package/src/unstable/sql/SqlResolver.ts +5 -5
- package/src/unstable/sql/Statement.ts +24 -23
- package/src/unstable/workers/Transferable.ts +1 -1
- package/src/unstable/workers/Worker.ts +2 -2
- package/src/unstable/workers/WorkerError.ts +7 -7
- package/src/unstable/workers/WorkerRunner.ts +1 -1
- package/src/unstable/workflow/Activity.ts +2 -2
- package/src/unstable/workflow/DurableClock.ts +1 -1
- package/src/unstable/workflow/DurableDeferred.ts +10 -10
- package/src/unstable/workflow/DurableQueue.ts +22 -20
- package/src/unstable/workflow/Workflow.ts +23 -23
- package/src/unstable/workflow/WorkflowEngine.ts +1 -1
- package/src/unstable/workflow/WorkflowProxy.ts +4 -2
- package/dist/internal/version.d.ts +0 -3
- package/dist/internal/version.d.ts.map +0 -1
- package/dist/internal/version.js +0 -2
- package/dist/internal/version.js.map +0 -1
- package/src/internal/version.ts +0 -2
|
@@ -57,9 +57,27 @@ import * as Prompt from "./Prompt.ts"
|
|
|
57
57
|
*
|
|
58
58
|
* **Example** (Defining CLI commands)
|
|
59
59
|
*
|
|
60
|
-
* ```ts
|
|
61
|
-
* import {
|
|
60
|
+
* ```ts import.meta.vitest
|
|
61
|
+
* import { Effect, FileSystem, Layer, Path, Stdio, Terminal } from "effect"
|
|
62
62
|
* import { Argument, Command, Flag } from "effect/unstable/cli"
|
|
63
|
+
* import { ChildProcessSpawner } from "effect/unstable/process"
|
|
64
|
+
*
|
|
65
|
+
* const CliTestLayer = Layer.mergeAll(
|
|
66
|
+
* FileSystem.layerNoop({}),
|
|
67
|
+
* Path.layer,
|
|
68
|
+
* Stdio.layerTest({}),
|
|
69
|
+
* Layer.succeed(Terminal.Terminal, Terminal.make({
|
|
70
|
+
* columns: Effect.succeed(80),
|
|
71
|
+
* rows: Effect.succeed(24),
|
|
72
|
+
* readInput: Effect.die("unused"),
|
|
73
|
+
* readLine: Effect.die("unused"),
|
|
74
|
+
* display: () => Effect.void
|
|
75
|
+
* })),
|
|
76
|
+
* Layer.succeed(
|
|
77
|
+
* ChildProcessSpawner.ChildProcessSpawner,
|
|
78
|
+
* ChildProcessSpawner.make(() => Effect.die("unused"))
|
|
79
|
+
* )
|
|
80
|
+
* )
|
|
63
81
|
*
|
|
64
82
|
* // Simple command with no configuration
|
|
65
83
|
* const version: Command.Command<"version", {}, {}, never, never> = Command.make(
|
|
@@ -84,9 +102,15 @@ import * as Prompt from "./Prompt.ts"
|
|
|
84
102
|
* })
|
|
85
103
|
*
|
|
86
104
|
* // Command with handler
|
|
105
|
+
* const output: Array<string> = []
|
|
87
106
|
* const greet = Command.make("greet", {
|
|
88
107
|
* name: Flag.string("name")
|
|
89
|
-
* }, (config) =>
|
|
108
|
+
* }, (config) => Effect.sync(() => output.push(`Hello, ${config.name}!`)).pipe(Effect.asVoid))
|
|
109
|
+
*
|
|
110
|
+
* await Effect.runPromise(
|
|
111
|
+
* Command.runWith(greet, { version: "1.0.0" })(["--name", "Alice"]).pipe(Effect.provide(CliTestLayer))
|
|
112
|
+
* )
|
|
113
|
+
* output // => ["Hello, Alice!"]
|
|
90
114
|
* ```
|
|
91
115
|
*
|
|
92
116
|
* @category models
|
|
@@ -194,19 +218,19 @@ export declare namespace Command {
|
|
|
194
218
|
*
|
|
195
219
|
* **Example** (Configuring command input)
|
|
196
220
|
*
|
|
197
|
-
* ```ts
|
|
221
|
+
* ```ts import.meta.vitest
|
|
198
222
|
* import { Argument, Flag } from "effect/unstable/cli"
|
|
199
223
|
* import type { Command as CliCommand } from "effect/unstable/cli"
|
|
200
224
|
*
|
|
201
225
|
* // Simple flat configuration
|
|
202
|
-
* const simpleConfig
|
|
226
|
+
* const simpleConfig = {
|
|
203
227
|
* name: Flag.string("name"),
|
|
204
228
|
* age: Flag.integer("age"),
|
|
205
229
|
* file: Argument.string("file")
|
|
206
|
-
* }
|
|
230
|
+
* } satisfies CliCommand.Command.Config
|
|
207
231
|
*
|
|
208
232
|
* // Nested configuration for organization
|
|
209
|
-
* const nestedConfig
|
|
233
|
+
* const nestedConfig = {
|
|
210
234
|
* user: {
|
|
211
235
|
* name: Flag.string("name"),
|
|
212
236
|
* email: Flag.string("email")
|
|
@@ -215,7 +239,9 @@ export declare namespace Command {
|
|
|
215
239
|
* host: Flag.string("host"),
|
|
216
240
|
* port: Flag.integer("port")
|
|
217
241
|
* }
|
|
218
|
-
* }
|
|
242
|
+
* } satisfies CliCommand.Command.Config
|
|
243
|
+
*
|
|
244
|
+
* [simpleConfig.name.kind, nestedConfig.server.port.kind] // => ["flag", "flag"]
|
|
219
245
|
* ```
|
|
220
246
|
*
|
|
221
247
|
* @category models
|
|
@@ -261,7 +287,7 @@ export declare namespace Command {
|
|
|
261
287
|
*
|
|
262
288
|
* **Example** (Inferring command input)
|
|
263
289
|
*
|
|
264
|
-
* ```ts
|
|
290
|
+
* ```ts import.meta.vitest
|
|
265
291
|
* import { Flag } from "effect/unstable/cli"
|
|
266
292
|
* import type { Command as CliCommand } from "effect/unstable/cli"
|
|
267
293
|
*
|
|
@@ -281,6 +307,12 @@ export declare namespace Command {
|
|
|
281
307
|
* // readonly port: number
|
|
282
308
|
* // }
|
|
283
309
|
* // }
|
|
310
|
+
*
|
|
311
|
+
* const inferred: Result = {
|
|
312
|
+
* name: "Alice",
|
|
313
|
+
* server: { host: "localhost", port: 8080 }
|
|
314
|
+
* }
|
|
315
|
+
* inferred // => { name: "Alice", server: { host: "localhost", port: 8080 } }
|
|
284
316
|
* ```
|
|
285
317
|
*
|
|
286
318
|
* @category models
|
|
@@ -399,9 +431,27 @@ export type Services<C> = C extends Command<
|
|
|
399
431
|
*
|
|
400
432
|
* **Example** (Accessing parent command context)
|
|
401
433
|
*
|
|
402
|
-
* ```ts
|
|
403
|
-
* import {
|
|
434
|
+
* ```ts import.meta.vitest
|
|
435
|
+
* import { Effect, FileSystem, Layer, Path, Stdio, Terminal } from "effect"
|
|
404
436
|
* import { Command, Flag } from "effect/unstable/cli"
|
|
437
|
+
* import { ChildProcessSpawner } from "effect/unstable/process"
|
|
438
|
+
*
|
|
439
|
+
* const CliTestLayer = Layer.mergeAll(
|
|
440
|
+
* FileSystem.layerNoop({}),
|
|
441
|
+
* Path.layer,
|
|
442
|
+
* Stdio.layerTest({}),
|
|
443
|
+
* Layer.succeed(Terminal.Terminal, Terminal.make({
|
|
444
|
+
* columns: Effect.succeed(80),
|
|
445
|
+
* rows: Effect.succeed(24),
|
|
446
|
+
* readInput: Effect.die("unused"),
|
|
447
|
+
* readLine: Effect.die("unused"),
|
|
448
|
+
* display: () => Effect.void
|
|
449
|
+
* })),
|
|
450
|
+
* Layer.succeed(
|
|
451
|
+
* ChildProcessSpawner.ChildProcessSpawner,
|
|
452
|
+
* ChildProcessSpawner.make(() => Effect.die("unused"))
|
|
453
|
+
* )
|
|
454
|
+
* )
|
|
405
455
|
*
|
|
406
456
|
* const parent = Command.make("app").pipe(
|
|
407
457
|
* Command.withSharedFlags({
|
|
@@ -410,19 +460,31 @@ export type Services<C> = C extends Command<
|
|
|
410
460
|
* })
|
|
411
461
|
* )
|
|
412
462
|
*
|
|
463
|
+
* const output: Array<string> = []
|
|
413
464
|
* const child = Command.make("deploy", {
|
|
414
465
|
* target: Flag.string("target")
|
|
415
466
|
* }, (config) =>
|
|
416
467
|
* Effect.gen(function*() {
|
|
417
468
|
* // Access parent's config by yielding the parent command
|
|
418
469
|
* const parentConfig = yield* parent
|
|
419
|
-
* yield*
|
|
420
|
-
* yield*
|
|
421
|
-
* yield*
|
|
470
|
+
* yield* Effect.sync(() => output.push(`Verbose: ${parentConfig.verbose}`))
|
|
471
|
+
* yield* Effect.sync(() => output.push(`Config: ${parentConfig.config}`))
|
|
472
|
+
* yield* Effect.sync(() => output.push(`Target: ${config.target}`))
|
|
422
473
|
* }))
|
|
423
474
|
*
|
|
424
475
|
* const app = parent.pipe(Command.withSubcommands([child]))
|
|
425
|
-
*
|
|
476
|
+
*
|
|
477
|
+
* await Effect.runPromise(
|
|
478
|
+
* Command.runWith(app, { version: "1.0.0" })([
|
|
479
|
+
* "--verbose",
|
|
480
|
+
* "--config",
|
|
481
|
+
* "prod.json",
|
|
482
|
+
* "deploy",
|
|
483
|
+
* "--target",
|
|
484
|
+
* "staging"
|
|
485
|
+
* ]).pipe(Effect.provide(CliTestLayer))
|
|
486
|
+
* )
|
|
487
|
+
* output // => ["Verbose: true", "Config: prod.json", "Target: staging"]
|
|
426
488
|
* ```
|
|
427
489
|
*
|
|
428
490
|
* @category models
|
|
@@ -478,9 +540,27 @@ export const isCommand = (u: unknown): u is Command.Any => Predicate.hasProperty
|
|
|
478
540
|
*
|
|
479
541
|
* **Example** (Creating commands)
|
|
480
542
|
*
|
|
481
|
-
* ```ts
|
|
482
|
-
* import {
|
|
543
|
+
* ```ts import.meta.vitest
|
|
544
|
+
* import { Effect, FileSystem, Layer, Path, Stdio, Terminal } from "effect"
|
|
483
545
|
* import { Argument, Command, Flag } from "effect/unstable/cli"
|
|
546
|
+
* import { ChildProcessSpawner } from "effect/unstable/process"
|
|
547
|
+
*
|
|
548
|
+
* const CliTestLayer = Layer.mergeAll(
|
|
549
|
+
* FileSystem.layerNoop({}),
|
|
550
|
+
* Path.layer,
|
|
551
|
+
* Stdio.layerTest({}),
|
|
552
|
+
* Layer.succeed(Terminal.Terminal, Terminal.make({
|
|
553
|
+
* columns: Effect.succeed(80),
|
|
554
|
+
* rows: Effect.succeed(24),
|
|
555
|
+
* readInput: Effect.die("unused"),
|
|
556
|
+
* readLine: Effect.die("unused"),
|
|
557
|
+
* display: () => Effect.void
|
|
558
|
+
* })),
|
|
559
|
+
* Layer.succeed(
|
|
560
|
+
* ChildProcessSpawner.ChildProcessSpawner,
|
|
561
|
+
* ChildProcessSpawner.make(() => Effect.die("unused"))
|
|
562
|
+
* )
|
|
563
|
+
* )
|
|
484
564
|
*
|
|
485
565
|
* // Simple command with no configuration
|
|
486
566
|
* const version = Command.make("version")
|
|
@@ -505,19 +585,29 @@ export const isCommand = (u: unknown): u is Command.Any => Predicate.hasProperty
|
|
|
505
585
|
* })
|
|
506
586
|
*
|
|
507
587
|
* // Command with handler
|
|
588
|
+
* const output: Array<string> = []
|
|
508
589
|
* const deployWithHandler = Command.make("deploy", {
|
|
509
590
|
* environment: Flag.string("env"),
|
|
510
591
|
* force: Flag.boolean("force")
|
|
511
592
|
* }, (config) =>
|
|
512
593
|
* Effect.gen(function*() {
|
|
513
|
-
* yield*
|
|
594
|
+
* yield* Effect.sync(() => output.push(`Starting deployment to ${config.environment}`))
|
|
514
595
|
*
|
|
515
596
|
* if (!config.force && config.environment === "production") {
|
|
516
597
|
* return yield* Effect.fail("Production deployments require --force flag")
|
|
517
598
|
* }
|
|
518
599
|
*
|
|
519
|
-
* yield*
|
|
600
|
+
* yield* Effect.sync(() => output.push("Deployment completed successfully"))
|
|
520
601
|
* }))
|
|
602
|
+
*
|
|
603
|
+
* await Effect.runPromise(
|
|
604
|
+
* Command.runWith(deployWithHandler, { version: "1.0.0" })([
|
|
605
|
+
* "--env",
|
|
606
|
+
* "staging",
|
|
607
|
+
* "--force"
|
|
608
|
+
* ]).pipe(Effect.provide(CliTestLayer))
|
|
609
|
+
* )
|
|
610
|
+
* output // => ["Starting deployment to staging", "Deployment completed successfully"]
|
|
521
611
|
* ```
|
|
522
612
|
*
|
|
523
613
|
* @category constructors
|
|
@@ -540,9 +630,27 @@ export const make: {
|
|
|
540
630
|
*
|
|
541
631
|
* **Example** (Creating commands)
|
|
542
632
|
*
|
|
543
|
-
* ```ts
|
|
544
|
-
* import {
|
|
633
|
+
* ```ts import.meta.vitest
|
|
634
|
+
* import { Effect, FileSystem, Layer, Path, Stdio, Terminal } from "effect"
|
|
545
635
|
* import { Argument, Command, Flag } from "effect/unstable/cli"
|
|
636
|
+
* import { ChildProcessSpawner } from "effect/unstable/process"
|
|
637
|
+
*
|
|
638
|
+
* const CliTestLayer = Layer.mergeAll(
|
|
639
|
+
* FileSystem.layerNoop({}),
|
|
640
|
+
* Path.layer,
|
|
641
|
+
* Stdio.layerTest({}),
|
|
642
|
+
* Layer.succeed(Terminal.Terminal, Terminal.make({
|
|
643
|
+
* columns: Effect.succeed(80),
|
|
644
|
+
* rows: Effect.succeed(24),
|
|
645
|
+
* readInput: Effect.die("unused"),
|
|
646
|
+
* readLine: Effect.die("unused"),
|
|
647
|
+
* display: () => Effect.void
|
|
648
|
+
* })),
|
|
649
|
+
* Layer.succeed(
|
|
650
|
+
* ChildProcessSpawner.ChildProcessSpawner,
|
|
651
|
+
* ChildProcessSpawner.make(() => Effect.die("unused"))
|
|
652
|
+
* )
|
|
653
|
+
* )
|
|
546
654
|
*
|
|
547
655
|
* // Simple command with no configuration
|
|
548
656
|
* const version = Command.make("version")
|
|
@@ -567,19 +675,29 @@ export const make: {
|
|
|
567
675
|
* })
|
|
568
676
|
*
|
|
569
677
|
* // Command with handler
|
|
678
|
+
* const output: Array<string> = []
|
|
570
679
|
* const deployWithHandler = Command.make("deploy", {
|
|
571
680
|
* environment: Flag.string("env"),
|
|
572
681
|
* force: Flag.boolean("force")
|
|
573
682
|
* }, (config) =>
|
|
574
683
|
* Effect.gen(function*() {
|
|
575
|
-
* yield*
|
|
684
|
+
* yield* Effect.sync(() => output.push(`Starting deployment to ${config.environment}`))
|
|
576
685
|
*
|
|
577
686
|
* if (!config.force && config.environment === "production") {
|
|
578
687
|
* return yield* Effect.fail("Production deployments require --force flag")
|
|
579
688
|
* }
|
|
580
689
|
*
|
|
581
|
-
* yield*
|
|
690
|
+
* yield* Effect.sync(() => output.push("Deployment completed successfully"))
|
|
582
691
|
* }))
|
|
692
|
+
*
|
|
693
|
+
* await Effect.runPromise(
|
|
694
|
+
* Command.runWith(deployWithHandler, { version: "1.0.0" })([
|
|
695
|
+
* "--env",
|
|
696
|
+
* "staging",
|
|
697
|
+
* "--force"
|
|
698
|
+
* ]).pipe(Effect.provide(CliTestLayer))
|
|
699
|
+
* )
|
|
700
|
+
* output // => ["Starting deployment to staging", "Deployment completed successfully"]
|
|
583
701
|
* ```
|
|
584
702
|
*
|
|
585
703
|
* @category constructors
|
|
@@ -603,9 +721,27 @@ export const make: {
|
|
|
603
721
|
*
|
|
604
722
|
* **Example** (Creating commands)
|
|
605
723
|
*
|
|
606
|
-
* ```ts
|
|
607
|
-
* import {
|
|
724
|
+
* ```ts import.meta.vitest
|
|
725
|
+
* import { Effect, FileSystem, Layer, Path, Stdio, Terminal } from "effect"
|
|
608
726
|
* import { Argument, Command, Flag } from "effect/unstable/cli"
|
|
727
|
+
* import { ChildProcessSpawner } from "effect/unstable/process"
|
|
728
|
+
*
|
|
729
|
+
* const CliTestLayer = Layer.mergeAll(
|
|
730
|
+
* FileSystem.layerNoop({}),
|
|
731
|
+
* Path.layer,
|
|
732
|
+
* Stdio.layerTest({}),
|
|
733
|
+
* Layer.succeed(Terminal.Terminal, Terminal.make({
|
|
734
|
+
* columns: Effect.succeed(80),
|
|
735
|
+
* rows: Effect.succeed(24),
|
|
736
|
+
* readInput: Effect.die("unused"),
|
|
737
|
+
* readLine: Effect.die("unused"),
|
|
738
|
+
* display: () => Effect.void
|
|
739
|
+
* })),
|
|
740
|
+
* Layer.succeed(
|
|
741
|
+
* ChildProcessSpawner.ChildProcessSpawner,
|
|
742
|
+
* ChildProcessSpawner.make(() => Effect.die("unused"))
|
|
743
|
+
* )
|
|
744
|
+
* )
|
|
609
745
|
*
|
|
610
746
|
* // Simple command with no configuration
|
|
611
747
|
* const version = Command.make("version")
|
|
@@ -630,19 +766,29 @@ export const make: {
|
|
|
630
766
|
* })
|
|
631
767
|
*
|
|
632
768
|
* // Command with handler
|
|
769
|
+
* const output: Array<string> = []
|
|
633
770
|
* const deployWithHandler = Command.make("deploy", {
|
|
634
771
|
* environment: Flag.string("env"),
|
|
635
772
|
* force: Flag.boolean("force")
|
|
636
773
|
* }, (config) =>
|
|
637
774
|
* Effect.gen(function*() {
|
|
638
|
-
* yield*
|
|
775
|
+
* yield* Effect.sync(() => output.push(`Starting deployment to ${config.environment}`))
|
|
639
776
|
*
|
|
640
777
|
* if (!config.force && config.environment === "production") {
|
|
641
778
|
* return yield* Effect.fail("Production deployments require --force flag")
|
|
642
779
|
* }
|
|
643
780
|
*
|
|
644
|
-
* yield*
|
|
781
|
+
* yield* Effect.sync(() => output.push("Deployment completed successfully"))
|
|
645
782
|
* }))
|
|
783
|
+
*
|
|
784
|
+
* await Effect.runPromise(
|
|
785
|
+
* Command.runWith(deployWithHandler, { version: "1.0.0" })([
|
|
786
|
+
* "--env",
|
|
787
|
+
* "staging",
|
|
788
|
+
* "--force"
|
|
789
|
+
* ]).pipe(Effect.provide(CliTestLayer))
|
|
790
|
+
* )
|
|
791
|
+
* output // => ["Starting deployment to staging", "Deployment completed successfully"]
|
|
646
792
|
* ```
|
|
647
793
|
*
|
|
648
794
|
* @category constructors
|
|
@@ -666,9 +812,27 @@ export const make: {
|
|
|
666
812
|
*
|
|
667
813
|
* **Example** (Creating commands)
|
|
668
814
|
*
|
|
669
|
-
* ```ts
|
|
670
|
-
* import {
|
|
815
|
+
* ```ts import.meta.vitest
|
|
816
|
+
* import { Effect, FileSystem, Layer, Path, Stdio, Terminal } from "effect"
|
|
671
817
|
* import { Argument, Command, Flag } from "effect/unstable/cli"
|
|
818
|
+
* import { ChildProcessSpawner } from "effect/unstable/process"
|
|
819
|
+
*
|
|
820
|
+
* const CliTestLayer = Layer.mergeAll(
|
|
821
|
+
* FileSystem.layerNoop({}),
|
|
822
|
+
* Path.layer,
|
|
823
|
+
* Stdio.layerTest({}),
|
|
824
|
+
* Layer.succeed(Terminal.Terminal, Terminal.make({
|
|
825
|
+
* columns: Effect.succeed(80),
|
|
826
|
+
* rows: Effect.succeed(24),
|
|
827
|
+
* readInput: Effect.die("unused"),
|
|
828
|
+
* readLine: Effect.die("unused"),
|
|
829
|
+
* display: () => Effect.void
|
|
830
|
+
* })),
|
|
831
|
+
* Layer.succeed(
|
|
832
|
+
* ChildProcessSpawner.ChildProcessSpawner,
|
|
833
|
+
* ChildProcessSpawner.make(() => Effect.die("unused"))
|
|
834
|
+
* )
|
|
835
|
+
* )
|
|
672
836
|
*
|
|
673
837
|
* // Simple command with no configuration
|
|
674
838
|
* const version = Command.make("version")
|
|
@@ -693,19 +857,29 @@ export const make: {
|
|
|
693
857
|
* })
|
|
694
858
|
*
|
|
695
859
|
* // Command with handler
|
|
860
|
+
* const output: Array<string> = []
|
|
696
861
|
* const deployWithHandler = Command.make("deploy", {
|
|
697
862
|
* environment: Flag.string("env"),
|
|
698
863
|
* force: Flag.boolean("force")
|
|
699
864
|
* }, (config) =>
|
|
700
865
|
* Effect.gen(function*() {
|
|
701
|
-
* yield*
|
|
866
|
+
* yield* Effect.sync(() => output.push(`Starting deployment to ${config.environment}`))
|
|
702
867
|
*
|
|
703
868
|
* if (!config.force && config.environment === "production") {
|
|
704
869
|
* return yield* Effect.fail("Production deployments require --force flag")
|
|
705
870
|
* }
|
|
706
871
|
*
|
|
707
|
-
* yield*
|
|
872
|
+
* yield* Effect.sync(() => output.push("Deployment completed successfully"))
|
|
708
873
|
* }))
|
|
874
|
+
*
|
|
875
|
+
* await Effect.runPromise(
|
|
876
|
+
* Command.runWith(deployWithHandler, { version: "1.0.0" })([
|
|
877
|
+
* "--env",
|
|
878
|
+
* "staging",
|
|
879
|
+
* "--force"
|
|
880
|
+
* ]).pipe(Effect.provide(CliTestLayer))
|
|
881
|
+
* )
|
|
882
|
+
* output // => ["Starting deployment to staging", "Deployment completed successfully"]
|
|
709
883
|
* ```
|
|
710
884
|
*
|
|
711
885
|
* @category constructors
|
|
@@ -738,9 +912,27 @@ export const make: {
|
|
|
738
912
|
*
|
|
739
913
|
* **Example** (Adding command handlers)
|
|
740
914
|
*
|
|
741
|
-
* ```ts
|
|
742
|
-
* import {
|
|
915
|
+
* ```ts import.meta.vitest
|
|
916
|
+
* import { Effect, FileSystem, Layer, Path, Stdio, Terminal } from "effect"
|
|
743
917
|
* import { Command, Flag } from "effect/unstable/cli"
|
|
918
|
+
* import { ChildProcessSpawner } from "effect/unstable/process"
|
|
919
|
+
*
|
|
920
|
+
* const CliTestLayer = Layer.mergeAll(
|
|
921
|
+
* FileSystem.layerNoop({}),
|
|
922
|
+
* Path.layer,
|
|
923
|
+
* Stdio.layerTest({}),
|
|
924
|
+
* Layer.succeed(Terminal.Terminal, Terminal.make({
|
|
925
|
+
* columns: Effect.succeed(80),
|
|
926
|
+
* rows: Effect.succeed(24),
|
|
927
|
+
* readInput: Effect.die("unused"),
|
|
928
|
+
* readLine: Effect.die("unused"),
|
|
929
|
+
* display: () => Effect.void
|
|
930
|
+
* })),
|
|
931
|
+
* Layer.succeed(
|
|
932
|
+
* ChildProcessSpawner.ChildProcessSpawner,
|
|
933
|
+
* ChildProcessSpawner.make(() => Effect.die("unused"))
|
|
934
|
+
* )
|
|
935
|
+
* )
|
|
744
936
|
*
|
|
745
937
|
* // Command without initial handler
|
|
746
938
|
* const greet = Command.make("greet", {
|
|
@@ -748,11 +940,19 @@ export const make: {
|
|
|
748
940
|
* })
|
|
749
941
|
*
|
|
750
942
|
* // Add handler later
|
|
943
|
+
* const output: Array<string> = []
|
|
751
944
|
* const greetWithHandler = greet.pipe(
|
|
752
945
|
* Command.withHandler((config: { readonly name: string }) =>
|
|
753
|
-
*
|
|
946
|
+
* Effect.sync(() => output.push(`Hello, ${config.name}!`)).pipe(Effect.asVoid)
|
|
754
947
|
* )
|
|
755
948
|
* )
|
|
949
|
+
*
|
|
950
|
+
* await Effect.runPromise(
|
|
951
|
+
* Command.runWith(greetWithHandler, { version: "1.0.0" })(["--name", "Alice"]).pipe(
|
|
952
|
+
* Effect.provide(CliTestLayer)
|
|
953
|
+
* )
|
|
954
|
+
* )
|
|
955
|
+
* output // => ["Hello, Alice!"]
|
|
756
956
|
* ```
|
|
757
957
|
*
|
|
758
958
|
* @category combinators
|
|
@@ -768,9 +968,27 @@ export const withHandler: {
|
|
|
768
968
|
*
|
|
769
969
|
* **Example** (Adding command handlers)
|
|
770
970
|
*
|
|
771
|
-
* ```ts
|
|
772
|
-
* import {
|
|
971
|
+
* ```ts import.meta.vitest
|
|
972
|
+
* import { Effect, FileSystem, Layer, Path, Stdio, Terminal } from "effect"
|
|
773
973
|
* import { Command, Flag } from "effect/unstable/cli"
|
|
974
|
+
* import { ChildProcessSpawner } from "effect/unstable/process"
|
|
975
|
+
*
|
|
976
|
+
* const CliTestLayer = Layer.mergeAll(
|
|
977
|
+
* FileSystem.layerNoop({}),
|
|
978
|
+
* Path.layer,
|
|
979
|
+
* Stdio.layerTest({}),
|
|
980
|
+
* Layer.succeed(Terminal.Terminal, Terminal.make({
|
|
981
|
+
* columns: Effect.succeed(80),
|
|
982
|
+
* rows: Effect.succeed(24),
|
|
983
|
+
* readInput: Effect.die("unused"),
|
|
984
|
+
* readLine: Effect.die("unused"),
|
|
985
|
+
* display: () => Effect.void
|
|
986
|
+
* })),
|
|
987
|
+
* Layer.succeed(
|
|
988
|
+
* ChildProcessSpawner.ChildProcessSpawner,
|
|
989
|
+
* ChildProcessSpawner.make(() => Effect.die("unused"))
|
|
990
|
+
* )
|
|
991
|
+
* )
|
|
774
992
|
*
|
|
775
993
|
* // Command without initial handler
|
|
776
994
|
* const greet = Command.make("greet", {
|
|
@@ -778,11 +996,19 @@ export const withHandler: {
|
|
|
778
996
|
* })
|
|
779
997
|
*
|
|
780
998
|
* // Add handler later
|
|
999
|
+
* const output: Array<string> = []
|
|
781
1000
|
* const greetWithHandler = greet.pipe(
|
|
782
1001
|
* Command.withHandler((config: { readonly name: string }) =>
|
|
783
|
-
*
|
|
1002
|
+
* Effect.sync(() => output.push(`Hello, ${config.name}!`)).pipe(Effect.asVoid)
|
|
784
1003
|
* )
|
|
785
1004
|
* )
|
|
1005
|
+
*
|
|
1006
|
+
* await Effect.runPromise(
|
|
1007
|
+
* Command.runWith(greetWithHandler, { version: "1.0.0" })(["--name", "Alice"]).pipe(
|
|
1008
|
+
* Effect.provide(CliTestLayer)
|
|
1009
|
+
* )
|
|
1010
|
+
* )
|
|
1011
|
+
* output // => ["Hello, Alice!"]
|
|
786
1012
|
* ```
|
|
787
1013
|
*
|
|
788
1014
|
* @category combinators
|
|
@@ -800,9 +1026,27 @@ export const withHandler: {
|
|
|
800
1026
|
*
|
|
801
1027
|
* **Example** (Adding command handlers)
|
|
802
1028
|
*
|
|
803
|
-
* ```ts
|
|
804
|
-
* import {
|
|
1029
|
+
* ```ts import.meta.vitest
|
|
1030
|
+
* import { Effect, FileSystem, Layer, Path, Stdio, Terminal } from "effect"
|
|
805
1031
|
* import { Command, Flag } from "effect/unstable/cli"
|
|
1032
|
+
* import { ChildProcessSpawner } from "effect/unstable/process"
|
|
1033
|
+
*
|
|
1034
|
+
* const CliTestLayer = Layer.mergeAll(
|
|
1035
|
+
* FileSystem.layerNoop({}),
|
|
1036
|
+
* Path.layer,
|
|
1037
|
+
* Stdio.layerTest({}),
|
|
1038
|
+
* Layer.succeed(Terminal.Terminal, Terminal.make({
|
|
1039
|
+
* columns: Effect.succeed(80),
|
|
1040
|
+
* rows: Effect.succeed(24),
|
|
1041
|
+
* readInput: Effect.die("unused"),
|
|
1042
|
+
* readLine: Effect.die("unused"),
|
|
1043
|
+
* display: () => Effect.void
|
|
1044
|
+
* })),
|
|
1045
|
+
* Layer.succeed(
|
|
1046
|
+
* ChildProcessSpawner.ChildProcessSpawner,
|
|
1047
|
+
* ChildProcessSpawner.make(() => Effect.die("unused"))
|
|
1048
|
+
* )
|
|
1049
|
+
* )
|
|
806
1050
|
*
|
|
807
1051
|
* // Command without initial handler
|
|
808
1052
|
* const greet = Command.make("greet", {
|
|
@@ -810,11 +1054,19 @@ export const withHandler: {
|
|
|
810
1054
|
* })
|
|
811
1055
|
*
|
|
812
1056
|
* // Add handler later
|
|
1057
|
+
* const output: Array<string> = []
|
|
813
1058
|
* const greetWithHandler = greet.pipe(
|
|
814
1059
|
* Command.withHandler((config: { readonly name: string }) =>
|
|
815
|
-
*
|
|
1060
|
+
* Effect.sync(() => output.push(`Hello, ${config.name}!`)).pipe(Effect.asVoid)
|
|
816
1061
|
* )
|
|
817
1062
|
* )
|
|
1063
|
+
*
|
|
1064
|
+
* await Effect.runPromise(
|
|
1065
|
+
* Command.runWith(greetWithHandler, { version: "1.0.0" })(["--name", "Alice"]).pipe(
|
|
1066
|
+
* Effect.provide(CliTestLayer)
|
|
1067
|
+
* )
|
|
1068
|
+
* )
|
|
1069
|
+
* output // => ["Hello, Alice!"]
|
|
818
1070
|
* ```
|
|
819
1071
|
*
|
|
820
1072
|
* @category combinators
|
|
@@ -892,9 +1144,27 @@ const normalizeSubcommandEntries = (
|
|
|
892
1144
|
*
|
|
893
1145
|
* **Example** (Adding subcommands)
|
|
894
1146
|
*
|
|
895
|
-
* ```ts
|
|
896
|
-
* import {
|
|
1147
|
+
* ```ts import.meta.vitest
|
|
1148
|
+
* import { Effect, FileSystem, Layer, Path, Stdio, Terminal } from "effect"
|
|
897
1149
|
* import { Command, Flag } from "effect/unstable/cli"
|
|
1150
|
+
* import { ChildProcessSpawner } from "effect/unstable/process"
|
|
1151
|
+
*
|
|
1152
|
+
* const CliTestLayer = Layer.mergeAll(
|
|
1153
|
+
* FileSystem.layerNoop({}),
|
|
1154
|
+
* Path.layer,
|
|
1155
|
+
* Stdio.layerTest({}),
|
|
1156
|
+
* Layer.succeed(Terminal.Terminal, Terminal.make({
|
|
1157
|
+
* columns: Effect.succeed(80),
|
|
1158
|
+
* rows: Effect.succeed(24),
|
|
1159
|
+
* readInput: Effect.die("unused"),
|
|
1160
|
+
* readLine: Effect.die("unused"),
|
|
1161
|
+
* display: () => Effect.void
|
|
1162
|
+
* })),
|
|
1163
|
+
* Layer.succeed(
|
|
1164
|
+
* ChildProcessSpawner.ChildProcessSpawner,
|
|
1165
|
+
* ChildProcessSpawner.make(() => Effect.die("unused"))
|
|
1166
|
+
* )
|
|
1167
|
+
* )
|
|
898
1168
|
*
|
|
899
1169
|
* // Parent command with shared flags
|
|
900
1170
|
* const git = Command.make("git").pipe(
|
|
@@ -904,19 +1174,29 @@ const normalizeSubcommandEntries = (
|
|
|
904
1174
|
* )
|
|
905
1175
|
*
|
|
906
1176
|
* // Subcommand that accesses parent config
|
|
1177
|
+
* const output: Array<string> = []
|
|
907
1178
|
* const clone = Command.make("clone", {
|
|
908
1179
|
* repository: Flag.string("repo")
|
|
909
1180
|
* }, (config) =>
|
|
910
1181
|
* Effect.gen(function*() {
|
|
911
1182
|
* const parent = yield* git // Access parent's parsed config
|
|
912
1183
|
* if (parent.verbose) {
|
|
913
|
-
* yield*
|
|
1184
|
+
* yield* Effect.sync(() => output.push("Verbose mode enabled"))
|
|
914
1185
|
* }
|
|
915
|
-
* yield*
|
|
1186
|
+
* yield* Effect.sync(() => output.push(`Cloning ${config.repository}`))
|
|
916
1187
|
* }))
|
|
917
1188
|
*
|
|
918
1189
|
* const app = git.pipe(Command.withSubcommands([clone]))
|
|
919
|
-
*
|
|
1190
|
+
*
|
|
1191
|
+
* await Effect.runPromise(
|
|
1192
|
+
* Command.runWith(app, { version: "1.0.0" })([
|
|
1193
|
+
* "--verbose",
|
|
1194
|
+
* "clone",
|
|
1195
|
+
* "--repo",
|
|
1196
|
+
* "github.com/foo/bar"
|
|
1197
|
+
* ]).pipe(Effect.provide(CliTestLayer))
|
|
1198
|
+
* )
|
|
1199
|
+
* output // => ["Verbose mode enabled", "Cloning github.com/foo/bar"]
|
|
920
1200
|
* ```
|
|
921
1201
|
*
|
|
922
1202
|
* @category combinators
|
|
@@ -934,9 +1214,27 @@ export const withSubcommands: {
|
|
|
934
1214
|
*
|
|
935
1215
|
* **Example** (Adding subcommands)
|
|
936
1216
|
*
|
|
937
|
-
* ```ts
|
|
938
|
-
* import {
|
|
1217
|
+
* ```ts import.meta.vitest
|
|
1218
|
+
* import { Effect, FileSystem, Layer, Path, Stdio, Terminal } from "effect"
|
|
939
1219
|
* import { Command, Flag } from "effect/unstable/cli"
|
|
1220
|
+
* import { ChildProcessSpawner } from "effect/unstable/process"
|
|
1221
|
+
*
|
|
1222
|
+
* const CliTestLayer = Layer.mergeAll(
|
|
1223
|
+
* FileSystem.layerNoop({}),
|
|
1224
|
+
* Path.layer,
|
|
1225
|
+
* Stdio.layerTest({}),
|
|
1226
|
+
* Layer.succeed(Terminal.Terminal, Terminal.make({
|
|
1227
|
+
* columns: Effect.succeed(80),
|
|
1228
|
+
* rows: Effect.succeed(24),
|
|
1229
|
+
* readInput: Effect.die("unused"),
|
|
1230
|
+
* readLine: Effect.die("unused"),
|
|
1231
|
+
* display: () => Effect.void
|
|
1232
|
+
* })),
|
|
1233
|
+
* Layer.succeed(
|
|
1234
|
+
* ChildProcessSpawner.ChildProcessSpawner,
|
|
1235
|
+
* ChildProcessSpawner.make(() => Effect.die("unused"))
|
|
1236
|
+
* )
|
|
1237
|
+
* )
|
|
940
1238
|
*
|
|
941
1239
|
* // Parent command with shared flags
|
|
942
1240
|
* const git = Command.make("git").pipe(
|
|
@@ -946,19 +1244,29 @@ export const withSubcommands: {
|
|
|
946
1244
|
* )
|
|
947
1245
|
*
|
|
948
1246
|
* // Subcommand that accesses parent config
|
|
1247
|
+
* const output: Array<string> = []
|
|
949
1248
|
* const clone = Command.make("clone", {
|
|
950
1249
|
* repository: Flag.string("repo")
|
|
951
1250
|
* }, (config) =>
|
|
952
1251
|
* Effect.gen(function*() {
|
|
953
1252
|
* const parent = yield* git // Access parent's parsed config
|
|
954
1253
|
* if (parent.verbose) {
|
|
955
|
-
* yield*
|
|
1254
|
+
* yield* Effect.sync(() => output.push("Verbose mode enabled"))
|
|
956
1255
|
* }
|
|
957
|
-
* yield*
|
|
1256
|
+
* yield* Effect.sync(() => output.push(`Cloning ${config.repository}`))
|
|
958
1257
|
* }))
|
|
959
1258
|
*
|
|
960
1259
|
* const app = git.pipe(Command.withSubcommands([clone]))
|
|
961
|
-
*
|
|
1260
|
+
*
|
|
1261
|
+
* await Effect.runPromise(
|
|
1262
|
+
* Command.runWith(app, { version: "1.0.0" })([
|
|
1263
|
+
* "--verbose",
|
|
1264
|
+
* "clone",
|
|
1265
|
+
* "--repo",
|
|
1266
|
+
* "github.com/foo/bar"
|
|
1267
|
+
* ]).pipe(Effect.provide(CliTestLayer))
|
|
1268
|
+
* )
|
|
1269
|
+
* output // => ["Verbose mode enabled", "Cloning github.com/foo/bar"]
|
|
962
1270
|
* ```
|
|
963
1271
|
*
|
|
964
1272
|
* @category combinators
|
|
@@ -984,9 +1292,27 @@ export const withSubcommands: {
|
|
|
984
1292
|
*
|
|
985
1293
|
* **Example** (Adding subcommands)
|
|
986
1294
|
*
|
|
987
|
-
* ```ts
|
|
988
|
-
* import {
|
|
1295
|
+
* ```ts import.meta.vitest
|
|
1296
|
+
* import { Effect, FileSystem, Layer, Path, Stdio, Terminal } from "effect"
|
|
989
1297
|
* import { Command, Flag } from "effect/unstable/cli"
|
|
1298
|
+
* import { ChildProcessSpawner } from "effect/unstable/process"
|
|
1299
|
+
*
|
|
1300
|
+
* const CliTestLayer = Layer.mergeAll(
|
|
1301
|
+
* FileSystem.layerNoop({}),
|
|
1302
|
+
* Path.layer,
|
|
1303
|
+
* Stdio.layerTest({}),
|
|
1304
|
+
* Layer.succeed(Terminal.Terminal, Terminal.make({
|
|
1305
|
+
* columns: Effect.succeed(80),
|
|
1306
|
+
* rows: Effect.succeed(24),
|
|
1307
|
+
* readInput: Effect.die("unused"),
|
|
1308
|
+
* readLine: Effect.die("unused"),
|
|
1309
|
+
* display: () => Effect.void
|
|
1310
|
+
* })),
|
|
1311
|
+
* Layer.succeed(
|
|
1312
|
+
* ChildProcessSpawner.ChildProcessSpawner,
|
|
1313
|
+
* ChildProcessSpawner.make(() => Effect.die("unused"))
|
|
1314
|
+
* )
|
|
1315
|
+
* )
|
|
990
1316
|
*
|
|
991
1317
|
* // Parent command with shared flags
|
|
992
1318
|
* const git = Command.make("git").pipe(
|
|
@@ -996,19 +1322,29 @@ export const withSubcommands: {
|
|
|
996
1322
|
* )
|
|
997
1323
|
*
|
|
998
1324
|
* // Subcommand that accesses parent config
|
|
1325
|
+
* const output: Array<string> = []
|
|
999
1326
|
* const clone = Command.make("clone", {
|
|
1000
1327
|
* repository: Flag.string("repo")
|
|
1001
1328
|
* }, (config) =>
|
|
1002
1329
|
* Effect.gen(function*() {
|
|
1003
1330
|
* const parent = yield* git // Access parent's parsed config
|
|
1004
1331
|
* if (parent.verbose) {
|
|
1005
|
-
* yield*
|
|
1332
|
+
* yield* Effect.sync(() => output.push("Verbose mode enabled"))
|
|
1006
1333
|
* }
|
|
1007
|
-
* yield*
|
|
1334
|
+
* yield* Effect.sync(() => output.push(`Cloning ${config.repository}`))
|
|
1008
1335
|
* }))
|
|
1009
1336
|
*
|
|
1010
1337
|
* const app = git.pipe(Command.withSubcommands([clone]))
|
|
1011
|
-
*
|
|
1338
|
+
*
|
|
1339
|
+
* await Effect.runPromise(
|
|
1340
|
+
* Command.runWith(app, { version: "1.0.0" })([
|
|
1341
|
+
* "--verbose",
|
|
1342
|
+
* "clone",
|
|
1343
|
+
* "--repo",
|
|
1344
|
+
* "github.com/foo/bar"
|
|
1345
|
+
* ]).pipe(Effect.provide(CliTestLayer))
|
|
1346
|
+
* )
|
|
1347
|
+
* output // => ["Verbose mode enabled", "Cloning github.com/foo/bar"]
|
|
1012
1348
|
* ```
|
|
1013
1349
|
*
|
|
1014
1350
|
* @category combinators
|
|
@@ -1307,18 +1643,42 @@ type ExtractSubcommandContext<T extends ReadonlyArray<Command.SubcommandEntry>>
|
|
|
1307
1643
|
*
|
|
1308
1644
|
* **Example** (Setting descriptions)
|
|
1309
1645
|
*
|
|
1310
|
-
* ```ts
|
|
1311
|
-
* import {
|
|
1646
|
+
* ```ts import.meta.vitest
|
|
1647
|
+
* import { Effect, FileSystem, Layer, Path, Stdio, Terminal } from "effect"
|
|
1312
1648
|
* import { Command, Flag } from "effect/unstable/cli"
|
|
1649
|
+
* import { ChildProcessSpawner } from "effect/unstable/process"
|
|
1650
|
+
*
|
|
1651
|
+
* const CliTestLayer = Layer.mergeAll(
|
|
1652
|
+
* FileSystem.layerNoop({}),
|
|
1653
|
+
* Path.layer,
|
|
1654
|
+
* Stdio.layerTest({}),
|
|
1655
|
+
* Layer.succeed(Terminal.Terminal, Terminal.make({
|
|
1656
|
+
* columns: Effect.succeed(80),
|
|
1657
|
+
* rows: Effect.succeed(24),
|
|
1658
|
+
* readInput: Effect.die("unused"),
|
|
1659
|
+
* readLine: Effect.die("unused"),
|
|
1660
|
+
* display: () => Effect.void
|
|
1661
|
+
* })),
|
|
1662
|
+
* Layer.succeed(
|
|
1663
|
+
* ChildProcessSpawner.ChildProcessSpawner,
|
|
1664
|
+
* ChildProcessSpawner.make(() => Effect.die("unused"))
|
|
1665
|
+
* )
|
|
1666
|
+
* )
|
|
1313
1667
|
*
|
|
1668
|
+
* const output: Array<string> = []
|
|
1314
1669
|
* const deploy = Command.make("deploy", {
|
|
1315
1670
|
* environment: Flag.string("env")
|
|
1316
1671
|
* }, (config) =>
|
|
1317
1672
|
* Effect.gen(function*() {
|
|
1318
|
-
* yield*
|
|
1673
|
+
* yield* Effect.sync(() => output.push(`Deploying to ${config.environment}`))
|
|
1319
1674
|
* })).pipe(
|
|
1320
1675
|
* Command.withDescription("Deploy the application to a specified environment")
|
|
1321
1676
|
* )
|
|
1677
|
+
*
|
|
1678
|
+
* await Effect.runPromise(
|
|
1679
|
+
* Command.runWith(deploy, { version: "1.0.0" })(["--env", "staging"]).pipe(Effect.provide(CliTestLayer))
|
|
1680
|
+
* )
|
|
1681
|
+
* output // => ["Deploying to staging"]
|
|
1322
1682
|
* ```
|
|
1323
1683
|
*
|
|
1324
1684
|
* @category combinators
|
|
@@ -1335,18 +1695,42 @@ export const withDescription: {
|
|
|
1335
1695
|
*
|
|
1336
1696
|
* **Example** (Setting descriptions)
|
|
1337
1697
|
*
|
|
1338
|
-
* ```ts
|
|
1339
|
-
* import {
|
|
1698
|
+
* ```ts import.meta.vitest
|
|
1699
|
+
* import { Effect, FileSystem, Layer, Path, Stdio, Terminal } from "effect"
|
|
1340
1700
|
* import { Command, Flag } from "effect/unstable/cli"
|
|
1701
|
+
* import { ChildProcessSpawner } from "effect/unstable/process"
|
|
1702
|
+
*
|
|
1703
|
+
* const CliTestLayer = Layer.mergeAll(
|
|
1704
|
+
* FileSystem.layerNoop({}),
|
|
1705
|
+
* Path.layer,
|
|
1706
|
+
* Stdio.layerTest({}),
|
|
1707
|
+
* Layer.succeed(Terminal.Terminal, Terminal.make({
|
|
1708
|
+
* columns: Effect.succeed(80),
|
|
1709
|
+
* rows: Effect.succeed(24),
|
|
1710
|
+
* readInput: Effect.die("unused"),
|
|
1711
|
+
* readLine: Effect.die("unused"),
|
|
1712
|
+
* display: () => Effect.void
|
|
1713
|
+
* })),
|
|
1714
|
+
* Layer.succeed(
|
|
1715
|
+
* ChildProcessSpawner.ChildProcessSpawner,
|
|
1716
|
+
* ChildProcessSpawner.make(() => Effect.die("unused"))
|
|
1717
|
+
* )
|
|
1718
|
+
* )
|
|
1341
1719
|
*
|
|
1720
|
+
* const output: Array<string> = []
|
|
1342
1721
|
* const deploy = Command.make("deploy", {
|
|
1343
1722
|
* environment: Flag.string("env")
|
|
1344
1723
|
* }, (config) =>
|
|
1345
1724
|
* Effect.gen(function*() {
|
|
1346
|
-
* yield*
|
|
1725
|
+
* yield* Effect.sync(() => output.push(`Deploying to ${config.environment}`))
|
|
1347
1726
|
* })).pipe(
|
|
1348
1727
|
* Command.withDescription("Deploy the application to a specified environment")
|
|
1349
1728
|
* )
|
|
1729
|
+
*
|
|
1730
|
+
* await Effect.runPromise(
|
|
1731
|
+
* Command.runWith(deploy, { version: "1.0.0" })(["--env", "staging"]).pipe(Effect.provide(CliTestLayer))
|
|
1732
|
+
* )
|
|
1733
|
+
* output // => ["Deploying to staging"]
|
|
1350
1734
|
* ```
|
|
1351
1735
|
*
|
|
1352
1736
|
* @category combinators
|
|
@@ -1365,18 +1749,42 @@ export const withDescription: {
|
|
|
1365
1749
|
*
|
|
1366
1750
|
* **Example** (Setting descriptions)
|
|
1367
1751
|
*
|
|
1368
|
-
* ```ts
|
|
1369
|
-
* import {
|
|
1752
|
+
* ```ts import.meta.vitest
|
|
1753
|
+
* import { Effect, FileSystem, Layer, Path, Stdio, Terminal } from "effect"
|
|
1370
1754
|
* import { Command, Flag } from "effect/unstable/cli"
|
|
1755
|
+
* import { ChildProcessSpawner } from "effect/unstable/process"
|
|
1756
|
+
*
|
|
1757
|
+
* const CliTestLayer = Layer.mergeAll(
|
|
1758
|
+
* FileSystem.layerNoop({}),
|
|
1759
|
+
* Path.layer,
|
|
1760
|
+
* Stdio.layerTest({}),
|
|
1761
|
+
* Layer.succeed(Terminal.Terminal, Terminal.make({
|
|
1762
|
+
* columns: Effect.succeed(80),
|
|
1763
|
+
* rows: Effect.succeed(24),
|
|
1764
|
+
* readInput: Effect.die("unused"),
|
|
1765
|
+
* readLine: Effect.die("unused"),
|
|
1766
|
+
* display: () => Effect.void
|
|
1767
|
+
* })),
|
|
1768
|
+
* Layer.succeed(
|
|
1769
|
+
* ChildProcessSpawner.ChildProcessSpawner,
|
|
1770
|
+
* ChildProcessSpawner.make(() => Effect.die("unused"))
|
|
1771
|
+
* )
|
|
1772
|
+
* )
|
|
1371
1773
|
*
|
|
1774
|
+
* const output: Array<string> = []
|
|
1372
1775
|
* const deploy = Command.make("deploy", {
|
|
1373
1776
|
* environment: Flag.string("env")
|
|
1374
1777
|
* }, (config) =>
|
|
1375
1778
|
* Effect.gen(function*() {
|
|
1376
|
-
* yield*
|
|
1779
|
+
* yield* Effect.sync(() => output.push(`Deploying to ${config.environment}`))
|
|
1377
1780
|
* })).pipe(
|
|
1378
1781
|
* Command.withDescription("Deploy the application to a specified environment")
|
|
1379
1782
|
* )
|
|
1783
|
+
*
|
|
1784
|
+
* await Effect.runPromise(
|
|
1785
|
+
* Command.runWith(deploy, { version: "1.0.0" })(["--env", "staging"]).pipe(Effect.provide(CliTestLayer))
|
|
1786
|
+
* )
|
|
1787
|
+
* output // => ["Deploying to staging"]
|
|
1380
1788
|
* ```
|
|
1381
1789
|
*
|
|
1382
1790
|
* @category combinators
|
|
@@ -1488,7 +1896,7 @@ export const withAlias: {
|
|
|
1488
1896
|
*
|
|
1489
1897
|
* **Example** (Hiding a subcommand)
|
|
1490
1898
|
*
|
|
1491
|
-
* ```ts
|
|
1899
|
+
* ```ts import.meta.vitest
|
|
1492
1900
|
* import { Command } from "effect/unstable/cli"
|
|
1493
1901
|
*
|
|
1494
1902
|
* // `experimental` still runs when invoked as `mycli experimental`,
|
|
@@ -1500,6 +1908,8 @@ export const withAlias: {
|
|
|
1500
1908
|
* const root = Command.make("mycli").pipe(
|
|
1501
1909
|
* Command.withSubcommands([experimental])
|
|
1502
1910
|
* )
|
|
1911
|
+
*
|
|
1912
|
+
* root.subcommands[0].commands[0].hidden // => true
|
|
1503
1913
|
* ```
|
|
1504
1914
|
*
|
|
1505
1915
|
* @category combinators
|
|
@@ -1689,7 +2099,7 @@ export const annotateMerge: {
|
|
|
1689
2099
|
*
|
|
1690
2100
|
* **Example** (Adding usage examples)
|
|
1691
2101
|
*
|
|
1692
|
-
* ```ts
|
|
2102
|
+
* ```ts import.meta.vitest
|
|
1693
2103
|
* import { Command } from "effect/unstable/cli"
|
|
1694
2104
|
*
|
|
1695
2105
|
* const login = Command.make("login").pipe(
|
|
@@ -1698,6 +2108,8 @@ export const annotateMerge: {
|
|
|
1698
2108
|
* { command: "myapp login --token sbp_abc123", description: "Log in with a token" }
|
|
1699
2109
|
* ])
|
|
1700
2110
|
* )
|
|
2111
|
+
*
|
|
2112
|
+
* login.examples.map((example) => example.command) // => ["myapp login", "myapp login --token sbp_abc123"]
|
|
1701
2113
|
* ```
|
|
1702
2114
|
*
|
|
1703
2115
|
* @category combinators
|
|
@@ -1714,7 +2126,7 @@ export const withExamples: {
|
|
|
1714
2126
|
*
|
|
1715
2127
|
* **Example** (Adding usage examples)
|
|
1716
2128
|
*
|
|
1717
|
-
* ```ts
|
|
2129
|
+
* ```ts import.meta.vitest
|
|
1718
2130
|
* import { Command } from "effect/unstable/cli"
|
|
1719
2131
|
*
|
|
1720
2132
|
* const login = Command.make("login").pipe(
|
|
@@ -1723,6 +2135,8 @@ export const withExamples: {
|
|
|
1723
2135
|
* { command: "myapp login --token sbp_abc123", description: "Log in with a token" }
|
|
1724
2136
|
* ])
|
|
1725
2137
|
* )
|
|
2138
|
+
*
|
|
2139
|
+
* login.examples.map((example) => example.command) // => ["myapp login", "myapp login --token sbp_abc123"]
|
|
1726
2140
|
* ```
|
|
1727
2141
|
*
|
|
1728
2142
|
* @category combinators
|
|
@@ -1741,7 +2155,7 @@ export const withExamples: {
|
|
|
1741
2155
|
*
|
|
1742
2156
|
* **Example** (Adding usage examples)
|
|
1743
2157
|
*
|
|
1744
|
-
* ```ts
|
|
2158
|
+
* ```ts import.meta.vitest
|
|
1745
2159
|
* import { Command } from "effect/unstable/cli"
|
|
1746
2160
|
*
|
|
1747
2161
|
* const login = Command.make("login").pipe(
|
|
@@ -1750,6 +2164,8 @@ export const withExamples: {
|
|
|
1750
2164
|
* { command: "myapp login --token sbp_abc123", description: "Log in with a token" }
|
|
1751
2165
|
* ])
|
|
1752
2166
|
* )
|
|
2167
|
+
*
|
|
2168
|
+
* login.examples.map((example) => example.command) // => ["myapp login", "myapp login --token sbp_abc123"]
|
|
1753
2169
|
* ```
|
|
1754
2170
|
*
|
|
1755
2171
|
* @category combinators
|
|
@@ -1783,16 +2199,35 @@ const mapHandler = <Name extends string, Input, E, R, ContextInput, E2, R2>(
|
|
|
1783
2199
|
*
|
|
1784
2200
|
* **Example** (Providing command services)
|
|
1785
2201
|
*
|
|
1786
|
-
* ```ts
|
|
1787
|
-
* import { Effect, FileSystem, PlatformError } from "effect"
|
|
2202
|
+
* ```ts import.meta.vitest
|
|
2203
|
+
* import { Effect, FileSystem, Layer, Path, PlatformError, Stdio, Terminal } from "effect"
|
|
1788
2204
|
* import { Command, Flag } from "effect/unstable/cli"
|
|
2205
|
+
* import { ChildProcessSpawner } from "effect/unstable/process"
|
|
2206
|
+
*
|
|
2207
|
+
* const CliTestLayer = Layer.mergeAll(
|
|
2208
|
+
* FileSystem.layerNoop({}),
|
|
2209
|
+
* Path.layer,
|
|
2210
|
+
* Stdio.layerTest({}),
|
|
2211
|
+
* Layer.succeed(Terminal.Terminal, Terminal.make({
|
|
2212
|
+
* columns: Effect.succeed(80),
|
|
2213
|
+
* rows: Effect.succeed(24),
|
|
2214
|
+
* readInput: Effect.die("unused"),
|
|
2215
|
+
* readLine: Effect.die("unused"),
|
|
2216
|
+
* display: () => Effect.void
|
|
2217
|
+
* })),
|
|
2218
|
+
* Layer.succeed(
|
|
2219
|
+
* ChildProcessSpawner.ChildProcessSpawner,
|
|
2220
|
+
* ChildProcessSpawner.make(() => Effect.die("unused"))
|
|
2221
|
+
* )
|
|
2222
|
+
* )
|
|
1789
2223
|
*
|
|
2224
|
+
* const output: Array<string> = []
|
|
1790
2225
|
* const deploy = Command.make("deploy", {
|
|
1791
2226
|
* env: Flag.string("env")
|
|
1792
2227
|
* }, (config) =>
|
|
1793
2228
|
* Effect.gen(function*() {
|
|
1794
2229
|
* const fs = yield* FileSystem.FileSystem
|
|
1795
|
-
*
|
|
2230
|
+
* yield* Effect.sync(() => output.push(`Using file system for ${config.env}`))
|
|
1796
2231
|
* })).pipe(
|
|
1797
2232
|
* // Provide FileSystem based on the --env flag
|
|
1798
2233
|
* Command.provide((config) =>
|
|
@@ -1809,6 +2244,11 @@ const mapHandler = <Name extends string, Input, E, R, ContextInput, E2, R2>(
|
|
|
1809
2244
|
* })
|
|
1810
2245
|
* )
|
|
1811
2246
|
* )
|
|
2247
|
+
*
|
|
2248
|
+
* await Effect.runPromise(
|
|
2249
|
+
* Command.runWith(deploy, { version: "1.0.0" })(["--env", "local"]).pipe(Effect.provide(CliTestLayer))
|
|
2250
|
+
* )
|
|
2251
|
+
* output // => ["Using file system for local"]
|
|
1812
2252
|
* ```
|
|
1813
2253
|
*
|
|
1814
2254
|
* @category providing services
|
|
@@ -1821,16 +2261,35 @@ export const provide: {
|
|
|
1821
2261
|
*
|
|
1822
2262
|
* **Example** (Providing command services)
|
|
1823
2263
|
*
|
|
1824
|
-
* ```ts
|
|
1825
|
-
* import { Effect, FileSystem, PlatformError } from "effect"
|
|
2264
|
+
* ```ts import.meta.vitest
|
|
2265
|
+
* import { Effect, FileSystem, Layer, Path, PlatformError, Stdio, Terminal } from "effect"
|
|
1826
2266
|
* import { Command, Flag } from "effect/unstable/cli"
|
|
2267
|
+
* import { ChildProcessSpawner } from "effect/unstable/process"
|
|
2268
|
+
*
|
|
2269
|
+
* const CliTestLayer = Layer.mergeAll(
|
|
2270
|
+
* FileSystem.layerNoop({}),
|
|
2271
|
+
* Path.layer,
|
|
2272
|
+
* Stdio.layerTest({}),
|
|
2273
|
+
* Layer.succeed(Terminal.Terminal, Terminal.make({
|
|
2274
|
+
* columns: Effect.succeed(80),
|
|
2275
|
+
* rows: Effect.succeed(24),
|
|
2276
|
+
* readInput: Effect.die("unused"),
|
|
2277
|
+
* readLine: Effect.die("unused"),
|
|
2278
|
+
* display: () => Effect.void
|
|
2279
|
+
* })),
|
|
2280
|
+
* Layer.succeed(
|
|
2281
|
+
* ChildProcessSpawner.ChildProcessSpawner,
|
|
2282
|
+
* ChildProcessSpawner.make(() => Effect.die("unused"))
|
|
2283
|
+
* )
|
|
2284
|
+
* )
|
|
1827
2285
|
*
|
|
2286
|
+
* const output: Array<string> = []
|
|
1828
2287
|
* const deploy = Command.make("deploy", {
|
|
1829
2288
|
* env: Flag.string("env")
|
|
1830
2289
|
* }, (config) =>
|
|
1831
2290
|
* Effect.gen(function*() {
|
|
1832
2291
|
* const fs = yield* FileSystem.FileSystem
|
|
1833
|
-
*
|
|
2292
|
+
* yield* Effect.sync(() => output.push(`Using file system for ${config.env}`))
|
|
1834
2293
|
* })).pipe(
|
|
1835
2294
|
* // Provide FileSystem based on the --env flag
|
|
1836
2295
|
* Command.provide((config) =>
|
|
@@ -1847,6 +2306,11 @@ export const provide: {
|
|
|
1847
2306
|
* })
|
|
1848
2307
|
* )
|
|
1849
2308
|
* )
|
|
2309
|
+
*
|
|
2310
|
+
* await Effect.runPromise(
|
|
2311
|
+
* Command.runWith(deploy, { version: "1.0.0" })(["--env", "local"]).pipe(Effect.provide(CliTestLayer))
|
|
2312
|
+
* )
|
|
2313
|
+
* output // => ["Using file system for local"]
|
|
1850
2314
|
* ```
|
|
1851
2315
|
*
|
|
1852
2316
|
* @category providing services
|
|
@@ -1866,16 +2330,35 @@ export const provide: {
|
|
|
1866
2330
|
*
|
|
1867
2331
|
* **Example** (Providing command services)
|
|
1868
2332
|
*
|
|
1869
|
-
* ```ts
|
|
1870
|
-
* import { Effect, FileSystem, PlatformError } from "effect"
|
|
2333
|
+
* ```ts import.meta.vitest
|
|
2334
|
+
* import { Effect, FileSystem, Layer, Path, PlatformError, Stdio, Terminal } from "effect"
|
|
1871
2335
|
* import { Command, Flag } from "effect/unstable/cli"
|
|
2336
|
+
* import { ChildProcessSpawner } from "effect/unstable/process"
|
|
2337
|
+
*
|
|
2338
|
+
* const CliTestLayer = Layer.mergeAll(
|
|
2339
|
+
* FileSystem.layerNoop({}),
|
|
2340
|
+
* Path.layer,
|
|
2341
|
+
* Stdio.layerTest({}),
|
|
2342
|
+
* Layer.succeed(Terminal.Terminal, Terminal.make({
|
|
2343
|
+
* columns: Effect.succeed(80),
|
|
2344
|
+
* rows: Effect.succeed(24),
|
|
2345
|
+
* readInput: Effect.die("unused"),
|
|
2346
|
+
* readLine: Effect.die("unused"),
|
|
2347
|
+
* display: () => Effect.void
|
|
2348
|
+
* })),
|
|
2349
|
+
* Layer.succeed(
|
|
2350
|
+
* ChildProcessSpawner.ChildProcessSpawner,
|
|
2351
|
+
* ChildProcessSpawner.make(() => Effect.die("unused"))
|
|
2352
|
+
* )
|
|
2353
|
+
* )
|
|
1872
2354
|
*
|
|
2355
|
+
* const output: Array<string> = []
|
|
1873
2356
|
* const deploy = Command.make("deploy", {
|
|
1874
2357
|
* env: Flag.string("env")
|
|
1875
2358
|
* }, (config) =>
|
|
1876
2359
|
* Effect.gen(function*() {
|
|
1877
2360
|
* const fs = yield* FileSystem.FileSystem
|
|
1878
|
-
*
|
|
2361
|
+
* yield* Effect.sync(() => output.push(`Using file system for ${config.env}`))
|
|
1879
2362
|
* })).pipe(
|
|
1880
2363
|
* // Provide FileSystem based on the --env flag
|
|
1881
2364
|
* Command.provide((config) =>
|
|
@@ -1892,6 +2375,11 @@ export const provide: {
|
|
|
1892
2375
|
* })
|
|
1893
2376
|
* )
|
|
1894
2377
|
* )
|
|
2378
|
+
*
|
|
2379
|
+
* await Effect.runPromise(
|
|
2380
|
+
* Command.runWith(deploy, { version: "1.0.0" })(["--env", "local"]).pipe(Effect.provide(CliTestLayer))
|
|
2381
|
+
* )
|
|
2382
|
+
* output // => ["Using file system for local"]
|
|
1895
2383
|
* ```
|
|
1896
2384
|
*
|
|
1897
2385
|
* @category providing services
|
|
@@ -2093,19 +2581,42 @@ export const provideEffectDiscard: {
|
|
|
2093
2581
|
*
|
|
2094
2582
|
* **Example** (Constructing command arguments)
|
|
2095
2583
|
*
|
|
2096
|
-
* ```ts
|
|
2097
|
-
* import { Console, Effect } from "effect"
|
|
2584
|
+
* ```ts import.meta.vitest
|
|
2585
|
+
* import { Console, Effect, FileSystem, Layer, Path, Stdio, Terminal } from "effect"
|
|
2098
2586
|
* import { Command } from "effect/unstable/cli"
|
|
2587
|
+
* import { ChildProcessSpawner } from "effect/unstable/process"
|
|
2588
|
+
*
|
|
2589
|
+
* const CliTestLayer = Layer.mergeAll(
|
|
2590
|
+
* FileSystem.layerNoop({}),
|
|
2591
|
+
* Path.layer,
|
|
2592
|
+
* Stdio.layerTest({}),
|
|
2593
|
+
* Layer.succeed(Terminal.Terminal, Terminal.make({
|
|
2594
|
+
* columns: Effect.succeed(80),
|
|
2595
|
+
* rows: Effect.succeed(24),
|
|
2596
|
+
* readInput: Effect.die("unused"),
|
|
2597
|
+
* readLine: Effect.die("unused"),
|
|
2598
|
+
* display: () => Effect.void
|
|
2599
|
+
* })),
|
|
2600
|
+
* Layer.succeed(
|
|
2601
|
+
* ChildProcessSpawner.ChildProcessSpawner,
|
|
2602
|
+
* ChildProcessSpawner.make(() => Effect.die("unused"))
|
|
2603
|
+
* )
|
|
2604
|
+
* )
|
|
2099
2605
|
*
|
|
2100
2606
|
* const command = Command.make("app")
|
|
2101
|
-
*
|
|
2102
|
-
*
|
|
2103
|
-
* const args = yield* Command.wizard(command)
|
|
2104
|
-
* yield* Console.log(args.join(" "))
|
|
2607
|
+
* const silentConsole: Console.Console = Object.assign(Object.create(console), {
|
|
2608
|
+
* log: () => {}
|
|
2105
2609
|
* })
|
|
2610
|
+
*
|
|
2611
|
+
* const program = Command.wizard(command).pipe(
|
|
2612
|
+
* Effect.provideService(Console.Console, silentConsole),
|
|
2613
|
+
* Effect.provide(CliTestLayer)
|
|
2614
|
+
* )
|
|
2615
|
+
*
|
|
2616
|
+
* await Effect.runPromise(program) // => ["app"]
|
|
2106
2617
|
* ```
|
|
2107
2618
|
*
|
|
2108
|
-
* @category
|
|
2619
|
+
* @category running
|
|
2109
2620
|
* @since 4.0.0
|
|
2110
2621
|
*/
|
|
2111
2622
|
export const wizard = <Name extends string, Input, E, R, ContextInput>(
|
|
@@ -2178,26 +2689,50 @@ const showHelp = <Name extends string, Input, E, R, ContextInput>(
|
|
|
2178
2689
|
*
|
|
2179
2690
|
* **Example** (Running commands with standard input)
|
|
2180
2691
|
*
|
|
2181
|
-
* ```ts
|
|
2182
|
-
* import {
|
|
2692
|
+
* ```ts import.meta.vitest
|
|
2693
|
+
* import { Effect, FileSystem, Layer, Path, Stdio, Terminal } from "effect"
|
|
2183
2694
|
* import { Command, Flag } from "effect/unstable/cli"
|
|
2695
|
+
* import { ChildProcessSpawner } from "effect/unstable/process"
|
|
2696
|
+
*
|
|
2697
|
+
* const CliTestLayer = Layer.mergeAll(
|
|
2698
|
+
* FileSystem.layerNoop({}),
|
|
2699
|
+
* Path.layer,
|
|
2700
|
+
* Stdio.layerTest({
|
|
2701
|
+
* args: Effect.succeed(["--name", "Alice"])
|
|
2702
|
+
* }),
|
|
2703
|
+
* Layer.succeed(Terminal.Terminal, Terminal.make({
|
|
2704
|
+
* columns: Effect.succeed(80),
|
|
2705
|
+
* rows: Effect.succeed(24),
|
|
2706
|
+
* readInput: Effect.die("unused"),
|
|
2707
|
+
* readLine: Effect.die("unused"),
|
|
2708
|
+
* display: () => Effect.void
|
|
2709
|
+
* })),
|
|
2710
|
+
* Layer.succeed(
|
|
2711
|
+
* ChildProcessSpawner.ChildProcessSpawner,
|
|
2712
|
+
* ChildProcessSpawner.make(() => Effect.die("unused"))
|
|
2713
|
+
* )
|
|
2714
|
+
* )
|
|
2184
2715
|
*
|
|
2716
|
+
* const output: Array<string> = []
|
|
2185
2717
|
* const greetCommand = Command.make("greet", {
|
|
2186
2718
|
* name: Flag.string("name")
|
|
2187
2719
|
* }, (config) =>
|
|
2188
2720
|
* Effect.gen(function*() {
|
|
2189
|
-
* yield*
|
|
2721
|
+
* yield* Effect.sync(() => output.push(`Hello, ${config.name}!`))
|
|
2190
2722
|
* }))
|
|
2191
2723
|
*
|
|
2192
2724
|
* // Automatically gets args from the Stdio service
|
|
2193
2725
|
* const program = Command.run(greetCommand, {
|
|
2194
2726
|
* version: "1.0.0"
|
|
2195
2727
|
* })
|
|
2728
|
+
*
|
|
2729
|
+
* await Effect.runPromise(program.pipe(Effect.provide(CliTestLayer)))
|
|
2730
|
+
* output // => ["Hello, Alice!"]
|
|
2196
2731
|
* ```
|
|
2197
2732
|
*
|
|
2198
2733
|
* @see {@link runWith} for running a command with an explicit argument array
|
|
2199
2734
|
*
|
|
2200
|
-
* @category
|
|
2735
|
+
* @category running
|
|
2201
2736
|
* @since 4.0.0
|
|
2202
2737
|
*/
|
|
2203
2738
|
export const run: {
|
|
@@ -2211,26 +2746,50 @@ export const run: {
|
|
|
2211
2746
|
*
|
|
2212
2747
|
* **Example** (Running commands with standard input)
|
|
2213
2748
|
*
|
|
2214
|
-
* ```ts
|
|
2215
|
-
* import {
|
|
2749
|
+
* ```ts import.meta.vitest
|
|
2750
|
+
* import { Effect, FileSystem, Layer, Path, Stdio, Terminal } from "effect"
|
|
2216
2751
|
* import { Command, Flag } from "effect/unstable/cli"
|
|
2752
|
+
* import { ChildProcessSpawner } from "effect/unstable/process"
|
|
2753
|
+
*
|
|
2754
|
+
* const CliTestLayer = Layer.mergeAll(
|
|
2755
|
+
* FileSystem.layerNoop({}),
|
|
2756
|
+
* Path.layer,
|
|
2757
|
+
* Stdio.layerTest({
|
|
2758
|
+
* args: Effect.succeed(["--name", "Alice"])
|
|
2759
|
+
* }),
|
|
2760
|
+
* Layer.succeed(Terminal.Terminal, Terminal.make({
|
|
2761
|
+
* columns: Effect.succeed(80),
|
|
2762
|
+
* rows: Effect.succeed(24),
|
|
2763
|
+
* readInput: Effect.die("unused"),
|
|
2764
|
+
* readLine: Effect.die("unused"),
|
|
2765
|
+
* display: () => Effect.void
|
|
2766
|
+
* })),
|
|
2767
|
+
* Layer.succeed(
|
|
2768
|
+
* ChildProcessSpawner.ChildProcessSpawner,
|
|
2769
|
+
* ChildProcessSpawner.make(() => Effect.die("unused"))
|
|
2770
|
+
* )
|
|
2771
|
+
* )
|
|
2217
2772
|
*
|
|
2773
|
+
* const output: Array<string> = []
|
|
2218
2774
|
* const greetCommand = Command.make("greet", {
|
|
2219
2775
|
* name: Flag.string("name")
|
|
2220
2776
|
* }, (config) =>
|
|
2221
2777
|
* Effect.gen(function*() {
|
|
2222
|
-
* yield*
|
|
2778
|
+
* yield* Effect.sync(() => output.push(`Hello, ${config.name}!`))
|
|
2223
2779
|
* }))
|
|
2224
2780
|
*
|
|
2225
2781
|
* // Automatically gets args from the Stdio service
|
|
2226
2782
|
* const program = Command.run(greetCommand, {
|
|
2227
2783
|
* version: "1.0.0"
|
|
2228
2784
|
* })
|
|
2785
|
+
*
|
|
2786
|
+
* await Effect.runPromise(program.pipe(Effect.provide(CliTestLayer)))
|
|
2787
|
+
* output // => ["Hello, Alice!"]
|
|
2229
2788
|
* ```
|
|
2230
2789
|
*
|
|
2231
2790
|
* @see {@link runWith} for running a command with an explicit argument array
|
|
2232
2791
|
*
|
|
2233
|
-
* @category
|
|
2792
|
+
* @category running
|
|
2234
2793
|
* @since 4.0.0
|
|
2235
2794
|
*/
|
|
2236
2795
|
(
|
|
@@ -2250,26 +2809,50 @@ export const run: {
|
|
|
2250
2809
|
*
|
|
2251
2810
|
* **Example** (Running commands with standard input)
|
|
2252
2811
|
*
|
|
2253
|
-
* ```ts
|
|
2254
|
-
* import {
|
|
2812
|
+
* ```ts import.meta.vitest
|
|
2813
|
+
* import { Effect, FileSystem, Layer, Path, Stdio, Terminal } from "effect"
|
|
2255
2814
|
* import { Command, Flag } from "effect/unstable/cli"
|
|
2815
|
+
* import { ChildProcessSpawner } from "effect/unstable/process"
|
|
2816
|
+
*
|
|
2817
|
+
* const CliTestLayer = Layer.mergeAll(
|
|
2818
|
+
* FileSystem.layerNoop({}),
|
|
2819
|
+
* Path.layer,
|
|
2820
|
+
* Stdio.layerTest({
|
|
2821
|
+
* args: Effect.succeed(["--name", "Alice"])
|
|
2822
|
+
* }),
|
|
2823
|
+
* Layer.succeed(Terminal.Terminal, Terminal.make({
|
|
2824
|
+
* columns: Effect.succeed(80),
|
|
2825
|
+
* rows: Effect.succeed(24),
|
|
2826
|
+
* readInput: Effect.die("unused"),
|
|
2827
|
+
* readLine: Effect.die("unused"),
|
|
2828
|
+
* display: () => Effect.void
|
|
2829
|
+
* })),
|
|
2830
|
+
* Layer.succeed(
|
|
2831
|
+
* ChildProcessSpawner.ChildProcessSpawner,
|
|
2832
|
+
* ChildProcessSpawner.make(() => Effect.die("unused"))
|
|
2833
|
+
* )
|
|
2834
|
+
* )
|
|
2256
2835
|
*
|
|
2836
|
+
* const output: Array<string> = []
|
|
2257
2837
|
* const greetCommand = Command.make("greet", {
|
|
2258
2838
|
* name: Flag.string("name")
|
|
2259
2839
|
* }, (config) =>
|
|
2260
2840
|
* Effect.gen(function*() {
|
|
2261
|
-
* yield*
|
|
2841
|
+
* yield* Effect.sync(() => output.push(`Hello, ${config.name}!`))
|
|
2262
2842
|
* }))
|
|
2263
2843
|
*
|
|
2264
2844
|
* // Automatically gets args from the Stdio service
|
|
2265
2845
|
* const program = Command.run(greetCommand, {
|
|
2266
2846
|
* version: "1.0.0"
|
|
2267
2847
|
* })
|
|
2848
|
+
*
|
|
2849
|
+
* await Effect.runPromise(program.pipe(Effect.provide(CliTestLayer)))
|
|
2850
|
+
* output // => ["Hello, Alice!"]
|
|
2268
2851
|
* ```
|
|
2269
2852
|
*
|
|
2270
2853
|
* @see {@link runWith} for running a command with an explicit argument array
|
|
2271
2854
|
*
|
|
2272
|
-
* @category
|
|
2855
|
+
* @category running
|
|
2273
2856
|
* @since 4.0.0
|
|
2274
2857
|
*/
|
|
2275
2858
|
<Name extends string, Input, E, R, ContextInput>(
|
|
@@ -2301,17 +2884,36 @@ export const run: {
|
|
|
2301
2884
|
*
|
|
2302
2885
|
* **Example** (Running commands with explicit arguments)
|
|
2303
2886
|
*
|
|
2304
|
-
* ```ts
|
|
2305
|
-
* import {
|
|
2887
|
+
* ```ts import.meta.vitest
|
|
2888
|
+
* import { Effect, FileSystem, Layer, Path, Stdio, Terminal } from "effect"
|
|
2306
2889
|
* import { Command, Flag } from "effect/unstable/cli"
|
|
2890
|
+
* import { ChildProcessSpawner } from "effect/unstable/process"
|
|
2891
|
+
*
|
|
2892
|
+
* const CliTestLayer = Layer.mergeAll(
|
|
2893
|
+
* FileSystem.layerNoop({}),
|
|
2894
|
+
* Path.layer,
|
|
2895
|
+
* Stdio.layerTest({}),
|
|
2896
|
+
* Layer.succeed(Terminal.Terminal, Terminal.make({
|
|
2897
|
+
* columns: Effect.succeed(80),
|
|
2898
|
+
* rows: Effect.succeed(24),
|
|
2899
|
+
* readInput: Effect.die("unused"),
|
|
2900
|
+
* readLine: Effect.die("unused"),
|
|
2901
|
+
* display: () => Effect.void
|
|
2902
|
+
* })),
|
|
2903
|
+
* Layer.succeed(
|
|
2904
|
+
* ChildProcessSpawner.ChildProcessSpawner,
|
|
2905
|
+
* ChildProcessSpawner.make(() => Effect.die("unused"))
|
|
2906
|
+
* )
|
|
2907
|
+
* )
|
|
2307
2908
|
*
|
|
2909
|
+
* const output: Array<string> = []
|
|
2308
2910
|
* const greet = Command.make("greet", {
|
|
2309
2911
|
* name: Flag.string("name"),
|
|
2310
2912
|
* count: Flag.integer("count").pipe(Flag.withDefault(1))
|
|
2311
2913
|
* }, (config) =>
|
|
2312
2914
|
* Effect.gen(function*() {
|
|
2313
2915
|
* for (let i = 0; i < config.count; i++) {
|
|
2314
|
-
* yield*
|
|
2916
|
+
* yield* Effect.sync(() => output.push(`Hello, ${config.name}!`))
|
|
2315
2917
|
* }
|
|
2316
2918
|
* }))
|
|
2317
2919
|
*
|
|
@@ -2319,18 +2921,14 @@ export const run: {
|
|
|
2319
2921
|
* const testProgram = Effect.gen(function*() {
|
|
2320
2922
|
* const runCommand = Command.runWith(greet, { version: "1.0.0" })
|
|
2321
2923
|
*
|
|
2322
|
-
* // Test normal execution
|
|
2323
2924
|
* yield* runCommand(["--name", "Alice", "--count", "2"])
|
|
2324
|
-
*
|
|
2325
|
-
* // Test help display
|
|
2326
|
-
* yield* runCommand(["--help"])
|
|
2327
|
-
*
|
|
2328
|
-
* // Test version display
|
|
2329
|
-
* yield* runCommand(["--version"])
|
|
2330
2925
|
* })
|
|
2926
|
+
*
|
|
2927
|
+
* await Effect.runPromise(testProgram.pipe(Effect.provide(CliTestLayer)))
|
|
2928
|
+
* output // => ["Hello, Alice!", "Hello, Alice!"]
|
|
2331
2929
|
* ```
|
|
2332
2930
|
*
|
|
2333
|
-
* @category
|
|
2931
|
+
* @category running
|
|
2334
2932
|
* @since 4.0.0
|
|
2335
2933
|
*/
|
|
2336
2934
|
export const runWith = <const Name extends string, Input, E, R, ContextInput>(
|