effect 4.0.4 → 4.0.5

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.
Files changed (308) hide show
  1. package/ai-docs/src/52_graphql/10_basics.ts +19 -13
  2. package/ai-docs/src/52_graphql/30_batching.ts +6 -4
  3. package/ai-docs/src/52_graphql/40_aliased-batching.ts +6 -4
  4. package/dist/Array.d.ts +90 -6
  5. package/dist/Array.d.ts.map +1 -1
  6. package/dist/Array.js +4 -2
  7. package/dist/Array.js.map +1 -1
  8. package/dist/Channel.d.ts +6 -1
  9. package/dist/Channel.d.ts.map +1 -1
  10. package/dist/Channel.js +17 -3
  11. package/dist/Channel.js.map +1 -1
  12. package/dist/ConfigProvider.d.ts.map +1 -1
  13. package/dist/ConfigProvider.js +33 -32
  14. package/dist/ConfigProvider.js.map +1 -1
  15. package/dist/Duration.d.ts.map +1 -1
  16. package/dist/Duration.js +2 -5
  17. package/dist/Duration.js.map +1 -1
  18. package/dist/Effect.d.ts +61 -19
  19. package/dist/Effect.d.ts.map +1 -1
  20. package/dist/Effect.js +58 -39
  21. package/dist/Effect.js.map +1 -1
  22. package/dist/FileSystem.d.ts +23 -9
  23. package/dist/FileSystem.d.ts.map +1 -1
  24. package/dist/FileSystem.js.map +1 -1
  25. package/dist/Match.d.ts +20 -6
  26. package/dist/Match.d.ts.map +1 -1
  27. package/dist/Match.js +2 -2
  28. package/dist/Match.js.map +1 -1
  29. package/dist/Path.d.ts +37 -5
  30. package/dist/Path.d.ts.map +1 -1
  31. package/dist/Path.js +36 -5
  32. package/dist/Path.js.map +1 -1
  33. package/dist/Schema.d.ts +7 -2
  34. package/dist/Schema.d.ts.map +1 -1
  35. package/dist/Schema.js +9 -2
  36. package/dist/Schema.js.map +1 -1
  37. package/dist/String.d.ts +12 -0
  38. package/dist/String.d.ts.map +1 -1
  39. package/dist/String.js +17 -4
  40. package/dist/String.js.map +1 -1
  41. package/dist/TxRef.d.ts.map +1 -1
  42. package/dist/TxRef.js +3 -2
  43. package/dist/TxRef.js.map +1 -1
  44. package/dist/ai/AiError.d.ts +10 -10
  45. package/dist/ai/AiError.d.ts.map +1 -1
  46. package/dist/ai/AiError.js +1 -1
  47. package/dist/ai/AiError.js.map +1 -1
  48. package/dist/ai/Decision.d.ts +70 -19
  49. package/dist/ai/Decision.d.ts.map +1 -1
  50. package/dist/ai/Decision.js +37 -3
  51. package/dist/ai/Decision.js.map +1 -1
  52. package/dist/ai/DecisionModel.js +1 -1
  53. package/dist/ai/DecisionModel.js.map +1 -1
  54. package/dist/ai/LanguageModel.d.ts.map +1 -1
  55. package/dist/ai/LanguageModel.js +47 -35
  56. package/dist/ai/LanguageModel.js.map +1 -1
  57. package/dist/ai/McpServer.d.ts +6 -52
  58. package/dist/ai/McpServer.d.ts.map +1 -1
  59. package/dist/ai/McpServer.js +2 -28
  60. package/dist/ai/McpServer.js.map +1 -1
  61. package/dist/ai/Response.d.ts +1 -1
  62. package/dist/cli/Completions.d.ts +5 -0
  63. package/dist/cli/Completions.d.ts.map +1 -1
  64. package/dist/cli/Completions.js.map +1 -1
  65. package/dist/cli/Flag.d.ts +100 -0
  66. package/dist/cli/Flag.d.ts.map +1 -1
  67. package/dist/cli/Flag.js +33 -0
  68. package/dist/cli/Flag.js.map +1 -1
  69. package/dist/cli/Param.d.ts +87 -0
  70. package/dist/cli/Param.d.ts.map +1 -1
  71. package/dist/cli/Param.js +30 -0
  72. package/dist/cli/Param.js.map +1 -1
  73. package/dist/cli/internal/command.d.ts.map +1 -1
  74. package/dist/cli/internal/command.js +2 -1
  75. package/dist/cli/internal/command.js.map +1 -1
  76. package/dist/cli/internal/completions/bash.js +4 -3
  77. package/dist/cli/internal/completions/bash.js.map +1 -1
  78. package/dist/cli/internal/completions/descriptor.js +8 -1
  79. package/dist/cli/internal/completions/descriptor.js.map +1 -1
  80. package/dist/cli/internal/completions/fish.js +4 -4
  81. package/dist/cli/internal/completions/fish.js.map +1 -1
  82. package/dist/cli/internal/completions/powershell.js +3 -2
  83. package/dist/cli/internal/completions/powershell.js.map +1 -1
  84. package/dist/cli/internal/completions/zsh.js +7 -3
  85. package/dist/cli/internal/completions/zsh.js.map +1 -1
  86. package/dist/cli/internal/parser.js +11 -3
  87. package/dist/cli/internal/parser.js.map +1 -1
  88. package/dist/cli/internal/wizard.d.ts.map +1 -1
  89. package/dist/cli/internal/wizard.js +2 -1
  90. package/dist/cli/internal/wizard.js.map +1 -1
  91. package/dist/cluster/ClusterWorkflowEngine.d.ts +1 -0
  92. package/dist/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  93. package/dist/cluster/ClusterWorkflowEngine.js +67 -13
  94. package/dist/cluster/ClusterWorkflowEngine.js.map +1 -1
  95. package/dist/cluster/MessageStorage.d.ts.map +1 -1
  96. package/dist/cluster/MessageStorage.js +20 -12
  97. package/dist/cluster/MessageStorage.js.map +1 -1
  98. package/dist/cluster/Runners.d.ts.map +1 -1
  99. package/dist/cluster/Runners.js +54 -34
  100. package/dist/cluster/Runners.js.map +1 -1
  101. package/dist/cluster/internal/entityManager.js +1 -1
  102. package/dist/cluster/internal/entityManager.js.map +1 -1
  103. package/dist/encoding/Sse.js +1 -1
  104. package/dist/encoding/Sse.js.map +1 -1
  105. package/dist/graphql/GraphQLClient.d.ts.map +1 -1
  106. package/dist/graphql/GraphQLClient.js +12 -5
  107. package/dist/graphql/GraphQLClient.js.map +1 -1
  108. package/dist/graphql/GraphQLProtocol.d.ts +249 -11
  109. package/dist/graphql/GraphQLProtocol.d.ts.map +1 -1
  110. package/dist/graphql/GraphQLProtocol.js +98 -8
  111. package/dist/graphql/GraphQLProtocol.js.map +1 -1
  112. package/dist/graphql/GraphQLResolver.d.ts +1 -1
  113. package/dist/graphql/GraphQLResolver.d.ts.map +1 -1
  114. package/dist/graphql/GraphQLResolver.js +46 -16
  115. package/dist/graphql/GraphQLResolver.js.map +1 -1
  116. package/dist/http/FetchHttpClient.d.ts +6 -3
  117. package/dist/http/FetchHttpClient.d.ts.map +1 -1
  118. package/dist/http/FetchHttpClient.js +6 -3
  119. package/dist/http/FetchHttpClient.js.map +1 -1
  120. package/dist/http/FindMyWay/internal/router.js +2 -1
  121. package/dist/http/FindMyWay/internal/router.js.map +1 -1
  122. package/dist/http/Headers.d.ts +3 -3
  123. package/dist/http/Headers.d.ts.map +1 -1
  124. package/dist/http/Headers.js +6 -5
  125. package/dist/http/Headers.js.map +1 -1
  126. package/dist/http/HttpClient.d.ts +12 -0
  127. package/dist/http/HttpClient.d.ts.map +1 -1
  128. package/dist/http/HttpClient.js +14 -1
  129. package/dist/http/HttpClient.js.map +1 -1
  130. package/dist/http/HttpClientError.d.ts.map +1 -1
  131. package/dist/http/HttpClientError.js +8 -6
  132. package/dist/http/HttpClientError.js.map +1 -1
  133. package/dist/http/HttpClientRequest.d.ts +147 -4
  134. package/dist/http/HttpClientRequest.d.ts.map +1 -1
  135. package/dist/http/HttpClientRequest.js +47 -1
  136. package/dist/http/HttpClientRequest.js.map +1 -1
  137. package/dist/http/HttpMiddleware.d.ts +60 -0
  138. package/dist/http/HttpMiddleware.d.ts.map +1 -1
  139. package/dist/http/HttpMiddleware.js +67 -5
  140. package/dist/http/HttpMiddleware.js.map +1 -1
  141. package/dist/http/HttpRouter.d.ts.map +1 -1
  142. package/dist/http/HttpRouter.js +52 -13
  143. package/dist/http/HttpRouter.js.map +1 -1
  144. package/dist/http/HttpServerError.d.ts.map +1 -1
  145. package/dist/http/HttpServerError.js +6 -4
  146. package/dist/http/HttpServerError.js.map +1 -1
  147. package/dist/http/HttpServerRequest.js +2 -2
  148. package/dist/http/HttpServerRequest.js.map +1 -1
  149. package/dist/http/HttpStaticServer.d.ts.map +1 -1
  150. package/dist/http/HttpStaticServer.js +4 -10
  151. package/dist/http/HttpStaticServer.js.map +1 -1
  152. package/dist/http/HttpTraceContext.js +1 -1
  153. package/dist/http/HttpTraceContext.js.map +1 -1
  154. package/dist/http/Url.d.ts.map +1 -1
  155. package/dist/http/Url.js +2 -1
  156. package/dist/http/Url.js.map +1 -1
  157. package/dist/http/UrlParams.d.ts +112 -8
  158. package/dist/http/UrlParams.d.ts.map +1 -1
  159. package/dist/http/UrlParams.js +141 -14
  160. package/dist/http/UrlParams.js.map +1 -1
  161. package/dist/http/internal/compression.d.ts +1 -1
  162. package/dist/http/internal/compression.d.ts.map +1 -1
  163. package/dist/http/internal/compression.js +2 -10
  164. package/dist/http/internal/compression.js.map +1 -1
  165. package/dist/http/internal/compressionBody.d.ts +2 -0
  166. package/dist/http/internal/compressionBody.d.ts.map +1 -0
  167. package/dist/http/internal/compressionBody.js +36 -0
  168. package/dist/http/internal/compressionBody.js.map +1 -0
  169. package/dist/http/internal/decompression.d.ts +2 -0
  170. package/dist/http/internal/decompression.d.ts.map +1 -0
  171. package/dist/http/internal/decompression.js +162 -0
  172. package/dist/http/internal/decompression.js.map +1 -0
  173. package/dist/http/internal/tracing.js +14 -4
  174. package/dist/http/internal/tracing.js.map +1 -1
  175. package/dist/http/internal/urlParams.d.ts +2 -0
  176. package/dist/http/internal/urlParams.d.ts.map +1 -0
  177. package/dist/http/internal/urlParams.js +4 -0
  178. package/dist/http/internal/urlParams.js.map +1 -0
  179. package/dist/http-api/HttpApiClient.d.ts.map +1 -1
  180. package/dist/http-api/HttpApiClient.js +2 -1
  181. package/dist/http-api/HttpApiClient.js.map +1 -1
  182. package/dist/internal/core.js +17 -1
  183. package/dist/internal/core.js.map +1 -1
  184. package/dist/internal/effect.js +5 -3
  185. package/dist/internal/effect.js.map +1 -1
  186. package/dist/internal/graphql.js +12 -2
  187. package/dist/internal/graphql.js.map +1 -1
  188. package/dist/internal/version.js +1 -1
  189. package/dist/observability/Otlp.d.ts +15 -0
  190. package/dist/observability/Otlp.d.ts.map +1 -1
  191. package/dist/observability/Otlp.js +3 -0
  192. package/dist/observability/Otlp.js.map +1 -1
  193. package/dist/observability/OtlpExporter.d.ts +8 -0
  194. package/dist/observability/OtlpExporter.d.ts.map +1 -1
  195. package/dist/observability/OtlpExporter.js +10 -1
  196. package/dist/observability/OtlpExporter.js.map +1 -1
  197. package/dist/observability/OtlpLogger.d.ts +17 -0
  198. package/dist/observability/OtlpLogger.d.ts.map +1 -1
  199. package/dist/observability/OtlpLogger.js +14 -1
  200. package/dist/observability/OtlpLogger.js.map +1 -1
  201. package/dist/observability/OtlpMetrics.d.ts +17 -0
  202. package/dist/observability/OtlpMetrics.d.ts.map +1 -1
  203. package/dist/observability/OtlpMetrics.js +13 -0
  204. package/dist/observability/OtlpMetrics.js.map +1 -1
  205. package/dist/observability/OtlpTracer.d.ts +17 -0
  206. package/dist/observability/OtlpTracer.d.ts.map +1 -1
  207. package/dist/observability/OtlpTracer.js +15 -2
  208. package/dist/observability/OtlpTracer.js.map +1 -1
  209. package/dist/reactivity/AsyncResult.d.ts +6 -0
  210. package/dist/reactivity/AsyncResult.d.ts.map +1 -1
  211. package/dist/reactivity/AsyncResult.js +27 -0
  212. package/dist/reactivity/AsyncResult.js.map +1 -1
  213. package/dist/reactivity/AtomRegistry.js +3 -1
  214. package/dist/reactivity/AtomRegistry.js.map +1 -1
  215. package/dist/rpc/RpcClient.d.ts.map +1 -1
  216. package/dist/rpc/RpcClient.js +6 -1
  217. package/dist/rpc/RpcClient.js.map +1 -1
  218. package/dist/sql/SqlClient.d.ts +8 -7
  219. package/dist/sql/SqlClient.d.ts.map +1 -1
  220. package/dist/sql/SqlClient.js +8 -7
  221. package/dist/sql/SqlClient.js.map +1 -1
  222. package/dist/testing/TestClock.d.ts +16 -3
  223. package/dist/testing/TestClock.d.ts.map +1 -1
  224. package/dist/testing/TestClock.js +112 -22
  225. package/dist/testing/TestClock.js.map +1 -1
  226. package/dist/workflow/Activity.js +1 -0
  227. package/dist/workflow/Activity.js.map +1 -1
  228. package/dist/workflow/Workflow.d.ts +22 -0
  229. package/dist/workflow/Workflow.d.ts.map +1 -1
  230. package/dist/workflow/Workflow.js +15 -3
  231. package/dist/workflow/Workflow.js.map +1 -1
  232. package/dist/workflow/WorkflowEngine.d.ts +20 -1
  233. package/dist/workflow/WorkflowEngine.d.ts.map +1 -1
  234. package/dist/workflow/WorkflowEngine.js +35 -21
  235. package/dist/workflow/WorkflowEngine.js.map +1 -1
  236. package/package.json +1 -1
  237. package/src/Array.ts +95 -6
  238. package/src/Channel.ts +24 -3
  239. package/src/ConfigProvider.ts +40 -44
  240. package/src/Duration.ts +4 -5
  241. package/src/Effect.ts +140 -53
  242. package/src/FileSystem.ts +23 -9
  243. package/src/Match.ts +65 -12
  244. package/src/Path.ts +52 -7
  245. package/src/Schema.ts +17 -4
  246. package/src/String.ts +17 -4
  247. package/src/TxRef.ts +4 -2
  248. package/src/ai/AiError.ts +3 -1
  249. package/src/ai/Decision.ts +70 -21
  250. package/src/ai/DecisionModel.ts +1 -1
  251. package/src/ai/LanguageModel.ts +57 -51
  252. package/src/ai/McpServer.ts +15 -55
  253. package/src/cli/Completions.ts +5 -0
  254. package/src/cli/Flag.ts +101 -0
  255. package/src/cli/Param.ts +96 -0
  256. package/src/cli/internal/command.ts +2 -1
  257. package/src/cli/internal/completions/bash.ts +4 -3
  258. package/src/cli/internal/completions/descriptor.ts +10 -1
  259. package/src/cli/internal/completions/fish.ts +4 -4
  260. package/src/cli/internal/completions/powershell.ts +5 -2
  261. package/src/cli/internal/completions/zsh.ts +7 -3
  262. package/src/cli/internal/parser.ts +12 -3
  263. package/src/cli/internal/wizard.ts +2 -1
  264. package/src/cluster/ClusterWorkflowEngine.ts +92 -24
  265. package/src/cluster/MessageStorage.ts +14 -3
  266. package/src/cluster/Runners.ts +88 -66
  267. package/src/cluster/internal/entityManager.ts +1 -1
  268. package/src/encoding/Sse.ts +1 -1
  269. package/src/graphql/GraphQLClient.ts +17 -5
  270. package/src/graphql/GraphQLProtocol.ts +274 -20
  271. package/src/graphql/GraphQLResolver.ts +45 -17
  272. package/src/http/FetchHttpClient.ts +6 -3
  273. package/src/http/FindMyWay/internal/router.ts +2 -1
  274. package/src/http/Headers.ts +6 -9
  275. package/src/http/HttpClient.ts +18 -1
  276. package/src/http/HttpClientError.ts +10 -6
  277. package/src/http/HttpClientRequest.ts +173 -7
  278. package/src/http/HttpMiddleware.ts +85 -5
  279. package/src/http/HttpRouter.ts +60 -13
  280. package/src/http/HttpServerError.ts +8 -4
  281. package/src/http/HttpServerRequest.ts +2 -2
  282. package/src/http/HttpStaticServer.ts +4 -10
  283. package/src/http/HttpTraceContext.ts +1 -1
  284. package/src/http/Url.ts +2 -1
  285. package/src/http/UrlParams.ts +225 -26
  286. package/src/http/internal/compression.ts +3 -17
  287. package/src/http/internal/compressionBody.ts +56 -0
  288. package/src/http/internal/decompression.ts +226 -0
  289. package/src/http/internal/tracing.ts +21 -4
  290. package/src/http/internal/urlParams.ts +5 -0
  291. package/src/http-api/HttpApiClient.ts +2 -1
  292. package/src/internal/core.ts +21 -1
  293. package/src/internal/effect.ts +5 -4
  294. package/src/internal/graphql.ts +30 -7
  295. package/src/internal/version.ts +1 -1
  296. package/src/observability/Otlp.ts +18 -0
  297. package/src/observability/OtlpExporter.ts +14 -3
  298. package/src/observability/OtlpLogger.ts +31 -2
  299. package/src/observability/OtlpMetrics.ts +30 -1
  300. package/src/observability/OtlpTracer.ts +32 -3
  301. package/src/reactivity/AsyncResult.ts +31 -0
  302. package/src/reactivity/AtomRegistry.ts +3 -1
  303. package/src/rpc/RpcClient.ts +6 -1
  304. package/src/sql/SqlClient.ts +9 -7
  305. package/src/testing/TestClock.ts +144 -29
  306. package/src/workflow/Activity.ts +1 -0
  307. package/src/workflow/Workflow.ts +31 -5
  308. package/src/workflow/WorkflowEngine.ts +60 -22
