effect 4.0.2 → 4.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +24 -0
- package/CLAUDE.md +24 -0
- package/ai-docs/package.json +2 -2
- package/ai-docs/src/52_graphql/10_basics.ts +111 -0
- package/ai-docs/src/52_graphql/20_testing.ts +45 -0
- package/ai-docs/src/52_graphql/30_batching.ts +116 -0
- package/ai-docs/src/52_graphql/40_aliased-batching.ts +122 -0
- package/ai-docs/src/52_graphql/50_errors-and-retries.ts +74 -0
- package/ai-docs/src/52_graphql/index.md +6 -0
- package/dist/Context.d.ts.map +1 -1
- package/dist/Context.js +12 -3
- package/dist/Context.js.map +1 -1
- package/dist/Crypto.d.ts +33 -5
- package/dist/Crypto.d.ts.map +1 -1
- package/dist/Crypto.js +8 -2
- package/dist/Crypto.js.map +1 -1
- package/dist/DateTime.d.ts +9 -6
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/DateTime.js +9 -6
- package/dist/DateTime.js.map +1 -1
- package/dist/Duration.d.ts +6 -6
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +27 -8
- package/dist/Duration.js.map +1 -1
- package/dist/FileSystem.d.ts +44 -2
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js.map +1 -1
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +4 -10
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Scheduler.d.ts +9 -0
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js +9 -0
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +481 -1
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +362 -4
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaGetter.d.ts +4 -0
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +52 -33
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js +38 -17
- package/dist/Sink.js.map +1 -1
- package/dist/Stdio.d.ts +7 -1
- package/dist/Stdio.d.ts.map +1 -1
- package/dist/Stdio.js +1 -0
- package/dist/Stdio.js.map +1 -1
- package/dist/Stream.d.ts +22 -11
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +21 -6
- package/dist/Stream.js.map +1 -1
- package/dist/Utils.js +8 -3
- package/dist/Utils.js.map +1 -1
- package/dist/ai/AnthropicStructuredOutput.js +0 -2
- package/dist/ai/AnthropicStructuredOutput.js.map +1 -1
- package/dist/ai/Chat.d.ts +2 -2
- package/dist/ai/Chat.d.ts.map +1 -1
- package/dist/ai/LanguageModel.d.ts +38 -7
- package/dist/ai/LanguageModel.d.ts.map +1 -1
- package/dist/ai/LanguageModel.js +25 -7
- package/dist/ai/LanguageModel.js.map +1 -1
- package/dist/ai/McpServer.d.ts +61 -0
- package/dist/ai/McpServer.d.ts.map +1 -1
- package/dist/ai/McpServer.js +196 -44
- package/dist/ai/McpServer.js.map +1 -1
- package/dist/ai/Prompt.d.ts.map +1 -1
- package/dist/ai/Prompt.js +28 -5
- package/dist/ai/Prompt.js.map +1 -1
- package/dist/ai/Response.d.ts +4 -3
- package/dist/ai/Response.d.ts.map +1 -1
- package/dist/ai/Response.js.map +1 -1
- package/dist/ai/internal/mcpProtocol/v2026_07_28.js +5 -0
- package/dist/ai/internal/mcpProtocol/v2026_07_28.js.map +1 -1
- package/dist/ai/internal/mcpProtocol.js.map +1 -1
- package/dist/ai/internal/mcpRuntime.js +1 -0
- package/dist/ai/internal/mcpRuntime.js.map +1 -1
- package/dist/cli/CliOutput.d.ts +27 -0
- package/dist/cli/CliOutput.d.ts.map +1 -1
- package/dist/cli/CliOutput.js +33 -10
- package/dist/cli/CliOutput.js.map +1 -1
- package/dist/cli/Command.d.ts.map +1 -1
- package/dist/cli/Command.js +6 -3
- package/dist/cli/Command.js.map +1 -1
- package/dist/cli/Completions.d.ts +3 -3
- package/dist/cli/Completions.d.ts.map +1 -1
- package/dist/cli/Completions.js +8 -5
- package/dist/cli/Completions.js.map +1 -1
- package/dist/cli/GlobalFlag.d.ts +5 -4
- 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/Prompt.d.ts +17 -1
- package/dist/cli/Prompt.d.ts.map +1 -1
- package/dist/cli/Prompt.js +119 -114
- package/dist/cli/Prompt.js.map +1 -1
- package/dist/cli/internal/ansi.d.ts +0 -1
- package/dist/cli/internal/ansi.d.ts.map +1 -1
- package/dist/cli/internal/ansi.js +20 -3
- package/dist/cli/internal/ansi.js.map +1 -1
- package/dist/cli/internal/completions/powershell.d.ts +2 -0
- package/dist/cli/internal/completions/powershell.d.ts.map +1 -0
- package/dist/cli/internal/completions/powershell.js +273 -0
- package/dist/cli/internal/completions/powershell.js.map +1 -0
- package/dist/cli/internal/completions/zsh.js +3 -2
- package/dist/cli/internal/completions/zsh.js.map +1 -1
- package/dist/cli/internal/wizard.d.ts +3 -3
- package/dist/cli/internal/wizard.d.ts.map +1 -1
- package/dist/cli/internal/wizard.js +21 -18
- package/dist/cli/internal/wizard.js.map +1 -1
- package/dist/cluster/ClusterSchema.d.ts +28 -0
- package/dist/cluster/ClusterSchema.d.ts.map +1 -1
- package/dist/cluster/ClusterSchema.js +30 -0
- package/dist/cluster/ClusterSchema.js.map +1 -1
- package/dist/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/cluster/ClusterWorkflowEngine.js +56 -26
- package/dist/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/cluster/MessageStorage.d.ts +18 -3
- package/dist/cluster/MessageStorage.d.ts.map +1 -1
- package/dist/cluster/MessageStorage.js +31 -11
- package/dist/cluster/MessageStorage.js.map +1 -1
- package/dist/cluster/Runners.d.ts.map +1 -1
- package/dist/cluster/Runners.js +8 -2
- package/dist/cluster/Runners.js.map +1 -1
- package/dist/cluster/Sharding.d.ts.map +1 -1
- package/dist/cluster/Sharding.js +187 -66
- package/dist/cluster/Sharding.js.map +1 -1
- package/dist/cluster/SqlMessageStorage.d.ts +59 -19
- package/dist/cluster/SqlMessageStorage.d.ts.map +1 -1
- package/dist/cluster/SqlMessageStorage.js +84 -55
- package/dist/cluster/SqlMessageStorage.js.map +1 -1
- package/dist/cluster/SqlRunnerStorage.d.ts +68 -19
- package/dist/cluster/SqlRunnerStorage.d.ts.map +1 -1
- package/dist/cluster/SqlRunnerStorage.js +191 -113
- package/dist/cluster/SqlRunnerStorage.js.map +1 -1
- package/dist/cluster/internal/entityManager.js +104 -37
- package/dist/cluster/internal/entityManager.js.map +1 -1
- package/dist/encoding/Sse.d.ts +6 -0
- package/dist/encoding/Sse.d.ts.map +1 -1
- package/dist/encoding/Sse.js +62 -70
- package/dist/encoding/Sse.js.map +1 -1
- package/dist/graphql/GraphQL.d.ts +349 -0
- package/dist/graphql/GraphQL.d.ts.map +1 -0
- package/dist/graphql/GraphQL.js +207 -0
- package/dist/graphql/GraphQL.js.map +1 -0
- package/dist/graphql/GraphQLClient.d.ts +562 -0
- package/dist/graphql/GraphQLClient.d.ts.map +1 -0
- package/dist/graphql/GraphQLClient.js +498 -0
- package/dist/graphql/GraphQLClient.js.map +1 -0
- package/dist/graphql/GraphQLClientError.d.ts +445 -0
- package/dist/graphql/GraphQLClientError.d.ts.map +1 -0
- package/dist/graphql/GraphQLClientError.js +479 -0
- package/dist/graphql/GraphQLClientError.js.map +1 -0
- package/dist/graphql/GraphQLGroup.d.ts +118 -0
- package/dist/graphql/GraphQLGroup.d.ts.map +1 -0
- package/dist/graphql/GraphQLGroup.js +109 -0
- package/dist/graphql/GraphQLGroup.js.map +1 -0
- package/dist/graphql/GraphQLMiddleware.d.ts +249 -0
- package/dist/graphql/GraphQLMiddleware.d.ts.map +1 -0
- package/dist/graphql/GraphQLMiddleware.js +130 -0
- package/dist/graphql/GraphQLMiddleware.js.map +1 -0
- package/dist/graphql/GraphQLProtocol.d.ts +731 -0
- package/dist/graphql/GraphQLProtocol.d.ts.map +1 -0
- package/dist/graphql/GraphQLProtocol.js +719 -0
- package/dist/graphql/GraphQLProtocol.js.map +1 -0
- package/dist/graphql/GraphQLResolver.d.ts +453 -0
- package/dist/graphql/GraphQLResolver.d.ts.map +1 -0
- package/dist/graphql/GraphQLResolver.js +552 -0
- package/dist/graphql/GraphQLResolver.js.map +1 -0
- package/dist/graphql/index.d.ts +40 -0
- package/dist/graphql/index.d.ts.map +1 -0
- package/dist/graphql/index.js +41 -0
- package/dist/graphql/index.js.map +1 -0
- package/dist/http/FindMyWay/internal/router.js +3 -6
- package/dist/http/FindMyWay/internal/router.js.map +1 -1
- package/dist/http/HttpClient.d.ts +21 -0
- package/dist/http/HttpClient.d.ts.map +1 -1
- package/dist/http/HttpClient.js +63 -12
- package/dist/http/HttpClient.js.map +1 -1
- package/dist/http/HttpEffect.d.ts.map +1 -1
- package/dist/http/HttpEffect.js +14 -7
- package/dist/http/HttpEffect.js.map +1 -1
- package/dist/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/http/HttpMiddleware.js +31 -32
- package/dist/http/HttpMiddleware.js.map +1 -1
- package/dist/http/HttpRouter.d.ts +35 -0
- package/dist/http/HttpRouter.d.ts.map +1 -1
- package/dist/http/HttpRouter.js +35 -0
- package/dist/http/HttpRouter.js.map +1 -1
- package/dist/http/HttpServerResponse.d.ts +8 -6
- package/dist/http/HttpServerResponse.d.ts.map +1 -1
- package/dist/http/HttpServerResponse.js +27 -16
- package/dist/http/HttpServerResponse.js.map +1 -1
- package/dist/http/HttpTraceContext.d.ts.map +1 -1
- package/dist/http/HttpTraceContext.js +4 -2
- package/dist/http/HttpTraceContext.js.map +1 -1
- package/dist/http/Multipart.d.ts.map +1 -1
- package/dist/http/Multipart.js +15 -1
- package/dist/http/Multipart.js.map +1 -1
- package/dist/http-api/HttpApiScalar.d.ts +5 -0
- package/dist/http-api/HttpApiScalar.d.ts.map +1 -1
- package/dist/http-api/HttpApiScalar.js.map +1 -1
- package/dist/internal/dateTime.js +40 -35
- package/dist/internal/dateTime.js.map +1 -1
- package/dist/internal/effect.js +19 -9
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/graphql.d.ts +2 -0
- package/dist/internal/graphql.d.ts.map +1 -0
- package/dist/internal/graphql.js +195 -0
- package/dist/internal/graphql.js.map +1 -0
- package/dist/internal/graphqlHeaders.d.ts +4 -0
- package/dist/internal/graphqlHeaders.d.ts.map +1 -0
- package/dist/internal/graphqlHeaders.js +11 -0
- package/dist/internal/graphqlHeaders.js.map +1 -0
- package/dist/internal/request.js +20 -1
- package/dist/internal/request.js.map +1 -1
- package/dist/internal/schema/toCodeDocument.js +4 -1
- package/dist/internal/schema/toCodeDocument.js.map +1 -1
- package/dist/internal/schema/toJsonSchemaDocument.js +29 -5
- package/dist/internal/schema/toJsonSchemaDocument.js.map +1 -1
- package/dist/internal/version.js +1 -1
- package/dist/net/AddressResolver.d.ts +145 -0
- package/dist/net/AddressResolver.d.ts.map +1 -0
- package/dist/net/AddressResolver.js +114 -0
- package/dist/net/AddressResolver.js.map +1 -0
- package/dist/net/Dns.d.ts +596 -0
- package/dist/net/Dns.d.ts.map +1 -0
- package/dist/net/Dns.js +549 -0
- package/dist/net/Dns.js.map +1 -0
- package/dist/net/Host.d.ts +369 -0
- package/dist/net/Host.d.ts.map +1 -0
- package/dist/net/Host.js +397 -0
- package/dist/net/Host.js.map +1 -0
- package/dist/net/IpInterface.d.ts +76 -3
- package/dist/net/IpInterface.d.ts.map +1 -1
- package/dist/net/IpInterface.js +53 -4
- package/dist/net/IpInterface.js.map +1 -1
- package/dist/net/IpNetwork.d.ts +82 -8
- package/dist/net/IpNetwork.d.ts.map +1 -1
- package/dist/net/IpNetwork.js +60 -4
- package/dist/net/IpNetwork.js.map +1 -1
- package/dist/net/NetAddress.d.ts +396 -35
- package/dist/net/NetAddress.d.ts.map +1 -1
- package/dist/net/NetAddress.js +358 -34
- package/dist/net/NetAddress.js.map +1 -1
- package/dist/net/index.d.ts +15 -0
- package/dist/net/index.d.ts.map +1 -1
- package/dist/net/index.js +15 -0
- package/dist/net/index.js.map +1 -1
- package/dist/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/observability/OtlpMetrics.js +15 -21
- package/dist/observability/OtlpMetrics.js.map +1 -1
- package/dist/observability/PrometheusMetrics.js +1 -0
- package/dist/observability/PrometheusMetrics.js.map +1 -1
- package/dist/persistence/PersistedQueue.d.ts +32 -3
- package/dist/persistence/PersistedQueue.d.ts.map +1 -1
- package/dist/persistence/PersistedQueue.js +75 -16
- package/dist/persistence/PersistedQueue.js.map +1 -1
- package/dist/rpc/RpcClient.d.ts +22 -6
- package/dist/rpc/RpcClient.d.ts.map +1 -1
- package/dist/rpc/RpcClient.js +12 -5
- package/dist/rpc/RpcClient.js.map +1 -1
- package/dist/rpc/RpcServer.d.ts +6 -0
- package/dist/rpc/RpcServer.d.ts.map +1 -1
- package/dist/rpc/RpcServer.js +78 -29
- package/dist/rpc/RpcServer.js.map +1 -1
- package/dist/socket/DatagramSocket.d.ts +456 -0
- package/dist/socket/DatagramSocket.d.ts.map +1 -0
- package/dist/socket/DatagramSocket.js +535 -0
- package/dist/socket/DatagramSocket.js.map +1 -0
- package/dist/socket/Socket.d.ts +20 -1
- package/dist/socket/Socket.d.ts.map +1 -1
- package/dist/socket/Socket.js +9 -1
- package/dist/socket/Socket.js.map +1 -1
- package/dist/socket/index.d.ts +5 -0
- package/dist/socket/index.d.ts.map +1 -1
- package/dist/socket/index.js +5 -0
- package/dist/socket/index.js.map +1 -1
- package/dist/sql/Migrator.d.ts.map +1 -1
- package/dist/sql/Migrator.js +7 -2
- package/dist/sql/Migrator.js.map +1 -1
- package/dist/sql/SqlClient.d.ts +7 -1
- package/dist/sql/SqlClient.d.ts.map +1 -1
- package/dist/sql/SqlClient.js +31 -6
- package/dist/sql/SqlClient.js.map +1 -1
- package/dist/testing/TestCrypto.d.ts +73 -0
- package/dist/testing/TestCrypto.d.ts.map +1 -0
- package/dist/testing/TestCrypto.js +87 -0
- package/dist/testing/TestCrypto.js.map +1 -0
- package/dist/testing/index.d.ts +5 -0
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +5 -0
- package/dist/testing/index.js.map +1 -1
- package/dist/workflow/DurableDeferred.d.ts +54 -0
- package/dist/workflow/DurableDeferred.d.ts.map +1 -1
- package/dist/workflow/DurableDeferred.js +108 -50
- package/dist/workflow/DurableDeferred.js.map +1 -1
- package/dist/workflow/WorkflowEngine.d.ts +24 -2
- package/dist/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/workflow/WorkflowEngine.js +13 -3
- package/dist/workflow/WorkflowEngine.js.map +1 -1
- package/package.json +6 -3
- package/src/Context.ts +12 -3
- package/src/Crypto.ts +43 -9
- package/src/DateTime.ts +9 -6
- package/src/Duration.ts +36 -16
- package/src/FileSystem.ts +48 -2
- package/src/RequestResolver.ts +4 -10
- package/src/Scheduler.ts +9 -0
- package/src/Schema.ts +677 -5
- package/src/SchemaGetter.ts +47 -35
- package/src/Sink.ts +45 -18
- package/src/Stdio.ts +9 -2
- package/src/Stream.ts +44 -15
- package/src/Utils.ts +8 -5
- package/src/ai/AnthropicStructuredOutput.ts +2 -2
- package/src/ai/Chat.ts +2 -2
- package/src/ai/LanguageModel.ts +96 -24
- package/src/ai/McpServer.ts +288 -94
- package/src/ai/Prompt.ts +24 -10
- package/src/ai/Response.ts +6 -3
- package/src/ai/internal/mcpProtocol/v2026_07_28.ts +5 -0
- package/src/ai/internal/mcpProtocol.ts +3 -0
- package/src/ai/internal/mcpRuntime.ts +2 -0
- package/src/cli/CliOutput.ts +33 -16
- package/src/cli/Command.ts +4 -3
- package/src/cli/Completions.ts +9 -6
- package/src/cli/GlobalFlag.ts +19 -11
- package/src/cli/Prompt.ts +159 -149
- package/src/cli/internal/ansi.ts +26 -3
- package/src/cli/internal/completions/powershell.ts +322 -0
- package/src/cli/internal/completions/zsh.ts +4 -2
- package/src/cli/internal/wizard.ts +34 -26
- package/src/cluster/ClusterSchema.ts +32 -0
- package/src/cluster/ClusterWorkflowEngine.ts +64 -36
- package/src/cluster/MessageStorage.ts +45 -14
- package/src/cluster/Runners.ts +8 -2
- package/src/cluster/Sharding.ts +219 -58
- package/src/cluster/SqlMessageStorage.ts +118 -84
- package/src/cluster/SqlRunnerStorage.ts +224 -128
- package/src/cluster/internal/entityManager.ts +151 -55
- package/src/encoding/Sse.ts +69 -79
- package/src/graphql/GraphQL.ts +494 -0
- package/src/graphql/GraphQLClient.ts +912 -0
- package/src/graphql/GraphQLClientError.ts +542 -0
- package/src/graphql/GraphQLGroup.ts +167 -0
- package/src/graphql/GraphQLMiddleware.ts +253 -0
- package/src/graphql/GraphQLProtocol.ts +1286 -0
- package/src/graphql/GraphQLResolver.ts +1010 -0
- package/src/graphql/index.ts +48 -0
- package/src/http/FindMyWay/internal/router.ts +4 -7
- package/src/http/HttpClient.ts +110 -12
- package/src/http/HttpEffect.ts +11 -5
- package/src/http/HttpMiddleware.ts +33 -34
- package/src/http/HttpRouter.ts +35 -0
- package/src/http/HttpServerResponse.ts +28 -16
- package/src/http/HttpTraceContext.ts +8 -2
- package/src/http/Multipart.ts +17 -1
- package/src/http-api/HttpApiScalar.ts +5 -0
- package/src/internal/dateTime.ts +13 -10
- package/src/internal/effect.ts +22 -15
- package/src/internal/graphql.ts +263 -0
- package/src/internal/graphqlHeaders.ts +11 -0
- package/src/internal/request.ts +31 -3
- package/src/internal/schema/toCodeDocument.ts +7 -1
- package/src/internal/schema/toJsonSchemaDocument.ts +34 -2
- package/src/internal/version.ts +1 -1
- package/src/net/AddressResolver.ts +222 -0
- package/src/net/Dns.ts +1035 -0
- package/src/net/Host.ts +544 -0
- package/src/net/IpInterface.ts +117 -7
- package/src/net/IpNetwork.ts +116 -17
- package/src/net/NetAddress.ts +620 -76
- package/src/net/index.ts +18 -0
- package/src/observability/OtlpMetrics.ts +12 -23
- package/src/observability/PrometheusMetrics.ts +1 -0
- package/src/persistence/PersistedQueue.ts +146 -53
- package/src/rpc/RpcClient.ts +41 -19
- package/src/rpc/RpcServer.ts +115 -40
- package/src/socket/DatagramSocket.ts +919 -0
- package/src/socket/Socket.ts +28 -2
- package/src/socket/index.ts +6 -0
- package/src/sql/Migrator.ts +21 -5
- package/src/sql/SqlClient.ts +39 -15
- package/src/testing/TestCrypto.ts +94 -0
- package/src/testing/index.ts +6 -0
- package/src/workflow/DurableDeferred.ts +160 -47
- package/src/workflow/WorkflowEngine.ts +50 -5
|
@@ -0,0 +1,369 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Host names and unresolved host and port endpoints.
|
|
3
|
+
*
|
|
4
|
+
* A `Host` is either a numeric IP address, an IPv6 literal with a zone such as
|
|
5
|
+
* `fe80::1%eth0`, or a DNS domain name. Numeric addresses are parsed directly
|
|
6
|
+
* into `NetAddress` values. The `AddressResolver` service turns a `HostPort`
|
|
7
|
+
* into internet addresses, looking up domain names with the `Dns` service.
|
|
8
|
+
*
|
|
9
|
+
* @stability experimental
|
|
10
|
+
* @since 4.0.0
|
|
11
|
+
*/
|
|
12
|
+
import type * as Arr from "../Array.ts";
|
|
13
|
+
import type * as Brand from "../Brand.ts";
|
|
14
|
+
import * as Equal from "../Equal.ts";
|
|
15
|
+
import * as Hash from "../Hash.ts";
|
|
16
|
+
import * as Inspectable from "../Inspectable.ts";
|
|
17
|
+
import * as Result from "../Result.ts";
|
|
18
|
+
import * as NetAddress from "./NetAddress.ts";
|
|
19
|
+
declare const TypeId: "~effect/net/Host";
|
|
20
|
+
/**
|
|
21
|
+
* A syntactically valid DNS domain name in lowercase ASCII form.
|
|
22
|
+
*
|
|
23
|
+
* **Details**
|
|
24
|
+
*
|
|
25
|
+
* Names follow the rules used by Go's resolver: at most 253 characters, labels
|
|
26
|
+
* of 1 to 63 letters, digits, hyphens, or underscores, and no label starting or
|
|
27
|
+
* ending with a hyphen. Underscores are allowed so that service names such as
|
|
28
|
+
* `_http._tcp.example.com` are valid. The last label must not be numeric, which
|
|
29
|
+
* keeps IPv4-like strings out. A trailing dot marks a fully qualified name and
|
|
30
|
+
* is preserved. The root name `.` is valid.
|
|
31
|
+
*
|
|
32
|
+
* Internationalized names are stored in their ASCII (`xn--`) form.
|
|
33
|
+
*
|
|
34
|
+
* @see {@link domainNameFromString} for parsing and normalizing domain names
|
|
35
|
+
* @stability experimental
|
|
36
|
+
* @category models
|
|
37
|
+
* @since 4.0.0
|
|
38
|
+
*/
|
|
39
|
+
export type DomainName = Brand.Branded<string, "~effect/net/Host/DomainName">;
|
|
40
|
+
/**
|
|
41
|
+
* A domain name or a string to parse and normalize.
|
|
42
|
+
*
|
|
43
|
+
* @stability experimental
|
|
44
|
+
* @category models
|
|
45
|
+
* @since 4.0.0
|
|
46
|
+
*/
|
|
47
|
+
export type DomainNameInput = DomainName | string;
|
|
48
|
+
/**
|
|
49
|
+
* A host as written in configuration or a URL authority: a numeric IP address,
|
|
50
|
+
* a scoped IPv6 literal, or a domain name.
|
|
51
|
+
*
|
|
52
|
+
* @see {@link hostFromString} for parsing hosts
|
|
53
|
+
* @stability experimental
|
|
54
|
+
* @category models
|
|
55
|
+
* @since 4.0.0
|
|
56
|
+
*/
|
|
57
|
+
export type Host = NetAddress.IpAddress | NetAddress.ScopedIpv6Literal | DomainName;
|
|
58
|
+
/**
|
|
59
|
+
* A host, or a string or any `IpAddressInput` to convert to one.
|
|
60
|
+
*
|
|
61
|
+
* @stability experimental
|
|
62
|
+
* @category models
|
|
63
|
+
* @since 4.0.0
|
|
64
|
+
*/
|
|
65
|
+
export type HostInput = Host | NetAddress.IpAddressInput;
|
|
66
|
+
/**
|
|
67
|
+
* An unresolved host and port.
|
|
68
|
+
*
|
|
69
|
+
* @see {@link hostPortFromString} for parsing `host:port` strings
|
|
70
|
+
* @see {@link formatHostPort} for formatting `host:port` strings
|
|
71
|
+
* @stability experimental
|
|
72
|
+
* @category models
|
|
73
|
+
* @since 4.0.0
|
|
74
|
+
*/
|
|
75
|
+
export interface HostPort extends Equal.Equal, Hash.Hash, Inspectable.Inspectable {
|
|
76
|
+
readonly _tag: "HostPort";
|
|
77
|
+
readonly host: Host;
|
|
78
|
+
readonly port: number;
|
|
79
|
+
readonly [TypeId]: typeof TypeId;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* The host and port of an endpoint.
|
|
83
|
+
*
|
|
84
|
+
* @see {@link hostPort} for the checked constructor
|
|
85
|
+
* @stability experimental
|
|
86
|
+
* @category models
|
|
87
|
+
* @since 4.0.0
|
|
88
|
+
*/
|
|
89
|
+
export interface HostPortParts {
|
|
90
|
+
readonly host: HostInput;
|
|
91
|
+
readonly port: number;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* An endpoint, or a `host:port` string or parts to convert to one.
|
|
95
|
+
*
|
|
96
|
+
* @stability experimental
|
|
97
|
+
* @category models
|
|
98
|
+
* @since 4.0.0
|
|
99
|
+
*/
|
|
100
|
+
export type HostPortInput = HostPort | string | HostPortParts;
|
|
101
|
+
/**
|
|
102
|
+
* Returns `true` when a value is a valid, normalized domain name.
|
|
103
|
+
*
|
|
104
|
+
* @stability experimental
|
|
105
|
+
* @category guards
|
|
106
|
+
* @since 4.0.0
|
|
107
|
+
*/
|
|
108
|
+
export declare const isDomainName: (u: unknown) => u is DomainName;
|
|
109
|
+
/**
|
|
110
|
+
* Returns `true` when a value is a host.
|
|
111
|
+
*
|
|
112
|
+
* @stability experimental
|
|
113
|
+
* @category guards
|
|
114
|
+
* @since 4.0.0
|
|
115
|
+
*/
|
|
116
|
+
export declare const isHost: (u: unknown) => u is Host;
|
|
117
|
+
/**
|
|
118
|
+
* Returns `true` when a value is an unresolved host and port.
|
|
119
|
+
*
|
|
120
|
+
* @stability experimental
|
|
121
|
+
* @category guards
|
|
122
|
+
* @since 4.0.0
|
|
123
|
+
*/
|
|
124
|
+
export declare const isHostPort: (u: unknown) => u is HostPort;
|
|
125
|
+
/**
|
|
126
|
+
* Parses and normalizes a domain name.
|
|
127
|
+
*
|
|
128
|
+
* **Details**
|
|
129
|
+
*
|
|
130
|
+
* ASCII names are lowercased. Names containing non-ASCII characters are
|
|
131
|
+
* converted to their ASCII (`xn--`) form using the WHATWG URL host parser, then
|
|
132
|
+
* validated with the same rules as ASCII names. A trailing dot is preserved.
|
|
133
|
+
*
|
|
134
|
+
* **Example** (Normalizing domain names)
|
|
135
|
+
*
|
|
136
|
+
* ```ts import.meta.vitest
|
|
137
|
+
* import { Result } from "effect"
|
|
138
|
+
* import { Host } from "effect/net"
|
|
139
|
+
*
|
|
140
|
+
* Result.getOrThrow(Host.domainNameFromString("Example.COM")) // => "example.com"
|
|
141
|
+
* Result.getOrThrow(Host.domainNameFromString("bücher.example")) // => "xn--bcher-kva.example"
|
|
142
|
+
* Result.isFailure(Host.domainNameFromString("1.2.3.4")) // => true
|
|
143
|
+
* ```
|
|
144
|
+
*
|
|
145
|
+
* @stability experimental
|
|
146
|
+
* @category decoding
|
|
147
|
+
* @since 4.0.0
|
|
148
|
+
*/
|
|
149
|
+
export declare const domainNameFromString: (input: string) => Result.Result<DomainName, NetAddress.NetAddressError>;
|
|
150
|
+
/**
|
|
151
|
+
* Parses a trusted domain name, throwing on failure.
|
|
152
|
+
*
|
|
153
|
+
* @stability experimental
|
|
154
|
+
* @category unsafe
|
|
155
|
+
* @since 4.0.0
|
|
156
|
+
*/
|
|
157
|
+
export declare const domainNameFromStringUnsafe: (input: string) => DomainName;
|
|
158
|
+
/**
|
|
159
|
+
* Converts a `DomainNameInput` to a domain name, parsing and normalizing it like
|
|
160
|
+
* `domainNameFromString`.
|
|
161
|
+
*
|
|
162
|
+
* **Details**
|
|
163
|
+
*
|
|
164
|
+
* Domain names are strings, so every input is parsed.
|
|
165
|
+
*
|
|
166
|
+
* @stability experimental
|
|
167
|
+
* @category constructors
|
|
168
|
+
* @since 4.0.0
|
|
169
|
+
*/
|
|
170
|
+
export declare const domainNameFromInput: (input: DomainNameInput) => Result.Result<DomainName, NetAddress.NetAddressError>;
|
|
171
|
+
/**
|
|
172
|
+
* Converts a trusted `DomainNameInput` to a domain name, throwing on failure.
|
|
173
|
+
*
|
|
174
|
+
* @stability experimental
|
|
175
|
+
* @category unsafe
|
|
176
|
+
* @since 4.0.0
|
|
177
|
+
*/
|
|
178
|
+
export declare const domainNameFromInputUnsafe: (input: DomainNameInput) => DomainName;
|
|
179
|
+
/**
|
|
180
|
+
* Parses a host as a numeric IP address, a scoped IPv6 literal, or a domain
|
|
181
|
+
* name, in that order.
|
|
182
|
+
*
|
|
183
|
+
* **Example** (Parsing hosts)
|
|
184
|
+
*
|
|
185
|
+
* ```ts import.meta.vitest
|
|
186
|
+
* import { Result } from "effect"
|
|
187
|
+
* import { Host, NetAddress } from "effect/net"
|
|
188
|
+
*
|
|
189
|
+
* NetAddress.isIpAddress(Result.getOrThrow(Host.hostFromString("10.0.0.5"))) // => true
|
|
190
|
+
* Result.getOrThrow(Host.hostFromString("fe80::1%eth0")) // => "fe80::1%eth0"
|
|
191
|
+
* Result.getOrThrow(Host.hostFromString("DB.internal")) // => "db.internal"
|
|
192
|
+
* ```
|
|
193
|
+
*
|
|
194
|
+
* @stability experimental
|
|
195
|
+
* @category decoding
|
|
196
|
+
* @since 4.0.0
|
|
197
|
+
*/
|
|
198
|
+
export declare const hostFromString: (input: string) => Result.Result<Host, NetAddress.NetAddressError>;
|
|
199
|
+
/**
|
|
200
|
+
* Parses a trusted host, throwing on failure.
|
|
201
|
+
*
|
|
202
|
+
* @stability experimental
|
|
203
|
+
* @category unsafe
|
|
204
|
+
* @since 4.0.0
|
|
205
|
+
*/
|
|
206
|
+
export declare const hostFromStringUnsafe: (input: string) => Host;
|
|
207
|
+
/**
|
|
208
|
+
* Converts a `HostInput` to a host, parsing strings like `hostFromString` and
|
|
209
|
+
* converting other inputs like `NetAddress.ipFromInput`.
|
|
210
|
+
*
|
|
211
|
+
* @stability experimental
|
|
212
|
+
* @category constructors
|
|
213
|
+
* @since 4.0.0
|
|
214
|
+
*/
|
|
215
|
+
export declare const hostFromInput: (input: HostInput) => Result.Result<Host, NetAddress.NetAddressError>;
|
|
216
|
+
/**
|
|
217
|
+
* Converts a trusted `HostInput` to a host, throwing on failure.
|
|
218
|
+
*
|
|
219
|
+
* @stability experimental
|
|
220
|
+
* @category unsafe
|
|
221
|
+
* @since 4.0.0
|
|
222
|
+
*/
|
|
223
|
+
export declare const hostFromInputUnsafe: (input: HostInput) => Host;
|
|
224
|
+
/**
|
|
225
|
+
* Formats a host without brackets.
|
|
226
|
+
*
|
|
227
|
+
* @stability experimental
|
|
228
|
+
* @category encoding
|
|
229
|
+
* @since 4.0.0
|
|
230
|
+
*/
|
|
231
|
+
export declare const formatHost: (self: Host) => string;
|
|
232
|
+
/**
|
|
233
|
+
* Returns `true` when a domain name ends with a dot, which excludes it from
|
|
234
|
+
* resolver search domains.
|
|
235
|
+
*
|
|
236
|
+
* @stability experimental
|
|
237
|
+
* @category predicates
|
|
238
|
+
* @since 4.0.0
|
|
239
|
+
*/
|
|
240
|
+
export declare const isFullyQualified: (self: DomainName) => boolean;
|
|
241
|
+
/**
|
|
242
|
+
* Appends the trailing dot to a domain name, unless it is already fully
|
|
243
|
+
* qualified.
|
|
244
|
+
*
|
|
245
|
+
* @stability experimental
|
|
246
|
+
* @category converting
|
|
247
|
+
* @since 4.0.0
|
|
248
|
+
*/
|
|
249
|
+
export declare const toFullyQualified: (self: DomainName) => DomainName;
|
|
250
|
+
/**
|
|
251
|
+
* Removes the trailing dot of a fully qualified domain name, except from the
|
|
252
|
+
* root name `.`.
|
|
253
|
+
*
|
|
254
|
+
* @stability experimental
|
|
255
|
+
* @category converting
|
|
256
|
+
* @since 4.0.0
|
|
257
|
+
*/
|
|
258
|
+
export declare const toRelative: (self: DomainName) => DomainName;
|
|
259
|
+
/**
|
|
260
|
+
* Creates a checked host and port.
|
|
261
|
+
*
|
|
262
|
+
* @stability experimental
|
|
263
|
+
* @category constructors
|
|
264
|
+
* @since 4.0.0
|
|
265
|
+
*/
|
|
266
|
+
export declare const hostPort: (host: Host, port: number) => Result.Result<HostPort, NetAddress.NetAddressError>;
|
|
267
|
+
/**
|
|
268
|
+
* Creates a trusted host and port, throwing on failure.
|
|
269
|
+
*
|
|
270
|
+
* @stability experimental
|
|
271
|
+
* @category unsafe
|
|
272
|
+
* @since 4.0.0
|
|
273
|
+
*/
|
|
274
|
+
export declare const hostPortUnsafe: (host: Host, port: number) => HostPort;
|
|
275
|
+
/**
|
|
276
|
+
* Parses `host:port`, `[IPv6]:port`, or `[IPv6%zone]:port`.
|
|
277
|
+
*
|
|
278
|
+
* **Details**
|
|
279
|
+
*
|
|
280
|
+
* IPv6 hosts must be bracketed and other hosts must not be. The port is
|
|
281
|
+
* required and must be an unpadded decimal integer from 0 through 65535. A
|
|
282
|
+
* zone follows the `%` directly; the percent-encoded `%25` separator of RFC
|
|
283
|
+
* 6874 URLs is not decoded, because `[fe80::1%253]:80` would be ambiguous.
|
|
284
|
+
*
|
|
285
|
+
* **Example** (Parsing host and port strings)
|
|
286
|
+
*
|
|
287
|
+
* ```ts import.meta.vitest
|
|
288
|
+
* import { Result } from "effect"
|
|
289
|
+
* import { Host } from "effect/net"
|
|
290
|
+
*
|
|
291
|
+
* const endpoint = Result.getOrThrow(Host.hostPortFromString("DB.internal:5432"))
|
|
292
|
+
* endpoint.host // => "db.internal"
|
|
293
|
+
* endpoint.port // => 5432
|
|
294
|
+
* Host.formatHostPort(Result.getOrThrow(Host.hostPortFromString("[::1]:80"))) // => "[::1]:80"
|
|
295
|
+
* ```
|
|
296
|
+
*
|
|
297
|
+
* @see {@link formatHostPort} for the inverse operation
|
|
298
|
+
* @stability experimental
|
|
299
|
+
* @category decoding
|
|
300
|
+
* @since 4.0.0
|
|
301
|
+
*/
|
|
302
|
+
export declare const hostPortFromString: (input: string) => Result.Result<HostPort, NetAddress.NetAddressError>;
|
|
303
|
+
/**
|
|
304
|
+
* Parses a trusted `host:port` string, throwing on failure.
|
|
305
|
+
*
|
|
306
|
+
* @stability experimental
|
|
307
|
+
* @category unsafe
|
|
308
|
+
* @since 4.0.0
|
|
309
|
+
*/
|
|
310
|
+
export declare const hostPortFromStringUnsafe: (input: string) => HostPort;
|
|
311
|
+
/**
|
|
312
|
+
* Converts a `HostPortInput` to an endpoint, parsing strings like
|
|
313
|
+
* `hostPortFromString`, converting parts like `hostPort`, and returning
|
|
314
|
+
* endpoints unchanged.
|
|
315
|
+
*
|
|
316
|
+
* @stability experimental
|
|
317
|
+
* @category constructors
|
|
318
|
+
* @since 4.0.0
|
|
319
|
+
*/
|
|
320
|
+
export declare const hostPortFromInput: (input: HostPortInput) => Result.Result<HostPort, NetAddress.NetAddressError>;
|
|
321
|
+
/**
|
|
322
|
+
* Converts a trusted `HostPortInput` to an endpoint, throwing on failure.
|
|
323
|
+
*
|
|
324
|
+
* @stability experimental
|
|
325
|
+
* @category unsafe
|
|
326
|
+
* @since 4.0.0
|
|
327
|
+
*/
|
|
328
|
+
export declare const hostPortFromInputUnsafe: (input: HostPortInput) => HostPort;
|
|
329
|
+
/**
|
|
330
|
+
* Formats a host and port, bracketing IPv6 hosts.
|
|
331
|
+
*
|
|
332
|
+
* @see {@link hostPortFromString} for the inverse operation
|
|
333
|
+
* @stability experimental
|
|
334
|
+
* @category encoding
|
|
335
|
+
* @since 4.0.0
|
|
336
|
+
*/
|
|
337
|
+
export declare const formatHostPort: (self: HostPort) => string;
|
|
338
|
+
/**
|
|
339
|
+
* The addresses of host names, as read from a hosts file.
|
|
340
|
+
*
|
|
341
|
+
* @see {@link parseHostsFile} for reading a hosts file
|
|
342
|
+
* @stability experimental
|
|
343
|
+
* @category models
|
|
344
|
+
* @since 4.0.0
|
|
345
|
+
*/
|
|
346
|
+
export type HostsTable = ReadonlyMap<DomainName, Arr.NonEmptyReadonlyArray<NetAddress.IpAddress>>;
|
|
347
|
+
/**
|
|
348
|
+
* Parses a hosts file into the addresses of each host name. Invalid entries
|
|
349
|
+
* are skipped.
|
|
350
|
+
*
|
|
351
|
+
* **Example** (Parsing a hosts file)
|
|
352
|
+
*
|
|
353
|
+
* ```ts import.meta.vitest
|
|
354
|
+
* import { Host, NetAddress } from "effect/net"
|
|
355
|
+
*
|
|
356
|
+
* const hosts = Host.parseHostsFile(`
|
|
357
|
+
* 127.0.0.1 localhost
|
|
358
|
+
* ::1 localhost ip6-localhost # loopback
|
|
359
|
+
* `)
|
|
360
|
+
* hosts.get(Host.domainNameFromStringUnsafe("localhost"))?.map(NetAddress.formatIp) // => ["127.0.0.1", "::1"]
|
|
361
|
+
* ```
|
|
362
|
+
*
|
|
363
|
+
* @stability experimental
|
|
364
|
+
* @category decoding
|
|
365
|
+
* @since 4.0.0
|
|
366
|
+
*/
|
|
367
|
+
export declare const parseHostsFile: (text: string) => HostsTable;
|
|
368
|
+
export {};
|
|
369
|
+
//# sourceMappingURL=Host.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Host.d.ts","sourceRoot":"","sources":["../../src/net/Host.ts"],"names":[],"mappings":"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"}
|