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/SchemaGetter.js
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
import * as DateTime from "./DateTime.js";
|
|
15
15
|
import * as Effect from "./Effect.js";
|
|
16
16
|
import * as Encoding from "./Encoding.js";
|
|
17
|
-
import * as
|
|
17
|
+
import * as InternalRecord from "./internal/record.js";
|
|
18
18
|
import * as Option from "./Option.js";
|
|
19
19
|
import * as Pipeable from "./Pipeable.js";
|
|
20
20
|
import * as Predicate from "./Predicate.js";
|
|
@@ -42,13 +42,13 @@ import * as Str from "./String.js";
|
|
|
42
42
|
*
|
|
43
43
|
* **Example** (Creating and composing getters)
|
|
44
44
|
*
|
|
45
|
-
* ```ts
|
|
46
|
-
* import { SchemaGetter } from "effect"
|
|
45
|
+
* ```ts import.meta.vitest
|
|
46
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
47
47
|
*
|
|
48
48
|
* const parseNumber = SchemaGetter.transform<number, string>((s) => Number(s))
|
|
49
49
|
* const double = SchemaGetter.transform<number, number>((n) => n * 2)
|
|
50
50
|
* const composed = parseNumber.compose(double)
|
|
51
|
-
*
|
|
51
|
+
* await Effect.runPromise(composed.run(Option.some("21"), {})) // => Option.some(42)
|
|
52
52
|
* ```
|
|
53
53
|
*
|
|
54
54
|
* @see {@link transform} to create a getter from a pure function
|
|
@@ -92,11 +92,11 @@ export class Getter extends Pipeable.Class {
|
|
|
92
92
|
*
|
|
93
93
|
* **Example** (Returning a constant getter)
|
|
94
94
|
*
|
|
95
|
-
* ```ts
|
|
96
|
-
* import { SchemaGetter } from "effect"
|
|
95
|
+
* ```ts import.meta.vitest
|
|
96
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
97
97
|
*
|
|
98
98
|
* const alwaysZero = SchemaGetter.succeed(0)
|
|
99
|
-
*
|
|
99
|
+
* await Effect.runPromise(alwaysZero.run(Option.none(), {})) // => Option.some(0)
|
|
100
100
|
* ```
|
|
101
101
|
*
|
|
102
102
|
* @see {@link transform} when you need to use the input value
|
|
@@ -119,16 +119,19 @@ export function succeed(t) {
|
|
|
119
119
|
* **Details**
|
|
120
120
|
*
|
|
121
121
|
* - Always fails with the `Issue` returned by `f`.
|
|
122
|
-
* - The failure function receives the original `Option<E>` input
|
|
122
|
+
* - The failure function receives the original `Option<E>` input and the
|
|
123
|
+
* effective `ParseOptions` for error context.
|
|
123
124
|
*
|
|
124
125
|
* **Example** (Defining an always-failing getter)
|
|
125
126
|
*
|
|
126
|
-
* ```ts
|
|
127
|
-
* import { Option, SchemaGetter, SchemaIssue } from "effect"
|
|
127
|
+
* ```ts import.meta.vitest
|
|
128
|
+
* import { Effect, Option, SchemaGetter, SchemaIssue } from "effect"
|
|
128
129
|
*
|
|
129
130
|
* const rejectAll = SchemaGetter.fail<string, string>(
|
|
130
|
-
* (
|
|
131
|
+
* () => new SchemaIssue.InvalidValue({ message: "not allowed" })
|
|
131
132
|
* )
|
|
133
|
+
* const issue = await Effect.runPromise(Effect.flip(rejectAll.run(Option.some("x"), {})))
|
|
134
|
+
* issue._tag // => "InvalidValue"
|
|
132
135
|
* ```
|
|
133
136
|
*
|
|
134
137
|
* @see {@link forbidden} for a convenience helper for `Forbidden` issues
|
|
@@ -138,7 +141,7 @@ export function succeed(t) {
|
|
|
138
141
|
* @since 4.0.0
|
|
139
142
|
*/
|
|
140
143
|
export function fail(f) {
|
|
141
|
-
return new Getter(oe => Effect.fail(f(oe)));
|
|
144
|
+
return new Getter((oe, options) => Effect.fail(f(oe, options)));
|
|
142
145
|
}
|
|
143
146
|
/**
|
|
144
147
|
* Creates a getter that always fails with a `Forbidden` issue.
|
|
@@ -156,12 +159,14 @@ export function fail(f) {
|
|
|
156
159
|
*
|
|
157
160
|
* **Example** (Forbidding a decode direction)
|
|
158
161
|
*
|
|
159
|
-
* ```ts
|
|
160
|
-
* import { SchemaGetter } from "effect"
|
|
162
|
+
* ```ts import.meta.vitest
|
|
163
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
161
164
|
*
|
|
162
165
|
* const noEncode = SchemaGetter.forbidden<string, number>(
|
|
163
166
|
* () => "encoding is not supported"
|
|
164
167
|
* )
|
|
168
|
+
* const issue = await Effect.runPromise(Effect.flip(noEncode.run(Option.some(1), {})))
|
|
169
|
+
* issue._tag // => "Forbidden"
|
|
165
170
|
* ```
|
|
166
171
|
*
|
|
167
172
|
* @see {@link fail} to fail with a custom issue type
|
|
@@ -170,9 +175,12 @@ export function fail(f) {
|
|
|
170
175
|
* @since 4.0.0
|
|
171
176
|
*/
|
|
172
177
|
export function forbidden(message) {
|
|
173
|
-
return fail(oe =>
|
|
174
|
-
|
|
175
|
-
|
|
178
|
+
return fail((oe, options) => {
|
|
179
|
+
const annotations = {
|
|
180
|
+
message: message(oe)
|
|
181
|
+
};
|
|
182
|
+
return Option.isSome(oe) ? new SchemaIssue.Forbidden(annotations, oe.value, options) : new SchemaIssue.Forbidden(annotations);
|
|
183
|
+
});
|
|
176
184
|
}
|
|
177
185
|
const passthrough_ = /*#__PURE__*/new Getter(Effect.succeed);
|
|
178
186
|
function isPassthrough(getter) {
|
|
@@ -204,19 +212,20 @@ export function passthroughSubtype() {
|
|
|
204
212
|
*
|
|
205
213
|
* **Example** (Providing a default timestamp for a missing field)
|
|
206
214
|
*
|
|
207
|
-
* ```ts
|
|
215
|
+
* ```ts import.meta.vitest
|
|
208
216
|
* import { Effect, Option, SchemaGetter } from "effect"
|
|
209
217
|
*
|
|
210
218
|
* const withTimestamp = SchemaGetter.onNone<number>(() =>
|
|
211
|
-
* Effect.succeed(Option.some(
|
|
219
|
+
* Effect.succeed(Option.some(0))
|
|
212
220
|
* )
|
|
221
|
+
* await Effect.runPromise(withTimestamp.run(Option.none(), {})) // => Option.some(0)
|
|
213
222
|
* ```
|
|
214
223
|
*
|
|
215
224
|
* @see {@link required} when absent input should fail
|
|
216
225
|
* @see {@link withDefault} for a simpler default value for undefined inputs
|
|
217
226
|
* @see {@link onSome} to handle only present values
|
|
218
227
|
*
|
|
219
|
-
* @category
|
|
228
|
+
* @category transforming
|
|
220
229
|
* @since 4.0.0
|
|
221
230
|
*/
|
|
222
231
|
export function onNone(f) {
|
|
@@ -238,16 +247,18 @@ export function onNone(f) {
|
|
|
238
247
|
*
|
|
239
248
|
* **Example** (Defining a required struct field)
|
|
240
249
|
*
|
|
241
|
-
* ```ts
|
|
242
|
-
* import { SchemaGetter } from "effect"
|
|
250
|
+
* ```ts import.meta.vitest
|
|
251
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
243
252
|
*
|
|
244
253
|
* const mustExist = SchemaGetter.required<string>()
|
|
254
|
+
* const issue = await Effect.runPromise(Effect.flip(mustExist.run(Option.none(), {})))
|
|
255
|
+
* issue._tag // => "MissingKey"
|
|
245
256
|
* ```
|
|
246
257
|
*
|
|
247
258
|
* @see {@link onNone} to provide a fallback instead of failing
|
|
248
259
|
* @see {@link withDefault} to substitute a default for undefined values
|
|
249
260
|
*
|
|
250
|
-
* @category
|
|
261
|
+
* @category validation
|
|
251
262
|
* @since 4.0.0
|
|
252
263
|
*/
|
|
253
264
|
export function required(annotations) {
|
|
@@ -270,19 +281,20 @@ export function required(annotations) {
|
|
|
270
281
|
*
|
|
271
282
|
* **Example** (Transforming only present values)
|
|
272
283
|
*
|
|
273
|
-
* ```ts
|
|
284
|
+
* ```ts import.meta.vitest
|
|
274
285
|
* import { Effect, Option, SchemaGetter } from "effect"
|
|
275
286
|
*
|
|
276
287
|
* const parseIfPresent = SchemaGetter.onSome<number, string>(
|
|
277
288
|
* (s) => Effect.succeed(Option.some(Number(s)))
|
|
278
289
|
* )
|
|
290
|
+
* await Effect.runPromise(parseIfPresent.run(Option.some("42"), {})) // => Option.some(42)
|
|
279
291
|
* ```
|
|
280
292
|
*
|
|
281
293
|
* @see {@link onNone} to handle only absent values
|
|
282
294
|
* @see {@link transform} for a simpler pure transformation of present values
|
|
283
295
|
* @see {@link transformOrFail} for fallible transformation of present values
|
|
284
296
|
*
|
|
285
|
-
* @category
|
|
297
|
+
* @category transforming
|
|
286
298
|
* @since 4.0.0
|
|
287
299
|
*/
|
|
288
300
|
export function onSome(f) {
|
|
@@ -310,24 +322,25 @@ export function onSome(f) {
|
|
|
310
322
|
*
|
|
311
323
|
* **Example** (Validating effectfully)
|
|
312
324
|
*
|
|
313
|
-
* ```ts
|
|
314
|
-
* import { Effect, SchemaGetter } from "effect"
|
|
325
|
+
* ```ts import.meta.vitest
|
|
326
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
315
327
|
*
|
|
316
328
|
* const nonNegative = SchemaGetter.checkEffect<number>((n) =>
|
|
317
329
|
* Effect.succeed(n >= 0 ? undefined : "must be non-negative")
|
|
318
330
|
* )
|
|
331
|
+
* await Effect.runPromise(nonNegative.run(Option.some(1), {})) // => Option.some(1)
|
|
319
332
|
* ```
|
|
320
333
|
*
|
|
321
334
|
* @see {@link transform} when you need to change the value, not just validate
|
|
322
335
|
* @see {@link fail} for unconditional failure
|
|
323
336
|
*
|
|
324
|
-
* @category
|
|
337
|
+
* @category validation
|
|
325
338
|
* @since 4.0.0
|
|
326
339
|
*/
|
|
327
340
|
export function checkEffect(f) {
|
|
328
341
|
return onSome((t, options) => {
|
|
329
342
|
return f(t, options).pipe(Effect.flatMapEager(out => {
|
|
330
|
-
const issue = SchemaIssue.makeSingle(t,
|
|
343
|
+
const issue = SchemaIssue.makeSingle(out, t, options);
|
|
331
344
|
return issue ? Effect.fail(issue) : Effect.succeed(Option.some(t));
|
|
332
345
|
}));
|
|
333
346
|
});
|
|
@@ -350,7 +363,7 @@ export function checkEffect(f) {
|
|
|
350
363
|
*
|
|
351
364
|
* **Example** (Transforming strings to numbers)
|
|
352
365
|
*
|
|
353
|
-
* ```ts
|
|
366
|
+
* ```ts import.meta.vitest
|
|
354
367
|
* import { Schema, SchemaGetter } from "effect"
|
|
355
368
|
*
|
|
356
369
|
* const NumberFromString = Schema.String.pipe(
|
|
@@ -359,13 +372,14 @@ export function checkEffect(f) {
|
|
|
359
372
|
* encode: SchemaGetter.transform((n) => String(n))
|
|
360
373
|
* })
|
|
361
374
|
* )
|
|
375
|
+
* Schema.decodeSync(NumberFromString)("42") // => 42
|
|
362
376
|
* ```
|
|
363
377
|
*
|
|
364
378
|
* @see {@link transformOrFail} when the transformation can fail
|
|
365
379
|
* @see {@link transformOptional} when you need to handle `None` inputs
|
|
366
380
|
* @see {@link passthrough} when no transformation is needed
|
|
367
381
|
*
|
|
368
|
-
* @category
|
|
382
|
+
* @category transforming
|
|
369
383
|
* @since 4.0.0
|
|
370
384
|
*/
|
|
371
385
|
export function transform(f) {
|
|
@@ -387,23 +401,24 @@ export function transform(f) {
|
|
|
387
401
|
*
|
|
388
402
|
* **Example** (Parsing with failure)
|
|
389
403
|
*
|
|
390
|
-
* ```ts
|
|
404
|
+
* ```ts import.meta.vitest
|
|
391
405
|
* import { Effect, Option, SchemaGetter, SchemaIssue } from "effect"
|
|
392
406
|
*
|
|
393
407
|
* const safeParseInt = SchemaGetter.transformOrFail<number, string>(
|
|
394
|
-
* (s) => {
|
|
408
|
+
* (s, options) => {
|
|
395
409
|
* const n = parseInt(s, 10)
|
|
396
410
|
* return isNaN(n)
|
|
397
|
-
* ? Effect.fail(new SchemaIssue.InvalidValue(
|
|
411
|
+
* ? Effect.fail(new SchemaIssue.InvalidValue({ message: "not an integer" }, s, options))
|
|
398
412
|
* : Effect.succeed(n)
|
|
399
413
|
* }
|
|
400
414
|
* )
|
|
415
|
+
* await Effect.runPromise(safeParseInt.run(Option.some("42"), {})) // => Option.some(42)
|
|
401
416
|
* ```
|
|
402
417
|
*
|
|
403
418
|
* @see {@link transform} when transformation cannot fail
|
|
404
419
|
* @see {@link onSome} when you need full `Option` control over the output
|
|
405
420
|
*
|
|
406
|
-
* @category
|
|
421
|
+
* @category transforming
|
|
407
422
|
* @since 4.0.0
|
|
408
423
|
*/
|
|
409
424
|
export function transformOrFail(f) {
|
|
@@ -424,18 +439,19 @@ export function transformOrFail(f) {
|
|
|
424
439
|
*
|
|
425
440
|
* **Example** (Filtering out empty strings)
|
|
426
441
|
*
|
|
427
|
-
* ```ts
|
|
428
|
-
* import { Option, SchemaGetter } from "effect"
|
|
442
|
+
* ```ts import.meta.vitest
|
|
443
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
429
444
|
*
|
|
430
445
|
* const skipEmpty = SchemaGetter.transformOptional<string, string>((o) =>
|
|
431
446
|
* Option.filter(o, (s) => s.length > 0)
|
|
432
447
|
* )
|
|
448
|
+
* await Effect.runPromise(skipEmpty.run(Option.some(""), {})) // => Option.none()
|
|
433
449
|
* ```
|
|
434
450
|
*
|
|
435
451
|
* @see {@link transform} when you only need to transform present values
|
|
436
452
|
* @see {@link omit} when you always want `None`
|
|
437
453
|
*
|
|
438
|
-
* @category
|
|
454
|
+
* @category transforming
|
|
439
455
|
* @since 4.0.0
|
|
440
456
|
*/
|
|
441
457
|
export function transformOptional(f) {
|
|
@@ -456,16 +472,17 @@ export function transformOptional(f) {
|
|
|
456
472
|
*
|
|
457
473
|
* **Example** (Omitting a field during encoding)
|
|
458
474
|
*
|
|
459
|
-
* ```ts
|
|
460
|
-
* import { SchemaGetter } from "effect"
|
|
475
|
+
* ```ts import.meta.vitest
|
|
476
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
461
477
|
*
|
|
462
478
|
* const omitField = SchemaGetter.omit<string>()
|
|
479
|
+
* await Effect.runPromise(omitField.run(Option.some("hidden"), {})) // => Option.none()
|
|
463
480
|
* ```
|
|
464
481
|
*
|
|
465
482
|
* @see {@link transformOptional} when you want conditional omission
|
|
466
483
|
* @see {@link forbidden} when you want to fail instead of silently omit
|
|
467
484
|
*
|
|
468
|
-
* @category
|
|
485
|
+
* @category filtering
|
|
469
486
|
* @since 4.0.0
|
|
470
487
|
*/
|
|
471
488
|
export function omit() {
|
|
@@ -487,17 +504,17 @@ export function omit() {
|
|
|
487
504
|
*
|
|
488
505
|
* **Example** (Providing a default value for an optional field)
|
|
489
506
|
*
|
|
490
|
-
* ```ts
|
|
491
|
-
* import { Effect, SchemaGetter } from "effect"
|
|
507
|
+
* ```ts import.meta.vitest
|
|
508
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
492
509
|
*
|
|
493
510
|
* const withZero = SchemaGetter.withDefault(Effect.succeed(0))
|
|
494
|
-
*
|
|
511
|
+
* await Effect.runPromise(withZero.run(Option.some(undefined), {})) // => Option.some(0)
|
|
495
512
|
* ```
|
|
496
513
|
*
|
|
497
514
|
* @see {@link onNone} to handle only absent keys (not `undefined` values)
|
|
498
515
|
* @see {@link required} when absent input should fail instead of using a default
|
|
499
516
|
*
|
|
500
|
-
* @category
|
|
517
|
+
* @category transforming
|
|
501
518
|
* @since 4.0.0
|
|
502
519
|
*/
|
|
503
520
|
export function withDefault(defaultValue) {
|
|
@@ -520,16 +537,16 @@ export function withDefault(defaultValue) {
|
|
|
520
537
|
*
|
|
521
538
|
* **Example** (Coercing to a string)
|
|
522
539
|
*
|
|
523
|
-
* ```ts
|
|
524
|
-
* import { SchemaGetter } from "effect"
|
|
540
|
+
* ```ts import.meta.vitest
|
|
541
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
525
542
|
*
|
|
526
543
|
* const toString = SchemaGetter.String<number>()
|
|
527
|
-
*
|
|
544
|
+
* await Effect.runPromise(toString.run(Option.some(42), {})) // => Option.some("42")
|
|
528
545
|
* ```
|
|
529
546
|
*
|
|
530
547
|
* @see {@link transform} for custom string conversions
|
|
531
548
|
*
|
|
532
|
-
* @category
|
|
549
|
+
* @category converting
|
|
533
550
|
* @since 4.0.0
|
|
534
551
|
*/
|
|
535
552
|
export function String() {
|
|
@@ -550,16 +567,16 @@ export function String() {
|
|
|
550
567
|
*
|
|
551
568
|
* **Example** (Coercing to a number)
|
|
552
569
|
*
|
|
553
|
-
* ```ts
|
|
554
|
-
* import { SchemaGetter } from "effect"
|
|
570
|
+
* ```ts import.meta.vitest
|
|
571
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
555
572
|
*
|
|
556
573
|
* const toNumber = SchemaGetter.Number<string>()
|
|
557
|
-
*
|
|
574
|
+
* await Effect.runPromise(toNumber.run(Option.some("42"), {})) // => Option.some(42)
|
|
558
575
|
* ```
|
|
559
576
|
*
|
|
560
577
|
* @see {@link transformOrFail} for validated number parsing
|
|
561
578
|
*
|
|
562
|
-
* @category
|
|
579
|
+
* @category converting
|
|
563
580
|
* @since 4.0.0
|
|
564
581
|
*/
|
|
565
582
|
export function Number() {
|
|
@@ -579,14 +596,14 @@ export function Number() {
|
|
|
579
596
|
*
|
|
580
597
|
* **Example** (Coercing to a boolean)
|
|
581
598
|
*
|
|
582
|
-
* ```ts
|
|
583
|
-
* import { SchemaGetter } from "effect"
|
|
599
|
+
* ```ts import.meta.vitest
|
|
600
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
584
601
|
*
|
|
585
602
|
* const toBool = SchemaGetter.Boolean<string>()
|
|
586
|
-
*
|
|
603
|
+
* await Effect.runPromise(toBool.run(Option.some("true"), {})) // => Option.some(true)
|
|
587
604
|
* ```
|
|
588
605
|
*
|
|
589
|
-
* @category
|
|
606
|
+
* @category converting
|
|
590
607
|
* @since 4.0.0
|
|
591
608
|
*/
|
|
592
609
|
export function Boolean() {
|
|
@@ -607,14 +624,14 @@ export function Boolean() {
|
|
|
607
624
|
*
|
|
608
625
|
* **Example** (Coercing to a bigint)
|
|
609
626
|
*
|
|
610
|
-
* ```ts
|
|
611
|
-
* import { SchemaGetter } from "effect"
|
|
627
|
+
* ```ts import.meta.vitest
|
|
628
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
612
629
|
*
|
|
613
630
|
* const toBigInt = SchemaGetter.BigInt<string>()
|
|
614
|
-
*
|
|
631
|
+
* await Effect.runPromise(toBigInt.run(Option.some("42"), {})) // => Option.some(42n)
|
|
615
632
|
* ```
|
|
616
633
|
*
|
|
617
|
-
* @category
|
|
634
|
+
* @category converting
|
|
618
635
|
* @since 4.0.0
|
|
619
636
|
*/
|
|
620
637
|
export function BigInt() {
|
|
@@ -635,16 +652,17 @@ export function BigInt() {
|
|
|
635
652
|
*
|
|
636
653
|
* **Example** (Coercing to a Date)
|
|
637
654
|
*
|
|
638
|
-
* ```ts
|
|
639
|
-
* import { SchemaGetter } from "effect"
|
|
655
|
+
* ```ts import.meta.vitest
|
|
656
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
640
657
|
*
|
|
641
658
|
* const toDate = SchemaGetter.Date<string>()
|
|
642
|
-
*
|
|
659
|
+
* const result = await Effect.runPromise(toDate.run(Option.some("1970-01-01"), {}))
|
|
660
|
+
* Option.map(result, (date) => date.toISOString()) // => Option.some("1970-01-01T00:00:00.000Z")
|
|
643
661
|
* ```
|
|
644
662
|
*
|
|
645
663
|
* @see {@link dateTimeUtcFromInput} for validated DateTime parsing
|
|
646
664
|
*
|
|
647
|
-
* @category
|
|
665
|
+
* @category converting
|
|
648
666
|
* @since 4.0.0
|
|
649
667
|
*/
|
|
650
668
|
export function Date() {
|
|
@@ -659,13 +677,14 @@ export function Date() {
|
|
|
659
677
|
*
|
|
660
678
|
* **Example** (Trimming whitespace)
|
|
661
679
|
*
|
|
662
|
-
* ```ts
|
|
663
|
-
* import { SchemaGetter } from "effect"
|
|
680
|
+
* ```ts import.meta.vitest
|
|
681
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
664
682
|
*
|
|
665
683
|
* const trimmed = SchemaGetter.trim<string>()
|
|
684
|
+
* await Effect.runPromise(trimmed.run(Option.some(" hello "), {})) // => Option.some("hello")
|
|
666
685
|
* ```
|
|
667
686
|
*
|
|
668
|
-
* @category
|
|
687
|
+
* @category transforming
|
|
669
688
|
* @since 4.0.0
|
|
670
689
|
*/
|
|
671
690
|
export function trim() {
|
|
@@ -680,13 +699,14 @@ export function trim() {
|
|
|
680
699
|
*
|
|
681
700
|
* **Example** (Capitalizing a string)
|
|
682
701
|
*
|
|
683
|
-
* ```ts
|
|
684
|
-
* import { SchemaGetter } from "effect"
|
|
702
|
+
* ```ts import.meta.vitest
|
|
703
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
685
704
|
*
|
|
686
705
|
* const cap = SchemaGetter.capitalize<string>()
|
|
706
|
+
* await Effect.runPromise(cap.run(Option.some("hello"), {})) // => Option.some("Hello")
|
|
687
707
|
* ```
|
|
688
708
|
*
|
|
689
|
-
* @category
|
|
709
|
+
* @category transforming
|
|
690
710
|
* @since 4.0.0
|
|
691
711
|
*/
|
|
692
712
|
export function capitalize() {
|
|
@@ -701,13 +721,14 @@ export function capitalize() {
|
|
|
701
721
|
*
|
|
702
722
|
* **Example** (Uncapitalizing a string)
|
|
703
723
|
*
|
|
704
|
-
* ```ts
|
|
705
|
-
* import { SchemaGetter } from "effect"
|
|
724
|
+
* ```ts import.meta.vitest
|
|
725
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
706
726
|
*
|
|
707
727
|
* const uncap = SchemaGetter.uncapitalize<string>()
|
|
728
|
+
* await Effect.runPromise(uncap.run(Option.some("Hello"), {})) // => Option.some("hello")
|
|
708
729
|
* ```
|
|
709
730
|
*
|
|
710
|
-
* @category
|
|
731
|
+
* @category transforming
|
|
711
732
|
* @since 4.0.0
|
|
712
733
|
*/
|
|
713
734
|
export function uncapitalize() {
|
|
@@ -722,15 +743,16 @@ export function uncapitalize() {
|
|
|
722
743
|
*
|
|
723
744
|
* **Example** (Converting snake case to camel case)
|
|
724
745
|
*
|
|
725
|
-
* ```ts
|
|
726
|
-
* import { SchemaGetter } from "effect"
|
|
746
|
+
* ```ts import.meta.vitest
|
|
747
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
727
748
|
*
|
|
728
749
|
* const toCamel = SchemaGetter.snakeToCamel<string>()
|
|
750
|
+
* await Effect.runPromise(toCamel.run(Option.some("user_name"), {})) // => Option.some("userName")
|
|
729
751
|
* ```
|
|
730
752
|
*
|
|
731
753
|
* @see {@link camelToSnake} for the inverse operation
|
|
732
754
|
*
|
|
733
|
-
* @category
|
|
755
|
+
* @category transforming
|
|
734
756
|
* @since 4.0.0
|
|
735
757
|
*/
|
|
736
758
|
export function snakeToCamel() {
|
|
@@ -745,15 +767,16 @@ export function snakeToCamel() {
|
|
|
745
767
|
*
|
|
746
768
|
* **Example** (Converting camel case to snake case)
|
|
747
769
|
*
|
|
748
|
-
* ```ts
|
|
749
|
-
* import { SchemaGetter } from "effect"
|
|
770
|
+
* ```ts import.meta.vitest
|
|
771
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
750
772
|
*
|
|
751
773
|
* const toSnake = SchemaGetter.camelToSnake<string>()
|
|
774
|
+
* await Effect.runPromise(toSnake.run(Option.some("userName"), {})) // => Option.some("user_name")
|
|
752
775
|
* ```
|
|
753
776
|
*
|
|
754
777
|
* @see {@link snakeToCamel} for the inverse operation
|
|
755
778
|
*
|
|
756
|
-
* @category
|
|
779
|
+
* @category transforming
|
|
757
780
|
* @since 4.0.0
|
|
758
781
|
*/
|
|
759
782
|
export function camelToSnake() {
|
|
@@ -768,15 +791,16 @@ export function camelToSnake() {
|
|
|
768
791
|
*
|
|
769
792
|
* **Example** (Converting to lowercase)
|
|
770
793
|
*
|
|
771
|
-
* ```ts
|
|
772
|
-
* import { SchemaGetter } from "effect"
|
|
794
|
+
* ```ts import.meta.vitest
|
|
795
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
773
796
|
*
|
|
774
797
|
* const lower = SchemaGetter.toLowerCase<string>()
|
|
798
|
+
* await Effect.runPromise(lower.run(Option.some("HELLO"), {})) // => Option.some("hello")
|
|
775
799
|
* ```
|
|
776
800
|
*
|
|
777
801
|
* @see {@link toUpperCase} for the inverse operation
|
|
778
802
|
*
|
|
779
|
-
* @category
|
|
803
|
+
* @category transforming
|
|
780
804
|
* @since 4.0.0
|
|
781
805
|
*/
|
|
782
806
|
export function toLowerCase() {
|
|
@@ -791,26 +815,27 @@ export function toLowerCase() {
|
|
|
791
815
|
*
|
|
792
816
|
* **Example** (Converting to uppercase)
|
|
793
817
|
*
|
|
794
|
-
* ```ts
|
|
795
|
-
* import { SchemaGetter } from "effect"
|
|
818
|
+
* ```ts import.meta.vitest
|
|
819
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
796
820
|
*
|
|
797
821
|
* const upper = SchemaGetter.toUpperCase<string>()
|
|
822
|
+
* await Effect.runPromise(upper.run(Option.some("hello"), {})) // => Option.some("HELLO")
|
|
798
823
|
* ```
|
|
799
824
|
*
|
|
800
825
|
* @see {@link toLowerCase} for the inverse operation
|
|
801
826
|
*
|
|
802
|
-
* @category
|
|
827
|
+
* @category transforming
|
|
803
828
|
* @since 4.0.0
|
|
804
829
|
*/
|
|
805
830
|
export function toUpperCase() {
|
|
806
831
|
return transform(Str.toUpperCase);
|
|
807
832
|
}
|
|
808
833
|
export function parseJson(options) {
|
|
809
|
-
return onSome(input => Effect.try({
|
|
834
|
+
return onSome((input, parseOptions) => Effect.try({
|
|
810
835
|
try: () => Option.some(JSON.parse(input, options?.reviver)),
|
|
811
|
-
catch:
|
|
812
|
-
|
|
813
|
-
})
|
|
836
|
+
catch: () => new SchemaIssue.InvalidValue({
|
|
837
|
+
expected: "a valid JSON string"
|
|
838
|
+
}, input, parseOptions)
|
|
814
839
|
}));
|
|
815
840
|
}
|
|
816
841
|
/**
|
|
@@ -824,34 +849,37 @@ export function parseJson(options) {
|
|
|
824
849
|
* **Details**
|
|
825
850
|
*
|
|
826
851
|
* - Skips `None` inputs.
|
|
827
|
-
* -
|
|
852
|
+
* - If `JSON.stringify` throws or returns `undefined`, fails with
|
|
828
853
|
* `SchemaIssue.InvalidValue`.
|
|
829
854
|
* - Supports optional `replacer` and `space` options, matching
|
|
830
855
|
* `JSON.stringify`.
|
|
831
|
-
* - If `JSON.stringify` returns `undefined`, such as for `undefined`,
|
|
832
|
-
* functions, symbols, or a replacer that removes the root value, that
|
|
833
|
-
* `undefined` result is returned rather than converted into an `Issue`.
|
|
834
856
|
*
|
|
835
857
|
* **Example** (Stringifying JSON)
|
|
836
858
|
*
|
|
837
|
-
* ```ts
|
|
838
|
-
* import { SchemaGetter } from "effect"
|
|
859
|
+
* ```ts import.meta.vitest
|
|
860
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
839
861
|
*
|
|
840
862
|
* const stringify = SchemaGetter.stringifyJson()
|
|
841
|
-
*
|
|
863
|
+
* await Effect.runPromise(stringify.run(Option.some({ a: 1 }), {})) // => Option.some("{\"a\":1}")
|
|
842
864
|
* ```
|
|
843
865
|
*
|
|
844
866
|
* @see {@link parseJson} for the inverse operation
|
|
845
867
|
*
|
|
846
|
-
* @category
|
|
868
|
+
* @category encoding
|
|
847
869
|
* @since 4.0.0
|
|
848
870
|
*/
|
|
849
871
|
export function stringifyJson(options) {
|
|
850
|
-
return onSome(input => Effect.try({
|
|
851
|
-
try: () =>
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
872
|
+
return onSome((input, parseOptions) => Effect.try({
|
|
873
|
+
try: () => {
|
|
874
|
+
const output = JSON.stringify(input, options?.replacer, options?.space);
|
|
875
|
+
if (output === undefined) {
|
|
876
|
+
throw new TypeError("Value cannot be represented as JSON");
|
|
877
|
+
}
|
|
878
|
+
return Option.some(output);
|
|
879
|
+
},
|
|
880
|
+
catch: () => new SchemaIssue.InvalidValue({
|
|
881
|
+
expected: "a JSON-serializable value"
|
|
882
|
+
}, input, parseOptions)
|
|
855
883
|
}));
|
|
856
884
|
}
|
|
857
885
|
/**
|
|
@@ -870,17 +898,17 @@ export function stringifyJson(options) {
|
|
|
870
898
|
*
|
|
871
899
|
* **Example** (Parsing a key-value string)
|
|
872
900
|
*
|
|
873
|
-
* ```ts
|
|
874
|
-
* import { SchemaGetter } from "effect"
|
|
901
|
+
* ```ts import.meta.vitest
|
|
902
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
875
903
|
*
|
|
876
904
|
* const parse = SchemaGetter.splitKeyValue<string>()
|
|
877
|
-
*
|
|
905
|
+
* await Effect.runPromise(parse.run(Option.some("a=1,b=2"), {})) // => Option.some({ a: "1", b: "2" })
|
|
878
906
|
* ```
|
|
879
907
|
*
|
|
880
908
|
* @see {@link joinKeyValue} for the inverse operation
|
|
881
909
|
* @see {@link split} to split into an array of strings
|
|
882
910
|
*
|
|
883
|
-
* @category
|
|
911
|
+
* @category splitting
|
|
884
912
|
* @since 4.0.0
|
|
885
913
|
*/
|
|
886
914
|
export function splitKeyValue(options) {
|
|
@@ -889,7 +917,7 @@ export function splitKeyValue(options) {
|
|
|
889
917
|
return transform(input => input.split(separator).reduce((acc, pair) => {
|
|
890
918
|
const [key, value] = pair.split(keyValueSeparator);
|
|
891
919
|
if (key && value) {
|
|
892
|
-
acc
|
|
920
|
+
InternalRecord.assignProperty(acc, key, value);
|
|
893
921
|
}
|
|
894
922
|
return acc;
|
|
895
923
|
}, {}));
|
|
@@ -910,16 +938,16 @@ export function splitKeyValue(options) {
|
|
|
910
938
|
*
|
|
911
939
|
* **Example** (Joining key-value records)
|
|
912
940
|
*
|
|
913
|
-
* ```ts
|
|
914
|
-
* import { SchemaGetter } from "effect"
|
|
941
|
+
* ```ts import.meta.vitest
|
|
942
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
915
943
|
*
|
|
916
944
|
* const join = SchemaGetter.joinKeyValue()
|
|
917
|
-
*
|
|
945
|
+
* await Effect.runPromise(join.run(Option.some({ a: "1", b: "2" }), {})) // => Option.some("a=1,b=2")
|
|
918
946
|
* ```
|
|
919
947
|
*
|
|
920
948
|
* @see {@link splitKeyValue} for the inverse operation
|
|
921
949
|
*
|
|
922
|
-
* @category
|
|
950
|
+
* @category combining
|
|
923
951
|
* @since 4.0.0
|
|
924
952
|
*/
|
|
925
953
|
export function joinKeyValue(options) {
|
|
@@ -942,17 +970,16 @@ export function joinKeyValue(options) {
|
|
|
942
970
|
*
|
|
943
971
|
* **Example** (Splitting a comma-separated string)
|
|
944
972
|
*
|
|
945
|
-
* ```ts
|
|
946
|
-
* import { SchemaGetter } from "effect"
|
|
973
|
+
* ```ts import.meta.vitest
|
|
974
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
947
975
|
*
|
|
948
976
|
* const splitComma = SchemaGetter.split<string>()
|
|
949
|
-
*
|
|
950
|
-
* // "" -> []
|
|
977
|
+
* await Effect.runPromise(splitComma.run(Option.some("a,b,c"), {})) // => Option.some(["a", "b", "c"])
|
|
951
978
|
* ```
|
|
952
979
|
*
|
|
953
980
|
* @see {@link splitKeyValue} when values are key-value pairs
|
|
954
981
|
*
|
|
955
|
-
* @category
|
|
982
|
+
* @category splitting
|
|
956
983
|
* @since 4.0.0
|
|
957
984
|
*/
|
|
958
985
|
export function split(options) {
|
|
@@ -968,17 +995,18 @@ export function split(options) {
|
|
|
968
995
|
*
|
|
969
996
|
* **Example** (Encoding to Base64)
|
|
970
997
|
*
|
|
971
|
-
* ```ts
|
|
972
|
-
* import { SchemaGetter } from "effect"
|
|
998
|
+
* ```ts import.meta.vitest
|
|
999
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
973
1000
|
*
|
|
974
1001
|
* const encode = SchemaGetter.encodeBase64<Uint8Array>()
|
|
1002
|
+
* await Effect.runPromise(encode.run(Option.some(new Uint8Array([1, 2, 3])), {})) // => Option.some("AQID")
|
|
975
1003
|
* ```
|
|
976
1004
|
*
|
|
977
1005
|
* @see {@link decodeBase64} for the inverse operation to `Uint8Array`
|
|
978
1006
|
* @see {@link decodeBase64String} for the inverse operation to `string`
|
|
979
1007
|
* @see {@link encodeBase64Url} for the URL-safe variant
|
|
980
1008
|
*
|
|
981
|
-
* @category
|
|
1009
|
+
* @category encoding
|
|
982
1010
|
* @since 4.0.0
|
|
983
1011
|
*/
|
|
984
1012
|
export function encodeBase64() {
|
|
@@ -993,17 +1021,18 @@ export function encodeBase64() {
|
|
|
993
1021
|
*
|
|
994
1022
|
* **Example** (Encoding to Base64Url)
|
|
995
1023
|
*
|
|
996
|
-
* ```ts
|
|
997
|
-
* import { SchemaGetter } from "effect"
|
|
1024
|
+
* ```ts import.meta.vitest
|
|
1025
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
998
1026
|
*
|
|
999
1027
|
* const encode = SchemaGetter.encodeBase64Url<Uint8Array>()
|
|
1028
|
+
* await Effect.runPromise(encode.run(Option.some(new Uint8Array([251, 255])), {})) // => Option.some("-_8")
|
|
1000
1029
|
* ```
|
|
1001
1030
|
*
|
|
1002
1031
|
* @see {@link decodeBase64Url} for the inverse operation to `Uint8Array`
|
|
1003
1032
|
* @see {@link decodeBase64UrlString} for the inverse operation to `string`
|
|
1004
1033
|
* @see {@link encodeBase64} for the standard Base64 variant
|
|
1005
1034
|
*
|
|
1006
|
-
* @category
|
|
1035
|
+
* @category encoding
|
|
1007
1036
|
* @since 4.0.0
|
|
1008
1037
|
*/
|
|
1009
1038
|
export function encodeBase64Url() {
|
|
@@ -1018,16 +1047,17 @@ export function encodeBase64Url() {
|
|
|
1018
1047
|
*
|
|
1019
1048
|
* **Example** (Encoding to hex)
|
|
1020
1049
|
*
|
|
1021
|
-
* ```ts
|
|
1022
|
-
* import { SchemaGetter } from "effect"
|
|
1050
|
+
* ```ts import.meta.vitest
|
|
1051
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
1023
1052
|
*
|
|
1024
1053
|
* const encode = SchemaGetter.encodeHex<Uint8Array>()
|
|
1054
|
+
* await Effect.runPromise(encode.run(Option.some(new Uint8Array([1, 2, 3])), {})) // => Option.some("010203")
|
|
1025
1055
|
* ```
|
|
1026
1056
|
*
|
|
1027
1057
|
* @see {@link decodeHex} for the inverse operation to `Uint8Array`
|
|
1028
1058
|
* @see {@link decodeHexString} for the inverse operation to `string`
|
|
1029
1059
|
*
|
|
1030
|
-
* @category
|
|
1060
|
+
* @category encoding
|
|
1031
1061
|
* @since 4.0.0
|
|
1032
1062
|
*/
|
|
1033
1063
|
export function encodeHex() {
|
|
@@ -1042,23 +1072,24 @@ export function encodeHex() {
|
|
|
1042
1072
|
*
|
|
1043
1073
|
* **Example** (Decoding Base64 to bytes)
|
|
1044
1074
|
*
|
|
1045
|
-
* ```ts
|
|
1046
|
-
* import { SchemaGetter } from "effect"
|
|
1075
|
+
* ```ts import.meta.vitest
|
|
1076
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
1047
1077
|
*
|
|
1048
1078
|
* const decode = SchemaGetter.decodeBase64<string>()
|
|
1049
|
-
*
|
|
1079
|
+
* const result = await Effect.runPromise(decode.run(Option.some("AQID"), {}))
|
|
1080
|
+
* Option.map(result, Array.from) // => Option.some([1, 2, 3])
|
|
1050
1081
|
* ```
|
|
1051
1082
|
*
|
|
1052
1083
|
* @see {@link decodeBase64String} to decode to `string` instead
|
|
1053
1084
|
* @see {@link encodeBase64} for the inverse operation
|
|
1054
1085
|
*
|
|
1055
|
-
* @category
|
|
1086
|
+
* @category decoding
|
|
1056
1087
|
* @since 4.0.0
|
|
1057
1088
|
*/
|
|
1058
1089
|
export function decodeBase64() {
|
|
1059
|
-
return transformOrFail(input => Effect.mapErrorEager(Effect.fromResult(Encoding.decodeBase64(input)),
|
|
1060
|
-
|
|
1061
|
-
})));
|
|
1090
|
+
return transformOrFail((input, options) => Effect.mapErrorEager(Effect.fromResult(Encoding.decodeBase64(input)), () => new SchemaIssue.InvalidValue({
|
|
1091
|
+
expected: "a valid Base64 string"
|
|
1092
|
+
}, input, options)));
|
|
1062
1093
|
}
|
|
1063
1094
|
/**
|
|
1064
1095
|
* Decodes a Base64 string to a UTF-8 `string`.
|
|
@@ -1069,24 +1100,24 @@ export function decodeBase64() {
|
|
|
1069
1100
|
*
|
|
1070
1101
|
* **Example** (Decoding Base64 to string)
|
|
1071
1102
|
*
|
|
1072
|
-
* ```ts
|
|
1073
|
-
* import { SchemaGetter } from "effect"
|
|
1103
|
+
* ```ts import.meta.vitest
|
|
1104
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
1074
1105
|
*
|
|
1075
1106
|
* const decode = SchemaGetter.decodeBase64String<string>()
|
|
1076
|
-
*
|
|
1107
|
+
* await Effect.runPromise(decode.run(Option.some("aGVsbG8="), {})) // => Option.some("hello")
|
|
1077
1108
|
* ```
|
|
1078
1109
|
*
|
|
1079
1110
|
* @see {@link decodeBase64} to decode to `Uint8Array` instead
|
|
1080
1111
|
* @see {@link encodeBase64} for the inverse operation
|
|
1081
1112
|
*
|
|
1082
|
-
* @category
|
|
1113
|
+
* @category decoding
|
|
1083
1114
|
* @since 4.0.0
|
|
1084
1115
|
*/
|
|
1085
1116
|
export function decodeBase64String() {
|
|
1086
|
-
return transformOrFail(input => Result.match(Encoding.decodeBase64String(input), {
|
|
1087
|
-
onFailure:
|
|
1088
|
-
|
|
1089
|
-
})),
|
|
1117
|
+
return transformOrFail((input, options) => Result.match(Encoding.decodeBase64String(input), {
|
|
1118
|
+
onFailure: () => Effect.fail(new SchemaIssue.InvalidValue({
|
|
1119
|
+
expected: "a valid Base64 string"
|
|
1120
|
+
}, input, options)),
|
|
1090
1121
|
onSuccess: Effect.succeed
|
|
1091
1122
|
}));
|
|
1092
1123
|
}
|
|
@@ -1099,24 +1130,25 @@ export function decodeBase64String() {
|
|
|
1099
1130
|
*
|
|
1100
1131
|
* **Example** (Decoding Base64Url to bytes)
|
|
1101
1132
|
*
|
|
1102
|
-
* ```ts
|
|
1103
|
-
* import { SchemaGetter } from "effect"
|
|
1133
|
+
* ```ts import.meta.vitest
|
|
1134
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
1104
1135
|
*
|
|
1105
1136
|
* const decode = SchemaGetter.decodeBase64Url<string>()
|
|
1106
|
-
*
|
|
1137
|
+
* const result = await Effect.runPromise(decode.run(Option.some("-_8="), {}))
|
|
1138
|
+
* Option.map(result, Array.from) // => Option.some([251, 255])
|
|
1107
1139
|
* ```
|
|
1108
1140
|
*
|
|
1109
1141
|
* @see {@link decodeBase64UrlString} to decode to `string` instead
|
|
1110
1142
|
* @see {@link encodeBase64Url} for the inverse operation
|
|
1111
1143
|
*
|
|
1112
|
-
* @category
|
|
1144
|
+
* @category decoding
|
|
1113
1145
|
* @since 4.0.0
|
|
1114
1146
|
*/
|
|
1115
1147
|
export function decodeBase64Url() {
|
|
1116
|
-
return transformOrFail(input => Result.match(Encoding.decodeBase64Url(input), {
|
|
1117
|
-
onFailure:
|
|
1118
|
-
|
|
1119
|
-
})),
|
|
1148
|
+
return transformOrFail((input, options) => Result.match(Encoding.decodeBase64Url(input), {
|
|
1149
|
+
onFailure: () => Effect.fail(new SchemaIssue.InvalidValue({
|
|
1150
|
+
expected: "a valid Base64Url string"
|
|
1151
|
+
}, input, options)),
|
|
1120
1152
|
onSuccess: Effect.succeed
|
|
1121
1153
|
}));
|
|
1122
1154
|
}
|
|
@@ -1129,24 +1161,24 @@ export function decodeBase64Url() {
|
|
|
1129
1161
|
*
|
|
1130
1162
|
* **Example** (Decoding Base64Url to string)
|
|
1131
1163
|
*
|
|
1132
|
-
* ```ts
|
|
1133
|
-
* import { SchemaGetter } from "effect"
|
|
1164
|
+
* ```ts import.meta.vitest
|
|
1165
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
1134
1166
|
*
|
|
1135
1167
|
* const decode = SchemaGetter.decodeBase64UrlString<string>()
|
|
1136
|
-
*
|
|
1168
|
+
* await Effect.runPromise(decode.run(Option.some("aGVsbG8"), {})) // => Option.some("hello")
|
|
1137
1169
|
* ```
|
|
1138
1170
|
*
|
|
1139
1171
|
* @see {@link decodeBase64Url} to decode to `Uint8Array` instead
|
|
1140
1172
|
* @see {@link encodeBase64Url} for the inverse operation
|
|
1141
1173
|
*
|
|
1142
|
-
* @category
|
|
1174
|
+
* @category decoding
|
|
1143
1175
|
* @since 4.0.0
|
|
1144
1176
|
*/
|
|
1145
1177
|
export function decodeBase64UrlString() {
|
|
1146
|
-
return transformOrFail(input => Result.match(Encoding.decodeBase64UrlString(input), {
|
|
1147
|
-
onFailure:
|
|
1148
|
-
|
|
1149
|
-
})),
|
|
1178
|
+
return transformOrFail((input, options) => Result.match(Encoding.decodeBase64UrlString(input), {
|
|
1179
|
+
onFailure: () => Effect.fail(new SchemaIssue.InvalidValue({
|
|
1180
|
+
expected: "a valid Base64Url string"
|
|
1181
|
+
}, input, options)),
|
|
1150
1182
|
onSuccess: Effect.succeed
|
|
1151
1183
|
}));
|
|
1152
1184
|
}
|
|
@@ -1159,24 +1191,25 @@ export function decodeBase64UrlString() {
|
|
|
1159
1191
|
*
|
|
1160
1192
|
* **Example** (Decoding hex to bytes)
|
|
1161
1193
|
*
|
|
1162
|
-
* ```ts
|
|
1163
|
-
* import { SchemaGetter } from "effect"
|
|
1194
|
+
* ```ts import.meta.vitest
|
|
1195
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
1164
1196
|
*
|
|
1165
1197
|
* const decode = SchemaGetter.decodeHex<string>()
|
|
1166
|
-
*
|
|
1198
|
+
* const result = await Effect.runPromise(decode.run(Option.some("010203"), {}))
|
|
1199
|
+
* Option.map(result, Array.from) // => Option.some([1, 2, 3])
|
|
1167
1200
|
* ```
|
|
1168
1201
|
*
|
|
1169
1202
|
* @see {@link decodeHexString} to decode to `string` instead
|
|
1170
1203
|
* @see {@link encodeHex} for the inverse operation
|
|
1171
1204
|
*
|
|
1172
|
-
* @category
|
|
1205
|
+
* @category decoding
|
|
1173
1206
|
* @since 4.0.0
|
|
1174
1207
|
*/
|
|
1175
1208
|
export function decodeHex() {
|
|
1176
|
-
return transformOrFail(input => Result.match(Encoding.decodeHex(input), {
|
|
1177
|
-
onFailure:
|
|
1178
|
-
|
|
1179
|
-
})),
|
|
1209
|
+
return transformOrFail((input, options) => Result.match(Encoding.decodeHex(input), {
|
|
1210
|
+
onFailure: () => Effect.fail(new SchemaIssue.InvalidValue({
|
|
1211
|
+
expected: "a valid hexadecimal string"
|
|
1212
|
+
}, input, options)),
|
|
1180
1213
|
onSuccess: Effect.succeed
|
|
1181
1214
|
}));
|
|
1182
1215
|
}
|
|
@@ -1189,24 +1222,24 @@ export function decodeHex() {
|
|
|
1189
1222
|
*
|
|
1190
1223
|
* **Example** (Decoding hex to string)
|
|
1191
1224
|
*
|
|
1192
|
-
* ```ts
|
|
1193
|
-
* import { SchemaGetter } from "effect"
|
|
1225
|
+
* ```ts import.meta.vitest
|
|
1226
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
1194
1227
|
*
|
|
1195
1228
|
* const decode = SchemaGetter.decodeHexString<string>()
|
|
1196
|
-
*
|
|
1229
|
+
* await Effect.runPromise(decode.run(Option.some("68656c6c6f"), {})) // => Option.some("hello")
|
|
1197
1230
|
* ```
|
|
1198
1231
|
*
|
|
1199
1232
|
* @see {@link decodeHex} to decode to `Uint8Array` instead
|
|
1200
1233
|
* @see {@link encodeHex} for the inverse operation
|
|
1201
1234
|
*
|
|
1202
|
-
* @category
|
|
1235
|
+
* @category decoding
|
|
1203
1236
|
* @since 4.0.0
|
|
1204
1237
|
*/
|
|
1205
1238
|
export function decodeHexString() {
|
|
1206
|
-
return transformOrFail(input => Result.match(Encoding.decodeHexString(input), {
|
|
1207
|
-
onFailure:
|
|
1208
|
-
|
|
1209
|
-
})),
|
|
1239
|
+
return transformOrFail((input, options) => Result.match(Encoding.decodeHexString(input), {
|
|
1240
|
+
onFailure: () => Effect.fail(new SchemaIssue.InvalidValue({
|
|
1241
|
+
expected: "a valid hexadecimal string"
|
|
1242
|
+
}, input, options)),
|
|
1210
1243
|
onSuccess: Effect.succeed
|
|
1211
1244
|
}));
|
|
1212
1245
|
}
|
|
@@ -1221,15 +1254,16 @@ export function decodeHexString() {
|
|
|
1221
1254
|
*
|
|
1222
1255
|
* **Example** (Encoding a URI component)
|
|
1223
1256
|
*
|
|
1224
|
-
* ```ts
|
|
1225
|
-
* import { SchemaGetter } from "effect"
|
|
1257
|
+
* ```ts import.meta.vitest
|
|
1258
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
1226
1259
|
*
|
|
1227
1260
|
* const encode = SchemaGetter.encodeUriComponent<string>()
|
|
1261
|
+
* await Effect.runPromise(encode.run(Option.some("hello world"), {})) // => Option.some("hello%20world")
|
|
1228
1262
|
* ```
|
|
1229
1263
|
*
|
|
1230
1264
|
* @see {@link decodeUriComponent} for the inverse operation
|
|
1231
1265
|
*
|
|
1232
|
-
* @category
|
|
1266
|
+
* @category encoding
|
|
1233
1267
|
* @since 4.0.0
|
|
1234
1268
|
*/
|
|
1235
1269
|
export function encodeUriComponent() {
|
|
@@ -1244,26 +1278,26 @@ export function encodeUriComponent() {
|
|
|
1244
1278
|
*
|
|
1245
1279
|
* **Example** (Decoding a URI component)
|
|
1246
1280
|
*
|
|
1247
|
-
* ```ts
|
|
1248
|
-
* import { SchemaGetter } from "effect"
|
|
1281
|
+
* ```ts import.meta.vitest
|
|
1282
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
1249
1283
|
*
|
|
1250
1284
|
* const decode = SchemaGetter.decodeUriComponent<string>()
|
|
1251
|
-
*
|
|
1285
|
+
* await Effect.runPromise(decode.run(Option.some("hello%20world"), {})) // => Option.some("hello world")
|
|
1252
1286
|
* ```
|
|
1253
1287
|
*
|
|
1254
1288
|
* @see {@link encodeUriComponent} for the inverse operation
|
|
1255
1289
|
*
|
|
1256
|
-
* @category
|
|
1290
|
+
* @category decoding
|
|
1257
1291
|
* @since 4.0.0
|
|
1258
1292
|
*/
|
|
1259
1293
|
export function decodeUriComponent() {
|
|
1260
|
-
return transformOrFail(input => {
|
|
1294
|
+
return transformOrFail((input, options) => {
|
|
1261
1295
|
try {
|
|
1262
1296
|
return Effect.succeed(globalThis.decodeURIComponent(input));
|
|
1263
|
-
} catch
|
|
1264
|
-
return Effect.fail(new SchemaIssue.InvalidValue(
|
|
1265
|
-
|
|
1266
|
-
}));
|
|
1297
|
+
} catch {
|
|
1298
|
+
return Effect.fail(new SchemaIssue.InvalidValue({
|
|
1299
|
+
expected: "a valid URI component"
|
|
1300
|
+
}, input, options));
|
|
1267
1301
|
}
|
|
1268
1302
|
});
|
|
1269
1303
|
}
|
|
@@ -1286,24 +1320,25 @@ export function decodeUriComponent() {
|
|
|
1286
1320
|
*
|
|
1287
1321
|
* **Example** (Parsing DateTime)
|
|
1288
1322
|
*
|
|
1289
|
-
* ```ts
|
|
1290
|
-
* import { SchemaGetter } from "effect"
|
|
1323
|
+
* ```ts import.meta.vitest
|
|
1324
|
+
* import { DateTime, Effect, Option, SchemaGetter } from "effect"
|
|
1291
1325
|
*
|
|
1292
1326
|
* const parseDate = SchemaGetter.dateTimeUtcFromInput<string>()
|
|
1293
|
-
*
|
|
1327
|
+
* const result = await Effect.runPromise(parseDate.run(Option.some("2024-01-01T00:00:00Z"), {}))
|
|
1328
|
+
* Option.map(result, DateTime.toEpochMillis) // => Option.some(1704067200000)
|
|
1294
1329
|
* ```
|
|
1295
1330
|
*
|
|
1296
1331
|
* @see {@link Date} for a simpler coercion to `Date` (no validation)
|
|
1297
1332
|
*
|
|
1298
|
-
* @category
|
|
1333
|
+
* @category converting
|
|
1299
1334
|
* @since 4.0.0
|
|
1300
1335
|
*/
|
|
1301
1336
|
export function dateTimeUtcFromInput() {
|
|
1302
|
-
return transformOrFail(input => {
|
|
1337
|
+
return transformOrFail((input, options) => {
|
|
1303
1338
|
return Option.match(DateTime.make(input), {
|
|
1304
|
-
onNone: () => Effect.fail(new SchemaIssue.InvalidValue(
|
|
1339
|
+
onNone: () => Effect.fail(new SchemaIssue.InvalidValue({
|
|
1305
1340
|
message: "Invalid DateTime input"
|
|
1306
|
-
})),
|
|
1341
|
+
}, input, options)),
|
|
1307
1342
|
onSome: dt => Effect.succeed(DateTime.toUtc(dt))
|
|
1308
1343
|
});
|
|
1309
1344
|
});
|
|
@@ -1324,18 +1359,20 @@ export function dateTimeUtcFromInput() {
|
|
|
1324
1359
|
*
|
|
1325
1360
|
* **Example** (Decoding FormData)
|
|
1326
1361
|
*
|
|
1327
|
-
* ```ts
|
|
1328
|
-
* import { SchemaGetter } from "effect"
|
|
1362
|
+
* ```ts import.meta.vitest
|
|
1363
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
1329
1364
|
*
|
|
1330
1365
|
* const decode = SchemaGetter.decodeFormData()
|
|
1331
|
-
*
|
|
1366
|
+
* const formData = new FormData()
|
|
1367
|
+
* formData.append("user[name]", "Alice")
|
|
1368
|
+
* await Effect.runPromise(decode.run(Option.some(formData), {})) // => Option.some({ user: { name: "Alice" } })
|
|
1332
1369
|
* ```
|
|
1333
1370
|
*
|
|
1334
|
-
* @see {@link encodeFormData} for the
|
|
1371
|
+
* @see {@link encodeFormData} for the corresponding encoder
|
|
1335
1372
|
* @see {@link makeTreeRecord} for the underlying bracket-path parser
|
|
1336
1373
|
* @see {@link decodeURLSearchParams} for the URLSearchParams variant
|
|
1337
1374
|
*
|
|
1338
|
-
* @category
|
|
1375
|
+
* @category decoding
|
|
1339
1376
|
* @since 4.0.0
|
|
1340
1377
|
*/
|
|
1341
1378
|
export function decodeFormData() {
|
|
@@ -1358,18 +1395,19 @@ const collectFormDataEntries = /*#__PURE__*/collectBracketPathEntries(value => t
|
|
|
1358
1395
|
*
|
|
1359
1396
|
* **Example** (Encoding to FormData)
|
|
1360
1397
|
*
|
|
1361
|
-
* ```ts
|
|
1362
|
-
* import { SchemaGetter } from "effect"
|
|
1398
|
+
* ```ts import.meta.vitest
|
|
1399
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
1363
1400
|
*
|
|
1364
1401
|
* const encode = SchemaGetter.encodeFormData()
|
|
1365
|
-
*
|
|
1402
|
+
* const result = await Effect.runPromise(encode.run(Option.some({ name: "Alice" }), {}))
|
|
1403
|
+
* Option.map(result, (formData) => formData.get("name")) // => Option.some("Alice")
|
|
1366
1404
|
* ```
|
|
1367
1405
|
*
|
|
1368
|
-
* @see {@link decodeFormData} for the
|
|
1406
|
+
* @see {@link decodeFormData} for the corresponding decoder
|
|
1369
1407
|
* @see {@link collectBracketPathEntries} for the underlying flattener
|
|
1370
1408
|
* @see {@link encodeURLSearchParams} for the URLSearchParams variant
|
|
1371
1409
|
*
|
|
1372
|
-
* @category
|
|
1410
|
+
* @category encoding
|
|
1373
1411
|
* @since 4.0.0
|
|
1374
1412
|
*/
|
|
1375
1413
|
export function encodeFormData() {
|
|
@@ -1400,18 +1438,19 @@ export function encodeFormData() {
|
|
|
1400
1438
|
*
|
|
1401
1439
|
* **Example** (Decoding URLSearchParams)
|
|
1402
1440
|
*
|
|
1403
|
-
* ```ts
|
|
1404
|
-
* import { SchemaGetter } from "effect"
|
|
1441
|
+
* ```ts import.meta.vitest
|
|
1442
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
1405
1443
|
*
|
|
1406
1444
|
* const decode = SchemaGetter.decodeURLSearchParams()
|
|
1407
|
-
*
|
|
1445
|
+
* const params = new URLSearchParams("user[name]=Alice")
|
|
1446
|
+
* await Effect.runPromise(decode.run(Option.some(params), {})) // => Option.some({ user: { name: "Alice" } })
|
|
1408
1447
|
* ```
|
|
1409
1448
|
*
|
|
1410
|
-
* @see {@link encodeURLSearchParams} for the
|
|
1449
|
+
* @see {@link encodeURLSearchParams} for the corresponding encoder
|
|
1411
1450
|
* @see {@link makeTreeRecord} for the underlying bracket-path parser
|
|
1412
1451
|
* @see {@link decodeFormData} for the FormData variant
|
|
1413
1452
|
*
|
|
1414
|
-
* @category
|
|
1453
|
+
* @category decoding
|
|
1415
1454
|
* @since 4.0.0
|
|
1416
1455
|
*/
|
|
1417
1456
|
export function decodeURLSearchParams() {
|
|
@@ -1433,18 +1472,19 @@ const collectURLSearchParamsEntries = /*#__PURE__*/collectBracketPathEntries(Pre
|
|
|
1433
1472
|
*
|
|
1434
1473
|
* **Example** (Encoding to URLSearchParams)
|
|
1435
1474
|
*
|
|
1436
|
-
* ```ts
|
|
1437
|
-
* import { SchemaGetter } from "effect"
|
|
1475
|
+
* ```ts import.meta.vitest
|
|
1476
|
+
* import { Effect, Option, SchemaGetter } from "effect"
|
|
1438
1477
|
*
|
|
1439
1478
|
* const encode = SchemaGetter.encodeURLSearchParams()
|
|
1440
|
-
*
|
|
1479
|
+
* const result = await Effect.runPromise(encode.run(Option.some({ name: "Alice" }), {}))
|
|
1480
|
+
* Option.map(result, (params) => params.toString()) // => Option.some("name=Alice")
|
|
1441
1481
|
* ```
|
|
1442
1482
|
*
|
|
1443
|
-
* @see {@link decodeURLSearchParams} for the
|
|
1483
|
+
* @see {@link decodeURLSearchParams} for the corresponding decoder
|
|
1444
1484
|
* @see {@link collectBracketPathEntries} for the underlying flattener
|
|
1445
1485
|
* @see {@link encodeFormData} for the FormData variant
|
|
1446
1486
|
*
|
|
1447
|
-
* @category
|
|
1487
|
+
* @category encoding
|
|
1448
1488
|
* @since 4.0.0
|
|
1449
1489
|
*/
|
|
1450
1490
|
export function encodeURLSearchParams() {
|
|
@@ -1467,15 +1507,6 @@ function bracketPathToTokens(bracketPath) {
|
|
|
1467
1507
|
const start = replaced.startsWith(".") ? 1 : 0;
|
|
1468
1508
|
return parts.slice(start).map(part => INDEX_REGEXP.test(part) ? globalThis.Number(part) : part);
|
|
1469
1509
|
}
|
|
1470
|
-
function getOrCreateContainer(self, key, shouldBeArray) {
|
|
1471
|
-
const current = Object.hasOwn(self, key) ? self[key] : undefined;
|
|
1472
|
-
if (current !== undefined) {
|
|
1473
|
-
return current;
|
|
1474
|
-
}
|
|
1475
|
-
const container = shouldBeArray ? [] : {};
|
|
1476
|
-
internalRecord.set(self, key, container);
|
|
1477
|
-
return container;
|
|
1478
|
-
}
|
|
1479
1510
|
/**
|
|
1480
1511
|
* Builds a nested tree object from a list of bracket-path entries.
|
|
1481
1512
|
*
|
|
@@ -1498,29 +1529,43 @@ function getOrCreateContainer(self, key, shouldBeArray) {
|
|
|
1498
1529
|
* - `"foo[]"` → append to array `foo`
|
|
1499
1530
|
* - `""` → real empty key
|
|
1500
1531
|
* - Duplicate keys for the same path are merged into arrays.
|
|
1532
|
+
* - If a structural path conflicts with a previous leaf or a different container
|
|
1533
|
+
* type, the later structural path replaces the conflicting value.
|
|
1534
|
+
* - The notation has no escaping for `.`, `[` or `]`, so keys containing these
|
|
1535
|
+
* delimiters cannot be round-tripped without changing their structure.
|
|
1501
1536
|
*
|
|
1502
1537
|
* **Example** (Building a tree from bracket paths)
|
|
1503
1538
|
*
|
|
1504
|
-
* ```ts
|
|
1539
|
+
* ```ts import.meta.vitest
|
|
1505
1540
|
* import { SchemaGetter } from "effect"
|
|
1506
1541
|
*
|
|
1507
|
-
*
|
|
1542
|
+
* SchemaGetter.makeTreeRecord([
|
|
1508
1543
|
* ["user[name]", "Alice"],
|
|
1509
1544
|
* ["user[tags][]", "admin"],
|
|
1510
1545
|
* ["user[tags][]", "editor"]
|
|
1511
|
-
* ])
|
|
1512
|
-
* // { user: { name: "Alice", tags: ["admin", "editor"] } }
|
|
1546
|
+
* ]) // => { user: { name: "Alice", tags: ["admin", "editor"] } }
|
|
1513
1547
|
* ```
|
|
1514
1548
|
*
|
|
1515
|
-
* @see {@link collectBracketPathEntries} for
|
|
1549
|
+
* @see {@link collectBracketPathEntries} for flattening trees into bracket-path entries
|
|
1516
1550
|
* @see {@link decodeFormData} for a higher-level FormData decoder
|
|
1517
1551
|
* @see {@link decodeURLSearchParams} for a higher-level URLSearchParams decoder
|
|
1518
1552
|
*
|
|
1519
|
-
* @category
|
|
1553
|
+
* @category constructors
|
|
1520
1554
|
* @since 4.0.0
|
|
1521
1555
|
*/
|
|
1522
1556
|
export function makeTreeRecord(bracketPathEntries) {
|
|
1523
1557
|
const out = {};
|
|
1558
|
+
const containers = new WeakSet();
|
|
1559
|
+
function getOrCreateContainer(self, key, shouldBeArray) {
|
|
1560
|
+
const current = Object.hasOwn(self, key) ? self[key] : undefined;
|
|
1561
|
+
if (containers.has(current) && Array.isArray(current) === shouldBeArray) {
|
|
1562
|
+
return current;
|
|
1563
|
+
}
|
|
1564
|
+
const container = shouldBeArray ? [] : {};
|
|
1565
|
+
containers.add(container);
|
|
1566
|
+
InternalRecord.assignProperty(self, key, container);
|
|
1567
|
+
return container;
|
|
1568
|
+
}
|
|
1524
1569
|
bracketPathEntries.forEach(([key, value]) => {
|
|
1525
1570
|
const tokens = bracketPathToTokens(key);
|
|
1526
1571
|
let cur = out;
|
|
@@ -1544,9 +1589,9 @@ export function makeTreeRecord(bracketPathEntries) {
|
|
|
1544
1589
|
if (hasOwn && Array.isArray(cur[token])) {
|
|
1545
1590
|
cur[token].push(value);
|
|
1546
1591
|
} else if (hasOwn) {
|
|
1547
|
-
|
|
1592
|
+
InternalRecord.assignProperty(cur, token, [cur[token], value]);
|
|
1548
1593
|
} else {
|
|
1549
|
-
|
|
1594
|
+
InternalRecord.assignProperty(cur, token, value);
|
|
1550
1595
|
}
|
|
1551
1596
|
} else {
|
|
1552
1597
|
const next = tokens[i + 1];
|
|
@@ -1569,7 +1614,6 @@ export function makeTreeRecord(bracketPathEntries) {
|
|
|
1569
1614
|
*
|
|
1570
1615
|
* **Details**
|
|
1571
1616
|
*
|
|
1572
|
-
* - This is the inverse of {@link makeTreeRecord}.
|
|
1573
1617
|
* - Takes a nested object and produces flat `[bracketPath, value]` pairs suitable for
|
|
1574
1618
|
* `FormData` or `URLSearchParams`.
|
|
1575
1619
|
* - Returns a curried function: first call provides the leaf type guard, second call provides the object.
|
|
@@ -1577,22 +1621,25 @@ export function makeTreeRecord(bracketPathEntries) {
|
|
|
1577
1621
|
* - If all elements of an array are leaves, encodes them as multiple entries with the same key
|
|
1578
1622
|
* (e.g. `tags=a&tags=b`). Otherwise uses indexed bracket paths (e.g. `items[0]`, `items[1]`).
|
|
1579
1623
|
* - Non-leaf values that aren't objects or arrays are silently skipped.
|
|
1624
|
+
* - Empty arrays and objects produce no entries, and path delimiters in property
|
|
1625
|
+
* names are not escaped. The resulting format is therefore lossy.
|
|
1580
1626
|
*
|
|
1581
1627
|
* **Example** (Flattening an object to bracket paths)
|
|
1582
1628
|
*
|
|
1583
|
-
* ```ts
|
|
1629
|
+
* ```ts import.meta.vitest
|
|
1584
1630
|
* import { Predicate, SchemaGetter } from "effect"
|
|
1585
1631
|
*
|
|
1586
1632
|
* const collectStrings = SchemaGetter.collectBracketPathEntries(Predicate.isString)
|
|
1587
1633
|
* const entries = collectStrings({ user: { name: "Alice", tags: ["admin", "editor"] } })
|
|
1588
|
-
*
|
|
1634
|
+
*
|
|
1635
|
+
* entries // => [["user[name]", "Alice"], ["user[tags]", "admin"], ["user[tags]", "editor"]]
|
|
1589
1636
|
* ```
|
|
1590
1637
|
*
|
|
1591
|
-
* @see {@link makeTreeRecord} for
|
|
1638
|
+
* @see {@link makeTreeRecord} for building trees from bracket-path entries
|
|
1592
1639
|
* @see {@link encodeFormData} for a higher-level FormData encoder
|
|
1593
1640
|
* @see {@link encodeURLSearchParams} for a higher-level URLSearchParams encoder
|
|
1594
1641
|
*
|
|
1595
|
-
* @category
|
|
1642
|
+
* @category converting
|
|
1596
1643
|
* @since 4.0.0
|
|
1597
1644
|
*/
|
|
1598
1645
|
export function collectBracketPathEntries(isLeaf) {
|