@@ -89,6 +89,14 @@ declare const GraphQLProtocol_base: Context.ServiceClass<GraphQLProtocol, "effec
89
89
  readonly status?: number | undefined;
90
90
  readonly headers?: Headers.Headers | undefined;
91
91
  }, TransportError>;
92
+ /**
93
+ * Resolves the transport URL for resolver batching. Set by `layerHttp`;
94
+ * optional for custom transports.
95
+ */
96
+ readonly url?: ((options: {
97
+ readonly kind: Kind;
98
+ readonly operationName: string;
99
+ }) => Effect.Effect<string>) | undefined;
92
100
  }>;
93
101
  /**
94
102
  * The transport service. `execute` answers a query or mutation with the raw
@@ -133,6 +141,20 @@ declare const GraphQLProtocol_base: Context.ServiceClass<GraphQLProtocol, "effec
133
141
  */
134
142
  export declare class GraphQLProtocol extends GraphQLProtocol_base {
135
143
  }
144
+ /**
145
+ * The URL of an HTTP transport: fixed, resolved for each operation from the
146
+ * calling context, `kind` and `operationName`, or an `Effect` with no errors
147
+ * or requirements. See {@link layerHttp}.
148
+ *
149
+ * @stability experimental
150
+ * @category models
151
+ * @since 4.0.0
152
+ */
153
+ export type Url = string | Effect.Effect<string> | ((options: {
154
+ readonly context: Context.Context<never>;
155
+ readonly kind: Kind;
156
+ readonly operationName: string;
157
+ }) => string);
136
158
  /**
137
159
  * Builds the HTTP transport as an effect, for composing transports by hand.
138
160
  * Most code uses {@link layerHttp}.
@@ -141,9 +163,9 @@ export declare class GraphQLProtocol extends GraphQLProtocol_base {
141
163
  *
142
164
  * Takes the same options as {@link layerHttp}, including `queryMethod`.
143
165
  * Without `subscriptions`, subscriptions use graphql-sse distinct mode on
144
- * `url`. With `subscriptions.webSocket`, they go over graphql-ws instead, and
145
- * the effect also builds the graphql-ws transport, so it needs a
146
- * `Socket.WebSocketConstructor` and a `Scope`.
166
+ * `url`. With `subscriptions.webSocket`, `url` must be a string, subscriptions
167
+ * go over graphql-ws instead, and the effect also builds the graphql-ws
168
+ * transport, so it needs a `Socket.WebSocketConstructor` and a `Scope`.
147
169
  *
148
170
  * @stability experimental
149
171
  * @category constructors
@@ -158,9 +180,9 @@ export declare const makeHttp: {
158
180
  *
159
181
  * Takes the same options as {@link layerHttp}, including `queryMethod`.
160
182
  * Without `subscriptions`, subscriptions use graphql-sse distinct mode on
161
- * `url`. With `subscriptions.webSocket`, they go over graphql-ws instead, and
162
- * the effect also builds the graphql-ws transport, so it needs a
163
- * `Socket.WebSocketConstructor` and a `Scope`.
183
+ * `url`. With `subscriptions.webSocket`, `url` must be a string, subscriptions
184
+ * go over graphql-ws instead, and the effect also builds the graphql-ws
185
+ * transport, so it needs a `Socket.WebSocketConstructor` and a `Scope`.
164
186
  *
165
187
  * @stability experimental
166
188
  * @category constructors
@@ -188,16 +210,16 @@ export declare const makeHttp: {
188
210
  *
189
211
  * Takes the same options as {@link layerHttp}, including `queryMethod`.
190
212
  * Without `subscriptions`, subscriptions use graphql-sse distinct mode on
191
- * `url`. With `subscriptions.webSocket`, they go over graphql-ws instead, and
192
- * the effect also builds the graphql-ws transport, so it needs a
193
- * `Socket.WebSocketConstructor` and a `Scope`.
213
+ * `url`. With `subscriptions.webSocket`, `url` must be a string, subscriptions
214
+ * go over graphql-ws instead, and the effect also builds the graphql-ws
215
+ * transport, so it needs a `Socket.WebSocketConstructor` and a `Scope`.
194
216
  *
195
217
  * @stability experimental
196
218
  * @category constructors
197
219
  * @since 4.0.0
198
220
  */
