effect 4.0.5 → 4.0.7
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/ai-docs/package.json +1 -1
- package/ai-docs/src/06_schedule/10_schedules.ts +5 -4
- package/ai-docs/tsconfig.json +3 -1
- package/dist/Arbitrary.d.ts +10 -2
- package/dist/Arbitrary.d.ts.map +1 -1
- package/dist/Arbitrary.js +2 -1
- package/dist/Arbitrary.js.map +1 -1
- package/dist/Array.d.ts +117 -52
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +41 -20
- package/dist/Array.js.map +1 -1
- package/dist/Bytes.d.ts +79 -0
- package/dist/Bytes.d.ts.map +1 -0
- package/dist/Bytes.js +109 -0
- package/dist/Bytes.js.map +1 -0
- package/dist/Channel.d.ts +181 -13
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +144 -34
- package/dist/Channel.js.map +1 -1
- package/dist/ChannelSchema.d.ts.map +1 -1
- package/dist/ChannelSchema.js.map +1 -1
- package/dist/Chunk.d.ts +39 -21
- package/dist/Chunk.d.ts.map +1 -1
- package/dist/Chunk.js +26 -17
- package/dist/Chunk.js.map +1 -1
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js +8 -3
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.d.ts.map +1 -1
- package/dist/ConfigProvider.js +2 -1
- package/dist/ConfigProvider.js.map +1 -1
- package/dist/Cron.d.ts +2 -2
- package/dist/Cron.d.ts.map +1 -1
- package/dist/Cron.js +6 -3
- package/dist/Cron.js.map +1 -1
- package/dist/Data.d.ts +54 -235
- package/dist/Data.d.ts.map +1 -1
- package/dist/Data.js.map +1 -1
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +56 -16
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +488 -164
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +204 -38
- package/dist/Effect.js.map +1 -1
- package/dist/Equal.d.ts.map +1 -1
- package/dist/Equal.js +8 -1
- package/dist/Equal.js.map +1 -1
- package/dist/Equivalence.d.ts +2 -1
- package/dist/Equivalence.d.ts.map +1 -1
- package/dist/Equivalence.js +12 -8
- package/dist/Equivalence.js.map +1 -1
- package/dist/Exit.d.ts +27 -12
- package/dist/Exit.d.ts.map +1 -1
- package/dist/Exit.js +8 -3
- package/dist/Exit.js.map +1 -1
- package/dist/FiberHandle.d.ts +2 -0
- package/dist/FiberHandle.d.ts.map +1 -1
- package/dist/FiberHandle.js +9 -4
- package/dist/FiberHandle.js.map +1 -1
- package/dist/FiberMap.d.ts +2 -0
- package/dist/FiberMap.d.ts.map +1 -1
- package/dist/FiberMap.js +5 -2
- package/dist/FiberMap.js.map +1 -1
- package/dist/FileSystem.d.ts +5 -0
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js +3 -0
- package/dist/FileSystem.js.map +1 -1
- package/dist/Formatter.d.ts.map +1 -1
- package/dist/Formatter.js +27 -13
- package/dist/Formatter.js.map +1 -1
- package/dist/Graph.d.ts.map +1 -1
- package/dist/Graph.js.map +1 -1
- package/dist/Hash.d.ts.map +1 -1
- package/dist/Hash.js +4 -1
- package/dist/Hash.js.map +1 -1
- package/dist/HashSet.d.ts.map +1 -1
- package/dist/HashSet.js.map +1 -1
- package/dist/Iterable.d.ts.map +1 -1
- package/dist/Iterable.js +18 -17
- package/dist/Iterable.js.map +1 -1
- package/dist/JsonPatch.js +4 -0
- package/dist/JsonPatch.js.map +1 -1
- package/dist/JsonSchema.d.ts +9 -3
- package/dist/JsonSchema.d.ts.map +1 -1
- package/dist/JsonSchema.js +32 -43
- package/dist/JsonSchema.js.map +1 -1
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js +2 -2
- package/dist/Layer.js.map +1 -1
- package/dist/ManagedRuntime.d.ts +19 -1
- package/dist/ManagedRuntime.d.ts.map +1 -1
- package/dist/ManagedRuntime.js +62 -6
- package/dist/ManagedRuntime.js.map +1 -1
- package/dist/Metric.d.ts +135 -3
- package/dist/Metric.d.ts.map +1 -1
- package/dist/Metric.js +197 -25
- package/dist/Metric.js.map +1 -1
- package/dist/MutableHashMap.d.ts.map +1 -1
- package/dist/MutableHashMap.js.map +1 -1
- package/dist/MutableList.d.ts +5 -2
- package/dist/MutableList.d.ts.map +1 -1
- package/dist/MutableList.js +7 -5
- package/dist/MutableList.js.map +1 -1
- package/dist/MutableRef.d.ts.map +1 -1
- package/dist/MutableRef.js +7 -0
- package/dist/MutableRef.js.map +1 -1
- package/dist/Number.js +2 -2
- package/dist/Number.js.map +1 -1
- package/dist/Optic.d.ts.map +1 -1
- package/dist/Optic.js.map +1 -1
- package/dist/PartitionedSemaphore.d.ts +2 -1
- package/dist/PartitionedSemaphore.d.ts.map +1 -1
- package/dist/PartitionedSemaphore.js +22 -12
- package/dist/PartitionedSemaphore.js.map +1 -1
- package/dist/Path.d.ts.map +1 -1
- package/dist/Path.js +8 -1
- package/dist/Path.js.map +1 -1
- package/dist/Pool.d.ts.map +1 -1
- package/dist/Pool.js +77 -27
- package/dist/Pool.js.map +1 -1
- package/dist/PubSub.d.ts.map +1 -1
- package/dist/PubSub.js +17 -13
- package/dist/PubSub.js.map +1 -1
- package/dist/Queue.d.ts +4 -1
- package/dist/Queue.d.ts.map +1 -1
- package/dist/Queue.js +4 -1
- package/dist/Queue.js.map +1 -1
- package/dist/Random.d.ts.map +1 -1
- package/dist/Random.js +1 -1
- package/dist/Random.js.map +1 -1
- package/dist/RcMap.d.ts +12 -7
- package/dist/RcMap.d.ts.map +1 -1
- package/dist/RcMap.js +9 -6
- package/dist/RcMap.js.map +1 -1
- package/dist/Record.d.ts +51 -0
- package/dist/Record.d.ts.map +1 -1
- package/dist/Record.js +17 -0
- package/dist/Record.js.map +1 -1
- package/dist/Ref.d.ts.map +1 -1
- package/dist/Ref.js +8 -0
- package/dist/Ref.js.map +1 -1
- package/dist/References.d.ts +5 -4
- package/dist/References.d.ts.map +1 -1
- package/dist/References.js +5 -4
- package/dist/References.js.map +1 -1
- package/dist/RequestResolver.d.ts +31 -1
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +39 -4
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Resource.js +1 -1
- package/dist/Resource.js.map +1 -1
- package/dist/Runtime.d.ts +3 -3
- package/dist/Runtime.d.ts.map +1 -1
- package/dist/Runtime.js +18 -15
- package/dist/Runtime.js.map +1 -1
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +1 -1
- package/dist/Schedule.js.map +1 -1
- package/dist/Schema.d.ts +408 -340
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +370 -47
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +9 -7
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +38 -25
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaGetter.d.ts +8 -3
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +15 -5
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaIssue.d.ts +4 -4
- package/dist/SchemaIssue.d.ts.map +1 -1
- package/dist/SchemaIssue.js +29 -51
- package/dist/SchemaIssue.js.map +1 -1
- package/dist/SchemaParser.d.ts.map +1 -1
- package/dist/SchemaParser.js +48 -22
- package/dist/SchemaParser.js.map +1 -1
- package/dist/SchemaRepresentation.d.ts +75 -11
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +41 -13
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +5 -2
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +10 -3
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/Scope.d.ts +12 -2
- package/dist/Scope.d.ts.map +1 -1
- package/dist/Scope.js +5 -0
- package/dist/Scope.js.map +1 -1
- package/dist/ScopedCache.d.ts +10 -7
- package/dist/ScopedCache.d.ts.map +1 -1
- package/dist/ScopedCache.js +9 -5
- package/dist/ScopedCache.js.map +1 -1
- package/dist/SemVer.d.ts +1196 -0
- package/dist/SemVer.d.ts.map +1 -0
- package/dist/SemVer.js +756 -0
- package/dist/SemVer.js.map +1 -0
- package/dist/SemVerRange.d.ts +559 -0
- package/dist/SemVerRange.d.ts.map +1 -0
- package/dist/SemVerRange.js +551 -0
- package/dist/SemVerRange.js.map +1 -0
- package/dist/Semaphore.d.ts.map +1 -1
- package/dist/Semaphore.js +54 -35
- package/dist/Semaphore.js.map +1 -1
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js +13 -4
- package/dist/Sink.js.map +1 -1
- package/dist/Stream.d.ts +235 -8
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +167 -70
- package/dist/Stream.js.map +1 -1
- package/dist/String.d.ts +7 -2
- package/dist/String.d.ts.map +1 -1
- package/dist/String.js +11 -6
- package/dist/String.js.map +1 -1
- package/dist/TextDiff.d.ts +399 -0
- package/dist/TextDiff.d.ts.map +1 -0
- package/dist/TextDiff.js +634 -0
- package/dist/TextDiff.js.map +1 -0
- package/dist/Tracer.d.ts +11 -1
- package/dist/Tracer.d.ts.map +1 -1
- package/dist/Tracer.js +6 -1
- package/dist/Tracer.js.map +1 -1
- package/dist/TxHashMap.d.ts.map +1 -1
- package/dist/TxHashMap.js.map +1 -1
- package/dist/TxHashSet.d.ts.map +1 -1
- package/dist/TxHashSet.js.map +1 -1
- package/dist/ai/AiError.d.ts +68 -4
- package/dist/ai/AiError.d.ts.map +1 -1
- package/dist/ai/AiError.js +50 -2
- package/dist/ai/AiError.js.map +1 -1
- package/dist/ai/Chat.d.ts +1 -2
- package/dist/ai/Chat.d.ts.map +1 -1
- package/dist/ai/Chat.js +6 -3
- package/dist/ai/Chat.js.map +1 -1
- package/dist/ai/Decision.d.ts +46 -1
- package/dist/ai/Decision.d.ts.map +1 -1
- package/dist/ai/Decision.js.map +1 -1
- package/dist/ai/DecisionModel.d.ts +129 -11
- package/dist/ai/DecisionModel.d.ts.map +1 -1
- package/dist/ai/DecisionModel.js +182 -94
- package/dist/ai/DecisionModel.js.map +1 -1
- package/dist/ai/EmbeddingModel.d.ts +10 -0
- package/dist/ai/EmbeddingModel.d.ts.map +1 -1
- package/dist/ai/EmbeddingModel.js +21 -7
- package/dist/ai/EmbeddingModel.js.map +1 -1
- package/dist/ai/LanguageModel.d.ts.map +1 -1
- package/dist/ai/LanguageModel.js +9 -0
- package/dist/ai/LanguageModel.js.map +1 -1
- package/dist/ai/McpClient.d.ts +289 -0
- package/dist/ai/McpClient.d.ts.map +1 -0
- package/dist/ai/McpClient.js +819 -0
- package/dist/ai/McpClient.js.map +1 -0
- package/dist/ai/McpClientError.d.ts +254 -0
- package/dist/ai/McpClientError.d.ts.map +1 -0
- package/dist/ai/McpClientError.js +260 -0
- package/dist/ai/McpClientError.js.map +1 -0
- package/dist/ai/McpProtocol.d.ts +2 -2
- package/dist/ai/McpProtocol.d.ts.map +1 -1
- package/dist/ai/McpSchema.d.ts +258 -125
- package/dist/ai/McpSchema.d.ts.map +1 -1
- package/dist/ai/McpSchema.js +94 -24
- package/dist/ai/McpSchema.js.map +1 -1
- package/dist/ai/McpServer.d.ts.map +1 -1
- package/dist/ai/McpServer.js +46 -37
- package/dist/ai/McpServer.js.map +1 -1
- package/dist/ai/Prompt.d.ts +74 -20
- package/dist/ai/Prompt.d.ts.map +1 -1
- package/dist/ai/Prompt.js +61 -1
- package/dist/ai/Prompt.js.map +1 -1
- package/dist/ai/Response.d.ts +160 -3
- package/dist/ai/Response.d.ts.map +1 -1
- package/dist/ai/Response.js +39 -37
- package/dist/ai/Response.js.map +1 -1
- package/dist/ai/Tool.d.ts +36 -4
- package/dist/ai/Tool.d.ts.map +1 -1
- package/dist/ai/Tool.js +5 -2
- package/dist/ai/Tool.js.map +1 -1
- package/dist/ai/Toolkit.d.ts +48 -1
- package/dist/ai/Toolkit.d.ts.map +1 -1
- package/dist/ai/Toolkit.js +73 -13
- package/dist/ai/Toolkit.js.map +1 -1
- package/dist/ai/index.d.ts +10 -0
- package/dist/ai/index.d.ts.map +1 -1
- package/dist/ai/index.js +10 -0
- package/dist/ai/index.js.map +1 -1
- package/dist/ai/internal/mcpCore.js.map +1 -1
- package/dist/ai/internal/mcpProtocol/v2024_11_05.js +1 -1
- package/dist/ai/internal/mcpProtocol/v2024_11_05.js.map +1 -1
- package/dist/ai/internal/mcpProtocol/v2025_03_26.js +1 -1
- package/dist/ai/internal/mcpProtocol/v2025_03_26.js.map +1 -1
- package/dist/ai/internal/mcpProtocol/v2025_06_18.js +2 -2
- package/dist/ai/internal/mcpProtocol/v2025_06_18.js.map +1 -1
- package/dist/ai/internal/mcpProtocol/v2025_11_25.js +2 -2
- package/dist/ai/internal/mcpProtocol/v2025_11_25.js.map +1 -1
- package/dist/ai/internal/mcpProtocol/v2026_07_28.js +4 -7
- package/dist/ai/internal/mcpProtocol/v2026_07_28.js.map +1 -1
- package/dist/ai/internal/mcpProtocol.js +16 -2
- package/dist/ai/internal/mcpProtocol.js.map +1 -1
- package/dist/ai/internal/mcpRuntime.js +3 -4
- package/dist/ai/internal/mcpRuntime.js.map +1 -1
- package/dist/ai/internal/mcpSchema/v2024_11_05.js +19 -13
- package/dist/ai/internal/mcpSchema/v2024_11_05.js.map +1 -1
- package/dist/ai/internal/mcpSchema/v2025_03_26.js +3 -2
- package/dist/ai/internal/mcpSchema/v2025_03_26.js.map +1 -1
- package/dist/ai/internal/mcpSchema/v2025_06_18.js +7 -7
- package/dist/ai/internal/mcpSchema/v2025_06_18.js.map +1 -1
- package/dist/ai/internal/mcpSchema/v2025_11_25.js +8 -8
- package/dist/ai/internal/mcpSchema/v2025_11_25.js.map +1 -1
- package/dist/ai/internal/mcpSchema/v2026_07_28.js +43 -42
- package/dist/ai/internal/mcpSchema/v2026_07_28.js.map +1 -1
- package/dist/cli/Argument.d.ts +15 -0
- package/dist/cli/Argument.d.ts.map +1 -1
- package/dist/cli/Argument.js +5 -0
- package/dist/cli/Argument.js.map +1 -1
- package/dist/cli/CliError.d.ts +120 -2
- package/dist/cli/CliError.d.ts.map +1 -1
- package/dist/cli/CliError.js +106 -5
- package/dist/cli/CliError.js.map +1 -1
- package/dist/cli/CliOutput.d.ts +155 -6
- package/dist/cli/CliOutput.d.ts.map +1 -1
- package/dist/cli/CliOutput.js +62 -6
- package/dist/cli/CliOutput.js.map +1 -1
- package/dist/cli/Command.d.ts +310 -18
- package/dist/cli/Command.d.ts.map +1 -1
- package/dist/cli/Command.js +164 -33
- package/dist/cli/Command.js.map +1 -1
- package/dist/cli/Completions.d.ts +63 -0
- package/dist/cli/Completions.d.ts.map +1 -1
- package/dist/cli/Completions.js +49 -9
- package/dist/cli/Completions.js.map +1 -1
- package/dist/cli/Flag.d.ts +130 -0
- package/dist/cli/Flag.d.ts.map +1 -1
- package/dist/cli/Flag.js +61 -0
- package/dist/cli/Flag.js.map +1 -1
- package/dist/cli/GlobalFlag.d.ts.map +1 -1
- package/dist/cli/GlobalFlag.js +14 -6
- package/dist/cli/GlobalFlag.js.map +1 -1
- package/dist/cli/Param.d.ts +116 -0
- package/dist/cli/Param.d.ts.map +1 -1
- package/dist/cli/Param.js +77 -2
- package/dist/cli/Param.js.map +1 -1
- package/dist/cli/TerminalCapabilities.d.ts +85 -0
- package/dist/cli/TerminalCapabilities.d.ts.map +1 -0
- package/dist/cli/TerminalCapabilities.js +124 -0
- package/dist/cli/TerminalCapabilities.js.map +1 -0
- package/dist/cli/index.d.ts +5 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +5 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/internal/command.d.ts +2 -1
- package/dist/cli/internal/command.d.ts.map +1 -1
- package/dist/cli/internal/command.js +5 -2
- package/dist/cli/internal/command.js.map +1 -1
- package/dist/cli/internal/completions/bash.js +77 -30
- package/dist/cli/internal/completions/bash.js.map +1 -1
- package/dist/cli/internal/completions/descriptor.js +9 -1
- package/dist/cli/internal/completions/descriptor.js.map +1 -1
- package/dist/cli/internal/completions/fish.js +10 -8
- package/dist/cli/internal/completions/fish.js.map +1 -1
- package/dist/cli/internal/completions/powershell.js +18 -9
- package/dist/cli/internal/completions/powershell.js.map +1 -1
- package/dist/cli/internal/completions/zsh.js +8 -5
- package/dist/cli/internal/completions/zsh.js.map +1 -1
- package/dist/cli/internal/formatter.d.ts +2 -0
- package/dist/cli/internal/formatter.d.ts.map +1 -0
- package/dist/cli/internal/formatter.js +15 -0
- package/dist/cli/internal/formatter.js.map +1 -0
- package/dist/cli/internal/lexer.js +24 -10
- package/dist/cli/internal/lexer.js.map +1 -1
- package/dist/cli/internal/parser.js +24 -12
- package/dist/cli/internal/parser.js.map +1 -1
- package/dist/cluster/ClusterCron.d.ts +29 -1
- package/dist/cluster/ClusterCron.d.ts.map +1 -1
- package/dist/cluster/ClusterCron.js +64 -32
- package/dist/cluster/ClusterCron.js.map +1 -1
- package/dist/cluster/ClusterMetrics.d.ts +143 -7
- package/dist/cluster/ClusterMetrics.d.ts.map +1 -1
- package/dist/cluster/ClusterMetrics.js +151 -7
- package/dist/cluster/ClusterMetrics.js.map +1 -1
- package/dist/cluster/ClusterWorkflowEngine.d.ts +1 -1
- package/dist/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/cluster/ClusterWorkflowEngine.js +82 -21
- package/dist/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/cluster/Entity.d.ts +2 -0
- package/dist/cluster/Entity.d.ts.map +1 -1
- package/dist/cluster/Entity.js.map +1 -1
- package/dist/cluster/MessageStorage.d.ts +44 -45
- package/dist/cluster/MessageStorage.d.ts.map +1 -1
- package/dist/cluster/MessageStorage.js +6 -7
- package/dist/cluster/MessageStorage.js.map +1 -1
- package/dist/cluster/Runners.d.ts.map +1 -1
- package/dist/cluster/Runners.js +54 -15
- package/dist/cluster/Runners.js.map +1 -1
- package/dist/cluster/Sharding.d.ts +1 -0
- package/dist/cluster/Sharding.d.ts.map +1 -1
- package/dist/cluster/Sharding.js +155 -52
- package/dist/cluster/Sharding.js.map +1 -1
- package/dist/cluster/ShardingConfig.d.ts +30 -0
- package/dist/cluster/ShardingConfig.d.ts.map +1 -1
- package/dist/cluster/ShardingConfig.js +4 -0
- package/dist/cluster/ShardingConfig.js.map +1 -1
- package/dist/cluster/Snowflake.d.ts.map +1 -1
- package/dist/cluster/Snowflake.js +3 -7
- package/dist/cluster/Snowflake.js.map +1 -1
- package/dist/cluster/SqlMessageStorage.d.ts.map +1 -1
- package/dist/cluster/SqlMessageStorage.js +40 -50
- package/dist/cluster/SqlMessageStorage.js.map +1 -1
- package/dist/cluster/SqlRunnerStorage.d.ts +2 -2
- package/dist/cluster/SqlRunnerStorage.d.ts.map +1 -1
- package/dist/cluster/SqlRunnerStorage.js +97 -43
- package/dist/cluster/SqlRunnerStorage.js.map +1 -1
- package/dist/cluster/internal/entityManager.js +119 -28
- package/dist/cluster/internal/entityManager.js.map +1 -1
- package/dist/devtools/DevTools.d.ts +3 -2
- package/dist/devtools/DevTools.d.ts.map +1 -1
- package/dist/devtools/DevTools.js +3 -2
- package/dist/devtools/DevTools.js.map +1 -1
- package/dist/devtools/DevToolsClient.d.ts +11 -0
- package/dist/devtools/DevToolsClient.d.ts.map +1 -1
- package/dist/devtools/DevToolsClient.js +33 -4
- package/dist/devtools/DevToolsClient.js.map +1 -1
- package/dist/encoding/Base64.js +36 -0
- package/dist/encoding/Base64.js.map +1 -1
- package/dist/encoding/Base64Url.d.ts +29 -0
- package/dist/encoding/Base64Url.d.ts.map +1 -1
- package/dist/encoding/Base64Url.js +29 -0
- package/dist/encoding/Base64Url.js.map +1 -1
- package/dist/encoding/Ini.d.ts.map +1 -1
- package/dist/encoding/Ini.js +3 -0
- package/dist/encoding/Ini.js.map +1 -1
- package/dist/encoding/JsonArray.d.ts +270 -0
- package/dist/encoding/JsonArray.d.ts.map +1 -0
- package/dist/encoding/JsonArray.js +691 -0
- package/dist/encoding/JsonArray.js.map +1 -0
- package/dist/encoding/Ndjson.d.ts +43 -4
- package/dist/encoding/Ndjson.d.ts.map +1 -1
- package/dist/encoding/Ndjson.js +169 -18
- package/dist/encoding/Ndjson.js.map +1 -1
- package/dist/encoding/SchemaBinary.d.ts +9 -1
- package/dist/encoding/SchemaBinary.d.ts.map +1 -1
- package/dist/encoding/SchemaBinary.js +12 -19
- package/dist/encoding/SchemaBinary.js.map +1 -1
- package/dist/encoding/Sse.d.ts.map +1 -1
- package/dist/encoding/Sse.js +3 -3
- package/dist/encoding/Sse.js.map +1 -1
- package/dist/encoding/Tar.d.ts +309 -0
- package/dist/encoding/Tar.d.ts.map +1 -0
- package/dist/encoding/Tar.js +1182 -0
- package/dist/encoding/Tar.js.map +1 -0
- package/dist/encoding/Toml.d.ts.map +1 -1
- package/dist/encoding/Toml.js +24 -19
- package/dist/encoding/Toml.js.map +1 -1
- package/dist/encoding/Xml.d.ts +464 -0
- package/dist/encoding/Xml.d.ts.map +1 -0
- package/dist/encoding/Xml.js +1619 -0
- package/dist/encoding/Xml.js.map +1 -0
- package/dist/encoding/Yaml.d.ts +6 -2
- package/dist/encoding/Yaml.d.ts.map +1 -1
- package/dist/encoding/Yaml.js +97 -34
- package/dist/encoding/Yaml.js.map +1 -1
- package/dist/encoding/Zip.d.ts +413 -0
- package/dist/encoding/Zip.d.ts.map +1 -0
- package/dist/encoding/Zip.js +1255 -0
- package/dist/encoding/Zip.js.map +1 -0
- package/dist/encoding/index.d.ts +20 -0
- package/dist/encoding/index.d.ts.map +1 -1
- package/dist/encoding/index.js +20 -0
- package/dist/encoding/index.js.map +1 -1
- package/dist/eventlog/EventJournal.d.ts +90 -5
- package/dist/eventlog/EventJournal.d.ts.map +1 -1
- package/dist/eventlog/EventJournal.js +488 -228
- package/dist/eventlog/EventJournal.js.map +1 -1
- package/dist/eventlog/EventLog.d.ts +180 -12
- package/dist/eventlog/EventLog.d.ts.map +1 -1
- package/dist/eventlog/EventLog.js +394 -146
- package/dist/eventlog/EventLog.js.map +1 -1
- package/dist/eventlog/EventLogEncryption.d.ts +36 -30
- package/dist/eventlog/EventLogEncryption.d.ts.map +1 -1
- package/dist/eventlog/EventLogEncryption.js +97 -38
- package/dist/eventlog/EventLogEncryption.js.map +1 -1
- package/dist/eventlog/EventLogMessage.d.ts +74 -34
- package/dist/eventlog/EventLogMessage.d.ts.map +1 -1
- package/dist/eventlog/EventLogMessage.js +45 -11
- package/dist/eventlog/EventLogMessage.js.map +1 -1
- package/dist/eventlog/EventLogRemote.d.ts +45 -8
- package/dist/eventlog/EventLogRemote.d.ts.map +1 -1
- package/dist/eventlog/EventLogRemote.js +51 -14
- package/dist/eventlog/EventLogRemote.js.map +1 -1
- package/dist/eventlog/EventLogServer.d.ts +46 -3
- package/dist/eventlog/EventLogServer.d.ts.map +1 -1
- package/dist/eventlog/EventLogServer.js +119 -19
- package/dist/eventlog/EventLogServer.js.map +1 -1
- package/dist/eventlog/EventLogServerEncrypted.d.ts +23 -33
- package/dist/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
- package/dist/eventlog/EventLogServerEncrypted.js +97 -70
- package/dist/eventlog/EventLogServerEncrypted.js.map +1 -1
- package/dist/eventlog/EventLogServerUnencrypted.d.ts +39 -5
- package/dist/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
- package/dist/eventlog/EventLogServerUnencrypted.js +151 -69
- package/dist/eventlog/EventLogServerUnencrypted.js.map +1 -1
- package/dist/eventlog/EventRow.d.ts +288 -0
- package/dist/eventlog/EventRow.d.ts.map +1 -0
- package/dist/eventlog/EventRow.js +435 -0
- package/dist/eventlog/EventRow.js.map +1 -0
- package/dist/eventlog/SqlEventJournal.d.ts +18 -18
- package/dist/eventlog/SqlEventJournal.d.ts.map +1 -1
- package/dist/eventlog/SqlEventJournal.js +417 -169
- package/dist/eventlog/SqlEventJournal.js.map +1 -1
- package/dist/eventlog/SqlEventLogServerEncrypted.d.ts +10 -18
- package/dist/eventlog/SqlEventLogServerEncrypted.d.ts.map +1 -1
- package/dist/eventlog/SqlEventLogServerEncrypted.js +179 -69
- package/dist/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
- package/dist/eventlog/SqlEventLogServerUnencrypted.d.ts +23 -3
- package/dist/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -1
- package/dist/eventlog/SqlEventLogServerUnencrypted.js +102 -51
- package/dist/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
- package/dist/eventlog/index.d.ts +5 -0
- package/dist/eventlog/index.d.ts.map +1 -1
- package/dist/eventlog/index.js +5 -0
- package/dist/eventlog/index.js.map +1 -1
- package/dist/eventlog/internal/conflicts.d.ts +46 -0
- package/dist/eventlog/internal/conflicts.d.ts.map +1 -0
- package/dist/eventlog/internal/conflicts.js +89 -0
- package/dist/eventlog/internal/conflicts.js.map +1 -0
- package/dist/graphql/GraphQLClientError.d.ts +2 -2
- package/dist/graphql/GraphQLClientError.d.ts.map +1 -1
- package/dist/graphql/GraphQLClientError.js +4 -18
- package/dist/graphql/GraphQLClientError.js.map +1 -1
- package/dist/graphql/GraphQLProtocol.d.ts +12 -9
- package/dist/graphql/GraphQLProtocol.d.ts.map +1 -1
- package/dist/graphql/GraphQLProtocol.js +4 -3
- package/dist/graphql/GraphQLProtocol.js.map +1 -1
- package/dist/graphql/GraphQLResolver.d.ts +2 -0
- package/dist/graphql/GraphQLResolver.d.ts.map +1 -1
- package/dist/graphql/GraphQLResolver.js +74 -32
- package/dist/graphql/GraphQLResolver.js.map +1 -1
- package/dist/http/Cookies.d.ts.map +1 -1
- package/dist/http/Cookies.js +10 -9
- package/dist/http/Cookies.js.map +1 -1
- package/dist/http/FetchHttpClient.d.ts +8 -1
- package/dist/http/FetchHttpClient.d.ts.map +1 -1
- package/dist/http/FetchHttpClient.js +51 -4
- package/dist/http/FetchHttpClient.js.map +1 -1
- package/dist/http/FindMyWay/internal/router.js +10 -0
- package/dist/http/FindMyWay/internal/router.js.map +1 -1
- package/dist/http/Headers.d.ts +227 -0
- package/dist/http/Headers.d.ts.map +1 -1
- package/dist/http/Headers.js +261 -0
- package/dist/http/Headers.js.map +1 -1
- package/dist/http/HttpClient.d.ts +516 -0
- package/dist/http/HttpClient.d.ts.map +1 -1
- package/dist/http/HttpClient.js +286 -23
- package/dist/http/HttpClient.js.map +1 -1
- package/dist/http/HttpClientError.d.ts +8 -1
- package/dist/http/HttpClientError.d.ts.map +1 -1
- package/dist/http/HttpClientError.js +37 -1
- package/dist/http/HttpClientError.js.map +1 -1
- package/dist/http/HttpClientRequest.d.ts +127 -3
- package/dist/http/HttpClientRequest.d.ts.map +1 -1
- package/dist/http/HttpClientRequest.js +45 -3
- package/dist/http/HttpClientRequest.js.map +1 -1
- package/dist/http/HttpClientResponse.d.ts +53 -0
- package/dist/http/HttpClientResponse.d.ts.map +1 -1
- package/dist/http/HttpClientResponse.js +47 -0
- package/dist/http/HttpClientResponse.js.map +1 -1
- package/dist/http/HttpEffect.d.ts +6 -2
- package/dist/http/HttpEffect.d.ts.map +1 -1
- package/dist/http/HttpEffect.js +21 -17
- package/dist/http/HttpEffect.js.map +1 -1
- package/dist/http/HttpIncomingMessage.d.ts +2 -1
- package/dist/http/HttpIncomingMessage.d.ts.map +1 -1
- package/dist/http/HttpIncomingMessage.js +3 -23
- package/dist/http/HttpIncomingMessage.js.map +1 -1
- package/dist/http/HttpMiddleware.d.ts +119 -2
- package/dist/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/http/HttpMiddleware.js +173 -29
- package/dist/http/HttpMiddleware.js.map +1 -1
- package/dist/http/HttpRouter.d.ts.map +1 -1
- package/dist/http/HttpRouter.js +9 -3
- package/dist/http/HttpRouter.js.map +1 -1
- package/dist/http/HttpServerError.d.ts +5 -2
- package/dist/http/HttpServerError.d.ts.map +1 -1
- package/dist/http/HttpServerError.js +7 -5
- package/dist/http/HttpServerError.js.map +1 -1
- package/dist/http/HttpServerRequest.d.ts +30 -5
- package/dist/http/HttpServerRequest.d.ts.map +1 -1
- package/dist/http/HttpServerRequest.js +109 -20
- package/dist/http/HttpServerRequest.js.map +1 -1
- package/dist/http/HttpServerResponse.d.ts +17 -8
- package/dist/http/HttpServerResponse.d.ts.map +1 -1
- package/dist/http/HttpServerResponse.js +37 -21
- package/dist/http/HttpServerResponse.js.map +1 -1
- package/dist/http/HttpStaticServer.d.ts +0 -12
- package/dist/http/HttpStaticServer.d.ts.map +1 -1
- package/dist/http/HttpStaticServer.js +65 -24
- package/dist/http/HttpStaticServer.js.map +1 -1
- package/dist/http/MultipartParser/internal/contentType.d.ts +15 -1
- package/dist/http/MultipartParser/internal/contentType.d.ts.map +1 -1
- package/dist/http/MultipartParser/internal/contentType.js +89 -7
- package/dist/http/MultipartParser/internal/contentType.js.map +1 -1
- package/dist/http/MultipartParser/internal/headers.d.ts.map +1 -1
- package/dist/http/MultipartParser/internal/headers.js +4 -12
- package/dist/http/MultipartParser/internal/headers.js.map +1 -1
- package/dist/http/MultipartParser/internal/multipart.d.ts.map +1 -1
- package/dist/http/MultipartParser/internal/multipart.js +6 -27
- package/dist/http/MultipartParser/internal/multipart.js.map +1 -1
- package/dist/http/Url.d.ts.map +1 -1
- package/dist/http/Url.js +6 -1
- package/dist/http/Url.js.map +1 -1
- package/dist/http/UrlParams.d.ts +3 -1
- package/dist/http/UrlParams.d.ts.map +1 -1
- package/dist/http/UrlParams.js +4 -2
- package/dist/http/UrlParams.js.map +1 -1
- package/dist/http/internal/compression.js +4 -5
- package/dist/http/internal/compression.js.map +1 -1
- package/dist/http/internal/decompression.js +20 -11
- package/dist/http/internal/decompression.js.map +1 -1
- package/dist/http/internal/httpBody.js +8 -1
- package/dist/http/internal/httpBody.js.map +1 -1
- package/dist/http/internal/lazyStream.d.ts +2 -0
- package/dist/http/internal/lazyStream.d.ts.map +1 -0
- package/dist/http/internal/lazyStream.js +18 -0
- package/dist/http/internal/lazyStream.js.map +1 -0
- package/dist/http/internal/requestState.d.ts +2 -0
- package/dist/http/internal/requestState.d.ts.map +1 -0
- package/dist/http/internal/requestState.js +28 -0
- package/dist/http/internal/requestState.js.map +1 -0
- package/dist/http/internal/urlParams.js +25 -0
- package/dist/http/internal/urlParams.js.map +1 -1
- package/dist/http/internal/webResponse.d.ts +2 -0
- package/dist/http/internal/webResponse.d.ts.map +1 -0
- package/dist/http/internal/webResponse.js +12 -0
- package/dist/http/internal/webResponse.js.map +1 -0
- package/dist/http-api/HttpApi.d.ts +3 -6
- package/dist/http-api/HttpApi.d.ts.map +1 -1
- package/dist/http-api/HttpApi.js +4 -7
- package/dist/http-api/HttpApi.js.map +1 -1
- package/dist/http-api/HttpApiBuilder.d.ts.map +1 -1
- package/dist/http-api/HttpApiBuilder.js +142 -23
- package/dist/http-api/HttpApiBuilder.js.map +1 -1
- package/dist/http-api/HttpApiClient.d.ts +99 -4
- package/dist/http-api/HttpApiClient.d.ts.map +1 -1
- package/dist/http-api/HttpApiClient.js +218 -60
- package/dist/http-api/HttpApiClient.js.map +1 -1
- package/dist/http-api/HttpApiEndpoint.d.ts +72 -29
- package/dist/http-api/HttpApiEndpoint.d.ts.map +1 -1
- package/dist/http-api/HttpApiEndpoint.js +140 -14
- package/dist/http-api/HttpApiEndpoint.js.map +1 -1
- package/dist/http-api/HttpApiError.d.ts +58 -0
- package/dist/http-api/HttpApiError.d.ts.map +1 -1
- package/dist/http-api/HttpApiError.js +38 -12
- package/dist/http-api/HttpApiError.js.map +1 -1
- package/dist/http-api/HttpApiScalar.d.ts +2 -1
- package/dist/http-api/HttpApiScalar.d.ts.map +1 -1
- package/dist/http-api/HttpApiScalar.js +6 -3
- package/dist/http-api/HttpApiScalar.js.map +1 -1
- package/dist/http-api/HttpApiSchema.d.ts +242 -13
- package/dist/http-api/HttpApiSchema.d.ts.map +1 -1
- package/dist/http-api/HttpApiSchema.js +149 -5
- package/dist/http-api/HttpApiSchema.js.map +1 -1
- package/dist/http-api/HttpApiSwagger.d.ts +5 -0
- package/dist/http-api/HttpApiSwagger.d.ts.map +1 -1
- package/dist/http-api/HttpApiSwagger.js +14 -4
- package/dist/http-api/HttpApiSwagger.js.map +1 -1
- package/dist/http-api/HttpApiTest.d.ts +13 -2
- package/dist/http-api/HttpApiTest.d.ts.map +1 -1
- package/dist/http-api/HttpApiTest.js +33 -11
- package/dist/http-api/HttpApiTest.js.map +1 -1
- package/dist/http-api/OpenApi.d.ts +17 -3
- package/dist/http-api/OpenApi.d.ts.map +1 -1
- package/dist/http-api/OpenApi.js +81 -47
- package/dist/http-api/OpenApi.js.map +1 -1
- package/dist/http-api/internal/path.js +35 -10
- package/dist/http-api/internal/path.js.map +1 -1
- package/dist/http-api/internal/toCodecHttpProperties.d.ts +2 -0
- package/dist/http-api/internal/toCodecHttpProperties.d.ts.map +1 -0
- package/dist/http-api/internal/toCodecHttpProperties.js +38 -0
- package/dist/http-api/internal/toCodecHttpProperties.js.map +1 -0
- package/dist/index.d.ts +20 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +20 -0
- package/dist/index.js.map +1 -1
- package/dist/internal/arbitrary/runner.d.ts.map +1 -1
- package/dist/internal/arbitrary/runner.js +120 -44
- package/dist/internal/arbitrary/runner.js.map +1 -1
- package/dist/internal/core.js +3 -1
- package/dist/internal/core.js.map +1 -1
- package/dist/internal/dateTime.js +19 -7
- package/dist/internal/dateTime.js.map +1 -1
- package/dist/internal/effect.js +106 -87
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/equal.js +14 -0
- package/dist/internal/equal.js.map +1 -1
- package/dist/internal/hashMap.js +2 -2
- package/dist/internal/hashMap.js.map +1 -1
- package/dist/internal/hydration.d.ts +2 -0
- package/dist/internal/hydration.d.ts.map +1 -0
- package/dist/internal/hydration.js +15 -0
- package/dist/internal/hydration.js.map +1 -0
- package/dist/internal/inflate.d.ts +2 -0
- package/dist/internal/inflate.d.ts.map +1 -0
- package/dist/internal/inflate.js +680 -0
- package/dist/internal/inflate.js.map +1 -0
- package/dist/internal/jsonSchema.d.ts +2 -0
- package/dist/internal/jsonSchema.d.ts.map +1 -0
- package/dist/internal/jsonSchema.js +28 -0
- package/dist/internal/jsonSchema.js.map +1 -0
- package/dist/internal/matcher.js +1 -1
- package/dist/internal/matcher.js.map +1 -1
- package/dist/internal/record.js +6 -0
- package/dist/internal/record.js.map +1 -1
- package/dist/internal/request.js +20 -7
- package/dist/internal/request.js.map +1 -1
- package/dist/internal/schedule.js +17 -22
- package/dist/internal/schedule.js.map +1 -1
- package/dist/internal/schema/compilerRegistry.js +4 -1
- package/dist/internal/schema/compilerRegistry.js.map +1 -1
- package/dist/internal/schema/content.d.ts +2 -0
- package/dist/internal/schema/content.d.ts.map +1 -0
- package/dist/internal/schema/content.js +13 -0
- package/dist/internal/schema/content.js.map +1 -0
- package/dist/internal/schema/fromJsonSchemaDocument.js +253 -255
- package/dist/internal/schema/fromJsonSchemaDocument.js.map +1 -1
- package/dist/internal/schema/fromRepresentation.js +2 -1
- package/dist/internal/schema/fromRepresentation.js.map +1 -1
- package/dist/internal/schema/interpreter.js +51 -36
- package/dist/internal/schema/interpreter.js.map +1 -1
- package/dist/internal/schema/standardSchema.js +42 -35
- package/dist/internal/schema/standardSchema.js.map +1 -1
- package/dist/internal/schema/toCodeDocument.js +10 -5
- package/dist/internal/schema/toCodeDocument.js.map +1 -1
- package/dist/internal/schema/toCodec.js +99 -17
- package/dist/internal/schema/toCodec.js.map +1 -1
- package/dist/internal/schema/toFormatter.js +5 -5
- package/dist/internal/schema/toFormatter.js.map +1 -1
- package/dist/internal/schema/toJsonSchemaDocument.js +257 -170
- package/dist/internal/schema/toJsonSchemaDocument.js.map +1 -1
- package/dist/internal/schema/toRepresentation.js +107 -129
- package/dist/internal/schema/toRepresentation.js.map +1 -1
- package/dist/internal/sql.d.ts +2 -0
- package/dist/internal/sql.d.ts.map +1 -0
- package/dist/internal/sql.js +13 -0
- package/dist/internal/sql.js.map +1 -0
- package/dist/internal/trie.js +1 -3
- package/dist/internal/trie.js.map +1 -1
- package/dist/internal/uuid.js +7 -3
- package/dist/internal/uuid.js.map +1 -1
- package/dist/internal/version.js +1 -1
- package/dist/net/NetAddress.d.ts.map +1 -1
- package/dist/net/NetAddress.js +2 -8
- package/dist/net/NetAddress.js.map +1 -1
- package/dist/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/observability/OtlpExporter.js +5 -12
- package/dist/observability/OtlpExporter.js.map +1 -1
- package/dist/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/observability/OtlpMetrics.js +5 -3
- package/dist/observability/OtlpMetrics.js.map +1 -1
- package/dist/observability/OtlpProxy.d.ts +154 -0
- package/dist/observability/OtlpProxy.d.ts.map +1 -0
- package/dist/observability/OtlpProxy.js +235 -0
- package/dist/observability/OtlpProxy.js.map +1 -0
- package/dist/observability/OtlpResource.d.ts +3 -1
- package/dist/observability/OtlpResource.d.ts.map +1 -1
- package/dist/observability/OtlpResource.js +11 -4
- package/dist/observability/OtlpResource.js.map +1 -1
- package/dist/observability/OtlpSerialization.d.ts +5 -0
- package/dist/observability/OtlpSerialization.d.ts.map +1 -1
- package/dist/observability/OtlpSerialization.js +14 -3
- package/dist/observability/OtlpSerialization.js.map +1 -1
- package/dist/observability/OtlpTracer.d.ts.map +1 -1
- package/dist/observability/OtlpTracer.js +4 -0
- package/dist/observability/OtlpTracer.js.map +1 -1
- package/dist/observability/index.d.ts +5 -0
- package/dist/observability/index.d.ts.map +1 -1
- package/dist/observability/index.js +5 -0
- package/dist/observability/index.js.map +1 -1
- package/dist/observability/internal/protobuf.d.ts +0 -9
- package/dist/observability/internal/protobuf.d.ts.map +1 -1
- package/dist/observability/internal/protobuf.js +2 -10
- package/dist/observability/internal/protobuf.js.map +1 -1
- package/dist/persistence/CircuitBreaker.d.ts +897 -0
- package/dist/persistence/CircuitBreaker.d.ts.map +1 -0
- package/dist/persistence/CircuitBreaker.js +1165 -0
- package/dist/persistence/CircuitBreaker.js.map +1 -0
- package/dist/persistence/PersistedCache.d.ts.map +1 -1
- package/dist/persistence/PersistedCache.js +1 -1
- package/dist/persistence/PersistedCache.js.map +1 -1
- package/dist/persistence/PersistedQueue.d.ts +6 -2
- package/dist/persistence/PersistedQueue.d.ts.map +1 -1
- package/dist/persistence/PersistedQueue.js +162 -84
- package/dist/persistence/PersistedQueue.js.map +1 -1
- package/dist/persistence/Persistence.d.ts +28 -0
- package/dist/persistence/Persistence.d.ts.map +1 -1
- package/dist/persistence/Persistence.js +36 -8
- package/dist/persistence/Persistence.js.map +1 -1
- package/dist/persistence/RateLimiter.d.ts.map +1 -1
- package/dist/persistence/RateLimiter.js +8 -12
- package/dist/persistence/RateLimiter.js.map +1 -1
- package/dist/persistence/Redis.d.ts +78 -2
- package/dist/persistence/Redis.d.ts.map +1 -1
- package/dist/persistence/Redis.js +62 -7
- package/dist/persistence/Redis.js.map +1 -1
- package/dist/persistence/UserDirectories.d.ts +129 -0
- package/dist/persistence/UserDirectories.d.ts.map +1 -0
- package/dist/persistence/UserDirectories.js +178 -0
- package/dist/persistence/UserDirectories.js.map +1 -0
- package/dist/persistence/index.d.ts +10 -0
- package/dist/persistence/index.d.ts.map +1 -1
- package/dist/persistence/index.js +10 -0
- package/dist/persistence/index.js.map +1 -1
- package/dist/process/ChildProcess.d.ts +32 -5
- package/dist/process/ChildProcess.d.ts.map +1 -1
- package/dist/process/ChildProcess.js.map +1 -1
- package/dist/process/ChildProcessSpawner.d.ts +30 -0
- package/dist/process/ChildProcessSpawner.d.ts.map +1 -1
- package/dist/process/ChildProcessSpawner.js +5 -2
- package/dist/process/ChildProcessSpawner.js.map +1 -1
- package/dist/reactivity/AsyncResult.d.ts +1 -1
- package/dist/reactivity/AsyncResult.d.ts.map +1 -1
- package/dist/reactivity/AsyncResult.js +1 -1
- package/dist/reactivity/AsyncResult.js.map +1 -1
- package/dist/reactivity/Atom.d.ts +69 -30
- package/dist/reactivity/Atom.d.ts.map +1 -1
- package/dist/reactivity/Atom.js +40 -15
- package/dist/reactivity/Atom.js.map +1 -1
- package/dist/reactivity/AtomHttpApi.d.ts +5 -5
- package/dist/reactivity/AtomHttpApi.d.ts.map +1 -1
- package/dist/reactivity/AtomHttpApi.js +1 -1
- package/dist/reactivity/AtomHttpApi.js.map +1 -1
- package/dist/reactivity/AtomRegistry.d.ts +2 -2
- package/dist/reactivity/AtomRegistry.d.ts.map +1 -1
- package/dist/reactivity/AtomRegistry.js +44 -9
- package/dist/reactivity/AtomRegistry.js.map +1 -1
- package/dist/reactivity/AtomRpc.d.ts +3 -3
- package/dist/reactivity/AtomRpc.d.ts.map +1 -1
- package/dist/reactivity/AtomRpc.js +1 -1
- package/dist/reactivity/AtomRpc.js.map +1 -1
- package/dist/reactivity/Hydration.d.ts.map +1 -1
- package/dist/reactivity/Hydration.js +46 -12
- package/dist/reactivity/Hydration.js.map +1 -1
- package/dist/reactivity/Reactivity.d.ts +71 -7
- package/dist/reactivity/Reactivity.d.ts.map +1 -1
- package/dist/reactivity/Reactivity.js +21 -12
- package/dist/reactivity/Reactivity.js.map +1 -1
- package/dist/rpc/Rpc.d.ts +18 -0
- package/dist/rpc/Rpc.d.ts.map +1 -1
- package/dist/rpc/Rpc.js +20 -0
- package/dist/rpc/Rpc.js.map +1 -1
- package/dist/rpc/RpcClient.d.ts +26 -2
- package/dist/rpc/RpcClient.d.ts.map +1 -1
- package/dist/rpc/RpcClient.js +198 -61
- package/dist/rpc/RpcClient.js.map +1 -1
- package/dist/rpc/RpcSerialization.d.ts +29 -0
- package/dist/rpc/RpcSerialization.d.ts.map +1 -1
- package/dist/rpc/RpcSerialization.js +41 -13
- package/dist/rpc/RpcSerialization.js.map +1 -1
- package/dist/rpc/RpcServer.d.ts.map +1 -1
- package/dist/rpc/RpcServer.js +20 -19
- package/dist/rpc/RpcServer.js.map +1 -1
- package/dist/rpc/RpcTest.d.ts +1 -0
- package/dist/rpc/RpcTest.d.ts.map +1 -1
- package/dist/rpc/RpcTest.js +1 -0
- package/dist/rpc/RpcTest.js.map +1 -1
- package/dist/schema/Model.d.ts +1 -1
- package/dist/schema/VariantSchema.d.ts +22 -3
- package/dist/schema/VariantSchema.d.ts.map +1 -1
- package/dist/schema/VariantSchema.js +32 -18
- package/dist/schema/VariantSchema.js.map +1 -1
- package/dist/socket/Socket.d.ts +23 -1
- package/dist/socket/Socket.d.ts.map +1 -1
- package/dist/socket/Socket.js +36 -3
- package/dist/socket/Socket.js.map +1 -1
- package/dist/sql/Migrator.d.ts +2 -1
- package/dist/sql/Migrator.d.ts.map +1 -1
- package/dist/sql/Migrator.js +21 -6
- package/dist/sql/Migrator.js.map +1 -1
- package/dist/sql/SqlClient.d.ts +148 -5
- package/dist/sql/SqlClient.d.ts.map +1 -1
- package/dist/sql/SqlClient.js +155 -27
- package/dist/sql/SqlClient.js.map +1 -1
- package/dist/sql/SqlResolver.d.ts +13 -0
- package/dist/sql/SqlResolver.d.ts.map +1 -1
- package/dist/sql/SqlResolver.js +27 -4
- package/dist/sql/SqlResolver.js.map +1 -1
- package/dist/sql/Statement.d.ts +10 -1
- package/dist/sql/Statement.d.ts.map +1 -1
- package/dist/sql/Statement.js +45 -7
- package/dist/sql/Statement.js.map +1 -1
- package/dist/testing/TestClock.d.ts.map +1 -1
- package/dist/testing/TestClock.js +4 -2
- package/dist/testing/TestClock.js.map +1 -1
- package/dist/testing/TestSchema.d.ts +7 -1
- package/dist/testing/TestSchema.d.ts.map +1 -1
- package/dist/testing/TestSchema.js +9 -3
- package/dist/testing/TestSchema.js.map +1 -1
- package/dist/workflow/DurableDeferred.d.ts.map +1 -1
- package/dist/workflow/DurableDeferred.js +21 -2
- package/dist/workflow/DurableDeferred.js.map +1 -1
- package/dist/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/workflow/WorkflowEngine.js +18 -4
- package/dist/workflow/WorkflowEngine.js.map +1 -1
- package/package.json +13 -3
- package/src/Arbitrary.ts +10 -2
- package/src/Array.ts +128 -55
- package/src/Bytes.ts +111 -0
- package/src/Channel.ts +308 -452
- package/src/ChannelSchema.ts +1 -49
- package/src/Chunk.ts +55 -61
- package/src/Config.ts +12 -86
- package/src/ConfigProvider.ts +2 -1
- package/src/Cron.ts +6 -3
- package/src/Data.ts +60 -265
- package/src/Duration.ts +66 -16
- package/src/Effect.ts +503 -168
- package/src/Equal.ts +8 -1
- package/src/Equivalence.ts +7 -4
- package/src/Exit.ts +27 -12
- package/src/FiberHandle.ts +10 -9
- package/src/FiberMap.ts +13 -66
- package/src/FileSystem.ts +10 -0
- package/src/Formatter.ts +28 -13
- package/src/Graph.ts +171 -1263
- package/src/Hash.ts +4 -1
- package/src/HashSet.ts +0 -60
- package/src/Iterable.ts +15 -14
- package/src/JsonPatch.ts +4 -0
- package/src/JsonSchema.ts +40 -43
- package/src/Layer.ts +2 -2
- package/src/ManagedRuntime.ts +72 -6
- package/src/Metric.ts +252 -510
- package/src/MutableHashMap.ts +4 -473
- package/src/MutableList.ts +7 -5
- package/src/MutableRef.ts +8 -1
- package/src/Number.ts +2 -2
- package/src/Optic.ts +17 -332
- package/src/PartitionedSemaphore.ts +24 -13
- package/src/Path.ts +9 -1
- package/src/Pool.ts +109 -37
- package/src/PubSub.ts +17 -13
- package/src/Queue.ts +5 -37
- package/src/Random.ts +1 -1
- package/src/RcMap.ts +14 -8
- package/src/Record.ts +51 -0
- package/src/Ref.ts +15 -104
- package/src/References.ts +5 -4
- package/src/RequestResolver.ts +46 -87
- package/src/Resource.ts +1 -1
- package/src/Runtime.ts +19 -18
- package/src/Schedule.ts +3 -95
- package/src/Schema.ts +639 -381
- package/src/SchemaAST.ts +40 -29
- package/src/SchemaGetter.ts +22 -5
- package/src/SchemaIssue.ts +44 -53
- package/src/SchemaParser.ts +51 -18
- package/src/SchemaRepresentation.ts +95 -35
- package/src/SchemaTransformation.ts +10 -3
- package/src/Scope.ts +12 -2
- package/src/ScopedCache.ts +17 -142
- package/src/SemVer.ts +1528 -0
- package/src/SemVerRange.ts +883 -0
- package/src/Semaphore.ts +67 -40
- package/src/Sink.ts +21 -4
- package/src/Stream.ts +367 -1027
- package/src/String.ts +11 -8
- package/src/TextDiff.ts +766 -0
- package/src/Tracer.ts +15 -1
- package/src/TxHashMap.ts +1 -103
- package/src/TxHashSet.ts +48 -753
- package/src/ai/AiError.ts +66 -4
- package/src/ai/Chat.ts +10 -5
- package/src/ai/Decision.ts +49 -1
- package/src/ai/DecisionModel.ts +264 -108
- package/src/ai/EmbeddingModel.ts +25 -13
- package/src/ai/LanguageModel.ts +9 -0
- package/src/ai/McpClient.ts +1211 -0
- package/src/ai/McpClientError.ts +329 -0
- package/src/ai/McpProtocol.ts +2 -2
- package/src/ai/McpSchema.ts +153 -35
- package/src/ai/McpServer.ts +231 -233
- package/src/ai/Prompt.ts +114 -35
- package/src/ai/Response.ts +220 -65
- package/src/ai/Tool.ts +50 -6
- package/src/ai/Toolkit.ts +82 -11
- package/src/ai/index.ts +12 -0
- package/src/ai/internal/mcpCore.ts +13 -14
- package/src/ai/internal/mcpProtocol/v2024_11_05.ts +1 -1
- package/src/ai/internal/mcpProtocol/v2025_03_26.ts +1 -1
- package/src/ai/internal/mcpProtocol/v2025_06_18.ts +3 -3
- package/src/ai/internal/mcpProtocol/v2025_11_25.ts +3 -3
- package/src/ai/internal/mcpProtocol/v2026_07_28.ts +12 -14
- package/src/ai/internal/mcpProtocol.ts +22 -2
- package/src/ai/internal/mcpRuntime.ts +3 -4
- package/src/ai/internal/mcpSchema/v2024_11_05.ts +20 -13
- package/src/ai/internal/mcpSchema/v2025_03_26.ts +4 -2
- package/src/ai/internal/mcpSchema/v2025_06_18.ts +7 -7
- package/src/ai/internal/mcpSchema/v2025_11_25.ts +8 -8
- package/src/ai/internal/mcpSchema/v2026_07_28.ts +44 -42
- package/src/cli/Argument.ts +15 -0
- package/src/cli/CliError.ts +136 -4
- package/src/cli/CliOutput.ts +183 -6
- package/src/cli/Command.ts +367 -48
- package/src/cli/Completions.ts +56 -0
- package/src/cli/Flag.ts +132 -0
- package/src/cli/GlobalFlag.ts +5 -6
- package/src/cli/Param.ts +151 -6
- package/src/cli/TerminalCapabilities.ts +159 -0
- package/src/cli/index.ts +6 -0
- package/src/cli/internal/command.ts +8 -3
- package/src/cli/internal/completions/bash.ts +83 -32
- package/src/cli/internal/completions/descriptor.ts +11 -1
- package/src/cli/internal/completions/fish.ts +10 -8
- package/src/cli/internal/completions/powershell.ts +23 -14
- package/src/cli/internal/completions/zsh.ts +8 -5
- package/src/cli/internal/formatter.ts +18 -0
- package/src/cli/internal/lexer.ts +12 -5
- package/src/cli/internal/parser.ts +31 -11
- package/src/cluster/ClusterCron.ts +94 -35
- package/src/cluster/ClusterMetrics.ts +149 -7
- package/src/cluster/ClusterWorkflowEngine.ts +130 -57
- package/src/cluster/Entity.ts +4 -0
- package/src/cluster/MessageStorage.ts +26 -14
- package/src/cluster/Runners.ts +76 -25
- package/src/cluster/Sharding.ts +200 -58
- package/src/cluster/ShardingConfig.ts +20 -0
- package/src/cluster/Snowflake.ts +3 -7
- package/src/cluster/SqlMessageStorage.ts +58 -55
- package/src/cluster/SqlRunnerStorage.ts +120 -51
- package/src/cluster/internal/entityManager.ts +155 -32
- package/src/devtools/DevTools.ts +3 -2
- package/src/devtools/DevToolsClient.ts +29 -10
- package/src/encoding/Base64.ts +38 -0
- package/src/encoding/Base64Url.ts +31 -0
- package/src/encoding/Ini.ts +3 -0
- package/src/encoding/JsonArray.ts +849 -0
- package/src/encoding/Ndjson.ts +211 -20
- package/src/encoding/SchemaBinary.ts +14 -48
- package/src/encoding/Sse.ts +4 -3
- package/src/encoding/Tar.ts +1417 -0
- package/src/encoding/Toml.ts +36 -19
- package/src/encoding/Xml.ts +2037 -0
- package/src/encoding/Yaml.ts +108 -36
- package/src/encoding/Zip.ts +1558 -0
- package/src/encoding/index.ts +24 -0
- package/src/eventlog/EventJournal.ts +611 -227
- package/src/eventlog/EventLog.ts +496 -196
- package/src/eventlog/EventLogEncryption.ts +128 -43
- package/src/eventlog/EventLogMessage.ts +62 -11
- package/src/eventlog/EventLogRemote.ts +77 -21
- package/src/eventlog/EventLogServer.ts +162 -20
- package/src/eventlog/EventLogServerEncrypted.ts +121 -80
- package/src/eventlog/EventLogServerUnencrypted.ts +180 -77
- package/src/eventlog/EventRow.ts +706 -0
- package/src/eventlog/SqlEventJournal.ts +496 -193
- package/src/eventlog/SqlEventLogServerEncrypted.ts +212 -83
- package/src/eventlog/SqlEventLogServerUnencrypted.ts +141 -62
- package/src/eventlog/index.ts +6 -0
- package/src/eventlog/internal/conflicts.ts +119 -0
- package/src/graphql/GraphQLClientError.ts +5 -12
- package/src/graphql/GraphQLProtocol.ts +12 -9
- package/src/graphql/GraphQLResolver.ts +90 -239
- package/src/http/Cookies.ts +10 -11
- package/src/http/FetchHttpClient.ts +56 -6
- package/src/http/FindMyWay/internal/router.ts +11 -0
- package/src/http/Headers.ts +337 -154
- package/src/http/HttpClient.ts +673 -142
- package/src/http/HttpClientError.ts +35 -1
- package/src/http/HttpClientRequest.ts +151 -5
- package/src/http/HttpClientResponse.ts +71 -0
- package/src/http/HttpEffect.ts +25 -33
- package/src/http/HttpIncomingMessage.ts +3 -23
- package/src/http/HttpMiddleware.ts +194 -40
- package/src/http/HttpRouter.ts +10 -3
- package/src/http/HttpServerError.ts +8 -5
- package/src/http/HttpServerRequest.ts +172 -27
- package/src/http/HttpServerResponse.ts +49 -23
- package/src/http/HttpStaticServer.ts +71 -26
- package/src/http/MultipartParser/internal/contentType.ts +109 -8
- package/src/http/MultipartParser/internal/headers.ts +4 -16
- package/src/http/MultipartParser/internal/multipart.ts +10 -32
- package/src/http/Url.ts +6 -1
- package/src/http/UrlParams.ts +6 -1
- package/src/http/internal/compression.ts +4 -5
- package/src/http/internal/decompression.ts +32 -17
- package/src/http/internal/httpBody.ts +10 -2
- package/src/http/internal/lazyStream.ts +25 -0
- package/src/http/internal/requestState.ts +33 -0
- package/src/http/internal/urlParams.ts +29 -0
- package/src/http/internal/webResponse.ts +20 -0
- package/src/http-api/HttpApi.ts +4 -7
- package/src/http-api/HttpApiBuilder.ts +190 -32
- package/src/http-api/HttpApiClient.ts +364 -90
- package/src/http-api/HttpApiEndpoint.ts +248 -46
- package/src/http-api/HttpApiError.ts +55 -0
- package/src/http-api/HttpApiScalar.ts +4 -3
- package/src/http-api/HttpApiSchema.ts +373 -18
- package/src/http-api/HttpApiSwagger.ts +11 -4
- package/src/http-api/HttpApiTest.ts +36 -11
- package/src/http-api/OpenApi.ts +103 -58
- package/src/http-api/internal/path.ts +40 -12
- package/src/http-api/internal/toCodecHttpProperties.ts +56 -0
- package/src/index.ts +24 -0
- package/src/internal/arbitrary/runner.ts +133 -36
- package/src/internal/core.ts +3 -1
- package/src/internal/dateTime.ts +20 -7
- package/src/internal/effect.ts +144 -100
- package/src/internal/equal.ts +17 -0
- package/src/internal/hashMap.ts +2 -2
- package/src/internal/hydration.ts +15 -0
- package/src/internal/inflate.ts +710 -0
- package/src/internal/jsonSchema.ts +27 -0
- package/src/internal/matcher.ts +1 -1
- package/src/internal/record.ts +6 -0
- package/src/internal/request.ts +21 -6
- package/src/internal/schedule.ts +20 -39
- package/src/internal/schema/compilerRegistry.ts +6 -1
- package/src/internal/schema/content.ts +18 -0
- package/src/internal/schema/fromJsonSchemaDocument.ts +458 -351
- package/src/internal/schema/fromRepresentation.ts +2 -1
- package/src/internal/schema/interpreter.ts +58 -45
- package/src/internal/schema/standardSchema.ts +34 -32
- package/src/internal/schema/toCodeDocument.ts +12 -7
- package/src/internal/schema/toCodec.ts +134 -15
- package/src/internal/schema/toFormatter.ts +6 -6
- package/src/internal/schema/toJsonSchemaDocument.ts +246 -194
- package/src/internal/schema/toRepresentation.ts +122 -140
- package/src/internal/sql.ts +14 -0
- package/src/internal/trie.ts +1 -3
- package/src/internal/uuid.ts +15 -10
- package/src/internal/version.ts +1 -1
- package/src/net/NetAddress.ts +2 -9
- package/src/observability/OtlpExporter.ts +5 -12
- package/src/observability/OtlpMetrics.ts +5 -3
- package/src/observability/OtlpProxy.ts +314 -0
- package/src/observability/OtlpResource.ts +16 -6
- package/src/observability/OtlpSerialization.ts +17 -3
- package/src/observability/OtlpTracer.ts +4 -0
- package/src/observability/index.ts +6 -0
- package/src/observability/internal/protobuf.ts +2 -10
- package/src/persistence/CircuitBreaker.ts +1678 -0
- package/src/persistence/PersistedCache.ts +3 -1
- package/src/persistence/PersistedQueue.ts +223 -153
- package/src/persistence/Persistence.ts +64 -30
- package/src/persistence/RateLimiter.ts +18 -21
- package/src/persistence/Redis.ts +129 -8
- package/src/persistence/UserDirectories.ts +273 -0
- package/src/persistence/index.ts +12 -0
- package/src/process/ChildProcess.ts +32 -5
- package/src/process/ChildProcessSpawner.ts +41 -2
- package/src/reactivity/AsyncResult.ts +5 -39
- package/src/reactivity/Atom.ts +134 -166
- package/src/reactivity/AtomHttpApi.ts +10 -16
- package/src/reactivity/AtomRegistry.ts +50 -29
- package/src/reactivity/AtomRpc.ts +6 -22
- package/src/reactivity/Hydration.ts +53 -12
- package/src/reactivity/Reactivity.ts +97 -39
- package/src/rpc/Rpc.ts +21 -0
- package/src/rpc/RpcClient.ts +283 -104
- package/src/rpc/RpcSerialization.ts +53 -14
- package/src/rpc/RpcServer.ts +27 -21
- package/src/rpc/RpcTest.ts +3 -0
- package/src/schema/VariantSchema.ts +86 -22
- package/src/socket/Socket.ts +45 -20
- package/src/sql/Migrator.ts +26 -11
- package/src/sql/SqlClient.ts +273 -29
- package/src/sql/SqlResolver.ts +32 -9
- package/src/sql/Statement.ts +65 -10
- package/src/testing/TestClock.ts +4 -1
- package/src/testing/TestSchema.ts +9 -3
- package/src/workflow/DurableDeferred.ts +23 -6
- package/src/workflow/WorkflowEngine.ts +34 -10
- package/dist/http/internal/preResponseHandler.d.ts +0 -2
- package/dist/http/internal/preResponseHandler.d.ts.map +0 -1
- package/dist/http/internal/preResponseHandler.js +0 -14
- package/dist/http/internal/preResponseHandler.js.map +0 -1
- package/src/http/internal/preResponseHandler.ts +0 -19
package/src/SchemaAST.ts
CHANGED
|
@@ -480,7 +480,7 @@ export type Encoding = readonly [Link, ...Array<Link>]
|
|
|
480
480
|
*
|
|
481
481
|
* **Details**
|
|
482
482
|
*
|
|
483
|
-
* Pass to `Schema.
|
|
483
|
+
* Pass to `Schema.decodeUnknownEffect`, `Schema.encodeEffect`, and related APIs to customize
|
|
484
484
|
* error reporting, excess property handling, check execution, and product
|
|
485
485
|
* concurrency. Options apply throughout the parse; schema annotations do not
|
|
486
486
|
* override them.
|
|
@@ -814,7 +814,13 @@ export const Declaration: new(
|
|
|
814
814
|
let run: ReturnType<typeof this.run>
|
|
815
815
|
return (input, options) => {
|
|
816
816
|
if (input === InternalParser.missing) return InternalParser.missingExit
|
|
817
|
-
|
|
817
|
+
// Keep this declaration's initialization errors outside its callback catch.
|
|
818
|
+
run ??= this.run(this.typeParameters)
|
|
819
|
+
try {
|
|
820
|
+
return run(input, this, options)
|
|
821
|
+
} catch (error) {
|
|
822
|
+
return Effect.die(error)
|
|
823
|
+
}
|
|
818
824
|
}
|
|
819
825
|
}
|
|
820
826
|
private _rebuild(
|
|
@@ -2435,7 +2441,7 @@ export const Arrays: new(
|
|
|
2435
2441
|
input,
|
|
2436
2442
|
len,
|
|
2437
2443
|
tailThreshold: Math.max(elementLen, len - tailLen),
|
|
2438
|
-
output:
|
|
2444
|
+
output: [],
|
|
2439
2445
|
issues: undefined,
|
|
2440
2446
|
options
|
|
2441
2447
|
}
|
|
@@ -2599,9 +2605,12 @@ const wrapPropertyKeyIssue = (
|
|
|
2599
2605
|
|
|
2600
2606
|
/**
|
|
2601
2607
|
* floating point or integer, with optional exponent
|
|
2608
|
+
*
|
|
2609
|
+
* The mantissa alternation keeps rejection linear: `\d*\.?\d+` retries
|
|
2610
|
+
* every split of a long digit run.
|
|
2602
2611
|
* @internal
|
|
2603
2612
|
*/
|
|
2604
|
-
export const FINITE_PATTERN = "[+-]
|
|
2613
|
+
export const FINITE_PATTERN = "[+-]?(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:[Ee][+-]?\\d+)?"
|
|
2605
2614
|
|
|
2606
2615
|
/**
|
|
2607
2616
|
* Returns the object keys that match the index signature parameter schema.
|
|
@@ -2730,8 +2739,10 @@ function isIndexSignatureParameter(ast: AST): ast is IndexSignatureParameter {
|
|
|
2730
2739
|
*
|
|
2731
2740
|
* **Gotchas**
|
|
2732
2741
|
*
|
|
2733
|
-
* Using `Schema.optionalKey` on the value type is not
|
|
2734
|
-
* signatures (throws at construction)
|
|
2742
|
+
* Using `Schema.optionalKey` or `Schema.optional` on the value type is not
|
|
2743
|
+
* allowed for index signatures (throws at construction). Index signatures
|
|
2744
|
+
* already allow keys to be absent; use `Schema.UndefinedOr` to allow
|
|
2745
|
+
* `undefined` values.
|
|
2735
2746
|
*
|
|
2736
2747
|
* @see {@link Objects}
|
|
2737
2748
|
* @see {@link PropertySignature}
|
|
@@ -2764,8 +2775,10 @@ export const IndexSignature: new(parameter: AST, type: AST) => IndexSignature =
|
|
|
2764
2775
|
}
|
|
2765
2776
|
this.parameter = parameter
|
|
2766
2777
|
this.type = type
|
|
2767
|
-
if (isOptional(type) &&
|
|
2768
|
-
throw new Error(
|
|
2778
|
+
if (isOptional(type) || (type.encoding !== undefined && isOptional(toEncoded(type)))) {
|
|
2779
|
+
throw new Error(
|
|
2780
|
+
"Cannot use `Schema.optionalKey` or `Schema.optional` with index signatures. Index signatures already allow keys to be absent; use `Schema.UndefinedOr` to allow `undefined` values."
|
|
2781
|
+
)
|
|
2769
2782
|
}
|
|
2770
2783
|
}
|
|
2771
2784
|
}
|
|
@@ -3101,12 +3114,14 @@ export const Objects: new(
|
|
|
3101
3114
|
// Resumes at the property whose parser suspended, without replaying the
|
|
3102
3115
|
// properties already parsed.
|
|
3103
3116
|
const resume = (
|
|
3104
|
-
|
|
3117
|
+
snapshot: ObjectParserState,
|
|
3105
3118
|
index: number,
|
|
3106
3119
|
pending: Effect.Effect<unknown, SchemaIssue.Issue, any>
|
|
3107
3120
|
): Effect.Effect<unknown, SchemaIssue.Issue, any> => {
|
|
3108
3121
|
const property = properties![index]
|
|
3109
3122
|
return Effect.flatMap(Effect.exit(pending), (exit) => {
|
|
3123
|
+
// Copy the parsed prefix per execution so reruns cannot overwrite earlier results.
|
|
3124
|
+
const state: ObjectParserState = { ...snapshot, out: { ...snapshot.out } }
|
|
3110
3125
|
const terminal = stepProperty(state, property, exit)
|
|
3111
3126
|
if (terminal) return terminal
|
|
3112
3127
|
const done = () => InternalParser.succeed(state.out)
|
|
@@ -4278,7 +4293,7 @@ const numberToJson = new Link(
|
|
|
4278
4293
|
*
|
|
4279
4294
|
* **Details**
|
|
4280
4295
|
*
|
|
4281
|
-
* The filter can be used with `Schema.
|
|
4296
|
+
* The filter can be used with `Schema.check` or attached directly to a
|
|
4282
4297
|
* `String` AST node through checks. The regular expression is cloned and its
|
|
4283
4298
|
* `lastIndex` is reset before each test, so global and sticky expressions are
|
|
4284
4299
|
* deterministic and the provided regular expression is not mutated. The
|
|
@@ -4587,16 +4602,24 @@ function parseParameter(ast: AST): {
|
|
|
4587
4602
|
} {
|
|
4588
4603
|
const literals: Array<PropertyKey> = []
|
|
4589
4604
|
const parameters: Array<AST> = []
|
|
4605
|
+
function addLiteral(literal: PropertyKey) {
|
|
4606
|
+
if (!literals.includes(literal)) {
|
|
4607
|
+
literals.push(literal)
|
|
4608
|
+
}
|
|
4609
|
+
}
|
|
4590
4610
|
function go(ast: AST) {
|
|
4591
4611
|
switch (ast._tag) {
|
|
4592
4612
|
case "Literal":
|
|
4593
|
-
if (Predicate.isPropertyKey(ast.literal)
|
|
4594
|
-
|
|
4613
|
+
if (Predicate.isPropertyKey(ast.literal)) {
|
|
4614
|
+
addLiteral(ast.literal)
|
|
4595
4615
|
}
|
|
4596
4616
|
return
|
|
4597
4617
|
case "UniqueSymbol":
|
|
4598
|
-
|
|
4599
|
-
|
|
4618
|
+
addLiteral(ast.symbol)
|
|
4619
|
+
return
|
|
4620
|
+
case "Enum":
|
|
4621
|
+
for (const [, value] of ast.enums) {
|
|
4622
|
+
addLiteral(value)
|
|
4600
4623
|
}
|
|
4601
4624
|
return
|
|
4602
4625
|
case "Never":
|
|
@@ -4777,7 +4800,7 @@ function flipEncoding(ast: AST, encoding: Encoding): AST {
|
|
|
4777
4800
|
* **Details**
|
|
4778
4801
|
*
|
|
4779
4802
|
* After flipping, what was decoding becomes encoding and vice versa. This is
|
|
4780
|
-
* the core operation behind `Schema.
|
|
4803
|
+
* the core operation behind `Schema.encodeEffect` — encoding a value is decoding
|
|
4781
4804
|
* with a flipped SchemaAST.
|
|
4782
4805
|
*
|
|
4783
4806
|
* - Memoized: same input reference → same output reference.
|
|
@@ -4801,18 +4824,6 @@ export const flip = memoize((ast: AST): AST => {
|
|
|
4801
4824
|
return "flip" in ast ? ast.flip(flip) : "recur" in ast ? ast.recur(flip) : ast
|
|
4802
4825
|
})
|
|
4803
4826
|
|
|
4804
|
-
/** @internal */
|
|
4805
|
-
export function containsUndefined(ast: AST): boolean {
|
|
4806
|
-
switch (ast._tag) {
|
|
4807
|
-
case "Undefined":
|
|
4808
|
-
return true
|
|
4809
|
-
case "Union":
|
|
4810
|
-
return ast.types.some(containsUndefined)
|
|
4811
|
-
default:
|
|
4812
|
-
return false
|
|
4813
|
-
}
|
|
4814
|
-
}
|
|
4815
|
-
|
|
4816
4827
|
function fromConst<const T>(
|
|
4817
4828
|
ast: AST,
|
|
4818
4829
|
value: T
|
|
@@ -5110,7 +5121,7 @@ export function getConstructorDescriptor(ast: AST): ConstructorDescriptor | unde
|
|
|
5110
5121
|
* **Details**
|
|
5111
5122
|
*
|
|
5112
5123
|
* If the node has {@link Checks}, returns annotations from the last check
|
|
5113
|
-
* (which is where user-supplied annotations end up after `.pipe(Schema.
|
|
5124
|
+
* (which is where user-supplied annotations end up after `.pipe(Schema.annotate(...))`).
|
|
5114
5125
|
* Otherwise returns the node's `annotations` directly.
|
|
5115
5126
|
*
|
|
5116
5127
|
* **Example** (Reading annotations)
|
|
@@ -5153,7 +5164,7 @@ export const resolveAt: <A>(key: string) => (ast: AST) => A | undefined = Intern
|
|
|
5153
5164
|
*
|
|
5154
5165
|
* **Details**
|
|
5155
5166
|
*
|
|
5156
|
-
* The identifier is typically set by `Schema.
|
|
5167
|
+
* The identifier is typically set by `Schema.annotate({ identifier: "..." })`
|
|
5157
5168
|
* and is used for error messages and schema identification.
|
|
5158
5169
|
*
|
|
5159
5170
|
* @see {@link resolve}
|
package/src/SchemaGetter.ts
CHANGED
|
@@ -1159,7 +1159,8 @@ export function Boolean<E>(): Getter<boolean, E> {
|
|
|
1159
1159
|
* **Details**
|
|
1160
1160
|
*
|
|
1161
1161
|
* - Delegates to `globalThis.BigInt`.
|
|
1162
|
-
* -
|
|
1162
|
+
* - Fails with `SchemaIssue.InvalidValue` if the input cannot be converted
|
|
1163
|
+
* (e.g. a non-numeric string or a non-integer number).
|
|
1163
1164
|
*
|
|
1164
1165
|
* **Example** (Coercing to a bigint)
|
|
1165
1166
|
*
|
|
@@ -1175,7 +1176,19 @@ export function Boolean<E>(): Getter<boolean, E> {
|
|
|
1175
1176
|
* @since 4.0.0
|
|
1176
1177
|
*/
|
|
1177
1178
|
export function BigInt<E extends string | number | bigint | boolean>(): Getter<bigint, E> {
|
|
1178
|
-
return
|
|
1179
|
+
return transformEffect((input, options) => {
|
|
1180
|
+
try {
|
|
1181
|
+
return Effect.succeed(globalThis.BigInt(input))
|
|
1182
|
+
} catch {
|
|
1183
|
+
return Effect.fail(
|
|
1184
|
+
new SchemaIssue.InvalidValue(
|
|
1185
|
+
{ expected: "a value that can be converted to a bigint" },
|
|
1186
|
+
input,
|
|
1187
|
+
options
|
|
1188
|
+
)
|
|
1189
|
+
)
|
|
1190
|
+
}
|
|
1191
|
+
})
|
|
1179
1192
|
}
|
|
1180
1193
|
|
|
1181
1194
|
/**
|
|
@@ -1677,7 +1690,8 @@ export function encodeBase64<E extends Uint8Array | string>(): Getter<string, E>
|
|
|
1677
1690
|
*
|
|
1678
1691
|
* **Details**
|
|
1679
1692
|
*
|
|
1680
|
-
* The getter is pure and never fails.
|
|
1693
|
+
* The getter is pure and never fails. The output is unpadded unless
|
|
1694
|
+
* `padding` is `true`.
|
|
1681
1695
|
*
|
|
1682
1696
|
* **Example** (Encoding to Base64Url)
|
|
1683
1697
|
*
|
|
@@ -1697,8 +1711,11 @@ export function encodeBase64<E extends Uint8Array | string>(): Getter<string, E>
|
|
|
1697
1711
|
* @category encoding
|
|
1698
1712
|
* @since 4.0.0
|
|
1699
1713
|
*/
|
|
1700
|
-
export function encodeBase64Url<E extends Uint8Array | string>(
|
|
1701
|
-
|
|
1714
|
+
export function encodeBase64Url<E extends Uint8Array | string>(options?: {
|
|
1715
|
+
/** Keep the `=` padding. Defaults to `false`. */
|
|
1716
|
+
readonly padding?: boolean | undefined
|
|
1717
|
+
}): Getter<string, E> {
|
|
1718
|
+
return transform(options?.padding ? Base64Url.encodePadded : Base64Url.encode)
|
|
1702
1719
|
}
|
|
1703
1720
|
|
|
1704
1721
|
/**
|
package/src/SchemaIssue.ts
CHANGED
|
@@ -720,8 +720,8 @@ export const InvalidType: new(
|
|
|
720
720
|
*
|
|
721
721
|
* **When to use**
|
|
722
722
|
*
|
|
723
|
-
* Use when you need to detect constraint violations from `Schema.
|
|
724
|
-
* `Schema.
|
|
723
|
+
* Use when you need to detect constraint violations from `Schema.check` with
|
|
724
|
+
* `Schema.isMinLength`, `Schema.isGreaterThan`, or similar checks.
|
|
725
725
|
*
|
|
726
726
|
* **Details**
|
|
727
727
|
*
|
|
@@ -1242,8 +1242,8 @@ export type CheckHook = (issue: Filter) => string | undefined
|
|
|
1242
1242
|
*
|
|
1243
1243
|
* **Details**
|
|
1244
1244
|
*
|
|
1245
|
-
* - Looks for a `message` annotation on the
|
|
1246
|
-
*
|
|
1245
|
+
* - Looks for a `message` annotation on the filter first, then on the inner
|
|
1246
|
+
* issue.
|
|
1247
1247
|
* - Returns `undefined` when no annotation is found, causing the formatter to
|
|
1248
1248
|
* fall back to `"Expected <filter>"` or, when the filter reports input,
|
|
1249
1249
|
* `"Expected <filter>, got <input>"`.
|
|
@@ -1255,7 +1255,7 @@ export type CheckHook = (issue: Filter) => string | undefined
|
|
|
1255
1255
|
* @category formatting
|
|
1256
1256
|
* @since 4.0.0
|
|
1257
1257
|
*/
|
|
1258
|
-
export const defaultCheckHook: CheckHook = (issue): string | undefined => findMessage(issue
|
|
1258
|
+
export const defaultCheckHook: CheckHook = (issue): string | undefined => findMessage(issue) ?? findMessage(issue.issue)
|
|
1259
1259
|
|
|
1260
1260
|
/**
|
|
1261
1261
|
* Creates a {@link Formatter} that produces a `StandardSchemaV1.FailureResult`.
|
|
@@ -1329,46 +1329,48 @@ function getExpectedMessage(expected: string, issue: Issue): string {
|
|
|
1329
1329
|
return input === undefined ? `Expected ${expected}` : `Expected ${expected}, got ${input}`
|
|
1330
1330
|
}
|
|
1331
1331
|
|
|
1332
|
+
function getFilterMessage(issue: Filter, checkHook: CheckHook): string | undefined {
|
|
1333
|
+
const message = checkHook(issue)
|
|
1334
|
+
if (message !== undefined || issue.issue._tag !== "InvalidValue") return message
|
|
1335
|
+
const expected = findExpected(issue.issue)
|
|
1336
|
+
return expected === undefined
|
|
1337
|
+
? getExpectedMessage(formatCheck(issue.filter), issue)
|
|
1338
|
+
: getExpectedMessage(expected, issue.issue)
|
|
1339
|
+
}
|
|
1340
|
+
|
|
1332
1341
|
function toDefaultIssues(
|
|
1333
1342
|
issue: Issue,
|
|
1334
1343
|
path: ReadonlyArray<PropertyKey>,
|
|
1335
1344
|
leafHook: LeafHook,
|
|
1336
|
-
checkHook: CheckHook
|
|
1345
|
+
checkHook: CheckHook,
|
|
1346
|
+
messageOverride?: string
|
|
1337
1347
|
): Array<DefaultIssue> {
|
|
1338
1348
|
switch (issue._tag) {
|
|
1339
|
-
case "Filter":
|
|
1340
|
-
|
|
1341
|
-
|
|
1342
|
-
return [{ path, message }]
|
|
1343
|
-
}
|
|
1344
|
-
if (issue.issue._tag !== "InvalidValue") {
|
|
1345
|
-
return toDefaultIssues(issue.issue, path, leafHook, checkHook)
|
|
1346
|
-
}
|
|
1347
|
-
const expected = findExpected(issue.issue)
|
|
1348
|
-
return [{
|
|
1349
|
+
case "Filter":
|
|
1350
|
+
return toDefaultIssues(
|
|
1351
|
+
issue.issue,
|
|
1349
1352
|
path,
|
|
1350
|
-
|
|
1351
|
-
|
|
1352
|
-
|
|
1353
|
-
|
|
1354
|
-
}
|
|
1353
|
+
leafHook,
|
|
1354
|
+
checkHook,
|
|
1355
|
+
messageOverride ?? getFilterMessage(issue, checkHook)
|
|
1356
|
+
)
|
|
1355
1357
|
case "Encoding":
|
|
1356
|
-
return toDefaultIssues(issue.issue, path, leafHook, checkHook)
|
|
1358
|
+
return toDefaultIssues(issue.issue, path, leafHook, checkHook, messageOverride)
|
|
1357
1359
|
case "Pointer":
|
|
1358
|
-
return toDefaultIssues(issue.issue, [...path, ...issue.path], leafHook, checkHook)
|
|
1360
|
+
return toDefaultIssues(issue.issue, [...path, ...issue.path], leafHook, checkHook, messageOverride)
|
|
1359
1361
|
case "Composite":
|
|
1360
|
-
return issue.issues.flatMap((issue) => toDefaultIssues(issue, path, leafHook, checkHook))
|
|
1361
1362
|
case "AnyOf": {
|
|
1362
|
-
if (issue.issues.length
|
|
1363
|
-
return
|
|
1364
|
-
path,
|
|
1365
|
-
message: findMessage(issue) ?? getExpectedMessage(InternalAnnotations.getExpected(issue.ast), issue)
|
|
1366
|
-
}]
|
|
1363
|
+
if (issue._tag === "Composite" || issue.issues.length > 0) {
|
|
1364
|
+
return issue.issues.flatMap((issue) => toDefaultIssues(issue, path, leafHook, checkHook, messageOverride))
|
|
1367
1365
|
}
|
|
1368
|
-
return
|
|
1366
|
+
return [{
|
|
1367
|
+
path,
|
|
1368
|
+
message: messageOverride ?? findMessage(issue) ??
|
|
1369
|
+
getExpectedMessage(InternalAnnotations.getExpected(issue.ast), issue)
|
|
1370
|
+
}]
|
|
1369
1371
|
}
|
|
1370
1372
|
default:
|
|
1371
|
-
return [{ path, message: leafHook(issue) }]
|
|
1373
|
+
return [{ path, message: messageOverride ?? leafHook(issue) }]
|
|
1372
1374
|
}
|
|
1373
1375
|
}
|
|
1374
1376
|
|
|
@@ -1431,45 +1433,34 @@ export function makeFormatterDefault(): Formatter<string> {
|
|
|
1431
1433
|
/** @internal */
|
|
1432
1434
|
export const defaultFormatter = makeFormatterDefault()
|
|
1433
1435
|
|
|
1434
|
-
function formatIssue(issue: Issue, path: string): string {
|
|
1436
|
+
function formatIssue(issue: Issue, path: string, messageOverride?: string): string {
|
|
1435
1437
|
let message: string
|
|
1436
1438
|
switch (issue._tag) {
|
|
1437
|
-
case "Filter":
|
|
1438
|
-
|
|
1439
|
-
if (annotated !== undefined) {
|
|
1440
|
-
message = annotated
|
|
1441
|
-
} else {
|
|
1442
|
-
if (issue.issue._tag !== "InvalidValue") {
|
|
1443
|
-
return formatIssue(issue.issue, path)
|
|
1444
|
-
}
|
|
1445
|
-
const expected = findExpected(issue.issue)
|
|
1446
|
-
message = expected === undefined
|
|
1447
|
-
? getExpectedMessage(formatCheck(issue.filter), issue)
|
|
1448
|
-
: getExpectedMessage(expected, issue.issue)
|
|
1449
|
-
}
|
|
1450
|
-
break
|
|
1451
|
-
}
|
|
1439
|
+
case "Filter":
|
|
1440
|
+
return formatIssue(issue.issue, path, messageOverride ?? getFilterMessage(issue, defaultCheckHook))
|
|
1452
1441
|
case "Encoding":
|
|
1453
|
-
return formatIssue(issue.issue, path)
|
|
1442
|
+
return formatIssue(issue.issue, path, messageOverride)
|
|
1454
1443
|
case "Pointer":
|
|
1455
|
-
return formatIssue(issue.issue, path + formatPath(issue.path))
|
|
1444
|
+
return formatIssue(issue.issue, path + formatPath(issue.path), messageOverride)
|
|
1456
1445
|
case "Composite":
|
|
1457
1446
|
case "AnyOf": {
|
|
1458
1447
|
if (issue._tag === "Composite" || issue.issues.length > 0) {
|
|
1459
|
-
return issue.issues.map((issue) => formatIssue(issue, path)).join("\n")
|
|
1448
|
+
return issue.issues.map((issue) => formatIssue(issue, path, messageOverride)).join("\n")
|
|
1460
1449
|
}
|
|
1461
|
-
message =
|
|
1450
|
+
message = messageOverride ?? findMessage(issue) ??
|
|
1451
|
+
getExpectedMessage(InternalAnnotations.getExpected(issue.ast), issue)
|
|
1462
1452
|
break
|
|
1463
1453
|
}
|
|
1464
1454
|
default:
|
|
1465
|
-
message = defaultLeafHook(issue)
|
|
1455
|
+
message = messageOverride ?? defaultLeafHook(issue)
|
|
1466
1456
|
break
|
|
1467
1457
|
}
|
|
1468
1458
|
return path ? `${message}\n at ${path}` : message
|
|
1469
1459
|
}
|
|
1470
1460
|
|
|
1471
1461
|
function findMessage(issue: Issue): string | undefined {
|
|
1472
|
-
|
|
1462
|
+
// A Composite's ast describes the whole schema, not the failures it groups.
|
|
1463
|
+
if (issue._tag === "Pointer" || issue._tag === "Composite") return
|
|
1473
1464
|
if (issue._tag === "Encoding") return findMessage(issue.issue)
|
|
1474
1465
|
const annotations = issue._tag === "Filter"
|
|
1475
1466
|
? issue.filter.annotations
|
package/src/SchemaParser.ts
CHANGED
|
@@ -1136,29 +1136,62 @@ function runSync<T>(effect: Effect.Effect<T, SchemaIssue.Issue>, message: string
|
|
|
1136
1136
|
throw new Error("Schema validation failed", { cause: issue })
|
|
1137
1137
|
}
|
|
1138
1138
|
|
|
1139
|
+
const constructorDefectMessage = "Constructor adapter can only throw schema issues"
|
|
1140
|
+
|
|
1141
|
+
function throwConstructorDefect(error: unknown): never {
|
|
1142
|
+
throw new Error(constructorDefectMessage, { cause: Cause.die(error) })
|
|
1143
|
+
}
|
|
1144
|
+
|
|
1139
1145
|
function makeConstructorSync<T, E>(
|
|
1140
1146
|
ast: SchemaAST.AST
|
|
1141
1147
|
): (input: E, options?: Schema.MakeOptions) => T {
|
|
1142
1148
|
let entry: CompilerRegistry.Entry | undefined
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
|
|
1148
|
-
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
}
|
|
1158
|
-
if (output !== CompilerRegistry.invalid && output !== InternalParser.missing) return output as T
|
|
1149
|
+
return (input, options) => constructSync(entry ??= CompilerRegistry.resolve(ast), input, options)
|
|
1150
|
+
}
|
|
1151
|
+
|
|
1152
|
+
function constructSync<T>(entry: CompilerRegistry.Entry, input: unknown, options: Schema.MakeOptions | undefined): T {
|
|
1153
|
+
const parseOptions = options?.disableChecks
|
|
1154
|
+
? options.parseOptions ? { ...options.parseOptions, disableChecks: true } : { disableChecks: true }
|
|
1155
|
+
: options?.parseOptions ?? SchemaAST.defaultParseOptions
|
|
1156
|
+
const make = entry.make
|
|
1157
|
+
if (make !== undefined && input !== InternalParser.missing) {
|
|
1158
|
+
let output: unknown
|
|
1159
|
+
try {
|
|
1160
|
+
output = make(input, parseOptions)
|
|
1161
|
+
} catch (error) {
|
|
1162
|
+
throwConstructorDefect(error)
|
|
1159
1163
|
}
|
|
1160
|
-
|
|
1161
|
-
|
|
1164
|
+
if (output !== CompilerRegistry.invalid && output !== InternalParser.missing) return output as T
|
|
1165
|
+
}
|
|
1166
|
+
return runSync(parserResult<T, never>(entry.makeEffect(input, parseOptions), input), constructorDefectMessage)
|
|
1167
|
+
}
|
|
1168
|
+
|
|
1169
|
+
/**
|
|
1170
|
+
* Constructs a class instance from its type-side declaration.
|
|
1171
|
+
*
|
|
1172
|
+
* When the declaration has no compiled constructor, the fields are validated first
|
|
1173
|
+
* and the instance is built outside the parser, so stacks captured by the
|
|
1174
|
+
* class constructor keep the caller's frames.
|
|
1175
|
+
*
|
|
1176
|
+
* @internal
|
|
1177
|
+
*/
|
|
1178
|
+
export function makeClassSync<T>(
|
|
1179
|
+
ast: SchemaAST.AST,
|
|
1180
|
+
input: unknown,
|
|
1181
|
+
options: Schema.MakeOptions | undefined,
|
|
1182
|
+
construct: (fields: object) => T
|
|
1183
|
+
): T {
|
|
1184
|
+
const entry = CompilerRegistry.resolve(ast)
|
|
1185
|
+
const descriptor = SchemaAST.getConstructorDescriptor(ast)
|
|
1186
|
+
if (descriptor === undefined || entry.make !== undefined || entry.compiledMakeEffect !== undefined) {
|
|
1187
|
+
return constructSync(entry, input, options)
|
|
1188
|
+
}
|
|
1189
|
+
if (descriptor.isConstructed(input)) return input as T
|
|
1190
|
+
const fields = constructSync<object>((entry.resolve ?? CompilerRegistry.resolve)(descriptor.link.to), input, options)
|
|
1191
|
+
try {
|
|
1192
|
+
return construct(fields)
|
|
1193
|
+
} catch (error) {
|
|
1194
|
+
throwConstructorDefect(error)
|
|
1162
1195
|
}
|
|
1163
1196
|
}
|
|
1164
1197
|
|
|
@@ -288,13 +288,19 @@ export interface Unknown extends Keyword<"Unknown"> {}
|
|
|
288
288
|
export interface Any extends Keyword<"Any"> {}
|
|
289
289
|
|
|
290
290
|
/**
|
|
291
|
-
* A string representation
|
|
291
|
+
* A string representation, optionally describing its content through a media
|
|
292
|
+
* type and a schema for the value encoded in the string.
|
|
292
293
|
*
|
|
293
294
|
* @stability stable
|
|
294
295
|
* @category models
|
|
295
296
|
* @since 4.0.0
|
|
296
297
|
*/
|
|
297
|
-
export interface String extends Keyword<"String"> {
|
|
298
|
+
export interface String extends Keyword<"String"> {
|
|
299
|
+
readonly content?: {
|
|
300
|
+
readonly mediaType: string
|
|
301
|
+
readonly schema?: Representation | undefined
|
|
302
|
+
} | undefined
|
|
303
|
+
}
|
|
298
304
|
|
|
299
305
|
/**
|
|
300
306
|
* A number representation.
|
|
@@ -1944,6 +1950,32 @@ export const BigDecimalReviver: DeclarationReviver<null> = makeFixedDeclarationR
|
|
|
1944
1950
|
Schema.BigDecimal
|
|
1945
1951
|
)
|
|
1946
1952
|
|
|
1953
|
+
/**
|
|
1954
|
+
* Reviver for persisted {@link Schema.SemVer} declarations.
|
|
1955
|
+
*
|
|
1956
|
+
* @see {@link Schema.SemVer} for the corresponding schema
|
|
1957
|
+
* @stability unstable
|
|
1958
|
+
* @category schemas
|
|
1959
|
+
* @since 4.0.6
|
|
1960
|
+
*/
|
|
1961
|
+
export const SemVerReviver: DeclarationReviver<null> = makeFixedDeclarationReviver(
|
|
1962
|
+
"effect/schema/SemVer",
|
|
1963
|
+
Schema.SemVer
|
|
1964
|
+
)
|
|
1965
|
+
|
|
1966
|
+
/**
|
|
1967
|
+
* Reviver for persisted {@link Schema.SemVerRange} declarations.
|
|
1968
|
+
*
|
|
1969
|
+
* @see {@link Schema.SemVerRange} for the corresponding schema
|
|
1970
|
+
* @stability unstable
|
|
1971
|
+
* @category schemas
|
|
1972
|
+
* @since 4.0.6
|
|
1973
|
+
*/
|
|
1974
|
+
export const SemVerRangeReviver: DeclarationReviver<null> = makeFixedDeclarationReviver(
|
|
1975
|
+
"effect/schema/SemVerRange",
|
|
1976
|
+
Schema.SemVerRange
|
|
1977
|
+
)
|
|
1978
|
+
|
|
1947
1979
|
/**
|
|
1948
1980
|
* Reviver for persisted `File` declarations.
|
|
1949
1981
|
*
|
|
@@ -2362,32 +2394,13 @@ export const MutableJsonReviver: DeclarationReviver<null> = makeFixedDeclaration
|
|
|
2362
2394
|
Schema.MutableJson
|
|
2363
2395
|
)
|
|
2364
2396
|
|
|
2365
|
-
const jsonSchemaRevivers: ReadonlyArray<AnyReviver> = [
|
|
2366
|
-
JsonReviver,
|
|
2367
|
-
isPatternReviver,
|
|
2368
|
-
isFiniteReviver,
|
|
2369
|
-
isGreaterThanReviver,
|
|
2370
|
-
isGreaterThanOrEqualToReviver,
|
|
2371
|
-
isLessThanReviver,
|
|
2372
|
-
isLessThanOrEqualToReviver,
|
|
2373
|
-
isMultipleOfReviver,
|
|
2374
|
-
isIntReviver,
|
|
2375
|
-
isMinLengthReviver,
|
|
2376
|
-
isMaxLengthReviver,
|
|
2377
|
-
isMinCodePointsReviver,
|
|
2378
|
-
isMaxCodePointsReviver,
|
|
2379
|
-
isMinPropertiesReviver,
|
|
2380
|
-
isMaxPropertiesReviver,
|
|
2381
|
-
isPropertyNamesReviver,
|
|
2382
|
-
isUniqueReviver
|
|
2383
|
-
]
|
|
2384
|
-
|
|
2385
2397
|
/**
|
|
2386
2398
|
* Options for importing JSON Schema Draft 2020-12 documents.
|
|
2387
2399
|
*
|
|
2388
2400
|
* **When to use**
|
|
2389
2401
|
*
|
|
2390
|
-
* Use when you need to configure pattern handling or transform each JSON Schema node
|
|
2402
|
+
* Use when you need to configure pattern handling, preserve custom annotations, or transform each JSON Schema node
|
|
2403
|
+
* before translation.
|
|
2391
2404
|
*
|
|
2392
2405
|
* **Details**
|
|
2393
2406
|
*
|
|
@@ -2422,6 +2435,42 @@ export interface FromJsonSchemaOptions {
|
|
|
2422
2435
|
* @default "error"
|
|
2423
2436
|
*/
|
|
2424
2437
|
readonly patterns?: "error" | "ignore" | "apply" | undefined
|
|
2438
|
+
/**
|
|
2439
|
+
* Selects additional JSON Schema keys to preserve as Effect schema annotations.
|
|
2440
|
+
*
|
|
2441
|
+
* **Details**
|
|
2442
|
+
*
|
|
2443
|
+
* Standard annotations such as `title` and `description` are imported independently of this predicate.
|
|
2444
|
+
* Other keys are ignored by default. Selected values must be JSON-compatible and are kept as opaque metadata.
|
|
2445
|
+
* Selection runs after `onEnter`. JSON Schema structural and validation keywords, Effect's reserved annotation
|
|
2446
|
+
* keys, and keys starting with `~` are excluded before calling the predicate. Exceptions from the predicate
|
|
2447
|
+
* pass through unchanged.
|
|
2448
|
+
*
|
|
2449
|
+
* **Gotchas**
|
|
2450
|
+
*
|
|
2451
|
+
* Import normalizes the schema. Selected annotations stay on surviving values when checks simplify, and
|
|
2452
|
+
* annotations from eliminated alternatives or unreachable children are discarded. When schemas merge,
|
|
2453
|
+
* later annotations overwrite earlier values for the same key, following the importer's merge order.
|
|
2454
|
+
* Retaining an annotation does not enforce its semantics or preserve the original JSON Schema structure.
|
|
2455
|
+
*
|
|
2456
|
+
* **Example** (Preserving custom metadata on import and export)
|
|
2457
|
+
*
|
|
2458
|
+
* ```ts import.meta.vitest
|
|
2459
|
+
* import { JsonSchema, Schema, SchemaRepresentation } from "effect"
|
|
2460
|
+
*
|
|
2461
|
+
* const document = JsonSchema.fromSchemaDraft2020_12({
|
|
2462
|
+
* type: "string",
|
|
2463
|
+
* "x-sensitive": true
|
|
2464
|
+
* })
|
|
2465
|
+
* const options = { includeAnnotationKey: (key: string) => key.startsWith("x-") }
|
|
2466
|
+
* const schema = SchemaRepresentation.fromJsonSchemaDocument(document, options)
|
|
2467
|
+
*
|
|
2468
|
+
* Schema.toJsonSchemaDocument(schema, options).schema // => { type: "string", "x-sensitive": true }
|
|
2469
|
+
* ```
|
|
2470
|
+
*
|
|
2471
|
+
* @see Schema.ToJsonSchemaOptions
|
|
2472
|
+
*/
|
|
2473
|
+
readonly includeAnnotationKey?: ((key: string) => boolean) | undefined
|
|
2425
2474
|
}
|
|
2426
2475
|
|
|
2427
2476
|
/**
|
|
@@ -2902,7 +2951,14 @@ const RepresentationUnion = Schema.Union([
|
|
|
2902
2951
|
makeKeywordSchema("Never"),
|
|
2903
2952
|
makeKeywordSchema("Unknown"),
|
|
2904
2953
|
makeKeywordSchema("Any"),
|
|
2905
|
-
|
|
2954
|
+
Schema.Struct({
|
|
2955
|
+
_tag: Schema.tag("String"),
|
|
2956
|
+
...KeywordFields,
|
|
2957
|
+
content: Schema.optional(Schema.Struct({
|
|
2958
|
+
mediaType: Schema.String,
|
|
2959
|
+
schema: Schema.optional(RepresentationSchema)
|
|
2960
|
+
}))
|
|
2961
|
+
}),
|
|
2906
2962
|
makeKeywordSchema("Number"),
|
|
2907
2963
|
makeKeywordSchema("Boolean"),
|
|
2908
2964
|
makeKeywordSchema("BigInt"),
|
|
@@ -3129,11 +3185,13 @@ export function fromRepresentations(
|
|
|
3129
3185
|
* - Intersections of overlapping unions are limited to disjoint root-type partitions and finite primitive `anyOf`
|
|
3130
3186
|
* literal sets. Other union intersections, including cases that would duplicate a nested choice, are rejected.
|
|
3131
3187
|
* - Unknown extension keywords are ignored and their semantics are not enforced.
|
|
3132
|
-
* - Only
|
|
3133
|
-
*
|
|
3134
|
-
*
|
|
3135
|
-
*
|
|
3136
|
-
*
|
|
3188
|
+
* - Only local references to top-level definitions in the form `#/$defs/<escaped-token>` are supported, optionally
|
|
3189
|
+
* followed by a pointer below the definition. A pointer target becomes a definition keyed by its escaped tokens, such
|
|
3190
|
+
* as `Name/properties/field`, and is rejected if a top-level definition already uses that key. Root references and
|
|
3191
|
+
* external references are rejected with the supported reference format. Missing definitions are reported by name.
|
|
3192
|
+
* References reached inside nested schema resources introduced by `$id` are rejected instead of resolved against the
|
|
3193
|
+
* top-level definitions.
|
|
3194
|
+
* - Imported constraints use built-in schemas and checks.
|
|
3137
3195
|
* - Pattern constraints reached during translation cause an error by default. Use `patterns: "apply"` only for trusted
|
|
3138
3196
|
* documents, or `patterns: "ignore"` to skip them. Ignoring patterns can both admit invalid values and reject valid
|
|
3139
3197
|
* values when `oneOf` branches start overlapping.
|
|
@@ -3151,7 +3209,7 @@ export function fromJsonSchemaDocument(
|
|
|
3151
3209
|
document: JsonSchema.Document<"draft-2020-12">,
|
|
3152
3210
|
options?: FromJsonSchemaOptions
|
|
3153
3211
|
): Schema.Top {
|
|
3154
|
-
return InternalFromJsonSchemaDocument.fromJsonSchemaDocument(document, options
|
|
3212
|
+
return InternalFromJsonSchemaDocument.fromJsonSchemaDocument(document, options)
|
|
3155
3213
|
}
|
|
3156
3214
|
|
|
3157
3215
|
/**
|
|
@@ -3175,10 +3233,12 @@ export function fromJsonSchemaDocument(
|
|
|
3175
3233
|
* are supported.
|
|
3176
3234
|
* - Intersections of overlapping unions are limited to disjoint root-type partitions and finite primitive `anyOf`
|
|
3177
3235
|
* literal sets. Other union intersections, including cases that would duplicate a nested choice, are rejected.
|
|
3178
|
-
* - Only
|
|
3179
|
-
*
|
|
3180
|
-
*
|
|
3181
|
-
*
|
|
3236
|
+
* - Only local references to top-level definitions in the form `#/$defs/<escaped-token>` are supported, optionally
|
|
3237
|
+
* followed by a pointer below the definition. A pointer target becomes a definition keyed by its escaped tokens, such
|
|
3238
|
+
* as `Name/properties/field`, and is rejected if a top-level definition already uses that key. Root references and
|
|
3239
|
+
* external references are rejected with the supported reference format. Missing definitions are reported by name.
|
|
3240
|
+
* References reached inside nested schema resources introduced by `$id` are rejected instead of resolved against the
|
|
3241
|
+
* top-level definitions.
|
|
3182
3242
|
* - Pattern constraints reached during translation cause an error by default. Use `patterns: "apply"` only for trusted
|
|
3183
3243
|
* documents, or `patterns: "ignore"` to skip them. Ignoring patterns can both admit invalid values and reject valid
|
|
3184
3244
|
* values when `oneOf` branches start overlapping.
|
|
@@ -3195,5 +3255,5 @@ export function fromJsonSchemaMultiDocument(
|
|
|
3195
3255
|
document: JsonSchema.MultiDocument<"draft-2020-12">,
|
|
3196
3256
|
options?: FromJsonSchemaOptions
|
|
3197
3257
|
): readonly [Schema.Top, ...Array<Schema.Top>] {
|
|
3198
|
-
return InternalFromJsonSchemaDocument.fromJsonSchemaMultiDocument(document, options
|
|
3258
|
+
return InternalFromJsonSchemaDocument.fromJsonSchemaMultiDocument(document, options)
|
|
3199
3259
|
}
|