@effect/platform-node 0.13.1 → 0.13.3
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/internal/http/nodeClient.js +3 -3
- package/internal/http/nodeClient.js.map +1 -1
- package/internal/http/server.js +21 -37
- package/internal/http/server.js.map +1 -1
- package/mjs/internal/http/nodeClient.mjs +3 -3
- package/mjs/internal/http/nodeClient.mjs.map +1 -1
- package/mjs/internal/http/server.mjs +21 -37
- package/mjs/internal/http/server.mjs.map +1 -1
- package/package.json +4 -4
- package/src/internal/http/nodeClient.ts +3 -3
- package/src/internal/http/server.ts +17 -41
|
@@ -48,12 +48,12 @@ const fromAgent = agent => Client.make(request => Effect.flatMap(UrlParams.makeU
|
|
|
48
48
|
const nodeRequest = url.protocol === "https:" ? Https.request(url, {
|
|
49
49
|
agent: agent.https,
|
|
50
50
|
method: request.method,
|
|
51
|
-
headers:
|
|
51
|
+
headers: request.headers,
|
|
52
52
|
signal: controller.signal
|
|
53
53
|
}) : Http.request(url, {
|
|
54
54
|
agent: agent.http,
|
|
55
55
|
method: request.method,
|
|
56
|
-
headers:
|
|
56
|
+
headers: request.headers,
|
|
57
57
|
signal: controller.signal
|
|
58
58
|
});
|
|
59
59
|
return Effect.map(_ => new ClientResponseImpl(request, _))(Effect.onInterrupt(() => Effect.sync(() => controller.abort()))(Effect.zipRight(sendBody(nodeRequest, request, request.body), waitForResponse(nodeRequest), {
|
|
@@ -157,7 +157,7 @@ class ClientResponseImpl extends _incomingMessage.IncomingMessageImpl {
|
|
|
157
157
|
return {
|
|
158
158
|
_tag: "ClientResponse",
|
|
159
159
|
status: this.status,
|
|
160
|
-
headers:
|
|
160
|
+
headers: this.headers
|
|
161
161
|
};
|
|
162
162
|
}
|
|
163
163
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nodeClient.js","names":["Context","_interopRequireWildcard","require","Effect","Layer","_incomingMessage","NodeSink","Client","Error","ClientResponse","UrlParams","Stream","Http","Https","_nodeStream","_promises","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","HttpAgentTypeId","Symbol","for","exports","HttpAgent","Tag","makeAgent","options","map","all","acquireRelease","sync","Agent","agent","destroy","http","https","makeAgentLayer","scoped","agentLayer","fromAgent","make","request","flatMap","makeUrl","url","urlParams","_","RequestError","reason","error","suspend","controller","AbortController","nodeRequest","protocol","method","headers","
|
|
1
|
+
{"version":3,"file":"nodeClient.js","names":["Context","_interopRequireWildcard","require","Effect","Layer","_incomingMessage","NodeSink","Client","Error","ClientResponse","UrlParams","Stream","Http","Https","_nodeStream","_promises","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","HttpAgentTypeId","Symbol","for","exports","HttpAgent","Tag","makeAgent","options","map","all","acquireRelease","sync","Agent","agent","destroy","http","https","makeAgentLayer","scoped","agentLayer","fromAgent","make","request","flatMap","makeUrl","url","urlParams","_","RequestError","reason","error","suspend","controller","AbortController","nodeRequest","protocol","method","headers","signal","ClientResponseImpl","onInterrupt","abort","zipRight","sendBody","body","waitForResponse","concurrent","_tag","end","waitForFinish","response","Response","formData","forEach","value","setHeader","tryPromise","try","pipeline","Readable","fromWeb","catch","run","mapError","stream","fromWritable","async","resume","on","succeed","removeAllListeners","fail","unit","IncomingMessageImpl","constructor","source","ResponseError","TypeId","status","statusCode","toWeb","globalThis","Headers","statusText","statusMessage","onError","toString","toJSON","layerWithoutAgent","effect","layer","provide"],"sources":["../../src/internal/http/nodeClient.ts"],"sourcesContent":[null],"mappings":"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"}
|
package/internal/http/server.js
CHANGED
|
@@ -14,7 +14,6 @@ var internalFormData = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/requir
|
|
|
14
14
|
var _incomingMessage = /*#__PURE__*/require("@effect/platform-node/internal/http/incomingMessage");
|
|
15
15
|
var NodeSink = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform-node/Sink"));
|
|
16
16
|
var FileSystem = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/FileSystem"));
|
|
17
|
-
var Headers = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/Http/Headers"));
|
|
18
17
|
var IncomingMessage = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/Http/IncomingMessage"));
|
|
19
18
|
var Middleware = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/Http/Middleware"));
|
|
20
19
|
var Server = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/Http/Server"));
|
|
@@ -74,15 +73,18 @@ const make = (evaluate, options) => Effect.gen(function* (_) {
|
|
|
74
73
|
});
|
|
75
74
|
}).pipe(Effect.locally(IncomingMessage.maxBodySize, Option.some(FileSystem.Size(1024 * 1024 * 10))));
|
|
76
75
|
exports.make = make;
|
|
77
|
-
const respond = /*#__PURE__*/Middleware.make(httpApp =>
|
|
78
|
-
const
|
|
79
|
-
|
|
80
|
-
nodeResponse.
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
76
|
+
const respond = /*#__PURE__*/Middleware.make(httpApp => {
|
|
77
|
+
const nonEffectApp = Effect.flatMap(httpApp, ServerResponse.toNonEffectBody);
|
|
78
|
+
return Effect.flatMap(ServerRequest.ServerRequest, request => Effect.tapErrorCause(Effect.tap(nonEffectApp, response => handleResponse(request, response)), _cause => Effect.sync(() => {
|
|
79
|
+
const nodeResponse = request.response;
|
|
80
|
+
if (!nodeResponse.headersSent) {
|
|
81
|
+
nodeResponse.writeHead(500);
|
|
82
|
+
}
|
|
83
|
+
if (!nodeResponse.writableEnded) {
|
|
84
|
+
nodeResponse.end();
|
|
85
|
+
}
|
|
86
|
+
})));
|
|
87
|
+
});
|
|
86
88
|
class ServerRequestImpl extends _incomingMessage.IncomingMessageImpl {
|
|
87
89
|
constructor(source, response, url = source.url, headersOverride) {
|
|
88
90
|
super(source, _ => Error.RequestError({
|
|
@@ -103,7 +105,7 @@ class ServerRequestImpl extends _incomingMessage.IncomingMessageImpl {
|
|
|
103
105
|
return this.source.method;
|
|
104
106
|
}
|
|
105
107
|
get headers() {
|
|
106
|
-
this.headersOverride ??=
|
|
108
|
+
this.headersOverride ??= this.source.headers;
|
|
107
109
|
return this.headersOverride;
|
|
108
110
|
}
|
|
109
111
|
get formData() {
|
|
@@ -131,7 +133,7 @@ class ServerRequestImpl extends _incomingMessage.IncomingMessageImpl {
|
|
|
131
133
|
method: this.method,
|
|
132
134
|
url: this.url,
|
|
133
135
|
originalUrl: this.originalUrl,
|
|
134
|
-
headers:
|
|
136
|
+
headers: this.headers
|
|
135
137
|
};
|
|
136
138
|
}
|
|
137
139
|
}
|
|
@@ -147,29 +149,14 @@ const handleResponse = (request, response) => Effect.suspend(() => {
|
|
|
147
149
|
switch (response.body._tag) {
|
|
148
150
|
case "Empty":
|
|
149
151
|
{
|
|
150
|
-
nodeResponse.writeHead(response.status, response.headers
|
|
152
|
+
nodeResponse.writeHead(response.status, response.headers);
|
|
151
153
|
nodeResponse.end();
|
|
152
154
|
return Effect.unit;
|
|
153
155
|
}
|
|
154
156
|
case "Raw":
|
|
155
|
-
{
|
|
156
|
-
const headers = response.headers === Headers.empty ? {} : Object.fromEntries(response.headers);
|
|
157
|
-
if (response.body.contentType) {
|
|
158
|
-
headers["content-type"] = response.body.contentType;
|
|
159
|
-
}
|
|
160
|
-
if (response.body.contentLength) {
|
|
161
|
-
headers["content-length"] = response.body.contentLength.toString();
|
|
162
|
-
}
|
|
163
|
-
nodeResponse.writeHead(response.status, headers);
|
|
164
|
-
nodeResponse.end(response.body.body);
|
|
165
|
-
return Effect.unit;
|
|
166
|
-
}
|
|
167
157
|
case "Uint8Array":
|
|
168
158
|
{
|
|
169
|
-
|
|
170
|
-
headers["content-type"] = response.body.contentType;
|
|
171
|
-
headers["content-length"] = response.body.contentLength.toString();
|
|
172
|
-
nodeResponse.writeHead(response.status, headers);
|
|
159
|
+
nodeResponse.writeHead(response.status, response.headers);
|
|
173
160
|
nodeResponse.end(response.body.body);
|
|
174
161
|
return Effect.unit;
|
|
175
162
|
}
|
|
@@ -178,8 +165,10 @@ const handleResponse = (request, response) => Effect.suspend(() => {
|
|
|
178
165
|
const body = response.body;
|
|
179
166
|
return Effect.async(resume => {
|
|
180
167
|
const r = new Response(body.formData);
|
|
181
|
-
const headers =
|
|
182
|
-
|
|
168
|
+
const headers = {
|
|
169
|
+
...response.headers,
|
|
170
|
+
...Object.fromEntries(r.headers)
|
|
171
|
+
};
|
|
183
172
|
nodeResponse.writeHead(response.status, headers);
|
|
184
173
|
_nodeStream.Readable.fromWeb(r.body).pipe(nodeResponse).on("error", error => {
|
|
185
174
|
resume(Effect.fail(Error.ResponseError({
|
|
@@ -195,12 +184,7 @@ const handleResponse = (request, response) => Effect.suspend(() => {
|
|
|
195
184
|
}
|
|
196
185
|
case "Stream":
|
|
197
186
|
{
|
|
198
|
-
|
|
199
|
-
headers["content-type"] = response.body.contentType;
|
|
200
|
-
if (response.body.contentLength) {
|
|
201
|
-
headers["content-length"] = response.body.contentLength.toString();
|
|
202
|
-
}
|
|
203
|
-
nodeResponse.writeHead(response.status, headers);
|
|
187
|
+
nodeResponse.writeHead(response.status, response.headers);
|
|
204
188
|
return Stream.run(Stream.mapError(response.body.stream, error => Error.ResponseError({
|
|
205
189
|
request,
|
|
206
190
|
response,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","names":["Option","_interopRequireWildcard","require","Config","Effect","Fiber","Layer","Runtime","internalFormData","_incomingMessage","NodeSink","FileSystem","Headers","IncomingMessage","Middleware","Server","Error","ServerRequest","ServerResponse","Stream","_nodeStream","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","make","evaluate","options","gen","_","server","serverFiber","addFinalizer","async","resume","close","error","die","unit","zipRight","on","fail","ServeError","scoped","forkScoped","listen","address","_tag","path","hostname","port","serve","httpApp","middleware","handledApp","respond","flatMap","runtime","runFork","handler","nodeRequest","nodeResponse","provideService","ServerRequestImpl","all","acquireRelease","sync","off","join","discard","concurrency","pipe","locally","maxBodySize","some","Size","exports","request","tapErrorCause","tap","toNonEffectBody","response","handleResponse","_cause","headersSent","writeHead","writableEnded","end","IncomingMessageImpl","constructor","source","url","headersOverride","RequestError","reason","TypeId","originalUrl","method","headers","fromInput","formData","formDataEffect","runSync","cached","formDataStream","fromRequest","setUrl","replaceHeaders","toString","toJSON","fromEntries","layer","layerConfig","config","unwrap","suspend","body","status","empty","undefined","contentType","contentLength","r","Response","Readable","fromWeb","ResponseError","once","run","mapError","stream","fromWritable"],"sources":["../../src/internal/http/server.ts"],"sourcesContent":[null],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","names":["Option","_interopRequireWildcard","require","Config","Effect","Fiber","Layer","Runtime","internalFormData","_incomingMessage","NodeSink","FileSystem","IncomingMessage","Middleware","Server","Error","ServerRequest","ServerResponse","Stream","_nodeStream","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","make","evaluate","options","gen","_","server","serverFiber","addFinalizer","async","resume","close","error","die","unit","zipRight","on","fail","ServeError","scoped","forkScoped","listen","address","_tag","path","hostname","port","serve","httpApp","middleware","handledApp","respond","flatMap","runtime","runFork","handler","nodeRequest","nodeResponse","provideService","ServerRequestImpl","all","acquireRelease","sync","off","join","discard","concurrency","pipe","locally","maxBodySize","some","Size","exports","nonEffectApp","toNonEffectBody","request","tapErrorCause","tap","response","handleResponse","_cause","headersSent","writeHead","writableEnded","end","IncomingMessageImpl","constructor","source","url","headersOverride","RequestError","reason","TypeId","originalUrl","method","headers","formData","formDataEffect","runSync","cached","formDataStream","fromRequest","setUrl","replaceHeaders","toString","toJSON","layer","layerConfig","config","unwrap","suspend","body","status","r","Response","fromEntries","Readable","fromWeb","ResponseError","once","run","mapError","stream","fromWritable"],"sources":["../../src/internal/http/server.ts"],"sourcesContent":[null],"mappings":";;;;;;AACA,IAAAA,MAAA,gBAAAC,uBAAA,eAAAC,OAAA;AACA,IAAAC,MAAA,gBAAAF,uBAAA,eAAAC,OAAA;AACA,IAAAE,MAAA,gBAAAH,uBAAA,eAAAC,OAAA;AACA,IAAAG,KAAA,gBAAAJ,uBAAA,eAAAC,OAAA;AACA,IAAAI,KAAA,gBAAAL,uBAAA,eAAAC,OAAA;AACA,IAAAK,OAAA,gBAAAN,uBAAA,eAAAC,OAAA;AAEA,IAAAM,gBAAA,gBAAAP,uBAAA,eAAAC,OAAA;AACA,IAAAO,gBAAA,gBAAAP,OAAA;AACA,IAAAQ,QAAA,gBAAAT,uBAAA,eAAAC,OAAA;AACA,IAAAS,UAAA,gBAAAV,uBAAA,eAAAC,OAAA;AAGA,IAAAU,eAAA,gBAAAX,uBAAA,eAAAC,OAAA;AAEA,IAAAW,UAAA,gBAAAZ,uBAAA,eAAAC,OAAA;AACA,IAAAY,MAAA,gBAAAb,uBAAA,eAAAC,OAAA;AACA,IAAAa,KAAA,gBAAAd,uBAAA,eAAAC,OAAA;AACA,IAAAc,aAAA,gBAAAf,uBAAA,eAAAC,OAAA;AACA,IAAAe,cAAA,gBAAAhB,uBAAA,eAAAC,OAAA;AAEA,IAAAgB,MAAA,gBAAAjB,uBAAA,eAAAC,OAAA;AAGA,IAAAiB,WAAA,gBAAAjB,OAAA;AAAsC,SAAAkB,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAApB,wBAAAwB,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,CAAAJ,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAEtC;AACO,MAAMW,IAAI,GAAGA,CAClBC,QAA8B,EAC9BC,OAA0B,KAE1BxC,MAAM,CAACyC,GAAG,CAAC,WAAUC,CAAC;EACpB,MAAMC,MAAM,GAAGJ,QAAQ,EAAE;EAEzB,MAAMK,WAAW,GAAG,OAAOF,CAAC,CAC1B1C,MAAM,CAAC6C,YAAY,CAAC,MAClB7C,MAAM,CAAC8C,KAAK,CAAsBC,MAAM,IAAI;IAC1CJ,MAAM,CAACK,KAAK,CAAEC,KAAK,IAAI;MACrB,IAAIA,KAAK,EAAE;QACTF,MAAM,CAAC/C,MAAM,CAACkD,GAAG,CAACD,KAAK,CAAC,CAAC;OAC1B,MAAM;QACLF,MAAM,CAAC/C,MAAM,CAACmD,IAAI,CAAC;;IAEvB,CAAC,CAAC;EACJ,CAAC,CAAC,CACH,EACDnD,MAAM,CAACoD,QAAQ,CACbpD,MAAM,CAAC8C,KAAK,CAAkCC,MAAM,IAAI;IACtDJ,MAAM,CAACU,EAAE,CAAC,OAAO,EAAGJ,KAAK,IAAI;MAC3BF,MAAM,CAAC/C,MAAM,CAACsD,IAAI,CAAC3C,KAAK,CAAC4C,UAAU,CAAC;QAAEN;MAAK,CAAE,CAAC,CAAC,CAAC;IAClD,CAAC,CAAC;EACJ,CAAC,CAAC,CACH,EACDjD,MAAM,CAACwD,MAAM,EACbxD,MAAM,CAACyD,UAAU,CAClB;EAED,OAAOf,CAAC,CAAC1C,MAAM,CAAC8C,KAAK,CAAsBC,MAAM,IAAI;IACnDJ,MAAM,CAACe,MAAM,CAAClB,OAAO,EAAE,MAAK;MAC1BO,MAAM,CAAC/C,MAAM,CAACmD,IAAI,CAAC;IACrB,CAAC,CAAC;EACJ,CAAC,CAAC,CAAC;EAEH,MAAMQ,OAAO,GAAGhB,MAAM,CAACgB,OAAO,EAAG;EAEjC,OAAOjD,MAAM,CAAC4B,IAAI,CAAC;IACjBqB,OAAO,EAAE,OAAOA,OAAO,KAAK,QAAQ,GAClC;MACEC,IAAI,EAAE,aAAa;MACnBC,IAAI,EAAEF;KACP,GACD;MACEC,IAAI,EAAE,YAAY;MAClBE,QAAQ,EAAEH,OAAO,CAACA,OAAO;MACzBI,IAAI,EAAEJ,OAAO,CAACI;KACf;IACHC,KAAK,EAAEA,CAACC,OAAO,EAAEC,UAAU,KAAI;MAC7B,MAAMC,UAAU,GAAGD,UAAU,GAAGA,UAAU,CAACE,OAAO,CAACH,OAAO,CAAC,CAAC,GAAGG,OAAO,CAACH,OAAO,CAAC;MAC/E,OAAOjE,MAAM,CAACqE,OAAO,CAACrE,MAAM,CAACsE,OAAO,EAAE,EAAGA,OAAO,IAAI;QAClD,MAAMC,OAAO,GAAGpE,OAAO,CAACoE,OAAO,CAACD,OAAO,CAAC;QACxC,SAASE,OAAOA,CAACC,WAAiC,EAAEC,YAAiC;UACnFH,OAAO,CACLvE,MAAM,CAAC2E,cAAc,CACnBR,UAAU,EACVvD,aAAa,CAACA,aAAa,EAC3B,IAAIgE,iBAAiB,CAACH,WAAW,EAAEC,YAAY,CAAC,CACjD,CACF;QACH;QACA,OAAO1E,MAAM,CAAC6E,GAAG,CAAC,CAChB7E,MAAM,CAAC8E,cAAc,CACnB9E,MAAM,CAAC+E,IAAI,CAAC,MAAMpC,MAAM,CAACU,EAAE,CAAC,SAAS,EAAEmB,OAAO,CAAC,CAAC,EAChD,MAAMxE,MAAM,CAAC+E,IAAI,CAAC,MAAMpC,MAAM,CAACqC,GAAG,CAAC,SAAS,EAAER,OAAO,CAAC,CAAC,CACxD,EACDvE,KAAK,CAACgF,IAAI,CAACrC,WAAW,CAAC,CACxB,EAAE;UAAEsC,OAAO,EAAE,IAAI;UAAEC,WAAW,EAAE;QAAW,CAAE,CAAkD;MAClG,CAAC,CAAC;IACJ;GACD,CAAC;AACJ,CAAC,CAAC,CAACC,IAAI,CACLpF,MAAM,CAACqF,OAAO,CACZ7E,eAAe,CAAC8E,WAAW,EAC3B1F,MAAM,CAAC2F,IAAI,CAAChF,UAAU,CAACiF,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC,CAC/C,CACF;AAAAC,OAAA,CAAAnD,IAAA,GAAAA,IAAA;AAEH,MAAM8B,OAAO,gBAAG3D,UAAU,CAAC6B,IAAI,CAAE2B,OAAO,IAAI;EAC1C,MAAMyB,YAAY,GAAG1F,MAAM,CAACqE,OAAO,CAACJ,OAAO,EAAEpD,cAAc,CAAC8E,eAAe,CAAC;EAC5E,OAAO3F,MAAM,CAACqE,OAAO,CAACzD,aAAa,CAACA,aAAa,EAAGgF,OAAO,IACzD5F,MAAM,CAAC6F,aAAa,CAClB7F,MAAM,CAAC8F,GAAG,CAACJ,YAAY,EAAGK,QAAQ,IAAKC,cAAc,CAACJ,OAAO,EAAEG,QAAQ,CAAC,CAAC,EACxEE,MAAM,IACLjG,MAAM,CAAC+E,IAAI,CAAC,MAAK;IACf,MAAML,YAAY,GAAIkB,OAA6B,CAACG,QAAQ;IAC5D,IAAI,CAACrB,YAAY,CAACwB,WAAW,EAAE;MAC7BxB,YAAY,CAACyB,SAAS,CAAC,GAAG,CAAC;;IAE7B,IAAI,CAACzB,YAAY,CAAC0B,aAAa,EAAE;MAC/B1B,YAAY,CAAC2B,GAAG,EAAE;;EAEtB,CAAC,CAAC,CACL,CAAC;AACN,CAAC,CAAC;AAEF,MAAMzB,iBAAkB,SAAQ0B,oCAAuC;EAGrEC,YACWC,MAA4B,EAC5BT,QAA6B,EAC7BU,GAAA,GAAMD,MAAM,CAACC,GAAI,EAClBC,eAAiC;IAEzC,KAAK,CAACF,MAAM,EAAG9D,CAAC,IACd/B,KAAK,CAACgG,YAAY,CAAC;MACjBf,OAAO,EAAE,IAAI;MACbgB,MAAM,EAAE,QAAQ;MAChB3D,KAAK,EAAEP;KACR,CAAC,CAAC;IAVI,KAAA8D,MAAM,GAANA,MAAM;IACN,KAAAT,QAAQ,GAARA,QAAQ;IACR,KAAAU,GAAG,GAAHA,GAAG;IACJ,KAAAC,eAAe,GAAfA,eAAe;IAQvB,IAAI,CAAC9F,aAAa,CAACiG,MAAM,CAAC,GAAGjG,aAAa,CAACiG,MAAM;EACnD;EAEA,IAAIC,WAAWA,CAAA;IACb,OAAO,IAAI,CAACN,MAAM,CAACC,GAAI;EACzB;EAEA,IAAIM,MAAMA,CAAA;IACR,OAAO,IAAI,CAACP,MAAM,CAACO,MAAgB;EACrC;EAEA,IAAIC,OAAOA,CAAA;IACT,IAAI,CAACN,eAAe,KAAK,IAAI,CAACF,MAAM,CAACQ,OAA0B;IAC/D,OAAO,IAAI,CAACN,eAAe;EAC7B;EASA,IAAIO,QAAQA,CAAA;IAKV,IAAI,IAAI,CAACC,cAAc,EAAE;MACvB,OAAO,IAAI,CAACA,cAAc;;IAE5B,IAAI,CAACA,cAAc,GAAGlH,MAAM,CAACmH,OAAO,CAACnH,MAAM,CAACoH,MAAM,CAChDhH,gBAAgB,CAAC6G,QAAQ,CAAC,IAAI,CAACT,MAAM,CAAC,CACvC,CAAC;IACF,OAAO,IAAI,CAACU,cAAc;EAC5B;EAEA,IAAIG,cAAcA,CAAA;IAChB,OAAOjH,gBAAgB,CAACkH,WAAW,CAAC,IAAI,CAACd,MAAM,CAAC;EAClD;EAEAe,MAAMA,CAACd,GAAW;IAChB,OAAO,IAAI7B,iBAAiB,CAC1B,IAAI,CAAC4B,MAAM,EACX,IAAI,CAACT,QAAQ,EACbU,GAAG,EACH,IAAI,CAACC,eAAe,CACrB;EACH;EAEAc,cAAcA,CAACR,OAAwB;IACrC,OAAO,IAAIpC,iBAAiB,CAC1B,IAAI,CAAC4B,MAAM,EACX,IAAI,CAACT,QAAQ,EACb,IAAI,CAACU,GAAG,EACRO,OAAO,CACR;EACH;EAEAS,QAAQA,CAAA;IACN,OAAO,iBAAiB,IAAI,CAACV,MAAM,IAAI,IAAI,CAACN,GAAG,GAAG;EACpD;EAEAiB,MAAMA,CAAA;IACJ,OAAO;MACL9D,IAAI,EAAE,eAAe;MACrBmD,MAAM,EAAE,IAAI,CAACA,MAAM;MACnBN,GAAG,EAAE,IAAI,CAACA,GAAG;MACbK,WAAW,EAAE,IAAI,CAACA,WAAW;MAC7BE,OAAO,EAAE,IAAI,CAACA;KACf;EACH;;AArFUpG,aAAa,CAACiG,MAAM;AAwFhC;AACO,MAAMc,KAAK,GAAGA,CACnBpF,QAA8B,EAC9BC,OAA0B,KACvBtC,KAAK,CAACsD,MAAM,CAAC9C,MAAM,CAACA,MAAM,EAAE4B,IAAI,CAACC,QAAQ,EAAEC,OAAO,CAAC,CAAC;AAEzD;AAAAiD,OAAA,CAAAkC,KAAA,GAAAA,KAAA;AACO,MAAMC,WAAW,GAAGA,CACzBrF,QAA8B,EAC9BC,OAA8C,KAE9CtC,KAAK,CAACsD,MAAM,CACV9C,MAAM,CAACA,MAAM,EACbV,MAAM,CAACqE,OAAO,CACZrE,MAAM,CAAC6H,MAAM,CAAC9H,MAAM,CAAC+H,MAAM,CAACtF,OAAO,CAAC,CAAC,EACpCA,OAAO,IAAKF,IAAI,CAACC,QAAQ,EAAEC,OAAO,CAAC,CACrC,CACF;AAAAiD,OAAA,CAAAmC,WAAA,GAAAA,WAAA;AAEH,MAAM5B,cAAc,GAAGA,CACrBJ,OAAoC,EACpCG,QAAqD,KAErD/F,MAAM,CAAC+H,OAAO,CAAC,MAAsD;EACnE,MAAMrD,YAAY,GAAIkB,OAA6B,CAACG,QAAQ;EAC5D,QAAQA,QAAQ,CAACiC,IAAI,CAACpE,IAAI;IACxB,KAAK,OAAO;MAAE;QACZc,YAAY,CAACyB,SAAS,CAACJ,QAAQ,CAACkC,MAAM,EAAElC,QAAQ,CAACiB,OAAO,CAAC;QACzDtC,YAAY,CAAC2B,GAAG,EAAE;QAClB,OAAOrG,MAAM,CAACmD,IAAI;;IAEpB,KAAK,KAAK;IACV,KAAK,YAAY;MAAE;QACjBuB,YAAY,CAACyB,SAAS,CAACJ,QAAQ,CAACkC,MAAM,EAAElC,QAAQ,CAACiB,OAAO,CAAC;QACzDtC,YAAY,CAAC2B,GAAG,CAACN,QAAQ,CAACiC,IAAI,CAACA,IAAI,CAAC;QACpC,OAAOhI,MAAM,CAACmD,IAAI;;IAEpB,KAAK,UAAU;MAAE;QACf,MAAM6E,IAAI,GAAGjC,QAAQ,CAACiC,IAAI;QAC1B,OAAOhI,MAAM,CAAC8C,KAAK,CAAoCC,MAAM,IAAI;UAC/D,MAAMmF,CAAC,GAAG,IAAIC,QAAQ,CAACH,IAAI,CAACf,QAAQ,CAAC;UACrC,MAAMD,OAAO,GAAG;YACd,GAAGjB,QAAQ,CAACiB,OAAO;YACnB,GAAGnF,MAAM,CAACuG,WAAW,CAACF,CAAC,CAAClB,OAAO;WAChC;UACDtC,YAAY,CAACyB,SAAS,CAACJ,QAAQ,CAACkC,MAAM,EAAEjB,OAAO,CAAC;UAChDqB,oBAAQ,CAACC,OAAO,CAACJ,CAAC,CAACF,IAAW,CAAC,CAC5B5C,IAAI,CAACV,YAAY,CAAC,CAClBrB,EAAE,CAAC,OAAO,EAAGJ,KAAK,IAAI;YACrBF,MAAM,CAAC/C,MAAM,CAACsD,IAAI,CAAC3C,KAAK,CAAC4H,aAAa,CAAC;cACrC3C,OAAO;cACPG,QAAQ;cACRa,MAAM,EAAE,QAAQ;cAChB3D;aACD,CAAC,CAAC,CAAC;UACN,CAAC,CAAC,CACDuF,IAAI,CAAC,QAAQ,EAAE,MAAK;YACnBzF,MAAM,CAAC/C,MAAM,CAACmD,IAAI,CAAC;UACrB,CAAC,CAAC;QACN,CAAC,CAAC;;IAEJ,KAAK,QAAQ;MAAE;QACbuB,YAAY,CAACyB,SAAS,CAACJ,QAAQ,CAACkC,MAAM,EAAElC,QAAQ,CAACiB,OAAO,CAAC;QACzD,OAAOlG,MAAM,CAAC2H,GAAG,CACf3H,MAAM,CAAC4H,QAAQ,CACb3C,QAAQ,CAACiC,IAAI,CAACW,MAAM,EACnB1F,KAAK,IACJtC,KAAK,CAAC4H,aAAa,CAAC;UAClB3C,OAAO;UACPG,QAAQ;UACRa,MAAM,EAAE,QAAQ;UAChB3D;SACD,CAAC,CACL,EACD3C,QAAQ,CAACsI,YAAY,CAAC,MAAMlE,YAAY,EAAGzB,KAAK,IAC9CtC,KAAK,CAAC4H,aAAa,CAAC;UAClB3C,OAAO;UACPG,QAAQ;UACRa,MAAM,EAAE,QAAQ;UAChB3D;SACD,CAAC,CAAC,CACN;;;AAGP,CAAC,CAAC"}
|
|
@@ -35,12 +35,12 @@ const fromAgent = agent => Client.make(request => Effect.flatMap(UrlParams.makeU
|
|
|
35
35
|
const nodeRequest = url.protocol === "https:" ? Https.request(url, {
|
|
36
36
|
agent: agent.https,
|
|
37
37
|
method: request.method,
|
|
38
|
-
headers:
|
|
38
|
+
headers: request.headers,
|
|
39
39
|
signal: controller.signal
|
|
40
40
|
}) : Http.request(url, {
|
|
41
41
|
agent: agent.http,
|
|
42
42
|
method: request.method,
|
|
43
|
-
headers:
|
|
43
|
+
headers: request.headers,
|
|
44
44
|
signal: controller.signal
|
|
45
45
|
});
|
|
46
46
|
return Effect.map(_ => new ClientResponseImpl(request, _))(Effect.onInterrupt(() => Effect.sync(() => controller.abort()))(Effect.zipRight(sendBody(nodeRequest, request, request.body), waitForResponse(nodeRequest), {
|
|
@@ -144,7 +144,7 @@ class ClientResponseImpl extends IncomingMessageImpl {
|
|
|
144
144
|
return {
|
|
145
145
|
_tag: "ClientResponse",
|
|
146
146
|
status: this.status,
|
|
147
|
-
headers:
|
|
147
|
+
headers: this.headers
|
|
148
148
|
};
|
|
149
149
|
}
|
|
150
150
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nodeClient.mjs","names":["Context","Effect","Layer","IncomingMessageImpl","NodeSink","Client","Error","ClientResponse","UrlParams","Stream","Http","Https","Readable","pipeline","HttpAgentTypeId","Symbol","for","HttpAgent","Tag","makeAgent","options","map","all","acquireRelease","sync","Agent","agent","destroy","http","https","makeAgentLayer","scoped","agentLayer","fromAgent","make","request","flatMap","makeUrl","url","urlParams","_","RequestError","reason","error","suspend","controller","AbortController","nodeRequest","protocol","method","headers","
|
|
1
|
+
{"version":3,"file":"nodeClient.mjs","names":["Context","Effect","Layer","IncomingMessageImpl","NodeSink","Client","Error","ClientResponse","UrlParams","Stream","Http","Https","Readable","pipeline","HttpAgentTypeId","Symbol","for","HttpAgent","Tag","makeAgent","options","map","all","acquireRelease","sync","Agent","agent","destroy","http","https","makeAgentLayer","scoped","agentLayer","fromAgent","make","request","flatMap","makeUrl","url","urlParams","_","RequestError","reason","error","suspend","controller","AbortController","nodeRequest","protocol","method","headers","signal","ClientResponseImpl","onInterrupt","abort","zipRight","sendBody","body","waitForResponse","concurrent","_tag","end","waitForFinish","response","Response","formData","forEach","value","key","setHeader","tryPromise","try","fromWeb","catch","run","mapError","stream","fromWritable","async","resume","on","succeed","removeAllListeners","fail","unit","constructor","source","ResponseError","TypeId","status","statusCode","toWeb","globalThis","Headers","statusText","statusMessage","onError","toString","toJSON","layerWithoutAgent","effect","layer","provide"],"sources":["../../../src/internal/http/nodeClient.ts"],"sourcesContent":[null],"mappings":"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"}
|
|
@@ -8,7 +8,6 @@ import * as internalFormData from "@effect/platform-node/internal/http/formData"
|
|
|
8
8
|
import { IncomingMessageImpl } from "@effect/platform-node/internal/http/incomingMessage";
|
|
9
9
|
import * as NodeSink from "@effect/platform-node/Sink";
|
|
10
10
|
import * as FileSystem from "@effect/platform/FileSystem";
|
|
11
|
-
import * as Headers from "@effect/platform/Http/Headers";
|
|
12
11
|
import * as IncomingMessage from "@effect/platform/Http/IncomingMessage";
|
|
13
12
|
import * as Middleware from "@effect/platform/Http/Middleware";
|
|
14
13
|
import * as Server from "@effect/platform/Http/Server";
|
|
@@ -65,15 +64,18 @@ export const make = (evaluate, options) => Effect.gen(function* (_) {
|
|
|
65
64
|
}
|
|
66
65
|
});
|
|
67
66
|
}).pipe(Effect.locally(IncomingMessage.maxBodySize, Option.some(FileSystem.Size(1024 * 1024 * 10))));
|
|
68
|
-
const respond = /*#__PURE__*/Middleware.make(httpApp =>
|
|
69
|
-
const
|
|
70
|
-
|
|
71
|
-
nodeResponse.
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
67
|
+
const respond = /*#__PURE__*/Middleware.make(httpApp => {
|
|
68
|
+
const nonEffectApp = Effect.flatMap(httpApp, ServerResponse.toNonEffectBody);
|
|
69
|
+
return Effect.flatMap(ServerRequest.ServerRequest, request => Effect.tapErrorCause(Effect.tap(nonEffectApp, response => handleResponse(request, response)), _cause => Effect.sync(() => {
|
|
70
|
+
const nodeResponse = request.response;
|
|
71
|
+
if (!nodeResponse.headersSent) {
|
|
72
|
+
nodeResponse.writeHead(500);
|
|
73
|
+
}
|
|
74
|
+
if (!nodeResponse.writableEnded) {
|
|
75
|
+
nodeResponse.end();
|
|
76
|
+
}
|
|
77
|
+
})));
|
|
78
|
+
});
|
|
77
79
|
class ServerRequestImpl extends IncomingMessageImpl {
|
|
78
80
|
constructor(source, response, url = source.url, headersOverride) {
|
|
79
81
|
super(source, _ => Error.RequestError({
|
|
@@ -94,7 +96,7 @@ class ServerRequestImpl extends IncomingMessageImpl {
|
|
|
94
96
|
return this.source.method;
|
|
95
97
|
}
|
|
96
98
|
get headers() {
|
|
97
|
-
this.headersOverride ??=
|
|
99
|
+
this.headersOverride ??= this.source.headers;
|
|
98
100
|
return this.headersOverride;
|
|
99
101
|
}
|
|
100
102
|
get formData() {
|
|
@@ -122,7 +124,7 @@ class ServerRequestImpl extends IncomingMessageImpl {
|
|
|
122
124
|
method: this.method,
|
|
123
125
|
url: this.url,
|
|
124
126
|
originalUrl: this.originalUrl,
|
|
125
|
-
headers:
|
|
127
|
+
headers: this.headers
|
|
126
128
|
};
|
|
127
129
|
}
|
|
128
130
|
}
|
|
@@ -136,29 +138,14 @@ const handleResponse = (request, response) => Effect.suspend(() => {
|
|
|
136
138
|
switch (response.body._tag) {
|
|
137
139
|
case "Empty":
|
|
138
140
|
{
|
|
139
|
-
nodeResponse.writeHead(response.status, response.headers
|
|
141
|
+
nodeResponse.writeHead(response.status, response.headers);
|
|
140
142
|
nodeResponse.end();
|
|
141
143
|
return Effect.unit;
|
|
142
144
|
}
|
|
143
145
|
case "Raw":
|
|
144
|
-
{
|
|
145
|
-
const headers = response.headers === Headers.empty ? {} : Object.fromEntries(response.headers);
|
|
146
|
-
if (response.body.contentType) {
|
|
147
|
-
headers["content-type"] = response.body.contentType;
|
|
148
|
-
}
|
|
149
|
-
if (response.body.contentLength) {
|
|
150
|
-
headers["content-length"] = response.body.contentLength.toString();
|
|
151
|
-
}
|
|
152
|
-
nodeResponse.writeHead(response.status, headers);
|
|
153
|
-
nodeResponse.end(response.body.body);
|
|
154
|
-
return Effect.unit;
|
|
155
|
-
}
|
|
156
146
|
case "Uint8Array":
|
|
157
147
|
{
|
|
158
|
-
|
|
159
|
-
headers["content-type"] = response.body.contentType;
|
|
160
|
-
headers["content-length"] = response.body.contentLength.toString();
|
|
161
|
-
nodeResponse.writeHead(response.status, headers);
|
|
148
|
+
nodeResponse.writeHead(response.status, response.headers);
|
|
162
149
|
nodeResponse.end(response.body.body);
|
|
163
150
|
return Effect.unit;
|
|
164
151
|
}
|
|
@@ -167,8 +154,10 @@ const handleResponse = (request, response) => Effect.suspend(() => {
|
|
|
167
154
|
const body = response.body;
|
|
168
155
|
return Effect.async(resume => {
|
|
169
156
|
const r = new Response(body.formData);
|
|
170
|
-
const headers =
|
|
171
|
-
|
|
157
|
+
const headers = {
|
|
158
|
+
...response.headers,
|
|
159
|
+
...Object.fromEntries(r.headers)
|
|
160
|
+
};
|
|
172
161
|
nodeResponse.writeHead(response.status, headers);
|
|
173
162
|
Readable.fromWeb(r.body).pipe(nodeResponse).on("error", error => {
|
|
174
163
|
resume(Effect.fail(Error.ResponseError({
|
|
@@ -184,12 +173,7 @@ const handleResponse = (request, response) => Effect.suspend(() => {
|
|
|
184
173
|
}
|
|
185
174
|
case "Stream":
|
|
186
175
|
{
|
|
187
|
-
|
|
188
|
-
headers["content-type"] = response.body.contentType;
|
|
189
|
-
if (response.body.contentLength) {
|
|
190
|
-
headers["content-length"] = response.body.contentLength.toString();
|
|
191
|
-
}
|
|
192
|
-
nodeResponse.writeHead(response.status, headers);
|
|
176
|
+
nodeResponse.writeHead(response.status, response.headers);
|
|
193
177
|
return Stream.run(Stream.mapError(response.body.stream, error => Error.ResponseError({
|
|
194
178
|
request,
|
|
195
179
|
response,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.mjs","names":["Option","Config","Effect","Fiber","Layer","Runtime","internalFormData","IncomingMessageImpl","NodeSink","FileSystem","
|
|
1
|
+
{"version":3,"file":"server.mjs","names":["Option","Config","Effect","Fiber","Layer","Runtime","internalFormData","IncomingMessageImpl","NodeSink","FileSystem","IncomingMessage","Middleware","Server","Error","ServerRequest","ServerResponse","Stream","Readable","make","evaluate","options","gen","_","server","serverFiber","addFinalizer","async","resume","close","error","die","unit","zipRight","on","fail","ServeError","scoped","forkScoped","listen","address","_tag","path","hostname","port","serve","httpApp","middleware","handledApp","respond","flatMap","runtime","runFork","handler","nodeRequest","nodeResponse","provideService","ServerRequestImpl","all","acquireRelease","sync","off","join","discard","concurrency","pipe","locally","maxBodySize","some","Size","nonEffectApp","toNonEffectBody","request","tapErrorCause","tap","response","handleResponse","_cause","headersSent","writeHead","writableEnded","end","constructor","source","url","headersOverride","RequestError","reason","TypeId","originalUrl","method","headers","formData","formDataEffect","runSync","cached","formDataStream","fromRequest","setUrl","replaceHeaders","toString","toJSON","layer","layerConfig","config","unwrap","suspend","body","status","r","Response","Object","fromEntries","fromWeb","ResponseError","once","run","mapError","stream","fromWritable"],"sources":["../../../src/internal/http/server.ts"],"sourcesContent":[null],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect/platform-node",
|
|
3
|
-
"version": "0.13.
|
|
3
|
+
"version": "0.13.3",
|
|
4
4
|
"description": "Unified interfaces for common platform-specific services",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -28,9 +28,9 @@
|
|
|
28
28
|
"busboy": "^1.6.0"
|
|
29
29
|
},
|
|
30
30
|
"peerDependencies": {
|
|
31
|
-
"@effect/data": "^0.17.
|
|
32
|
-
"@effect/io": "^0.38.
|
|
31
|
+
"@effect/data": "^0.17.5",
|
|
32
|
+
"@effect/io": "^0.38.2",
|
|
33
33
|
"@effect/stream": "^0.34.0",
|
|
34
|
-
"@effect/platform": "^0.13.
|
|
34
|
+
"@effect/platform": "^0.13.3"
|
|
35
35
|
}
|
|
36
36
|
}
|
|
@@ -69,13 +69,13 @@ const fromAgent = (agent: NodeClient.HttpAgent): Client.Client.Default =>
|
|
|
69
69
|
Https.request(url, {
|
|
70
70
|
agent: agent.https,
|
|
71
71
|
method: request.method,
|
|
72
|
-
headers:
|
|
72
|
+
headers: request.headers,
|
|
73
73
|
signal: controller.signal
|
|
74
74
|
}) :
|
|
75
75
|
Http.request(url, {
|
|
76
76
|
agent: agent.http,
|
|
77
77
|
method: request.method,
|
|
78
|
-
headers:
|
|
78
|
+
headers: request.headers,
|
|
79
79
|
signal: controller.signal
|
|
80
80
|
})
|
|
81
81
|
return pipe(
|
|
@@ -212,7 +212,7 @@ class ClientResponseImpl extends IncomingMessageImpl<Error.ResponseError> implem
|
|
|
212
212
|
return {
|
|
213
213
|
_tag: "ClientResponse",
|
|
214
214
|
status: this.status,
|
|
215
|
-
headers:
|
|
215
|
+
headers: this.headers
|
|
216
216
|
}
|
|
217
217
|
}
|
|
218
218
|
}
|
|
@@ -11,7 +11,7 @@ import { IncomingMessageImpl } from "@effect/platform-node/internal/http/incomin
|
|
|
11
11
|
import * as NodeSink from "@effect/platform-node/Sink"
|
|
12
12
|
import * as FileSystem from "@effect/platform/FileSystem"
|
|
13
13
|
import type * as FormData from "@effect/platform/Http/FormData"
|
|
14
|
-
import * as Headers from "@effect/platform/Http/Headers"
|
|
14
|
+
import type * as Headers from "@effect/platform/Http/Headers"
|
|
15
15
|
import * as IncomingMessage from "@effect/platform/Http/IncomingMessage"
|
|
16
16
|
import type { Method } from "@effect/platform/Http/Method"
|
|
17
17
|
import * as Middleware from "@effect/platform/Http/Middleware"
|
|
@@ -78,7 +78,7 @@ export const make = (
|
|
|
78
78
|
serve: (httpApp, middleware) => {
|
|
79
79
|
const handledApp = middleware ? middleware(respond(httpApp)) : respond(httpApp)
|
|
80
80
|
return Effect.flatMap(Effect.runtime(), (runtime) => {
|
|
81
|
-
const runFork = Runtime.runFork(runtime
|
|
81
|
+
const runFork = Runtime.runFork(runtime)
|
|
82
82
|
function handler(nodeRequest: Http.IncomingMessage, nodeResponse: Http.ServerResponse) {
|
|
83
83
|
runFork(
|
|
84
84
|
Effect.provideService(
|
|
@@ -105,13 +105,11 @@ export const make = (
|
|
|
105
105
|
)
|
|
106
106
|
)
|
|
107
107
|
|
|
108
|
-
const respond = Middleware.make((httpApp) =>
|
|
109
|
-
Effect.flatMap(
|
|
108
|
+
const respond = Middleware.make((httpApp) => {
|
|
109
|
+
const nonEffectApp = Effect.flatMap(httpApp, ServerResponse.toNonEffectBody)
|
|
110
|
+
return Effect.flatMap(ServerRequest.ServerRequest, (request) =>
|
|
110
111
|
Effect.tapErrorCause(
|
|
111
|
-
Effect.tap(
|
|
112
|
-
Effect.flatMap(httpApp, ServerResponse.toNonEffectBody),
|
|
113
|
-
(response) => handleResponse(request, response)
|
|
114
|
-
),
|
|
112
|
+
Effect.tap(nonEffectApp, (response) => handleResponse(request, response)),
|
|
115
113
|
(_cause) =>
|
|
116
114
|
Effect.sync(() => {
|
|
117
115
|
const nodeResponse = (request as ServerRequestImpl).response
|
|
@@ -123,7 +121,7 @@ const respond = Middleware.make((httpApp) =>
|
|
|
123
121
|
}
|
|
124
122
|
})
|
|
125
123
|
))
|
|
126
|
-
)
|
|
124
|
+
})
|
|
127
125
|
|
|
128
126
|
class ServerRequestImpl extends IncomingMessageImpl<Error.RequestError> implements ServerRequest.ServerRequest {
|
|
129
127
|
readonly [ServerRequest.TypeId]: ServerRequest.TypeId
|
|
@@ -152,7 +150,7 @@ class ServerRequestImpl extends IncomingMessageImpl<Error.RequestError> implemen
|
|
|
152
150
|
}
|
|
153
151
|
|
|
154
152
|
get headers(): Headers.Headers {
|
|
155
|
-
this.headersOverride ??=
|
|
153
|
+
this.headersOverride ??= this.source.headers as Headers.Headers
|
|
156
154
|
return this.headersOverride
|
|
157
155
|
}
|
|
158
156
|
|
|
@@ -209,7 +207,7 @@ class ServerRequestImpl extends IncomingMessageImpl<Error.RequestError> implemen
|
|
|
209
207
|
method: this.method,
|
|
210
208
|
url: this.url,
|
|
211
209
|
originalUrl: this.originalUrl,
|
|
212
|
-
headers:
|
|
210
|
+
headers: this.headers
|
|
213
211
|
}
|
|
214
212
|
}
|
|
215
213
|
}
|
|
@@ -241,30 +239,13 @@ const handleResponse = (
|
|
|
241
239
|
const nodeResponse = (request as ServerRequestImpl).response
|
|
242
240
|
switch (response.body._tag) {
|
|
243
241
|
case "Empty": {
|
|
244
|
-
nodeResponse.writeHead(
|
|
245
|
-
response.status,
|
|
246
|
-
response.headers === Headers.empty ? undefined : Object.fromEntries(response.headers)
|
|
247
|
-
)
|
|
242
|
+
nodeResponse.writeHead(response.status, response.headers)
|
|
248
243
|
nodeResponse.end()
|
|
249
244
|
return Effect.unit
|
|
250
245
|
}
|
|
251
|
-
case "Raw":
|
|
252
|
-
const headers = response.headers === Headers.empty ? {} : Object.fromEntries(response.headers)
|
|
253
|
-
if (response.body.contentType) {
|
|
254
|
-
headers["content-type"] = response.body.contentType
|
|
255
|
-
}
|
|
256
|
-
if (response.body.contentLength) {
|
|
257
|
-
headers["content-length"] = response.body.contentLength.toString()
|
|
258
|
-
}
|
|
259
|
-
nodeResponse.writeHead(response.status, headers)
|
|
260
|
-
nodeResponse.end(response.body.body)
|
|
261
|
-
return Effect.unit
|
|
262
|
-
}
|
|
246
|
+
case "Raw":
|
|
263
247
|
case "Uint8Array": {
|
|
264
|
-
|
|
265
|
-
headers["content-type"] = response.body.contentType
|
|
266
|
-
headers["content-length"] = response.body.contentLength.toString()
|
|
267
|
-
nodeResponse.writeHead(response.status, headers)
|
|
248
|
+
nodeResponse.writeHead(response.status, response.headers)
|
|
268
249
|
nodeResponse.end(response.body.body)
|
|
269
250
|
return Effect.unit
|
|
270
251
|
}
|
|
@@ -272,10 +253,10 @@ const handleResponse = (
|
|
|
272
253
|
const body = response.body
|
|
273
254
|
return Effect.async<never, Error.ResponseError, void>((resume) => {
|
|
274
255
|
const r = new Response(body.formData)
|
|
275
|
-
const headers =
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
256
|
+
const headers = {
|
|
257
|
+
...response.headers,
|
|
258
|
+
...Object.fromEntries(r.headers)
|
|
259
|
+
}
|
|
279
260
|
nodeResponse.writeHead(response.status, headers)
|
|
280
261
|
Readable.fromWeb(r.body as any)
|
|
281
262
|
.pipe(nodeResponse)
|
|
@@ -293,12 +274,7 @@ const handleResponse = (
|
|
|
293
274
|
})
|
|
294
275
|
}
|
|
295
276
|
case "Stream": {
|
|
296
|
-
|
|
297
|
-
headers["content-type"] = response.body.contentType
|
|
298
|
-
if (response.body.contentLength) {
|
|
299
|
-
headers["content-length"] = response.body.contentLength.toString()
|
|
300
|
-
}
|
|
301
|
-
nodeResponse.writeHead(response.status, headers)
|
|
277
|
+
nodeResponse.writeHead(response.status, response.headers)
|
|
302
278
|
return Stream.run(
|
|
303
279
|
Stream.mapError(
|
|
304
280
|
response.body.stream,
|