199
221
  (options: {
200
- readonly url: string;
222
+ readonly url: Url;
201
223
  readonly queryMethod?: "GET" | "POST" | undefined;
202
224
  readonly subscriptions?: undefined;
203
225
  }): Effect.Effect<GraphQLProtocol["Service"], never, HttpClient.HttpClient>;
@@ -246,6 +268,28 @@ export declare const makeHttp: {
246
268
  * With `subscriptions: { webSocket }`, subscriptions go over graphql-ws as in
247
269
  * {@link layerWebSocket}, and the layer needs a `Socket.WebSocketConstructor`.
248
270
  *
271
+ * To route each query, mutation and graphql-sse subscription, `url` can be a
272
+ * function of the calling fiber's context (including the call's `context`
273
+ * option), `kind` and `operationName`, or an `Effect<string>` with no errors
274
+ * or requirements that runs in that context. Use a defaulted
275
+ * `Context.Reference` to select the server. Reading a missing service with
276
+ * `Context.get` is a defect, not a `TransportError`. Neither form can be
277
+ * combined with `subscriptions.webSocket`: the socket URL is fixed at
278
+ * connection time.
279
+ *
280
+ * **Gotchas**
281
+ *
282
+ * `GraphQLResolver` resolves each lookup's URL once, before middleware run and
283
+ * before the batched request exists, then sends each batch to the URL it was
284
+ * grouped by. A single call resolves it in the transport, after middleware.
285
+ * So the URL must depend only on the context and the operation, and
286
+ * middleware must not change `kind` or `operationName` or provide services
287
+ * the URL reads.
288
+ *
289
+ * `RequestResolver.withCache` and `RequestResolver.persisted` key on the lookup,
290
+ * not the URL, so results can leak across servers. For caching, use a separate
291
+ * client and resolver per server, for example with `LayerMap`.
292
+ *
249
293
  * **Example** (Building a client over HTTP)
