@effect/platform-node 0.27.3 → 0.27.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/Http/Server/dist/effect-platform-node-Http-Server.cjs.dev.js +3 -1
- package/Http/Server/dist/effect-platform-node-Http-Server.cjs.prod.js +3 -1
- package/Http/Server/dist/effect-platform-node-Http-Server.esm.js +2 -1
- package/Http/ServerRequest/dist/effect-platform-node-Http-ServerRequest.cjs.d.mts +2 -0
- package/Http/ServerRequest/dist/effect-platform-node-Http-ServerRequest.cjs.d.mts.map +1 -0
- package/Http/ServerRequest/dist/effect-platform-node-Http-ServerRequest.cjs.d.ts +2 -0
- package/Http/ServerRequest/dist/effect-platform-node-Http-ServerRequest.cjs.d.ts.map +1 -0
- package/Http/ServerRequest/dist/effect-platform-node-Http-ServerRequest.cjs.dev.js +75 -0
- package/Http/ServerRequest/dist/effect-platform-node-Http-ServerRequest.cjs.js +7 -0
- package/Http/ServerRequest/dist/effect-platform-node-Http-ServerRequest.cjs.mjs +1 -0
- package/Http/ServerRequest/dist/effect-platform-node-Http-ServerRequest.cjs.prod.js +75 -0
- package/Http/ServerRequest/dist/effect-platform-node-Http-ServerRequest.esm.js +65 -0
- package/Http/ServerRequest/package.json +4 -0
- package/HttpServer/dist/effect-platform-node-HttpServer.cjs.dev.js +6 -4
- package/HttpServer/dist/effect-platform-node-HttpServer.cjs.prod.js +6 -4
- package/HttpServer/dist/effect-platform-node-HttpServer.esm.js +5 -3
- package/dist/Server-1f2aa4ca.cjs.dev.js +83 -0
- package/dist/Server-96c17c96.cjs.prod.js +83 -0
- package/dist/Server-c315ddf2.esm.js +57 -0
- package/dist/declarations/src/Http/Server.d.ts +11 -0
- package/dist/declarations/src/Http/Server.d.ts.map +1 -1
- package/dist/declarations/src/Http/ServerRequest.d.ts +18 -0
- package/dist/declarations/src/Http/ServerRequest.d.ts.map +1 -0
- package/dist/declarations/src/HttpServer.d.ts +3 -3
- package/dist/declarations/src/HttpServer.d.ts.map +1 -1
- package/dist/{Server-9108df65.cjs.prod.js → server-42346e37.cjs.prod.js} +29 -69
- package/dist/{Server-c9262046.esm.js → server-442c5e69.esm.js} +29 -70
- package/dist/{Server-7a3dbcbe.cjs.dev.js → server-b13861a8.cjs.dev.js} +29 -69
- package/package.json +7 -1
- package/src/Http/Server.ts +25 -0
- package/src/Http/ServerRequest.ts +19 -0
- package/src/HttpServer.ts +3 -3
- package/src/internal/http/server.ts +49 -24
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { m as make$1, a as makeHandler$1, l as layer$1, b as layerConfig$1 } from './server-442c5e69.esm.js';
|
|
2
|
+
import * as Server$1 from '@effect/platform/Http/Server';
|
|
3
|
+
|
|
4
|
+
function _mergeNamespaces(n, m) {
|
|
5
|
+
m.forEach(function (e) {
|
|
6
|
+
e && typeof e !== 'string' && !Array.isArray(e) && Object.keys(e).forEach(function (k) {
|
|
7
|
+
if (k !== 'default' && !(k in n)) {
|
|
8
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
9
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
10
|
+
enumerable: true,
|
|
11
|
+
get: function () { return e[k]; }
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
});
|
|
15
|
+
});
|
|
16
|
+
return Object.freeze(n);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* @since 1.0.0
|
|
21
|
+
*
|
|
22
|
+
* Also includes exports from [`@effect/platform/Http/Server`](https://effect-ts.github.io/platform/platform/Http/Server.ts.html).
|
|
23
|
+
*/
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* @since 1.0.0
|
|
27
|
+
* @category constructors
|
|
28
|
+
*/
|
|
29
|
+
const make = make$1;
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* @since 1.0.0
|
|
33
|
+
* @category constructors
|
|
34
|
+
*/
|
|
35
|
+
const makeHandler = makeHandler$1;
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* @since 1.0.0
|
|
39
|
+
* @category layers
|
|
40
|
+
*/
|
|
41
|
+
const layer = layer$1;
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* @since 1.0.0
|
|
45
|
+
* @category layers
|
|
46
|
+
*/
|
|
47
|
+
const layerConfig = layerConfig$1;
|
|
48
|
+
|
|
49
|
+
var Server = /*#__PURE__*/_mergeNamespaces({
|
|
50
|
+
__proto__: null,
|
|
51
|
+
make: make,
|
|
52
|
+
makeHandler: makeHandler,
|
|
53
|
+
layer: layer,
|
|
54
|
+
layerConfig: layerConfig
|
|
55
|
+
}, [Server$1]);
|
|
56
|
+
|
|
57
|
+
export { Server as S, makeHandler as a, layerConfig as b, layer as l, make as m };
|
|
@@ -5,8 +5,11 @@
|
|
|
5
5
|
*
|
|
6
6
|
* Also includes exports from [`@effect/platform/Http/Server`](https://effect-ts.github.io/platform/platform/Http/Server.ts.html).
|
|
7
7
|
*/
|
|
8
|
+
import type * as App from "@effect/platform/Http/App";
|
|
9
|
+
import type * as Middleware from "@effect/platform/Http/Middleware";
|
|
8
10
|
import type * as Platform from "@effect/platform/Http/Platform";
|
|
9
11
|
import type * as Server from "@effect/platform/Http/Server";
|
|
12
|
+
import type * as ServerRequest from "@effect/platform/Http/ServerRequest";
|
|
10
13
|
import type * as Config from "effect/Config";
|
|
11
14
|
import type * as ConfigError from "effect/ConfigError";
|
|
12
15
|
import type * as Effect from "effect/Effect";
|
|
@@ -24,6 +27,14 @@ export * from "@effect/platform/Http/Server";
|
|
|
24
27
|
* @category constructors
|
|
25
28
|
*/
|
|
26
29
|
export declare const make: (evaluate: LazyArg<Http.Server>, options: Net.ListenOptions) => Effect.Effect<Scope.Scope, never, Server.Server>;
|
|
30
|
+
/**
|
|
31
|
+
* @since 1.0.0
|
|
32
|
+
* @category constructors
|
|
33
|
+
*/
|
|
34
|
+
export declare const makeHandler: {
|
|
35
|
+
<R, E>(httpApp: App.Default<R, E>): Effect.Effect<Exclude<R, ServerRequest.ServerRequest>, never, (nodeRequest: Http.IncomingMessage, nodeResponse: Http.ServerResponse<Http.IncomingMessage>) => void>;
|
|
36
|
+
<R, E, App extends App.Default<any, any>>(httpApp: App.Default<R, E>, middleware: Middleware.Middleware.Applied<R, E, App>): Effect.Effect<Exclude<Effect.Effect.Context<App>, ServerRequest.ServerRequest>, never, (nodeRequest: Http.IncomingMessage, nodeResponse: Http.ServerResponse<Http.IncomingMessage>) => void>;
|
|
37
|
+
};
|
|
27
38
|
/**
|
|
28
39
|
* @since 1.0.0
|
|
29
40
|
* @category layers
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Server.d.ts","sourceRoot":"../../../../src/Http","sources":["Server.ts"],"names":[],"mappings":";;AAAA;;;;GAIG;AACH,OAAO,KAAK,KAAK,QAAQ,MAAM,gCAAgC,CAAA;AAC/D,OAAO,KAAK,KAAK,MAAM,MAAM,8BAA8B,CAAA;AAC3D,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAC5C,OAAO,KAAK,KAAK,WAAW,MAAM,oBAAoB,CAAA;AACtD,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAC5C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,KAAK,IAAI,MAAM,WAAW,CAAA;AACtC,OAAO,KAAK,KAAK,GAAG,MAAM,UAAU,CAAA;AAGpC;;GAEG;AACH,cAAc,8BAA8B,CAAA;AAE5C;;;GAGG;AACH,eAAO,MAAM,IAAI,EAAE,CACjB,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAC9B,OAAO,EAAE,GAAG,CAAC,aAAa,KACvB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAiB,CAAA;AAErE;;;GAGG;AACH,eAAO,MAAM,KAAK,EAAE,CAClB,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,eAAe,EAAE,OAAO,IAAI,CAAC,cAAc,CAAC,CAAC,EACvF,OAAO,EAAE,GAAG,CAAC,aAAa,KACvB,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAkB,CAAA;AAElF;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,CACxB,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,eAAe,EAAE,OAAO,IAAI,CAAC,cAAc,CAAC,CAAC,EACvF,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,KAC3C,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,WAAW,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAwB,CAAA"}
|
|
1
|
+
{"version":3,"file":"Server.d.ts","sourceRoot":"../../../../src/Http","sources":["Server.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
/**
|
|
3
|
+
* @since 1.0.0
|
|
4
|
+
*
|
|
5
|
+
* Also includes exports from [`@effect/platform/Http/ServerRequest`](https://effect-ts.github.io/platform/platform/Http/ServerRequest.ts.html).
|
|
6
|
+
*/
|
|
7
|
+
import type * as ServerRequest from "@effect/platform/Http/ServerRequest";
|
|
8
|
+
import type * as Http from "node:http";
|
|
9
|
+
/**
|
|
10
|
+
* @since 1.0.0
|
|
11
|
+
*/
|
|
12
|
+
export * from "@effect/platform/Http/ServerRequest";
|
|
13
|
+
/**
|
|
14
|
+
* @category conversions
|
|
15
|
+
* @since 1.0.0
|
|
16
|
+
*/
|
|
17
|
+
export declare const toIncomingMessage: (self: ServerRequest.ServerRequest) => Http.IncomingMessage;
|
|
18
|
+
//# sourceMappingURL=ServerRequest.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ServerRequest.d.ts","sourceRoot":"../../../../src/Http","sources":["ServerRequest.ts"],"names":[],"mappings":";AAAA;;;;GAIG;AACH,OAAO,KAAK,KAAK,aAAa,MAAM,qCAAqC,CAAA;AACzE,OAAO,KAAK,KAAK,IAAI,MAAM,WAAW,CAAA;AAGtC;;GAEG;AACH,cAAc,qCAAqC,CAAA;AAEnD;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,KAAK,IAAI,CAAC,eAAwC,CAAA"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @since 1.0.0
|
|
3
3
|
*/
|
|
4
|
+
import * as request from "./Http/ServerRequest.js";
|
|
4
5
|
import * as app from "@effect/platform/Http/App";
|
|
5
6
|
import * as body from "@effect/platform/Http/Body";
|
|
6
7
|
import * as headers from "@effect/platform/Http/Headers";
|
|
7
8
|
import * as middleware from "@effect/platform/Http/Middleware";
|
|
8
9
|
import * as router from "@effect/platform/Http/Router";
|
|
9
10
|
import * as error from "@effect/platform/Http/ServerError";
|
|
10
|
-
import * as request from "@effect/platform/Http/ServerRequest";
|
|
11
11
|
import * as response from "@effect/platform/Http/ServerResponse";
|
|
12
12
|
import * as urlParams from "@effect/platform/Http/UrlParams";
|
|
13
13
|
import * as etag from "./Http/Etag.js";
|
|
@@ -66,8 +66,8 @@ middleware,
|
|
|
66
66
|
/**
|
|
67
67
|
* @since 1.0.0
|
|
68
68
|
*
|
|
69
|
-
* - Docs: [Http/ServerRequest](https://effect-ts.github.io/platform/platform/Http/ServerRequest.ts.html)
|
|
70
|
-
* - Module: `@effect/platform/Http/ServerRequest`
|
|
69
|
+
* - Docs: [Http/ServerRequest](https://effect-ts.github.io/platform/platform-node/Http/ServerRequest.ts.html)
|
|
70
|
+
* - Module: `@effect/platform-node/Http/ServerRequest`
|
|
71
71
|
*/
|
|
72
72
|
request,
|
|
73
73
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HttpServer.d.ts","sourceRoot":"../../../src","sources":["HttpServer.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,GAAG,MAAM,2BAA2B,CAAA;AAChD,OAAO,KAAK,IAAI,MAAM,4BAA4B,CAAA;AAClD,OAAO,KAAK,OAAO,MAAM,+BAA+B,CAAA;AACxD,OAAO,KAAK,UAAU,MAAM,kCAAkC,CAAA;AAC9D,OAAO,KAAK,MAAM,MAAM,8BAA8B,CAAA;AACtD,OAAO,KAAK,KAAK,MAAM,mCAAmC,CAAA;AAC1D,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"HttpServer.d.ts","sourceRoot":"../../../src","sources":["HttpServer.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,OAAO,gCAAgD;AACnE,OAAO,KAAK,GAAG,MAAM,2BAA2B,CAAA;AAChD,OAAO,KAAK,IAAI,MAAM,4BAA4B,CAAA;AAClD,OAAO,KAAK,OAAO,MAAM,+BAA+B,CAAA;AACxD,OAAO,KAAK,UAAU,MAAM,kCAAkC,CAAA;AAC9D,OAAO,KAAK,MAAM,MAAM,8BAA8B,CAAA;AACtD,OAAO,KAAK,KAAK,MAAM,mCAAmC,CAAA;AAC1D,OAAO,KAAK,QAAQ,MAAM,sCAAsC,CAAA;AAChE,OAAO,KAAK,SAAS,MAAM,iCAAiC,CAAA;AAC5D,OAAO,KAAK,IAAI,uBAAmB;AACnC,OAAO,KAAK,QAAQ,2BAAuB;AAC3C,OAAO,KAAK,MAAM,yBAAqB;AAEvC,OAAO;AACL;;;;;GAKG;AACH,GAAG;AACH;;;;;GAKG;AACH,IAAI;AACJ;;;;;GAKG;AACH,KAAK;AACL;;;;;GAKG;AACH,IAAI;AACJ;;;;;GAKG;AACH,QAAQ;AACR;;;;;GAKG;AACH,OAAO;AACP;;;;;GAKG;AACH,UAAU;AACV;;;;;GAKG;AACH,OAAO;AACP;;;;;GAKG;AACH,QAAQ;AACR;;;;;GAKG;AACH,MAAM;AACN;;;;;GAKG;AACH,MAAM;AACN;;;;;GAKG;AACH,SAAS,EACV,CAAA"}
|
|
@@ -4,7 +4,7 @@ var FileSystem = require('@effect/platform/FileSystem');
|
|
|
4
4
|
var App = require('@effect/platform/Http/App');
|
|
5
5
|
var IncomingMessage = require('@effect/platform/Http/IncomingMessage');
|
|
6
6
|
var Middleware = require('@effect/platform/Http/Middleware');
|
|
7
|
-
var Server
|
|
7
|
+
var Server = require('@effect/platform/Http/Server');
|
|
8
8
|
var Error = require('@effect/platform/Http/ServerError');
|
|
9
9
|
var ServerRequest = require('@effect/platform/Http/ServerRequest');
|
|
10
10
|
var Config = require('effect/Config');
|
|
@@ -39,26 +39,11 @@ function _interopNamespace(e) {
|
|
|
39
39
|
return Object.freeze(n);
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
function _mergeNamespaces(n, m) {
|
|
43
|
-
m.forEach(function (e) {
|
|
44
|
-
e && typeof e !== 'string' && !Array.isArray(e) && Object.keys(e).forEach(function (k) {
|
|
45
|
-
if (k !== 'default' && !(k in n)) {
|
|
46
|
-
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
47
|
-
Object.defineProperty(n, k, d.get ? d : {
|
|
48
|
-
enumerable: true,
|
|
49
|
-
get: function () { return e[k]; }
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
});
|
|
53
|
-
});
|
|
54
|
-
return Object.freeze(n);
|
|
55
|
-
}
|
|
56
|
-
|
|
57
42
|
var FileSystem__namespace = /*#__PURE__*/_interopNamespace(FileSystem);
|
|
58
43
|
var App__namespace = /*#__PURE__*/_interopNamespace(App);
|
|
59
44
|
var IncomingMessage__namespace = /*#__PURE__*/_interopNamespace(IncomingMessage);
|
|
60
45
|
var Middleware__namespace = /*#__PURE__*/_interopNamespace(Middleware);
|
|
61
|
-
var Server__namespace = /*#__PURE__*/_interopNamespace(Server
|
|
46
|
+
var Server__namespace = /*#__PURE__*/_interopNamespace(Server);
|
|
62
47
|
var Error__namespace = /*#__PURE__*/_interopNamespace(Error);
|
|
63
48
|
var ServerRequest__namespace = /*#__PURE__*/_interopNamespace(ServerRequest);
|
|
64
49
|
var Config__namespace = /*#__PURE__*/_interopNamespace(Config);
|
|
@@ -70,7 +55,7 @@ var Runtime__namespace = /*#__PURE__*/_interopNamespace(Runtime);
|
|
|
70
55
|
var Stream__namespace = /*#__PURE__*/_interopNamespace(Stream);
|
|
71
56
|
|
|
72
57
|
/** @internal */
|
|
73
|
-
const make
|
|
58
|
+
const make = (evaluate, options) => Effect__namespace.gen(function* (_) {
|
|
74
59
|
const server = evaluate();
|
|
75
60
|
const serverFiber = yield* _(Effect__namespace.addFinalizer(() => Effect__namespace.async(resume => {
|
|
76
61
|
server.close(error => {
|
|
@@ -102,24 +87,10 @@ const make$1 = (evaluate, options) => Effect__namespace.gen(function* (_) {
|
|
|
102
87
|
hostname: address.address,
|
|
103
88
|
port: address.port
|
|
104
89
|
},
|
|
105
|
-
serve: (httpApp, middleware) => {
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
function handler(nodeRequest, nodeResponse) {
|
|
110
|
-
const fiber = runFork(Effect__namespace.provideService(handledApp, ServerRequest__namespace.ServerRequest, new ServerRequestImpl(nodeRequest, nodeResponse)));
|
|
111
|
-
nodeResponse.on("close", () => {
|
|
112
|
-
if (!nodeResponse.writableEnded) {
|
|
113
|
-
runFork(fiber.interruptAsFork(fiberId));
|
|
114
|
-
}
|
|
115
|
-
});
|
|
116
|
-
}
|
|
117
|
-
return Effect__namespace.all([Effect__namespace.acquireRelease(Effect__namespace.sync(() => server.on("request", handler)), () => Effect__namespace.sync(() => server.off("request", handler))), Fiber__namespace.join(serverFiber)], {
|
|
118
|
-
discard: true,
|
|
119
|
-
concurrency: "unbounded"
|
|
120
|
-
});
|
|
121
|
-
});
|
|
122
|
-
}
|
|
90
|
+
serve: (httpApp, middleware) => Effect__namespace.flatMap(makeHandler(httpApp, middleware), handler => Effect__namespace.all([Effect__namespace.acquireRelease(Effect__namespace.sync(() => server.on("request", handler)), () => Effect__namespace.sync(() => server.off("request", handler))), Fiber__namespace.join(serverFiber)], {
|
|
91
|
+
discard: true,
|
|
92
|
+
concurrency: "unbounded"
|
|
93
|
+
}))
|
|
123
94
|
});
|
|
124
95
|
}).pipe(Effect__namespace.locally(IncomingMessage__namespace.maxBodySize, Option__namespace.some(FileSystem__namespace.Size(1024 * 1024 * 10))));
|
|
125
96
|
const respond = /*#__PURE__*/Middleware__namespace.make(httpApp => Effect__namespace.flatMap(ServerRequest__namespace.ServerRequest, request => Effect__namespace.tapErrorCause(Effect__namespace.tap(Effect__namespace.flatMap(httpApp, response => Effect__namespace.flatMap(App__namespace.preResponseHandler, f => f(request, response))), response => handleResponse(request, response)), _cause => Effect__namespace.sync(() => {
|
|
@@ -131,6 +102,22 @@ const respond = /*#__PURE__*/Middleware__namespace.make(httpApp => Effect__names
|
|
|
131
102
|
nodeResponse.end();
|
|
132
103
|
}
|
|
133
104
|
}))));
|
|
105
|
+
|
|
106
|
+
/** @internal */
|
|
107
|
+
const makeHandler = (httpApp, middleware) => {
|
|
108
|
+
const handledApp = middleware ? middleware(App__namespace.withDefaultMiddleware(respond(httpApp))) : App__namespace.withDefaultMiddleware(respond(httpApp));
|
|
109
|
+
return Effect__namespace.map(Effect__namespace.zip(Effect__namespace.runtime(), Effect__namespace.fiberId), ([runtime, fiberId]) => {
|
|
110
|
+
const runFork = Runtime__namespace.runFork(runtime);
|
|
111
|
+
return function handler(nodeRequest, nodeResponse) {
|
|
112
|
+
const fiber = runFork(Effect__namespace.provideService(handledApp, ServerRequest__namespace.ServerRequest, new ServerRequestImpl(nodeRequest, nodeResponse)));
|
|
113
|
+
nodeResponse.on("close", () => {
|
|
114
|
+
if (!nodeResponse.writableEnded) {
|
|
115
|
+
runFork(fiber.interruptAsFork(fiberId));
|
|
116
|
+
}
|
|
117
|
+
});
|
|
118
|
+
};
|
|
119
|
+
});
|
|
120
|
+
};
|
|
134
121
|
class ServerRequestImpl extends incomingMessage.IncomingMessageImpl {
|
|
135
122
|
constructor(source, response, url = source.url, headersOverride, remoteAddressOverride) {
|
|
136
123
|
super(source, _ => Error__namespace.RequestError({
|
|
@@ -182,10 +169,10 @@ class ServerRequestImpl extends incomingMessage.IncomingMessageImpl {
|
|
|
182
169
|
}
|
|
183
170
|
|
|
184
171
|
/** @internal */
|
|
185
|
-
const layer
|
|
172
|
+
const layer = (evaluate, options) => Layer__namespace.merge(Layer__namespace.scoped(Server__namespace.Server, make(evaluate, options)), platform.layer);
|
|
186
173
|
|
|
187
174
|
/** @internal */
|
|
188
|
-
const layerConfig
|
|
175
|
+
const layerConfig = (evaluate, options) => Layer__namespace.merge(Layer__namespace.scoped(Server__namespace.Server, Effect__namespace.flatMap(Effect__namespace.config(Config__namespace.unwrap(options)), options => make(evaluate, options))), platform.layer);
|
|
189
176
|
const handleResponse = (request, response) => Effect__namespace.suspend(() => {
|
|
190
177
|
const nodeResponse = request.response;
|
|
191
178
|
if (request.method === "HEAD") {
|
|
@@ -266,38 +253,11 @@ const handleResponse = (request, response) => Effect__namespace.suspend(() => {
|
|
|
266
253
|
}
|
|
267
254
|
});
|
|
268
255
|
|
|
269
|
-
/**
|
|
270
|
-
|
|
271
|
-
*
|
|
272
|
-
* Also includes exports from [`@effect/platform/Http/Server`](https://effect-ts.github.io/platform/platform/Http/Server.ts.html).
|
|
273
|
-
*/
|
|
274
|
-
|
|
275
|
-
/**
|
|
276
|
-
* @since 1.0.0
|
|
277
|
-
* @category constructors
|
|
278
|
-
*/
|
|
279
|
-
const make = make$1;
|
|
280
|
-
|
|
281
|
-
/**
|
|
282
|
-
* @since 1.0.0
|
|
283
|
-
* @category layers
|
|
284
|
-
*/
|
|
285
|
-
const layer = layer$1;
|
|
286
|
-
|
|
287
|
-
/**
|
|
288
|
-
* @since 1.0.0
|
|
289
|
-
* @category layers
|
|
290
|
-
*/
|
|
291
|
-
const layerConfig = layerConfig$1;
|
|
292
|
-
|
|
293
|
-
var Server = /*#__PURE__*/_mergeNamespaces({
|
|
294
|
-
__proto__: null,
|
|
295
|
-
make: make,
|
|
296
|
-
layer: layer,
|
|
297
|
-
layerConfig: layerConfig
|
|
298
|
-
}, [Server__namespace]);
|
|
256
|
+
/** @internal */
|
|
257
|
+
const requestSource = self => self.source;
|
|
299
258
|
|
|
300
|
-
exports.Server = Server;
|
|
301
259
|
exports.layer = layer;
|
|
302
260
|
exports.layerConfig = layerConfig;
|
|
303
261
|
exports.make = make;
|
|
262
|
+
exports.makeHandler = makeHandler;
|
|
263
|
+
exports.requestSource = requestSource;
|
|
@@ -2,7 +2,7 @@ import * as FileSystem from '@effect/platform/FileSystem';
|
|
|
2
2
|
import * as App from '@effect/platform/Http/App';
|
|
3
3
|
import * as IncomingMessage from '@effect/platform/Http/IncomingMessage';
|
|
4
4
|
import * as Middleware from '@effect/platform/Http/Middleware';
|
|
5
|
-
import * as Server
|
|
5
|
+
import * as Server from '@effect/platform/Http/Server';
|
|
6
6
|
import * as Error from '@effect/platform/Http/ServerError';
|
|
7
7
|
import * as ServerRequest from '@effect/platform/Http/ServerRequest';
|
|
8
8
|
import * as Config from 'effect/Config';
|
|
@@ -17,25 +17,10 @@ import { pipeline } from 'node:stream/promises';
|
|
|
17
17
|
import { fromWritable } from '../Sink/dist/effect-platform-node-Sink.esm.js';
|
|
18
18
|
import { f as formData, s as stream } from './formData-a1c010f8.esm.js';
|
|
19
19
|
import { I as IncomingMessageImpl } from './incomingMessage-5eb8c3fe.esm.js';
|
|
20
|
-
import { l as layer$
|
|
21
|
-
|
|
22
|
-
function _mergeNamespaces(n, m) {
|
|
23
|
-
m.forEach(function (e) {
|
|
24
|
-
e && typeof e !== 'string' && !Array.isArray(e) && Object.keys(e).forEach(function (k) {
|
|
25
|
-
if (k !== 'default' && !(k in n)) {
|
|
26
|
-
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
27
|
-
Object.defineProperty(n, k, d.get ? d : {
|
|
28
|
-
enumerable: true,
|
|
29
|
-
get: function () { return e[k]; }
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
});
|
|
33
|
-
});
|
|
34
|
-
return Object.freeze(n);
|
|
35
|
-
}
|
|
20
|
+
import { l as layer$1 } from './platform-2c00c2c5.esm.js';
|
|
36
21
|
|
|
37
22
|
/** @internal */
|
|
38
|
-
const make
|
|
23
|
+
const make = (evaluate, options) => Effect.gen(function* (_) {
|
|
39
24
|
const server = evaluate();
|
|
40
25
|
const serverFiber = yield* _(Effect.addFinalizer(() => Effect.async(resume => {
|
|
41
26
|
server.close(error => {
|
|
@@ -58,7 +43,7 @@ const make$1 = (evaluate, options) => Effect.gen(function* (_) {
|
|
|
58
43
|
});
|
|
59
44
|
}));
|
|
60
45
|
const address = server.address();
|
|
61
|
-
return Server
|
|
46
|
+
return Server.make({
|
|
62
47
|
address: typeof address === "string" ? {
|
|
63
48
|
_tag: "UnixAddress",
|
|
64
49
|
path: address
|
|
@@ -67,24 +52,10 @@ const make$1 = (evaluate, options) => Effect.gen(function* (_) {
|
|
|
67
52
|
hostname: address.address,
|
|
68
53
|
port: address.port
|
|
69
54
|
},
|
|
70
|
-
serve: (httpApp, middleware) => {
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
function handler(nodeRequest, nodeResponse) {
|
|
75
|
-
const fiber = runFork(Effect.provideService(handledApp, ServerRequest.ServerRequest, new ServerRequestImpl(nodeRequest, nodeResponse)));
|
|
76
|
-
nodeResponse.on("close", () => {
|
|
77
|
-
if (!nodeResponse.writableEnded) {
|
|
78
|
-
runFork(fiber.interruptAsFork(fiberId));
|
|
79
|
-
}
|
|
80
|
-
});
|
|
81
|
-
}
|
|
82
|
-
return Effect.all([Effect.acquireRelease(Effect.sync(() => server.on("request", handler)), () => Effect.sync(() => server.off("request", handler))), Fiber.join(serverFiber)], {
|
|
83
|
-
discard: true,
|
|
84
|
-
concurrency: "unbounded"
|
|
85
|
-
});
|
|
86
|
-
});
|
|
87
|
-
}
|
|
55
|
+
serve: (httpApp, middleware) => Effect.flatMap(makeHandler(httpApp, middleware), handler => Effect.all([Effect.acquireRelease(Effect.sync(() => server.on("request", handler)), () => Effect.sync(() => server.off("request", handler))), Fiber.join(serverFiber)], {
|
|
56
|
+
discard: true,
|
|
57
|
+
concurrency: "unbounded"
|
|
58
|
+
}))
|
|
88
59
|
});
|
|
89
60
|
}).pipe(Effect.locally(IncomingMessage.maxBodySize, Option.some(FileSystem.Size(1024 * 1024 * 10))));
|
|
90
61
|
const respond = /*#__PURE__*/Middleware.make(httpApp => Effect.flatMap(ServerRequest.ServerRequest, request => Effect.tapErrorCause(Effect.tap(Effect.flatMap(httpApp, response => Effect.flatMap(App.preResponseHandler, f => f(request, response))), response => handleResponse(request, response)), _cause => Effect.sync(() => {
|
|
@@ -96,6 +67,22 @@ const respond = /*#__PURE__*/Middleware.make(httpApp => Effect.flatMap(ServerReq
|
|
|
96
67
|
nodeResponse.end();
|
|
97
68
|
}
|
|
98
69
|
}))));
|
|
70
|
+
|
|
71
|
+
/** @internal */
|
|
72
|
+
const makeHandler = (httpApp, middleware) => {
|
|
73
|
+
const handledApp = middleware ? middleware(App.withDefaultMiddleware(respond(httpApp))) : App.withDefaultMiddleware(respond(httpApp));
|
|
74
|
+
return Effect.map(Effect.zip(Effect.runtime(), Effect.fiberId), ([runtime, fiberId]) => {
|
|
75
|
+
const runFork = Runtime.runFork(runtime);
|
|
76
|
+
return function handler(nodeRequest, nodeResponse) {
|
|
77
|
+
const fiber = runFork(Effect.provideService(handledApp, ServerRequest.ServerRequest, new ServerRequestImpl(nodeRequest, nodeResponse)));
|
|
78
|
+
nodeResponse.on("close", () => {
|
|
79
|
+
if (!nodeResponse.writableEnded) {
|
|
80
|
+
runFork(fiber.interruptAsFork(fiberId));
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
};
|
|
84
|
+
});
|
|
85
|
+
};
|
|
99
86
|
class ServerRequestImpl extends IncomingMessageImpl {
|
|
100
87
|
constructor(source, response, url = source.url, headersOverride, remoteAddressOverride) {
|
|
101
88
|
super(source, _ => Error.RequestError({
|
|
@@ -147,10 +134,10 @@ class ServerRequestImpl extends IncomingMessageImpl {
|
|
|
147
134
|
}
|
|
148
135
|
|
|
149
136
|
/** @internal */
|
|
150
|
-
const layer
|
|
137
|
+
const layer = (evaluate, options) => Layer.merge(Layer.scoped(Server.Server, make(evaluate, options)), layer$1);
|
|
151
138
|
|
|
152
139
|
/** @internal */
|
|
153
|
-
const layerConfig
|
|
140
|
+
const layerConfig = (evaluate, options) => Layer.merge(Layer.scoped(Server.Server, Effect.flatMap(Effect.config(Config.unwrap(options)), options => make(evaluate, options))), layer$1);
|
|
154
141
|
const handleResponse = (request, response) => Effect.suspend(() => {
|
|
155
142
|
const nodeResponse = request.response;
|
|
156
143
|
if (request.method === "HEAD") {
|
|
@@ -231,35 +218,7 @@ const handleResponse = (request, response) => Effect.suspend(() => {
|
|
|
231
218
|
}
|
|
232
219
|
});
|
|
233
220
|
|
|
234
|
-
/**
|
|
235
|
-
|
|
236
|
-
*
|
|
237
|
-
* Also includes exports from [`@effect/platform/Http/Server`](https://effect-ts.github.io/platform/platform/Http/Server.ts.html).
|
|
238
|
-
*/
|
|
239
|
-
|
|
240
|
-
/**
|
|
241
|
-
* @since 1.0.0
|
|
242
|
-
* @category constructors
|
|
243
|
-
*/
|
|
244
|
-
const make = make$1;
|
|
245
|
-
|
|
246
|
-
/**
|
|
247
|
-
* @since 1.0.0
|
|
248
|
-
* @category layers
|
|
249
|
-
*/
|
|
250
|
-
const layer = layer$1;
|
|
251
|
-
|
|
252
|
-
/**
|
|
253
|
-
* @since 1.0.0
|
|
254
|
-
* @category layers
|
|
255
|
-
*/
|
|
256
|
-
const layerConfig = layerConfig$1;
|
|
257
|
-
|
|
258
|
-
var Server = /*#__PURE__*/_mergeNamespaces({
|
|
259
|
-
__proto__: null,
|
|
260
|
-
make: make,
|
|
261
|
-
layer: layer,
|
|
262
|
-
layerConfig: layerConfig
|
|
263
|
-
}, [Server$1]);
|
|
221
|
+
/** @internal */
|
|
222
|
+
const requestSource = self => self.source;
|
|
264
223
|
|
|
265
|
-
export {
|
|
224
|
+
export { makeHandler as a, layerConfig as b, layer as l, make as m, requestSource as r };
|
|
@@ -4,7 +4,7 @@ var FileSystem = require('@effect/platform/FileSystem');
|
|
|
4
4
|
var App = require('@effect/platform/Http/App');
|
|
5
5
|
var IncomingMessage = require('@effect/platform/Http/IncomingMessage');
|
|
6
6
|
var Middleware = require('@effect/platform/Http/Middleware');
|
|
7
|
-
var Server
|
|
7
|
+
var Server = require('@effect/platform/Http/Server');
|
|
8
8
|
var Error = require('@effect/platform/Http/ServerError');
|
|
9
9
|
var ServerRequest = require('@effect/platform/Http/ServerRequest');
|
|
10
10
|
var Config = require('effect/Config');
|
|
@@ -39,26 +39,11 @@ function _interopNamespace(e) {
|
|
|
39
39
|
return Object.freeze(n);
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
function _mergeNamespaces(n, m) {
|
|
43
|
-
m.forEach(function (e) {
|
|
44
|
-
e && typeof e !== 'string' && !Array.isArray(e) && Object.keys(e).forEach(function (k) {
|
|
45
|
-
if (k !== 'default' && !(k in n)) {
|
|
46
|
-
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
47
|
-
Object.defineProperty(n, k, d.get ? d : {
|
|
48
|
-
enumerable: true,
|
|
49
|
-
get: function () { return e[k]; }
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
});
|
|
53
|
-
});
|
|
54
|
-
return Object.freeze(n);
|
|
55
|
-
}
|
|
56
|
-
|
|
57
42
|
var FileSystem__namespace = /*#__PURE__*/_interopNamespace(FileSystem);
|
|
58
43
|
var App__namespace = /*#__PURE__*/_interopNamespace(App);
|
|
59
44
|
var IncomingMessage__namespace = /*#__PURE__*/_interopNamespace(IncomingMessage);
|
|
60
45
|
var Middleware__namespace = /*#__PURE__*/_interopNamespace(Middleware);
|
|
61
|
-
var Server__namespace = /*#__PURE__*/_interopNamespace(Server
|
|
46
|
+
var Server__namespace = /*#__PURE__*/_interopNamespace(Server);
|
|
62
47
|
var Error__namespace = /*#__PURE__*/_interopNamespace(Error);
|
|
63
48
|
var ServerRequest__namespace = /*#__PURE__*/_interopNamespace(ServerRequest);
|
|
64
49
|
var Config__namespace = /*#__PURE__*/_interopNamespace(Config);
|
|
@@ -70,7 +55,7 @@ var Runtime__namespace = /*#__PURE__*/_interopNamespace(Runtime);
|
|
|
70
55
|
var Stream__namespace = /*#__PURE__*/_interopNamespace(Stream);
|
|
71
56
|
|
|
72
57
|
/** @internal */
|
|
73
|
-
const make
|
|
58
|
+
const make = (evaluate, options) => Effect__namespace.gen(function* (_) {
|
|
74
59
|
const server = evaluate();
|
|
75
60
|
const serverFiber = yield* _(Effect__namespace.addFinalizer(() => Effect__namespace.async(resume => {
|
|
76
61
|
server.close(error => {
|
|
@@ -102,24 +87,10 @@ const make$1 = (evaluate, options) => Effect__namespace.gen(function* (_) {
|
|
|
102
87
|
hostname: address.address,
|
|
103
88
|
port: address.port
|
|
104
89
|
},
|
|
105
|
-
serve: (httpApp, middleware) => {
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
function handler(nodeRequest, nodeResponse) {
|
|
110
|
-
const fiber = runFork(Effect__namespace.provideService(handledApp, ServerRequest__namespace.ServerRequest, new ServerRequestImpl(nodeRequest, nodeResponse)));
|
|
111
|
-
nodeResponse.on("close", () => {
|
|
112
|
-
if (!nodeResponse.writableEnded) {
|
|
113
|
-
runFork(fiber.interruptAsFork(fiberId));
|
|
114
|
-
}
|
|
115
|
-
});
|
|
116
|
-
}
|
|
117
|
-
return Effect__namespace.all([Effect__namespace.acquireRelease(Effect__namespace.sync(() => server.on("request", handler)), () => Effect__namespace.sync(() => server.off("request", handler))), Fiber__namespace.join(serverFiber)], {
|
|
118
|
-
discard: true,
|
|
119
|
-
concurrency: "unbounded"
|
|
120
|
-
});
|
|
121
|
-
});
|
|
122
|
-
}
|
|
90
|
+
serve: (httpApp, middleware) => Effect__namespace.flatMap(makeHandler(httpApp, middleware), handler => Effect__namespace.all([Effect__namespace.acquireRelease(Effect__namespace.sync(() => server.on("request", handler)), () => Effect__namespace.sync(() => server.off("request", handler))), Fiber__namespace.join(serverFiber)], {
|
|
91
|
+
discard: true,
|
|
92
|
+
concurrency: "unbounded"
|
|
93
|
+
}))
|
|
123
94
|
});
|
|
124
95
|
}).pipe(Effect__namespace.locally(IncomingMessage__namespace.maxBodySize, Option__namespace.some(FileSystem__namespace.Size(1024 * 1024 * 10))));
|
|
125
96
|
const respond = /*#__PURE__*/Middleware__namespace.make(httpApp => Effect__namespace.flatMap(ServerRequest__namespace.ServerRequest, request => Effect__namespace.tapErrorCause(Effect__namespace.tap(Effect__namespace.flatMap(httpApp, response => Effect__namespace.flatMap(App__namespace.preResponseHandler, f => f(request, response))), response => handleResponse(request, response)), _cause => Effect__namespace.sync(() => {
|
|
@@ -131,6 +102,22 @@ const respond = /*#__PURE__*/Middleware__namespace.make(httpApp => Effect__names
|
|
|
131
102
|
nodeResponse.end();
|
|
132
103
|
}
|
|
133
104
|
}))));
|
|
105
|
+
|
|
106
|
+
/** @internal */
|
|
107
|
+
const makeHandler = (httpApp, middleware) => {
|
|
108
|
+
const handledApp = middleware ? middleware(App__namespace.withDefaultMiddleware(respond(httpApp))) : App__namespace.withDefaultMiddleware(respond(httpApp));
|
|
109
|
+
return Effect__namespace.map(Effect__namespace.zip(Effect__namespace.runtime(), Effect__namespace.fiberId), ([runtime, fiberId]) => {
|
|
110
|
+
const runFork = Runtime__namespace.runFork(runtime);
|
|
111
|
+
return function handler(nodeRequest, nodeResponse) {
|
|
112
|
+
const fiber = runFork(Effect__namespace.provideService(handledApp, ServerRequest__namespace.ServerRequest, new ServerRequestImpl(nodeRequest, nodeResponse)));
|
|
113
|
+
nodeResponse.on("close", () => {
|
|
114
|
+
if (!nodeResponse.writableEnded) {
|
|
115
|
+
runFork(fiber.interruptAsFork(fiberId));
|
|
116
|
+
}
|
|
117
|
+
});
|
|
118
|
+
};
|
|
119
|
+
});
|
|
120
|
+
};
|
|
134
121
|
class ServerRequestImpl extends incomingMessage.IncomingMessageImpl {
|
|
135
122
|
constructor(source, response, url = source.url, headersOverride, remoteAddressOverride) {
|
|
136
123
|
super(source, _ => Error__namespace.RequestError({
|
|
@@ -182,10 +169,10 @@ class ServerRequestImpl extends incomingMessage.IncomingMessageImpl {
|
|
|
182
169
|
}
|
|
183
170
|
|
|
184
171
|
/** @internal */
|
|
185
|
-
const layer
|
|
172
|
+
const layer = (evaluate, options) => Layer__namespace.merge(Layer__namespace.scoped(Server__namespace.Server, make(evaluate, options)), platform.layer);
|
|
186
173
|
|
|
187
174
|
/** @internal */
|
|
188
|
-
const layerConfig
|
|
175
|
+
const layerConfig = (evaluate, options) => Layer__namespace.merge(Layer__namespace.scoped(Server__namespace.Server, Effect__namespace.flatMap(Effect__namespace.config(Config__namespace.unwrap(options)), options => make(evaluate, options))), platform.layer);
|
|
189
176
|
const handleResponse = (request, response) => Effect__namespace.suspend(() => {
|
|
190
177
|
const nodeResponse = request.response;
|
|
191
178
|
if (request.method === "HEAD") {
|
|
@@ -266,38 +253,11 @@ const handleResponse = (request, response) => Effect__namespace.suspend(() => {
|
|
|
266
253
|
}
|
|
267
254
|
});
|
|
268
255
|
|
|
269
|
-
/**
|
|
270
|
-
|
|
271
|
-
*
|
|
272
|
-
* Also includes exports from [`@effect/platform/Http/Server`](https://effect-ts.github.io/platform/platform/Http/Server.ts.html).
|
|
273
|
-
*/
|
|
274
|
-
|
|
275
|
-
/**
|
|
276
|
-
* @since 1.0.0
|
|
277
|
-
* @category constructors
|
|
278
|
-
*/
|
|
279
|
-
const make = make$1;
|
|
280
|
-
|
|
281
|
-
/**
|
|
282
|
-
* @since 1.0.0
|
|
283
|
-
* @category layers
|
|
284
|
-
*/
|
|
285
|
-
const layer = layer$1;
|
|
286
|
-
|
|
287
|
-
/**
|
|
288
|
-
* @since 1.0.0
|
|
289
|
-
* @category layers
|
|
290
|
-
*/
|
|
291
|
-
const layerConfig = layerConfig$1;
|
|
292
|
-
|
|
293
|
-
var Server = /*#__PURE__*/_mergeNamespaces({
|
|
294
|
-
__proto__: null,
|
|
295
|
-
make: make,
|
|
296
|
-
layer: layer,
|
|
297
|
-
layerConfig: layerConfig
|
|
298
|
-
}, [Server__namespace]);
|
|
256
|
+
/** @internal */
|
|
257
|
+
const requestSource = self => self.source;
|
|
299
258
|
|
|
300
|
-
exports.Server = Server;
|
|
301
259
|
exports.layer = layer;
|
|
302
260
|
exports.layerConfig = layerConfig;
|
|
303
261
|
exports.make = make;
|
|
262
|
+
exports.makeHandler = makeHandler;
|
|
263
|
+
exports.requestSource = requestSource;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect/platform-node",
|
|
3
|
-
"version": "0.27.
|
|
3
|
+
"version": "0.27.4",
|
|
4
4
|
"description": "Unified interfaces for common platform-specific services",
|
|
5
5
|
"main": "dist/effect-platform-node.cjs.js",
|
|
6
6
|
"module": "dist/effect-platform-node.esm.js",
|
|
@@ -136,6 +136,12 @@
|
|
|
136
136
|
"import": "./Http/Server/dist/effect-platform-node-Http-Server.cjs.mjs",
|
|
137
137
|
"default": "./Http/Server/dist/effect-platform-node-Http-Server.cjs.js"
|
|
138
138
|
},
|
|
139
|
+
"./Http/ServerRequest": {
|
|
140
|
+
"types": "./dist/declarations/src/Http/ServerRequest.d.ts",
|
|
141
|
+
"module": "./Http/ServerRequest/dist/effect-platform-node-Http-ServerRequest.esm.js",
|
|
142
|
+
"import": "./Http/ServerRequest/dist/effect-platform-node-Http-ServerRequest.cjs.mjs",
|
|
143
|
+
"default": "./Http/ServerRequest/dist/effect-platform-node-Http-ServerRequest.cjs.js"
|
|
144
|
+
},
|
|
139
145
|
"./HttpClient": {
|
|
140
146
|
"types": "./dist/declarations/src/HttpClient.d.ts",
|
|
141
147
|
"module": "./HttpClient/dist/effect-platform-node-HttpClient.esm.js",
|