effect 4.0.0-beta.101 → 4.0.0-beta.103
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Array.d.ts +971 -1037
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +462 -412
- package/dist/Array.js.map +1 -1
- package/dist/BigDecimal.d.ts +433 -756
- package/dist/BigDecimal.d.ts.map +1 -1
- package/dist/BigDecimal.js +200 -325
- package/dist/BigDecimal.js.map +1 -1
- package/dist/BigInt.d.ts +207 -267
- package/dist/BigInt.d.ts.map +1 -1
- package/dist/BigInt.js +107 -135
- package/dist/BigInt.js.map +1 -1
- package/dist/Boolean.d.ts +146 -188
- package/dist/Boolean.d.ts.map +1 -1
- package/dist/Boolean.js +64 -84
- package/dist/Boolean.js.map +1 -1
- package/dist/Brand.js.map +1 -1
- package/dist/Cache.d.ts +405 -254
- package/dist/Cache.d.ts.map +1 -1
- package/dist/Cache.js +166 -101
- package/dist/Cache.js.map +1 -1
- package/dist/Cause.d.ts +167 -277
- package/dist/Cause.d.ts.map +1 -1
- package/dist/Cause.js +122 -176
- package/dist/Cause.js.map +1 -1
- package/dist/Channel.d.ts +729 -768
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +541 -449
- package/dist/Channel.js.map +1 -1
- package/dist/ChannelSchema.d.ts +1 -1
- package/dist/ChannelSchema.d.ts.map +1 -1
- package/dist/ChannelSchema.js.map +1 -1
- package/dist/Chunk.d.ts +834 -1173
- package/dist/Chunk.d.ts.map +1 -1
- package/dist/Chunk.js +326 -439
- package/dist/Chunk.js.map +1 -1
- package/dist/Clock.d.ts +180 -49
- package/dist/Clock.d.ts.map +1 -1
- package/dist/Clock.js +96 -31
- package/dist/Clock.js.map +1 -1
- package/dist/Combiner.d.ts +20 -33
- package/dist/Combiner.d.ts.map +1 -1
- package/dist/Combiner.js +18 -30
- package/dist/Combiner.js.map +1 -1
- package/dist/Config.d.ts +226 -174
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js +339 -267
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.d.ts +194 -68
- package/dist/ConfigProvider.d.ts.map +1 -1
- package/dist/ConfigProvider.js +122 -87
- package/dist/ConfigProvider.js.map +1 -1
- package/dist/Console.d.ts +233 -33
- package/dist/Console.d.ts.map +1 -1
- package/dist/Console.js +232 -32
- package/dist/Console.js.map +1 -1
- package/dist/Context.d.ts +151 -274
- package/dist/Context.d.ts.map +1 -1
- package/dist/Context.js +171 -214
- package/dist/Context.js.map +1 -1
- package/dist/Cron.d.ts +68 -77
- package/dist/Cron.d.ts.map +1 -1
- package/dist/Cron.js +57 -66
- package/dist/Cron.js.map +1 -1
- package/dist/Crypto.d.ts +13 -15
- package/dist/Crypto.d.ts.map +1 -1
- package/dist/Crypto.js +9 -10
- package/dist/Crypto.js.map +1 -1
- package/dist/Data.d.ts +60 -80
- package/dist/Data.d.ts.map +1 -1
- package/dist/Data.js +18 -24
- package/dist/Data.js.map +1 -1
- package/dist/DateTime.d.ts +562 -660
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/DateTime.js +307 -362
- package/dist/DateTime.js.map +1 -1
- package/dist/Deferred.d.ts +253 -256
- package/dist/Deferred.d.ts.map +1 -1
- package/dist/Deferred.js +104 -96
- package/dist/Deferred.js.map +1 -1
- package/dist/Duration.d.ts +216 -308
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +132 -186
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +2897 -3342
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +1383 -1580
- package/dist/Effect.js.map +1 -1
- package/dist/Effectable.js.map +1 -1
- package/dist/Encoding.d.ts +22 -40
- package/dist/Encoding.d.ts.map +1 -1
- package/dist/Encoding.js +22 -40
- package/dist/Encoding.js.map +1 -1
- package/dist/Equal.d.ts +33 -37
- package/dist/Equal.d.ts.map +1 -1
- package/dist/Equal.js +29 -21
- package/dist/Equal.js.map +1 -1
- package/dist/Equivalence.d.ts +103 -105
- package/dist/Equivalence.d.ts.map +1 -1
- package/dist/Equivalence.js +77 -79
- package/dist/Equivalence.js.map +1 -1
- package/dist/ErrorReporter.d.ts +51 -27
- package/dist/ErrorReporter.d.ts.map +1 -1
- package/dist/ErrorReporter.js +50 -26
- package/dist/ErrorReporter.js.map +1 -1
- package/dist/ExecutionPlan.d.ts +13 -55
- package/dist/ExecutionPlan.d.ts.map +1 -1
- package/dist/ExecutionPlan.js +7 -28
- package/dist/ExecutionPlan.js.map +1 -1
- package/dist/Exit.d.ts +116 -192
- package/dist/Exit.d.ts.map +1 -1
- package/dist/Exit.js +82 -130
- package/dist/Exit.js.map +1 -1
- package/dist/Fiber.d.ts +82 -146
- package/dist/Fiber.d.ts.map +1 -1
- package/dist/Fiber.js +48 -87
- package/dist/Fiber.js.map +1 -1
- package/dist/FiberHandle.d.ts +152 -105
- package/dist/FiberHandle.d.ts.map +1 -1
- package/dist/FiberHandle.js +109 -75
- package/dist/FiberHandle.js.map +1 -1
- package/dist/FiberMap.d.ts +213 -168
- package/dist/FiberMap.d.ts.map +1 -1
- package/dist/FiberMap.js +114 -89
- package/dist/FiberMap.js.map +1 -1
- package/dist/FiberSet.d.ts +123 -81
- package/dist/FiberSet.d.ts.map +1 -1
- package/dist/FiberSet.js +85 -59
- package/dist/FiberSet.js.map +1 -1
- package/dist/FileSystem.d.ts +153 -264
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js +42 -147
- package/dist/FileSystem.js.map +1 -1
- package/dist/Filter.d.ts +61 -33
- package/dist/Filter.d.ts.map +1 -1
- package/dist/Filter.js +26 -15
- package/dist/Filter.js.map +1 -1
- package/dist/Formatter.d.ts +25 -33
- package/dist/Formatter.d.ts.map +1 -1
- package/dist/Formatter.js +48 -49
- package/dist/Formatter.js.map +1 -1
- package/dist/Function.d.ts +76 -145
- package/dist/Function.d.ts.map +1 -1
- package/dist/Function.js +40 -57
- package/dist/Function.js.map +1 -1
- package/dist/Graph.d.ts +360 -714
- package/dist/Graph.d.ts.map +1 -1
- package/dist/Graph.js +168 -297
- package/dist/Graph.js.map +1 -1
- package/dist/HKT.d.ts +12 -6
- package/dist/HKT.d.ts.map +1 -1
- package/dist/Hash.d.ts +47 -83
- package/dist/Hash.d.ts.map +1 -1
- package/dist/Hash.js +46 -68
- package/dist/Hash.js.map +1 -1
- package/dist/HashMap.d.ts +319 -411
- package/dist/HashMap.d.ts.map +1 -1
- package/dist/HashMap.js +122 -166
- package/dist/HashMap.js.map +1 -1
- package/dist/HashRing.d.ts.map +1 -1
- package/dist/HashRing.js +1 -0
- package/dist/HashRing.js.map +1 -1
- package/dist/HashSet.d.ts +177 -284
- package/dist/HashSet.d.ts.map +1 -1
- package/dist/HashSet.js +68 -109
- package/dist/HashSet.js.map +1 -1
- package/dist/Inspectable.d.ts +12 -12
- package/dist/Inspectable.js +8 -8
- package/dist/Inspectable.js.map +1 -1
- package/dist/Iterable.d.ts +620 -786
- package/dist/Iterable.d.ts.map +1 -1
- package/dist/Iterable.js +230 -307
- package/dist/Iterable.js.map +1 -1
- package/dist/JsonPatch.d.ts +11 -13
- package/dist/JsonPatch.d.ts.map +1 -1
- package/dist/JsonPatch.js +46 -103
- package/dist/JsonPatch.js.map +1 -1
- package/dist/JsonPointer.d.ts +8 -8
- package/dist/JsonPointer.js +8 -8
- package/dist/JsonPointer.js.map +1 -1
- package/dist/JsonSchema.d.ts +98 -44
- package/dist/JsonSchema.d.ts.map +1 -1
- package/dist/JsonSchema.js +300 -239
- package/dist/JsonSchema.js.map +1 -1
- package/dist/Latch.d.ts +23 -35
- package/dist/Latch.d.ts.map +1 -1
- package/dist/Latch.js +16 -28
- package/dist/Latch.js.map +1 -1
- package/dist/Layer.d.ts +359 -260
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js +195 -175
- package/dist/Layer.js.map +1 -1
- package/dist/LayerMap.d.ts +42 -29
- package/dist/LayerMap.d.ts.map +1 -1
- package/dist/LayerMap.js +31 -21
- package/dist/LayerMap.js.map +1 -1
- package/dist/LayerRef.d.ts +6 -2
- package/dist/LayerRef.d.ts.map +1 -1
- package/dist/LayerRef.js +6 -2
- package/dist/LayerRef.js.map +1 -1
- package/dist/LogLevel.d.ts +114 -214
- package/dist/LogLevel.d.ts.map +1 -1
- package/dist/LogLevel.js +41 -76
- package/dist/LogLevel.js.map +1 -1
- package/dist/Logger.d.ts +218 -467
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js +207 -452
- package/dist/Logger.js.map +1 -1
- package/dist/ManagedRuntime.d.ts +16 -5
- package/dist/ManagedRuntime.d.ts.map +1 -1
- package/dist/ManagedRuntime.js +10 -5
- package/dist/ManagedRuntime.js.map +1 -1
- package/dist/Match.d.ts +217 -252
- package/dist/Match.d.ts.map +1 -1
- package/dist/Match.js +150 -183
- package/dist/Match.js.map +1 -1
- package/dist/Metric.d.ts +442 -993
- package/dist/Metric.d.ts.map +1 -1
- package/dist/Metric.js +202 -645
- package/dist/Metric.js.map +1 -1
- package/dist/MutableHashMap.d.ts +144 -173
- package/dist/MutableHashMap.d.ts.map +1 -1
- package/dist/MutableHashMap.js +68 -79
- package/dist/MutableHashMap.js.map +1 -1
- package/dist/MutableHashSet.d.ts +84 -89
- package/dist/MutableHashSet.d.ts.map +1 -1
- package/dist/MutableHashSet.js +44 -47
- package/dist/MutableHashSet.js.map +1 -1
- package/dist/MutableList.d.ts +71 -370
- package/dist/MutableList.d.ts.map +1 -1
- package/dist/MutableList.js +59 -284
- package/dist/MutableList.js.map +1 -1
- package/dist/MutableRef.d.ts +420 -243
- package/dist/MutableRef.d.ts.map +1 -1
- package/dist/MutableRef.js +209 -120
- package/dist/MutableRef.js.map +1 -1
- package/dist/Newtype.d.ts +21 -14
- package/dist/Newtype.d.ts.map +1 -1
- package/dist/Newtype.js +15 -13
- package/dist/Newtype.js.map +1 -1
- package/dist/NonEmptyIterable.d.ts +7 -137
- package/dist/NonEmptyIterable.d.ts.map +1 -1
- package/dist/NonEmptyIterable.js +5 -93
- package/dist/NonEmptyIterable.js.map +1 -1
- package/dist/Number.d.ts +196 -233
- package/dist/Number.d.ts.map +1 -1
- package/dist/Number.js +90 -109
- package/dist/Number.js.map +1 -1
- package/dist/Optic.d.ts +97 -189
- package/dist/Optic.d.ts.map +1 -1
- package/dist/Optic.js +190 -292
- package/dist/Optic.js.map +1 -1
- package/dist/Option.d.ts +447 -812
- package/dist/Option.d.ts.map +1 -1
- package/dist/Option.js +213 -393
- package/dist/Option.js.map +1 -1
- package/dist/Order.d.ts +109 -109
- package/dist/Order.js +91 -91
- package/dist/Order.js.map +1 -1
- package/dist/Ordering.d.ts +20 -23
- package/dist/Ordering.d.ts.map +1 -1
- package/dist/Ordering.js +8 -9
- package/dist/Ordering.js.map +1 -1
- package/dist/PartitionedSemaphore.d.ts.map +1 -1
- package/dist/PartitionedSemaphore.js +1 -4
- package/dist/PartitionedSemaphore.js.map +1 -1
- package/dist/Path.d.ts +38 -41
- package/dist/Path.d.ts.map +1 -1
- package/dist/Path.js +3 -4
- package/dist/Path.js.map +1 -1
- package/dist/Pipeable.d.ts +6 -5
- package/dist/Pipeable.d.ts.map +1 -1
- package/dist/Pipeable.js +2 -2
- package/dist/Pipeable.js.map +1 -1
- package/dist/PlatformError.d.ts +4 -4
- package/dist/PlatformError.js +3 -3
- package/dist/PlatformError.js.map +1 -1
- package/dist/Pool.d.ts +4 -2
- package/dist/Pool.d.ts.map +1 -1
- package/dist/Pool.js +4 -2
- package/dist/Pool.js.map +1 -1
- package/dist/Predicate.d.ts +200 -181
- package/dist/Predicate.d.ts.map +1 -1
- package/dist/Predicate.js +100 -108
- package/dist/Predicate.js.map +1 -1
- package/dist/PrimaryKey.d.ts +7 -7
- package/dist/PrimaryKey.js +5 -5
- package/dist/PrimaryKey.js.map +1 -1
- package/dist/PubSub.d.ts +425 -494
- package/dist/PubSub.d.ts.map +1 -1
- package/dist/PubSub.js +373 -362
- package/dist/PubSub.js.map +1 -1
- package/dist/Pull.d.ts +24 -18
- package/dist/Pull.d.ts.map +1 -1
- package/dist/Pull.js +11 -9
- package/dist/Pull.js.map +1 -1
- package/dist/Queue.d.ts +200 -159
- package/dist/Queue.d.ts.map +1 -1
- package/dist/Queue.js +162 -132
- package/dist/Queue.js.map +1 -1
- package/dist/Random.d.ts +49 -74
- package/dist/Random.d.ts.map +1 -1
- package/dist/Random.js +35 -54
- package/dist/Random.js.map +1 -1
- package/dist/RcMap.d.ts +121 -63
- package/dist/RcMap.d.ts.map +1 -1
- package/dist/RcMap.js +42 -21
- package/dist/RcMap.js.map +1 -1
- package/dist/RcRef.d.ts +24 -13
- package/dist/RcRef.d.ts.map +1 -1
- package/dist/RcRef.js +15 -9
- package/dist/RcRef.js.map +1 -1
- package/dist/Record.d.ts +361 -466
- package/dist/Record.d.ts.map +1 -1
- package/dist/Record.js +163 -216
- package/dist/Record.js.map +1 -1
- package/dist/Redactable.d.ts +6 -2
- package/dist/Redactable.d.ts.map +1 -1
- package/dist/Redactable.js +7 -2
- package/dist/Redactable.js.map +1 -1
- package/dist/Redacted.d.ts +25 -25
- package/dist/Redacted.d.ts.map +1 -1
- package/dist/Redacted.js +19 -20
- package/dist/Redacted.js.map +1 -1
- package/dist/Reducer.d.ts +8 -15
- package/dist/Reducer.d.ts.map +1 -1
- package/dist/Reducer.js +6 -12
- package/dist/Reducer.js.map +1 -1
- package/dist/Ref.d.ts +95 -165
- package/dist/Ref.d.ts.map +1 -1
- package/dist/Ref.js +75 -122
- package/dist/Ref.js.map +1 -1
- package/dist/References.d.ts +102 -213
- package/dist/References.d.ts.map +1 -1
- package/dist/References.js +102 -213
- package/dist/References.js.map +1 -1
- package/dist/RegExp.d.ts +10 -14
- package/dist/RegExp.d.ts.map +1 -1
- package/dist/RegExp.js +10 -14
- package/dist/RegExp.js.map +1 -1
- package/dist/Request.d.ts +31 -21
- package/dist/Request.d.ts.map +1 -1
- package/dist/Request.js +25 -19
- package/dist/Request.js.map +1 -1
- package/dist/RequestResolver.d.ts +201 -90
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +87 -41
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Resource.js.map +1 -1
- package/dist/Result.d.ts +302 -470
- package/dist/Result.d.ts.map +1 -1
- package/dist/Result.js +135 -218
- package/dist/Result.js.map +1 -1
- package/dist/Runtime.d.ts +50 -75
- package/dist/Runtime.d.ts.map +1 -1
- package/dist/Runtime.js +39 -60
- package/dist/Runtime.js.map +1 -1
- package/dist/Schedule.d.ts +290 -1636
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +162 -803
- package/dist/Schedule.js.map +1 -1
- package/dist/Scheduler.d.ts +5 -5
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js +18 -6
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +1835 -1060
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +2708 -1050
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +29 -52
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +537 -391
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaError.d.ts +7 -6
- package/dist/SchemaError.d.ts.map +1 -1
- package/dist/SchemaError.js +8 -7
- package/dist/SchemaError.js.map +1 -1
- package/dist/SchemaGetter.d.ts +230 -185
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +252 -209
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaIssue.d.ts +62 -190
- package/dist/SchemaIssue.d.ts.map +1 -1
- package/dist/SchemaIssue.js +74 -266
- package/dist/SchemaIssue.js.map +1 -1
- package/dist/SchemaParser.d.ts +2 -2
- package/dist/SchemaParser.d.ts.map +1 -1
- package/dist/SchemaParser.js +123 -86
- package/dist/SchemaParser.js.map +1 -1
- package/dist/SchemaRepresentation.d.ts +398 -1513
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +290 -2854
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +116 -76
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +123 -88
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/Scope.d.ts +123 -151
- package/dist/Scope.d.ts.map +1 -1
- package/dist/Scope.js +72 -92
- package/dist/Scope.js.map +1 -1
- package/dist/ScopedCache.js.map +1 -1
- package/dist/ScopedRef.d.ts +3 -3
- package/dist/ScopedRef.js +2 -2
- package/dist/ScopedRef.js.map +1 -1
- package/dist/Semaphore.d.ts +101 -13
- package/dist/Semaphore.d.ts.map +1 -1
- package/dist/Semaphore.js +78 -39
- package/dist/Semaphore.js.map +1 -1
- package/dist/Sink.d.ts +117 -107
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js +107 -100
- package/dist/Sink.js.map +1 -1
- package/dist/Stdio.d.ts +1 -1
- package/dist/Stdio.js.map +1 -1
- package/dist/Stream.d.ts +2430 -2958
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +1124 -1397
- package/dist/Stream.js.map +1 -1
- package/dist/String.d.ts +262 -308
- package/dist/String.d.ts.map +1 -1
- package/dist/String.js +184 -215
- package/dist/String.js.map +1 -1
- package/dist/Struct.d.ts +109 -114
- package/dist/Struct.d.ts.map +1 -1
- package/dist/Struct.js +46 -54
- package/dist/Struct.js.map +1 -1
- package/dist/SubscriptionRef.d.ts +282 -250
- package/dist/SubscriptionRef.d.ts.map +1 -1
- package/dist/SubscriptionRef.js +104 -92
- package/dist/SubscriptionRef.js.map +1 -1
- package/dist/Symbol.d.ts +3 -3
- package/dist/Symbol.js +3 -3
- package/dist/Symbol.js.map +1 -1
- package/dist/SynchronizedRef.js.map +1 -1
- package/dist/Take.js.map +1 -1
- package/dist/Terminal.d.ts +2 -2
- package/dist/Terminal.js +1 -1
- package/dist/Terminal.js.map +1 -1
- package/dist/Tracer.d.ts +100 -54
- package/dist/Tracer.d.ts.map +1 -1
- package/dist/Tracer.js +41 -24
- package/dist/Tracer.js.map +1 -1
- package/dist/Trie.d.ts +287 -679
- package/dist/Trie.d.ts.map +1 -1
- package/dist/Trie.js +109 -251
- package/dist/Trie.js.map +1 -1
- package/dist/Tuple.d.ts +92 -127
- package/dist/Tuple.d.ts.map +1 -1
- package/dist/Tuple.js +42 -57
- package/dist/Tuple.js.map +1 -1
- package/dist/TxChunk.d.ts +201 -121
- package/dist/TxChunk.d.ts.map +1 -1
- package/dist/TxChunk.js +85 -56
- package/dist/TxChunk.js.map +1 -1
- package/dist/TxDeferred.d.ts +62 -46
- package/dist/TxDeferred.d.ts.map +1 -1
- package/dist/TxDeferred.js +30 -22
- package/dist/TxDeferred.js.map +1 -1
- package/dist/TxHashMap.d.ts +631 -779
- package/dist/TxHashMap.d.ts.map +1 -1
- package/dist/TxHashMap.js +268 -330
- package/dist/TxHashMap.js.map +1 -1
- package/dist/TxHashSet.d.ts +297 -236
- package/dist/TxHashSet.d.ts.map +1 -1
- package/dist/TxHashSet.js +130 -100
- package/dist/TxHashSet.js.map +1 -1
- package/dist/TxPriorityQueue.d.ts +126 -95
- package/dist/TxPriorityQueue.d.ts.map +1 -1
- package/dist/TxPriorityQueue.js +74 -56
- package/dist/TxPriorityQueue.js.map +1 -1
- package/dist/TxPubSub.d.ts +101 -88
- package/dist/TxPubSub.d.ts.map +1 -1
- package/dist/TxPubSub.js +87 -66
- package/dist/TxPubSub.js.map +1 -1
- package/dist/TxQueue.d.ts +200 -180
- package/dist/TxQueue.d.ts.map +1 -1
- package/dist/TxQueue.js +160 -136
- package/dist/TxQueue.js.map +1 -1
- package/dist/TxReentrantLock.d.ts +97 -66
- package/dist/TxReentrantLock.d.ts.map +1 -1
- package/dist/TxReentrantLock.js +67 -45
- package/dist/TxReentrantLock.js.map +1 -1
- package/dist/TxRef.d.ts +51 -32
- package/dist/TxRef.d.ts.map +1 -1
- package/dist/TxRef.js +23 -15
- package/dist/TxRef.js.map +1 -1
- package/dist/TxSemaphore.d.ts +129 -95
- package/dist/TxSemaphore.d.ts.map +1 -1
- package/dist/TxSemaphore.js +85 -70
- package/dist/TxSemaphore.js.map +1 -1
- package/dist/TxSubscriptionRef.d.ts +97 -70
- package/dist/TxSubscriptionRef.d.ts.map +1 -1
- package/dist/TxSubscriptionRef.js +44 -34
- package/dist/TxSubscriptionRef.js.map +1 -1
- package/dist/Types.d.ts +127 -70
- package/dist/Types.d.ts.map +1 -1
- package/dist/UndefinedOr.js.map +1 -1
- package/dist/Unify.d.ts +45 -65
- package/dist/Unify.d.ts.map +1 -1
- package/dist/Unify.js +6 -9
- package/dist/Unify.js.map +1 -1
- package/dist/Utils.d.ts +23 -16
- package/dist/Utils.d.ts.map +1 -1
- package/dist/Utils.js +3 -7
- package/dist/Utils.js.map +1 -1
- package/dist/index.d.ts +0 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -4
- package/dist/index.js.map +1 -1
- package/dist/internal/array.js.map +1 -1
- package/dist/internal/core.js +3 -2
- package/dist/internal/core.js.map +1 -1
- package/dist/internal/dateTime.js +4 -0
- package/dist/internal/dateTime.js.map +1 -1
- package/dist/internal/doNotation.js.map +1 -1
- package/dist/internal/effect.js +141 -61
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/equal.js.map +1 -1
- package/dist/internal/errors.js.map +1 -1
- package/dist/internal/executionPlan.js.map +1 -1
- package/dist/internal/hashMap.js.map +1 -1
- package/dist/internal/hashSet.js.map +1 -1
- package/dist/internal/layer.js.map +1 -1
- package/dist/internal/matcher.js +1 -1
- package/dist/internal/matcher.js.map +1 -1
- package/dist/internal/metric.js.map +1 -1
- package/dist/internal/option.js.map +1 -1
- package/dist/internal/persistence.d.ts +2 -0
- package/dist/internal/persistence.d.ts.map +1 -0
- package/dist/internal/persistence.js +3 -0
- package/dist/internal/persistence.js.map +1 -0
- package/dist/internal/random.js.map +1 -1
- package/dist/internal/rcRef.js.map +1 -1
- package/dist/internal/record.d.ts +0 -3
- package/dist/internal/record.d.ts.map +1 -1
- package/dist/internal/record.js +10 -5
- package/dist/internal/record.js.map +1 -1
- package/dist/internal/redacted.js.map +1 -1
- package/dist/internal/references.js +3 -4
- package/dist/internal/references.js.map +1 -1
- package/dist/internal/request.js.map +1 -1
- package/dist/internal/result.js.map +1 -1
- package/dist/internal/schedule.js.map +1 -1
- package/dist/internal/schema/annotations.js +12 -0
- package/dist/internal/schema/annotations.js.map +1 -1
- package/dist/internal/schema/cause.js.map +1 -1
- package/dist/internal/schema/fromJsonSchemaDocument.d.ts +2 -0
- package/dist/internal/schema/fromJsonSchemaDocument.d.ts.map +1 -0
- package/dist/internal/schema/fromJsonSchemaDocument.js +745 -0
- package/dist/internal/schema/fromJsonSchemaDocument.js.map +1 -0
- package/dist/internal/schema/fromRepresentation.d.ts +2 -0
- package/dist/internal/schema/fromRepresentation.d.ts.map +1 -0
- package/dist/internal/schema/fromRepresentation.js +245 -0
- package/dist/internal/schema/fromRepresentation.js.map +1 -0
- package/dist/internal/schema/parser.d.ts +14 -0
- package/dist/internal/schema/parser.d.ts.map +1 -0
- package/dist/internal/schema/parser.js +13 -0
- package/dist/internal/schema/parser.js.map +1 -0
- package/dist/internal/schema/schema.js +28 -40
- package/dist/internal/schema/schema.js.map +1 -1
- package/dist/internal/schema/{arbitrary.d.ts → toArbitrary.d.ts} +1 -1
- package/dist/internal/schema/toArbitrary.d.ts.map +1 -0
- package/dist/internal/schema/{arbitrary.js → toArbitrary.js} +8 -9
- package/dist/internal/schema/toArbitrary.js.map +1 -0
- package/dist/internal/schema/toCodeDocument.d.ts +2 -0
- package/dist/internal/schema/toCodeDocument.d.ts.map +1 -0
- package/dist/internal/schema/toCodeDocument.js +438 -0
- package/dist/internal/schema/toCodeDocument.js.map +1 -0
- package/dist/internal/schema/toEquivalence.d.ts +2 -0
- package/dist/internal/schema/toEquivalence.d.ts.map +1 -0
- package/dist/internal/schema/{equivalence.js → toEquivalence.js} +15 -13
- package/dist/internal/schema/toEquivalence.js.map +1 -0
- package/dist/internal/schema/toJsonSchemaDocument.d.ts +2 -0
- package/dist/internal/schema/toJsonSchemaDocument.d.ts.map +1 -0
- package/dist/internal/schema/toJsonSchemaDocument.js +508 -0
- package/dist/internal/schema/toJsonSchemaDocument.js.map +1 -0
- package/dist/internal/schema/toRepresentation.d.ts +2 -0
- package/dist/internal/schema/toRepresentation.d.ts.map +1 -0
- package/dist/internal/schema/toRepresentation.js +349 -0
- package/dist/internal/schema/toRepresentation.js.map +1 -0
- package/dist/internal/stackTraceLimit.js +3 -6
- package/dist/internal/stackTraceLimit.js.map +1 -1
- package/dist/internal/stream.js.map +1 -1
- package/dist/internal/tracer.js.map +1 -1
- package/dist/internal/trie.js +13 -9
- package/dist/internal/trie.js.map +1 -1
- package/dist/testing/FastCheck.d.ts +8 -7
- package/dist/testing/FastCheck.d.ts.map +1 -1
- package/dist/testing/FastCheck.js +8 -7
- package/dist/testing/FastCheck.js.map +1 -1
- package/dist/testing/TestClock.d.ts +57 -28
- package/dist/testing/TestClock.d.ts.map +1 -1
- package/dist/testing/TestClock.js +54 -19
- package/dist/testing/TestClock.js.map +1 -1
- package/dist/testing/TestConsole.d.ts +32 -31
- package/dist/testing/TestConsole.d.ts.map +1 -1
- package/dist/testing/TestConsole.js +24 -22
- package/dist/testing/TestConsole.js.map +1 -1
- package/dist/testing/TestSchema.d.ts +29 -29
- package/dist/testing/TestSchema.js +25 -25
- package/dist/testing/TestSchema.js.map +1 -1
- package/dist/testing/index.js.map +1 -1
- package/dist/unstable/ai/AiError.d.ts +121 -144
- package/dist/unstable/ai/AiError.d.ts.map +1 -1
- package/dist/unstable/ai/AiError.js +99 -121
- package/dist/unstable/ai/AiError.js.map +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +22 -7
- package/dist/unstable/ai/AnthropicStructuredOutput.d.ts.map +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.js +87 -317
- package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
- package/dist/unstable/ai/Chat.d.ts +132 -97
- package/dist/unstable/ai/Chat.d.ts.map +1 -1
- package/dist/unstable/ai/Chat.js +55 -51
- package/dist/unstable/ai/Chat.js.map +1 -1
- package/dist/unstable/ai/EmbeddingModel.d.ts +1 -1
- package/dist/unstable/ai/EmbeddingModel.js +1 -1
- package/dist/unstable/ai/EmbeddingModel.js.map +1 -1
- package/dist/unstable/ai/IdGenerator.d.ts +32 -28
- package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
- package/dist/unstable/ai/IdGenerator.js +26 -21
- package/dist/unstable/ai/IdGenerator.js.map +1 -1
- package/dist/unstable/ai/LanguageModel.d.ts +111 -68
- package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
- package/dist/unstable/ai/LanguageModel.js +123 -81
- package/dist/unstable/ai/LanguageModel.js.map +1 -1
- package/dist/unstable/ai/McpProtocol.d.ts +30 -0
- package/dist/unstable/ai/McpProtocol.d.ts.map +1 -0
- package/dist/unstable/ai/McpProtocol.js +20 -0
- package/dist/unstable/ai/McpProtocol.js.map +1 -0
- package/dist/unstable/ai/McpSchema.d.ts +316 -250
- package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
- package/dist/unstable/ai/McpSchema.js +71 -63
- package/dist/unstable/ai/McpSchema.js.map +1 -1
- package/dist/unstable/ai/McpServer.d.ts +71 -62
- package/dist/unstable/ai/McpServer.d.ts.map +1 -1
- package/dist/unstable/ai/McpServer.js +765 -245
- package/dist/unstable/ai/McpServer.js.map +1 -1
- package/dist/unstable/ai/Model.d.ts +8 -19
- package/dist/unstable/ai/Model.d.ts.map +1 -1
- package/dist/unstable/ai/Model.js +9 -20
- package/dist/unstable/ai/Model.js.map +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +33 -11
- package/dist/unstable/ai/OpenAiStructuredOutput.d.ts.map +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.js +194 -378
- package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
- package/dist/unstable/ai/Prompt.d.ts +112 -38
- package/dist/unstable/ai/Prompt.d.ts.map +1 -1
- package/dist/unstable/ai/Prompt.js +53 -17
- package/dist/unstable/ai/Prompt.js.map +1 -1
- package/dist/unstable/ai/Response.d.ts +47 -33
- package/dist/unstable/ai/Response.d.ts.map +1 -1
- package/dist/unstable/ai/Response.js +23 -18
- package/dist/unstable/ai/Response.js.map +1 -1
- package/dist/unstable/ai/ResponseIdTracker.js.map +1 -1
- package/dist/unstable/ai/Telemetry.d.ts +46 -13
- package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
- package/dist/unstable/ai/Telemetry.js +18 -7
- package/dist/unstable/ai/Telemetry.js.map +1 -1
- package/dist/unstable/ai/Tokenizer.d.ts +14 -3
- package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
- package/dist/unstable/ai/Tokenizer.js +10 -2
- package/dist/unstable/ai/Tokenizer.js.map +1 -1
- package/dist/unstable/ai/Tool.d.ts +63 -44
- package/dist/unstable/ai/Tool.d.ts.map +1 -1
- package/dist/unstable/ai/Tool.js +59 -42
- package/dist/unstable/ai/Tool.js.map +1 -1
- package/dist/unstable/ai/Toolkit.d.ts +35 -9
- package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
- package/dist/unstable/ai/Toolkit.js +32 -14
- package/dist/unstable/ai/Toolkit.js.map +1 -1
- package/dist/unstable/ai/index.d.ts +4 -0
- package/dist/unstable/ai/index.d.ts.map +1 -1
- package/dist/unstable/ai/index.js +4 -0
- package/dist/unstable/ai/index.js.map +1 -1
- package/dist/unstable/ai/internal/codec-transformer.js +15 -12
- package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
- package/dist/unstable/ai/internal/mcpProtocol.d.ts +21 -0
- package/dist/unstable/ai/internal/mcpProtocol.d.ts.map +1 -0
- package/dist/unstable/ai/internal/mcpProtocol.js +22 -0
- package/dist/unstable/ai/internal/mcpProtocol.js.map +1 -0
- package/dist/unstable/ai/internal/mcpProtocolRegistry.d.ts +2 -0
- package/dist/unstable/ai/internal/mcpProtocolRegistry.d.ts.map +1 -0
- package/dist/unstable/ai/internal/mcpProtocolRegistry.js +32 -0
- package/dist/unstable/ai/internal/mcpProtocolRegistry.js.map +1 -0
- package/dist/unstable/ai/internal/structured-output.d.ts +2 -0
- package/dist/unstable/ai/internal/structured-output.d.ts.map +1 -0
- package/dist/unstable/ai/internal/structured-output.js +315 -0
- package/dist/unstable/ai/internal/structured-output.js.map +1 -0
- package/dist/unstable/cli/Argument.d.ts +273 -69
- package/dist/unstable/cli/Argument.d.ts.map +1 -1
- package/dist/unstable/cli/Argument.js +111 -33
- package/dist/unstable/cli/Argument.js.map +1 -1
- package/dist/unstable/cli/CliConfig.js.map +1 -1
- package/dist/unstable/cli/CliError.d.ts +105 -74
- package/dist/unstable/cli/CliError.d.ts.map +1 -1
- package/dist/unstable/cli/CliError.js +98 -63
- package/dist/unstable/cli/CliError.js.map +1 -1
- package/dist/unstable/cli/CliOutput.d.ts +35 -54
- package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
- package/dist/unstable/cli/CliOutput.js +26 -42
- package/dist/unstable/cli/CliOutput.js.map +1 -1
- package/dist/unstable/cli/Command.d.ts +705 -107
- package/dist/unstable/cli/Command.d.ts.map +1 -1
- package/dist/unstable/cli/Command.js +252 -47
- package/dist/unstable/cli/Command.js.map +1 -1
- package/dist/unstable/cli/Completions.js.map +1 -1
- package/dist/unstable/cli/Flag.d.ts +418 -138
- package/dist/unstable/cli/Flag.d.ts.map +1 -1
- package/dist/unstable/cli/Flag.js +197 -71
- package/dist/unstable/cli/Flag.js.map +1 -1
- package/dist/unstable/cli/GlobalFlag.d.ts +1 -1
- package/dist/unstable/cli/GlobalFlag.js.map +1 -1
- package/dist/unstable/cli/HelpDoc.d.ts +12 -4
- package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
- package/dist/unstable/cli/Param.d.ts +292 -78
- package/dist/unstable/cli/Param.d.ts.map +1 -1
- package/dist/unstable/cli/Param.js +131 -49
- package/dist/unstable/cli/Param.js.map +1 -1
- package/dist/unstable/cli/Primitive.d.ts +370 -149
- package/dist/unstable/cli/Primitive.d.ts.map +1 -1
- package/dist/unstable/cli/Primitive.js +345 -137
- package/dist/unstable/cli/Primitive.js.map +1 -1
- package/dist/unstable/cli/Prompt.d.ts +23 -14
- package/dist/unstable/cli/Prompt.d.ts.map +1 -1
- package/dist/unstable/cli/Prompt.js +23 -14
- package/dist/unstable/cli/Prompt.js.map +1 -1
- package/dist/unstable/cli/index.js.map +1 -1
- package/dist/unstable/cli/internal/ansi.js.map +1 -1
- package/dist/unstable/cli/internal/auto-suggest.js.map +1 -1
- package/dist/unstable/cli/internal/command.d.ts +3 -1
- package/dist/unstable/cli/internal/command.d.ts.map +1 -1
- package/dist/unstable/cli/internal/command.js +11 -4
- package/dist/unstable/cli/internal/command.js.map +1 -1
- package/dist/unstable/cli/internal/completions/bash.js.map +1 -1
- package/dist/unstable/cli/internal/completions/descriptor.js.map +1 -1
- package/dist/unstable/cli/internal/completions/fish.js.map +1 -1
- package/dist/unstable/cli/internal/completions/zsh.js.map +1 -1
- package/dist/unstable/cli/internal/config.d.ts +0 -48
- package/dist/unstable/cli/internal/config.d.ts.map +1 -1
- package/dist/unstable/cli/internal/config.js +8 -10
- package/dist/unstable/cli/internal/config.js.map +1 -1
- package/dist/unstable/cli/internal/help.js.map +1 -1
- package/dist/unstable/cli/internal/lexer.js +17 -7
- package/dist/unstable/cli/internal/lexer.js.map +1 -1
- package/dist/unstable/cli/internal/parser.js +2 -2
- package/dist/unstable/cli/internal/parser.js.map +1 -1
- package/dist/unstable/cli/internal/wizard.js.map +1 -1
- package/dist/unstable/cluster/ClusterCron.js.map +1 -1
- package/dist/unstable/cluster/ClusterError.js.map +1 -1
- package/dist/unstable/cluster/ClusterMetrics.js.map +1 -1
- package/dist/unstable/cluster/ClusterSchema.d.ts +8 -8
- package/dist/unstable/cluster/ClusterSchema.js +8 -8
- package/dist/unstable/cluster/ClusterSchema.js.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.js +6 -2
- package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/unstable/cluster/DeliverAt.js.map +1 -1
- package/dist/unstable/cluster/Entity.d.ts +10 -10
- package/dist/unstable/cluster/Entity.d.ts.map +1 -1
- package/dist/unstable/cluster/Entity.js +9 -9
- package/dist/unstable/cluster/Entity.js.map +1 -1
- package/dist/unstable/cluster/EntityAddress.js.map +1 -1
- package/dist/unstable/cluster/EntityId.js.map +1 -1
- package/dist/unstable/cluster/EntityProxy.d.ts +4 -2
- package/dist/unstable/cluster/EntityProxy.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityProxy.js +4 -2
- package/dist/unstable/cluster/EntityProxy.js.map +1 -1
- package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
- package/dist/unstable/cluster/EntityResource.d.ts +2 -2
- package/dist/unstable/cluster/EntityResource.js +2 -2
- package/dist/unstable/cluster/EntityResource.js.map +1 -1
- package/dist/unstable/cluster/EntityType.js.map +1 -1
- package/dist/unstable/cluster/Envelope.d.ts +3 -3
- package/dist/unstable/cluster/Envelope.d.ts.map +1 -1
- package/dist/unstable/cluster/Envelope.js +5 -4
- package/dist/unstable/cluster/Envelope.js.map +1 -1
- package/dist/unstable/cluster/HttpRunner.d.ts +2 -2
- package/dist/unstable/cluster/HttpRunner.d.ts.map +1 -1
- package/dist/unstable/cluster/HttpRunner.js +6 -4
- package/dist/unstable/cluster/HttpRunner.js.map +1 -1
- package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
- package/dist/unstable/cluster/MachineId.js.map +1 -1
- package/dist/unstable/cluster/Message.d.ts +9 -9
- package/dist/unstable/cluster/Message.js +6 -6
- package/dist/unstable/cluster/Message.js.map +1 -1
- package/dist/unstable/cluster/MessageStorage.d.ts +15 -15
- package/dist/unstable/cluster/MessageStorage.js +5 -5
- package/dist/unstable/cluster/MessageStorage.js.map +1 -1
- package/dist/unstable/cluster/Reply.d.ts.map +1 -1
- package/dist/unstable/cluster/Reply.js +5 -5
- package/dist/unstable/cluster/Reply.js.map +1 -1
- package/dist/unstable/cluster/Runner.d.ts +1 -1
- package/dist/unstable/cluster/Runner.js +1 -1
- package/dist/unstable/cluster/Runner.js.map +1 -1
- package/dist/unstable/cluster/RunnerAddress.d.ts +1 -1
- package/dist/unstable/cluster/RunnerAddress.js +1 -1
- package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
- package/dist/unstable/cluster/RunnerHealth.d.ts +1 -1
- package/dist/unstable/cluster/RunnerHealth.js +1 -1
- package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
- package/dist/unstable/cluster/RunnerServer.d.ts +2 -1
- package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerServer.js +16 -16
- package/dist/unstable/cluster/RunnerServer.js.map +1 -1
- package/dist/unstable/cluster/RunnerStorage.d.ts +2 -2
- package/dist/unstable/cluster/RunnerStorage.js +1 -1
- package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/Runners.d.ts +6 -6
- package/dist/unstable/cluster/Runners.d.ts.map +1 -1
- package/dist/unstable/cluster/Runners.js +19 -10
- package/dist/unstable/cluster/Runners.js.map +1 -1
- package/dist/unstable/cluster/ShardId.js +1 -1
- package/dist/unstable/cluster/ShardId.js.map +1 -1
- package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
- package/dist/unstable/cluster/Sharding.js +128 -26
- package/dist/unstable/cluster/Sharding.js.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.d.ts +13 -5
- package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.js +3 -3
- package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
- package/dist/unstable/cluster/ShardingRegistrationEvent.js.map +1 -1
- package/dist/unstable/cluster/SingleRunner.d.ts +4 -2
- package/dist/unstable/cluster/SingleRunner.d.ts.map +1 -1
- package/dist/unstable/cluster/SingleRunner.js +2 -1
- package/dist/unstable/cluster/SingleRunner.js.map +1 -1
- package/dist/unstable/cluster/Singleton.js.map +1 -1
- package/dist/unstable/cluster/SingletonAddress.d.ts +1 -1
- package/dist/unstable/cluster/SingletonAddress.js +1 -1
- package/dist/unstable/cluster/SingletonAddress.js.map +1 -1
- package/dist/unstable/cluster/Snowflake.d.ts +8 -8
- package/dist/unstable/cluster/Snowflake.js +8 -8
- package/dist/unstable/cluster/Snowflake.js.map +1 -1
- package/dist/unstable/cluster/SocketRunner.js.map +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.d.ts +7 -4
- package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.js +56 -25
- package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
- package/dist/unstable/cluster/SqlRunnerStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/SqlRunnerStorage.js +127 -65
- package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/TestRunner.js.map +1 -1
- package/dist/unstable/cluster/index.js.map +1 -1
- package/dist/unstable/cluster/internal/entityManager.js +24 -12
- package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
- package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
- package/dist/unstable/cluster/internal/hash.js.map +1 -1
- package/dist/unstable/cluster/internal/interruptors.js.map +1 -1
- package/dist/unstable/cluster/internal/resourceMap.js.map +1 -1
- package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
- package/dist/unstable/cluster/internal/shardLock.d.ts +2 -0
- package/dist/unstable/cluster/internal/shardLock.d.ts.map +1 -0
- package/dist/unstable/cluster/internal/shardLock.js +4 -0
- package/dist/unstable/cluster/internal/shardLock.js.map +1 -0
- package/dist/unstable/devtools/DevTools.js.map +1 -1
- package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
- package/dist/unstable/devtools/DevToolsSchema.d.ts +20 -20
- package/dist/unstable/devtools/DevToolsSchema.d.ts.map +1 -1
- package/dist/unstable/devtools/DevToolsSchema.js +8 -5
- package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
- package/dist/unstable/devtools/DevToolsServer.js.map +1 -1
- package/dist/unstable/devtools/index.js.map +1 -1
- package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
- package/dist/unstable/encoding/Msgpack.js +6 -8
- package/dist/unstable/encoding/Msgpack.js.map +1 -1
- package/dist/unstable/encoding/Ndjson.js.map +1 -1
- package/dist/unstable/encoding/Sse.d.ts +72 -8
- package/dist/unstable/encoding/Sse.d.ts.map +1 -1
- package/dist/unstable/encoding/Sse.js +58 -8
- package/dist/unstable/encoding/Sse.js.map +1 -1
- package/dist/unstable/encoding/index.js.map +1 -1
- package/dist/unstable/eventlog/Event.d.ts +20 -20
- package/dist/unstable/eventlog/Event.js.map +1 -1
- package/dist/unstable/eventlog/EventGroup.d.ts +4 -4
- package/dist/unstable/eventlog/EventGroup.js.map +1 -1
- package/dist/unstable/eventlog/EventJournal.d.ts +16 -16
- package/dist/unstable/eventlog/EventJournal.js +14 -14
- package/dist/unstable/eventlog/EventJournal.js.map +1 -1
- package/dist/unstable/eventlog/EventLog.d.ts +3 -3
- package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLog.js +18 -14
- package/dist/unstable/eventlog/EventLog.js.map +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.d.ts +2 -2
- package/dist/unstable/eventlog/EventLogEncryption.js +2 -2
- package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
- package/dist/unstable/eventlog/EventLogMessage.d.ts +6 -6
- package/dist/unstable/eventlog/EventLogMessage.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogMessage.js +9 -4
- package/dist/unstable/eventlog/EventLogMessage.js.map +1 -1
- package/dist/unstable/eventlog/EventLogRemote.d.ts +15 -15
- package/dist/unstable/eventlog/EventLogRemote.js +1 -1
- package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServer.d.ts +11 -2
- package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServer.js +45 -21
- package/dist/unstable/eventlog/EventLogServer.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +4 -4
- package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServerEncrypted.js +13 -5
- package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +5 -5
- package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServerUnencrypted.js +14 -6
- package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -1
- package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +1 -1
- package/dist/unstable/eventlog/EventLogSessionAuth.js +1 -1
- package/dist/unstable/eventlog/EventLogSessionAuth.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventJournal.js +2 -2
- package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js +3 -3
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
- package/dist/unstable/eventlog/index.js.map +1 -1
- package/dist/unstable/eventlog/internal/identityRootSecretDerivation.js.map +1 -1
- package/dist/unstable/http/Cookies.d.ts +2 -2
- package/dist/unstable/http/Cookies.d.ts.map +1 -1
- package/dist/unstable/http/Cookies.js +54 -40
- package/dist/unstable/http/Cookies.js.map +1 -1
- package/dist/unstable/http/Etag.d.ts +1 -1
- package/dist/unstable/http/Etag.js +1 -1
- package/dist/unstable/http/Etag.js.map +1 -1
- package/dist/unstable/http/FetchHttpClient.d.ts.map +1 -1
- package/dist/unstable/http/FetchHttpClient.js.map +1 -1
- package/dist/unstable/http/Headers.d.ts +2 -2
- package/dist/unstable/http/Headers.js +10 -10
- package/dist/unstable/http/Headers.js.map +1 -1
- package/dist/unstable/http/HttpBody.d.ts +5 -3
- package/dist/unstable/http/HttpBody.d.ts.map +1 -1
- package/dist/unstable/http/HttpBody.js +11 -5
- package/dist/unstable/http/HttpBody.js.map +1 -1
- package/dist/unstable/http/HttpClient.d.ts +51 -44
- package/dist/unstable/http/HttpClient.d.ts.map +1 -1
- package/dist/unstable/http/HttpClient.js +46 -17
- package/dist/unstable/http/HttpClient.js.map +1 -1
- package/dist/unstable/http/HttpClientError.js.map +1 -1
- package/dist/unstable/http/HttpClientRequest.d.ts +44 -0
- package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientRequest.js +16 -0
- package/dist/unstable/http/HttpClientRequest.js.map +1 -1
- package/dist/unstable/http/HttpClientResponse.d.ts +4 -4
- package/dist/unstable/http/HttpClientResponse.js +2 -2
- package/dist/unstable/http/HttpClientResponse.js.map +1 -1
- package/dist/unstable/http/HttpEffect.d.ts +6 -6
- package/dist/unstable/http/HttpEffect.js +3 -3
- package/dist/unstable/http/HttpEffect.js.map +1 -1
- package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
- package/dist/unstable/http/HttpMethod.d.ts +6 -9
- package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
- package/dist/unstable/http/HttpMethod.js +6 -9
- package/dist/unstable/http/HttpMethod.js.map +1 -1
- package/dist/unstable/http/HttpMiddleware.d.ts +75 -9
- package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/unstable/http/HttpMiddleware.js +164 -39
- package/dist/unstable/http/HttpMiddleware.js.map +1 -1
- package/dist/unstable/http/HttpPlatform.d.ts +76 -0
- package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
- package/dist/unstable/http/HttpPlatform.js +32 -0
- package/dist/unstable/http/HttpPlatform.js.map +1 -1
- package/dist/unstable/http/HttpRouter.d.ts +88 -89
- package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
- package/dist/unstable/http/HttpRouter.js +78 -79
- package/dist/unstable/http/HttpRouter.js.map +1 -1
- package/dist/unstable/http/HttpServer.d.ts +13 -13
- package/dist/unstable/http/HttpServer.js +6 -6
- package/dist/unstable/http/HttpServer.js.map +1 -1
- package/dist/unstable/http/HttpServerError.d.ts +2 -2
- package/dist/unstable/http/HttpServerError.js +2 -2
- package/dist/unstable/http/HttpServerError.js.map +1 -1
- package/dist/unstable/http/HttpServerRequest.d.ts +4 -4
- package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerRequest.js +9 -8
- package/dist/unstable/http/HttpServerRequest.js.map +1 -1
- package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
- package/dist/unstable/http/HttpServerResponse.d.ts +22 -0
- package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerResponse.js +10 -0
- package/dist/unstable/http/HttpServerResponse.js.map +1 -1
- package/dist/unstable/http/HttpStaticServer.d.ts +35 -7
- package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -1
- package/dist/unstable/http/HttpStaticServer.js +35 -7
- package/dist/unstable/http/HttpStaticServer.js.map +1 -1
- package/dist/unstable/http/HttpTraceContext.js.map +1 -1
- package/dist/unstable/http/Multipart.d.ts +6 -6
- package/dist/unstable/http/Multipart.d.ts.map +1 -1
- package/dist/unstable/http/Multipart.js +22 -20
- package/dist/unstable/http/Multipart.js.map +1 -1
- package/dist/unstable/http/Template.js +1 -1
- package/dist/unstable/http/Template.js.map +1 -1
- package/dist/unstable/http/Url.d.ts +33 -63
- package/dist/unstable/http/Url.d.ts.map +1 -1
- package/dist/unstable/http/Url.js +14 -28
- package/dist/unstable/http/Url.js.map +1 -1
- package/dist/unstable/http/UrlParams.d.ts +10 -18
- package/dist/unstable/http/UrlParams.d.ts.map +1 -1
- package/dist/unstable/http/UrlParams.js +26 -31
- package/dist/unstable/http/UrlParams.js.map +1 -1
- package/dist/unstable/http/index.js.map +1 -1
- package/dist/unstable/http/internal/compression.d.ts +2 -0
- package/dist/unstable/http/internal/compression.d.ts.map +1 -0
- package/dist/unstable/http/internal/compression.js +155 -0
- package/dist/unstable/http/internal/compression.js.map +1 -0
- package/dist/unstable/http/internal/preResponseHandler.js.map +1 -1
- package/dist/unstable/httpapi/HttpApi.js +3 -3
- package/dist/unstable/httpapi/HttpApi.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.js +10 -11
- package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.d.ts +4 -5
- package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.js +16 -18
- package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +42 -42
- package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.d.ts +13 -13
- package/dist/unstable/httpapi/HttpApiError.js +13 -13
- package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.d.ts +15 -15
- package/dist/unstable/httpapi/HttpApiGroup.js +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +71 -24
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.js +57 -10
- package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiScalar.d.ts +0 -12
- package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSchema.d.ts +6 -6
- package/dist/unstable/httpapi/HttpApiSchema.js +4 -4
- package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSwagger.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiTest.js.map +1 -1
- package/dist/unstable/httpapi/OpenApi.d.ts +13 -13
- package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/OpenApi.js +50 -37
- package/dist/unstable/httpapi/OpenApi.js.map +1 -1
- package/dist/unstable/httpapi/index.js.map +1 -1
- package/dist/unstable/httpapi/internal/html.js.map +1 -1
- package/dist/unstable/httpapi/internal/httpApiScalar.js.map +1 -1
- package/dist/unstable/httpapi/internal/httpApiSwagger.js.map +1 -1
- package/dist/unstable/httpapi/internal/mediaType.js.map +1 -1
- package/dist/unstable/observability/Otlp.js.map +1 -1
- package/dist/unstable/observability/OtlpExporter.d.ts +70 -1
- package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpExporter.js +84 -6
- package/dist/unstable/observability/OtlpExporter.js.map +1 -1
- package/dist/unstable/observability/OtlpLogger.d.ts +4 -3
- package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpLogger.js +2 -2
- package/dist/unstable/observability/OtlpLogger.js.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.d.ts +11 -4
- package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.js +5 -2
- package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
- package/dist/unstable/observability/OtlpResource.d.ts +16 -7
- package/dist/unstable/observability/OtlpResource.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpResource.js +21 -12
- package/dist/unstable/observability/OtlpResource.js.map +1 -1
- package/dist/unstable/observability/OtlpSerialization.js.map +1 -1
- package/dist/unstable/observability/OtlpTracer.d.ts +4 -3
- package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpTracer.js +2 -2
- package/dist/unstable/observability/OtlpTracer.js.map +1 -1
- package/dist/unstable/observability/PrometheusMetrics.d.ts +13 -4
- package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/PrometheusMetrics.js +10 -3
- package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
- package/dist/unstable/observability/index.js.map +1 -1
- package/dist/unstable/observability/internal/otlpEnv.js +1 -1
- package/dist/unstable/observability/internal/otlpEnv.js.map +1 -1
- package/dist/unstable/observability/internal/otlpProtobuf.js.map +1 -1
- package/dist/unstable/observability/internal/protobuf.js +3 -0
- package/dist/unstable/observability/internal/protobuf.js.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.d.ts +8 -3
- package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.js +22 -13
- package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
- package/dist/unstable/persistence/Persistable.d.ts +8 -8
- package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
- package/dist/unstable/persistence/Persistable.js +2 -1
- package/dist/unstable/persistence/Persistable.js.map +1 -1
- package/dist/unstable/persistence/PersistedCache.js.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.d.ts +6 -6
- package/dist/unstable/persistence/PersistedQueue.js +6 -6
- package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
- package/dist/unstable/persistence/Persistence.d.ts +3 -3
- package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
- package/dist/unstable/persistence/Persistence.js +91 -15
- package/dist/unstable/persistence/Persistence.js.map +1 -1
- package/dist/unstable/persistence/RateLimiter.d.ts +28 -17
- package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
- package/dist/unstable/persistence/RateLimiter.js +26 -15
- package/dist/unstable/persistence/RateLimiter.js.map +1 -1
- package/dist/unstable/persistence/Redis.d.ts +2 -2
- package/dist/unstable/persistence/Redis.d.ts.map +1 -1
- package/dist/unstable/persistence/Redis.js +3 -3
- package/dist/unstable/persistence/Redis.js.map +1 -1
- package/dist/unstable/persistence/index.js.map +1 -1
- package/dist/unstable/process/ChildProcess.d.ts +64 -21
- package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcess.js +14 -5
- package/dist/unstable/process/ChildProcess.js.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.d.ts +21 -10
- package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.js +4 -2
- package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
- package/dist/unstable/process/index.js.map +1 -1
- package/dist/unstable/reactivity/AsyncResult.d.ts +8 -8
- package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
- package/dist/unstable/reactivity/AsyncResult.js +14 -13
- package/dist/unstable/reactivity/AsyncResult.js.map +1 -1
- package/dist/unstable/reactivity/Atom.d.ts +105 -19
- package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
- package/dist/unstable/reactivity/Atom.js +44 -12
- package/dist/unstable/reactivity/Atom.js.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.d.ts +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.js +4 -1
- package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
- package/dist/unstable/reactivity/AtomRef.js.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.js +25 -4
- package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.d.ts +1 -1
- package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.js +4 -1
- package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
- package/dist/unstable/reactivity/Hydration.d.ts +1 -1
- package/dist/unstable/reactivity/Hydration.js +1 -1
- package/dist/unstable/reactivity/Hydration.js.map +1 -1
- package/dist/unstable/reactivity/Reactivity.js.map +1 -1
- package/dist/unstable/reactivity/index.js.map +1 -1
- package/dist/unstable/rpc/Rpc.d.ts +35 -33
- package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
- package/dist/unstable/rpc/Rpc.js +4 -2
- package/dist/unstable/rpc/Rpc.js.map +1 -1
- package/dist/unstable/rpc/RpcClient.d.ts +12 -12
- package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClient.js +14 -12
- package/dist/unstable/rpc/RpcClient.js.map +1 -1
- package/dist/unstable/rpc/RpcClientError.js.map +1 -1
- package/dist/unstable/rpc/RpcGroup.d.ts +8 -8
- package/dist/unstable/rpc/RpcGroup.js +1 -1
- package/dist/unstable/rpc/RpcGroup.js.map +1 -1
- package/dist/unstable/rpc/RpcMessage.d.ts +31 -30
- package/dist/unstable/rpc/RpcMessage.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcMessage.js +6 -6
- package/dist/unstable/rpc/RpcMessage.js.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.d.ts +10 -10
- package/dist/unstable/rpc/RpcMiddleware.js +1 -1
- package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
- package/dist/unstable/rpc/RpcSchema.d.ts +4 -4
- package/dist/unstable/rpc/RpcSchema.js +3 -3
- package/dist/unstable/rpc/RpcSchema.js.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.d.ts +58 -7
- package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.js +175 -96
- package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
- package/dist/unstable/rpc/RpcServer.d.ts +13 -13
- package/dist/unstable/rpc/RpcServer.js +17 -13
- package/dist/unstable/rpc/RpcServer.js.map +1 -1
- package/dist/unstable/rpc/RpcTest.js.map +1 -1
- package/dist/unstable/rpc/RpcWorker.d.ts +5 -5
- package/dist/unstable/rpc/RpcWorker.js +4 -4
- package/dist/unstable/rpc/RpcWorker.js.map +1 -1
- package/dist/unstable/rpc/Utils.js.map +1 -1
- package/dist/unstable/rpc/index.js.map +1 -1
- package/dist/unstable/schema/Model.d.ts +52 -50
- package/dist/unstable/schema/Model.d.ts.map +1 -1
- package/dist/unstable/schema/Model.js +35 -33
- package/dist/unstable/schema/Model.js.map +1 -1
- package/dist/unstable/schema/VariantSchema.d.ts +6 -7
- package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
- package/dist/unstable/schema/VariantSchema.js +15 -12
- package/dist/unstable/schema/VariantSchema.js.map +1 -1
- package/dist/unstable/schema/index.js.map +1 -1
- package/dist/unstable/socket/Socket.d.ts +12 -4
- package/dist/unstable/socket/Socket.d.ts.map +1 -1
- package/dist/unstable/socket/Socket.js +10 -5
- package/dist/unstable/socket/Socket.js.map +1 -1
- package/dist/unstable/socket/SocketServer.js.map +1 -1
- package/dist/unstable/socket/index.js.map +1 -1
- package/dist/unstable/sql/Migrator.js.map +1 -1
- package/dist/unstable/sql/SqlClient.d.ts +1 -1
- package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
- package/dist/unstable/sql/SqlClient.js +2 -2
- package/dist/unstable/sql/SqlClient.js.map +1 -1
- package/dist/unstable/sql/SqlConnection.js.map +1 -1
- package/dist/unstable/sql/SqlError.d.ts +2 -2
- package/dist/unstable/sql/SqlError.js +2 -2
- package/dist/unstable/sql/SqlError.js.map +1 -1
- package/dist/unstable/sql/SqlModel.d.ts +2 -2
- package/dist/unstable/sql/SqlModel.js +2 -2
- package/dist/unstable/sql/SqlModel.js.map +1 -1
- package/dist/unstable/sql/SqlResolver.d.ts +5 -5
- package/dist/unstable/sql/SqlResolver.js +2 -2
- package/dist/unstable/sql/SqlResolver.js.map +1 -1
- package/dist/unstable/sql/SqlSchema.js.map +1 -1
- package/dist/unstable/sql/SqlStream.js.map +1 -1
- package/dist/unstable/sql/Statement.d.ts +6 -6
- package/dist/unstable/sql/Statement.d.ts.map +1 -1
- package/dist/unstable/sql/Statement.js +22 -21
- package/dist/unstable/sql/Statement.js.map +1 -1
- package/dist/unstable/sql/index.js.map +1 -1
- package/dist/unstable/workers/Transferable.d.ts +1 -1
- package/dist/unstable/workers/Transferable.js +1 -1
- package/dist/unstable/workers/Transferable.js.map +1 -1
- package/dist/unstable/workers/Worker.d.ts +2 -2
- package/dist/unstable/workers/Worker.js +2 -2
- package/dist/unstable/workers/Worker.js.map +1 -1
- package/dist/unstable/workers/WorkerError.d.ts +7 -7
- package/dist/unstable/workers/WorkerError.js +6 -6
- package/dist/unstable/workers/WorkerError.js.map +1 -1
- package/dist/unstable/workers/WorkerRunner.d.ts +1 -1
- package/dist/unstable/workers/WorkerRunner.js +1 -1
- package/dist/unstable/workers/WorkerRunner.js.map +1 -1
- package/dist/unstable/workers/index.js.map +1 -1
- package/dist/unstable/workflow/Activity.d.ts +2 -2
- package/dist/unstable/workflow/Activity.js +2 -2
- package/dist/unstable/workflow/Activity.js.map +1 -1
- package/dist/unstable/workflow/DurableClock.d.ts +1 -1
- package/dist/unstable/workflow/DurableClock.js +1 -1
- package/dist/unstable/workflow/DurableClock.js.map +1 -1
- package/dist/unstable/workflow/DurableDeferred.d.ts +10 -10
- package/dist/unstable/workflow/DurableDeferred.js +5 -5
- package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
- package/dist/unstable/workflow/DurableQueue.d.ts +22 -20
- package/dist/unstable/workflow/DurableQueue.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableQueue.js +22 -20
- package/dist/unstable/workflow/DurableQueue.js.map +1 -1
- package/dist/unstable/workflow/Workflow.d.ts +21 -21
- package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
- package/dist/unstable/workflow/Workflow.js +13 -14
- package/dist/unstable/workflow/Workflow.js.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.d.ts +1 -1
- package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
- package/dist/unstable/workflow/WorkflowProxy.d.ts +4 -2
- package/dist/unstable/workflow/WorkflowProxy.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowProxy.js +4 -2
- package/dist/unstable/workflow/WorkflowProxy.js.map +1 -1
- package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
- package/dist/unstable/workflow/index.js.map +1 -1
- package/dist/unstable/workflow/internal/crypto.js.map +1 -1
- package/package.json +5 -6
- package/src/Array.ts +1068 -1070
- package/src/BigDecimal.ts +433 -756
- package/src/BigInt.ts +213 -269
- package/src/Boolean.ts +146 -188
- package/src/Cache.ts +409 -255
- package/src/Cause.ts +167 -277
- package/src/Channel.ts +923 -830
- package/src/ChannelSchema.ts +1 -1
- package/src/Chunk.ts +841 -1181
- package/src/Clock.ts +181 -49
- package/src/Combiner.ts +20 -33
- package/src/Config.ts +618 -334
- package/src/ConfigProvider.ts +221 -127
- package/src/Console.ts +289 -39
- package/src/Context.ts +319 -378
- package/src/Cron.ts +68 -77
- package/src/Crypto.ts +13 -15
- package/src/Data.ts +63 -82
- package/src/DateTime.ts +564 -660
- package/src/Deferred.ts +253 -256
- package/src/Duration.ts +216 -308
- package/src/Effect.ts +2958 -3390
- package/src/Encoding.ts +22 -40
- package/src/Equal.ts +49 -39
- package/src/Equivalence.ts +103 -105
- package/src/ErrorReporter.ts +51 -27
- package/src/ExecutionPlan.ts +13 -55
- package/src/Exit.ts +116 -192
- package/src/Fiber.ts +81 -148
- package/src/FiberHandle.ts +155 -107
- package/src/FiberMap.ts +225 -174
- package/src/FiberSet.ts +124 -82
- package/src/FileSystem.ts +155 -263
- package/src/Filter.ts +61 -33
- package/src/Formatter.ts +54 -56
- package/src/Function.ts +76 -145
- package/src/Graph.ts +416 -770
- package/src/HKT.ts +12 -6
- package/src/Hash.ts +52 -83
- package/src/HashMap.ts +319 -411
- package/src/HashRing.ts +1 -0
- package/src/HashSet.ts +177 -284
- package/src/Inspectable.ts +12 -12
- package/src/Iterable.ts +622 -787
- package/src/JsonPatch.ts +60 -113
- package/src/JsonPointer.ts +8 -8
- package/src/JsonSchema.ts +405 -249
- package/src/Latch.ts +23 -35
- package/src/Layer.ts +359 -260
- package/src/LayerMap.ts +49 -29
- package/src/LayerRef.ts +6 -2
- package/src/LogLevel.ts +114 -214
- package/src/Logger.ts +347 -699
- package/src/ManagedRuntime.ts +20 -5
- package/src/Match.ts +217 -252
- package/src/Metric.ts +520 -1092
- package/src/MutableHashMap.ts +218 -255
- package/src/MutableHashSet.ts +84 -89
- package/src/MutableList.ts +73 -370
- package/src/MutableRef.ts +420 -243
- package/src/Newtype.ts +21 -14
- package/src/NonEmptyIterable.ts +7 -137
- package/src/Number.ts +196 -233
- package/src/Optic.ts +246 -385
- package/src/Option.ts +449 -813
- package/src/Order.ts +109 -109
- package/src/Ordering.ts +20 -23
- package/src/PartitionedSemaphore.ts +1 -4
- package/src/Path.ts +38 -41
- package/src/Pipeable.ts +6 -5
- package/src/PlatformError.ts +4 -4
- package/src/Pool.ts +4 -2
- package/src/Predicate.ts +200 -181
- package/src/PrimaryKey.ts +7 -7
- package/src/PubSub.ts +526 -552
- package/src/Pull.ts +24 -18
- package/src/Queue.ts +200 -159
- package/src/Random.ts +49 -74
- package/src/RcMap.ts +121 -63
- package/src/RcRef.ts +24 -13
- package/src/Record.ts +387 -487
- package/src/Redactable.ts +10 -3
- package/src/Redacted.ts +25 -25
- package/src/Reducer.ts +8 -15
- package/src/Ref.ts +221 -361
- package/src/References.ts +102 -214
- package/src/RegExp.ts +10 -14
- package/src/Request.ts +36 -28
- package/src/RequestResolver.ts +202 -91
- package/src/Result.ts +314 -485
- package/src/Runtime.ts +50 -75
- package/src/Schedule.ts +308 -1734
- package/src/Scheduler.ts +20 -7
- package/src/Schema.ts +3156 -1634
- package/src/SchemaAST.ts +676 -489
- package/src/SchemaError.ts +8 -7
- package/src/SchemaGetter.ts +277 -218
- package/src/SchemaIssue.ts +90 -276
- package/src/SchemaParser.ts +179 -116
- package/src/SchemaRepresentation.ts +698 -3417
- package/src/SchemaTransformation.ts +132 -91
- package/src/Scope.ts +123 -151
- package/src/ScopedRef.ts +4 -4
- package/src/Semaphore.ts +157 -54
- package/src/Sink.ts +128 -113
- package/src/Stdio.ts +1 -1
- package/src/Stream.ts +2665 -3142
- package/src/String.ts +275 -312
- package/src/Struct.ts +114 -118
- package/src/SubscriptionRef.ts +284 -252
- package/src/Symbol.ts +3 -3
- package/src/Terminal.ts +2 -2
- package/src/Tracer.ts +102 -55
- package/src/Trie.ts +287 -679
- package/src/Tuple.ts +92 -127
- package/src/TxChunk.ts +201 -121
- package/src/TxDeferred.ts +62 -46
- package/src/TxHashMap.ts +645 -799
- package/src/TxHashSet.ts +443 -356
- package/src/TxPriorityQueue.ts +130 -98
- package/src/TxPubSub.ts +107 -80
- package/src/TxQueue.ts +214 -183
- package/src/TxReentrantLock.ts +97 -66
- package/src/TxRef.ts +51 -32
- package/src/TxSemaphore.ts +129 -95
- package/src/TxSubscriptionRef.ts +97 -70
- package/src/Types.ts +127 -70
- package/src/Unify.ts +45 -65
- package/src/Utils.ts +23 -16
- package/src/index.ts +0 -5
- package/src/internal/core.ts +5 -4
- package/src/internal/dateTime.ts +6 -0
- package/src/internal/effect.ts +160 -79
- package/src/internal/matcher.ts +1 -1
- package/src/internal/persistence.ts +2 -0
- package/src/internal/record.ts +11 -7
- package/src/internal/references.ts +3 -7
- package/src/internal/schema/annotations.ts +44 -0
- package/src/internal/schema/fromJsonSchemaDocument.ts +959 -0
- package/src/internal/schema/fromRepresentation.ts +339 -0
- package/src/internal/schema/parser.ts +22 -0
- package/src/internal/schema/schema.ts +45 -46
- package/src/internal/schema/{arbitrary.ts → toArbitrary.ts} +8 -10
- package/src/internal/schema/toCodeDocument.ts +572 -0
- package/src/internal/schema/{equivalence.ts → toEquivalence.ts} +12 -7
- package/src/internal/schema/toJsonSchemaDocument.ts +529 -0
- package/src/internal/schema/toRepresentation.ts +386 -0
- package/src/internal/stackTraceLimit.ts +3 -7
- package/src/internal/trie.ts +10 -11
- package/src/testing/FastCheck.ts +8 -7
- package/src/testing/TestClock.ts +73 -31
- package/src/testing/TestConsole.ts +32 -31
- package/src/testing/TestSchema.ts +29 -29
- package/src/unstable/ai/AiError.ts +100 -122
- package/src/unstable/ai/AnthropicStructuredOutput.ts +103 -334
- package/src/unstable/ai/Chat.ts +132 -97
- package/src/unstable/ai/EmbeddingModel.ts +1 -1
- package/src/unstable/ai/IdGenerator.ts +32 -28
- package/src/unstable/ai/LanguageModel.ts +137 -95
- package/src/unstable/ai/McpProtocol.ts +48 -0
- package/src/unstable/ai/McpSchema.ts +75 -65
- package/src/unstable/ai/McpServer.ts +1045 -303
- package/src/unstable/ai/Model.ts +9 -20
- package/src/unstable/ai/OpenAiStructuredOutput.ts +231 -396
- package/src/unstable/ai/Prompt.ts +145 -43
- package/src/unstable/ai/Response.ts +52 -38
- package/src/unstable/ai/Telemetry.ts +46 -13
- package/src/unstable/ai/Tokenizer.ts +14 -3
- package/src/unstable/ai/Tool.ts +81 -48
- package/src/unstable/ai/Toolkit.ts +45 -15
- package/src/unstable/ai/index.ts +5 -0
- package/src/unstable/ai/internal/codec-transformer.ts +13 -7
- package/src/unstable/ai/internal/mcpProtocol.ts +85 -0
- package/src/unstable/ai/internal/mcpProtocolRegistry.ts +70 -0
- package/src/unstable/ai/internal/structured-output.ts +453 -0
- package/src/unstable/cli/Argument.ts +273 -69
- package/src/unstable/cli/CliError.ts +116 -77
- package/src/unstable/cli/CliOutput.ts +44 -58
- package/src/unstable/cli/Command.ts +709 -111
- package/src/unstable/cli/Flag.ts +418 -138
- package/src/unstable/cli/GlobalFlag.ts +1 -1
- package/src/unstable/cli/HelpDoc.ts +12 -4
- package/src/unstable/cli/Param.ts +295 -81
- package/src/unstable/cli/Primitive.ts +371 -150
- package/src/unstable/cli/Prompt.ts +28 -14
- package/src/unstable/cli/internal/command.ts +13 -5
- package/src/unstable/cli/internal/config.ts +8 -10
- package/src/unstable/cli/internal/lexer.ts +8 -2
- package/src/unstable/cli/internal/parser.ts +2 -2
- package/src/unstable/cluster/ClusterSchema.ts +8 -8
- package/src/unstable/cluster/ClusterWorkflowEngine.ts +8 -4
- package/src/unstable/cluster/Entity.ts +16 -17
- package/src/unstable/cluster/EntityProxy.ts +4 -2
- package/src/unstable/cluster/EntityResource.ts +2 -2
- package/src/unstable/cluster/Envelope.ts +5 -4
- package/src/unstable/cluster/HttpRunner.ts +6 -4
- package/src/unstable/cluster/Message.ts +9 -9
- package/src/unstable/cluster/MessageStorage.ts +15 -15
- package/src/unstable/cluster/Reply.ts +5 -7
- package/src/unstable/cluster/Runner.ts +1 -1
- package/src/unstable/cluster/RunnerAddress.ts +1 -1
- package/src/unstable/cluster/RunnerHealth.ts +1 -1
- package/src/unstable/cluster/RunnerServer.ts +41 -8
- package/src/unstable/cluster/RunnerStorage.ts +2 -2
- package/src/unstable/cluster/Runners.ts +23 -12
- package/src/unstable/cluster/ShardId.ts +1 -1
- package/src/unstable/cluster/Sharding.ts +168 -42
- package/src/unstable/cluster/ShardingConfig.ts +8 -4
- package/src/unstable/cluster/SingleRunner.ts +4 -2
- package/src/unstable/cluster/SingletonAddress.ts +1 -1
- package/src/unstable/cluster/Snowflake.ts +8 -8
- package/src/unstable/cluster/SqlMessageStorage.ts +84 -36
- package/src/unstable/cluster/SqlRunnerStorage.ts +205 -119
- package/src/unstable/cluster/internal/entityManager.ts +42 -25
- package/src/unstable/cluster/internal/shardLock.ts +9 -0
- package/src/unstable/devtools/DevToolsSchema.ts +10 -5
- package/src/unstable/encoding/Msgpack.ts +6 -8
- package/src/unstable/encoding/Sse.ts +98 -16
- package/src/unstable/eventlog/Event.ts +20 -20
- package/src/unstable/eventlog/EventGroup.ts +4 -4
- package/src/unstable/eventlog/EventJournal.ts +16 -16
- package/src/unstable/eventlog/EventLog.ts +24 -14
- package/src/unstable/eventlog/EventLogEncryption.ts +2 -2
- package/src/unstable/eventlog/EventLogMessage.ts +12 -5
- package/src/unstable/eventlog/EventLogRemote.ts +1 -1
- package/src/unstable/eventlog/EventLogServer.ts +41 -7
- package/src/unstable/eventlog/EventLogServerEncrypted.ts +13 -5
- package/src/unstable/eventlog/EventLogServerUnencrypted.ts +14 -6
- package/src/unstable/eventlog/EventLogSessionAuth.ts +1 -1
- package/src/unstable/eventlog/SqlEventJournal.ts +2 -2
- package/src/unstable/eventlog/SqlEventLogServerEncrypted.ts +1 -1
- package/src/unstable/eventlog/SqlEventLogServerUnencrypted.ts +6 -3
- package/src/unstable/http/Cookies.ts +64 -45
- package/src/unstable/http/Etag.ts +1 -1
- package/src/unstable/http/FetchHttpClient.ts +3 -1
- package/src/unstable/http/Headers.ts +10 -10
- package/src/unstable/http/HttpBody.ts +20 -5
- package/src/unstable/http/HttpClient.ts +83 -55
- package/src/unstable/http/HttpClientRequest.ts +59 -0
- package/src/unstable/http/HttpClientResponse.ts +4 -4
- package/src/unstable/http/HttpEffect.ts +8 -8
- package/src/unstable/http/HttpMethod.ts +6 -9
- package/src/unstable/http/HttpMiddleware.ts +202 -39
- package/src/unstable/http/HttpPlatform.ts +95 -0
- package/src/unstable/http/HttpRouter.ts +102 -98
- package/src/unstable/http/HttpServer.ts +13 -13
- package/src/unstable/http/HttpServerError.ts +2 -2
- package/src/unstable/http/HttpServerRequest.ts +9 -8
- package/src/unstable/http/HttpServerResponse.ts +30 -0
- package/src/unstable/http/HttpStaticServer.ts +35 -7
- package/src/unstable/http/Multipart.ts +22 -19
- package/src/unstable/http/Template.ts +1 -1
- package/src/unstable/http/Url.ts +33 -63
- package/src/unstable/http/UrlParams.ts +27 -32
- package/src/unstable/http/internal/compression.ts +196 -0
- package/src/unstable/httpapi/HttpApi.ts +3 -3
- package/src/unstable/httpapi/HttpApiBuilder.ts +10 -9
- package/src/unstable/httpapi/HttpApiClient.ts +19 -19
- package/src/unstable/httpapi/HttpApiEndpoint.ts +42 -42
- package/src/unstable/httpapi/HttpApiError.ts +13 -13
- package/src/unstable/httpapi/HttpApiGroup.ts +16 -16
- package/src/unstable/httpapi/HttpApiMiddleware.ts +71 -24
- package/src/unstable/httpapi/HttpApiScalar.ts +0 -12
- package/src/unstable/httpapi/HttpApiSchema.ts +6 -6
- package/src/unstable/httpapi/OpenApi.ts +65 -41
- package/src/unstable/observability/OtlpExporter.ts +126 -10
- package/src/unstable/observability/OtlpLogger.ts +5 -5
- package/src/unstable/observability/OtlpMetrics.ts +12 -5
- package/src/unstable/observability/OtlpResource.ts +26 -17
- package/src/unstable/observability/OtlpTracer.ts +8 -4
- package/src/unstable/observability/PrometheusMetrics.ts +13 -4
- package/src/unstable/observability/internal/otlpEnv.ts +1 -1
- package/src/unstable/observability/internal/protobuf.ts +3 -0
- package/src/unstable/persistence/KeyValueStore.ts +72 -49
- package/src/unstable/persistence/Persistable.ts +11 -10
- package/src/unstable/persistence/PersistedQueue.ts +6 -6
- package/src/unstable/persistence/Persistence.ts +126 -19
- package/src/unstable/persistence/RateLimiter.ts +28 -17
- package/src/unstable/persistence/Redis.ts +4 -4
- package/src/unstable/process/ChildProcess.ts +64 -21
- package/src/unstable/process/ChildProcessSpawner.ts +22 -11
- package/src/unstable/reactivity/AsyncResult.ts +16 -16
- package/src/unstable/reactivity/Atom.ts +117 -22
- package/src/unstable/reactivity/AtomHttpApi.ts +5 -4
- package/src/unstable/reactivity/AtomRegistry.ts +25 -4
- package/src/unstable/reactivity/AtomRpc.ts +5 -4
- package/src/unstable/reactivity/Hydration.ts +1 -1
- package/src/unstable/rpc/Rpc.ts +35 -33
- package/src/unstable/rpc/RpcClient.ts +18 -16
- package/src/unstable/rpc/RpcGroup.ts +8 -8
- package/src/unstable/rpc/RpcMessage.ts +31 -30
- package/src/unstable/rpc/RpcMiddleware.ts +10 -10
- package/src/unstable/rpc/RpcSchema.ts +4 -4
- package/src/unstable/rpc/RpcSerialization.ts +167 -68
- package/src/unstable/rpc/RpcServer.ts +18 -15
- package/src/unstable/rpc/RpcWorker.ts +5 -5
- package/src/unstable/schema/Model.ts +52 -50
- package/src/unstable/schema/VariantSchema.ts +19 -29
- package/src/unstable/socket/Socket.ts +18 -5
- package/src/unstable/sql/SqlClient.ts +5 -6
- package/src/unstable/sql/SqlError.ts +2 -2
- package/src/unstable/sql/SqlModel.ts +2 -2
- package/src/unstable/sql/SqlResolver.ts +5 -5
- package/src/unstable/sql/Statement.ts +31 -29
- package/src/unstable/workers/Transferable.ts +1 -1
- package/src/unstable/workers/Worker.ts +2 -2
- package/src/unstable/workers/WorkerError.ts +7 -7
- package/src/unstable/workers/WorkerRunner.ts +1 -1
- package/src/unstable/workflow/Activity.ts +2 -2
- package/src/unstable/workflow/DurableClock.ts +1 -1
- package/src/unstable/workflow/DurableDeferred.ts +10 -10
- package/src/unstable/workflow/DurableQueue.ts +22 -20
- package/src/unstable/workflow/Workflow.ts +23 -23
- package/src/unstable/workflow/WorkflowEngine.ts +1 -1
- package/src/unstable/workflow/WorkflowProxy.ts +4 -2
- package/dist/SchemaUtils.d.ts +0 -28
- package/dist/SchemaUtils.d.ts.map +0 -1
- package/dist/SchemaUtils.js +0 -45
- package/dist/SchemaUtils.js.map +0 -1
- package/dist/internal/schema/arbitrary.d.ts.map +0 -1
- package/dist/internal/schema/arbitrary.js.map +0 -1
- package/dist/internal/schema/equivalence.d.ts +0 -2
- package/dist/internal/schema/equivalence.d.ts.map +0 -1
- package/dist/internal/schema/equivalence.js.map +0 -1
- package/dist/internal/schema/representation.d.ts +0 -2
- package/dist/internal/schema/representation.d.ts.map +0 -1
- package/dist/internal/schema/representation.js +0 -865
- package/dist/internal/schema/representation.js.map +0 -1
- package/dist/internal/version.d.ts +0 -3
- package/dist/internal/version.d.ts.map +0 -1
- package/dist/internal/version.js +0 -2
- package/dist/internal/version.js.map +0 -1
- package/src/SchemaUtils.ts +0 -51
- package/src/internal/schema/representation.ts +0 -795
- package/src/internal/version.ts +0 -2
|
@@ -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
|
|
@@ -1068,7 +1404,7 @@ export const withSubcommands: {
|
|
|
1068
1404
|
|
|
1069
1405
|
const context = yield* impl.parseContext(raw)
|
|
1070
1406
|
const result = yield* sub.parse(raw.subcommand.value.parsedInput)
|
|
1071
|
-
return
|
|
1407
|
+
return { ...context, [SubcommandStateSymbol]: { name: sub.name, result } } as NextInput
|
|
1072
1408
|
})
|
|
1073
1409
|
|
|
1074
1410
|
const handle = Effect.fnUntraced(function*(input: NextInput, path: ReadonlyArray<string>) {
|
|
@@ -1184,20 +1520,20 @@ export const withSharedFlags: {
|
|
|
1184
1520
|
type NextInput = Simplify<Input & SharedInput>
|
|
1185
1521
|
type NextContextInput = Simplify<ContextInput & SharedInput>
|
|
1186
1522
|
|
|
1187
|
-
const parseShared = makeParser(sharedConfig) as (
|
|
1523
|
+
const parseShared = makeParser(sharedConfig, { allowLeftovers: true }) as (
|
|
1188
1524
|
input: ParsedTokens
|
|
1189
1525
|
) => Effect.Effect<SharedInput, CliError.CliError, Environment>
|
|
1190
1526
|
|
|
1191
1527
|
const parse = Effect.fnUntraced(function*(raw: ParsedTokens) {
|
|
1192
1528
|
const base = yield* impl.parse(raw)
|
|
1193
1529
|
const shared = yield* parseShared(raw)
|
|
1194
|
-
return
|
|
1530
|
+
return { ...(base as object), ...(shared as object) } as NextInput
|
|
1195
1531
|
})
|
|
1196
1532
|
|
|
1197
1533
|
const parseContext = Effect.fnUntraced(function*(raw: ParsedTokens) {
|
|
1198
1534
|
const base = yield* impl.parseContext(raw)
|
|
1199
1535
|
const shared = yield* parseShared(raw)
|
|
1200
|
-
return
|
|
1536
|
+
return { ...(base as object), ...(shared as object) } as NextContextInput
|
|
1201
1537
|
})
|
|
1202
1538
|
|
|
1203
1539
|
const handle = (
|
|
@@ -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>(
|