effect 4.0.0-beta.99 → 4.0.0-rc.108
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/AGENTS.md +381 -0
- package/CLAUDE.md +381 -0
- package/README.md +14 -19
- package/ai-docs/README.md +44 -0
- package/ai-docs/package.json +36 -0
- package/ai-docs/src/01_effect/01_basics/01_effect-gen.ts +30 -0
- package/ai-docs/src/01_effect/01_basics/02_effect-fn.ts +39 -0
- package/ai-docs/src/01_effect/01_basics/10_creating-effects.ts +74 -0
- package/ai-docs/src/01_effect/01_basics/index.md +5 -0
- package/ai-docs/src/01_effect/02_schema/10_schema-basics.ts +43 -0
- package/ai-docs/src/01_effect/02_schema/index.md +7 -0
- package/ai-docs/src/01_effect/03_services/01_service.ts +45 -0
- package/ai-docs/src/01_effect/03_services/10_reference.ts +10 -0
- package/ai-docs/src/01_effect/03_services/20_layer-composition.ts +70 -0
- package/ai-docs/src/01_effect/03_services/20_layer-unwrap.ts +66 -0
- package/ai-docs/src/01_effect/03_services/index.md +5 -0
- package/ai-docs/src/01_effect/04_errors/01_error-handling.ts +30 -0
- package/ai-docs/src/01_effect/04_errors/10_catch-tags.ts +24 -0
- package/ai-docs/src/01_effect/04_errors/20_reason-errors.ts +64 -0
- package/ai-docs/src/01_effect/04_errors/index.md +1 -0
- package/ai-docs/src/01_effect/05_resources/10_acquire-release.ts +105 -0
- package/ai-docs/src/01_effect/05_resources/20_layer-side-effects.ts +31 -0
- package/ai-docs/src/01_effect/05_resources/30_layer-map.ts +86 -0
- package/ai-docs/src/01_effect/05_resources/index.md +3 -0
- package/ai-docs/src/01_effect/06_running/10_run-main.ts +30 -0
- package/ai-docs/src/01_effect/06_running/20_layer-launch.ts +27 -0
- package/ai-docs/src/01_effect/06_running/index.md +1 -0
- package/ai-docs/src/01_effect/07_pubsub/10_pubsub.ts +56 -0
- package/ai-docs/src/01_effect/07_pubsub/index.md +3 -0
- package/ai-docs/src/03_stream/10_creating-streams.ts +103 -0
- package/ai-docs/src/03_stream/20_consuming-streams.ts +137 -0
- package/ai-docs/src/03_stream/30_encoding.ts +165 -0
- package/ai-docs/src/03_stream/index.md +4 -0
- package/ai-docs/src/04_integration/10_managed-runtime.ts +129 -0
- package/ai-docs/src/04_integration/index.md +5 -0
- package/ai-docs/src/05_batching/10_request-resolver.ts +89 -0
- package/ai-docs/src/05_batching/index.md +3 -0
- package/ai-docs/src/06_schedule/10_schedules.ts +110 -0
- package/ai-docs/src/06_schedule/index.md +3 -0
- package/ai-docs/src/07_datetime/10_creating-and-formatting.ts +30 -0
- package/ai-docs/src/07_datetime/20_time-zones.ts +44 -0
- package/ai-docs/src/07_datetime/index.md +5 -0
- package/ai-docs/src/08_observability/10_logging.ts +66 -0
- package/ai-docs/src/08_observability/20_otlp-tracing.ts +95 -0
- package/ai-docs/src/08_observability/index.md +7 -0
- package/ai-docs/src/09_testing/10_effect-tests.ts +55 -0
- package/ai-docs/src/09_testing/20_layer-tests.ts +138 -0
- package/ai-docs/src/09_testing/index.md +1 -0
- package/ai-docs/src/10_predicate/01_basics.ts +14 -0
- package/ai-docs/src/10_predicate/index.md +9 -0
- package/ai-docs/src/50_http-client/10_basics.ts +102 -0
- package/ai-docs/src/50_http-client/index.md +3 -0
- package/ai-docs/src/51_http-server/10_basics.ts +116 -0
- package/ai-docs/src/51_http-server/fixtures/api/Api.ts +14 -0
- package/ai-docs/src/51_http-server/fixtures/api/Authorization.ts +36 -0
- package/ai-docs/src/51_http-server/fixtures/api/System.ts +10 -0
- package/ai-docs/src/51_http-server/fixtures/api/Users.ts +91 -0
- package/ai-docs/src/51_http-server/fixtures/domain/User.ts +12 -0
- package/ai-docs/src/51_http-server/fixtures/domain/UserErrors.ts +22 -0
- package/ai-docs/src/51_http-server/fixtures/server/Authorization.ts +36 -0
- package/ai-docs/src/51_http-server/fixtures/server/Users/http.ts +71 -0
- package/ai-docs/src/51_http-server/fixtures/server/Users.ts +62 -0
- package/ai-docs/src/51_http-server/index.md +3 -0
- package/ai-docs/src/60_child-process/10_working-with-child-processes.ts +117 -0
- package/ai-docs/src/60_child-process/index.md +3 -0
- package/ai-docs/src/70_cli/10_basics.ts +136 -0
- package/ai-docs/src/70_cli/index.md +5 -0
- package/ai-docs/src/71_ai/10_language-model.ts +156 -0
- package/ai-docs/src/71_ai/20_tools.ts +226 -0
- package/ai-docs/src/71_ai/30_chat.ts +158 -0
- package/ai-docs/src/71_ai/fixtures/domain/LaunchPlan.ts +9 -0
- package/ai-docs/src/71_ai/index.md +5 -0
- package/ai-docs/src/80_cluster/10_entities.ts +97 -0
- package/ai-docs/src/80_cluster/index.md +4 -0
- package/ai-docs/src/index.md +10 -0
- package/ai-docs/tsconfig.json +24 -0
- 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.d.ts +3 -3
- package/dist/Brand.d.ts.map +1 -1
- package/dist/Brand.js +4 -3
- package/dist/Brand.js.map +1 -1
- package/dist/Cache.d.ts +409 -256
- package/dist/Cache.d.ts.map +1 -1
- package/dist/Cache.js +213 -134
- 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 +756 -769
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +588 -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 +361 -267
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.d.ts +229 -71
- package/dist/ConfigProvider.d.ts.map +1 -1
- package/dist/ConfigProvider.js +164 -95
- 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 +153 -277
- package/dist/Context.d.ts.map +1 -1
- package/dist/Context.js +172 -236
- package/dist/Context.js.map +1 -1
- package/dist/Cron.d.ts +144 -176
- package/dist/Cron.d.ts.map +1 -1
- package/dist/Cron.js +227 -162
- 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 +22 -15
- 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 +110 -98
- 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 +157 -188
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +3142 -3345
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +1452 -1570
- 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 +39 -23
- 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 +86 -55
- package/dist/ExecutionPlan.d.ts.map +1 -1
- package/dist/ExecutionPlan.js +8 -29
- 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 +83 -147
- 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 +86 -60
- package/dist/FiberSet.js.map +1 -1
- package/dist/FileSystem.d.ts +154 -265
- 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 +24 -32
- package/dist/Formatter.d.ts.map +1 -1
- package/dist/Formatter.js +55 -60
- package/dist/Formatter.js.map +1 -1
- package/dist/Function.d.ts +106 -148
- package/dist/Function.d.ts.map +1 -1
- package/dist/Function.js +81 -62
- 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 +19 -18
- package/dist/Inspectable.d.ts.map +1 -1
- package/dist/Inspectable.js +20 -16
- 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 +241 -317
- 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 +319 -241
- 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 +202 -180
- 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 +208 -453
- 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 +63 -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 +132 -210
- package/dist/Optic.d.ts.map +1 -1
- package/dist/Optic.js +221 -324
- 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 +166 -138
- 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 +292 -1638
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +164 -805
- 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 +2056 -1269
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +2868 -1135
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +64 -72
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +698 -468
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaGetter.d.ts +236 -188
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +281 -234
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaIssue.d.ts +219 -190
- package/dist/SchemaIssue.d.ts.map +1 -1
- package/dist/SchemaIssue.js +303 -309
- package/dist/SchemaIssue.js.map +1 -1
- package/dist/SchemaParser.d.ts +32 -2
- package/dist/SchemaParser.d.ts.map +1 -1
- package/dist/SchemaParser.js +170 -118
- package/dist/SchemaParser.js.map +1 -1
- package/dist/SchemaRepresentation.d.ts +433 -1511
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +301 -2854
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +117 -77
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +139 -104
- 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 +1 -1
- package/dist/ScopedCache.js.map +1 -1
- package/dist/ScopedRef.d.ts +3 -3
- package/dist/ScopedRef.d.ts.map +1 -1
- 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 +118 -108
- 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 +18 -5
- package/dist/Stdio.d.ts.map +1 -1
- package/dist/Stdio.js +6 -3
- package/dist/Stdio.js.map +1 -1
- package/dist/Stream.d.ts +2467 -2962
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +1154 -1413
- 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 +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 +2 -2
- 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 +98 -131
- 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 +161 -137
- package/dist/TxQueue.js.map +1 -1
- package/dist/TxReentrantLock.d.ts +89 -114
- package/dist/TxReentrantLock.d.ts.map +1 -1
- package/dist/TxReentrantLock.js +75 -53
- 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 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -8
- package/dist/index.js.map +1 -1
- package/dist/internal/array.js.map +1 -1
- package/dist/internal/core.js +4 -3
- package/dist/internal/core.js.map +1 -1
- package/dist/internal/dateTime.js +5 -1
- package/dist/internal/dateTime.js.map +1 -1
- package/dist/internal/doNotation.js.map +1 -1
- package/dist/internal/effect.js +252 -108
- 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 +52 -3
- package/dist/internal/executionPlan.js.map +1 -1
- package/dist/internal/hashMap.js +12 -8
- 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 +2 -2
- 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 +18 -13
- 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 +15 -1
- 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 +761 -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 +29 -49
- package/dist/internal/schema/schema.js.map +1 -1
- package/dist/internal/schema/toArbitrary.d.ts +2 -0
- package/dist/internal/schema/toArbitrary.d.ts.map +1 -0
- package/dist/internal/schema/{arbitrary.js → toArbitrary.js} +8 -83
- 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 +522 -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 +351 -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 +24 -10
- 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 +65 -20
- 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 +31 -31
- package/dist/testing/TestSchema.d.ts.map +1 -1
- package/dist/testing/TestSchema.js +35 -34
- 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 +118 -140
- 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 +56 -52
- 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 +127 -83
- 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 +320 -254
- package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
- package/dist/unstable/ai/McpSchema.js +79 -71
- 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 +777 -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 +131 -44
- package/dist/unstable/ai/Prompt.d.ts.map +1 -1
- package/dist/unstable/ai/Prompt.js +100 -36
- 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 +279 -72
- package/dist/unstable/cli/Argument.d.ts.map +1 -1
- package/dist/unstable/cli/Argument.js +113 -34
- 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 +126 -76
- package/dist/unstable/cli/CliError.d.ts.map +1 -1
- package/dist/unstable/cli/CliError.js +136 -76
- 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 +736 -115
- package/dist/unstable/cli/Command.d.ts.map +1 -1
- package/dist/unstable/cli/Command.js +282 -56
- 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 +299 -83
- package/dist/unstable/cli/Param.d.ts.map +1 -1
- package/dist/unstable/cli/Param.js +146 -60
- 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 +377 -162
- 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 +54 -31
- 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 +2 -2
- 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 +5 -3
- package/dist/unstable/cli/internal/command.d.ts.map +1 -1
- package/dist/unstable/cli/internal/command.js +21 -13
- package/dist/unstable/cli/internal/command.js.map +1 -1
- package/dist/unstable/cli/internal/completions/bash.js +69 -9
- package/dist/unstable/cli/internal/completions/bash.js.map +1 -1
- package/dist/unstable/cli/internal/completions/descriptor.js +24 -18
- package/dist/unstable/cli/internal/completions/descriptor.js.map +1 -1
- package/dist/unstable/cli/internal/completions/fish.js +5 -5
- 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.d.ts.map +1 -1
- package/dist/unstable/cli/internal/help.js +4 -2
- 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 +5 -5
- package/dist/unstable/cli/internal/parser.js.map +1 -1
- package/dist/unstable/cli/internal/wizard.js +2 -2
- 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 +7 -7
- 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 +32 -16
- 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 +12 -12
- 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 +7 -5
- package/dist/unstable/cluster/EntityProxy.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityProxy.js +8 -5
- 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.d.ts.map +1 -1
- package/dist/unstable/cluster/MessageStorage.js +13 -6
- package/dist/unstable/cluster/MessageStorage.js.map +1 -1
- package/dist/unstable/cluster/Reply.d.ts +8 -0
- package/dist/unstable/cluster/Reply.d.ts.map +1 -1
- package/dist/unstable/cluster/Reply.js +17 -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 +29 -23
- package/dist/unstable/cluster/RunnerServer.js.map +1 -1
- package/dist/unstable/cluster/RunnerStorage.d.ts +3 -4
- package/dist/unstable/cluster/RunnerStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerStorage.js +8 -7
- package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/Runners.d.ts +11 -15
- package/dist/unstable/cluster/Runners.d.ts.map +1 -1
- package/dist/unstable/cluster/Runners.js +32 -22
- 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 +2 -2
- package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
- package/dist/unstable/cluster/Sharding.js +164 -31
- 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 +141 -79
- 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 +25 -13
- 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 +2 -2
- package/dist/unstable/cluster/internal/resourceMap.js.map +1 -1
- package/dist/unstable/cluster/internal/resourceRef.js +17 -0
- 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.d.ts.map +1 -1
- package/dist/unstable/devtools/DevToolsClient.js +7 -2
- 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/Ini.d.ts +20 -0
- package/dist/unstable/encoding/Ini.d.ts.map +1 -0
- package/dist/unstable/encoding/Ini.js +153 -0
- package/dist/unstable/encoding/Ini.js.map +1 -0
- package/dist/unstable/encoding/Msgpack.d.ts +2 -1
- package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
- package/dist/unstable/encoding/Msgpack.js +31 -19
- package/dist/unstable/encoding/Msgpack.js.map +1 -1
- package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
- package/dist/unstable/encoding/Ndjson.js +7 -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 +72 -31
- package/dist/unstable/encoding/Sse.js.map +1 -1
- package/dist/unstable/encoding/Toml.d.ts +19 -0
- package/dist/unstable/encoding/Toml.d.ts.map +1 -0
- package/dist/unstable/encoding/Toml.js +434 -0
- package/dist/unstable/encoding/Toml.js.map +1 -0
- package/dist/unstable/encoding/Yaml.d.ts +19 -0
- package/dist/unstable/encoding/Yaml.d.ts.map +1 -0
- package/dist/unstable/encoding/Yaml.js +461 -0
- package/dist/unstable/encoding/Yaml.js.map +1 -0
- package/dist/unstable/encoding/index.d.ts +12 -0
- package/dist/unstable/encoding/index.d.ts.map +1 -1
- package/dist/unstable/encoding/index.js +12 -0
- 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 +17 -17
- package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventJournal.js +27 -19
- 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 +8 -7
- package/dist/unstable/eventlog/EventLogEncryption.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.js +16 -14
- package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
- package/dist/unstable/eventlog/EventLogMessage.d.ts +31 -31
- package/dist/unstable/eventlog/EventLogMessage.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogMessage.js +12 -8
- package/dist/unstable/eventlog/EventLogMessage.js.map +1 -1
- package/dist/unstable/eventlog/EventLogRemote.d.ts +15 -15
- package/dist/unstable/eventlog/EventLogRemote.js +5 -5
- 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 +16 -7
- 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 +15 -7
- 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.d.ts.map +1 -1
- package/dist/unstable/eventlog/SqlEventJournal.js +3 -6
- 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/FindMyWay/internal/queryString.d.ts +11 -0
- package/dist/unstable/http/FindMyWay/internal/queryString.d.ts.map +1 -0
- package/dist/unstable/http/FindMyWay/internal/queryString.js +259 -0
- package/dist/unstable/http/FindMyWay/internal/queryString.js.map +1 -0
- package/dist/unstable/http/FindMyWay/internal/router.d.ts +2 -0
- package/dist/unstable/http/FindMyWay/internal/router.d.ts.map +1 -0
- package/dist/unstable/http/FindMyWay/internal/router.js +665 -0
- package/dist/unstable/http/FindMyWay/internal/router.js.map +1 -0
- package/dist/unstable/http/FindMyWay.d.ts +33 -8
- package/dist/unstable/http/FindMyWay.d.ts.map +1 -1
- package/dist/unstable/http/FindMyWay.js +4 -7
- package/dist/unstable/http/FindMyWay.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 +110 -47
- package/dist/unstable/http/HttpClient.d.ts.map +1 -1
- package/dist/unstable/http/HttpClient.js +79 -36
- package/dist/unstable/http/HttpClient.js.map +1 -1
- package/dist/unstable/http/HttpClientError.js +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 -12
- package/dist/unstable/http/HttpClientRequest.js.map +1 -1
- package/dist/unstable/http/HttpClientResponse.d.ts +4 -4
- package/dist/unstable/http/HttpClientResponse.js +3 -18
- package/dist/unstable/http/HttpClientResponse.js.map +1 -1
- package/dist/unstable/http/HttpEffect.d.ts +7 -9
- package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
- package/dist/unstable/http/HttpEffect.js +7 -8
- 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 +53 -3
- package/dist/unstable/http/HttpPlatform.js.map +1 -1
- package/dist/unstable/http/HttpRouter.d.ts +91 -92
- 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 +23 -15
- 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 +17 -5
- 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 +28 -9
- package/dist/unstable/http/Multipart.d.ts.map +1 -1
- package/dist/unstable/http/Multipart.js +65 -35
- package/dist/unstable/http/Multipart.js.map +1 -1
- package/dist/unstable/http/MultipartParser/HeadersParser.d.ts +53 -0
- package/dist/unstable/http/MultipartParser/HeadersParser.d.ts.map +1 -0
- package/dist/unstable/http/MultipartParser/HeadersParser.js +14 -0
- package/dist/unstable/http/MultipartParser/HeadersParser.js.map +1 -0
- package/dist/unstable/http/MultipartParser/Search.d.ts +11 -0
- package/dist/unstable/http/MultipartParser/Search.d.ts.map +1 -0
- package/dist/unstable/http/MultipartParser/Search.js +14 -0
- package/dist/unstable/http/MultipartParser/Search.js.map +1 -0
- package/dist/unstable/http/MultipartParser/internal/contentType.d.ts +5 -0
- package/dist/unstable/http/MultipartParser/internal/contentType.d.ts.map +1 -0
- package/dist/unstable/http/MultipartParser/internal/contentType.js +82 -0
- package/dist/unstable/http/MultipartParser/internal/contentType.js.map +1 -0
- package/dist/unstable/http/MultipartParser/internal/headers.d.ts +3 -0
- package/dist/unstable/http/MultipartParser/internal/headers.d.ts.map +1 -0
- package/dist/unstable/http/MultipartParser/internal/headers.js +208 -0
- package/dist/unstable/http/MultipartParser/internal/headers.js.map +1 -0
- package/dist/unstable/http/MultipartParser/internal/multipart.d.ts +8 -0
- package/dist/unstable/http/MultipartParser/internal/multipart.d.ts.map +1 -0
- package/dist/unstable/http/MultipartParser/internal/multipart.js +241 -0
- package/dist/unstable/http/MultipartParser/internal/multipart.js.map +1 -0
- package/dist/unstable/http/MultipartParser/internal/search.d.ts +5 -0
- package/dist/unstable/http/MultipartParser/internal/search.d.ts.map +1 -0
- package/dist/unstable/http/MultipartParser/internal/search.js +120 -0
- package/dist/unstable/http/MultipartParser/internal/search.js.map +1 -0
- package/dist/unstable/http/MultipartParser.d.ts +98 -0
- package/dist/unstable/http/MultipartParser.d.ts.map +1 -0
- package/dist/unstable/http/MultipartParser.js +23 -0
- package/dist/unstable/http/MultipartParser.js.map +1 -0
- package/dist/unstable/http/Template.d.ts.map +1 -1
- package/dist/unstable/http/Template.js +3 -3
- 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.d.ts +1 -1
- package/dist/unstable/http/index.d.ts.map +1 -1
- package/dist/unstable/http/index.js +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/httpBody.d.ts +2 -0
- package/dist/unstable/http/internal/httpBody.d.ts.map +1 -0
- package/dist/unstable/http/internal/httpBody.js +10 -0
- package/dist/unstable/http/internal/httpBody.js.map +1 -0
- package/dist/unstable/http/internal/preResponseHandler.js.map +1 -1
- package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApi.js +9 -9
- 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 +82 -30
- 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 +89 -51
- package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +48 -46
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.js +73 -16
- package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.d.ts +18 -18
- package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.js +30 -30
- package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.d.ts +15 -15
- package/dist/unstable/httpapi/HttpApiGroup.js +2 -2
- 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 +225 -6
- package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiSchema.js +174 -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 +21 -13
- package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/OpenApi.js +110 -57
- 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 +71 -2
- package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpExporter.js +86 -7
- 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 +4 -4
- 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 +31 -15
- 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 +3 -3
- 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.d.ts.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.js +15 -15
- 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 +108 -22
- package/dist/unstable/persistence/Persistence.js.map +1 -1
- package/dist/unstable/persistence/RateLimiter.d.ts +47 -26
- package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
- package/dist/unstable/persistence/RateLimiter.js +31 -47
- 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 +4 -4
- 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 +72 -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 +131 -30
- package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
- package/dist/unstable/reactivity/Atom.js +53 -34
- 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 +26 -12
- package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClient.js +40 -22
- package/dist/unstable/rpc/RpcClient.js.map +1 -1
- package/dist/unstable/rpc/RpcClientError.js +2 -2
- 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 +177 -96
- package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
- package/dist/unstable/rpc/RpcServer.d.ts +13 -13
- package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcServer.js +20 -15
- 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 +53 -51
- 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 +11 -12
- package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
- package/dist/unstable/schema/VariantSchema.js +28 -17
- 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 +38 -17
- 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.d.ts +9 -1
- package/dist/unstable/sql/Migrator.d.ts.map +1 -1
- package/dist/unstable/sql/Migrator.js +15 -2
- 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 +8 -4
- 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 +15 -15
- 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.d.ts.map +1 -1
- package/dist/unstable/sql/SqlResolver.js +30 -24
- 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 +30 -27
- 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.d.ts.map +1 -1
- package/dist/unstable/workers/Worker.js +13 -14
- package/dist/unstable/workers/Worker.js.map +1 -1
- package/dist/unstable/workers/WorkerError.d.ts +7 -7
- package/dist/unstable/workers/WorkerError.js +11 -11
- 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.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableDeferred.js +13 -8
- 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 +26 -3
- package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.js +72 -6
- 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 +10 -14
- 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/Brand.ts +4 -4
- package/src/Cache.ts +469 -851
- package/src/Cause.ts +167 -277
- package/src/Channel.ts +982 -831
- 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 +642 -335
- package/src/ConfigProvider.ts +267 -135
- package/src/Console.ts +289 -39
- package/src/Context.ts +323 -404
- package/src/Cron.ts +271 -219
- package/src/Crypto.ts +30 -23
- package/src/Data.ts +63 -82
- package/src/DateTime.ts +564 -660
- package/src/Deferred.ts +259 -258
- package/src/Duration.ts +244 -311
- package/src/Effect.ts +3215 -3394
- package/src/Encoding.ts +22 -40
- package/src/Equal.ts +59 -41
- package/src/Equivalence.ts +103 -105
- package/src/ErrorReporter.ts +51 -27
- package/src/ExecutionPlan.ts +91 -56
- package/src/Exit.ts +116 -192
- package/src/Fiber.ts +82 -149
- package/src/FiberHandle.ts +155 -107
- package/src/FiberMap.ts +225 -174
- package/src/FiberSet.ts +125 -83
- package/src/FileSystem.ts +156 -264
- package/src/Filter.ts +61 -33
- package/src/Formatter.ts +69 -76
- package/src/Function.ts +119 -151
- 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 +22 -20
- package/src/Iterable.ts +633 -797
- package/src/JsonPatch.ts +60 -113
- package/src/JsonPointer.ts +8 -8
- package/src/JsonSchema.ts +408 -251
- package/src/Latch.ts +23 -35
- package/src/Layer.ts +366 -265
- package/src/LayerMap.ts +49 -29
- package/src/LayerRef.ts +6 -2
- package/src/LogLevel.ts +114 -214
- package/src/Logger.ts +348 -700
- 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 +77 -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 +303 -441
- 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 +204 -165
- 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 +311 -1737
- package/src/Scheduler.ts +20 -7
- package/src/Schema.ts +3475 -1913
- package/src/SchemaAST.ts +902 -573
- package/src/SchemaGetter.ts +351 -233
- package/src/SchemaIssue.ts +367 -334
- package/src/SchemaParser.ts +254 -148
- package/src/SchemaRepresentation.ts +732 -3414
- package/src/SchemaTransformation.ts +186 -97
- package/src/Scope.ts +123 -151
- package/src/ScopedCache.ts +1 -1
- package/src/ScopedRef.ts +6 -4
- package/src/Semaphore.ts +157 -54
- package/src/Sink.ts +129 -114
- package/src/Stdio.ts +24 -5
- package/src/Stream.ts +2745 -3173
- 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/SynchronizedRef.ts +1 -1
- package/src/Terminal.ts +3 -3
- package/src/Tracer.ts +102 -55
- package/src/Trie.ts +287 -679
- package/src/Tuple.ts +99 -131
- 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 +215 -184
- package/src/TxReentrantLock.ts +136 -101
- 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 -10
- package/src/internal/core.ts +6 -5
- package/src/internal/dateTime.ts +7 -1
- package/src/internal/effect.ts +304 -134
- package/src/internal/executionPlan.ts +106 -10
- package/src/internal/hashMap.ts +20 -14
- package/src/internal/matcher.ts +3 -3
- package/src/internal/persistence.ts +2 -0
- package/src/internal/rcRef.ts +24 -16
- package/src/internal/record.ts +11 -7
- package/src/internal/references.ts +3 -7
- package/src/internal/schedule.ts +4 -4
- package/src/internal/schema/annotations.ts +48 -1
- package/src/internal/schema/fromJsonSchemaDocument.ts +977 -0
- package/src/internal/schema/fromRepresentation.ts +339 -0
- package/src/internal/schema/parser.ts +22 -0
- package/src/internal/schema/schema.ts +46 -63
- package/src/internal/schema/{arbitrary.ts → toArbitrary.ts} +9 -81
- package/src/internal/schema/toCodeDocument.ts +572 -0
- package/src/internal/schema/{equivalence.ts → toEquivalence.ts} +12 -7
- package/src/internal/schema/toJsonSchemaDocument.ts +549 -0
- package/src/internal/schema/toRepresentation.ts +404 -0
- package/src/internal/stackTraceLimit.ts +3 -7
- package/src/internal/trie.ts +21 -12
- package/src/testing/FastCheck.ts +8 -7
- package/src/testing/TestClock.ts +86 -32
- package/src/testing/TestConsole.ts +32 -31
- package/src/testing/TestSchema.ts +40 -40
- package/src/unstable/ai/AiError.ts +119 -141
- package/src/unstable/ai/AnthropicStructuredOutput.ts +103 -334
- package/src/unstable/ai/Chat.ts +133 -98
- package/src/unstable/ai/EmbeddingModel.ts +1 -1
- package/src/unstable/ai/IdGenerator.ts +32 -28
- package/src/unstable/ai/LanguageModel.ts +141 -97
- package/src/unstable/ai/McpProtocol.ts +48 -0
- package/src/unstable/ai/McpSchema.ts +92 -81
- package/src/unstable/ai/McpServer.ts +1057 -303
- package/src/unstable/ai/Model.ts +9 -20
- package/src/unstable/ai/OpenAiStructuredOutput.ts +231 -396
- package/src/unstable/ai/Prompt.ts +212 -63
- 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 +279 -72
- package/src/unstable/cli/CliError.ts +159 -91
- package/src/unstable/cli/CliOutput.ts +44 -58
- package/src/unstable/cli/Command.ts +764 -124
- 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 +336 -100
- package/src/unstable/cli/Primitive.ts +383 -156
- package/src/unstable/cli/Prompt.ts +64 -34
- package/src/unstable/cli/internal/ansi.ts +2 -2
- package/src/unstable/cli/internal/command.ts +28 -15
- package/src/unstable/cli/internal/completions/bash.ts +59 -9
- package/src/unstable/cli/internal/completions/descriptor.ts +14 -20
- package/src/unstable/cli/internal/completions/fish.ts +5 -7
- package/src/unstable/cli/internal/config.ts +8 -10
- package/src/unstable/cli/internal/help.ts +4 -2
- package/src/unstable/cli/internal/lexer.ts +8 -2
- package/src/unstable/cli/internal/parser.ts +5 -5
- package/src/unstable/cli/internal/wizard.ts +2 -2
- package/src/unstable/cluster/ClusterError.ts +7 -7
- package/src/unstable/cluster/ClusterSchema.ts +8 -8
- package/src/unstable/cluster/ClusterWorkflowEngine.ts +36 -20
- package/src/unstable/cluster/Entity.ts +23 -19
- package/src/unstable/cluster/EntityProxy.ts +16 -7
- 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 +24 -20
- package/src/unstable/cluster/Reply.ts +26 -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 +45 -18
- package/src/unstable/cluster/RunnerStorage.ts +11 -9
- package/src/unstable/cluster/Runners.ts +48 -26
- package/src/unstable/cluster/ShardId.ts +1 -1
- package/src/unstable/cluster/Sharding.ts +223 -55
- 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 +223 -133
- package/src/unstable/cluster/internal/entityManager.ts +43 -26
- package/src/unstable/cluster/internal/resourceMap.ts +5 -2
- package/src/unstable/cluster/internal/resourceRef.ts +27 -5
- package/src/unstable/cluster/internal/shardLock.ts +9 -0
- package/src/unstable/devtools/DevToolsClient.ts +3 -2
- package/src/unstable/devtools/DevToolsSchema.ts +10 -5
- package/src/unstable/encoding/Ini.ts +174 -0
- package/src/unstable/encoding/Msgpack.ts +61 -40
- package/src/unstable/encoding/Ndjson.ts +9 -1
- package/src/unstable/encoding/Sse.ts +109 -37
- package/src/unstable/encoding/Toml.ts +504 -0
- package/src/unstable/encoding/Yaml.ts +541 -0
- package/src/unstable/encoding/index.ts +15 -0
- package/src/unstable/eventlog/Event.ts +20 -20
- package/src/unstable/eventlog/EventGroup.ts +4 -4
- package/src/unstable/eventlog/EventJournal.ts +30 -22
- package/src/unstable/eventlog/EventLog.ts +24 -14
- package/src/unstable/eventlog/EventLogEncryption.ts +17 -18
- package/src/unstable/eventlog/EventLogMessage.ts +15 -9
- package/src/unstable/eventlog/EventLogRemote.ts +5 -5
- package/src/unstable/eventlog/EventLogServer.ts +41 -7
- package/src/unstable/eventlog/EventLogServerEncrypted.ts +15 -7
- package/src/unstable/eventlog/EventLogServerUnencrypted.ts +15 -7
- package/src/unstable/eventlog/EventLogSessionAuth.ts +1 -1
- package/src/unstable/eventlog/SqlEventJournal.ts +8 -6
- 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/FindMyWay/internal/queryString.ts +420 -0
- package/src/unstable/http/FindMyWay/internal/router.ts +950 -0
- package/src/unstable/http/FindMyWay.ts +65 -6
- package/src/unstable/http/Headers.ts +10 -10
- package/src/unstable/http/HttpBody.ts +20 -5
- package/src/unstable/http/HttpClient.ts +215 -78
- package/src/unstable/http/HttpClientError.ts +1 -1
- package/src/unstable/http/HttpClientRequest.ts +59 -12
- package/src/unstable/http/HttpClientResponse.ts +5 -21
- package/src/unstable/http/HttpEffect.ts +20 -19
- package/src/unstable/http/HttpMethod.ts +6 -9
- package/src/unstable/http/HttpMiddleware.ts +202 -39
- package/src/unstable/http/HttpPlatform.ts +129 -6
- package/src/unstable/http/HttpRouter.ts +109 -101
- package/src/unstable/http/HttpServer.ts +13 -13
- package/src/unstable/http/HttpServerError.ts +2 -2
- package/src/unstable/http/HttpServerRequest.ts +31 -17
- package/src/unstable/http/HttpServerResponse.ts +38 -6
- package/src/unstable/http/HttpStaticServer.ts +35 -7
- package/src/unstable/http/Multipart.ts +67 -36
- package/src/unstable/http/MultipartParser/HeadersParser.ts +68 -0
- package/src/unstable/http/MultipartParser/Search.ts +17 -0
- package/src/unstable/http/MultipartParser/internal/contentType.ts +103 -0
- package/src/unstable/http/MultipartParser/internal/headers.ts +244 -0
- package/src/unstable/http/MultipartParser/internal/multipart.ts +279 -0
- package/src/unstable/http/MultipartParser/internal/search.ts +167 -0
- package/src/unstable/http/MultipartParser.ts +115 -0
- package/src/unstable/http/Template.ts +7 -6
- package/src/unstable/http/Url.ts +33 -63
- package/src/unstable/http/UrlParams.ts +27 -32
- package/src/unstable/http/index.ts +1 -1
- package/src/unstable/http/internal/compression.ts +196 -0
- package/src/unstable/http/internal/httpBody.ts +15 -0
- package/src/unstable/httpapi/HttpApi.ts +10 -11
- package/src/unstable/httpapi/HttpApiBuilder.ts +154 -33
- package/src/unstable/httpapi/HttpApiClient.ts +142 -61
- package/src/unstable/httpapi/HttpApiEndpoint.ts +159 -71
- package/src/unstable/httpapi/HttpApiError.ts +46 -52
- package/src/unstable/httpapi/HttpApiGroup.ts +17 -17
- package/src/unstable/httpapi/HttpApiMiddleware.ts +71 -24
- package/src/unstable/httpapi/HttpApiScalar.ts +0 -12
- package/src/unstable/httpapi/HttpApiSchema.ts +359 -6
- package/src/unstable/httpapi/OpenApi.ts +153 -62
- package/src/unstable/observability/OtlpExporter.ts +130 -12
- package/src/unstable/observability/OtlpLogger.ts +8 -6
- package/src/unstable/observability/OtlpMetrics.ts +42 -21
- package/src/unstable/observability/OtlpResource.ts +26 -17
- package/src/unstable/observability/OtlpTracer.ts +9 -5
- 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 +18 -15
- package/src/unstable/persistence/Persistence.ts +153 -26
- package/src/unstable/persistence/RateLimiter.ts +79 -45
- package/src/unstable/persistence/Redis.ts +5 -5
- package/src/unstable/process/ChildProcess.ts +72 -21
- package/src/unstable/process/ChildProcessSpawner.ts +22 -11
- package/src/unstable/reactivity/AsyncResult.ts +23 -18
- package/src/unstable/reactivity/Atom.ts +161 -47
- 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 +65 -29
- package/src/unstable/rpc/RpcClientError.ts +2 -2
- 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 +22 -17
- package/src/unstable/rpc/RpcWorker.ts +5 -5
- package/src/unstable/schema/Model.ts +52 -50
- package/src/unstable/schema/VariantSchema.ts +51 -43
- package/src/unstable/socket/Socket.ts +42 -19
- package/src/unstable/sql/Migrator.ts +22 -9
- package/src/unstable/sql/SqlClient.ts +64 -56
- package/src/unstable/sql/SqlError.ts +15 -15
- package/src/unstable/sql/SqlModel.ts +2 -2
- package/src/unstable/sql/SqlResolver.ts +41 -31
- package/src/unstable/sql/Statement.ts +44 -37
- package/src/unstable/workers/Transferable.ts +1 -1
- package/src/unstable/workers/Worker.ts +15 -16
- package/src/unstable/workers/WorkerError.ts +12 -12
- 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 +18 -13
- package/src/unstable/workflow/DurableQueue.ts +22 -20
- package/src/unstable/workflow/Workflow.ts +23 -26
- package/src/unstable/workflow/WorkflowEngine.ts +111 -8
- package/src/unstable/workflow/WorkflowProxy.ts +4 -2
- package/dist/SchemaError.d.ts +0 -53
- package/dist/SchemaError.d.ts.map +0 -1
- package/dist/SchemaError.js +0 -61
- package/dist/SchemaError.js.map +0 -1
- 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 +0 -5
- 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/dist/unstable/http/Multipasta/HeadersParser.d.ts +0 -14
- package/dist/unstable/http/Multipasta/HeadersParser.d.ts.map +0 -1
- package/dist/unstable/http/Multipasta/HeadersParser.js +0 -14
- package/dist/unstable/http/Multipasta/HeadersParser.js.map +0 -1
- package/dist/unstable/http/Multipasta/Node.d.ts +0 -14
- package/dist/unstable/http/Multipasta/Node.d.ts.map +0 -1
- package/dist/unstable/http/Multipasta/Node.js +0 -14
- package/dist/unstable/http/Multipasta/Node.js.map +0 -1
- package/dist/unstable/http/Multipasta/Search.d.ts +0 -14
- package/dist/unstable/http/Multipasta/Search.d.ts.map +0 -1
- package/dist/unstable/http/Multipasta/Search.js +0 -14
- package/dist/unstable/http/Multipasta/Search.js.map +0 -1
- package/dist/unstable/http/Multipasta/Web.d.ts +0 -14
- package/dist/unstable/http/Multipasta/Web.d.ts.map +0 -1
- package/dist/unstable/http/Multipasta/Web.js +0 -14
- package/dist/unstable/http/Multipasta/Web.js.map +0 -1
- package/dist/unstable/http/Multipasta.d.ts +0 -15
- package/dist/unstable/http/Multipasta.d.ts.map +0 -1
- package/dist/unstable/http/Multipasta.js +0 -15
- package/dist/unstable/http/Multipasta.js.map +0 -1
- package/src/SchemaError.ts +0 -64
- package/src/SchemaUtils.ts +0 -51
- package/src/internal/schema/representation.ts +0 -795
- package/src/internal/version.ts +0 -2
- package/src/unstable/http/Multipasta/HeadersParser.ts +0 -14
- package/src/unstable/http/Multipasta/Node.ts +0 -14
- package/src/unstable/http/Multipasta/Search.ts +0 -14
- package/src/unstable/http/Multipasta/Web.ts +0 -14
- package/src/unstable/http/Multipasta.ts +0 -15
package/dist/Config.js
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import * as ConfigProvider from "./ConfigProvider.js";
|
|
2
2
|
import * as Effect from "./Effect.js";
|
|
3
3
|
import * as Effectable from "./Effectable.js";
|
|
4
|
-
import { dual } from "./Function.js";
|
|
4
|
+
import { dual, memoize } from "./Function.js";
|
|
5
|
+
import * as InternalRecord from "./internal/record.js";
|
|
5
6
|
import * as LogLevel_ from "./LogLevel.js";
|
|
6
7
|
import * as Option from "./Option.js";
|
|
7
8
|
import * as Predicate from "./Predicate.js";
|
|
8
9
|
import * as Rec from "./Record.js";
|
|
10
|
+
import * as Result from "./Result.js";
|
|
9
11
|
import * as Schema from "./Schema.js";
|
|
10
12
|
import * as SchemaAST from "./SchemaAST.js";
|
|
11
13
|
import * as SchemaGetter from "./SchemaGetter.js";
|
|
@@ -23,11 +25,11 @@ const TypeId = "~effect/Config";
|
|
|
23
25
|
*
|
|
24
26
|
* **Example** (Checking Config values)
|
|
25
27
|
*
|
|
26
|
-
* ```ts
|
|
28
|
+
* ```ts import.meta.vitest
|
|
27
29
|
* import { Config } from "effect"
|
|
28
30
|
*
|
|
29
|
-
*
|
|
30
|
-
*
|
|
31
|
+
* Config.isConfig(Config.string("HOST")) // => true
|
|
32
|
+
* Config.isConfig("not a config") // => false
|
|
31
33
|
* ```
|
|
32
34
|
*
|
|
33
35
|
* @category guards
|
|
@@ -49,7 +51,7 @@ export const isConfig = u => Predicate.hasProperty(u, TypeId);
|
|
|
49
51
|
* (wrong type, out of range, missing key, etc.).
|
|
50
52
|
*
|
|
51
53
|
* @see {@link orElse} – recover from a ConfigError
|
|
52
|
-
* @see {@link withDefault} – provide a fallback
|
|
54
|
+
* @see {@link withDefault} – provide a fallback when relevant input is absent
|
|
53
55
|
*
|
|
54
56
|
* @category errors
|
|
55
57
|
* @since 4.0.0
|
|
@@ -82,11 +84,32 @@ const Proto = {
|
|
|
82
84
|
};
|
|
83
85
|
}
|
|
84
86
|
};
|
|
85
|
-
function make(
|
|
87
|
+
function make(evaluator) {
|
|
86
88
|
const self = Object.create(Proto);
|
|
87
|
-
self.
|
|
89
|
+
self.evaluator = evaluator;
|
|
90
|
+
self.parse = provider => evaluator(provider, []).pipe(Effect.mapErrorEager(failure => failure.error), Effect.flatMapEager(resolution => resolution._tag === "Resolved" ? Effect.succeed(resolution.value) : Effect.fail(resolution.error)));
|
|
88
91
|
return self;
|
|
89
92
|
}
|
|
93
|
+
const evaluateAt = (self, provider, pathPrefix) => self.evaluator(provider, pathPrefix);
|
|
94
|
+
const resolved = (value, hasInput) => ({
|
|
95
|
+
_tag: "Resolved",
|
|
96
|
+
value,
|
|
97
|
+
hasInput
|
|
98
|
+
});
|
|
99
|
+
const absent = error => ({
|
|
100
|
+
_tag: "Absent",
|
|
101
|
+
error
|
|
102
|
+
});
|
|
103
|
+
const evaluationFailure = (error, hasInput) => ({
|
|
104
|
+
error,
|
|
105
|
+
hasInput
|
|
106
|
+
});
|
|
107
|
+
const isSourceError = u => Predicate.isTagged(u, "SourceError");
|
|
108
|
+
const catchSourceError = (self, hasInput) => self.pipe(Effect.catchDefect(defect => isSourceError(defect) ? Effect.fail(evaluationFailure(new ConfigError(defect), hasInput)) : Effect.die(defect)));
|
|
109
|
+
const preserveInputEvidence = (self, hasInput) => {
|
|
110
|
+
if (!hasInput) return self;
|
|
111
|
+
return self.pipe(Effect.mapErrorEager(failure => evaluationFailure(failure.error, true)), Effect.flatMapEager(resolution => resolution._tag === "Resolved" ? Effect.succeed(resolved(resolution.value, true)) : Effect.fail(evaluationFailure(resolution.error, true))));
|
|
112
|
+
};
|
|
90
113
|
/**
|
|
91
114
|
* Transforms the parsed value of a config with a pure function.
|
|
92
115
|
*
|
|
@@ -97,7 +120,7 @@ function make(parse) {
|
|
|
97
120
|
*
|
|
98
121
|
* **Example** (Uppercasing a string config)
|
|
99
122
|
*
|
|
100
|
-
* ```ts
|
|
123
|
+
* ```ts import.meta.vitest
|
|
101
124
|
* import { Config, ConfigProvider, Effect } from "effect"
|
|
102
125
|
*
|
|
103
126
|
* const upper = Config.string("name").pipe(
|
|
@@ -105,7 +128,7 @@ function make(parse) {
|
|
|
105
128
|
* )
|
|
106
129
|
*
|
|
107
130
|
* const provider = ConfigProvider.fromUnknown({ name: "alice" })
|
|
108
|
-
*
|
|
131
|
+
* Effect.runSync(upper.parse(provider)) // => "ALICE"
|
|
109
132
|
* ```
|
|
110
133
|
*
|
|
111
134
|
* @see {@link mapOrFail} – when the transformation can fail
|
|
@@ -114,7 +137,7 @@ function make(parse) {
|
|
|
114
137
|
* @since 2.0.0
|
|
115
138
|
*/
|
|
116
139
|
export const map = /*#__PURE__*/dual(2, (self, f) => {
|
|
117
|
-
return make((provider, pathPrefix) => Effect.map(self
|
|
140
|
+
return make((provider, pathPrefix) => Effect.map(evaluateAt(self, provider, pathPrefix), resolution => resolution._tag === "Resolved" ? resolved(f(resolution.value), resolution.hasInput) : resolution));
|
|
118
141
|
});
|
|
119
142
|
/**
|
|
120
143
|
* Transforms the parsed value with a function that may fail.
|
|
@@ -126,12 +149,14 @@ export const map = /*#__PURE__*/dual(2, (self, f) => {
|
|
|
126
149
|
*
|
|
127
150
|
* **Example** (Wrapping a value in an effectful transformation)
|
|
128
151
|
*
|
|
129
|
-
* ```ts
|
|
130
|
-
* import { Config, Effect } from "effect"
|
|
152
|
+
* ```ts import.meta.vitest
|
|
153
|
+
* import { Config, ConfigProvider, Effect } from "effect"
|
|
131
154
|
*
|
|
132
155
|
* const trimmed = Config.string("name").pipe(
|
|
133
156
|
* Config.mapOrFail((s) => Effect.succeed(s.trim()))
|
|
134
157
|
* )
|
|
158
|
+
* const provider = ConfigProvider.fromUnknown({ name: " Alice " })
|
|
159
|
+
* Effect.runSync(trimmed.parse(provider)) // => "Alice"
|
|
135
160
|
* ```
|
|
136
161
|
*
|
|
137
162
|
* @see {@link map} – when the transformation cannot fail
|
|
@@ -140,7 +165,7 @@ export const map = /*#__PURE__*/dual(2, (self, f) => {
|
|
|
140
165
|
* @since 2.0.0
|
|
141
166
|
*/
|
|
142
167
|
export const mapOrFail = /*#__PURE__*/dual(2, (self, f) => {
|
|
143
|
-
return make((provider, pathPrefix) => Effect.flatMap(self
|
|
168
|
+
return make((provider, pathPrefix) => Effect.flatMap(evaluateAt(self, provider, pathPrefix), resolution => resolution._tag === "Resolved" ? f(resolution.value).pipe(Effect.mapEager(value => resolved(value, resolution.hasInput)), Effect.mapErrorEager(error => evaluationFailure(error, resolution.hasInput))) : Effect.succeed(resolution)));
|
|
144
169
|
});
|
|
145
170
|
/**
|
|
146
171
|
* Provides a fallback config when parsing fails with a `ConfigError`.
|
|
@@ -152,27 +177,39 @@ export const mapOrFail = /*#__PURE__*/dual(2, (self, f) => {
|
|
|
152
177
|
*
|
|
153
178
|
* **Details**
|
|
154
179
|
*
|
|
155
|
-
* Unlike {@link withDefault}, this
|
|
156
|
-
*
|
|
180
|
+
* Unlike {@link withDefault}, this handles both semantic absence and **all**
|
|
181
|
+
* `ConfigError`s. The fallback function receives the error and returns a new
|
|
157
182
|
* `Config`.
|
|
158
183
|
*
|
|
184
|
+
* **Gotchas**
|
|
185
|
+
*
|
|
186
|
+
* Recovery preserves whether the primary config read provider input. When the
|
|
187
|
+
* recovered config is composed with {@link all}, invalid input in the primary
|
|
188
|
+
* branch still makes the enclosing group partially supplied, so an outer
|
|
189
|
+
* {@link withDefault} or {@link option} does not replace the whole group.
|
|
190
|
+
*
|
|
159
191
|
* **Example** (Falling back to a literal)
|
|
160
192
|
*
|
|
161
|
-
* ```ts
|
|
162
|
-
* import { Config } from "effect"
|
|
193
|
+
* ```ts import.meta.vitest
|
|
194
|
+
* import { Config, ConfigProvider, Effect } from "effect"
|
|
163
195
|
*
|
|
164
196
|
* const hostConfig = Config.string("HOST").pipe(
|
|
165
197
|
* Config.orElse(() => Config.succeed("localhost"))
|
|
166
198
|
* )
|
|
199
|
+
* const provider = ConfigProvider.fromUnknown({})
|
|
200
|
+
* Effect.runSync(hostConfig.parse(provider)) // => "localhost"
|
|
167
201
|
* ```
|
|
168
202
|
*
|
|
169
|
-
* @see {@link withDefault} – fallback only on
|
|
203
|
+
* @see {@link withDefault} – fallback only on semantic absence
|
|
170
204
|
*
|
|
171
205
|
* @category combinators
|
|
172
206
|
* @since 2.0.0
|
|
173
207
|
*/
|
|
174
208
|
export const orElse = /*#__PURE__*/dual(2, (self, that) => {
|
|
175
|
-
return make((provider, pathPrefix) => Effect.
|
|
209
|
+
return make((provider, pathPrefix) => Effect.matchEffect(evaluateAt(self, provider, pathPrefix), {
|
|
210
|
+
onFailure: failure => preserveInputEvidence(evaluateAt(that(failure.error), provider, pathPrefix), failure.hasInput),
|
|
211
|
+
onSuccess: resolution => resolution._tag === "Absent" ? evaluateAt(that(resolution.error), provider, pathPrefix) : Effect.succeed(resolution)
|
|
212
|
+
}));
|
|
176
213
|
});
|
|
177
214
|
/**
|
|
178
215
|
* Combines multiple configs into a single config that parses all of them.
|
|
@@ -186,9 +223,19 @@ export const orElse = /*#__PURE__*/dual(2, (self, that) => {
|
|
|
186
223
|
* Accepts a tuple (preserves positions), an iterable, or a record of configs.
|
|
187
224
|
* Returns a config whose parsed value mirrors the input shape.
|
|
188
225
|
*
|
|
226
|
+
* A combined config is absent when at least one child cannot resolve and none
|
|
227
|
+
* of the other children read provider input. This lets {@link withDefault} and
|
|
228
|
+
* {@link option} handle a wholly absent group. Once any child reads input, a
|
|
229
|
+
* missing sibling makes the group incomplete and parsing fails. Values supplied
|
|
230
|
+
* by child defaults do not count as provider input.
|
|
231
|
+
*
|
|
232
|
+
* Unlike a `Schema.Struct` passed to {@link schema}, `all` only considers input
|
|
233
|
+
* read by its children. An explicitly present but empty parent container does
|
|
234
|
+
* not by itself make the group present.
|
|
235
|
+
*
|
|
189
236
|
* **Example** (Combining configs as a struct)
|
|
190
237
|
*
|
|
191
|
-
* ```ts
|
|
238
|
+
* ```ts import.meta.vitest
|
|
192
239
|
* import { Config, ConfigProvider, Effect } from "effect"
|
|
193
240
|
*
|
|
194
241
|
* const dbConfig = Config.all({
|
|
@@ -197,8 +244,7 @@ export const orElse = /*#__PURE__*/dual(2, (self, that) => {
|
|
|
197
244
|
* })
|
|
198
245
|
*
|
|
199
246
|
* const provider = ConfigProvider.fromUnknown({ host: "localhost", port: 5432 })
|
|
200
|
-
*
|
|
201
|
-
* // { host: "localhost", port: 5432 }
|
|
247
|
+
* Effect.runSync(dbConfig.parse(provider)) // => { host: "localhost", port: 5432 }
|
|
202
248
|
* ```
|
|
203
249
|
*
|
|
204
250
|
* @category combinators
|
|
@@ -207,39 +253,69 @@ export const orElse = /*#__PURE__*/dual(2, (self, that) => {
|
|
|
207
253
|
export function all(arg) {
|
|
208
254
|
const configs = Array.isArray(arg) ? arg : Symbol.iterator in arg ? [...arg] : arg;
|
|
209
255
|
if (Array.isArray(configs)) {
|
|
210
|
-
return make((provider, pathPrefix) => Effect.all(configs.map(config =>
|
|
256
|
+
return make((provider, pathPrefix) => Effect.flatMapEager(Effect.all(configs.map(config => Effect.result(evaluateAt(config, provider, pathPrefix)))), resolveArray));
|
|
211
257
|
} else {
|
|
212
|
-
return make((provider, pathPrefix) => Effect.all(Rec.map(configs, config =>
|
|
258
|
+
return make((provider, pathPrefix) => Effect.flatMapEager(Effect.all(Rec.map(configs, config => Effect.result(evaluateAt(config, provider, pathPrefix)))), resolveRecord));
|
|
213
259
|
}
|
|
214
260
|
}
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
return issue.issues.every(isMissingDataOnly);
|
|
234
|
-
case "AnyOf":
|
|
235
|
-
if (issue.issues.length === 0) {
|
|
236
|
-
return issue.actual === undefined;
|
|
237
|
-
}
|
|
238
|
-
return issue.issues.every(isMissingDataOnly);
|
|
261
|
+
const resolveArray = results => {
|
|
262
|
+
const values = [];
|
|
263
|
+
let firstFailure;
|
|
264
|
+
let firstAbsent;
|
|
265
|
+
let hasInput = false;
|
|
266
|
+
for (const result of results) {
|
|
267
|
+
if (Result.isFailure(result)) {
|
|
268
|
+
firstFailure ??= result.failure;
|
|
269
|
+
hasInput = hasInput || result.failure.hasInput;
|
|
270
|
+
continue;
|
|
271
|
+
}
|
|
272
|
+
const resolution = result.success;
|
|
273
|
+
if (resolution._tag === "Absent") {
|
|
274
|
+
firstAbsent ??= resolution;
|
|
275
|
+
} else {
|
|
276
|
+
values.push(resolution.value);
|
|
277
|
+
hasInput = hasInput || resolution.hasInput;
|
|
278
|
+
}
|
|
239
279
|
}
|
|
240
|
-
|
|
280
|
+
if (firstFailure !== undefined) {
|
|
281
|
+
return Effect.fail(evaluationFailure(firstFailure.error, hasInput));
|
|
282
|
+
}
|
|
283
|
+
if (firstAbsent !== undefined) {
|
|
284
|
+
return hasInput ? Effect.fail(evaluationFailure(firstAbsent.error, true)) : Effect.succeed(firstAbsent);
|
|
285
|
+
}
|
|
286
|
+
return Effect.succeed(resolved(values, hasInput));
|
|
287
|
+
};
|
|
288
|
+
const resolveRecord = results => {
|
|
289
|
+
const values = {};
|
|
290
|
+
let firstFailure;
|
|
291
|
+
let firstAbsent;
|
|
292
|
+
let hasInput = false;
|
|
293
|
+
for (const key in results) {
|
|
294
|
+
const result = results[key];
|
|
295
|
+
if (Result.isFailure(result)) {
|
|
296
|
+
firstFailure ??= result.failure;
|
|
297
|
+
hasInput = hasInput || result.failure.hasInput;
|
|
298
|
+
continue;
|
|
299
|
+
}
|
|
300
|
+
const resolution = result.success;
|
|
301
|
+
if (resolution._tag === "Absent") {
|
|
302
|
+
firstAbsent ??= resolution;
|
|
303
|
+
} else {
|
|
304
|
+
InternalRecord.assignProperty(values, key, resolution.value);
|
|
305
|
+
hasInput = hasInput || resolution.hasInput;
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
if (firstFailure !== undefined) {
|
|
309
|
+
return Effect.fail(evaluationFailure(firstFailure.error, hasInput));
|
|
310
|
+
}
|
|
311
|
+
if (firstAbsent !== undefined) {
|
|
312
|
+
return hasInput ? Effect.fail(evaluationFailure(firstAbsent.error, true)) : Effect.succeed(firstAbsent);
|
|
313
|
+
}
|
|
314
|
+
return Effect.succeed(resolved(values, hasInput));
|
|
315
|
+
};
|
|
241
316
|
/**
|
|
242
|
-
* Provides a fallback value when the config
|
|
317
|
+
* Provides a fallback value when the config cannot resolve because none of its
|
|
318
|
+
* relevant input is present.
|
|
243
319
|
*
|
|
244
320
|
* **When to use**
|
|
245
321
|
*
|
|
@@ -247,41 +323,35 @@ function isMissingDataOnly(issue) {
|
|
|
247
323
|
*
|
|
248
324
|
* **Gotchas**
|
|
249
325
|
*
|
|
250
|
-
*
|
|
251
|
-
*
|
|
252
|
-
*
|
|
326
|
+
* Validation errors and partially supplied groups still propagate. A schema
|
|
327
|
+
* that successfully decodes absent input also keeps its decoded value instead
|
|
328
|
+
* of using the default. Schema configs first represent a missing or
|
|
329
|
+
* incompatible provider shape as `undefined`; the default is used only when
|
|
330
|
+
* the schema rejects that value and no relevant input was found.
|
|
253
331
|
*
|
|
254
332
|
* **Example** (Defaulting a missing port)
|
|
255
333
|
*
|
|
256
|
-
* ```ts
|
|
334
|
+
* ```ts import.meta.vitest
|
|
257
335
|
* import { Config, ConfigProvider, Effect } from "effect"
|
|
258
336
|
*
|
|
259
337
|
* const port = Config.number("port").pipe(Config.withDefault(3000))
|
|
260
338
|
*
|
|
261
339
|
* const provider = ConfigProvider.fromUnknown({})
|
|
262
|
-
*
|
|
340
|
+
* Effect.runSync(port.parse(provider)) // => 3000
|
|
263
341
|
* ```
|
|
264
342
|
*
|
|
265
343
|
* @see {@link option} – returns `Option` instead of a default value
|
|
266
|
-
* @see {@link orElse} – catches all errors, not just
|
|
344
|
+
* @see {@link orElse} – catches all errors, not just absent input
|
|
267
345
|
*
|
|
268
346
|
* @category combinators
|
|
269
347
|
* @since 2.0.0
|
|
270
348
|
*/
|
|
271
349
|
export const withDefault = /*#__PURE__*/dual(2, (self, defaultValue) => {
|
|
272
|
-
return
|
|
273
|
-
if (Schema.isSchemaError(err.cause)) {
|
|
274
|
-
const issue = err.cause.issue;
|
|
275
|
-
if (isMissingDataOnly(issue)) {
|
|
276
|
-
return succeed(defaultValue);
|
|
277
|
-
}
|
|
278
|
-
}
|
|
279
|
-
return fail(err.cause);
|
|
280
|
-
});
|
|
350
|
+
return make((provider, pathPrefix) => Effect.mapEager(evaluateAt(self, provider, pathPrefix), resolution => resolution._tag === "Absent" ? resolved(defaultValue, false) : resolution));
|
|
281
351
|
});
|
|
282
352
|
/**
|
|
283
|
-
* Makes a config optional: returns `Some(value)` on success and `None` when
|
|
284
|
-
*
|
|
353
|
+
* Makes a config optional: returns `Some(value)` on success and `None` when the
|
|
354
|
+
* config cannot resolve because none of its relevant input is present.
|
|
285
355
|
*
|
|
286
356
|
* **When to use**
|
|
287
357
|
*
|
|
@@ -289,18 +359,21 @@ export const withDefault = /*#__PURE__*/dual(2, (self, defaultValue) => {
|
|
|
289
359
|
*
|
|
290
360
|
* **Gotchas**
|
|
291
361
|
*
|
|
292
|
-
*
|
|
293
|
-
*
|
|
362
|
+
* Validation errors and partially supplied groups still propagate. Successful
|
|
363
|
+
* values are always wrapped in `Some`, including `undefined` when the schema
|
|
364
|
+
* explicitly accepts it. Schema configs first represent a missing or
|
|
365
|
+
* incompatible provider shape as `undefined`; `None` is returned only when the
|
|
366
|
+
* schema rejects that value and no relevant input was found.
|
|
294
367
|
*
|
|
295
368
|
* **Example** (Reading optional config)
|
|
296
369
|
*
|
|
297
|
-
* ```ts
|
|
298
|
-
* import { Config, ConfigProvider, Effect } from "effect"
|
|
370
|
+
* ```ts import.meta.vitest
|
|
371
|
+
* import { Config, ConfigProvider, Effect, Option } from "effect"
|
|
299
372
|
*
|
|
300
373
|
* const maybePort = Config.option(Config.number("port"))
|
|
301
374
|
*
|
|
302
375
|
* const provider = ConfigProvider.fromUnknown({})
|
|
303
|
-
*
|
|
376
|
+
* Effect.runSync(maybePort.parse(provider)) // => Option.none()
|
|
304
377
|
* ```
|
|
305
378
|
*
|
|
306
379
|
* @see {@link withDefault} – provide a concrete fallback value instead
|
|
@@ -324,8 +397,8 @@ export const option = self => self.pipe(map(Option.some), withDefault(Option.non
|
|
|
324
397
|
*
|
|
325
398
|
* **Example** (Unwrapping a record of configs)
|
|
326
399
|
*
|
|
327
|
-
* ```ts
|
|
328
|
-
* import { Config } from "effect"
|
|
400
|
+
* ```ts import.meta.vitest
|
|
401
|
+
* import { Config, ConfigProvider, Effect } from "effect"
|
|
329
402
|
*
|
|
330
403
|
* interface Options {
|
|
331
404
|
* key: string
|
|
@@ -333,115 +406,124 @@ export const option = self => self.pipe(map(Option.some), withDefault(Option.non
|
|
|
333
406
|
*
|
|
334
407
|
* const makeConfig = (config: Config.Wrap<Options>): Config.Config<Options> =>
|
|
335
408
|
* Config.unwrap(config)
|
|
409
|
+
*
|
|
410
|
+
* const config = makeConfig({ key: Config.string("key") })
|
|
411
|
+
* const provider = ConfigProvider.fromUnknown({ key: "value" })
|
|
412
|
+
* Effect.runSync(config.parse(provider)) // => { key: "value" }
|
|
336
413
|
* ```
|
|
337
414
|
*
|
|
338
415
|
* @see {@link Wrap} – the utility type accepted by this function
|
|
339
416
|
*
|
|
340
|
-
* @category
|
|
417
|
+
* @category converting
|
|
341
418
|
* @since 2.0.0
|
|
342
419
|
*/
|
|
343
420
|
export const unwrap = wrapped => {
|
|
344
421
|
if (isConfig(wrapped)) return wrapped;
|
|
345
|
-
return
|
|
346
|
-
const entries = Object.entries(wrapped);
|
|
347
|
-
const configs = entries.map(([key, config]) => unwrap(config).parse(provider, pathPrefix).pipe(Effect.map(value => [key, value])));
|
|
348
|
-
return Effect.all(configs).pipe(Effect.map(Object.fromEntries));
|
|
349
|
-
});
|
|
422
|
+
return all(Rec.map(wrapped, config => unwrap(config)));
|
|
350
423
|
};
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
{
|
|
372
|
-
if (stat.value !== undefined) return stat.value;
|
|
373
|
-
const out = [];
|
|
374
|
-
for (let i = 0; i < stat.length; i++) {
|
|
375
|
-
out.push(yield* dump(provider, [...path, i]));
|
|
376
|
-
}
|
|
377
|
-
return out;
|
|
378
|
-
}
|
|
424
|
+
const cursorToString = () => "<configuration>";
|
|
425
|
+
const loadCursor = (provider, path) => provider.load(path).pipe(Effect.orDie, Effect.mapEager(node => ({
|
|
426
|
+
provider,
|
|
427
|
+
path,
|
|
428
|
+
node,
|
|
429
|
+
toString: cursorToString
|
|
430
|
+
})));
|
|
431
|
+
const loadChildCursor = (cursor, segment) => loadCursor(cursor.provider, [...cursor.path, segment]);
|
|
432
|
+
const getScalar = node => node?.value;
|
|
433
|
+
const decodeFromCursor = (ast, decode) => SchemaAST.decodeTo(SchemaAST.unknown, ast, new SchemaTransformation.Transformation(SchemaGetter.transformOrFail(input => decode(input)), SchemaGetter.passthrough()));
|
|
434
|
+
const isScalarInput = ast => {
|
|
435
|
+
switch (ast._tag) {
|
|
436
|
+
case "Union":
|
|
437
|
+
return ast.types.every(isScalarInput);
|
|
438
|
+
case "Objects":
|
|
439
|
+
case "Arrays":
|
|
440
|
+
case "Suspend":
|
|
441
|
+
return false;
|
|
442
|
+
default:
|
|
443
|
+
return true;
|
|
379
444
|
}
|
|
380
|
-
}
|
|
381
|
-
const
|
|
445
|
+
};
|
|
446
|
+
const hasProviderInput = (ast, node) => {
|
|
382
447
|
switch (ast._tag) {
|
|
383
448
|
case "Objects":
|
|
384
|
-
|
|
385
|
-
const stat = yield* provider.load(path);
|
|
386
|
-
if (stat === undefined && path.length > 0) return undefined;
|
|
387
|
-
const out = {};
|
|
388
|
-
for (const ps of ast.propertySignatures) {
|
|
389
|
-
const name = ps.name;
|
|
390
|
-
if (typeof name === "string") {
|
|
391
|
-
const value = yield* recur(ps.type, provider, [...path, name]);
|
|
392
|
-
if (value !== undefined) out[name] = value;
|
|
393
|
-
}
|
|
394
|
-
}
|
|
395
|
-
if (ast.indexSignatures.length > 0) {
|
|
396
|
-
if (stat && stat._tag === "Record") {
|
|
397
|
-
for (const is of ast.indexSignatures) {
|
|
398
|
-
const matches = SchemaParser._is(is.parameter);
|
|
399
|
-
for (const key of stat.keys) {
|
|
400
|
-
if (!Object.hasOwn(out, key) && matches(key)) {
|
|
401
|
-
const value = yield* recur(is.type, provider, [...path, key]);
|
|
402
|
-
if (value !== undefined) out[key] = value;
|
|
403
|
-
}
|
|
404
|
-
}
|
|
405
|
-
}
|
|
406
|
-
}
|
|
407
|
-
}
|
|
408
|
-
return out;
|
|
409
|
-
}
|
|
449
|
+
return node?._tag === "Record";
|
|
410
450
|
case "Arrays":
|
|
411
|
-
|
|
412
|
-
const stat = yield* provider.load(path);
|
|
413
|
-
if (stat === undefined) return undefined;
|
|
414
|
-
if (stat && stat._tag === "Value") return stat.value === "" ? [] : stat.value.split(",");
|
|
415
|
-
if (stat && stat._tag === "Array" && stat.value !== undefined) {
|
|
416
|
-
return stat.value === "" ? [] : stat.value.split(",");
|
|
417
|
-
}
|
|
418
|
-
const out = [];
|
|
419
|
-
const length = stat && stat._tag === "Array" ? stat.length : ast.elements.length;
|
|
420
|
-
for (let i = 0; i < length; i++) {
|
|
421
|
-
const element = ast.elements[i] ?? ast.rest[0];
|
|
422
|
-
if (element !== undefined) {
|
|
423
|
-
out.push(yield* recur(element, provider, [...path, i]));
|
|
424
|
-
}
|
|
425
|
-
}
|
|
426
|
-
return out;
|
|
427
|
-
}
|
|
451
|
+
return node?._tag === "Array";
|
|
428
452
|
case "Union":
|
|
429
|
-
|
|
430
|
-
return yield* dump(provider, path);
|
|
453
|
+
return ast.types.some(ast => hasProviderInput(ast, node));
|
|
431
454
|
case "Suspend":
|
|
432
|
-
return
|
|
455
|
+
return hasProviderInput(ast.thunk(), node);
|
|
433
456
|
default:
|
|
434
|
-
|
|
435
|
-
// Base primitives / string-like encoded nodes.
|
|
436
|
-
const stat = yield* provider.load(path);
|
|
437
|
-
if (stat === undefined) return undefined;
|
|
438
|
-
if (stat._tag === "Value") return stat.value;
|
|
439
|
-
if (stat._tag === "Record" && stat.value !== undefined) return stat.value;
|
|
440
|
-
if (stat._tag === "Array" && stat.value !== undefined) return stat.value;
|
|
441
|
-
// Container without a co-located value cannot satisfy a scalar request.
|
|
442
|
-
return undefined;
|
|
443
|
-
}
|
|
457
|
+
return getScalar(node) !== undefined;
|
|
444
458
|
}
|
|
459
|
+
};
|
|
460
|
+
const toConfigCursorAST = /*#__PURE__*/memoize(root => {
|
|
461
|
+
const seen = new WeakSet();
|
|
462
|
+
const recur = SchemaAST.applyToSelfOrLastLinkEncoding(ast => {
|
|
463
|
+
seen.add(ast);
|
|
464
|
+
switch (ast._tag) {
|
|
465
|
+
case "Objects":
|
|
466
|
+
{
|
|
467
|
+
const matchesIndex = ast.indexSignatures.map(is => SchemaParser._is(is.parameter));
|
|
468
|
+
const materialize = Effect.fnUntraced(function* (cursor) {
|
|
469
|
+
if (cursor.node?._tag !== "Record") {
|
|
470
|
+
return undefined;
|
|
471
|
+
}
|
|
472
|
+
const node = cursor.node;
|
|
473
|
+
const keys = new Set();
|
|
474
|
+
for (const property of ast.propertySignatures) {
|
|
475
|
+
if (typeof property.name === "string") keys.add(property.name);
|
|
476
|
+
}
|
|
477
|
+
if (matchesIndex.length > 0) {
|
|
478
|
+
for (const key of node.keys) {
|
|
479
|
+
if (matchesIndex.some(matches => matches(key))) keys.add(key);
|
|
480
|
+
}
|
|
481
|
+
}
|
|
482
|
+
const out = {};
|
|
483
|
+
for (const key of keys) {
|
|
484
|
+
const child = yield* loadChildCursor(cursor, key);
|
|
485
|
+
if (child.node !== undefined) InternalRecord.assignProperty(out, key, child);
|
|
486
|
+
}
|
|
487
|
+
return out;
|
|
488
|
+
});
|
|
489
|
+
return decodeFromCursor(ast.recur(recur, ast => ast), materialize);
|
|
490
|
+
}
|
|
491
|
+
case "Arrays":
|
|
492
|
+
{
|
|
493
|
+
const materialize = Effect.fnUntraced(function* (cursor) {
|
|
494
|
+
if (cursor.node?._tag !== "Array") {
|
|
495
|
+
return undefined;
|
|
496
|
+
}
|
|
497
|
+
const out = [];
|
|
498
|
+
for (let i = 0; i < cursor.node.length; i++) {
|
|
499
|
+
out.push(yield* loadChildCursor(cursor, i));
|
|
500
|
+
}
|
|
501
|
+
return out;
|
|
502
|
+
});
|
|
503
|
+
return decodeFromCursor(ast.recur(recur), materialize);
|
|
504
|
+
}
|
|
505
|
+
case "Union":
|
|
506
|
+
for (const member of ast.types) {
|
|
507
|
+
recur(member);
|
|
508
|
+
}
|
|
509
|
+
return isScalarInput(ast) ? decodeFromCursor(ast, cursor => Effect.succeed(getScalar(cursor.node))) : ast.recur(recur);
|
|
510
|
+
case "Suspend":
|
|
511
|
+
{
|
|
512
|
+
const target = ast.thunk();
|
|
513
|
+
// Force new branches so opaque encodings fail when the Config is constructed.
|
|
514
|
+
if (!seen.has(target)) recur(target);
|
|
515
|
+
return ast.recur(recur);
|
|
516
|
+
}
|
|
517
|
+
case "Declaration":
|
|
518
|
+
case "Any":
|
|
519
|
+
throw new globalThis.Error("Config.schema does not support opaque StringTree encodings", {
|
|
520
|
+
cause: ast
|
|
521
|
+
});
|
|
522
|
+
default:
|
|
523
|
+
return decodeFromCursor(ast, cursor => Effect.succeed(getScalar(cursor.node)));
|
|
524
|
+
}
|
|
525
|
+
});
|
|
526
|
+
return recur(root);
|
|
445
527
|
});
|
|
446
528
|
/**
|
|
447
529
|
* Creates a `Config<T>` from a `Schema.Codec`.
|
|
@@ -460,12 +542,47 @@ const recur = /*#__PURE__*/Effect.fnUntraced(function* (ast, provider, path) {
|
|
|
460
542
|
* Convenience constructors such as `string`, `number`, and `boolean` delegate
|
|
461
543
|
* to this API.
|
|
462
544
|
*
|
|
463
|
-
* The codec is
|
|
464
|
-
*
|
|
545
|
+
* The codec is converted to its canonical `StringTree` form. Its encoded shape
|
|
546
|
+
* determines how provider data is loaded: scalar schemas read a co-located
|
|
547
|
+
* scalar value, object schemas read declared properties and matching record
|
|
548
|
+
* keys, and array schemas read indexed children. A mixed-shape union loads each
|
|
549
|
+
* member according to that member's shape before applying the union's mode and
|
|
550
|
+
* checks.
|
|
551
|
+
*
|
|
552
|
+
* At the config's lookup path, a missing node or a node that cannot provide the
|
|
553
|
+
* representation required by the schema is decoded as `undefined`. Missing
|
|
554
|
+
* object properties remain omitted so the schema's property semantics still
|
|
555
|
+
* apply. Decoding success always wins, even when no provider input was found.
|
|
556
|
+
* For example,
|
|
557
|
+
* `Schema.UndefinedOr(Schema.String)` decodes to `undefined` and is not replaced
|
|
558
|
+
* by {@link withDefault}. If decoding fails and no relevant representation was
|
|
559
|
+
* found, the config is absent. Invalid data in a relevant representation is a
|
|
560
|
+
* validation failure. Provider `SourceError`s are always failures.
|
|
561
|
+
*
|
|
562
|
+
* **Gotchas**
|
|
563
|
+
*
|
|
564
|
+
* Plain `Schema.Array` and `Schema.Record` schemas use structural provider
|
|
565
|
+
* input. Use {@link Array} or {@link Record} when a flat separated string must
|
|
566
|
+
* also be accepted.
|
|
567
|
+
*
|
|
568
|
+
* `Schema.Struct` and {@link all} describe different lookup models. An
|
|
569
|
+
* explicitly present empty object is relevant input for a struct and required
|
|
570
|
+
* fields are validated. The same empty parent container does not make an
|
|
571
|
+
* `all` group present when all of its child configs are absent.
|
|
572
|
+
*
|
|
573
|
+
* The canonical `StringTree` encoding must expose a concrete scalar, object,
|
|
574
|
+
* array, or union shape. Opaque encodings such as `Schema.Any`,
|
|
575
|
+
* `Schema.Unknown`, `Schema.ObjectKeyword`, `Schema.Json`, and
|
|
576
|
+
* `Schema.MutableJson` are rejected synchronously when this config is
|
|
577
|
+
* constructed, including when they are nested in another schema. Suspended
|
|
578
|
+
* recursive schemas remain supported when their eventual shape is concrete.
|
|
579
|
+
* Declarations such as `Schema.URL` also remain supported when their canonical
|
|
580
|
+
* encoding has a concrete shape. To read arbitrary JSON from one scalar value,
|
|
581
|
+
* use `Schema.fromJsonString(Schema.Json)`.
|
|
465
582
|
*
|
|
466
583
|
* **Example** (Reading a structured config)
|
|
467
584
|
*
|
|
468
|
-
* ```ts
|
|
585
|
+
* ```ts import.meta.vitest
|
|
469
586
|
* import { Config, ConfigProvider, Effect, Schema } from "effect"
|
|
470
587
|
*
|
|
471
588
|
* const DbConfig = Config.schema(
|
|
@@ -480,8 +597,7 @@ const recur = /*#__PURE__*/Effect.fnUntraced(function* (ast, provider, path) {
|
|
|
480
597
|
* db: { host: "localhost", port: 5432 }
|
|
481
598
|
* })
|
|
482
599
|
*
|
|
483
|
-
*
|
|
484
|
-
* // { host: "localhost", port: 5432 }
|
|
600
|
+
* Effect.runSync(DbConfig.parse(provider)) // => { host: "localhost", port: 5432 }
|
|
485
601
|
* ```
|
|
486
602
|
*
|
|
487
603
|
* @see {@link string} / {@link number} / {@link boolean} – shortcuts for
|
|
@@ -492,12 +608,18 @@ const recur = /*#__PURE__*/Effect.fnUntraced(function* (ast, provider, path) {
|
|
|
492
608
|
*/
|
|
493
609
|
export function schema(codec, path) {
|
|
494
610
|
const codecStringTree = Schema.toCodecStringTree(codec);
|
|
495
|
-
const
|
|
496
|
-
const
|
|
611
|
+
const encodedAst = SchemaAST.toEncoded(codecStringTree.ast);
|
|
612
|
+
const decodeCursor = SchemaParser.decodeUnknownEffect(Schema.make(toConfigCursorAST(codecStringTree.ast)));
|
|
497
613
|
const localPath = typeof path === "string" ? [path] : path ?? [];
|
|
498
614
|
return make((provider, pathPrefix) => {
|
|
499
615
|
const fullPath = [...pathPrefix, ...localPath];
|
|
500
|
-
return
|
|
616
|
+
return catchSourceError(loadCursor(provider, fullPath), false).pipe(Effect.flatMapEager(cursor => {
|
|
617
|
+
const hasInput = hasProviderInput(encodedAst, cursor.node);
|
|
618
|
+
return catchSourceError(decodeCursor(cursor).pipe(Effect.mapEager(value => resolved(value, hasInput)), Effect.catchEager(issue => {
|
|
619
|
+
const error = new ConfigError(new Schema.SchemaError(fullPath.length > 0 ? new SchemaIssue.Pointer(fullPath, issue) : issue));
|
|
620
|
+
return hasInput ? Effect.fail(evaluationFailure(error, true)) : Effect.succeed(absent(error));
|
|
621
|
+
})), hasInput);
|
|
622
|
+
}));
|
|
501
623
|
});
|
|
502
624
|
}
|
|
503
625
|
/** @internal */
|
|
@@ -579,7 +701,7 @@ export const LogLevel = /*#__PURE__*/Schema.Literals(LogLevel_.values);
|
|
|
579
701
|
*
|
|
580
702
|
* **Example** (Parsing a comma-separated record)
|
|
581
703
|
*
|
|
582
|
-
* ```ts
|
|
704
|
+
* ```ts import.meta.vitest
|
|
583
705
|
* import { Config, ConfigProvider, Effect, Schema } from "effect"
|
|
584
706
|
*
|
|
585
707
|
* const schema = Config.Record(Schema.String, Schema.String)
|
|
@@ -592,33 +714,37 @@ export const LogLevel = /*#__PURE__*/Schema.Literals(LogLevel_.values);
|
|
|
592
714
|
* }
|
|
593
715
|
* })
|
|
594
716
|
*
|
|
595
|
-
*
|
|
596
|
-
* //
|
|
597
|
-
*
|
|
598
|
-
*
|
|
599
|
-
* // 'custom.attribute': 'value'
|
|
600
|
-
* // }
|
|
717
|
+
* const result = Effect.runSync(config.parse(provider))
|
|
718
|
+
* result["service.name"] // => "my-service"
|
|
719
|
+
* result["service.version"] // => "1.0.0"
|
|
720
|
+
* result["custom.attribute"] // => "value"
|
|
601
721
|
* ```
|
|
602
722
|
*
|
|
723
|
+
* @see {@link Array} for separated or structural array input
|
|
724
|
+
*
|
|
603
725
|
* @category schemas
|
|
604
726
|
* @since 4.0.0
|
|
605
727
|
*/
|
|
606
728
|
export const Record = (key, value, options) => {
|
|
607
729
|
const record = Schema.Record(key, value);
|
|
608
|
-
const
|
|
730
|
+
const split = SchemaTransformation.splitKeyValue(options);
|
|
731
|
+
const recordString = Schema.String.pipe(Schema.decodeTo(Schema.toCodecStringTree(record), {
|
|
732
|
+
decode: split.decode,
|
|
733
|
+
encode: SchemaGetter.passthrough({
|
|
734
|
+
strict: false
|
|
735
|
+
}).compose(split.encode)
|
|
736
|
+
}));
|
|
609
737
|
return Schema.Union([record, recordString]);
|
|
610
738
|
};
|
|
611
|
-
/**
|
|
612
|
-
* @category schemas
|
|
613
|
-
* @since 4.0.0
|
|
614
|
-
*/
|
|
615
739
|
const ArrayConfig = (value, options) => {
|
|
616
740
|
const array = Schema.Array(value);
|
|
617
741
|
const separator = options?.separator ?? ",";
|
|
618
|
-
const arrayString = Schema.String.pipe(Schema.decodeTo(Schema.
|
|
742
|
+
const arrayString = Schema.String.pipe(Schema.decodeTo(Schema.toCodecStringTree(array), {
|
|
619
743
|
decode: SchemaGetter.split(options),
|
|
620
|
-
encode: SchemaGetter.
|
|
621
|
-
|
|
744
|
+
encode: SchemaGetter.passthrough({
|
|
745
|
+
strict: false
|
|
746
|
+
}).compose(SchemaGetter.transform(input => input.join(separator)))
|
|
747
|
+
}));
|
|
622
748
|
return Schema.Union([arrayString, array]);
|
|
623
749
|
};
|
|
624
750
|
export {
|
|
@@ -635,6 +761,8 @@ export {
|
|
|
635
761
|
* Accepts either a JSON-like array from the provider or a flat string like
|
|
636
762
|
* `"a,b,c"`. The `separator` defaults to `","` and can be customized.
|
|
637
763
|
*
|
|
764
|
+
* @see {@link Record} for separated or structural record input
|
|
765
|
+
*
|
|
638
766
|
* @category schemas
|
|
639
767
|
* @since 4.0.0
|
|
640
768
|
*/
|
|
@@ -654,7 +782,7 @@ ArrayConfig as Array };
|
|
|
654
782
|
* @since 2.0.0
|
|
655
783
|
*/
|
|
656
784
|
export function fail(err) {
|
|
657
|
-
return make(() => Effect.fail(new ConfigError(err)));
|
|
785
|
+
return make(() => Effect.fail(evaluationFailure(new ConfigError(err), false)));
|
|
658
786
|
}
|
|
659
787
|
/**
|
|
660
788
|
* Creates a config that always succeeds with the given value, ignoring the
|
|
@@ -667,19 +795,21 @@ export function fail(err) {
|
|
|
667
795
|
*
|
|
668
796
|
* **Example** (Returning a constant fallback)
|
|
669
797
|
*
|
|
670
|
-
* ```ts
|
|
671
|
-
* import { Config } from "effect"
|
|
798
|
+
* ```ts import.meta.vitest
|
|
799
|
+
* import { Config, ConfigProvider, Effect } from "effect"
|
|
672
800
|
*
|
|
673
801
|
* const host = Config.string("HOST").pipe(
|
|
674
802
|
* Config.orElse(() => Config.succeed("localhost"))
|
|
675
803
|
* )
|
|
804
|
+
* const provider = ConfigProvider.fromUnknown({})
|
|
805
|
+
* Effect.runSync(host.parse(provider)) // => "localhost"
|
|
676
806
|
* ```
|
|
677
807
|
*
|
|
678
808
|
* @category constructors
|
|
679
809
|
* @since 2.0.0
|
|
680
810
|
*/
|
|
681
811
|
export function succeed(value) {
|
|
682
|
-
return make(() => Effect.succeed(value));
|
|
812
|
+
return make(() => Effect.succeed(resolved(value, false)));
|
|
683
813
|
}
|
|
684
814
|
/**
|
|
685
815
|
* Creates a config for a single string value.
|
|
@@ -694,13 +824,13 @@ export function succeed(value) {
|
|
|
694
824
|
*
|
|
695
825
|
* **Example** (Reading a string config)
|
|
696
826
|
*
|
|
697
|
-
* ```ts
|
|
827
|
+
* ```ts import.meta.vitest
|
|
698
828
|
* import { Config, ConfigProvider, Effect } from "effect"
|
|
699
829
|
*
|
|
700
830
|
* const host = Config.string("HOST")
|
|
701
831
|
*
|
|
702
832
|
* const provider = ConfigProvider.fromUnknown({ HOST: "localhost" })
|
|
703
|
-
*
|
|
833
|
+
* Effect.runSync(host.parse(provider)) // => "localhost"
|
|
704
834
|
* ```
|
|
705
835
|
*
|
|
706
836
|
* @see {@link nonEmptyString} – rejects empty strings
|
|
@@ -806,10 +936,12 @@ export function int(name) {
|
|
|
806
936
|
*
|
|
807
937
|
* **Example** (Restricting to a literal)
|
|
808
938
|
*
|
|
809
|
-
* ```ts
|
|
810
|
-
* import { Config } from "effect"
|
|
939
|
+
* ```ts import.meta.vitest
|
|
940
|
+
* import { Config, ConfigProvider, Effect } from "effect"
|
|
811
941
|
*
|
|
812
942
|
* const env = Config.literal("production", "ENV")
|
|
943
|
+
* const provider = ConfigProvider.fromUnknown({ ENV: "production" })
|
|
944
|
+
* Effect.runSync(env.parse(provider)) // => "production"
|
|
813
945
|
* ```
|
|
814
946
|
*
|
|
815
947
|
* @see {@link literals} – accepts multiple literal values
|
|
@@ -832,10 +964,12 @@ export function literal(literal, name) {
|
|
|
832
964
|
*
|
|
833
965
|
* **Example** (Restricting to a set of literals)
|
|
834
966
|
*
|
|
835
|
-
* ```ts
|
|
836
|
-
* import { Config } from "effect"
|
|
967
|
+
* ```ts import.meta.vitest
|
|
968
|
+
* import { Config, ConfigProvider, Effect } from "effect"
|
|
837
969
|
*
|
|
838
970
|
* const env = Config.literals(["development", "production"], "ENV")
|
|
971
|
+
* const provider = ConfigProvider.fromUnknown({ ENV: "development" })
|
|
972
|
+
* Effect.runSync(env.parse(provider)) // => "development"
|
|
839
973
|
* ```
|
|
840
974
|
*
|
|
841
975
|
* @see {@link literal} for accepting one specific literal value
|
|
@@ -863,13 +997,10 @@ export function literals(literals, name) {
|
|
|
863
997
|
*
|
|
864
998
|
* **Example** (Reading a boolean flag)
|
|
865
999
|
*
|
|
866
|
-
* ```ts
|
|
1000
|
+
* ```ts import.meta.vitest
|
|
867
1001
|
* import { Config, ConfigProvider, Effect } from "effect"
|
|
868
1002
|
*
|
|
869
|
-
* const program =
|
|
870
|
-
* const flag = yield* Config.boolean("FEATURE_FLAG")
|
|
871
|
-
* console.log(flag)
|
|
872
|
-
* })
|
|
1003
|
+
* const program = Config.boolean("FEATURE_FLAG")
|
|
873
1004
|
*
|
|
874
1005
|
* const provider = ConfigProvider.fromEnv({
|
|
875
1006
|
* env: {
|
|
@@ -879,8 +1010,7 @@ export function literals(literals, name) {
|
|
|
879
1010
|
*
|
|
880
1011
|
* Effect.runSync(
|
|
881
1012
|
* program.pipe(Effect.provideService(ConfigProvider.ConfigProvider, provider))
|
|
882
|
-
* )
|
|
883
|
-
* // Output: true
|
|
1013
|
+
* ) // => true
|
|
884
1014
|
* ```
|
|
885
1015
|
*
|
|
886
1016
|
* @see {@link Boolean} for the underlying boolean codec
|
|
@@ -908,13 +1038,10 @@ export function boolean(name) {
|
|
|
908
1038
|
*
|
|
909
1039
|
* **Example** (Reading a duration)
|
|
910
1040
|
*
|
|
911
|
-
* ```ts
|
|
912
|
-
* import { Config, ConfigProvider, Effect } from "effect"
|
|
1041
|
+
* ```ts import.meta.vitest
|
|
1042
|
+
* import { Config, ConfigProvider, Duration, Effect } from "effect"
|
|
913
1043
|
*
|
|
914
|
-
* const program = Effect.
|
|
915
|
-
* const duration = yield* Config.duration("DURATION")
|
|
916
|
-
* console.log(duration)
|
|
917
|
-
* })
|
|
1044
|
+
* const program = Config.duration("DURATION").pipe(Effect.map(Duration.toMillis))
|
|
918
1045
|
*
|
|
919
1046
|
* const provider = ConfigProvider.fromEnv({
|
|
920
1047
|
* env: {
|
|
@@ -924,8 +1051,7 @@ export function boolean(name) {
|
|
|
924
1051
|
*
|
|
925
1052
|
* Effect.runSync(
|
|
926
1053
|
* program.pipe(Effect.provideService(ConfigProvider.ConfigProvider, provider))
|
|
927
|
-
* )
|
|
928
|
-
* // Output: Duration { _tag: "millis", value: 10000 }
|
|
1054
|
+
* ) // => 10000
|
|
929
1055
|
* ```
|
|
930
1056
|
*
|
|
931
1057
|
* @see {@link schema} for decoding configuration values with a custom codec
|
|
@@ -949,13 +1075,10 @@ export function duration(name) {
|
|
|
949
1075
|
*
|
|
950
1076
|
* **Example** (Reading a port)
|
|
951
1077
|
*
|
|
952
|
-
* ```ts
|
|
1078
|
+
* ```ts import.meta.vitest
|
|
953
1079
|
* import { Config, ConfigProvider, Effect } from "effect"
|
|
954
1080
|
*
|
|
955
|
-
* const program =
|
|
956
|
-
* const port = yield* Config.port("PORT")
|
|
957
|
-
* console.log(port)
|
|
958
|
-
* })
|
|
1081
|
+
* const program = Config.port("PORT")
|
|
959
1082
|
*
|
|
960
1083
|
* const provider = ConfigProvider.fromEnv({
|
|
961
1084
|
* env: {
|
|
@@ -965,8 +1088,7 @@ export function duration(name) {
|
|
|
965
1088
|
*
|
|
966
1089
|
* Effect.runSync(
|
|
967
1090
|
* program.pipe(Effect.provideService(ConfigProvider.ConfigProvider, provider))
|
|
968
|
-
* )
|
|
969
|
-
* // Output: 8080
|
|
1091
|
+
* ) // => 8080
|
|
970
1092
|
* ```
|
|
971
1093
|
*
|
|
972
1094
|
* @see {@link int} for integer config values outside the port range
|
|
@@ -994,13 +1116,10 @@ export function port(name) {
|
|
|
994
1116
|
*
|
|
995
1117
|
* **Example** (Reading a log level)
|
|
996
1118
|
*
|
|
997
|
-
* ```ts
|
|
1119
|
+
* ```ts import.meta.vitest
|
|
998
1120
|
* import { Config, ConfigProvider, Effect } from "effect"
|
|
999
1121
|
*
|
|
1000
|
-
* const program =
|
|
1001
|
-
* const logLevel = yield* Config.logLevel("LOG_LEVEL")
|
|
1002
|
-
* console.log(logLevel)
|
|
1003
|
-
* })
|
|
1122
|
+
* const program = Config.logLevel("LOG_LEVEL")
|
|
1004
1123
|
*
|
|
1005
1124
|
* const provider = ConfigProvider.fromEnv({
|
|
1006
1125
|
* env: {
|
|
@@ -1010,8 +1129,7 @@ export function port(name) {
|
|
|
1010
1129
|
*
|
|
1011
1130
|
* Effect.runSync(
|
|
1012
1131
|
* program.pipe(Effect.provideService(ConfigProvider.ConfigProvider, provider))
|
|
1013
|
-
* )
|
|
1014
|
-
* // Output: "Info"
|
|
1132
|
+
* ) // => "Info"
|
|
1015
1133
|
* ```
|
|
1016
1134
|
*
|
|
1017
1135
|
* @see {@link LogLevel} for the underlying log-level codec
|
|
@@ -1037,13 +1155,10 @@ export function logLevel(name) {
|
|
|
1037
1155
|
*
|
|
1038
1156
|
* **Example** (Reading a secret)
|
|
1039
1157
|
*
|
|
1040
|
-
* ```ts
|
|
1158
|
+
* ```ts import.meta.vitest
|
|
1041
1159
|
* import { Config, ConfigProvider, Effect } from "effect"
|
|
1042
1160
|
*
|
|
1043
|
-
* const program = Effect.
|
|
1044
|
-
* const apiKey = yield* Config.redacted("API_KEY")
|
|
1045
|
-
* console.log(apiKey)
|
|
1046
|
-
* })
|
|
1161
|
+
* const program = Config.redacted("API_KEY").pipe(Effect.map(String))
|
|
1047
1162
|
*
|
|
1048
1163
|
* const provider = ConfigProvider.fromEnv({
|
|
1049
1164
|
* env: {
|
|
@@ -1053,8 +1168,7 @@ export function logLevel(name) {
|
|
|
1053
1168
|
*
|
|
1054
1169
|
* Effect.runSync(
|
|
1055
1170
|
* program.pipe(Effect.provideService(ConfigProvider.ConfigProvider, provider))
|
|
1056
|
-
* )
|
|
1057
|
-
* // Output: <redacted>
|
|
1171
|
+
* ) // => "<redacted>"
|
|
1058
1172
|
* ```
|
|
1059
1173
|
*
|
|
1060
1174
|
* @see {@link string} for non-secret string settings
|
|
@@ -1082,13 +1196,10 @@ export function redacted(name) {
|
|
|
1082
1196
|
*
|
|
1083
1197
|
* **Example** (Reading a URL)
|
|
1084
1198
|
*
|
|
1085
|
-
* ```ts
|
|
1199
|
+
* ```ts import.meta.vitest
|
|
1086
1200
|
* import { Config, ConfigProvider, Effect } from "effect"
|
|
1087
1201
|
*
|
|
1088
|
-
* const program = Effect.
|
|
1089
|
-
* const url = yield* Config.url("URL")
|
|
1090
|
-
* console.log(url)
|
|
1091
|
-
* })
|
|
1202
|
+
* const program = Config.url("URL").pipe(Effect.map((url) => url.href))
|
|
1092
1203
|
*
|
|
1093
1204
|
* const provider = ConfigProvider.fromEnv({
|
|
1094
1205
|
* env: {
|
|
@@ -1098,22 +1209,7 @@ export function redacted(name) {
|
|
|
1098
1209
|
*
|
|
1099
1210
|
* Effect.runSync(
|
|
1100
1211
|
* program.pipe(Effect.provideService(ConfigProvider.ConfigProvider, provider))
|
|
1101
|
-
* )
|
|
1102
|
-
* // Output:
|
|
1103
|
-
* // URL {
|
|
1104
|
-
* // href: 'https://example.com/',
|
|
1105
|
-
* // origin: 'https://example.com',
|
|
1106
|
-
* // protocol: 'https:',
|
|
1107
|
-
* // username: '',
|
|
1108
|
-
* // password: '',
|
|
1109
|
-
* // host: 'example.com',
|
|
1110
|
-
* // hostname: 'example.com',
|
|
1111
|
-
* // port: '',
|
|
1112
|
-
* // pathname: '/',
|
|
1113
|
-
* // search: '',
|
|
1114
|
-
* // searchParams: URLSearchParams {},
|
|
1115
|
-
* // hash: ''
|
|
1116
|
-
* // }
|
|
1212
|
+
* ) // => "https://example.com/"
|
|
1117
1213
|
* ```
|
|
1118
1214
|
*
|
|
1119
1215
|
* @see {@link schema} for decoding configuration values with a custom codec
|
|
@@ -1133,7 +1229,7 @@ export function url(name) {
|
|
|
1133
1229
|
*
|
|
1134
1230
|
* **Details**
|
|
1135
1231
|
*
|
|
1136
|
-
* Shortcut for `Config.schema(Schema.
|
|
1232
|
+
* Shortcut for `Config.schema(Schema.Date, name)`.
|
|
1137
1233
|
*
|
|
1138
1234
|
* **Gotchas**
|
|
1139
1235
|
*
|
|
@@ -1141,21 +1237,20 @@ export function url(name) {
|
|
|
1141
1237
|
*
|
|
1142
1238
|
* **Example** (Reading a date)
|
|
1143
1239
|
*
|
|
1144
|
-
* ```ts
|
|
1240
|
+
* ```ts import.meta.vitest
|
|
1145
1241
|
* import { Config, ConfigProvider, Effect } from "effect"
|
|
1146
1242
|
*
|
|
1147
1243
|
* const createdAt = Config.date("CREATED_AT")
|
|
1148
1244
|
*
|
|
1149
1245
|
* const provider = ConfigProvider.fromUnknown({ CREATED_AT: "2024-01-15" })
|
|
1150
|
-
*
|
|
1151
|
-
* // Date("2024-01-15T00:00:00.000Z")
|
|
1246
|
+
* Effect.runSync(createdAt.parse(provider)).toISOString() // => "2024-01-15T00:00:00.000Z"
|
|
1152
1247
|
* ```
|
|
1153
1248
|
*
|
|
1154
1249
|
* @category constructors
|
|
1155
1250
|
* @since 2.0.0
|
|
1156
1251
|
*/
|
|
1157
1252
|
export function date(name) {
|
|
1158
|
-
return schema(Schema.
|
|
1253
|
+
return schema(Schema.Date, name);
|
|
1159
1254
|
}
|
|
1160
1255
|
/**
|
|
1161
1256
|
* Scopes a config under a named prefix.
|
|
@@ -1175,7 +1270,7 @@ export function date(name) {
|
|
|
1175
1270
|
*
|
|
1176
1271
|
* **Example** (Nesting a struct config under `"database"`)
|
|
1177
1272
|
*
|
|
1178
|
-
* ```ts
|
|
1273
|
+
* ```ts import.meta.vitest
|
|
1179
1274
|
* import { Config, ConfigProvider, Effect } from "effect"
|
|
1180
1275
|
*
|
|
1181
1276
|
* const dbConfig = Config.all({
|
|
@@ -1186,13 +1281,12 @@ export function date(name) {
|
|
|
1186
1281
|
* const provider = ConfigProvider.fromUnknown({
|
|
1187
1282
|
* database: { host: "localhost", port: "5432" }
|
|
1188
1283
|
* })
|
|
1189
|
-
*
|
|
1190
|
-
* // { host: "localhost", port: 5432 }
|
|
1284
|
+
* Effect.runSync(dbConfig.parse(provider)) // => { host: "localhost", port: 5432 }
|
|
1191
1285
|
* ```
|
|
1192
1286
|
*
|
|
1193
1287
|
* **Example** (Reading env vars with a nested prefix)
|
|
1194
1288
|
*
|
|
1195
|
-
* ```ts
|
|
1289
|
+
* ```ts import.meta.vitest
|
|
1196
1290
|
* import { Config, ConfigProvider, Effect } from "effect"
|
|
1197
1291
|
*
|
|
1198
1292
|
* const host = Config.string("host").pipe(Config.nested("database"))
|
|
@@ -1200,7 +1294,7 @@ export function date(name) {
|
|
|
1200
1294
|
* const provider = ConfigProvider.fromEnv({
|
|
1201
1295
|
* env: { database_host: "localhost" }
|
|
1202
1296
|
* })
|
|
1203
|
-
*
|
|
1297
|
+
* Effect.runSync(host.parse(provider)) // => "localhost"
|
|
1204
1298
|
* ```
|
|
1205
1299
|
*
|
|
1206
1300
|
* @see {@link all} – combine multiple configs into a struct
|
|
@@ -1209,5 +1303,5 @@ export function date(name) {
|
|
|
1209
1303
|
* @category combinators
|
|
1210
1304
|
* @since 2.0.0
|
|
1211
1305
|
*/
|
|
1212
|
-
export const nested = /*#__PURE__*/dual(2, (self, name) => make((provider, pathPrefix) => self
|
|
1306
|
+
export const nested = /*#__PURE__*/dual(2, (self, name) => make((provider, pathPrefix) => evaluateAt(self, provider, [...pathPrefix, name])));
|
|
1213
1307
|
//# sourceMappingURL=Config.js.map
|