effect 4.0.0-beta.101 → 4.0.0-beta.102
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +81 -5
- package/dist/Array.js.map +1 -1
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +27 -9
- package/dist/Channel.js.map +1 -1
- package/dist/Config.d.ts +1 -1
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js +6 -5
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.js +7 -7
- package/dist/ConfigProvider.js.map +1 -1
- package/dist/Data.d.ts.map +1 -1
- package/dist/Data.js +2 -1
- package/dist/Data.js.map +1 -1
- package/dist/Effect.d.ts +61 -100
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +66 -39
- package/dist/Effect.js.map +1 -1
- package/dist/FiberHandle.d.ts.map +1 -1
- package/dist/FiberHandle.js +3 -2
- package/dist/FiberHandle.js.map +1 -1
- package/dist/Iterable.d.ts.map +1 -1
- package/dist/Iterable.js +2 -1
- package/dist/Iterable.js.map +1 -1
- package/dist/JsonPatch.d.ts.map +1 -1
- package/dist/JsonPatch.js +4 -3
- package/dist/JsonPatch.js.map +1 -1
- package/dist/JsonSchema.d.ts.map +1 -1
- package/dist/JsonSchema.js +9 -11
- package/dist/JsonSchema.js.map +1 -1
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js +3 -2
- package/dist/Logger.js.map +1 -1
- package/dist/ManagedRuntime.d.ts +9 -0
- package/dist/ManagedRuntime.d.ts.map +1 -1
- package/dist/ManagedRuntime.js +3 -0
- package/dist/ManagedRuntime.js.map +1 -1
- package/dist/Metric.d.ts.map +1 -1
- package/dist/Metric.js +4 -3
- package/dist/Metric.js.map +1 -1
- package/dist/Optic.d.ts.map +1 -1
- package/dist/Optic.js +5 -4
- package/dist/Optic.js.map +1 -1
- package/dist/Option.d.ts.map +1 -1
- package/dist/Option.js +2 -1
- package/dist/Option.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/Record.d.ts +93 -1
- package/dist/Record.d.ts.map +1 -1
- package/dist/Record.js +57 -19
- package/dist/Record.js.map +1 -1
- package/dist/References.d.ts +0 -45
- package/dist/References.d.ts.map +1 -1
- package/dist/References.js +0 -45
- package/dist/References.js.map +1 -1
- package/dist/Request.d.ts.map +1 -1
- package/dist/Request.js +9 -6
- package/dist/Request.js.map +1 -1
- package/dist/Result.d.ts.map +1 -1
- package/dist/Result.js +2 -1
- package/dist/Result.js.map +1 -1
- package/dist/Schema.d.ts +1268 -495
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +2308 -614
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +2 -2
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +189 -130
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaError.js +1 -1
- package/dist/SchemaError.js.map +1 -1
- package/dist/SchemaGetter.d.ts +13 -11
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +34 -24
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaIssue.js +1 -1
- package/dist/SchemaIssue.js.map +1 -1
- package/dist/SchemaParser.d.ts.map +1 -1
- package/dist/SchemaParser.js +1 -12
- package/dist/SchemaParser.js.map +1 -1
- package/dist/SchemaRepresentation.d.ts +403 -1504
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +294 -2852
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +2 -2
- package/dist/SchemaTransformation.js +3 -3
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/Semaphore.d.ts +5 -3
- package/dist/Semaphore.d.ts.map +1 -1
- package/dist/Semaphore.js.map +1 -1
- package/dist/Stream.d.ts +15 -9
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +46 -16
- package/dist/Stream.js.map +1 -1
- package/dist/Struct.d.ts.map +1 -1
- package/dist/Struct.js +5 -4
- package/dist/Struct.js.map +1 -1
- package/dist/Types.d.ts +1 -3
- package/dist/Types.d.ts.map +1 -1
- package/dist/index.d.ts +0 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -4
- package/dist/index.js.map +1 -1
- package/dist/internal/core.js +2 -1
- package/dist/internal/core.js.map +1 -1
- package/dist/internal/effect.js +64 -21
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/matcher.js +1 -1
- package/dist/internal/matcher.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/references.js +0 -4
- package/dist/internal/references.js.map +1 -1
- package/dist/internal/schema/annotations.js +12 -0
- package/dist/internal/schema/annotations.js.map +1 -1
- package/dist/internal/schema/fromJsonSchemaDocument.d.ts +2 -0
- package/dist/internal/schema/fromJsonSchemaDocument.d.ts.map +1 -0
- package/dist/internal/schema/fromJsonSchemaDocument.js +743 -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 +252 -0
- package/dist/internal/schema/fromRepresentation.js.map +1 -0
- package/dist/internal/schema/schema.js +28 -40
- package/dist/internal/schema/schema.js.map +1 -1
- package/dist/internal/schema/{arbitrary.d.ts → toArbitrary.d.ts} +1 -1
- package/dist/internal/schema/toArbitrary.d.ts.map +1 -0
- package/dist/internal/schema/{arbitrary.js → toArbitrary.js} +8 -9
- package/dist/internal/schema/toArbitrary.js.map +1 -0
- package/dist/internal/schema/toCodeDocument.d.ts +2 -0
- package/dist/internal/schema/toCodeDocument.d.ts.map +1 -0
- package/dist/internal/schema/toCodeDocument.js +438 -0
- package/dist/internal/schema/toCodeDocument.js.map +1 -0
- package/dist/internal/schema/toEquivalence.d.ts +2 -0
- package/dist/internal/schema/toEquivalence.d.ts.map +1 -0
- package/dist/internal/schema/{equivalence.js → toEquivalence.js} +15 -13
- package/dist/internal/schema/toEquivalence.js.map +1 -0
- package/dist/internal/schema/toJsonSchemaDocument.d.ts +2 -0
- package/dist/internal/schema/toJsonSchemaDocument.d.ts.map +1 -0
- package/dist/internal/schema/toJsonSchemaDocument.js +466 -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 +369 -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/testing/TestClock.js +4 -1
- package/dist/testing/TestClock.js.map +1 -1
- package/dist/unstable/ai/AiError.d.ts +26 -26
- package/dist/unstable/ai/AiError.d.ts.map +1 -1
- package/dist/unstable/ai/AiError.js +5 -4
- package/dist/unstable/ai/AiError.js.map +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +21 -6
- package/dist/unstable/ai/AnthropicStructuredOutput.d.ts.map +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.js +86 -316
- package/dist/unstable/ai/AnthropicStructuredOutput.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/LanguageModel.d.ts +4 -1
- package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
- package/dist/unstable/ai/LanguageModel.js +19 -17
- package/dist/unstable/ai/LanguageModel.js.map +1 -1
- package/dist/unstable/ai/McpSchema.d.ts +197 -197
- package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
- package/dist/unstable/ai/McpSchema.js +13 -13
- package/dist/unstable/ai/McpSchema.js.map +1 -1
- package/dist/unstable/ai/McpServer.d.ts +4 -4
- package/dist/unstable/ai/McpServer.d.ts.map +1 -1
- package/dist/unstable/ai/McpServer.js +116 -49
- package/dist/unstable/ai/McpServer.js.map +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +32 -10
- package/dist/unstable/ai/OpenAiStructuredOutput.d.ts.map +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.js +193 -377
- package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
- package/dist/unstable/ai/Response.d.ts +19 -19
- package/dist/unstable/ai/Response.d.ts.map +1 -1
- package/dist/unstable/ai/Response.js +14 -14
- package/dist/unstable/ai/Response.js.map +1 -1
- package/dist/unstable/ai/Tool.d.ts +4 -0
- package/dist/unstable/ai/Tool.d.ts.map +1 -1
- package/dist/unstable/ai/Tool.js +11 -3
- package/dist/unstable/ai/Tool.js.map +1 -1
- package/dist/unstable/ai/Toolkit.d.ts +9 -1
- package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
- package/dist/unstable/ai/Toolkit.js +14 -10
- package/dist/unstable/ai/Toolkit.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/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 +316 -0
- package/dist/unstable/ai/internal/structured-output.js.map +1 -0
- package/dist/unstable/cli/CliError.d.ts +40 -2
- package/dist/unstable/cli/CliError.d.ts.map +1 -1
- package/dist/unstable/cli/CliError.js +45 -6
- package/dist/unstable/cli/CliError.js.map +1 -1
- package/dist/unstable/cli/Command.js +14 -5
- package/dist/unstable/cli/Command.js.map +1 -1
- package/dist/unstable/cli/Param.js +3 -3
- package/dist/unstable/cli/Param.js.map +1 -1
- package/dist/unstable/cli/Primitive.js +1 -1
- package/dist/unstable/cli/Primitive.js.map +1 -1
- package/dist/unstable/cli/internal/command.d.ts +3 -1
- package/dist/unstable/cli/internal/command.d.ts.map +1 -1
- package/dist/unstable/cli/internal/command.js +11 -4
- package/dist/unstable/cli/internal/command.js.map +1 -1
- package/dist/unstable/cli/internal/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/cluster/ClusterWorkflowEngine.js +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/unstable/cluster/Entity.js +1 -1
- package/dist/unstable/cluster/Entity.js.map +1 -1
- package/dist/unstable/cluster/Envelope.d.ts.map +1 -1
- package/dist/unstable/cluster/Envelope.js +2 -1
- package/dist/unstable/cluster/Envelope.js.map +1 -1
- package/dist/unstable/cluster/Reply.js +1 -1
- 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/ShardId.js +1 -1
- package/dist/unstable/cluster/ShardId.js.map +1 -1
- package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
- package/dist/unstable/cluster/Sharding.js +125 -24
- package/dist/unstable/cluster/Sharding.js.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.d.ts +10 -2
- package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.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/SqlMessageStorage.d.ts +7 -4
- package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.js +55 -24
- 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 +109 -62
- package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/internal/entityManager.js +19 -7
- package/dist/unstable/cluster/internal/entityManager.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/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/eventlog/EventJournal.d.ts +1 -1
- package/dist/unstable/eventlog/EventJournal.js +1 -1
- package/dist/unstable/eventlog/EventJournal.js.map +1 -1
- package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLog.js +15 -11
- package/dist/unstable/eventlog/EventLog.js.map +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.d.ts +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.js +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
- package/dist/unstable/eventlog/EventLogMessage.d.ts +4 -4
- package/dist/unstable/eventlog/EventLogMessage.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogMessage.js +8 -3
- package/dist/unstable/eventlog/EventLogMessage.js.map +1 -1
- package/dist/unstable/eventlog/EventLogRemote.d.ts +1 -1
- package/dist/unstable/eventlog/SqlEventJournal.js +2 -2
- package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js +3 -3
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
- package/dist/unstable/http/Cookies.d.ts.map +1 -1
- package/dist/unstable/http/Cookies.js +24 -22
- package/dist/unstable/http/Cookies.js.map +1 -1
- package/dist/unstable/http/Headers.js +8 -8
- package/dist/unstable/http/Headers.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 +14 -0
- package/dist/unstable/http/HttpClientRequest.js.map +1 -1
- package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerRequest.js +5 -4
- package/dist/unstable/http/HttpServerRequest.js.map +1 -1
- package/dist/unstable/http/Multipart.d.ts.map +1 -1
- package/dist/unstable/http/Multipart.js +17 -15
- package/dist/unstable/http/Multipart.js.map +1 -1
- package/dist/unstable/http/Template.js +1 -1
- package/dist/unstable/http/Template.js.map +1 -1
- package/dist/unstable/http/UrlParams.d.ts.map +1 -1
- package/dist/unstable/http/UrlParams.js +17 -14
- package/dist/unstable/http/UrlParams.js.map +1 -1
- package/dist/unstable/httpapi/HttpApi.js +3 -3
- package/dist/unstable/httpapi/HttpApi.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.js +5 -5
- package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.js +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
- package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/OpenApi.js +37 -24
- package/dist/unstable/httpapi/OpenApi.js.map +1 -1
- package/dist/unstable/observability/OtlpExporter.d.ts +72 -1
- package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpExporter.js +69 -4
- package/dist/unstable/observability/OtlpExporter.js.map +1 -1
- package/dist/unstable/observability/OtlpLogger.d.ts +4 -3
- package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpLogger.js +2 -2
- package/dist/unstable/observability/OtlpLogger.js.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.d.ts +7 -3
- package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.js +5 -2
- package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
- package/dist/unstable/observability/OtlpTracer.d.ts +4 -3
- package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpTracer.js +2 -2
- package/dist/unstable/observability/OtlpTracer.js.map +1 -1
- package/dist/unstable/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/RateLimiter.d.ts +2 -2
- package/dist/unstable/persistence/RateLimiter.js +2 -2
- package/dist/unstable/persistence/RateLimiter.js.map +1 -1
- package/dist/unstable/persistence/Redis.d.ts.map +1 -1
- package/dist/unstable/persistence/Redis.js +2 -2
- package/dist/unstable/persistence/Redis.js.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.js +3 -1
- package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
- package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
- package/dist/unstable/reactivity/AsyncResult.js +4 -3
- package/dist/unstable/reactivity/AsyncResult.js.map +1 -1
- package/dist/unstable/reactivity/Atom.d.ts +83 -0
- package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
- package/dist/unstable/reactivity/Atom.js +31 -0
- package/dist/unstable/reactivity/Atom.js.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.js +1 -1
- package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
- package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClient.js +2 -1
- package/dist/unstable/rpc/RpcClient.js.map +1 -1
- package/dist/unstable/schema/VariantSchema.d.ts +1 -2
- package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
- package/dist/unstable/schema/VariantSchema.js +13 -10
- package/dist/unstable/schema/VariantSchema.js.map +1 -1
- package/dist/unstable/socket/Socket.d.ts +1 -1
- package/dist/unstable/socket/Socket.js +1 -1
- package/dist/unstable/socket/Socket.js.map +1 -1
- package/dist/unstable/sql/SqlError.d.ts +2 -2
- package/dist/unstable/sql/SqlError.js +2 -2
- package/dist/unstable/sql/SqlError.js.map +1 -1
- package/dist/unstable/sql/Statement.d.ts.map +1 -1
- package/dist/unstable/sql/Statement.js +7 -6
- package/dist/unstable/sql/Statement.js.map +1 -1
- package/package.json +1 -1
- package/src/Array.ts +86 -25
- package/src/Channel.ts +32 -14
- package/src/Config.ts +6 -5
- package/src/ConfigProvider.ts +7 -7
- package/src/Data.ts +3 -2
- package/src/Effect.ts +70 -116
- package/src/FiberHandle.ts +3 -2
- package/src/Iterable.ts +2 -1
- package/src/JsonPatch.ts +4 -3
- package/src/JsonSchema.ts +9 -11
- package/src/Logger.ts +3 -2
- package/src/ManagedRuntime.ts +13 -0
- package/src/Metric.ts +4 -3
- package/src/Optic.ts +5 -4
- package/src/Option.ts +2 -1
- package/src/PartitionedSemaphore.ts +1 -4
- package/src/Record.ts +119 -22
- package/src/References.ts +0 -46
- package/src/Request.ts +5 -7
- package/src/Result.ts +2 -1
- package/src/Schema.ts +2537 -986
- package/src/SchemaAST.ts +228 -149
- package/src/SchemaError.ts +1 -1
- package/src/SchemaGetter.ts +36 -29
- package/src/SchemaIssue.ts +1 -1
- package/src/SchemaParser.ts +1 -25
- package/src/SchemaRepresentation.ts +697 -3398
- package/src/SchemaTransformation.ts +3 -3
- package/src/Semaphore.ts +5 -3
- package/src/Stream.ts +63 -19
- package/src/Struct.ts +5 -4
- package/src/Types.ts +1 -3
- package/src/index.ts +0 -5
- package/src/internal/core.ts +3 -2
- package/src/internal/effect.ts +67 -31
- package/src/internal/matcher.ts +1 -1
- package/src/internal/record.ts +11 -7
- package/src/internal/references.ts +0 -5
- package/src/internal/schema/annotations.ts +44 -0
- package/src/internal/schema/fromJsonSchemaDocument.ts +957 -0
- package/src/internal/schema/fromRepresentation.ts +345 -0
- package/src/internal/schema/schema.ts +45 -46
- package/src/internal/schema/{arbitrary.ts → toArbitrary.ts} +8 -10
- package/src/internal/schema/toCodeDocument.ts +572 -0
- package/src/internal/schema/{equivalence.ts → toEquivalence.ts} +12 -7
- package/src/internal/schema/toJsonSchemaDocument.ts +475 -0
- package/src/internal/schema/toRepresentation.ts +401 -0
- package/src/internal/stackTraceLimit.ts +3 -7
- package/src/testing/TestClock.ts +1 -1
- package/src/unstable/ai/AiError.ts +5 -4
- package/src/unstable/ai/AnthropicStructuredOutput.ts +102 -333
- package/src/unstable/ai/EmbeddingModel.ts +1 -1
- package/src/unstable/ai/LanguageModel.ts +30 -28
- package/src/unstable/ai/McpSchema.ts +15 -15
- package/src/unstable/ai/McpServer.ts +172 -56
- package/src/unstable/ai/OpenAiStructuredOutput.ts +230 -395
- package/src/unstable/ai/Response.ts +24 -24
- package/src/unstable/ai/Tool.ts +22 -4
- package/src/unstable/ai/Toolkit.ts +19 -7
- package/src/unstable/ai/internal/codec-transformer.ts +13 -7
- package/src/unstable/ai/internal/structured-output.ts +458 -0
- package/src/unstable/cli/CliError.ts +51 -5
- package/src/unstable/cli/Command.ts +4 -4
- package/src/unstable/cli/Param.ts +3 -3
- package/src/unstable/cli/Primitive.ts +1 -1
- package/src/unstable/cli/internal/command.ts +13 -5
- package/src/unstable/cli/internal/config.ts +8 -10
- package/src/unstable/cluster/ClusterWorkflowEngine.ts +3 -3
- package/src/unstable/cluster/Entity.ts +1 -1
- package/src/unstable/cluster/Envelope.ts +2 -1
- package/src/unstable/cluster/Reply.ts +1 -1
- package/src/unstable/cluster/Runner.ts +1 -1
- package/src/unstable/cluster/RunnerAddress.ts +1 -1
- package/src/unstable/cluster/ShardId.ts +1 -1
- package/src/unstable/cluster/Sharding.ts +161 -34
- package/src/unstable/cluster/ShardingConfig.ts +5 -1
- package/src/unstable/cluster/SingleRunner.ts +4 -2
- package/src/unstable/cluster/SqlMessageStorage.ts +83 -35
- package/src/unstable/cluster/SqlRunnerStorage.ts +186 -116
- package/src/unstable/cluster/internal/entityManager.ts +31 -10
- package/src/unstable/cluster/internal/shardLock.ts +9 -0
- package/src/unstable/devtools/DevToolsSchema.ts +10 -5
- package/src/unstable/eventlog/EventJournal.ts +1 -1
- package/src/unstable/eventlog/EventLog.ts +21 -11
- package/src/unstable/eventlog/EventLogEncryption.ts +1 -1
- package/src/unstable/eventlog/EventLogMessage.ts +10 -3
- package/src/unstable/eventlog/SqlEventJournal.ts +2 -2
- package/src/unstable/eventlog/SqlEventLogServerEncrypted.ts +1 -1
- package/src/unstable/eventlog/SqlEventLogServerUnencrypted.ts +6 -3
- package/src/unstable/http/Cookies.ts +29 -24
- package/src/unstable/http/Headers.ts +8 -8
- package/src/unstable/http/HttpClientRequest.ts +57 -0
- package/src/unstable/http/HttpServerRequest.ts +5 -4
- package/src/unstable/http/Multipart.ts +16 -13
- package/src/unstable/http/Template.ts +1 -1
- package/src/unstable/http/UrlParams.ts +17 -14
- package/src/unstable/httpapi/HttpApi.ts +3 -3
- package/src/unstable/httpapi/HttpApiClient.ts +5 -5
- package/src/unstable/httpapi/HttpApiGroup.ts +1 -1
- package/src/unstable/httpapi/OpenApi.ts +52 -28
- package/src/unstable/observability/OtlpExporter.ts +109 -5
- package/src/unstable/observability/OtlpLogger.ts +5 -5
- package/src/unstable/observability/OtlpMetrics.ts +8 -4
- package/src/unstable/observability/OtlpTracer.ts +8 -4
- package/src/unstable/persistence/Persistable.ts +3 -2
- package/src/unstable/persistence/RateLimiter.ts +2 -2
- package/src/unstable/persistence/Redis.ts +2 -2
- package/src/unstable/process/ChildProcessSpawner.ts +1 -1
- package/src/unstable/reactivity/AsyncResult.ts +4 -3
- package/src/unstable/reactivity/Atom.ts +92 -0
- package/src/unstable/reactivity/AtomRegistry.ts +1 -1
- package/src/unstable/rpc/RpcClient.ts +2 -1
- package/src/unstable/schema/VariantSchema.ts +14 -24
- package/src/unstable/socket/Socket.ts +1 -1
- package/src/unstable/sql/SqlError.ts +2 -2
- package/src/unstable/sql/Statement.ts +7 -6
- package/dist/SchemaUtils.d.ts +0 -28
- package/dist/SchemaUtils.d.ts.map +0 -1
- package/dist/SchemaUtils.js +0 -45
- package/dist/SchemaUtils.js.map +0 -1
- package/dist/internal/schema/arbitrary.d.ts.map +0 -1
- package/dist/internal/schema/arbitrary.js.map +0 -1
- package/dist/internal/schema/equivalence.d.ts +0 -2
- package/dist/internal/schema/equivalence.d.ts.map +0 -1
- package/dist/internal/schema/equivalence.js.map +0 -1
- package/dist/internal/schema/representation.d.ts +0 -2
- package/dist/internal/schema/representation.d.ts.map +0 -1
- package/dist/internal/schema/representation.js +0 -865
- package/dist/internal/schema/representation.js.map +0 -1
- package/src/SchemaUtils.ts +0 -51
- package/src/internal/schema/representation.ts +0 -795
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fromJsonSchemaDocument.js","names":["unescapeToken","remainder","Schema","SchemaAST","errorWithPath","InternalRecord","InternalAnnotations","fromRepresentation","fromRepresentations","never","_tag","checks","unknown","string","makeLiteral","literal","annotate","representation","annotations","undefined","thunk","jsonSchemaTypes","Set","jsonSchemaStringKeys","jsonSchemaNumberKeys","jsonSchemaObjectKeys","jsonSchemaArrayKeys","isImportedJsonSchemaType","input","has","inferJsonSchemaType","schema","some","key","jsonSchemaReferenceKey","$ref","token","slice","lastIndexOf","length","jsonSchemaFilter","id","payload","schemas","aborted","addNumberCheck","value","push","jsonSchemaAnnotations","title","description","Object","hasOwn","default","Array","isArray","examples","readOnly","writeOnly","format","contentEncoding","contentMediaType","isJson","contentSchema","keys","jsonDeclaration","expected","typeParameters","unknownJsonSchemas","elements","map","element","type","rest","propertySignatures","property","indexSignatures","indexSignature","parameter","unknownJsonSchemaCheck","types","check","translateJsonSchemaMultiDocument","document","options","singleRoot","definitionCache","Map","definitionsInProgress","annotatedReferences","translateDefinition","path","recursiveReferenceError","cached","get","definitions","add","recur","delete","set","resolveReference","reference","seen","nextSeen","annotationsOf","mergeAnnotations","left","right","combinedAnnotations","asChecks","combineChecks","deduplicate","checkId","filter","satisfiesPrimitiveCheck","every","minLength","maxLength","RegExp","source","flags","test","globalThis","Number","isFinite","isSafeInteger","divisor","exclusiveMinimum","minimum","exclusiveMaximum","maximum","satisfiesLiteral","combinePrimitiveWithLiteral","primitive","satisfies","combineArrays","Math","max","index","leftElement","rightElement","isOptional","leftType","rightType","combine","leftRest","rightRest","combineProperties","rightByName","name","names","properties","other","String","isMutable","isUnconstrainedString","combineIndexSignatures","signatures","signature","findIndex","candidate","mode","stringChecks","numberChecks","arrays","arrayChecks","objectChecks","enter","onEnter","on","siblingSchema","jsonSchemaAnnotationKeys","sibling","allOf","members","union","member","const","enum","collectStringChecks","collectNumberChecks","minItems","prefixItems","items","maxItems","collectArrayChecks","collectProperties","collectIndexSignatures","collectObjectChecks","pattern","multipleOf","uniqueItems","required","from","includes","patternProperties","entries","additionalProperties","minProperties","maxProperties","propertyNames","references","assignProperty","representations","toRepresentation","translated","dialect","jsonSchemaRevivers","JsonReviver","isPatternReviver","isFiniteReviver","isGreaterThanReviver","isGreaterThanOrEqualToReviver","isLessThanReviver","isLessThanOrEqualToReviver","isMultipleOfReviver","isIntReviver","isMinLengthReviver","isMaxLengthReviver","isMinPropertiesReviver","isMaxPropertiesReviver","isPropertyNamesReviver","isUniqueReviver","fromJsonSchemaDocument","fromJsonSchemaMultiDocument"],"sources":["../../../src/internal/schema/fromJsonSchemaDocument.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fromRepresentation.d.ts","sourceRoot":"","sources":["../../../src/internal/schema/fromRepresentation.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,252 @@
|
|
|
1
|
+
import * as Arr from "../../Array.js";
|
|
2
|
+
import * as Result from "../../Result.js";
|
|
3
|
+
import * as Schema from "../../Schema.js";
|
|
4
|
+
import { errorWithPath } from "../errors.js";
|
|
5
|
+
import * as InternalRecord from "../record.js";
|
|
6
|
+
/** @internal */
|
|
7
|
+
export function fromRepresentations(document, revivers) {
|
|
8
|
+
return revivePersisted(document.representations, document.references, makeReviverMap(revivers), false);
|
|
9
|
+
}
|
|
10
|
+
class ReferenceSlot {
|
|
11
|
+
body;
|
|
12
|
+
resolving = false;
|
|
13
|
+
wrapper;
|
|
14
|
+
constructor(key) {
|
|
15
|
+
this.wrapper = Schema.suspend(() => {
|
|
16
|
+
if (this.body === undefined) {
|
|
17
|
+
throw new Error(`Reference ${key} was evaluated before it was resolved`);
|
|
18
|
+
}
|
|
19
|
+
return this.body;
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
function makeReviverMap(revivers) {
|
|
24
|
+
const out = new Map();
|
|
25
|
+
for (let index = 0; index < revivers.length; index++) {
|
|
26
|
+
const reviver = revivers[index];
|
|
27
|
+
if (out.has(reviver.id)) {
|
|
28
|
+
throw errorWithPath(`Duplicate reviver for ${reviver.id}`, ["revivers", index, "id"]);
|
|
29
|
+
}
|
|
30
|
+
out.set(reviver.id, {
|
|
31
|
+
...reviver,
|
|
32
|
+
payloadSchema: Schema.toCodecJson(reviver.payloadSchema)
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
return out;
|
|
36
|
+
}
|
|
37
|
+
function revivePersisted(representations, references, reviverMap, singleRoot) {
|
|
38
|
+
const slots = new Map();
|
|
39
|
+
const referenceKeys = Object.keys(references);
|
|
40
|
+
for (const key of referenceKeys) {
|
|
41
|
+
slots.set(key, new ReferenceSlot(key));
|
|
42
|
+
}
|
|
43
|
+
function resolveReference(key, path) {
|
|
44
|
+
const slot = slots.get(key);
|
|
45
|
+
if (slot === undefined) {
|
|
46
|
+
throw errorWithPath(`Invalid reference ${key}`, [...path, "$ref"]);
|
|
47
|
+
}
|
|
48
|
+
if (slot.body !== undefined) {
|
|
49
|
+
return slot.body;
|
|
50
|
+
}
|
|
51
|
+
if (slot.resolving) {
|
|
52
|
+
return slot.wrapper;
|
|
53
|
+
}
|
|
54
|
+
slot.resolving = true;
|
|
55
|
+
try {
|
|
56
|
+
slot.body = annotate(recur(references[key], ["references", key]), {
|
|
57
|
+
identifier: key
|
|
58
|
+
});
|
|
59
|
+
return slot.body;
|
|
60
|
+
} finally {
|
|
61
|
+
slot.resolving = false;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
function resolveReviver(representation, path) {
|
|
65
|
+
const reviver = reviverMap.get(representation.id);
|
|
66
|
+
if (reviver === undefined) {
|
|
67
|
+
throw errorWithPath(`Missing reviver for ${representation.id}`, path);
|
|
68
|
+
}
|
|
69
|
+
return reviver;
|
|
70
|
+
}
|
|
71
|
+
function decodePayload(representation, reviver, path) {
|
|
72
|
+
const decoded = Schema.decodeUnknownResult(reviver.payloadSchema)(representation.payload);
|
|
73
|
+
if (Result.isFailure(decoded)) {
|
|
74
|
+
throw errorWithPath(`Invalid representation payload for ${representation.id}`, path);
|
|
75
|
+
}
|
|
76
|
+
return decoded.success;
|
|
77
|
+
}
|
|
78
|
+
function reviveSchemas(representations, path) {
|
|
79
|
+
return representations.map((representation, index) => recur(representation, [...path, index]));
|
|
80
|
+
}
|
|
81
|
+
function reviveDeclaration(declaration, path) {
|
|
82
|
+
const representationPath = [...path, "representation"];
|
|
83
|
+
const representation = declaration.representation;
|
|
84
|
+
if (representation === undefined) {
|
|
85
|
+
throw errorWithPath("Missing representation annotation", representationPath);
|
|
86
|
+
}
|
|
87
|
+
const reviver = resolveReviver(representation, representationPath);
|
|
88
|
+
const payload = decodePayload(representation, reviver, [...representationPath, "payload"]);
|
|
89
|
+
const typeParameters = reviveSchemas(declaration.typeParameters, [...path, "typeParameters"]);
|
|
90
|
+
const schema = reviver.revive({
|
|
91
|
+
payload,
|
|
92
|
+
typeParameters,
|
|
93
|
+
annotations: declaration.annotations
|
|
94
|
+
});
|
|
95
|
+
return appendChecks(schema, declaration.checks, [...path, "checks"]);
|
|
96
|
+
}
|
|
97
|
+
function reviveFilter(filter, path) {
|
|
98
|
+
const representationPath = [...path, "representation"];
|
|
99
|
+
const representation = filter.representation;
|
|
100
|
+
if (representation === undefined) {
|
|
101
|
+
throw errorWithPath("Missing representation annotation", representationPath);
|
|
102
|
+
}
|
|
103
|
+
const reviver = resolveReviver(representation, representationPath);
|
|
104
|
+
const payload = decodePayload(representation, reviver, [...representationPath, "payload"]);
|
|
105
|
+
const schemas = reviveSchemas(representation.schemas ?? [], [...representationPath, "schemas"]);
|
|
106
|
+
const check = reviver.revive({
|
|
107
|
+
payload,
|
|
108
|
+
schemas,
|
|
109
|
+
annotations: filter.annotations
|
|
110
|
+
});
|
|
111
|
+
return filter.aborted ? check.abort() : check;
|
|
112
|
+
}
|
|
113
|
+
function reviveFilterGroup(group, path) {
|
|
114
|
+
const representationPath = [...path, "representation"];
|
|
115
|
+
const representation = group.representation;
|
|
116
|
+
if (representation === undefined) {
|
|
117
|
+
const checks = group.checks.map((check, index) => reviveCheck(check, [...path, "checks", index]));
|
|
118
|
+
return Schema.makeFilterGroup(checks, group.annotations);
|
|
119
|
+
}
|
|
120
|
+
const reviver = resolveReviver(representation, representationPath);
|
|
121
|
+
const payload = decodePayload(representation, reviver, [...representationPath, "payload"]);
|
|
122
|
+
const schemas = reviveSchemas(representation.schemas ?? [], [...representationPath, "schemas"]);
|
|
123
|
+
return reviver.revive({
|
|
124
|
+
payload,
|
|
125
|
+
schemas,
|
|
126
|
+
annotations: group.annotations
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
function reviveCheck(check, path) {
|
|
130
|
+
return check._tag === "Filter" ? reviveFilter(check, path) : reviveFilterGroup(check, path);
|
|
131
|
+
}
|
|
132
|
+
function appendChecks(schema, checks, path) {
|
|
133
|
+
const revived = checks.map((check, index) => reviveCheck(check, [...path, index]));
|
|
134
|
+
return Arr.isArrayNonEmpty(revived) ? schema.check(...revived) : schema;
|
|
135
|
+
}
|
|
136
|
+
function annotate(schema, annotations) {
|
|
137
|
+
return annotations === undefined ? schema : schema.annotate(annotations);
|
|
138
|
+
}
|
|
139
|
+
function finishStructural(schema, representation, path) {
|
|
140
|
+
return appendChecks(annotate(schema, representation.annotations), representation.checks, [...path, "checks"]);
|
|
141
|
+
}
|
|
142
|
+
function recur(representation, path) {
|
|
143
|
+
switch (representation._tag) {
|
|
144
|
+
case "Reference":
|
|
145
|
+
return resolveReference(representation.$ref, path);
|
|
146
|
+
case "Declaration":
|
|
147
|
+
return reviveDeclaration(representation, path);
|
|
148
|
+
case "Suspend":
|
|
149
|
+
{
|
|
150
|
+
const thunkPath = [...path, "thunk"];
|
|
151
|
+
if (representation.thunk._tag === "Reference") {
|
|
152
|
+
const key = representation.thunk.$ref;
|
|
153
|
+
resolveReference(key, thunkPath);
|
|
154
|
+
const slot = slots.get(key);
|
|
155
|
+
return annotate(slot.wrapper, representation.annotations);
|
|
156
|
+
}
|
|
157
|
+
const thunk = recur(representation.thunk, thunkPath);
|
|
158
|
+
return annotate(Schema.suspend(() => thunk), representation.annotations);
|
|
159
|
+
}
|
|
160
|
+
case "Null":
|
|
161
|
+
return finishStructural(Schema.Null, representation, path);
|
|
162
|
+
case "Undefined":
|
|
163
|
+
return finishStructural(Schema.Undefined, representation, path);
|
|
164
|
+
case "Void":
|
|
165
|
+
return finishStructural(Schema.Void, representation, path);
|
|
166
|
+
case "Never":
|
|
167
|
+
return finishStructural(Schema.Never, representation, path);
|
|
168
|
+
case "Unknown":
|
|
169
|
+
return finishStructural(Schema.Unknown, representation, path);
|
|
170
|
+
case "Any":
|
|
171
|
+
return finishStructural(Schema.Any, representation, path);
|
|
172
|
+
case "String":
|
|
173
|
+
return finishStructural(Schema.String, representation, path);
|
|
174
|
+
case "Number":
|
|
175
|
+
return finishStructural(Schema.Number, representation, path);
|
|
176
|
+
case "Boolean":
|
|
177
|
+
return finishStructural(Schema.Boolean, representation, path);
|
|
178
|
+
case "BigInt":
|
|
179
|
+
return finishStructural(Schema.BigInt, representation, path);
|
|
180
|
+
case "Symbol":
|
|
181
|
+
return finishStructural(Schema.Symbol, representation, path);
|
|
182
|
+
case "Literal":
|
|
183
|
+
return finishStructural(Schema.Literal(representation.literal), representation, path);
|
|
184
|
+
case "UniqueSymbol":
|
|
185
|
+
return finishStructural(Schema.UniqueSymbol(representation.symbol), representation, path);
|
|
186
|
+
case "ObjectKeyword":
|
|
187
|
+
return finishStructural(Schema.ObjectKeyword, representation, path);
|
|
188
|
+
case "Enum":
|
|
189
|
+
return finishStructural(Schema.Enum(Object.fromEntries(representation.enums)), representation, path);
|
|
190
|
+
case "TemplateLiteral":
|
|
191
|
+
{
|
|
192
|
+
const parts = representation.parts.map((part, index) => recur(part, [...path, "parts", index]));
|
|
193
|
+
return finishStructural(Schema.TemplateLiteral(parts), representation, path);
|
|
194
|
+
}
|
|
195
|
+
case "Arrays":
|
|
196
|
+
{
|
|
197
|
+
const elements = representation.elements.map((element, index) => {
|
|
198
|
+
let schema = recur(element.type, [...path, "elements", index, "type"]);
|
|
199
|
+
if (element.annotations !== undefined) {
|
|
200
|
+
schema = schema.annotateKey(element.annotations);
|
|
201
|
+
}
|
|
202
|
+
return element.isOptional ? Schema.optionalKey(schema) : schema;
|
|
203
|
+
});
|
|
204
|
+
const rest = representation.rest.map((item, index) => recur(item, [...path, "rest", index]));
|
|
205
|
+
const schema = Arr.isArrayNonEmpty(rest) ? elements.length === 0 && rest.length === 1 ? Schema.Array(rest[0]) : Schema.TupleWithRest(Schema.Tuple(elements), rest) : Schema.Tuple(elements);
|
|
206
|
+
return finishStructural(schema, representation, path);
|
|
207
|
+
}
|
|
208
|
+
case "Objects":
|
|
209
|
+
{
|
|
210
|
+
const fields = {};
|
|
211
|
+
for (let index = 0; index < representation.propertySignatures.length; index++) {
|
|
212
|
+
const property = representation.propertySignatures[index];
|
|
213
|
+
let schema = recur(property.type, [...path, "propertySignatures", index, "type"]);
|
|
214
|
+
if (property.annotations !== undefined) {
|
|
215
|
+
schema = schema.annotateKey(property.annotations);
|
|
216
|
+
}
|
|
217
|
+
if (property.isOptional) {
|
|
218
|
+
schema = Schema.optionalKey(schema);
|
|
219
|
+
}
|
|
220
|
+
if (property.isMutable) {
|
|
221
|
+
schema = Schema.mutableKey(schema);
|
|
222
|
+
}
|
|
223
|
+
InternalRecord.assignProperty(fields, property.name, schema);
|
|
224
|
+
}
|
|
225
|
+
const records = representation.indexSignatures.map((indexSignature, index) => Schema.Record(recur(indexSignature.parameter, [...path, "indexSignatures", index, "parameter"]), recur(indexSignature.type, [...path, "indexSignatures", index, "type"])));
|
|
226
|
+
const schema = Arr.isArrayNonEmpty(records) ? representation.propertySignatures.length === 0 && records.length === 1 ? records[0] : Schema.StructWithRest(Schema.Struct(fields), records) : Schema.Struct(fields);
|
|
227
|
+
return finishStructural(schema, representation, path);
|
|
228
|
+
}
|
|
229
|
+
case "Union":
|
|
230
|
+
{
|
|
231
|
+
const members = representation.types.map((member, index) => recur(member, [...path, "types", index]));
|
|
232
|
+
return finishStructural(Schema.Union(members, {
|
|
233
|
+
mode: representation.mode
|
|
234
|
+
}), representation, path);
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
const definitions = {};
|
|
239
|
+
for (const key of referenceKeys) {
|
|
240
|
+
InternalRecord.assignProperty(definitions, key, resolveReference(key, ["references", key]));
|
|
241
|
+
}
|
|
242
|
+
const schemas = representations.map((representation, index) => recur(representation, singleRoot ? ["representation"] : ["representations", index]));
|
|
243
|
+
return {
|
|
244
|
+
schemas,
|
|
245
|
+
definitions
|
|
246
|
+
};
|
|
247
|
+
}
|
|
248
|
+
/** @internal */
|
|
249
|
+
export function fromRepresentation(document, revivers) {
|
|
250
|
+
return revivePersisted([document.representation], document.references, makeReviverMap(revivers), true).schemas[0];
|
|
251
|
+
}
|
|
252
|
+
//# sourceMappingURL=fromRepresentation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fromRepresentation.js","names":["Arr","Result","Schema","errorWithPath","InternalRecord","fromRepresentations","document","revivers","revivePersisted","representations","references","makeReviverMap","ReferenceSlot","body","resolving","wrapper","constructor","key","suspend","undefined","Error","out","Map","index","length","reviver","has","id","set","payloadSchema","toCodecJson","reviverMap","singleRoot","slots","referenceKeys","Object","keys","resolveReference","path","slot","get","annotate","recur","identifier","resolveReviver","representation","decodePayload","decoded","decodeUnknownResult","payload","isFailure","success","reviveSchemas","map","reviveDeclaration","declaration","representationPath","typeParameters","schema","revive","annotations","appendChecks","checks","reviveFilter","filter","schemas","check","aborted","abort","reviveFilterGroup","group","reviveCheck","makeFilterGroup","_tag","revived","isArrayNonEmpty","finishStructural","$ref","thunkPath","thunk","Null","Undefined","Void","Never","Unknown","Any","String","Number","Boolean","BigInt","Symbol","Literal","literal","UniqueSymbol","symbol","ObjectKeyword","Enum","fromEntries","enums","parts","part","TemplateLiteral","elements","element","type","annotateKey","isOptional","optionalKey","rest","item","Array","TupleWithRest","Tuple","fields","propertySignatures","property","isMutable","mutableKey","assignProperty","name","records","indexSignatures","indexSignature","Record","parameter","StructWithRest","Struct","members","types","member","Union","mode","definitions","fromRepresentation"],"sources":["../../../src/internal/schema/fromRepresentation.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -6,6 +6,30 @@ import { SchemaError } from "../../SchemaError.js";
|
|
|
6
6
|
import * as SchemaParser from "../../SchemaParser.js";
|
|
7
7
|
/** @internal */
|
|
8
8
|
export const TypeId = "~effect/Schema/Schema";
|
|
9
|
+
/** @internal */
|
|
10
|
+
export function makeDeclarationReviver(id, payloadSchema, revive) {
|
|
11
|
+
return {
|
|
12
|
+
id,
|
|
13
|
+
payloadSchema,
|
|
14
|
+
revive
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
/** @internal */
|
|
18
|
+
export function makeFilterReviver(id, payloadSchema, revive) {
|
|
19
|
+
return {
|
|
20
|
+
id,
|
|
21
|
+
payloadSchema,
|
|
22
|
+
revive
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
/** @internal */
|
|
26
|
+
export function makeFilterGroupReviver(id, payloadSchema, revive) {
|
|
27
|
+
return {
|
|
28
|
+
id,
|
|
29
|
+
payloadSchema,
|
|
30
|
+
revive
|
|
31
|
+
};
|
|
32
|
+
}
|
|
9
33
|
const SchemaProto = {
|
|
10
34
|
[TypeId]: TypeId,
|
|
11
35
|
pipe() {
|
|
@@ -23,10 +47,10 @@ const SchemaProto = {
|
|
|
23
47
|
};
|
|
24
48
|
/** @internal */
|
|
25
49
|
export function make(ast, options) {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
}
|
|
50
|
+
function Schema() {}
|
|
51
|
+
const self = Object.defineProperties(Object.setPrototypeOf(Schema, SchemaProto), Object.getOwnPropertyDescriptors({
|
|
52
|
+
...options
|
|
53
|
+
}));
|
|
30
54
|
self.ast = ast;
|
|
31
55
|
self.rebuild = ast => make(ast, options);
|
|
32
56
|
const makeEffect = SchemaParser.makeEffect(self);
|
|
@@ -39,40 +63,4 @@ export function make(ast, options) {
|
|
|
39
63
|
export function fromIssueEffect(self) {
|
|
40
64
|
return Effect.catchCause(self, cause => Effect.failCauseSync(() => Cause.map(cause, issue => new SchemaError(issue))));
|
|
41
65
|
}
|
|
42
|
-
/** @internal */
|
|
43
|
-
export const jsonReorder = /*#__PURE__*/makeReorder(getJsonPriority);
|
|
44
|
-
function getJsonPriority(ast) {
|
|
45
|
-
switch (ast._tag) {
|
|
46
|
-
case "BigInt":
|
|
47
|
-
case "Symbol":
|
|
48
|
-
case "UniqueSymbol":
|
|
49
|
-
return 0;
|
|
50
|
-
default:
|
|
51
|
-
return 1;
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
/** @internal */
|
|
55
|
-
export function makeReorder(getPriority) {
|
|
56
|
-
return types => {
|
|
57
|
-
// Create a map of original indices for O(1) lookup
|
|
58
|
-
const indexMap = new Map();
|
|
59
|
-
for (let i = 0; i < types.length; i++) {
|
|
60
|
-
indexMap.set(SchemaAST.toEncoded(types[i]), i);
|
|
61
|
-
}
|
|
62
|
-
// Create a sorted copy of the types array
|
|
63
|
-
const sortedTypes = [...types].sort((a, b) => {
|
|
64
|
-
a = SchemaAST.toEncoded(a);
|
|
65
|
-
b = SchemaAST.toEncoded(b);
|
|
66
|
-
const pa = getPriority(a);
|
|
67
|
-
const pb = getPriority(b);
|
|
68
|
-
if (pa !== pb) return pa - pb;
|
|
69
|
-
// If priorities are equal, maintain original order (stable sort)
|
|
70
|
-
return indexMap.get(a) - indexMap.get(b);
|
|
71
|
-
});
|
|
72
|
-
// Check if order changed by comparing arrays
|
|
73
|
-
const orderChanged = sortedTypes.some((ast, index) => ast !== types[index]);
|
|
74
|
-
if (!orderChanged) return types;
|
|
75
|
-
return sortedTypes;
|
|
76
|
-
};
|
|
77
|
-
}
|
|
78
66
|
//# sourceMappingURL=schema.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","names":["Cause","Effect","Pipeable","SchemaAST","SchemaError","SchemaParser","TypeId","SchemaProto","pipe","pipeArguments","arguments","annotate","annotations","rebuild","ast","annotateKey","check","checks","appendChecks","make","options","self","Object","
|
|
1
|
+
{"version":3,"file":"schema.js","names":["Cause","Effect","Pipeable","SchemaAST","SchemaError","SchemaParser","TypeId","makeDeclarationReviver","id","payloadSchema","revive","makeFilterReviver","makeFilterGroupReviver","SchemaProto","pipe","pipeArguments","arguments","annotate","annotations","rebuild","ast","annotateKey","check","checks","appendChecks","make","options","Schema","self","Object","defineProperties","setPrototypeOf","getOwnPropertyDescriptors","makeEffect","input","fromIssueEffect","makeOption","catchCause","cause","failCauseSync","map","issue"],"sources":["../../../src/internal/schema/schema.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,gBAAgB;AACvC,OAAO,KAAKC,MAAM,MAAM,iBAAiB;AACzC,OAAO,KAAKC,QAAQ,MAAM,mBAAmB;AAE7C,OAAO,KAAKC,SAAS,MAAM,oBAAoB;AAC/C,SAASC,WAAW,QAAQ,sBAAsB;AAElD,OAAO,KAAKC,YAAY,MAAM,uBAAuB;AAGrD;AACA,OAAO,MAAMC,MAAM,GAAG,uBAAuB;AAE7C;AACA,OAAM,SAAUC,sBAAsBA,CACpCC,EAAU,EACVC,aAAgC,EAChCC,MAA4D;EAE5D,OAAO;IACLF,EAAE;IACFC,aAAa;IACbC;GACD;AACH;AAEA;AACA,OAAM,SAAUC,iBAAiBA,CAC/BH,EAAU,EACVC,aAAgC,EAChCC,MAAuD;EAEvD,OAAO;IACLF,EAAE;IACFC,aAAa;IACbC;GACD;AACH;AAEA;AACA,OAAM,SAAUE,sBAAsBA,CACpCJ,EAAU,EACVC,aAAgC,EAChCC,MAA4D;EAE5D,OAAO;IACLF,EAAE;IACFC,aAAa;IACbC;GACD;AACH;AAEA,MAAMG,WAAW,GAAG;EAClB,CAACP,MAAM,GAAGA,MAAM;EAChBQ,IAAIA,CAAA;IACF,OAAOZ,QAAQ,CAACa,aAAa,CAAC,IAAI,EAAEC,SAAS,CAAC;EAChD,CAAC;EACDC,QAAQA,CAAmBC,WAA2C;IACpE,OAAO,IAAI,CAACC,OAAO,CAAChB,SAAS,CAACc,QAAQ,CAAC,IAAI,CAACG,GAAG,EAAEF,WAAW,CAAC,CAAC;EAChE,CAAC;EACDG,WAAWA,CAAmBH,WAA4C;IACxE,OAAO,IAAI,CAACC,OAAO,CAAChB,SAAS,CAACkB,WAAW,CAAC,IAAI,CAACD,GAAG,EAAEF,WAAW,CAAC,CAAC;EACnE,CAAC;EACDI,KAAKA,CAAmB,GAAGC,MAA+E;IACxG,OAAO,IAAI,CAACJ,OAAO,CAAChB,SAAS,CAACqB,YAAY,CAAC,IAAI,CAACJ,GAAG,EAAEG,MAAM,CAAC,CAAC;EAC/D;CACD;AAED;AACA,OAAM,SAAUE,IAAIA,CAA8BL,GAAa,EAAEM,OAAgB;EAC/E,SAASC,MAAMA,CAAA,GAAI;EACnB,MAAMC,IAAI,GAAGC,MAAM,CAACC,gBAAgB,CAClCD,MAAM,CAACE,cAAc,CAACJ,MAAM,EAAEd,WAAW,CAAC,EAC1CgB,MAAM,CAACG,yBAAyB,CAAC;IAAE,GAAGN;EAAO,CAAE,CAAC,CACjD;EACDE,IAAI,CAACR,GAAG,GAAGA,GAAG;EACdQ,IAAI,CAACT,OAAO,GAAIC,GAAkB,IAAKK,IAAI,CAACL,GAAG,EAAEM,OAAO,CAAC;EACzD,MAAMO,UAAU,GAAG5B,YAAY,CAAC4B,UAAU,CAACL,IAAI,CAAC;EAChDA,IAAI,CAACK,UAAU,GAAG,CAACC,KAAyB,EAAER,OAA4B,KACxES,eAAe,CAACF,UAAU,CAACC,KAAK,EAAER,OAAO,CAAC,CAAC;EAC7CE,IAAI,CAACH,IAAI,GAAGpB,YAAY,CAACoB,IAAI,CAACG,IAAI,CAAC;EACnCA,IAAI,CAACQ,UAAU,GAAG/B,YAAY,CAAC+B,UAAU,CAACR,IAAI,CAAC;EAC/C,OAAOA,IAAI;AACb;AAEA;AACA,OAAM,SAAUO,eAAeA,CAC7BP,IAAgC;EAEhC,OAAO3B,MAAM,CAACoC,UAAU,CACtBT,IAAI,EACHU,KAAK,IAAKrC,MAAM,CAACsC,aAAa,CAAC,MAAMvC,KAAK,CAACwC,GAAG,CAACF,KAAK,EAAGG,KAAK,IAAK,IAAIrC,WAAW,CAACqC,KAAK,CAAC,CAAC,CAAC,CAC3F;AACH","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toArbitrary.d.ts","sourceRoot":"","sources":["../../../src/internal/schema/toArbitrary.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,KAAK,MAAM,MAAM,iBAAiB,CAAA;AA2B9C,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;CACjE"}
|
|
@@ -10,6 +10,7 @@ import * as SchemaAST from "../../SchemaAST.js";
|
|
|
10
10
|
import * as Struct from "../../Struct.js";
|
|
11
11
|
import * as UndefinedOr from "../../UndefinedOr.js";
|
|
12
12
|
import { errorWithPath } from "../errors.js";
|
|
13
|
+
import * as InternalRecord from "../record.js";
|
|
13
14
|
import * as InternalAnnotations from "./annotations.js";
|
|
14
15
|
const arbitraryMemoMap = /*#__PURE__*/new WeakMap();
|
|
15
16
|
const suspendDepthIdentifierMap = /*#__PURE__*/new WeakMap();
|
|
@@ -83,8 +84,7 @@ const combiner = /*#__PURE__*/Struct.makeCombiner({
|
|
|
83
84
|
noInfinity: or,
|
|
84
85
|
noNaN: or,
|
|
85
86
|
patterns: concat,
|
|
86
|
-
unique: or
|
|
87
|
-
valid: or
|
|
87
|
+
unique: or
|
|
88
88
|
}, {
|
|
89
89
|
omitKeyWhen: Predicate.isUndefined
|
|
90
90
|
});
|
|
@@ -219,7 +219,7 @@ function objectWithOptionalCount(fc, pss, orderedNames, requiredKeys, optionalNa
|
|
|
219
219
|
const out = {};
|
|
220
220
|
for (const name of orderedNames) {
|
|
221
221
|
if (keep.has(name)) {
|
|
222
|
-
out
|
|
222
|
+
InternalRecord.assignProperty(out, name, base[name]);
|
|
223
223
|
}
|
|
224
224
|
}
|
|
225
225
|
return out;
|
|
@@ -308,8 +308,7 @@ function reportChecks(report, checks, path) {
|
|
|
308
308
|
visit(child, nextCovered);
|
|
309
309
|
}
|
|
310
310
|
} else if (!nextCovered) {
|
|
311
|
-
const
|
|
312
|
-
const description = typeof meta === "object" && meta !== null && "_tag" in meta && typeof meta._tag === "string" ? meta._tag : check.annotations?.identifier ?? check.annotations?.expected;
|
|
311
|
+
const description = check.annotations?.representation?.id ?? check.annotations?.identifier ?? check.annotations?.expected;
|
|
313
312
|
report.warnings.push({
|
|
314
313
|
_tag: "OpaqueFilter",
|
|
315
314
|
path,
|
|
@@ -635,7 +634,7 @@ function base(ast, path) {
|
|
|
635
634
|
return undefined;
|
|
636
635
|
}
|
|
637
636
|
requiredKeys.push(name);
|
|
638
|
-
pss
|
|
637
|
+
InternalRecord.assignProperty(pss, name, out);
|
|
639
638
|
}
|
|
640
639
|
let optionalCount = Math.max(0, (ctx.constraint?.minLength ?? 0) - requiredKeys.length);
|
|
641
640
|
for (const [name, out] of optionals) {
|
|
@@ -644,7 +643,7 @@ function base(ast, path) {
|
|
|
644
643
|
}
|
|
645
644
|
optionalCount--;
|
|
646
645
|
requiredKeys.push(name);
|
|
647
|
-
pss
|
|
646
|
+
InternalRecord.assignProperty(pss, name, out);
|
|
648
647
|
}
|
|
649
648
|
if (optionalCount > 0 && ast.indexSignatures.length === 0) {
|
|
650
649
|
return undefined;
|
|
@@ -696,7 +695,7 @@ function base(ast, path) {
|
|
|
696
695
|
} else {
|
|
697
696
|
requiredKeys.push(name);
|
|
698
697
|
}
|
|
699
|
-
pss
|
|
698
|
+
InternalRecord.assignProperty(pss, name, arbitrary(fc, reset, recursionStack));
|
|
700
699
|
}
|
|
701
700
|
// When property-count constraints must be satisfied by selecting
|
|
702
701
|
// optional keys (no index signatures are available to fill the gap),
|
|
@@ -777,4 +776,4 @@ function base(ast, path) {
|
|
|
777
776
|
}
|
|
778
777
|
}
|
|
779
778
|
}
|
|
780
|
-
//# sourceMappingURL=
|
|
779
|
+
//# sourceMappingURL=toArbitrary.js.map
|