effect 4.0.4 → 4.0.6
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/src/52_graphql/10_basics.ts +19 -13
- package/ai-docs/src/52_graphql/30_batching.ts +6 -4
- package/ai-docs/src/52_graphql/40_aliased-batching.ts +6 -4
- package/ai-docs/tsconfig.json +3 -1
- package/dist/Array.d.ts +207 -58
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +45 -22
- 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 +187 -14
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +142 -33
- 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 +34 -32
- 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/Duration.d.ts.map +1 -1
- package/dist/Duration.js +58 -21
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +548 -182
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +261 -76
- package/dist/Effect.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 +24 -9
- 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 +28 -9
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js +3 -0
- package/dist/FileSystem.js.map +1 -1
- package/dist/Graph.d.ts.map +1 -1
- package/dist/Graph.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/JsonSchema.d.ts +9 -3
- package/dist/JsonSchema.d.ts.map +1 -1
- package/dist/JsonSchema.js +19 -3
- 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/Match.d.ts +20 -6
- package/dist/Match.d.ts.map +1 -1
- package/dist/Match.js +2 -2
- package/dist/Match.js.map +1 -1
- package/dist/Metric.d.ts +132 -0
- 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/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/Path.d.ts +37 -5
- package/dist/Path.d.ts.map +1 -1
- package/dist/Path.js +44 -6
- package/dist/Path.js.map +1 -1
- package/dist/PubSub.d.ts.map +1 -1
- package/dist/PubSub.js +12 -7
- 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.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.map +1 -1
- package/dist/Schema.d.ts +383 -326
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +338 -17
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +5 -5
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +24 -8
- 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/SchemaRepresentation.d.ts +56 -1
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +18 -0
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +1 -1
- package/dist/SchemaTransformation.js +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/Sink.d.ts.map +1 -1
- package/dist/Sink.js +6 -2
- 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 +145 -60
- package/dist/Stream.js.map +1 -1
- package/dist/String.d.ts +16 -2
- package/dist/String.d.ts.map +1 -1
- package/dist/String.js +25 -10
- 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/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/TxRef.d.ts.map +1 -1
- package/dist/TxRef.js +3 -2
- package/dist/TxRef.js.map +1 -1
- package/dist/ai/AiError.d.ts +78 -14
- package/dist/ai/AiError.d.ts.map +1 -1
- package/dist/ai/AiError.js +51 -3
- 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 +116 -20
- package/dist/ai/Decision.d.ts.map +1 -1
- package/dist/ai/Decision.js +37 -3
- 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 +183 -95
- 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 +47 -35
- 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 +368 -235
- 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 +6 -52
- package/dist/ai/McpServer.d.ts.map +1 -1
- package/dist/ai/McpServer.js +27 -50
- package/dist/ai/McpServer.js.map +1 -1
- package/dist/ai/Prompt.d.ts +22 -20
- package/dist/ai/Prompt.d.ts.map +1 -1
- package/dist/ai/Prompt.js +23 -1
- package/dist/ai/Prompt.js.map +1 -1
- package/dist/ai/Response.d.ts +148 -4
- package/dist/ai/Response.d.ts.map +1 -1
- package/dist/ai/Response.js +35 -37
- package/dist/ai/Response.js.map +1 -1
- package/dist/ai/Tool.d.ts +12 -4
- package/dist/ai/Tool.d.ts.map +1 -1
- 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 +65 -12
- 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/CliError.d.ts +42 -2
- package/dist/cli/CliError.d.ts.map +1 -1
- package/dist/cli/CliError.js +44 -5
- package/dist/cli/CliError.js.map +1 -1
- package/dist/cli/Command.d.ts +286 -2
- package/dist/cli/Command.d.ts.map +1 -1
- package/dist/cli/Command.js +107 -6
- package/dist/cli/Command.js.map +1 -1
- package/dist/cli/Completions.d.ts +10 -0
- package/dist/cli/Completions.d.ts.map +1 -1
- package/dist/cli/Completions.js.map +1 -1
- package/dist/cli/Flag.d.ts +215 -0
- package/dist/cli/Flag.d.ts.map +1 -1
- package/dist/cli/Flag.js +89 -0
- package/dist/cli/Flag.js.map +1 -1
- package/dist/cli/GlobalFlag.d.ts.map +1 -1
- package/dist/cli/GlobalFlag.js +3 -3
- package/dist/cli/GlobalFlag.js.map +1 -1
- package/dist/cli/Param.d.ts +194 -0
- package/dist/cli/Param.d.ts.map +1 -1
- package/dist/cli/Param.js +86 -0
- package/dist/cli/Param.js.map +1 -1
- package/dist/cli/TerminalCapabilities.d.ts +84 -0
- package/dist/cli/TerminalCapabilities.d.ts.map +1 -0
- package/dist/cli/TerminalCapabilities.js +122 -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 +7 -3
- package/dist/cli/internal/command.js.map +1 -1
- package/dist/cli/internal/completions/bash.js +7 -5
- package/dist/cli/internal/completions/bash.js.map +1 -1
- package/dist/cli/internal/completions/descriptor.js +16 -1
- package/dist/cli/internal/completions/descriptor.js.map +1 -1
- package/dist/cli/internal/completions/fish.js +12 -10
- package/dist/cli/internal/completions/fish.js.map +1 -1
- package/dist/cli/internal/completions/powershell.js +20 -10
- package/dist/cli/internal/completions/powershell.js.map +1 -1
- package/dist/cli/internal/completions/zsh.js +15 -8
- 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 +35 -15
- package/dist/cli/internal/parser.js.map +1 -1
- package/dist/cli/internal/wizard.d.ts.map +1 -1
- package/dist/cli/internal/wizard.js +2 -1
- package/dist/cli/internal/wizard.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 +2 -1
- package/dist/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/cluster/ClusterWorkflowEngine.js +98 -18
- 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 +21 -0
- package/dist/cluster/MessageStorage.d.ts.map +1 -1
- package/dist/cluster/MessageStorage.js +20 -12
- package/dist/cluster/MessageStorage.js.map +1 -1
- package/dist/cluster/Runners.d.ts.map +1 -1
- package/dist/cluster/Runners.js +96 -37
- 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 +95 -32
- package/dist/cluster/Sharding.js.map +1 -1
- package/dist/cluster/ShardingConfig.d.ts +20 -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/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 +10 -4
- package/dist/cluster/SqlRunnerStorage.js.map +1 -1
- package/dist/cluster/internal/entityManager.js +66 -9
- 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 +31 -4
- package/dist/devtools/DevToolsClient.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.js +1 -1
- 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.js +3 -3
- 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 +387 -159
- 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 +47 -0
- package/dist/eventlog/internal/conflicts.d.ts.map +1 -0
- package/dist/eventlog/internal/conflicts.js +92 -0
- package/dist/eventlog/internal/conflicts.js.map +1 -0
- package/dist/graphql/GraphQLClient.d.ts.map +1 -1
- package/dist/graphql/GraphQLClient.js +12 -5
- package/dist/graphql/GraphQLClient.js.map +1 -1
- 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 +252 -11
- package/dist/graphql/GraphQLProtocol.d.ts.map +1 -1
- package/dist/graphql/GraphQLProtocol.js +99 -8
- package/dist/graphql/GraphQLProtocol.js.map +1 -1
- package/dist/graphql/GraphQLResolver.d.ts +3 -1
- package/dist/graphql/GraphQLResolver.d.ts.map +1 -1
- package/dist/graphql/GraphQLResolver.js +91 -19
- package/dist/graphql/GraphQLResolver.js.map +1 -1
- package/dist/http/FetchHttpClient.d.ts +13 -3
- package/dist/http/FetchHttpClient.d.ts.map +1 -1
- package/dist/http/FetchHttpClient.js +56 -6
- package/dist/http/FetchHttpClient.js.map +1 -1
- package/dist/http/FindMyWay/internal/router.js +12 -1
- package/dist/http/FindMyWay/internal/router.js.map +1 -1
- package/dist/http/Headers.d.ts +230 -3
- package/dist/http/Headers.d.ts.map +1 -1
- package/dist/http/Headers.js +267 -5
- package/dist/http/Headers.js.map +1 -1
- package/dist/http/HttpClient.d.ts +105 -0
- package/dist/http/HttpClient.d.ts.map +1 -1
- package/dist/http/HttpClient.js +69 -17
- package/dist/http/HttpClient.js.map +1 -1
- package/dist/http/HttpClientError.d.ts.map +1 -1
- package/dist/http/HttpClientError.js +8 -6
- package/dist/http/HttpClientError.js.map +1 -1
- package/dist/http/HttpClientRequest.d.ts +274 -7
- package/dist/http/HttpClientRequest.d.ts.map +1 -1
- package/dist/http/HttpClientRequest.js +91 -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 +179 -2
- package/dist/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/http/HttpMiddleware.js +226 -18
- package/dist/http/HttpMiddleware.js.map +1 -1
- package/dist/http/HttpRouter.d.ts.map +1 -1
- package/dist/http/HttpRouter.js +58 -14
- 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 +11 -7
- package/dist/http/HttpServerError.js.map +1 -1
- package/dist/http/HttpServerRequest.d.ts +25 -5
- package/dist/http/HttpServerRequest.d.ts.map +1 -1
- package/dist/http/HttpServerRequest.js +38 -12
- 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 +25 -17
- package/dist/http/HttpStaticServer.js.map +1 -1
- package/dist/http/HttpTraceContext.js +1 -1
- package/dist/http/HttpTraceContext.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 +87 -5
- 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 +8 -2
- package/dist/http/Url.js.map +1 -1
- package/dist/http/UrlParams.d.ts +112 -8
- package/dist/http/UrlParams.d.ts.map +1 -1
- package/dist/http/UrlParams.js +141 -14
- package/dist/http/UrlParams.js.map +1 -1
- package/dist/http/internal/compression.d.ts +1 -1
- package/dist/http/internal/compression.d.ts.map +1 -1
- package/dist/http/internal/compression.js +2 -10
- package/dist/http/internal/compression.js.map +1 -1
- package/dist/http/internal/compressionBody.d.ts +2 -0
- package/dist/http/internal/compressionBody.d.ts.map +1 -0
- package/dist/http/internal/compressionBody.js +36 -0
- package/dist/http/internal/compressionBody.js.map +1 -0
- package/dist/http/internal/decompression.d.ts +2 -0
- package/dist/http/internal/decompression.d.ts.map +1 -0
- package/dist/http/internal/decompression.js +168 -0
- package/dist/http/internal/decompression.js.map +1 -0
- 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/tracing.js +14 -4
- package/dist/http/internal/tracing.js.map +1 -1
- package/dist/http/internal/urlParams.d.ts +2 -0
- package/dist/http/internal/urlParams.d.ts.map +1 -0
- package/dist/http/internal/urlParams.js +4 -0
- package/dist/http/internal/urlParams.js.map +1 -0
- 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.js +1 -1
- 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 +121 -18
- package/dist/http-api/HttpApiBuilder.js.map +1 -1
- package/dist/http-api/HttpApiClient.d.ts +29 -4
- package/dist/http-api/HttpApiClient.d.ts.map +1 -1
- package/dist/http-api/HttpApiClient.js +85 -24
- package/dist/http-api/HttpApiClient.js.map +1 -1
- package/dist/http-api/HttpApiEndpoint.d.ts +55 -29
- package/dist/http-api/HttpApiEndpoint.d.ts.map +1 -1
- package/dist/http-api/HttpApiEndpoint.js +49 -5
- 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 +191 -9
- package/dist/http-api/HttpApiSchema.d.ts.map +1 -1
- package/dist/http-api/HttpApiSchema.js +137 -4
- 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 +30 -9
- 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 +57 -32
- 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/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/core.js +18 -2
- 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 +89 -76
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/graphql.js +12 -2
- package/dist/internal/graphql.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/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/fromJsonSchemaDocument.js +136 -126
- package/dist/internal/schema/fromJsonSchemaDocument.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 +34 -33
- package/dist/internal/schema/standardSchema.js.map +1 -1
- package/dist/internal/schema/toCodeDocument.js +7 -2
- package/dist/internal/schema/toCodeDocument.js.map +1 -1
- package/dist/internal/schema/toCodec.js +86 -1
- 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 +60 -38
- package/dist/internal/schema/toJsonSchemaDocument.js.map +1 -1
- 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/Otlp.d.ts +15 -0
- package/dist/observability/Otlp.d.ts.map +1 -1
- package/dist/observability/Otlp.js +3 -0
- package/dist/observability/Otlp.js.map +1 -1
- package/dist/observability/OtlpExporter.d.ts +8 -0
- package/dist/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/observability/OtlpExporter.js +15 -13
- package/dist/observability/OtlpExporter.js.map +1 -1
- package/dist/observability/OtlpLogger.d.ts +17 -0
- package/dist/observability/OtlpLogger.d.ts.map +1 -1
- package/dist/observability/OtlpLogger.js +14 -1
- package/dist/observability/OtlpLogger.js.map +1 -1
- package/dist/observability/OtlpMetrics.d.ts +17 -0
- package/dist/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/observability/OtlpMetrics.js +18 -3
- package/dist/observability/OtlpMetrics.js.map +1 -1
- 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 +17 -0
- package/dist/observability/OtlpTracer.d.ts.map +1 -1
- package/dist/observability/OtlpTracer.js +15 -2
- package/dist/observability/OtlpTracer.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/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/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 +5 -0
- package/dist/persistence/index.d.ts.map +1 -1
- package/dist/persistence/index.js +5 -0
- package/dist/persistence/index.js.map +1 -1
- package/dist/process/ChildProcess.d.ts +2 -1
- package/dist/process/ChildProcess.d.ts.map +1 -1
- package/dist/process/ChildProcess.js.map +1 -1
- package/dist/reactivity/AsyncResult.d.ts +6 -0
- package/dist/reactivity/AsyncResult.d.ts.map +1 -1
- package/dist/reactivity/AsyncResult.js +28 -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 +47 -10
- 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 +202 -61
- package/dist/rpc/RpcClient.js.map +1 -1
- package/dist/rpc/RpcSerialization.d.ts +15 -0
- package/dist/rpc/RpcSerialization.d.ts.map +1 -1
- package/dist/rpc/RpcSerialization.js +21 -5
- package/dist/rpc/RpcSerialization.js.map +1 -1
- package/dist/rpc/RpcServer.d.ts.map +1 -1
- package/dist/rpc/RpcServer.js +9 -18
- package/dist/rpc/RpcServer.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.map +1 -1
- package/dist/sql/Migrator.js +15 -3
- package/dist/sql/Migrator.js.map +1 -1
- package/dist/sql/SqlClient.d.ts +151 -12
- package/dist/sql/SqlClient.d.ts.map +1 -1
- package/dist/sql/SqlClient.js +156 -34
- package/dist/sql/SqlClient.js.map +1 -1
- package/dist/sql/SqlResolver.d.ts +9 -0
- package/dist/sql/SqlResolver.d.ts.map +1 -1
- package/dist/sql/SqlResolver.js +9 -0
- package/dist/sql/SqlResolver.js.map +1 -1
- package/dist/sql/Statement.d.ts +3 -1
- package/dist/sql/Statement.d.ts.map +1 -1
- package/dist/sql/Statement.js +24 -5
- package/dist/sql/Statement.js.map +1 -1
- package/dist/testing/TestClock.d.ts +16 -3
- package/dist/testing/TestClock.d.ts.map +1 -1
- package/dist/testing/TestClock.js +115 -23
- 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/Activity.js +1 -0
- package/dist/workflow/Activity.js.map +1 -1
- package/dist/workflow/Workflow.d.ts +22 -0
- package/dist/workflow/Workflow.d.ts.map +1 -1
- package/dist/workflow/Workflow.js +15 -3
- package/dist/workflow/Workflow.js.map +1 -1
- package/dist/workflow/WorkflowEngine.d.ts +20 -1
- package/dist/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/workflow/WorkflowEngine.js +52 -24
- package/dist/workflow/WorkflowEngine.js.map +1 -1
- package/package.json +13 -3
- package/src/Array.ts +223 -61
- package/src/Bytes.ts +111 -0
- package/src/Channel.ts +287 -439
- package/src/ChannelSchema.ts +1 -49
- package/src/Chunk.ts +55 -61
- package/src/Config.ts +12 -86
- package/src/ConfigProvider.ts +41 -44
- package/src/Cron.ts +6 -3
- package/src/Duration.ts +70 -21
- package/src/Effect.ts +642 -220
- package/src/Equivalence.ts +7 -4
- package/src/Exit.ts +24 -9
- package/src/FiberHandle.ts +10 -9
- package/src/FiberMap.ts +13 -66
- package/src/FileSystem.ts +33 -9
- package/src/Graph.ts +171 -1263
- package/src/HashSet.ts +0 -60
- package/src/Iterable.ts +15 -14
- package/src/JsonSchema.ts +28 -3
- package/src/Layer.ts +2 -2
- package/src/ManagedRuntime.ts +72 -6
- package/src/Match.ts +65 -12
- package/src/Metric.ts +249 -507
- package/src/MutableHashMap.ts +4 -473
- package/src/Number.ts +2 -2
- package/src/Optic.ts +17 -332
- package/src/Path.ts +61 -8
- package/src/PubSub.ts +12 -7
- 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 +7 -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 +2 -94
- package/src/Schema.ts +596 -348
- package/src/SchemaAST.ts +20 -9
- package/src/SchemaGetter.ts +22 -5
- package/src/SchemaIssue.ts +44 -53
- package/src/SchemaRepresentation.ts +64 -1
- package/src/SchemaTransformation.ts +1 -1
- 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/Sink.ts +6 -2
- package/src/Stream.ts +334 -1011
- package/src/String.ts +25 -12
- package/src/TextDiff.ts +766 -0
- package/src/TxHashMap.ts +1 -103
- package/src/TxHashSet.ts +48 -753
- package/src/TxRef.ts +4 -2
- package/src/ai/AiError.ts +69 -5
- package/src/ai/Chat.ts +10 -5
- package/src/ai/Decision.ts +119 -22
- package/src/ai/DecisionModel.ts +265 -109
- package/src/ai/EmbeddingModel.ts +25 -13
- package/src/ai/LanguageModel.ts +57 -51
- 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 +232 -275
- package/src/ai/Prompt.ts +49 -35
- package/src/ai/Response.ts +195 -65
- package/src/ai/Tool.ts +12 -4
- package/src/ai/Toolkit.ts +78 -10
- 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/CliError.ts +49 -4
- package/src/cli/Command.ts +316 -9
- package/src/cli/Completions.ts +10 -0
- package/src/cli/Flag.ts +218 -0
- package/src/cli/GlobalFlag.ts +3 -3
- package/src/cli/Param.ts +218 -0
- package/src/cli/TerminalCapabilities.ts +156 -0
- package/src/cli/index.ts +6 -0
- package/src/cli/internal/command.ts +10 -4
- package/src/cli/internal/completions/bash.ts +7 -5
- package/src/cli/internal/completions/descriptor.ts +20 -1
- package/src/cli/internal/completions/fish.ts +12 -10
- package/src/cli/internal/completions/powershell.ts +25 -13
- package/src/cli/internal/completions/zsh.ts +15 -8
- package/src/cli/internal/formatter.ts +18 -0
- package/src/cli/internal/lexer.ts +12 -5
- package/src/cli/internal/parser.ts +43 -14
- package/src/cli/internal/wizard.ts +2 -1
- package/src/cluster/ClusterCron.ts +94 -35
- package/src/cluster/ClusterMetrics.ts +149 -7
- package/src/cluster/ClusterWorkflowEngine.ts +164 -53
- package/src/cluster/Entity.ts +4 -0
- package/src/cluster/MessageStorage.ts +21 -3
- package/src/cluster/Runners.ts +145 -72
- package/src/cluster/Sharding.ts +118 -38
- package/src/cluster/ShardingConfig.ts +15 -0
- package/src/cluster/SqlMessageStorage.ts +58 -55
- package/src/cluster/SqlRunnerStorage.ts +10 -4
- package/src/cluster/internal/entityManager.ts +81 -11
- package/src/devtools/DevTools.ts +3 -2
- package/src/devtools/DevToolsClient.ts +27 -10
- 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 +1 -1
- package/src/encoding/Tar.ts +1417 -0
- package/src/encoding/Toml.ts +3 -3
- 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 +453 -173
- 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 +123 -0
- package/src/graphql/GraphQLClient.ts +17 -5
- package/src/graphql/GraphQLClientError.ts +5 -12
- package/src/graphql/GraphQLProtocol.ts +277 -20
- package/src/graphql/GraphQLResolver.ts +109 -230
- package/src/http/FetchHttpClient.ts +61 -8
- package/src/http/FindMyWay/internal/router.ts +13 -1
- package/src/http/Headers.ts +343 -163
- package/src/http/HttpClient.ts +144 -136
- package/src/http/HttpClientError.ts +10 -6
- package/src/http/HttpClientRequest.ts +315 -11
- 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 +265 -28
- package/src/http/HttpRouter.ts +67 -14
- package/src/http/HttpServerError.ts +14 -7
- package/src/http/HttpServerRequest.ts +73 -14
- package/src/http/HttpServerResponse.ts +49 -23
- package/src/http/HttpStaticServer.ts +29 -19
- package/src/http/HttpTraceContext.ts +1 -1
- package/src/http/MultipartParser/internal/contentType.ts +107 -6
- package/src/http/MultipartParser/internal/headers.ts +4 -16
- package/src/http/MultipartParser/internal/multipart.ts +10 -32
- package/src/http/Url.ts +8 -2
- package/src/http/UrlParams.ts +225 -26
- package/src/http/internal/compression.ts +3 -17
- package/src/http/internal/compressionBody.ts +56 -0
- package/src/http/internal/decompression.ts +235 -0
- package/src/http/internal/lazyStream.ts +25 -0
- package/src/http/internal/requestState.ts +33 -0
- package/src/http/internal/tracing.ts +21 -4
- package/src/http/internal/urlParams.ts +5 -0
- package/src/http/internal/webResponse.ts +20 -0
- package/src/http-api/HttpApi.ts +1 -1
- package/src/http-api/HttpApiBuilder.ts +151 -23
- package/src/http-api/HttpApiClient.ts +160 -31
- package/src/http-api/HttpApiEndpoint.ts +144 -33
- package/src/http-api/HttpApiError.ts +55 -0
- package/src/http-api/HttpApiScalar.ts +4 -3
- package/src/http-api/HttpApiSchema.ts +275 -13
- package/src/http-api/HttpApiSwagger.ts +11 -4
- package/src/http-api/HttpApiTest.ts +33 -9
- package/src/http-api/OpenApi.ts +84 -42
- package/src/http-api/internal/path.ts +40 -12
- package/src/index.ts +24 -0
- package/src/internal/core.ts +22 -2
- package/src/internal/dateTime.ts +20 -7
- package/src/internal/effect.ts +125 -88
- package/src/internal/graphql.ts +30 -7
- package/src/internal/hashMap.ts +2 -2
- package/src/internal/hydration.ts +15 -0
- package/src/internal/inflate.ts +710 -0
- 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/fromJsonSchemaDocument.ts +262 -193
- package/src/internal/schema/interpreter.ts +58 -45
- package/src/internal/schema/standardSchema.ts +32 -30
- package/src/internal/schema/toCodeDocument.ts +8 -3
- package/src/internal/schema/toCodec.ts +116 -1
- package/src/internal/schema/toFormatter.ts +6 -6
- package/src/internal/schema/toJsonSchemaDocument.ts +69 -39
- 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/Otlp.ts +18 -0
- package/src/observability/OtlpExporter.ts +19 -15
- package/src/observability/OtlpLogger.ts +31 -2
- package/src/observability/OtlpMetrics.ts +35 -4
- package/src/observability/OtlpResource.ts +16 -6
- package/src/observability/OtlpSerialization.ts +17 -3
- package/src/observability/OtlpTracer.ts +32 -3
- package/src/observability/internal/protobuf.ts +2 -10
- 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/UserDirectories.ts +273 -0
- package/src/persistence/index.ts +6 -0
- package/src/process/ChildProcess.ts +2 -1
- package/src/reactivity/AsyncResult.ts +35 -38
- package/src/reactivity/Atom.ts +134 -166
- package/src/reactivity/AtomHttpApi.ts +10 -16
- package/src/reactivity/AtomRegistry.ts +53 -30
- 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 +285 -104
- package/src/rpc/RpcSerialization.ts +21 -5
- package/src/rpc/RpcServer.ts +11 -20
- package/src/schema/VariantSchema.ts +86 -22
- package/src/socket/Socket.ts +45 -20
- package/src/sql/Migrator.ts +19 -9
- package/src/sql/SqlClient.ts +275 -36
- package/src/sql/SqlResolver.ts +9 -0
- package/src/sql/Statement.ts +35 -8
- package/src/testing/TestClock.ts +147 -29
- package/src/testing/TestSchema.ts +9 -3
- package/src/workflow/Activity.ts +1 -0
- package/src/workflow/Workflow.ts +31 -5
- package/src/workflow/WorkflowEngine.ts +93 -31
- 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/Array.ts
CHANGED
|
@@ -521,8 +521,10 @@ export const fromOption: <A>(self: Option.Option<A>) => Array<A> = Option.toArra
|
|
|
521
521
|
*
|
|
522
522
|
* **Details**
|
|
523
523
|
*
|
|
524
|
-
* `onNonEmpty` receives a `
|
|
525
|
-
*
|
|
524
|
+
* `onNonEmpty` receives a `NonEmptyArray` for mutable arrays and a
|
|
525
|
+
* `NonEmptyReadonlyArray` otherwise. Data-last calls default to the readonly
|
|
526
|
+
* callback, so the returned function still accepts `ReadonlyArray`. Supports
|
|
527
|
+
* both data-first and data-last usage.
|
|
526
528
|
*
|
|
527
529
|
* **Example** (Branching on emptiness)
|
|
528
530
|
*
|
|
@@ -555,8 +557,10 @@ export const match: {
|
|
|
555
557
|
*
|
|
556
558
|
* **Details**
|
|
557
559
|
*
|
|
558
|
-
* `onNonEmpty` receives a `
|
|
559
|
-
*
|
|
560
|
+
* `onNonEmpty` receives a `NonEmptyArray` for mutable arrays and a
|
|
561
|
+
* `NonEmptyReadonlyArray` otherwise. Data-last calls default to the readonly
|
|
562
|
+
* callback, so the returned function still accepts `ReadonlyArray`. Supports
|
|
563
|
+
* both data-first and data-last usage.
|
|
560
564
|
*
|
|
561
565
|
* **Example** (Branching on emptiness)
|
|
562
566
|
*
|
|
@@ -594,8 +598,93 @@ export const match: {
|
|
|
594
598
|
*
|
|
595
599
|
* **Details**
|
|
596
600
|
*
|
|
597
|
-
* `onNonEmpty` receives a `
|
|
598
|
-
*
|
|
601
|
+
* `onNonEmpty` receives a `NonEmptyArray` for mutable arrays and a
|
|
602
|
+
* `NonEmptyReadonlyArray` otherwise. Data-last calls default to the readonly
|
|
603
|
+
* callback, so the returned function still accepts `ReadonlyArray`. Supports
|
|
604
|
+
* both data-first and data-last usage.
|
|
605
|
+
*
|
|
606
|
+
* **Example** (Branching on emptiness)
|
|
607
|
+
*
|
|
608
|
+
* ```ts import.meta.vitest
|
|
609
|
+
* import { Array } from "effect"
|
|
610
|
+
*
|
|
611
|
+
* const describe = Array.match({
|
|
612
|
+
* onEmpty: () => "empty",
|
|
613
|
+
* onNonEmpty: ([head, ...tail]) => `head: ${head}, tail: ${tail.length}`
|
|
614
|
+
* })
|
|
615
|
+
*
|
|
616
|
+
* describe([]) // => "empty"
|
|
617
|
+
* describe([1, 2, 3]) // => "head: 1, tail: 2"
|
|
618
|
+
* ```
|
|
619
|
+
*
|
|
620
|
+
* @see {@link matchLeft} — destructures into head + tail
|
|
621
|
+
* @see {@link matchRight} — destructures into init + last
|
|
622
|
+
*
|
|
623
|
+
* @stability stable
|
|
624
|
+
* @category pattern matching
|
|
625
|
+
* @since 2.0.0
|
|
626
|
+
*/
|
|
627
|
+
<B, A, C = B>(
|
|
628
|
+
options: {
|
|
629
|
+
readonly onEmpty: LazyArg<B>
|
|
630
|
+
readonly onNonEmpty: (self: NonEmptyArray<A>) => C
|
|
631
|
+
}
|
|
632
|
+
): (self: Array<A>) => B | C
|
|
633
|
+
/**
|
|
634
|
+
* Pattern-matches on an array, handling empty and non-empty cases separately.
|
|
635
|
+
*
|
|
636
|
+
* **When to use**
|
|
637
|
+
*
|
|
638
|
+
* Use when you need to branch on whether an array is empty.
|
|
639
|
+
*
|
|
640
|
+
* **Details**
|
|
641
|
+
*
|
|
642
|
+
* `onNonEmpty` receives a `NonEmptyArray` for mutable arrays and a
|
|
643
|
+
* `NonEmptyReadonlyArray` otherwise. Data-last calls default to the readonly
|
|
644
|
+
* callback, so the returned function still accepts `ReadonlyArray`. Supports
|
|
645
|
+
* both data-first and data-last usage.
|
|
646
|
+
*
|
|
647
|
+
* **Example** (Branching on emptiness)
|
|
648
|
+
*
|
|
649
|
+
* ```ts import.meta.vitest
|
|
650
|
+
* import { Array } from "effect"
|
|
651
|
+
*
|
|
652
|
+
* const describe = Array.match({
|
|
653
|
+
* onEmpty: () => "empty",
|
|
654
|
+
* onNonEmpty: ([head, ...tail]) => `head: ${head}, tail: ${tail.length}`
|
|
655
|
+
* })
|
|
656
|
+
*
|
|
657
|
+
* describe([]) // => "empty"
|
|
658
|
+
* describe([1, 2, 3]) // => "head: 1, tail: 2"
|
|
659
|
+
* ```
|
|
660
|
+
*
|
|
661
|
+
* @see {@link matchLeft} — destructures into head + tail
|
|
662
|
+
* @see {@link matchRight} — destructures into init + last
|
|
663
|
+
*
|
|
664
|
+
* @stability stable
|
|
665
|
+
* @category pattern matching
|
|
666
|
+
* @since 2.0.0
|
|
667
|
+
*/
|
|
668
|
+
<A, B, C = B>(
|
|
669
|
+
self: Array<A>,
|
|
670
|
+
options: {
|
|
671
|
+
readonly onEmpty: LazyArg<B>
|
|
672
|
+
readonly onNonEmpty: (self: NonEmptyArray<A>) => C
|
|
673
|
+
}
|
|
674
|
+
): B | C
|
|
675
|
+
/**
|
|
676
|
+
* Pattern-matches on an array, handling empty and non-empty cases separately.
|
|
677
|
+
*
|
|
678
|
+
* **When to use**
|
|
679
|
+
*
|
|
680
|
+
* Use when you need to branch on whether an array is empty.
|
|
681
|
+
*
|
|
682
|
+
* **Details**
|
|
683
|
+
*
|
|
684
|
+
* `onNonEmpty` receives a `NonEmptyArray` for mutable arrays and a
|
|
685
|
+
* `NonEmptyReadonlyArray` otherwise. Data-last calls default to the readonly
|
|
686
|
+
* callback, so the returned function still accepts `ReadonlyArray`. Supports
|
|
687
|
+
* both data-first and data-last usage.
|
|
599
688
|
*
|
|
600
689
|
* **Example** (Branching on emptiness)
|
|
601
690
|
*
|
|
@@ -5646,7 +5735,7 @@ export const rotate: {
|
|
|
5646
5735
|
* **When to use**
|
|
5647
5736
|
*
|
|
5648
5737
|
* Use when checking membership with caller-provided equality instead of
|
|
5649
|
-
* `Equal.
|
|
5738
|
+
* `Equal.asEquivalence()`.
|
|
5650
5739
|
*
|
|
5651
5740
|
* **Example** (Checking with custom equality)
|
|
5652
5741
|
*
|
|
@@ -5658,7 +5747,7 @@ export const rotate: {
|
|
|
5658
5747
|
* pipe([1, 2, 3, 4], containsNumber(3)) // => true
|
|
5659
5748
|
* ```
|
|
5660
5749
|
*
|
|
5661
|
-
* @see {@link contains} for the `Equal.
|
|
5750
|
+
* @see {@link contains} for the `Equal.asEquivalence()` variant
|
|
5662
5751
|
*
|
|
5663
5752
|
* @stability stable
|
|
5664
5753
|
* @category predicates
|
|
@@ -5678,7 +5767,7 @@ export const containsWith = <A>(isEquivalent: (self: A, that: A) => boolean): {
|
|
|
5678
5767
|
})
|
|
5679
5768
|
|
|
5680
5769
|
/**
|
|
5681
|
-
* Checks whether an array contains a value, using `Equal.
|
|
5770
|
+
* Checks whether an array contains a value, using `Equal.asEquivalence()` for
|
|
5682
5771
|
* comparison.
|
|
5683
5772
|
*
|
|
5684
5773
|
* **When to use**
|
|
@@ -5702,7 +5791,7 @@ export const containsWith = <A>(isEquivalent: (self: A, that: A) => boolean): {
|
|
|
5702
5791
|
*/
|
|
5703
5792
|
export const contains: {
|
|
5704
5793
|
/**
|
|
5705
|
-
* Checks whether an array contains a value, using `Equal.
|
|
5794
|
+
* Checks whether an array contains a value, using `Equal.asEquivalence()` for
|
|
5706
5795
|
* comparison.
|
|
5707
5796
|
*
|
|
5708
5797
|
* **When to use**
|
|
@@ -5726,7 +5815,7 @@ export const contains: {
|
|
|
5726
5815
|
*/
|
|
5727
5816
|
<A>(a: A): (self: Iterable<A>) => boolean
|
|
5728
5817
|
/**
|
|
5729
|
-
* Checks whether an array contains a value, using `Equal.
|
|
5818
|
+
* Checks whether an array contains a value, using `Equal.asEquivalence()` for
|
|
5730
5819
|
* comparison.
|
|
5731
5820
|
*
|
|
5732
5821
|
* **When to use**
|
|
@@ -6717,7 +6806,7 @@ export const window: {
|
|
|
6717
6806
|
* ) // => [["a", "a"], ["b", "b", "b"], ["c"], ["a"]]
|
|
6718
6807
|
* ```
|
|
6719
6808
|
*
|
|
6720
|
-
* @see {@link group} for grouping adjacent elements with `Equal.
|
|
6809
|
+
* @see {@link group} for grouping adjacent elements with `Equal.asEquivalence()`
|
|
6721
6810
|
* @see {@link groupBy} for grouping all elements into a record by key, regardless of adjacency
|
|
6722
6811
|
*
|
|
6723
6812
|
* @stability stable
|
|
@@ -6749,7 +6838,7 @@ export const groupWith: {
|
|
|
6749
6838
|
* ) // => [["a", "a"], ["b", "b", "b"], ["c"], ["a"]]
|
|
6750
6839
|
* ```
|
|
6751
6840
|
*
|
|
6752
|
-
* @see {@link group} for grouping adjacent elements with `Equal.
|
|
6841
|
+
* @see {@link group} for grouping adjacent elements with `Equal.asEquivalence()`
|
|
6753
6842
|
* @see {@link groupBy} for grouping all elements into a record by key, regardless of adjacency
|
|
6754
6843
|
*
|
|
6755
6844
|
* @stability stable
|
|
@@ -6781,7 +6870,7 @@ export const groupWith: {
|
|
|
6781
6870
|
* ) // => [["a", "a"], ["b", "b", "b"], ["c"], ["a"]]
|
|
6782
6871
|
* ```
|
|
6783
6872
|
*
|
|
6784
|
-
* @see {@link group} for grouping adjacent elements with `Equal.
|
|
6873
|
+
* @see {@link group} for grouping adjacent elements with `Equal.asEquivalence()`
|
|
6785
6874
|
* @see {@link groupBy} for grouping all elements into a record by key, regardless of adjacency
|
|
6786
6875
|
*
|
|
6787
6876
|
* @stability stable
|
|
@@ -6812,7 +6901,7 @@ export const groupWith: {
|
|
|
6812
6901
|
)
|
|
6813
6902
|
|
|
6814
6903
|
/**
|
|
6815
|
-
* Groups consecutive equal elements using `Equal.
|
|
6904
|
+
* Groups consecutive equal elements using `Equal.asEquivalence()`.
|
|
6816
6905
|
*
|
|
6817
6906
|
* **When to use**
|
|
6818
6907
|
*
|
|
@@ -7025,13 +7114,22 @@ const hashBucketsHas = (buckets: HashBuckets, value: unknown): boolean => {
|
|
|
7025
7114
|
}
|
|
7026
7115
|
|
|
7027
7116
|
/**
|
|
7028
|
-
* Computes the union of two
|
|
7029
|
-
* duplicates.
|
|
7117
|
+
* Computes the union of two iterables using a custom equivalence.
|
|
7030
7118
|
*
|
|
7031
7119
|
* **When to use**
|
|
7032
7120
|
*
|
|
7033
7121
|
* Use when you need the union of two arrays but duplicate detection must use a
|
|
7034
|
-
* custom equivalence instead of the default `Equal.
|
|
7122
|
+
* custom equivalence instead of the default `Equal.asEquivalence()`.
|
|
7123
|
+
*
|
|
7124
|
+
* **Details**
|
|
7125
|
+
*
|
|
7126
|
+
* Keeps the elements of `self`, then appends elements of `that` that have no
|
|
7127
|
+
* equivalent in `self`. Calls `isEquivalent` with an element from `self` first
|
|
7128
|
+
* and an element from `that` second.
|
|
7129
|
+
*
|
|
7130
|
+
* **Gotchas**
|
|
7131
|
+
*
|
|
7132
|
+
* Each input must already be deduplicated.
|
|
7035
7133
|
*
|
|
7036
7134
|
* **Example** (Computing unions with custom equality)
|
|
7037
7135
|
*
|
|
@@ -7041,7 +7139,7 @@ const hashBucketsHas = (buckets: HashBuckets, value: unknown): boolean => {
|
|
|
7041
7139
|
* Array.unionWith([1, 2], [2, 3], (a, b) => a === b) // => [1, 2, 3]
|
|
7042
7140
|
* ```
|
|
7043
7141
|
*
|
|
7044
|
-
* @see {@link union} for the `Equal.
|
|
7142
|
+
* @see {@link union} for the `Equal.asEquivalence()` variant
|
|
7045
7143
|
* @see {@link intersectionWith} for keeping elements present in both arrays
|
|
7046
7144
|
* @see {@link differenceWith} for keeping elements present only in the first array
|
|
7047
7145
|
*
|
|
@@ -7051,13 +7149,22 @@ const hashBucketsHas = (buckets: HashBuckets, value: unknown): boolean => {
|
|
|
7051
7149
|
*/
|
|
7052
7150
|
export const unionWith: {
|
|
7053
7151
|
/**
|
|
7054
|
-
* Computes the union of two
|
|
7055
|
-
* duplicates.
|
|
7152
|
+
* Computes the union of two iterables using a custom equivalence.
|
|
7056
7153
|
*
|
|
7057
7154
|
* **When to use**
|
|
7058
7155
|
*
|
|
7059
7156
|
* Use when you need the union of two arrays but duplicate detection must use a
|
|
7060
|
-
* custom equivalence instead of the default `Equal.
|
|
7157
|
+
* custom equivalence instead of the default `Equal.asEquivalence()`.
|
|
7158
|
+
*
|
|
7159
|
+
* **Details**
|
|
7160
|
+
*
|
|
7161
|
+
* Keeps the elements of `self`, then appends elements of `that` that have no
|
|
7162
|
+
* equivalent in `self`. Calls `isEquivalent` with an element from `self` first
|
|
7163
|
+
* and an element from `that` second.
|
|
7164
|
+
*
|
|
7165
|
+
* **Gotchas**
|
|
7166
|
+
*
|
|
7167
|
+
* Each input must already be deduplicated.
|
|
7061
7168
|
*
|
|
7062
7169
|
* **Example** (Computing unions with custom equality)
|
|
7063
7170
|
*
|
|
@@ -7067,7 +7174,7 @@ export const unionWith: {
|
|
|
7067
7174
|
* Array.unionWith([1, 2], [2, 3], (a, b) => a === b) // => [1, 2, 3]
|
|
7068
7175
|
* ```
|
|
7069
7176
|
*
|
|
7070
|
-
* @see {@link union} for the `Equal.
|
|
7177
|
+
* @see {@link union} for the `Equal.asEquivalence()` variant
|
|
7071
7178
|
* @see {@link intersectionWith} for keeping elements present in both arrays
|
|
7072
7179
|
* @see {@link differenceWith} for keeping elements present only in the first array
|
|
7073
7180
|
*
|
|
@@ -7080,13 +7187,22 @@ export const unionWith: {
|
|
|
7080
7187
|
isEquivalent: (self: ReadonlyArray.Infer<S>, that: ReadonlyArray.Infer<T>) => boolean
|
|
7081
7188
|
): (self: S) => ReadonlyArray.OrNonEmpty<S, T, ReadonlyArray.Infer<S> | ReadonlyArray.Infer<T>>
|
|
7082
7189
|
/**
|
|
7083
|
-
* Computes the union of two
|
|
7084
|
-
* duplicates.
|
|
7190
|
+
* Computes the union of two iterables using a custom equivalence.
|
|
7085
7191
|
*
|
|
7086
7192
|
* **When to use**
|
|
7087
7193
|
*
|
|
7088
7194
|
* Use when you need the union of two arrays but duplicate detection must use a
|
|
7089
|
-
* custom equivalence instead of the default `Equal.
|
|
7195
|
+
* custom equivalence instead of the default `Equal.asEquivalence()`.
|
|
7196
|
+
*
|
|
7197
|
+
* **Details**
|
|
7198
|
+
*
|
|
7199
|
+
* Keeps the elements of `self`, then appends elements of `that` that have no
|
|
7200
|
+
* equivalent in `self`. Calls `isEquivalent` with an element from `self` first
|
|
7201
|
+
* and an element from `that` second.
|
|
7202
|
+
*
|
|
7203
|
+
* **Gotchas**
|
|
7204
|
+
*
|
|
7205
|
+
* Each input must already be deduplicated.
|
|
7090
7206
|
*
|
|
7091
7207
|
* **Example** (Computing unions with custom equality)
|
|
7092
7208
|
*
|
|
@@ -7096,7 +7212,7 @@ export const unionWith: {
|
|
|
7096
7212
|
* Array.unionWith([1, 2], [2, 3], (a, b) => a === b) // => [1, 2, 3]
|
|
7097
7213
|
* ```
|
|
7098
7214
|
*
|
|
7099
|
-
* @see {@link union} for the `Equal.
|
|
7215
|
+
* @see {@link union} for the `Equal.asEquivalence()` variant
|
|
7100
7216
|
* @see {@link intersectionWith} for keeping elements present in both arrays
|
|
7101
7217
|
* @see {@link differenceWith} for keeping elements present only in the first array
|
|
7102
7218
|
*
|
|
@@ -7110,13 +7226,22 @@ export const unionWith: {
|
|
|
7110
7226
|
isEquivalent: (self: A, that: B) => boolean
|
|
7111
7227
|
): NonEmptyArray<A | B>
|
|
7112
7228
|
/**
|
|
7113
|
-
* Computes the union of two
|
|
7114
|
-
* duplicates.
|
|
7229
|
+
* Computes the union of two iterables using a custom equivalence.
|
|
7115
7230
|
*
|
|
7116
7231
|
* **When to use**
|
|
7117
7232
|
*
|
|
7118
7233
|
* Use when you need the union of two arrays but duplicate detection must use a
|
|
7119
|
-
* custom equivalence instead of the default `Equal.
|
|
7234
|
+
* custom equivalence instead of the default `Equal.asEquivalence()`.
|
|
7235
|
+
*
|
|
7236
|
+
* **Details**
|
|
7237
|
+
*
|
|
7238
|
+
* Keeps the elements of `self`, then appends elements of `that` that have no
|
|
7239
|
+
* equivalent in `self`. Calls `isEquivalent` with an element from `self` first
|
|
7240
|
+
* and an element from `that` second.
|
|
7241
|
+
*
|
|
7242
|
+
* **Gotchas**
|
|
7243
|
+
*
|
|
7244
|
+
* Each input must already be deduplicated.
|
|
7120
7245
|
*
|
|
7121
7246
|
* **Example** (Computing unions with custom equality)
|
|
7122
7247
|
*
|
|
@@ -7126,7 +7251,7 @@ export const unionWith: {
|
|
|
7126
7251
|
* Array.unionWith([1, 2], [2, 3], (a, b) => a === b) // => [1, 2, 3]
|
|
7127
7252
|
* ```
|
|
7128
7253
|
*
|
|
7129
|
-
* @see {@link union} for the `Equal.
|
|
7254
|
+
* @see {@link union} for the `Equal.asEquivalence()` variant
|
|
7130
7255
|
* @see {@link intersectionWith} for keeping elements present in both arrays
|
|
7131
7256
|
* @see {@link differenceWith} for keeping elements present only in the first array
|
|
7132
7257
|
*
|
|
@@ -7140,13 +7265,22 @@ export const unionWith: {
|
|
|
7140
7265
|
isEquivalent: (self: A, that: B) => boolean
|
|
7141
7266
|
): NonEmptyArray<A | B>
|
|
7142
7267
|
/**
|
|
7143
|
-
* Computes the union of two
|
|
7144
|
-
* duplicates.
|
|
7268
|
+
* Computes the union of two iterables using a custom equivalence.
|
|
7145
7269
|
*
|
|
7146
7270
|
* **When to use**
|
|
7147
7271
|
*
|
|
7148
7272
|
* Use when you need the union of two arrays but duplicate detection must use a
|
|
7149
|
-
* custom equivalence instead of the default `Equal.
|
|
7273
|
+
* custom equivalence instead of the default `Equal.asEquivalence()`.
|
|
7274
|
+
*
|
|
7275
|
+
* **Details**
|
|
7276
|
+
*
|
|
7277
|
+
* Keeps the elements of `self`, then appends elements of `that` that have no
|
|
7278
|
+
* equivalent in `self`. Calls `isEquivalent` with an element from `self` first
|
|
7279
|
+
* and an element from `that` second.
|
|
7280
|
+
*
|
|
7281
|
+
* **Gotchas**
|
|
7282
|
+
*
|
|
7283
|
+
* Each input must already be deduplicated.
|
|
7150
7284
|
*
|
|
7151
7285
|
* **Example** (Computing unions with custom equality)
|
|
7152
7286
|
*
|
|
@@ -7156,7 +7290,7 @@ export const unionWith: {
|
|
|
7156
7290
|
* Array.unionWith([1, 2], [2, 3], (a, b) => a === b) // => [1, 2, 3]
|
|
7157
7291
|
* ```
|
|
7158
7292
|
*
|
|
7159
|
-
* @see {@link union} for the `Equal.
|
|
7293
|
+
* @see {@link union} for the `Equal.asEquivalence()` variant
|
|
7160
7294
|
* @see {@link intersectionWith} for keeping elements present in both arrays
|
|
7161
7295
|
* @see {@link differenceWith} for keeping elements present only in the first array
|
|
7162
7296
|
*
|
|
@@ -7169,13 +7303,21 @@ export const unionWith: {
|
|
|
7169
7303
|
that: Iterable<B>,
|
|
7170
7304
|
isEquivalent: (self: A, that: B) => boolean
|
|
7171
7305
|
): Array<A | B>
|
|
7172
|
-
} = dual(3, <A>(self: Iterable<A>, that: Iterable<
|
|
7306
|
+
} = dual(3, <A, B>(self: Iterable<A>, that: Iterable<B>, isEquivalent: (self: A, that: B) => boolean): Array<A | B> => {
|
|
7173
7307
|
const a = fromIterable(self)
|
|
7174
7308
|
const b = fromIterable(that)
|
|
7175
7309
|
if (isReadonlyArrayNonEmpty(a)) {
|
|
7176
7310
|
if (isReadonlyArrayNonEmpty(b)) {
|
|
7177
|
-
const
|
|
7178
|
-
|
|
7311
|
+
const out: Array<A | B> = [...a]
|
|
7312
|
+
next: for (const value of b) {
|
|
7313
|
+
for (const candidate of a) {
|
|
7314
|
+
if (isEquivalent(candidate, value)) {
|
|
7315
|
+
continue next
|
|
7316
|
+
}
|
|
7317
|
+
}
|
|
7318
|
+
out.push(value)
|
|
7319
|
+
}
|
|
7320
|
+
return out
|
|
7179
7321
|
}
|
|
7180
7322
|
return a
|
|
7181
7323
|
}
|
|
@@ -7183,8 +7325,12 @@ export const unionWith: {
|
|
|
7183
7325
|
})
|
|
7184
7326
|
|
|
7185
7327
|
/**
|
|
7186
|
-
* Computes the union of two
|
|
7187
|
-
*
|
|
7328
|
+
* Computes the union of two iterables using `Equal.asEquivalence()`.
|
|
7329
|
+
*
|
|
7330
|
+
* **Gotchas**
|
|
7331
|
+
*
|
|
7332
|
+
* Each input must already be deduplicated. Use {@link dedupe} to remove
|
|
7333
|
+
* duplicates from an input first.
|
|
7188
7334
|
*
|
|
7189
7335
|
* **Example** (Computing array unions)
|
|
7190
7336
|
*
|
|
@@ -7204,8 +7350,12 @@ export const unionWith: {
|
|
|
7204
7350
|
*/
|
|
7205
7351
|
export const union: {
|
|
7206
7352
|
/**
|
|
7207
|
-
* Computes the union of two
|
|
7208
|
-
*
|
|
7353
|
+
* Computes the union of two iterables using `Equal.asEquivalence()`.
|
|
7354
|
+
*
|
|
7355
|
+
* **Gotchas**
|
|
7356
|
+
*
|
|
7357
|
+
* Each input must already be deduplicated. Use {@link dedupe} to remove
|
|
7358
|
+
* duplicates from an input first.
|
|
7209
7359
|
*
|
|
7210
7360
|
* **Example** (Computing array unions)
|
|
7211
7361
|
*
|
|
@@ -7227,8 +7377,12 @@ export const union: {
|
|
|
7227
7377
|
self: S
|
|
7228
7378
|
) => ReadonlyArray.OrNonEmpty<S, T, ReadonlyArray.Infer<S> | ReadonlyArray.Infer<T>>
|
|
7229
7379
|
/**
|
|
7230
|
-
* Computes the union of two
|
|
7231
|
-
*
|
|
7380
|
+
* Computes the union of two iterables using `Equal.asEquivalence()`.
|
|
7381
|
+
*
|
|
7382
|
+
* **Gotchas**
|
|
7383
|
+
*
|
|
7384
|
+
* Each input must already be deduplicated. Use {@link dedupe} to remove
|
|
7385
|
+
* duplicates from an input first.
|
|
7232
7386
|
*
|
|
7233
7387
|
* **Example** (Computing array unions)
|
|
7234
7388
|
*
|
|
@@ -7248,8 +7402,12 @@ export const union: {
|
|
|
7248
7402
|
*/
|
|
7249
7403
|
<A, B>(self: NonEmptyReadonlyArray<A>, that: ReadonlyArray<B>): NonEmptyArray<A | B>
|
|
7250
7404
|
/**
|
|
7251
|
-
* Computes the union of two
|
|
7252
|
-
*
|
|
7405
|
+
* Computes the union of two iterables using `Equal.asEquivalence()`.
|
|
7406
|
+
*
|
|
7407
|
+
* **Gotchas**
|
|
7408
|
+
*
|
|
7409
|
+
* Each input must already be deduplicated. Use {@link dedupe} to remove
|
|
7410
|
+
* duplicates from an input first.
|
|
7253
7411
|
*
|
|
7254
7412
|
* **Example** (Computing array unions)
|
|
7255
7413
|
*
|
|
@@ -7269,8 +7427,12 @@ export const union: {
|
|
|
7269
7427
|
*/
|
|
7270
7428
|
<A, B>(self: ReadonlyArray<A>, that: NonEmptyReadonlyArray<B>): NonEmptyArray<A | B>
|
|
7271
7429
|
/**
|
|
7272
|
-
* Computes the union of two
|
|
7273
|
-
*
|
|
7430
|
+
* Computes the union of two iterables using `Equal.asEquivalence()`.
|
|
7431
|
+
*
|
|
7432
|
+
* **Gotchas**
|
|
7433
|
+
*
|
|
7434
|
+
* Each input must already be deduplicated. Use {@link dedupe} to remove
|
|
7435
|
+
* duplicates from an input first.
|
|
7274
7436
|
*
|
|
7275
7437
|
* **Example** (Computing array unions)
|
|
7276
7438
|
*
|
|
@@ -7322,7 +7484,7 @@ export const union: {
|
|
|
7322
7484
|
* Array.intersectionWith(isEquivalent)(array2)(array1) // => [{ id: 1 }, { id: 3 }]
|
|
7323
7485
|
* ```
|
|
7324
7486
|
*
|
|
7325
|
-
* @see {@link intersection} for the `Equal.
|
|
7487
|
+
* @see {@link intersection} for the `Equal.asEquivalence()` variant
|
|
7326
7488
|
* @see {@link unionWith} for keeping values from either array with custom equality
|
|
7327
7489
|
* @see {@link differenceWith} for keeping values only from the first array with custom equality
|
|
7328
7490
|
*
|
|
@@ -7345,7 +7507,7 @@ export const intersectionWith = <A>(isEquivalent: (self: A, that: A) => boolean)
|
|
|
7345
7507
|
}
|
|
7346
7508
|
|
|
7347
7509
|
/**
|
|
7348
|
-
* Computes the intersection of two arrays using `Equal.
|
|
7510
|
+
* Computes the intersection of two arrays using `Equal.asEquivalence()`. Order is
|
|
7349
7511
|
* determined by the first array.
|
|
7350
7512
|
*
|
|
7351
7513
|
* **When to use**
|
|
@@ -7371,7 +7533,7 @@ export const intersectionWith = <A>(isEquivalent: (self: A, that: A) => boolean)
|
|
|
7371
7533
|
*/
|
|
7372
7534
|
export const intersection: {
|
|
7373
7535
|
/**
|
|
7374
|
-
* Computes the intersection of two arrays using `Equal.
|
|
7536
|
+
* Computes the intersection of two arrays using `Equal.asEquivalence()`. Order is
|
|
7375
7537
|
* determined by the first array.
|
|
7376
7538
|
*
|
|
7377
7539
|
* **When to use**
|
|
@@ -7397,7 +7559,7 @@ export const intersection: {
|
|
|
7397
7559
|
*/
|
|
7398
7560
|
<B>(that: Iterable<B>): <A>(self: Iterable<A>) => Array<A & B>
|
|
7399
7561
|
/**
|
|
7400
|
-
* Computes the intersection of two arrays using `Equal.
|
|
7562
|
+
* Computes the intersection of two arrays using `Equal.asEquivalence()`. Order is
|
|
7401
7563
|
* determined by the first array.
|
|
7402
7564
|
*
|
|
7403
7565
|
* **When to use**
|
|
@@ -7449,7 +7611,7 @@ export const intersection: {
|
|
|
7449
7611
|
* Array.differenceWith<number>((a, b) => a === b)([1, 2, 3], [2, 3, 4]) // => [1]
|
|
7450
7612
|
* ```
|
|
7451
7613
|
*
|
|
7452
|
-
* @see {@link difference} for the `Equal.
|
|
7614
|
+
* @see {@link difference} for the `Equal.asEquivalence()` variant
|
|
7453
7615
|
* @see {@link unionWith} for keeping values from either array with custom equality
|
|
7454
7616
|
* @see {@link intersectionWith} for keeping values present in both arrays with custom equality
|
|
7455
7617
|
*
|
|
@@ -7473,12 +7635,12 @@ export const differenceWith = <A>(isEquivalent: (self: A, that: A) => boolean):
|
|
|
7473
7635
|
|
|
7474
7636
|
/**
|
|
7475
7637
|
* Computes elements in the first array that are not in the second, using
|
|
7476
|
-
* `Equal.
|
|
7638
|
+
* `Equal.asEquivalence()`.
|
|
7477
7639
|
*
|
|
7478
7640
|
* **When to use**
|
|
7479
7641
|
*
|
|
7480
7642
|
* Use when you need to keep values from the first array that are absent from
|
|
7481
|
-
* the second and the default `Equal.
|
|
7643
|
+
* the second and the default `Equal.asEquivalence()` comparison is appropriate.
|
|
7482
7644
|
*
|
|
7483
7645
|
* **Example** (Computing array differences)
|
|
7484
7646
|
*
|
|
@@ -7499,12 +7661,12 @@ export const differenceWith = <A>(isEquivalent: (self: A, that: A) => boolean):
|
|
|
7499
7661
|
export const difference: {
|
|
7500
7662
|
/**
|
|
7501
7663
|
* Computes elements in the first array that are not in the second, using
|
|
7502
|
-
* `Equal.
|
|
7664
|
+
* `Equal.asEquivalence()`.
|
|
7503
7665
|
*
|
|
7504
7666
|
* **When to use**
|
|
7505
7667
|
*
|
|
7506
7668
|
* Use when you need to keep values from the first array that are absent from
|
|
7507
|
-
* the second and the default `Equal.
|
|
7669
|
+
* the second and the default `Equal.asEquivalence()` comparison is appropriate.
|
|
7508
7670
|
*
|
|
7509
7671
|
* **Example** (Computing array differences)
|
|
7510
7672
|
*
|
|
@@ -7525,12 +7687,12 @@ export const difference: {
|
|
|
7525
7687
|
<A>(that: Iterable<A>): (self: Iterable<A>) => Array<A>
|
|
7526
7688
|
/**
|
|
7527
7689
|
* Computes elements in the first array that are not in the second, using
|
|
7528
|
-
* `Equal.
|
|
7690
|
+
* `Equal.asEquivalence()`.
|
|
7529
7691
|
*
|
|
7530
7692
|
* **When to use**
|
|
7531
7693
|
*
|
|
7532
7694
|
* Use when you need to keep values from the first array that are absent from
|
|
7533
|
-
* the second and the default `Equal.
|
|
7695
|
+
* the second and the default `Equal.asEquivalence()` comparison is appropriate.
|
|
7534
7696
|
*
|
|
7535
7697
|
* **Example** (Computing array differences)
|
|
7536
7698
|
*
|
|
@@ -9613,7 +9775,7 @@ export const dedupeWith: {
|
|
|
9613
9775
|
)
|
|
9614
9776
|
|
|
9615
9777
|
/**
|
|
9616
|
-
* Removes duplicates using `Equal.
|
|
9778
|
+
* Removes duplicates using `Equal.asEquivalence()`, preserving the order of the
|
|
9617
9779
|
* first occurrence.
|
|
9618
9780
|
*
|
|
9619
9781
|
* **When to use**
|
|
@@ -9753,7 +9915,7 @@ export const dedupeAdjacentWith: {
|
|
|
9753
9915
|
})
|
|
9754
9916
|
|
|
9755
9917
|
/**
|
|
9756
|
-
* Removes consecutive duplicate elements using `Equal.
|
|
9918
|
+
* Removes consecutive duplicate elements using `Equal.asEquivalence()`.
|
|
9757
9919
|
*
|
|
9758
9920
|
* **When to use**
|
|
9759
9921
|
*
|
package/src/Bytes.ts
ADDED
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Joins and compares byte sequences stored in `Uint8Array` values.
|
|
3
|
+
*
|
|
4
|
+
* Byte-to-text conversions live in `TextEncoder` / `TextDecoder`, and hex or
|
|
5
|
+
* base64 conversions live in the `Encoding` modules.
|
|
6
|
+
*
|
|
7
|
+
* @stability unstable
|
|
8
|
+
* @since 4.0.6
|
|
9
|
+
*/
|
|
10
|
+
import * as Equ from "./Equivalence.ts"
|
|
11
|
+
import * as order from "./Order.ts"
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Joins byte chunks into one new `Uint8Array`.
|
|
15
|
+
*
|
|
16
|
+
* **When to use**
|
|
17
|
+
*
|
|
18
|
+
* Use to combine frames, headers, or streamed chunks into a single buffer.
|
|
19
|
+
*
|
|
20
|
+
* **Gotchas**
|
|
21
|
+
*
|
|
22
|
+
* The result is always a new array, even when there is zero or one chunk, so
|
|
23
|
+
* it never aliases an input.
|
|
24
|
+
*
|
|
25
|
+
* **Example** (Joining byte chunks)
|
|
26
|
+
*
|
|
27
|
+
* ```ts import.meta.vitest
|
|
28
|
+
* import { Bytes } from "effect"
|
|
29
|
+
*
|
|
30
|
+
* const bytes = Bytes.concat([new Uint8Array([1, 2]), new Uint8Array([3])])
|
|
31
|
+
* Array.from(bytes) // => [1, 2, 3]
|
|
32
|
+
* ```
|
|
33
|
+
*
|
|
34
|
+
* @stability unstable
|
|
35
|
+
* @category combinators
|
|
36
|
+
* @since 4.0.6
|
|
37
|
+
*/
|
|
38
|
+
export const concat = (chunks: ReadonlyArray<Uint8Array>): Uint8Array<ArrayBuffer> => {
|
|
39
|
+
let length = 0
|
|
40
|
+
for (let i = 0; i < chunks.length; i++) {
|
|
41
|
+
length += chunks[i].length
|
|
42
|
+
}
|
|
43
|
+
const out = new Uint8Array(length)
|
|
44
|
+
let offset = 0
|
|
45
|
+
for (let i = 0; i < chunks.length; i++) {
|
|
46
|
+
out.set(chunks[i], offset)
|
|
47
|
+
offset += chunks[i].length
|
|
48
|
+
}
|
|
49
|
+
return out
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Compares byte sequences for equality, byte by byte.
|
|
54
|
+
*
|
|
55
|
+
* **Gotchas**
|
|
56
|
+
*
|
|
57
|
+
* This returns as soon as a byte differs, so it is not constant-time. Do not
|
|
58
|
+
* use it to compare secrets.
|
|
59
|
+
*
|
|
60
|
+
* **Example** (Comparing byte sequences)
|
|
61
|
+
*
|
|
62
|
+
* ```ts import.meta.vitest
|
|
63
|
+
* import { Bytes } from "effect"
|
|
64
|
+
*
|
|
65
|
+
* Bytes.Equivalence(new Uint8Array([1, 2]), new Uint8Array([1, 2])) // => true
|
|
66
|
+
* Bytes.Equivalence(new Uint8Array([1, 2]), new Uint8Array([1])) // => false
|
|
67
|
+
* ```
|
|
68
|
+
*
|
|
69
|
+
* @stability unstable
|
|
70
|
+
* @category instances
|
|
71
|
+
* @since 4.0.6
|
|
72
|
+
*/
|
|
73
|
+
export const Equivalence: Equ.Equivalence<Uint8Array> = Equ.make((self, that) => {
|
|
74
|
+
if (self.length !== that.length) {
|
|
75
|
+
return false
|
|
76
|
+
}
|
|
77
|
+
for (let i = 0; i < self.length; i++) {
|
|
78
|
+
if (self[i] !== that[i]) {
|
|
79
|
+
return false
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
return true
|
|
83
|
+
})
|
|
84
|
+
|
|
85
|
+
/**
|
|
86
|
+
* Orders byte sequences lexicographically by unsigned byte value, placing a
|
|
87
|
+
* prefix before any longer sequence that starts with it.
|
|
88
|
+
*
|
|
89
|
+
* **Example** (Sorting byte sequences)
|
|
90
|
+
*
|
|
91
|
+
* ```ts import.meta.vitest
|
|
92
|
+
* import { Bytes } from "effect"
|
|
93
|
+
*
|
|
94
|
+
* Bytes.Order(new Uint8Array([1, 2]), new Uint8Array([1, 3])) // => -1
|
|
95
|
+
* Bytes.Order(new Uint8Array([2]), new Uint8Array([1, 9])) // => 1
|
|
96
|
+
* Bytes.Order(new Uint8Array([1]), new Uint8Array([1, 0])) // => -1
|
|
97
|
+
* ```
|
|
98
|
+
*
|
|
99
|
+
* @stability unstable
|
|
100
|
+
* @category instances
|
|
101
|
+
* @since 4.0.6
|
|
102
|
+
*/
|
|
103
|
+
export const Order: order.Order<Uint8Array> = order.make((self, that) => {
|
|
104
|
+
const length = Math.min(self.length, that.length)
|
|
105
|
+
for (let i = 0; i < length; i++) {
|
|
106
|
+
if (self[i] !== that[i]) {
|
|
107
|
+
return self[i] < that[i] ? -1 : 1
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
return self.length < that.length ? -1 : self.length > that.length ? 1 : 0
|
|
111
|
+
})
|