250
294
  *
251
295
  * ```ts import.meta.vitest
@@ -319,6 +363,56 @@ export declare const makeHttp: {
319
363
  * await Effect.runPromise(program) // => { viewer: { login: "GET draft-token" } }
320
364
  * ```
321
365
  *
366
+ * **Example** (One client for github.com, GHE.com and GitHub Enterprise Server)
367
+ *
368
+ * ```ts import.meta.vitest
369
+ * import { Context, Effect, Layer, Schema } from "effect"
370
+ * import { GraphQL, GraphQLClient, GraphQLGroup, GraphQLProtocol } from "effect/graphql"
371
+ * import { HttpClient, HttpClientResponse } from "effect/http"
372
+ *
373
+ * const Viewer = GraphQL.query("Viewer", {
374
+ * document: "query Viewer{viewer{login}}",
375
+ * result: Schema.Struct({ viewer: Schema.Struct({ login: Schema.String }) })
376
+ * })
377
+ *
378
+ * const GitHubHost = Context.Reference<string>("GitHubHost", { defaultValue: () => "github.com" })
379
+ *
380
+ * const Protocol = GraphQLProtocol.layerHttp({
381
+ * url: ({ context }) => {
382
+ * const host = Context.get(context, GitHubHost)
383
+ * if (host === "github.com") return "https://api.github.com/graphql"
384
+ * if (host.endsWith(".ghe.com")) return `https://api.${host}/graphql`
385
+ * return `https://${host}/api/graphql`
386
+ * }
387
+ * })
388
+ *
389
+ * // Echo the request URL instead of calling GitHub.
390
+ * const FakeServer = Layer.succeed(
391
+ * HttpClient.HttpClient,
392
+ * HttpClient.make((request, url) =>
393
+ * Effect.succeed(HttpClientResponse.fromWeb(
394
+ * request,
395
+ * new Response(JSON.stringify({ data: { viewer: { login: url.href } } }), {
396
+ * headers: { "content-type": "application/graphql-response+json" }
397
+ * })
398
+ * ))
399
+ * )
400
+ * )
401
+ *
402
+ * const program = Effect.gen(function*() {
403
+ * const client = yield* GraphQLClient.make(GraphQLGroup.make(Viewer))
404
+ * const dotcom = yield* client.Viewer()
405
+ * const cloud = yield* client.Viewer().pipe(Effect.provideService(GitHubHost, "acme.ghe.com"))
406
+ * const server = yield* client.Viewer(undefined, { context: Context.make(GitHubHost, "github.example.com") })
407
+ * return [dotcom, cloud, server].map((result) => result.viewer.login)
408
+ * }).pipe(
409
+ * Effect.provide(Protocol),
410
+ * Effect.provide(FakeServer)
411
+ * )
412
+ *
413
+ * await Effect.runPromise(program) // => ["https://api.github.com/graphql", "https://api.acme.ghe.com/graphql", "https://github.example.com/api/graphql"]
414
+ * ```
415
+ *
322
416
  * **Example** (Subscriptions over graphql-ws, everything else over POST)
323
417
  *
324
418
  * ```ts import.meta.vitest
@@ -389,6 +483,28 @@ export declare const layerHttp: {
389
483
  * With `subscriptions: { webSocket }`, subscriptions go over graphql-ws as in
390
484
  * {@link layerWebSocket}, and the layer needs a `Socket.WebSocketConstructor`.
391
485
  *
486
+ * To route each query, mutation and graphql-sse subscription, `url` can be a
487
+ * function of the calling fiber's context (including the call's `context`
488
+ * option), `kind` and `operationName`, or an `Effect<string>` with no errors
489
+ * or requirements that runs in that context. Use a defaulted
490
+ * `Context.Reference` to select the server. Reading a missing service with
491
+ * `Context.get` is a defect, not a `TransportError`. Neither form can be
492
+ * combined with `subscriptions.webSocket`: the socket URL is fixed at
493
+ * connection time.
494
+ *
495
+ * **Gotchas**
496
+ *
497
+ * `GraphQLResolver` resolves each lookup's URL once, before middleware run and
498
+ * before the batched request exists, then sends each batch to the URL it was
499
+ * grouped by. A single call resolves it in the transport, after middleware.
500
+ * So the URL must depend only on the context and the operation, and
501
+ * middleware must not change `kind` or `operationName` or provide services
502
+ * the URL reads.
503
+ *
504
+ * `RequestResolver.withCache` and `RequestResolver.persisted` key on the lookup,
505
+ * not the URL, so results can leak across servers. For caching, use a separate
506
+ * client and resolver per server, for example with `LayerMap`.
507
+ *
392
508
  * **Example** (Building a client over HTTP)
393
509
  *
394
510
  * ```ts import.meta.vitest
@@ -462,6 +578,56 @@ export declare const layerHttp: {
462
578
  * await Effect.runPromise(program) // => { viewer: { login: "GET draft-token" } }
463
579
  * ```
464
580
  *
581
+ * **Example** (One client for github.com, GHE.com and GitHub Enterprise Server)
582
+ *
583
+ * ```ts import.meta.vitest
584
+ * import { Context, Effect, Layer, Schema } from "effect"
585
+ * import { GraphQL, GraphQLClient, GraphQLGroup, GraphQLProtocol } from "effect/graphql"
586
+ * import { HttpClient, HttpClientResponse } from "effect/http"
587
+ *
588
+ * const Viewer = GraphQL.query("Viewer", {
589
+ * document: "query Viewer{viewer{login}}",
590
+ * result: Schema.Struct({ viewer: Schema.Struct({ login: Schema.String }) })
591
+ * })
592
+ *
593
+ * const GitHubHost = Context.Reference<string>("GitHubHost", { defaultValue: () => "github.com" })
594
+ *
595
+ * const Protocol = GraphQLProtocol.layerHttp({
596
+ * url: ({ context }) => {
597
+ * const host = Context.get(context, GitHubHost)
598
+ * if (host === "github.com") return "https://api.github.com/graphql"
599
+ * if (host.endsWith(".ghe.com")) return `https://api.${host}/graphql`
600
+ * return `https://${host}/api/graphql`
601
+ * }
602
+ * })
603
+ *
604
+ * // Echo the request URL instead of calling GitHub.
605
+ * const FakeServer = Layer.succeed(
606
+ * HttpClient.HttpClient,
607
+ * HttpClient.make((request, url) =>
608
+ * Effect.succeed(HttpClientResponse.fromWeb(
609
+ * request,
610
+ * new Response(JSON.stringify({ data: { viewer: { login: url.href } } }), {
611
+ * headers: { "content-type": "application/graphql-response+json" }
612
+ * })
613
+ * ))
614
+ * )
615
+ * )
616
+ *
617
+ * const program = Effect.gen(function*() {
618
+ * const client = yield* GraphQLClient.make(GraphQLGroup.make(Viewer))
619
+ * const dotcom = yield* client.Viewer()
620
+ * const cloud = yield* client.Viewer().pipe(Effect.provideService(GitHubHost, "acme.ghe.com"))
621
+ * const server = yield* client.Viewer(undefined, { context: Context.make(GitHubHost, "github.example.com") })
622
+ * return [dotcom, cloud, server].map((result) => result.viewer.login)
623
+ * }).pipe(
624
+ * Effect.provide(Protocol),
625
+ * Effect.provide(FakeServer)
626
+ * )
627
+ *
628
+ * await Effect.runPromise(program) // => ["https://api.github.com/graphql", "https://api.acme.ghe.com/graphql", "https://github.example.com/api/graphql"]
629
+ * ```
630
+ *
465
631
  * **Example** (Subscriptions over graphql-ws, everything else over POST)
466
632
  *
467
633
  * ```ts import.meta.vitest
@@ -545,6 +711,28 @@ export declare const layerHttp: {
545
711
  * With `subscriptions: { webSocket }`, subscriptions go over graphql-ws as in
546
712
  * {@link layerWebSocket}, and the layer needs a `Socket.WebSocketConstructor`.
547
713
  *
714
+ * To route each query, mutation and graphql-sse subscription, `url` can be a
715
+ * function of the calling fiber's context (including the call's `context`
716
+ * option), `kind` and `operationName`, or an `Effect<string>` with no errors
717
+ * or requirements that runs in that context. Use a defaulted
718
+ * `Context.Reference` to select the server. Reading a missing service with
719
+ * `Context.get` is a defect, not a `TransportError`. Neither form can be
720
+ * combined with `subscriptions.webSocket`: the socket URL is fixed at
721
+ * connection time.
722
+ *
723
+ * **Gotchas**
724
+ *
725
+ * `GraphQLResolver` resolves each lookup's URL once, before middleware run and
726
+ * before the batched request exists, then sends each batch to the URL it was
727
+ * grouped by. A single call resolves it in the transport, after middleware.
728
+ * So the URL must depend only on the context and the operation, and
729
+ * middleware must not change `kind` or `operationName` or provide services
730
+ * the URL reads.
731
+ *
732
+ * `RequestResolver.withCache` and `RequestResolver.persisted` key on the lookup,
733
+ * not the URL, so results can leak across servers. For caching, use a separate
734
+ * client and resolver per server, for example with `LayerMap`.
735
+ *
548
736
  * **Example** (Building a client over HTTP)
549
737
  *
550
738
  * ```ts import.meta.vitest
@@ -618,6 +806,56 @@ export declare const layerHttp: {
618
806
  * await Effect.runPromise(program) // => { viewer: { login: "GET draft-token" } }
619
807
  * ```
620
808
  *
809
+ * **Example** (One client for github.com, GHE.com and GitHub Enterprise Server)
810
+ *
811
+ * ```ts import.meta.vitest
812
+ * import { Context, Effect, Layer, Schema } from "effect"
813
+ * import { GraphQL, GraphQLClient, GraphQLGroup, GraphQLProtocol } from "effect/graphql"
814
+ * import { HttpClient, HttpClientResponse } from "effect/http"
815
+ *
816
+ * const Viewer = GraphQL.query("Viewer", {
817
+ * document: "query Viewer{viewer{login}}",
818
+ * result: Schema.Struct({ viewer: Schema.Struct({ login: Schema.String }) })
819
+ * })
820
+ *
821
+ * const GitHubHost = Context.Reference<string>("GitHubHost", { defaultValue: () => "github.com" })
822
+ *
823
+ * const Protocol = GraphQLProtocol.layerHttp({
824
+ * url: ({ context }) => {
825
+ * const host = Context.get(context, GitHubHost)
826
+ * if (host === "github.com") return "https://api.github.com/graphql"
827
+ * if (host.endsWith(".ghe.com")) return `https://api.${host}/graphql`
828
+ * return `https://${host}/api/graphql`
829
+ * }
830
+ * })
831
+ *
832
+ * // Echo the request URL instead of calling GitHub.
833
+ * const FakeServer = Layer.succeed(
834
+ * HttpClient.HttpClient,
835
+ * HttpClient.make((request, url) =>
836
+ * Effect.succeed(HttpClientResponse.fromWeb(
837
+ * request,
838
+ * new Response(JSON.stringify({ data: { viewer: { login: url.href } } }), {
839
+ * headers: { "content-type": "application/graphql-response+json" }
840
+ * })
841
+ * ))
842
+ * )
843
+ * )
844
+ *
845
+ * const program = Effect.gen(function*() {
846
+ * const client = yield* GraphQLClient.make(GraphQLGroup.make(Viewer))
847
+ * const dotcom = yield* client.Viewer()
848
+ * const cloud = yield* client.Viewer().pipe(Effect.provideService(GitHubHost, "acme.ghe.com"))
849
+ * const server = yield* client.Viewer(undefined, { context: Context.make(GitHubHost, "github.example.com") })
850
+ * return [dotcom, cloud, server].map((result) => result.viewer.login)
851
+ * }).pipe(
852
+ * Effect.provide(Protocol),
853
+ * Effect.provide(FakeServer)
854
+ * )
855
+ *
856
+ * await Effect.runPromise(program) // => ["https://api.github.com/graphql", "https://api.acme.ghe.com/graphql", "https://github.example.com/api/graphql"]
857
+ * ```
858
+ *
621
859
  * **Example** (Subscriptions over graphql-ws, everything else over POST)
622
860
  *
623
861
  * ```ts import.meta.vitest
@@ -644,7 +882,7 @@ export declare const layerHttp: {
644
882
  * @since 4.0.0
645
883
  */
646
884
  (options: {
647
- readonly url: string;
885
+ readonly url: Url;
648
886
  readonly queryMethod?: "GET" | "POST" | undefined;
649
887
  readonly subscriptions?: undefined;
650
888
  }): Layer.Layer<GraphQLProtocol, never, HttpClient.HttpClient>;
@@ -1 +1 @@
1
- {"version":3,"file":"GraphQLProtocol.d.ts","sourceRoot":"","sources":["../../src/graphql/GraphQLProtocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GraphQLProtocol.d.ts","sourceRoot":"","sources":["../../src/graphql/GraphQLProtocol.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,7 @@ import * as Duration from "../Duration.js";
20
20
  import * as Effect from "../Effect.js";
21
21
  import * as Sse from "../encoding/Sse.js";
22
22
  import * as Fiber from "../Fiber.js";
23
+ import { constant } from "../Function.js";
23
24
  import * as Headers from "../http/Headers.js";
24
25
  import * as HttpClient from "../http/HttpClient.js";
25
26
  import * as HttpClientError from "../http/HttpClientError.js";
@@ -217,12 +218,15 @@ const sseEvents = response => Stream.suspend(() => {
217
218
  })))));
218
219
  });
219
220
  const makeHttpWith = options => {
221
+ const resolve = urlResolver(options.url);
222
+ // A resolver batch carries the URL it was grouped by.
223
+ const urlOf = request => internalGraphQL.ResolvedUrl.use(resolved => resolved?.resolve === resolve ? Effect.succeed(resolved.url) : resolve(request));
220
224
  const http = Clock.clockWith(clock => HttpClient.HttpClient.useSync(client => {
221
- const execute = request => Effect.flatMap(Effect.service(internalGraphQL.ForcePost), forcePost => {
225
+ const execute = request => Effect.flatMap(Effect.zip(Effect.service(internalGraphQL.ForcePost), urlOf(request)), ([forcePost, url]) => {
222
226
  const toRequest = options.queryMethod === "GET" && request.kind === "query" && !forcePost ? getRequest : postRequest;
223
- return client.execute(toRequest(options.url, request, `${graphqlResponseContentType}, ${jsonContentType}`)).pipe(Effect.flatMap(readAnswer), fromHttpClientError(clock));
227
+ return client.execute(toRequest(url, request, `${graphqlResponseContentType}, ${jsonContentType}`)).pipe(Effect.flatMap(readAnswer), fromHttpClientError(clock));
224
228
  });
225
- const subscribe = request => Stream.unwrap(Effect.suspend(() => client.execute(postRequest(options.url, request, eventStreamContentType)).pipe(Effect.flatMap(response => {
229
+ const subscribe = request => Stream.unwrap(Effect.flatMap(urlOf(request), url => client.execute(postRequest(url, request, eventStreamContentType)).pipe(Effect.flatMap(response => {
226
230
  const contentType = contentTypeOf(response);
227
231
  if (contentType.includes(eventStreamContentType) && response.status >= 200 && response.status < 300) {
228
232
  return Effect.succeed(sseEvents(response));
@@ -233,15 +237,29 @@ const makeHttpWith = options => {
233
237
  }), fromHttpClientError(clock))));
234
238
  return GraphQLProtocol.of({
235
239
  execute,
236
- subscribe
240
+ subscribe,
241
+ url: resolve
237
242
  });
238
243
  }));
239
244
  const webSocket = options.subscriptions?.webSocket;
240
245
  return webSocket === undefined ? http : Effect.zipWith(http, makeWebSocket(webSocket), (http, ws) => GraphQLProtocol.of({
241
246
  execute: http.execute,
242
- subscribe: ws.subscribe
247
+ subscribe: ws.subscribe,
248
+ url: http.url
243
249
  }));
244
250
  };
251
+ const urlResolver = url => {
252
+ if (typeof url === "string") return constant(Effect.succeed(url));
253
+ if (Effect.isEffect(url)) return constant(url);
254
+ return ({
255
+ kind,
256
+ operationName
257
+ }) => Effect.contextWith(context => Effect.succeed(url({
258
+ context,
259
+ kind,
260
+ operationName
261
+ })));
262
+ };
245
263
  /**
246
264
  * Builds the HTTP transport as an effect, for composing transports by hand.
247
265
  * Most code uses {@link layerHttp}.
@@ -250,9 +268,9 @@ const makeHttpWith = options => {
250
268
  *
251
269
  * Takes the same options as {@link layerHttp}, including `queryMethod`.
252
270
  * Without `subscriptions`, subscriptions use graphql-sse distinct mode on
253
- * `url`. With `subscriptions.webSocket`, they go over graphql-ws instead, and
254
- * the effect also builds the graphql-ws transport, so it needs a
255
- * `Socket.WebSocketConstructor` and a `Scope`.
271
+ * `url`. With `subscriptions.webSocket`, `url` must be a string, subscriptions
272
+ * go over graphql-ws instead, and the effect also builds the graphql-ws
273
+ * transport, so it needs a `Socket.WebSocketConstructor` and a `Scope`.
256
274
  *
257
275
  * @stability experimental
258
276
  * @category constructors
@@ -303,6 +321,28 @@ export const makeHttp = makeHttpWith;
303
321
  * With `subscriptions: { webSocket }`, subscriptions go over graphql-ws as in
304
322
  * {@link layerWebSocket}, and the layer needs a `Socket.WebSocketConstructor`.
305
323
  *
324
+ * To route each query, mutation and graphql-sse subscription, `url` can be a
325
+ * function of the calling fiber's context (including the call's `context`
326
+ * option), `kind` and `operationName`, or an `Effect<string>` with no errors
327
+ * or requirements that runs in that context. Use a defaulted
328
+ * `Context.Reference` to select the server. Reading a missing service with
329
+ * `Context.get` is a defect, not a `TransportError`. Neither form can be
330
+ * combined with `subscriptions.webSocket`: the socket URL is fixed at
331
+ * connection time.
332
+ *
333
+ * **Gotchas**
334
+ *
335
+ * `GraphQLResolver` resolves each lookup's URL once, before middleware run and
336
+ * before the batched request exists, then sends each batch to the URL it was
337
+ * grouped by. A single call resolves it in the transport, after middleware.
338
+ * So the URL must depend only on the context and the operation, and
339
+ * middleware must not change `kind` or `operationName` or provide services
340
+ * the URL reads.
341
+ *
342
+ * `RequestResolver.withCache` and `RequestResolver.persisted` key on the lookup,
343
+ * not the URL, so results can leak across servers. For caching, use a separate
344
+ * client and resolver per server, for example with `LayerMap`.
345
+ *
306
346
  * **Example** (Building a client over HTTP)
307
347
  *
308
348
  * ```ts import.meta.vitest
@@ -376,6 +416,56 @@ export const makeHttp = makeHttpWith;
376
416
  * await Effect.runPromise(program) // => { viewer: { login: "GET draft-token" } }
377
417
  * ```
378
418
  *
419
+ * **Example** (One client for github.com, GHE.com and GitHub Enterprise Server)
420
+ *
421
+ * ```ts import.meta.vitest
422
+ * import { Context, Effect, Layer, Schema } from "effect"
423
+ * import { GraphQL, GraphQLClient, GraphQLGroup, GraphQLProtocol } from "effect/graphql"
424
+ * import { HttpClient, HttpClientResponse } from "effect/http"
425
+ *
426
+ * const Viewer = GraphQL.query("Viewer", {
427
+ * document: "query Viewer{viewer{login}}",
428
+ * result: Schema.Struct({ viewer: Schema.Struct({ login: Schema.String }) })
429
+ * })
430
+ *
431
+ * const GitHubHost = Context.Reference<string>("GitHubHost", { defaultValue: () => "github.com" })
432
+ *
433
+ * const Protocol = GraphQLProtocol.layerHttp({
434
+ * url: ({ context }) => {
435
+ * const host = Context.get(context, GitHubHost)
436
+ * if (host === "github.com") return "https://api.github.com/graphql"
437
+ * if (host.endsWith(".ghe.com")) return `https://api.${host}/graphql`
438
+ * return `https://${host}/api/graphql`
439
+ * }
440
+ * })
441
+ *
442
+ * // Echo the request URL instead of calling GitHub.
443
+ * const FakeServer = Layer.succeed(
444
+ * HttpClient.HttpClient,
445
+ * HttpClient.make((request, url) =>
446
+ * Effect.succeed(HttpClientResponse.fromWeb(
447
+ * request,
448
+ * new Response(JSON.stringify({ data: { viewer: { login: url.href } } }), {
449
+ * headers: { "content-type": "application/graphql-response+json" }
450
+ * })
451
+ * ))
452
+ * )
453
+ * )
454
+ *
455
+ * const program = Effect.gen(function*() {
456
+ * const client = yield* GraphQLClient.make(GraphQLGroup.make(Viewer))
457
+ * const dotcom = yield* client.Viewer()
458
+ * const cloud = yield* client.Viewer().pipe(Effect.provideService(GitHubHost, "acme.ghe.com"))
459
+ * const server = yield* client.Viewer(undefined, { context: Context.make(GitHubHost, "github.example.com") })
460
+ * return [dotcom, cloud, server].map((result) => result.viewer.login)
461
+ * }).pipe(
462
+ * Effect.provide(Protocol),
463
+ * Effect.provide(FakeServer)
464
+ * )
465
+ *
466
+ * await Effect.runPromise(program) // => ["https://api.github.com/graphql", "https://api.acme.ghe.com/graphql", "https://github.example.com/api/graphql"]
467
+ * ```
468
+ *
379
469
  * **Example** (Subscriptions over graphql-ws, everything else over POST)
380
470
  *
381
471
  * ```ts import.meta.vitest
@@ -1 +1 @@
1
- {"version":3,"file":"GraphQLProtocol.js","names":[],"sources":["../../src/graphql/GraphQLProtocol.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"GraphQLProtocol.js","names":[],"sources":["../../src/graphql/GraphQLProtocol.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
1
  import * as Cause from "../Cause.ts";
2
- import type * as Context from "../Context.ts";
2
+ import * as Context from "../Context.ts";
3
3
  import * as Effect from "../Effect.ts";
4
4
  import * as Request from "../Request.ts";
5
5
  import * as RequestResolver from "../RequestResolver.ts";