@effect/platform 0.31.1 → 0.31.2

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 (32) hide show
  1. package/dist/cjs/Http/App.js +43 -1
  2. package/dist/cjs/Http/App.js.map +1 -1
  3. package/dist/cjs/Http/ServerRequest.js +6 -1
  4. package/dist/cjs/Http/ServerRequest.js.map +1 -1
  5. package/dist/cjs/Http/ServerResponse.js +6 -1
  6. package/dist/cjs/Http/ServerResponse.js.map +1 -1
  7. package/dist/cjs/internal/http/serverRequest.js +112 -1
  8. package/dist/cjs/internal/http/serverRequest.js.map +1 -1
  9. package/dist/cjs/internal/http/serverResponse.js +49 -1
  10. package/dist/cjs/internal/http/serverResponse.js.map +1 -1
  11. package/dist/dts/Http/App.d.ts +22 -2
  12. package/dist/dts/Http/App.d.ts.map +1 -1
  13. package/dist/dts/Http/ServerRequest.d.ts +5 -0
  14. package/dist/dts/Http/ServerRequest.d.ts.map +1 -1
  15. package/dist/dts/Http/ServerResponse.d.ts +5 -0
  16. package/dist/dts/Http/ServerResponse.d.ts.map +1 -1
  17. package/dist/esm/Http/App.js +40 -0
  18. package/dist/esm/Http/App.js.map +1 -1
  19. package/dist/esm/Http/ServerRequest.js +5 -0
  20. package/dist/esm/Http/ServerRequest.js.map +1 -1
  21. package/dist/esm/Http/ServerResponse.js +5 -0
  22. package/dist/esm/Http/ServerResponse.js.map +1 -1
  23. package/dist/esm/internal/http/serverRequest.js +110 -0
  24. package/dist/esm/internal/http/serverRequest.js.map +1 -1
  25. package/dist/esm/internal/http/serverResponse.js +47 -0
  26. package/dist/esm/internal/http/serverResponse.js.map +1 -1
  27. package/package.json +1 -1
  28. package/src/Http/App.ts +50 -2
  29. package/src/Http/ServerRequest.ts +6 -0
  30. package/src/Http/ServerResponse.ts +6 -0
  31. package/src/internal/http/serverRequest.ts +159 -0
  32. package/src/internal/http/serverResponse.ts +44 -1
@@ -3,13 +3,19 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.withPreResponseHandler = exports.withDefaultMiddleware = exports.preResponseHandler = exports.currentPreResponseHandlers = exports.appendPreResponseHandler = void 0;
6
+ exports.withPreResponseHandler = exports.withDefaultMiddleware = exports.toWebHandlerRuntime = exports.toWebHandlerLayer = exports.toWebHandler = exports.preResponseHandler = exports.currentPreResponseHandlers = exports.appendPreResponseHandler = void 0;
7
7
  var Effect = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Effect"));
8
+ var Exit = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Exit"));
8
9
  var FiberRef = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/FiberRef"));
9
10
  var _Function = /*#__PURE__*/require("effect/Function");
10
11
  var _GlobalValue = /*#__PURE__*/require("effect/GlobalValue");
12
+ var Layer = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Layer"));
11
13
  var ReadonlyArray = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/ReadonlyArray"));
14
+ var Runtime = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Runtime"));
15
+ var Scope = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Scope"));
12
16
  var internalMiddleware = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../internal/http/middleware.js"));
17
+ var ServerRequest = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./ServerRequest.js"));
18
+ var ServerResponse = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./ServerResponse.js"));
13
19
  function _getRequireWildcardCache(e) {
14
20
  if ("function" != typeof WeakMap) return null;
15
21
  var r = new WeakMap(),
@@ -73,4 +79,40 @@ const appendPreResponseHandler = handler => FiberRef.update(currentPreResponseHa
73
79
  */
74
80
  exports.appendPreResponseHandler = appendPreResponseHandler;
75
81
  const withPreResponseHandler = exports.withPreResponseHandler = /*#__PURE__*/(0, _Function.dual)(2, (self, handler) => Effect.locallyWith(self, currentPreResponseHandlers, ReadonlyArray.append(handler)));
82
+ /**
83
+ * @since 1.0.0
84
+ * @category conversions
85
+ */
86
+ const toWebHandlerRuntime = runtime => {
87
+ const run = Runtime.runPromise(runtime);
88
+ return self => {
89
+ self = withDefaultMiddleware(self);
90
+ return request => {
91
+ const req = ServerRequest.fromWeb(request);
92
+ return run(Effect.map(Effect.provideService(self, ServerRequest.ServerRequest, req), res => ServerResponse.toWeb(res, req.method === "HEAD")));
93
+ };
94
+ };
95
+ };
96
+ /**
97
+ * @since 1.0.0
98
+ * @category conversions
99
+ */
100
+ exports.toWebHandlerRuntime = toWebHandlerRuntime;
101
+ const toWebHandler = exports.toWebHandler = /*#__PURE__*/toWebHandlerRuntime(Runtime.defaultRuntime);
102
+ /**
103
+ * @since 1.0.0
104
+ * @category conversions
105
+ */
106
+ const toWebHandlerLayer = (self, layer) => {
107
+ const scope = Effect.runSync(Scope.make());
108
+ const close = () => Effect.runPromise(Scope.close(scope, Exit.unit));
109
+ const build = Effect.map(Layer.toRuntime(layer), _ => toWebHandlerRuntime(_)(self));
110
+ const runner = Effect.runPromise(Scope.extend(build, scope));
111
+ const handler = request => runner.then(handler => handler(request));
112
+ return {
113
+ close,
114
+ handler
115
+ };
116
+ };
117
+ exports.toWebHandlerLayer = toWebHandlerLayer;
76
118
  //# sourceMappingURL=App.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"App.js","names":["Effect","_interopRequireWildcard","require","FiberRef","_Function","_GlobalValue","ReadonlyArray","internalMiddleware","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","withDefaultMiddleware","self","tracer","exports","currentPreResponseHandlers","globalValue","Symbol","for","unsafeMake","noopHandler","_request","response","succeed","preResponseHandler","map","handlers","length","reduce","acc","handler","request","flatMap","appendPreResponseHandler","update","append","withPreResponseHandler","dual","locallyWith"],"sources":["../../../src/Http/App.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"App.js","names":["Effect","_interopRequireWildcard","require","Exit","FiberRef","_Function","_GlobalValue","Layer","ReadonlyArray","Runtime","Scope","internalMiddleware","ServerRequest","ServerResponse","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","withDefaultMiddleware","self","tracer","exports","currentPreResponseHandlers","globalValue","Symbol","for","unsafeMake","noopHandler","_request","response","succeed","preResponseHandler","map","handlers","length","reduce","acc","handler","request","flatMap","appendPreResponseHandler","update","append","withPreResponseHandler","dual","locallyWith","toWebHandlerRuntime","runtime","run","runPromise","req","fromWeb","provideService","res","toWeb","method","toWebHandler","defaultRuntime","toWebHandlerLayer","layer","scope","runSync","make","close","unit","build","toRuntime","_","runner","extend","then"],"sources":["../../../src/Http/App.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.TypeId = exports.ServerRequest = void 0;
6
+ exports.fromWeb = exports.TypeId = exports.ServerRequest = void 0;
7
7
  Object.defineProperty(exports, "maxBodySize", {
8
8
  enumerable: true,
9
9
  get: function () {
@@ -78,4 +78,9 @@ const schemaFormData = exports.schemaFormData = internal.schemaFormData;
78
78
  * @category schema
79
79
  */
80
80
  const schemaFormDataJson = exports.schemaFormDataJson = internal.schemaFormDataJson;
81
+ /**
82
+ * @since 1.0.0
83
+ * @category conversions
84
+ */
85
+ const fromWeb = exports.fromWeb = internal.fromWeb;
81
86
  //# sourceMappingURL=ServerRequest.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ServerRequest.js","names":["internal","_interopRequireWildcard","require","_IncomingMessage","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","TypeId","exports","ServerRequest","serverRequestTag","persistedFormData","schemaHeaders","schemaBodyJson","schemaBodyUrlParams","schemaFormData","schemaFormDataJson"],"sources":["../../../src/Http/ServerRequest.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;AAUA,IAAAA,QAAA,gBAAAC,uBAAA,eAAAC,OAAA;AAQA,IAAAC,gBAAA,gBAAAD,OAAA;AAM6B,SAAAE,yBAAAC,CAAA;EAAA,yBAAAC,OAAA;EAAA,IAAAC,CAAA,OAAAD,OAAA;IAAAE,CAAA,OAAAF,OAAA;EAAA,QAAAF,wBAAA,YAAAA,CAAAC,CAAA;IAAA,OAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA;EAAA,GAAAF,CAAA;AAAA;AAAA,SAAAJ,wBAAAI,CAAA,EAAAE,CAAA;EAAA,KAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA;EAAA,aAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA;IAAAK,OAAA,EAAAL;EAAA;EAAA,IAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA;EAAA,IAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA;EAAA,IAAAQ,CAAA;MAAAC,SAAA;IAAA;IAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA;EAAA,SAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA;IAAA,IAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA;IAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA;EAAA;EAAA,OAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA;AAE7B;;;;AAIO,MAAMY,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAkBzB,QAAQ,CAACyB,MAAM;AAkCpD;;;;AAIO,MAAME,aAAa,GAAAD,OAAA,CAAAC,aAAA,GAA8C3B,QAAQ,CAAC4B,gBAAgB;AAEjG;;;;AAIO,MAAMC,iBAAiB,GAAAH,OAAA,CAAAG,iBAAA,GAI1B7B,QAAQ,CAAC6B,iBAAiB;AAE9B;;;;AAIO,MAAMC,aAAa,GAAAJ,OAAA,CAAAI,aAAA,GAEqC9B,QAAQ,CAAC8B,aAAa;AAErF;;;;AAIO,MAAMC,cAAc,GAAAL,OAAA,CAAAK,cAAA,GAEyD/B,QAAQ,CAAC+B,cAAc;AAE3G;;;;AAIO,MAAMC,mBAAmB,GAAAN,OAAA,CAAAM,mBAAA,GAEoDhC,QAAQ,CAACgC,mBAAmB;AAEhH;;;;AAIO,MAAMC,cAAc,GAAAP,OAAA,CAAAO,cAAA,GAMvBjC,QAAQ,CAACiC,cAAc;AAE3B;;;;AAIO,MAAMC,kBAAkB,GAAAR,OAAA,CAAAQ,kBAAA,GAQ3BlC,QAAQ,CAACkC,kBAAkB"}
1
+ {"version":3,"file":"ServerRequest.js","names":["internal","_interopRequireWildcard","require","_IncomingMessage","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","TypeId","exports","ServerRequest","serverRequestTag","persistedFormData","schemaHeaders","schemaBodyJson","schemaBodyUrlParams","schemaFormData","schemaFormDataJson","fromWeb"],"sources":["../../../src/Http/ServerRequest.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;AAUA,IAAAA,QAAA,gBAAAC,uBAAA,eAAAC,OAAA;AAQA,IAAAC,gBAAA,gBAAAD,OAAA;AAM6B,SAAAE,yBAAAC,CAAA;EAAA,yBAAAC,OAAA;EAAA,IAAAC,CAAA,OAAAD,OAAA;IAAAE,CAAA,OAAAF,OAAA;EAAA,QAAAF,wBAAA,YAAAA,CAAAC,CAAA;IAAA,OAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA;EAAA,GAAAF,CAAA;AAAA;AAAA,SAAAJ,wBAAAI,CAAA,EAAAE,CAAA;EAAA,KAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA;EAAA,aAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA;IAAAK,OAAA,EAAAL;EAAA;EAAA,IAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA;EAAA,IAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA;EAAA,IAAAQ,CAAA;MAAAC,SAAA;IAAA;IAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA;EAAA,SAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA;IAAA,IAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA;IAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA;EAAA;EAAA,OAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA;AAE7B;;;;AAIO,MAAMY,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAkBzB,QAAQ,CAACyB,MAAM;AAkCpD;;;;AAIO,MAAME,aAAa,GAAAD,OAAA,CAAAC,aAAA,GAA8C3B,QAAQ,CAAC4B,gBAAgB;AAEjG;;;;AAIO,MAAMC,iBAAiB,GAAAH,OAAA,CAAAG,iBAAA,GAI1B7B,QAAQ,CAAC6B,iBAAiB;AAE9B;;;;AAIO,MAAMC,aAAa,GAAAJ,OAAA,CAAAI,aAAA,GAEqC9B,QAAQ,CAAC8B,aAAa;AAErF;;;;AAIO,MAAMC,cAAc,GAAAL,OAAA,CAAAK,cAAA,GAEyD/B,QAAQ,CAAC+B,cAAc;AAE3G;;;;AAIO,MAAMC,mBAAmB,GAAAN,OAAA,CAAAM,mBAAA,GAEoDhC,QAAQ,CAACgC,mBAAmB;AAEhH;;;;AAIO,MAAMC,cAAc,GAAAP,OAAA,CAAAO,cAAA,GAMvBjC,QAAQ,CAACiC,cAAc;AAE3B;;;;AAIO,MAAMC,kBAAkB,GAAAR,OAAA,CAAAQ,kBAAA,GAQ3BlC,QAAQ,CAACkC,kBAAkB;AAE/B;;;;AAIO,MAAMC,OAAO,GAAAT,OAAA,CAAAS,OAAA,GAAwCnC,QAAQ,CAACmC,OAAO"}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.urlParams = exports.unsafeJson = exports.uint8Array = exports.text = exports.stream = exports.setStatus = exports.setHeaders = exports.setHeader = exports.setBody = exports.schemaJson = exports.raw = exports.json = exports.isServerResponse = exports.formData = exports.fileWeb = exports.file = exports.empty = exports.TypeId = void 0;
6
+ exports.urlParams = exports.unsafeJson = exports.uint8Array = exports.toWeb = exports.text = exports.stream = exports.setStatus = exports.setHeaders = exports.setHeader = exports.setBody = exports.schemaJson = exports.raw = exports.json = exports.isServerResponse = exports.formData = exports.fileWeb = exports.file = exports.empty = exports.TypeId = void 0;
7
7
  var internal = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../internal/http/serverResponse.js"));
8
8
  function _getRequireWildcardCache(e) {
9
9
  if ("function" != typeof WeakMap) return null;
@@ -119,4 +119,9 @@ const setBody = exports.setBody = internal.setBody;
119
119
  * @category combinators
120
120
  */
121
121
  const setStatus = exports.setStatus = internal.setStatus;
122
+ /**
123
+ * @since 1.0.0
124
+ * @category conversions
125
+ */
126
+ const toWeb = exports.toWeb = internal.toWeb;
122
127
  //# sourceMappingURL=ServerResponse.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ServerResponse.js","names":["internal","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","TypeId","exports","Symbol","for","isServerResponse","empty","uint8Array","text","json","schemaJson","unsafeJson","urlParams","raw","formData","stream","file","fileWeb","setHeader","setHeaders","setBody","setStatus"],"sources":["../../../src/Http/ServerResponse.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"ServerResponse.js","names":["internal","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","TypeId","exports","Symbol","for","isServerResponse","empty","uint8Array","text","json","schemaJson","unsafeJson","urlParams","raw","formData","stream","file","fileWeb","setHeader","setHeaders","setBody","setStatus","toWeb"],"sources":["../../../src/Http/ServerResponse.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -3,12 +3,16 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.serverRequestTag = exports.schemaHeaders = exports.schemaFormDataJson = exports.schemaFormData = exports.schemaBodyUrlParams = exports.schemaBodyJson = exports.persistedFormData = exports.TypeId = void 0;
6
+ exports.serverRequestTag = exports.schemaHeaders = exports.schemaFormDataJson = exports.schemaFormData = exports.schemaBodyUrlParams = exports.schemaBodyJson = exports.persistedFormData = exports.fromWeb = exports.TypeId = void 0;
7
7
  var Context = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Context"));
8
8
  var Effect = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Effect"));
9
+ var Option = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Option"));
10
+ var Stream = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Stream"));
9
11
  var FormData = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../../Http/FormData.js"));
12
+ var Headers = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../../Http/Headers.js"));
10
13
  var IncomingMessage = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../../Http/IncomingMessage.js"));
11
14
  var Error = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../../Http/ServerError.js"));
15
+ var UrlParams = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../../Http/UrlParams.js"));
12
16
  function _getRequireWildcardCache(e) {
13
17
  if ("function" != typeof WeakMap) return null;
14
18
  var r = new WeakMap(),
@@ -73,5 +77,112 @@ const schemaFormDataJson = schema => {
73
77
  error: error.error
74
78
  })))));
75
79
  };
80
+ /** @internal */
76
81
  exports.schemaFormDataJson = schemaFormDataJson;
82
+ const fromWeb = request => new ServerRequestImpl(request, request.url);
83
+ exports.fromWeb = fromWeb;
84
+ class ServerRequestImpl {
85
+ source;
86
+ url;
87
+ headersOverride;
88
+ remoteAddressOverride;
89
+ [TypeId];
90
+ [IncomingMessage.TypeId];
91
+ constructor(source, url, headersOverride, remoteAddressOverride) {
92
+ this.source = source;
93
+ this.url = url;
94
+ this.headersOverride = headersOverride;
95
+ this.remoteAddressOverride = remoteAddressOverride;
96
+ this[TypeId] = TypeId;
97
+ this[IncomingMessage.TypeId] = IncomingMessage.TypeId;
98
+ }
99
+ modify(options) {
100
+ return new ServerRequestImpl(this.source, options.url ?? this.url, options.headers ?? this.headersOverride, options.remoteAddress ?? this.remoteAddressOverride);
101
+ }
102
+ get method() {
103
+ return this.source.method.toUpperCase();
104
+ }
105
+ get originalUrl() {
106
+ return this.source.url;
107
+ }
108
+ get remoteAddress() {
109
+ return this.remoteAddressOverride ? Option.some(this.remoteAddressOverride) : Option.none();
110
+ }
111
+ get headers() {
112
+ this.headersOverride ??= Headers.fromInput(this.source.headers);
113
+ return this.headersOverride;
114
+ }
115
+ get stream() {
116
+ return this.source.body ? Stream.fromReadableStream(() => this.source.body, _ => Error.RequestError({
117
+ request: this,
118
+ reason: "Decode",
119
+ error: _
120
+ })) : Stream.fail(Error.RequestError({
121
+ request: this,
122
+ reason: "Decode",
123
+ error: "can not create stream from empty body"
124
+ }));
125
+ }
126
+ textEffect;
127
+ get text() {
128
+ if (this.textEffect) {
129
+ return this.textEffect;
130
+ }
131
+ this.textEffect = Effect.runSync(Effect.cached(Effect.tryPromise({
132
+ try: () => this.source.text(),
133
+ catch: error => Error.RequestError({
134
+ request: this,
135
+ reason: "Decode",
136
+ error
137
+ })
138
+ })));
139
+ return this.textEffect;
140
+ }
141
+ get json() {
142
+ return Effect.tryMap(this.text, {
143
+ try: _ => JSON.parse(_),
144
+ catch: error => Error.RequestError({
145
+ request: this,
146
+ reason: "Decode",
147
+ error
148
+ })
149
+ });
150
+ }
151
+ get urlParamsBody() {
152
+ return Effect.flatMap(this.text, _ => Effect.try({
153
+ try: () => UrlParams.fromInput(new URLSearchParams(_)),
154
+ catch: error => Error.RequestError({
155
+ request: this,
156
+ reason: "Decode",
157
+ error
158
+ })
159
+ }));
160
+ }
161
+ formDataEffect;
162
+ get formData() {
163
+ if (this.formDataEffect) {
164
+ return this.formDataEffect;
165
+ }
166
+ this.formDataEffect = Effect.runSync(Effect.cached(FormData.formData(this.formDataStream)));
167
+ return this.formDataEffect;
168
+ }
169
+ get formDataStream() {
170
+ return Stream.pipeThroughChannel(Stream.mapError(this.stream, error => FormData.FormDataError("InternalError", error)), FormData.makeChannel(this.headers));
171
+ }
172
+ arrayBufferEffect;
173
+ get arrayBuffer() {
174
+ if (this.arrayBuffer) {
175
+ return this.arrayBuffer;
176
+ }
177
+ this.arrayBufferEffect = Effect.runSync(Effect.cached(Effect.tryPromise({
178
+ try: () => this.source.arrayBuffer(),
179
+ catch: error => Error.RequestError({
180
+ request: this,
181
+ reason: "Decode",
182
+ error
183
+ })
184
+ })));
185
+ return this.arrayBufferEffect;
186
+ }
187
+ }
77
188
  //# sourceMappingURL=serverRequest.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"serverRequest.js","names":["Context","_interopRequireWildcard","require","Effect","FormData","IncomingMessage","Error","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","TypeId","exports","Symbol","for","serverRequestTag","Tag","persistedFormData","flatMap","request","formData","schemaHeaders","schema","parse","schemaBodyJson","schemaBodyUrlParams","schemaFormData","schemaPersisted","schemaFormDataJson","schemaJson","field","catchTag","error","fail","RequestError","reason"],"sources":["../../../../src/internal/http/serverRequest.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"serverRequest.js","names":["Context","_interopRequireWildcard","require","Effect","Option","Stream","FormData","Headers","IncomingMessage","Error","UrlParams","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","TypeId","exports","Symbol","for","serverRequestTag","Tag","persistedFormData","flatMap","request","formData","schemaHeaders","schema","parse","schemaBodyJson","schemaBodyUrlParams","schemaFormData","schemaPersisted","schemaFormDataJson","schemaJson","field","catchTag","error","fail","RequestError","reason","fromWeb","ServerRequestImpl","url","source","headersOverride","remoteAddressOverride","constructor","modify","options","headers","remoteAddress","method","toUpperCase","originalUrl","some","none","fromInput","stream","body","fromReadableStream","_","textEffect","text","runSync","cached","tryPromise","try","catch","json","tryMap","JSON","urlParamsBody","URLSearchParams","formDataEffect","formDataStream","pipeThroughChannel","mapError","FormDataError","makeChannel","arrayBufferEffect","arrayBuffer"],"sources":["../../../../src/internal/http/serverRequest.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -3,10 +3,11 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.urlParams = exports.unsafeJson = exports.uint8Array = exports.text = exports.stream = exports.setStatus = exports.setHeaders = exports.setHeader = exports.setBody = exports.schemaJson = exports.raw = exports.json = exports.isServerResponse = exports.getContentType = exports.formData = exports.fileWeb = exports.file = exports.empty = exports.TypeId = void 0;
6
+ exports.urlParams = exports.unsafeJson = exports.uint8Array = exports.toWeb = exports.text = exports.stream = exports.setStatus = exports.setHeaders = exports.setHeader = exports.setBody = exports.schemaJson = exports.raw = exports.json = exports.isServerResponse = exports.getContentType = exports.formData = exports.fileWeb = exports.file = exports.empty = exports.TypeId = void 0;
7
7
  var Effect = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Effect"));
8
8
  var Effectable = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Effectable"));
9
9
  var _Function = /*#__PURE__*/require("effect/Function");
10
+ var Stream = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Stream"));
10
11
  var Headers = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../../Http/Headers.js"));
11
12
  var Platform = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../../Http/Platform.js"));
12
13
  var UrlParams = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../../Http/UrlParams.js"));
@@ -145,4 +146,51 @@ const setBody = exports.setBody = /*#__PURE__*/(0, _Function.dual)(2, (self, bod
145
146
  }
146
147
  return new ServerResponseImpl(self.status, self.statusText, headers, body);
147
148
  });
149
+ /** @internal */
150
+ const toWeb = (response, withoutBody = false) => {
151
+ if (withoutBody) {
152
+ return new Response(undefined, {
153
+ status: response.status,
154
+ statusText: response.statusText,
155
+ headers: response.headers
156
+ });
157
+ }
158
+ const body = response.body;
159
+ switch (body._tag) {
160
+ case "Empty":
161
+ {
162
+ return new Response(undefined, {
163
+ status: response.status,
164
+ statusText: response.statusText,
165
+ headers: response.headers
166
+ });
167
+ }
168
+ case "Uint8Array":
169
+ case "Raw":
170
+ {
171
+ return new Response(body.body, {
172
+ status: response.status,
173
+ statusText: response.statusText,
174
+ headers: response.headers
175
+ });
176
+ }
177
+ case "FormData":
178
+ {
179
+ return new Response(body.formData, {
180
+ status: response.status,
181
+ statusText: response.statusText,
182
+ headers: response.headers
183
+ });
184
+ }
185
+ case "Stream":
186
+ {
187
+ return new Response(Stream.toReadableStream(body.stream), {
188
+ status: response.status,
189
+ statusText: response.statusText,
190
+ headers: response.headers
191
+ });
192
+ }
193
+ }
194
+ };
195
+ exports.toWeb = toWeb;
148
196
  //# sourceMappingURL=serverResponse.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"serverResponse.js","names":["Effect","_interopRequireWildcard","require","Effectable","_Function","Headers","Platform","UrlParams","internalBody","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","TypeId","exports","Symbol","for","ServerResponseImpl","StructuralClass","status","statusText","body","headers","constructor","contentType","contentLength","newHeaders","toString","commit","succeed","toJSON","_id","isServerResponse","empty","options","uint8Array","getContentType","text","json","map","unsafeJson","schemaJson","schema","encode","jsonSchema","file","path","flatMap","platform","fileResponse","fileWeb","fileWebResponse","urlParams","fromInput","raw","formData","stream","setHeader","dual","self","key","value","setHeaders","input","setAll","setStatus","args","setBody","_tag","remove"],"sources":["../../../../src/internal/http/serverResponse.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"serverResponse.js","names":["Effect","_interopRequireWildcard","require","Effectable","_Function","Stream","Headers","Platform","UrlParams","internalBody","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","TypeId","exports","Symbol","for","ServerResponseImpl","StructuralClass","status","statusText","body","headers","constructor","contentType","contentLength","newHeaders","toString","commit","succeed","toJSON","_id","isServerResponse","empty","options","uint8Array","getContentType","text","json","map","unsafeJson","schemaJson","schema","encode","jsonSchema","file","path","flatMap","platform","fileResponse","fileWeb","fileWebResponse","urlParams","fromInput","raw","formData","stream","setHeader","dual","self","key","value","setHeaders","input","setAll","setStatus","args","setBody","_tag","remove","toWeb","response","withoutBody","Response","undefined","toReadableStream"],"sources":["../../../../src/internal/http/serverResponse.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -3,9 +3,11 @@
3
3
  */
4
4
  import * as Effect from "effect/Effect";
5
5
  import * as FiberRef from "effect/FiberRef";
6
+ import * as Layer from "effect/Layer";
7
+ import * as Runtime from "effect/Runtime";
6
8
  import type * as ServerError from "./ServerError.js";
7
- import type * as ServerRequest from "./ServerRequest.js";
8
- import type * as ServerResponse from "./ServerResponse.js";
9
+ import * as ServerRequest from "./ServerRequest.js";
10
+ import * as ServerResponse from "./ServerResponse.js";
9
11
  /**
10
12
  * @since 1.0.0
11
13
  * @category models
@@ -47,4 +49,22 @@ export declare const appendPreResponseHandler: (handler: PreResponseHandler) =>
47
49
  * @category fiber refs
48
50
  */
49
51
  export declare const withPreResponseHandler: ((handler: PreResponseHandler) => <R, E, A>(self: HttpApp<R, E, A>) => HttpApp<R, E, A>) & (<R_1, E_1, A_1>(self: HttpApp<R_1, E_1, A_1>, handler: PreResponseHandler) => HttpApp<R_1, E_1, A_1>);
52
+ /**
53
+ * @since 1.0.0
54
+ * @category conversions
55
+ */
56
+ export declare const toWebHandlerRuntime: <R>(runtime: Runtime.Runtime<R>) => <E>(self: Default<R, E>) => (request: Request) => Promise<Response>;
57
+ /**
58
+ * @since 1.0.0
59
+ * @category conversions
60
+ */
61
+ export declare const toWebHandler: <E>(self: Default<never, E>) => (request: Request) => Promise<Response>;
62
+ /**
63
+ * @since 1.0.0
64
+ * @category conversions
65
+ */
66
+ export declare const toWebHandlerLayer: <R, E, RE>(self: Default<R, E>, layer: Layer.Layer<never, RE, R>) => {
67
+ readonly close: () => Promise<void>;
68
+ readonly handler: (request: Request) => Promise<Response>;
69
+ };
50
70
  //# sourceMappingURL=App.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../../src/Http/App.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAA;AAK3C,OAAO,KAAK,KAAK,WAAW,MAAM,kBAAkB,CAAA;AACpD,OAAO,KAAK,KAAK,aAAa,MAAM,oBAAoB,CAAA;AACxD,OAAO,KAAK,KAAK,cAAc,MAAM,qBAAqB,CAAA;AAE1D;;;GAGG;AACH,MAAM,WAAW,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAE,SAAQ,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,aAAa,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC;CAAG;AAEjG;;;GAGG;AACH,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,cAAc,CAAC,cAAc,CAAC,CAAA;AAExE;;;GAGG;AACH,eAAO,MAAM,qBAAqB,8CAEiB,CAAA;AAEnD;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAC/B,OAAO,EAAE,aAAa,CAAC,aAAa,EACpC,QAAQ,EAAE,cAAc,CAAC,cAAc,KACpC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,CAAC,aAAa,EAAE,cAAc,CAAC,cAAc,CAAC,CAAA;AAEnF;;;GAGG;AACH,eAAO,MAAM,0BAA0B,EAAE,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAG3F,CAAA;AAMD;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,kBAAkB,CAa9E,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,wBAAwB,EAAE,CAAC,OAAO,EAAE,kBAAkB,KAAK,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAMrG,CAAA;AAEH;;;GAGG;AACH,eAAO,MAAM,sBAAsB,aACvB,kBAAkB,sHACe,kBAAkB,4BAM3D,CAAA"}
1
+ {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../../src/Http/App.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAA;AAG3C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AAGzC,OAAO,KAAK,KAAK,WAAW,MAAM,kBAAkB,CAAA;AACpD,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AACnD,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AAErD;;;GAGG;AACH,MAAM,WAAW,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAE,SAAQ,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,aAAa,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC;CAAG;AAEjG;;;GAGG;AACH,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,cAAc,CAAC,cAAc,CAAC,CAAA;AAExE;;;GAGG;AACH,eAAO,MAAM,qBAAqB,8CAEiB,CAAA;AAEnD;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAC/B,OAAO,EAAE,aAAa,CAAC,aAAa,EACpC,QAAQ,EAAE,cAAc,CAAC,cAAc,KACpC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,CAAC,aAAa,EAAE,cAAc,CAAC,cAAc,CAAC,CAAA;AAEnF;;;GAGG;AACH,eAAO,MAAM,0BAA0B,EAAE,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAG3F,CAAA;AAMD;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,kBAAkB,CAa9E,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,wBAAwB,EAAE,CAAC,OAAO,EAAE,kBAAkB,KAAK,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAMrG,CAAA;AAEH;;;GAGG;AACH,eAAO,MAAM,sBAAsB,aACvB,kBAAkB,sHACe,kBAAkB,4BAM3D,CAAA;AAEJ;;;GAGG;AACH,eAAO,MAAM,mBAAmB,4EAIX,OAAO,KAAG,QAAQ,QAAQ,CAQ9C,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CACpD,CAAA;AAE7C;;;GAGG;AACH,eAAO,MAAM,iBAAiB;oBAIZ,MAAM,QAAQ,IAAI,CAAC;gCACP,OAAO,KAAK,QAAQ,QAAQ,CAAC;CAQ1D,CAAA"}
@@ -82,4 +82,9 @@ export declare const schemaFormData: <I extends FormData.PersistedFormData, A>(s
82
82
  * @category schema
83
83
  */
84
84
  export declare const schemaFormDataJson: <I, A>(schema: Schema.Schema<I, A>) => (field: string) => Effect.Effect<ServerRequest | Scope.Scope | FileSystem.FileSystem | Path.Path, Error.RequestError | FormData.FormDataError | ParseResult.ParseError, A>;
85
+ /**
86
+ * @since 1.0.0
87
+ * @category conversions
88
+ */
89
+ export declare const fromWeb: (request: Request) => ServerRequest;
85
90
  //# sourceMappingURL=ServerRequest.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ServerRequest.d.ts","sourceRoot":"","sources":["../../../src/Http/ServerRequest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ServerRequest.d.ts","sourceRoot":"","sources":["../../../src/Http/ServerRequest.ts"],"names":[],"mappings":"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"}
@@ -155,4 +155,9 @@ export declare const setStatus: {
155
155
  (status: number, statusText?: string | undefined): (self: ServerResponse) => ServerResponse;
156
156
  (self: ServerResponse, status: number, statusText?: string | undefined): ServerResponse;
157
157
  };
158
+ /**
159
+ * @since 1.0.0
160
+ * @category conversions
161
+ */
162
+ export declare const toWeb: (response: ServerResponse, withoutBody?: boolean) => Response;
158
163
  //# sourceMappingURL=ServerResponse.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ServerResponse.d.ts","sourceRoot":"","sources":["../../../src/Http/ServerResponse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ServerResponse.d.ts","sourceRoot":"","sources":["../../../src/Http/ServerResponse.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,MAAM,MAAM,uBAAuB,CAAA;AACpD,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAC5C,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAC5C,OAAO,KAAK,KAAK,aAAa,MAAM,aAAa,CAAA;AACjD,OAAO,KAAK,KAAK,UAAU,MAAM,kBAAkB,CAAA;AAEnD,OAAO,KAAK,KAAK,IAAI,MAAM,WAAW,CAAA;AACtC,OAAO,KAAK,KAAK,OAAO,MAAM,cAAc,CAAA;AAC5C,OAAO,KAAK,KAAK,QAAQ,MAAM,eAAe,CAAA;AAC9C,OAAO,KAAK,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAEhD;;;GAGG;AACH,eAAO,MAAM,MAAM,eAAqD,CAAA;AAExE;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAA;AAElC;;;GAGG;AACH,MAAM,WAAW,cAAe,SAAQ,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,cAAc,CAAC;IACjF,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAA;IACjC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAA;CACzB;AAED;;;GAGG;AACH,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,CAAA;IAClC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAChC;AAED;;GAEG;AACH,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B;;;OAGG;IACH,UAAiB,WAAY,SAAQ,IAAI,CAAC,OAAO,EAAE,aAAa,GAAG,eAAe,CAAC;KAAG;IAEtF;;;OAGG;IACH,UAAiB,eAAgB,SAAQ,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC;KAAG;CAC3E;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,CAAC,IAAI,cAA0C,CAAA;AAE9F;;;GAGG;AACH,eAAO,MAAM,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,WAAW,KAAK,cAA+B,CAAA;AAEtF;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,eAAe,KAAK,cAAoC,CAAA;AAEtH;;;GAGG;AACH,eAAO,MAAM,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,eAAe,KAAK,cAA8B,CAAA;AAEtG;;;GAGG;AACH,eAAO,MAAM,IAAI,EAAE,CACjB,IAAI,EAAE,OAAO,EACb,OAAO,CAAC,EAAE,OAAO,CAAC,WAAW,KAC1B,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,cAAc,CAAiB,CAAA;AAEzE;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAC5B,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,KACxB,CAAC,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,WAAW,KAAK,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,cAAc,CAC/E,CAAA;AAErB;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,WAAW,KAAK,cAAoC,CAAA;AAE/G;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,WAAW,KAAK,cAAmC,CAAA;AAErH;;;GAGG;AACH,eAAO,MAAM,GAAG,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,KAAK,cAA6B,CAAA;AAErF;;;GAGG;AACH,eAAO,MAAM,QAAQ,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,WAAW,KAAK,cAAkC,CAAA;AAE5G;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,EAAE,OAAO,KAAK,cAC5E,CAAA;AAEjB;;;GAGG;AACH,eAAO,MAAM,IAAI,EAAE,CACjB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC,aAAa,KACzC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,aAAa,EAAE,cAAc,CAAiB,CAAA;AAElG;;;GAGG;AACH,eAAO,MAAM,OAAO,EAAE,CACpB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EACxB,OAAO,CAAC,EAAE,OAAO,CAAC,WAAW,GAAG,UAAU,CAAC,aAAa,KACrD,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,cAAc,CAAoB,CAAA;AAE/E;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE;IACtB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC,IAAI,EAAE,cAAc,KAAK,cAAc,CAAA;IACtE,CAAC,IAAI,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,cAAc,CAAA;CAC9C,CAAA;AAEtB;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE;IACvB,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,GAAG,CAAC,IAAI,EAAE,cAAc,KAAK,cAAc,CAAA;IAChE,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,GAAG,cAAc,CAAA;CACvC,CAAA;AAEvB;;;GAGG;AACH,eAAO,MAAM,OAAO,EAAE;IACpB,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,cAAc,KAAK,cAAc,CAAA;IAC3D,CAAC,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,GAAG,cAAc,CAAA;CACrC,CAAA;AAEpB;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE;IACtB,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,CAAC,IAAI,EAAE,cAAc,KAAK,cAAc,CAAA;IAC3F,CAAC,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,cAAc,CAAA;CACnE,CAAA;AAEtB;;;GAGG;AACH,eAAO,MAAM,KAAK,EAAE,CAAC,QAAQ,EAAE,cAAc,EAAE,WAAW,CAAC,EAAE,OAAO,KAAK,QAAyB,CAAA"}
@@ -2,11 +2,17 @@
2
2
  * @since 1.0.0
3
3
  */
4
4
  import * as Effect from "effect/Effect";
5
+ import * as Exit from "effect/Exit";
5
6
  import * as FiberRef from "effect/FiberRef";
6
7
  import { dual } from "effect/Function";
7
8
  import { globalValue } from "effect/GlobalValue";
9
+ import * as Layer from "effect/Layer";
8
10
  import * as ReadonlyArray from "effect/ReadonlyArray";
11
+ import * as Runtime from "effect/Runtime";
12
+ import * as Scope from "effect/Scope";
9
13
  import * as internalMiddleware from "../internal/http/middleware.js";
14
+ import * as ServerRequest from "./ServerRequest.js";
15
+ import * as ServerResponse from "./ServerResponse.js";
10
16
  /**
11
17
  * @since 1.0.0
12
18
  * @category combinators
@@ -39,4 +45,38 @@ export const appendPreResponseHandler = handler => FiberRef.update(currentPreRes
39
45
  * @category fiber refs
40
46
  */
41
47
  export const withPreResponseHandler = /*#__PURE__*/dual(2, (self, handler) => Effect.locallyWith(self, currentPreResponseHandlers, ReadonlyArray.append(handler)));
48
+ /**
49
+ * @since 1.0.0
50
+ * @category conversions
51
+ */
52
+ export const toWebHandlerRuntime = runtime => {
53
+ const run = Runtime.runPromise(runtime);
54
+ return self => {
55
+ self = withDefaultMiddleware(self);
56
+ return request => {
57
+ const req = ServerRequest.fromWeb(request);
58
+ return run(Effect.map(Effect.provideService(self, ServerRequest.ServerRequest, req), res => ServerResponse.toWeb(res, req.method === "HEAD")));
59
+ };
60
+ };
61
+ };
62
+ /**
63
+ * @since 1.0.0
64
+ * @category conversions
65
+ */
66
+ export const toWebHandler = /*#__PURE__*/toWebHandlerRuntime(Runtime.defaultRuntime);
67
+ /**
68
+ * @since 1.0.0
69
+ * @category conversions
70
+ */
71
+ export const toWebHandlerLayer = (self, layer) => {
72
+ const scope = Effect.runSync(Scope.make());
73
+ const close = () => Effect.runPromise(Scope.close(scope, Exit.unit));
74
+ const build = Effect.map(Layer.toRuntime(layer), _ => toWebHandlerRuntime(_)(self));
75
+ const runner = Effect.runPromise(Scope.extend(build, scope));
76
+ const handler = request => runner.then(handler => handler(request));
77
+ return {
78
+ close,
79
+ handler
80
+ };
81
+ };
42
82
  //# sourceMappingURL=App.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"App.js","names":["Effect","FiberRef","dual","globalValue","ReadonlyArray","internalMiddleware","withDefaultMiddleware","self","tracer","currentPreResponseHandlers","Symbol","for","unsafeMake","noopHandler","_request","response","succeed","preResponseHandler","map","get","handlers","length","reduce","acc","handler","request","flatMap","appendPreResponseHandler","update","append","withPreResponseHandler","locallyWith"],"sources":["../../../src/Http/App.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAC3C,SAASC,IAAI,QAAQ,iBAAiB;AACtC,SAASC,WAAW,QAAQ,oBAAoB;AAChD,OAAO,KAAKC,aAAa,MAAM,sBAAsB;AACrD,OAAO,KAAKC,kBAAkB,MAAM,gCAAgC;AAiBpE;;;;AAIA,OAAO,MAAMC,qBAAqB,GAChCC,IAAmB,IACDF,kBAAkB,CAACG,MAAM,CAACD,IAAI,CAAC;AAWnD;;;;AAIA,OAAO,MAAME,0BAA0B,gBAAyDN,WAAW,eACzGO,MAAM,CAACC,GAAG,CAAC,+CAA+C,CAAC,EAC3D,MAAMV,QAAQ,CAACW,UAAU,CAAoC,EAAE,CAAC,CACjE;AAED,SAASC,WAAWA,CAACC,QAAqC,EAAEC,QAAuC;EACjG,OAAOf,MAAM,CAACgB,OAAO,CAACD,QAAQ,CAAC;AACjC;AAEA;;;;AAIA,OAAO,MAAME,kBAAkB,gBAAoDjB,MAAM,CAACkB,GAAG,eAC3FjB,QAAQ,CAACkB,GAAG,CAACV,0BAA0B,CAAC,EACvCW,QAAQ,IACPA,QAAQ,CAACC,MAAM,KAAK,CAAC,GACnBR,WAAW,GACXO,QAAQ,CAACE,MAAM,CAAC,CAACC,GAAG,EAAEC,OAAO,KAAM,UAASC,OAAO,EAAEV,QAAQ;EAC3D,OAAOf,MAAM,CAAC0B,OAAO,CACnBH,GAAG,CAACE,OAAO,EAAEV,QAAQ,CAAC,EACtB,UAASA,QAAQ;IACf,OAAOS,OAAO,CAACC,OAAO,EAAEV,QAAQ,CAAC;EACnC,CAAC,CACF;AACH,CAAE,CAAC,CACR;AAED;;;;AAIA,OAAO,MAAMY,wBAAwB,GACnCH,OAA2B,IAE3BvB,QAAQ,CAAC2B,MAAM,CACbnB,0BAA0B,EAC1BL,aAAa,CAACyB,MAAM,CAACL,OAAO,CAAC,CAC9B;AAEH;;;;AAIA,OAAO,MAAMM,sBAAsB,gBAAG5B,IAAI,CAGxC,CAAC,EAAE,CAACK,IAAI,EAAEiB,OAAO,KACjBxB,MAAM,CAAC+B,WAAW,CAChBxB,IAAI,EACJE,0BAA0B,EAC1BL,aAAa,CAACyB,MAAM,CAACL,OAAO,CAAC,CAC9B,CAAC"}
1
+ {"version":3,"file":"App.js","names":["Effect","Exit","FiberRef","dual","globalValue","Layer","ReadonlyArray","Runtime","Scope","internalMiddleware","ServerRequest","ServerResponse","withDefaultMiddleware","self","tracer","currentPreResponseHandlers","Symbol","for","unsafeMake","noopHandler","_request","response","succeed","preResponseHandler","map","get","handlers","length","reduce","acc","handler","request","flatMap","appendPreResponseHandler","update","append","withPreResponseHandler","locallyWith","toWebHandlerRuntime","runtime","run","runPromise","req","fromWeb","provideService","res","toWeb","method","toWebHandler","defaultRuntime","toWebHandlerLayer","layer","scope","runSync","make","close","unit","build","toRuntime","_","runner","extend","then"],"sources":["../../../src/Http/App.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -45,4 +45,9 @@ export const schemaFormData = internal.schemaFormData;
45
45
  * @category schema
46
46
  */
47
47
  export const schemaFormDataJson = internal.schemaFormDataJson;
48
+ /**
49
+ * @since 1.0.0
50
+ * @category conversions
51
+ */
52
+ export const fromWeb = internal.fromWeb;
48
53
  //# sourceMappingURL=ServerRequest.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ServerRequest.js","names":["internal","maxBodySize","TypeId","ServerRequest","serverRequestTag","persistedFormData","schemaHeaders","schemaBodyJson","schemaBodyUrlParams","schemaFormData","schemaFormDataJson"],"sources":["../../../src/Http/ServerRequest.ts"],"sourcesContent":[null],"mappings":"AAUA,OAAO,KAAKA,QAAQ,MAAM,mCAAmC;AAQ7D;AACE;;;;AAIAC,WAAW,QACN,sBAAsB;AAE7B;;;;AAIA,OAAO,MAAMC,MAAM,GAAkBF,QAAQ,CAACE,MAAM;AAkCpD;;;;AAIA,OAAO,MAAMC,aAAa,GAA8CH,QAAQ,CAACI,gBAAgB;AAEjG;;;;AAIA,OAAO,MAAMC,iBAAiB,GAI1BL,QAAQ,CAACK,iBAAiB;AAE9B;;;;AAIA,OAAO,MAAMC,aAAa,GAEqCN,QAAQ,CAACM,aAAa;AAErF;;;;AAIA,OAAO,MAAMC,cAAc,GAEyDP,QAAQ,CAACO,cAAc;AAE3G;;;;AAIA,OAAO,MAAMC,mBAAmB,GAEoDR,QAAQ,CAACQ,mBAAmB;AAEhH;;;;AAIA,OAAO,MAAMC,cAAc,GAMvBT,QAAQ,CAACS,cAAc;AAE3B;;;;AAIA,OAAO,MAAMC,kBAAkB,GAQ3BV,QAAQ,CAACU,kBAAkB"}
1
+ {"version":3,"file":"ServerRequest.js","names":["internal","maxBodySize","TypeId","ServerRequest","serverRequestTag","persistedFormData","schemaHeaders","schemaBodyJson","schemaBodyUrlParams","schemaFormData","schemaFormDataJson","fromWeb"],"sources":["../../../src/Http/ServerRequest.ts"],"sourcesContent":[null],"mappings":"AAUA,OAAO,KAAKA,QAAQ,MAAM,mCAAmC;AAQ7D;AACE;;;;AAIAC,WAAW,QACN,sBAAsB;AAE7B;;;;AAIA,OAAO,MAAMC,MAAM,GAAkBF,QAAQ,CAACE,MAAM;AAkCpD;;;;AAIA,OAAO,MAAMC,aAAa,GAA8CH,QAAQ,CAACI,gBAAgB;AAEjG;;;;AAIA,OAAO,MAAMC,iBAAiB,GAI1BL,QAAQ,CAACK,iBAAiB;AAE9B;;;;AAIA,OAAO,MAAMC,aAAa,GAEqCN,QAAQ,CAACM,aAAa;AAErF;;;;AAIA,OAAO,MAAMC,cAAc,GAEyDP,QAAQ,CAACO,cAAc;AAE3G;;;;AAIA,OAAO,MAAMC,mBAAmB,GAEoDR,QAAQ,CAACQ,mBAAmB;AAEhH;;;;AAIA,OAAO,MAAMC,cAAc,GAMvBT,QAAQ,CAACS,cAAc;AAE3B;;;;AAIA,OAAO,MAAMC,kBAAkB,GAQ3BV,QAAQ,CAACU,kBAAkB;AAE/B;;;;AAIA,OAAO,MAAMC,OAAO,GAAwCX,QAAQ,CAACW,OAAO"}
@@ -88,4 +88,9 @@ export const setBody = internal.setBody;
88
88
  * @category combinators
89
89
  */
90
90
  export const setStatus = internal.setStatus;
91
+ /**
92
+ * @since 1.0.0
93
+ * @category conversions
94
+ */
95
+ export const toWeb = internal.toWeb;
91
96
  //# sourceMappingURL=ServerResponse.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ServerResponse.js","names":["internal","TypeId","Symbol","for","isServerResponse","empty","uint8Array","text","json","schemaJson","unsafeJson","urlParams","raw","formData","stream","file","fileWeb","setHeader","setHeaders","setBody","setStatus"],"sources":["../../../src/Http/ServerResponse.ts"],"sourcesContent":[null],"mappings":"AAQA,OAAO,KAAKA,QAAQ,MAAM,oCAAoC;AAM9D;;;;AAIA,OAAO,MAAMC,MAAM,gBAAGC,MAAM,CAACC,GAAG,CAAC,sCAAsC,CAAC;AAiDxE;;;AAGA,OAAO,MAAMC,gBAAgB,GAAwCJ,QAAQ,CAACI,gBAAgB;AAE9F;;;;AAIA,OAAO,MAAMC,KAAK,GAAsDL,QAAQ,CAACK,KAAK;AAEtF;;;;AAIA,OAAO,MAAMC,UAAU,GAA4EN,QAAQ,CAACM,UAAU;AAEtH;;;;AAIA,OAAO,MAAMC,IAAI,GAAwEP,QAAQ,CAACO,IAAI;AAEtG;;;;AAIA,OAAO,MAAMC,IAAI,GAG2CR,QAAQ,CAACQ,IAAI;AAEzE;;;;AAIA,OAAO,MAAMC,UAAU,GAGrBT,QAAQ,CAACS,UAAU;AAErB;;;;AAIA,OAAO,MAAMC,UAAU,GAAqEV,QAAQ,CAACU,UAAU;AAE/G;;;;AAIA,OAAO,MAAMC,SAAS,GAA6EX,QAAQ,CAACW,SAAS;AAErH;;;;AAIA,OAAO,MAAMC,GAAG,GAAyDZ,QAAQ,CAACY,GAAG;AAErF;;;;AAIA,OAAO,MAAMC,QAAQ,GAAsEb,QAAQ,CAACa,QAAQ;AAE5G;;;;AAIA,OAAO,MAAMC,MAAM,GACjBd,QAAQ,CAACc,MAAM;AAEjB;;;;AAIA,OAAO,MAAMC,IAAI,GAGoEf,QAAQ,CAACe,IAAI;AAElG;;;;AAIA,OAAO,MAAMC,OAAO,GAG2ChB,QAAQ,CAACgB,OAAO;AAE/E;;;;AAIA,OAAO,MAAMC,SAAS,GAGlBjB,QAAQ,CAACiB,SAAS;AAEtB;;;;AAIA,OAAO,MAAMC,UAAU,GAGnBlB,QAAQ,CAACkB,UAAU;AAEvB;;;;AAIA,OAAO,MAAMC,OAAO,GAGhBnB,QAAQ,CAACmB,OAAO;AAEpB;;;;AAIA,OAAO,MAAMC,SAAS,GAGlBpB,QAAQ,CAACoB,SAAS"}
1
+ {"version":3,"file":"ServerResponse.js","names":["internal","TypeId","Symbol","for","isServerResponse","empty","uint8Array","text","json","schemaJson","unsafeJson","urlParams","raw","formData","stream","file","fileWeb","setHeader","setHeaders","setBody","setStatus","toWeb"],"sources":["../../../src/Http/ServerResponse.ts"],"sourcesContent":[null],"mappings":"AAQA,OAAO,KAAKA,QAAQ,MAAM,oCAAoC;AAM9D;;;;AAIA,OAAO,MAAMC,MAAM,gBAAGC,MAAM,CAACC,GAAG,CAAC,sCAAsC,CAAC;AAiDxE;;;AAGA,OAAO,MAAMC,gBAAgB,GAAwCJ,QAAQ,CAACI,gBAAgB;AAE9F;;;;AAIA,OAAO,MAAMC,KAAK,GAAsDL,QAAQ,CAACK,KAAK;AAEtF;;;;AAIA,OAAO,MAAMC,UAAU,GAA4EN,QAAQ,CAACM,UAAU;AAEtH;;;;AAIA,OAAO,MAAMC,IAAI,GAAwEP,QAAQ,CAACO,IAAI;AAEtG;;;;AAIA,OAAO,MAAMC,IAAI,GAG2CR,QAAQ,CAACQ,IAAI;AAEzE;;;;AAIA,OAAO,MAAMC,UAAU,GAGrBT,QAAQ,CAACS,UAAU;AAErB;;;;AAIA,OAAO,MAAMC,UAAU,GAAqEV,QAAQ,CAACU,UAAU;AAE/G;;;;AAIA,OAAO,MAAMC,SAAS,GAA6EX,QAAQ,CAACW,SAAS;AAErH;;;;AAIA,OAAO,MAAMC,GAAG,GAAyDZ,QAAQ,CAACY,GAAG;AAErF;;;;AAIA,OAAO,MAAMC,QAAQ,GAAsEb,QAAQ,CAACa,QAAQ;AAE5G;;;;AAIA,OAAO,MAAMC,MAAM,GACjBd,QAAQ,CAACc,MAAM;AAEjB;;;;AAIA,OAAO,MAAMC,IAAI,GAGoEf,QAAQ,CAACe,IAAI;AAElG;;;;AAIA,OAAO,MAAMC,OAAO,GAG2ChB,QAAQ,CAACgB,OAAO;AAE/E;;;;AAIA,OAAO,MAAMC,SAAS,GAGlBjB,QAAQ,CAACiB,SAAS;AAEtB;;;;AAIA,OAAO,MAAMC,UAAU,GAGnBlB,QAAQ,CAACkB,UAAU;AAEvB;;;;AAIA,OAAO,MAAMC,OAAO,GAGhBnB,QAAQ,CAACmB,OAAO;AAEpB;;;;AAIA,OAAO,MAAMC,SAAS,GAGlBpB,QAAQ,CAACoB,SAAS;AAEtB;;;;AAIA,OAAO,MAAMC,KAAK,GAAkErB,QAAQ,CAACqB,KAAK"}
@@ -1,8 +1,12 @@
1
1
  import * as Context from "effect/Context";
2
2
  import * as Effect from "effect/Effect";
3
+ import * as Option from "effect/Option";
4
+ import * as Stream from "effect/Stream";
3
5
  import * as FormData from "../../Http/FormData.js";
6
+ import * as Headers from "../../Http/Headers.js";
4
7
  import * as IncomingMessage from "../../Http/IncomingMessage.js";
5
8
  import * as Error from "../../Http/ServerError.js";
9
+ import * as UrlParams from "../../Http/UrlParams.js";
6
10
  /** @internal */
7
11
  export const TypeId = /*#__PURE__*/Symbol.for("@effect/platform/Http/ServerRequest");
8
12
  /** @internal */
@@ -38,4 +42,110 @@ export const schemaFormDataJson = schema => {
38
42
  error: error.error
39
43
  })))));
40
44
  };
45
+ /** @internal */
46
+ export const fromWeb = request => new ServerRequestImpl(request, request.url);
47
+ class ServerRequestImpl {
48
+ source;
49
+ url;
50
+ headersOverride;
51
+ remoteAddressOverride;
52
+ [TypeId];
53
+ [IncomingMessage.TypeId];
54
+ constructor(source, url, headersOverride, remoteAddressOverride) {
55
+ this.source = source;
56
+ this.url = url;
57
+ this.headersOverride = headersOverride;
58
+ this.remoteAddressOverride = remoteAddressOverride;
59
+ this[TypeId] = TypeId;
60
+ this[IncomingMessage.TypeId] = IncomingMessage.TypeId;
61
+ }
62
+ modify(options) {
63
+ return new ServerRequestImpl(this.source, options.url ?? this.url, options.headers ?? this.headersOverride, options.remoteAddress ?? this.remoteAddressOverride);
64
+ }
65
+ get method() {
66
+ return this.source.method.toUpperCase();
67
+ }
68
+ get originalUrl() {
69
+ return this.source.url;
70
+ }
71
+ get remoteAddress() {
72
+ return this.remoteAddressOverride ? Option.some(this.remoteAddressOverride) : Option.none();
73
+ }
74
+ get headers() {
75
+ this.headersOverride ??= Headers.fromInput(this.source.headers);
76
+ return this.headersOverride;
77
+ }
78
+ get stream() {
79
+ return this.source.body ? Stream.fromReadableStream(() => this.source.body, _ => Error.RequestError({
80
+ request: this,
81
+ reason: "Decode",
82
+ error: _
83
+ })) : Stream.fail(Error.RequestError({
84
+ request: this,
85
+ reason: "Decode",
86
+ error: "can not create stream from empty body"
87
+ }));
88
+ }
89
+ textEffect;
90
+ get text() {
91
+ if (this.textEffect) {
92
+ return this.textEffect;
93
+ }
94
+ this.textEffect = Effect.runSync(Effect.cached(Effect.tryPromise({
95
+ try: () => this.source.text(),
96
+ catch: error => Error.RequestError({
97
+ request: this,
98
+ reason: "Decode",
99
+ error
100
+ })
101
+ })));
102
+ return this.textEffect;
103
+ }
104
+ get json() {
105
+ return Effect.tryMap(this.text, {
106
+ try: _ => JSON.parse(_),
107
+ catch: error => Error.RequestError({
108
+ request: this,
109
+ reason: "Decode",
110
+ error
111
+ })
112
+ });
113
+ }
114
+ get urlParamsBody() {
115
+ return Effect.flatMap(this.text, _ => Effect.try({
116
+ try: () => UrlParams.fromInput(new URLSearchParams(_)),
117
+ catch: error => Error.RequestError({
118
+ request: this,
119
+ reason: "Decode",
120
+ error
121
+ })
122
+ }));
123
+ }
124
+ formDataEffect;
125
+ get formData() {
126
+ if (this.formDataEffect) {
127
+ return this.formDataEffect;
128
+ }
129
+ this.formDataEffect = Effect.runSync(Effect.cached(FormData.formData(this.formDataStream)));
130
+ return this.formDataEffect;
131
+ }
132
+ get formDataStream() {
133
+ return Stream.pipeThroughChannel(Stream.mapError(this.stream, error => FormData.FormDataError("InternalError", error)), FormData.makeChannel(this.headers));
134
+ }
135
+ arrayBufferEffect;
136
+ get arrayBuffer() {
137
+ if (this.arrayBuffer) {
138
+ return this.arrayBuffer;
139
+ }
140
+ this.arrayBufferEffect = Effect.runSync(Effect.cached(Effect.tryPromise({
141
+ try: () => this.source.arrayBuffer(),
142
+ catch: error => Error.RequestError({
143
+ request: this,
144
+ reason: "Decode",
145
+ error
146
+ })
147
+ })));
148
+ return this.arrayBufferEffect;
149
+ }
150
+ }
41
151
  //# sourceMappingURL=serverRequest.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"serverRequest.js","names":["Context","Effect","FormData","IncomingMessage","Error","TypeId","Symbol","for","serverRequestTag","Tag","persistedFormData","flatMap","request","formData","schemaHeaders","schema","parse","schemaBodyJson","schemaBodyUrlParams","schemaFormData","schemaPersisted","schemaFormDataJson","schemaJson","field","catchTag","error","fail","RequestError","reason"],"sources":["../../../../src/internal/http/serverRequest.ts"],"sourcesContent":[null],"mappings":"AACA,OAAO,KAAKA,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,QAAQ,MAAM,wBAAwB;AAClD,OAAO,KAAKC,eAAe,MAAM,+BAA+B;AAChE,OAAO,KAAKC,KAAK,MAAM,2BAA2B;AAGlD;AACA,OAAO,MAAMC,MAAM,gBAAyBC,MAAM,CAACC,GAAG,CAAC,qCAAqC,CAAyB;AAErH;AACA,OAAO,MAAMC,gBAAgB,gBAAGR,OAAO,CAACS,GAAG,CAA8BJ,MAAM,CAAC;AAEhF;AACA,OAAO,MAAMK,iBAAiB,gBAAGT,MAAM,CAACU,OAAO,CAACH,gBAAgB,EAAGI,OAAO,IAAKA,OAAO,CAACC,QAAQ,CAAC;AAEhG;AACA,OAAO,MAAMC,aAAa,GAAmDC,MAA2B,IAAI;EAC1G,MAAMC,KAAK,GAAGb,eAAe,CAACW,aAAa,CAACC,MAAM,CAAC;EACnD,OAAOd,MAAM,CAACU,OAAO,CAACH,gBAAgB,EAAEQ,KAAK,CAAC;AAChD,CAAC;AAED;AACA,OAAO,MAAMC,cAAc,GAAUF,MAA2B,IAAI;EAClE,MAAMC,KAAK,GAAGb,eAAe,CAACc,cAAc,CAACF,MAAM,CAAC;EACpD,OAAOd,MAAM,CAACU,OAAO,CAACH,gBAAgB,EAAEQ,KAAK,CAAC;AAChD,CAAC;AAED;AACA,OAAO,MAAME,mBAAmB,GAAmDH,MAA2B,IAAI;EAChH,MAAMC,KAAK,GAAGb,eAAe,CAACe,mBAAmB,CAACH,MAAM,CAAC;EACzD,OAAOd,MAAM,CAACU,OAAO,CAACH,gBAAgB,EAAEQ,KAAK,CAAC;AAChD,CAAC;AAED;AACA,OAAO,MAAMG,cAAc,GACzBJ,MAA2B,IACzB;EACF,MAAMC,KAAK,GAAGd,QAAQ,CAACkB,eAAe,CAACL,MAAM,CAAC;EAC9C,OAAOd,MAAM,CAACU,OAAO,CAACD,iBAAiB,EAAEM,KAAK,CAAC;AACjD,CAAC;AAED;AACA,OAAO,MAAMK,kBAAkB,GAAUN,MAA2B,IAAI;EACtE,MAAMC,KAAK,GAAGd,QAAQ,CAACoB,UAAU,CAACP,MAAM,CAAC;EACzC,OAAQQ,KAAa,IACnBtB,MAAM,CAACU,OAAO,CAACH,gBAAgB,EAAGI,OAAO,IACvCX,MAAM,CAACU,OAAO,CACZC,OAAO,CAACC,QAAQ,EACfA,QAAQ,IACPZ,MAAM,CAACuB,QAAQ,CACbR,KAAK,CAACH,QAAQ,EAAEU,KAAK,CAAC,EACtB,eAAe,EACdE,KAAK,IACJxB,MAAM,CAACyB,IAAI,CACTtB,KAAK,CAACuB,YAAY,CAAC;IACjBC,MAAM,EAAE,QAAQ;IAChBhB,OAAO;IACPa,KAAK,EAAEA,KAAK,CAACA;GACd,CAAC,CACH,CACJ,CACJ,CAAC;AACR,CAAC"}
1
+ {"version":3,"file":"serverRequest.js","names":["Context","Effect","Option","Stream","FormData","Headers","IncomingMessage","Error","UrlParams","TypeId","Symbol","for","serverRequestTag","Tag","persistedFormData","flatMap","request","formData","schemaHeaders","schema","parse","schemaBodyJson","schemaBodyUrlParams","schemaFormData","schemaPersisted","schemaFormDataJson","schemaJson","field","catchTag","error","fail","RequestError","reason","fromWeb","ServerRequestImpl","url","source","headersOverride","remoteAddressOverride","constructor","modify","options","headers","remoteAddress","method","toUpperCase","originalUrl","some","none","fromInput","stream","body","fromReadableStream","_","textEffect","text","runSync","cached","tryPromise","try","catch","json","tryMap","JSON","urlParamsBody","URLSearchParams","formDataEffect","formDataStream","pipeThroughChannel","mapError","FormDataError","makeChannel","arrayBufferEffect","arrayBuffer"],"sources":["../../../../src/internal/http/serverRequest.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import * as Effect from "effect/Effect";
2
2
  import * as Effectable from "effect/Effectable";
3
3
  import { dual } from "effect/Function";
4
+ import * as Stream from "effect/Stream";
4
5
  import * as Headers from "../../Http/Headers.js";
5
6
  import * as Platform from "../../Http/Platform.js";
6
7
  import * as UrlParams from "../../Http/UrlParams.js";
@@ -100,4 +101,50 @@ export const setBody = /*#__PURE__*/dual(2, (self, body) => {
100
101
  }
101
102
  return new ServerResponseImpl(self.status, self.statusText, headers, body);
102
103
  });
104
+ /** @internal */
105
+ export const toWeb = (response, withoutBody = false) => {
106
+ if (withoutBody) {
107
+ return new Response(undefined, {
108
+ status: response.status,
109
+ statusText: response.statusText,
110
+ headers: response.headers
111
+ });
112
+ }
113
+ const body = response.body;
114
+ switch (body._tag) {
115
+ case "Empty":
116
+ {
117
+ return new Response(undefined, {
118
+ status: response.status,
119
+ statusText: response.statusText,
120
+ headers: response.headers
121
+ });
122
+ }
123
+ case "Uint8Array":
124
+ case "Raw":
125
+ {
126
+ return new Response(body.body, {
127
+ status: response.status,
128
+ statusText: response.statusText,
129
+ headers: response.headers
130
+ });
131
+ }
132
+ case "FormData":
133
+ {
134
+ return new Response(body.formData, {
135
+ status: response.status,
136
+ statusText: response.statusText,
137
+ headers: response.headers
138
+ });
139
+ }
140
+ case "Stream":
141
+ {
142
+ return new Response(Stream.toReadableStream(body.stream), {
143
+ status: response.status,
144
+ statusText: response.statusText,
145
+ headers: response.headers
146
+ });
147
+ }
148
+ }
149
+ };
103
150
  //# sourceMappingURL=serverResponse.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"serverResponse.js","names":["Effect","Effectable","dual","Headers","Platform","UrlParams","internalBody","TypeId","Symbol","for","ServerResponseImpl","StructuralClass","status","statusText","body","headers","constructor","contentType","contentLength","newHeaders","toString","commit","succeed","toJSON","_id","isServerResponse","u","empty","options","uint8Array","getContentType","text","json","map","unsafeJson","schemaJson","schema","encode","jsonSchema","file","path","flatMap","platform","fileResponse","fileWeb","fileWebResponse","urlParams","fromInput","raw","formData","stream","setHeader","self","key","value","set","setHeaders","input","setAll","setStatus","args","setBody","_tag","remove"],"sources":["../../../../src/internal/http/serverResponse.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"serverResponse.js","names":["Effect","Effectable","dual","Stream","Headers","Platform","UrlParams","internalBody","TypeId","Symbol","for","ServerResponseImpl","StructuralClass","status","statusText","body","headers","constructor","contentType","contentLength","newHeaders","toString","commit","succeed","toJSON","_id","isServerResponse","u","empty","options","uint8Array","getContentType","text","json","map","unsafeJson","schemaJson","schema","encode","jsonSchema","file","path","flatMap","platform","fileResponse","fileWeb","fileWebResponse","urlParams","fromInput","raw","formData","stream","setHeader","self","key","value","set","setHeaders","input","setAll","setStatus","args","setBody","_tag","remove","toWeb","response","withoutBody","Response","undefined","toReadableStream"],"sources":["../../../../src/internal/http/serverResponse.ts"],"sourcesContent":[null],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/platform",
3
- "version": "0.31.1",
3
+ "version": "0.31.2",
4
4
  "description": "Unified interfaces for common platform-specific services",
5
5
  "license": "MIT",
6
6
  "repository": {
package/src/Http/App.ts CHANGED
@@ -2,14 +2,18 @@
2
2
  * @since 1.0.0
3
3
  */
4
4
  import * as Effect from "effect/Effect"
5
+ import * as Exit from "effect/Exit"
5
6
  import * as FiberRef from "effect/FiberRef"
6
7
  import { dual } from "effect/Function"
7
8
  import { globalValue } from "effect/GlobalValue"
9
+ import * as Layer from "effect/Layer"
8
10
  import * as ReadonlyArray from "effect/ReadonlyArray"
11
+ import * as Runtime from "effect/Runtime"
12
+ import * as Scope from "effect/Scope"
9
13
  import * as internalMiddleware from "../internal/http/middleware.js"
10
14
  import type * as ServerError from "./ServerError.js"
11
- import type * as ServerRequest from "./ServerRequest.js"
12
- import type * as ServerResponse from "./ServerResponse.js"
15
+ import * as ServerRequest from "./ServerRequest.js"
16
+ import * as ServerResponse from "./ServerResponse.js"
13
17
 
14
18
  /**
15
19
  * @since 1.0.0
@@ -97,3 +101,47 @@ export const withPreResponseHandler = dual<
97
101
  currentPreResponseHandlers,
98
102
  ReadonlyArray.append(handler)
99
103
  ))
104
+
105
+ /**
106
+ * @since 1.0.0
107
+ * @category conversions
108
+ */
109
+ export const toWebHandlerRuntime = <R>(runtime: Runtime.Runtime<R>) => {
110
+ const run = Runtime.runPromise(runtime)
111
+ return <E>(self: Default<R, E>) => {
112
+ self = withDefaultMiddleware(self)
113
+ return (request: Request): Promise<Response> => {
114
+ const req = ServerRequest.fromWeb(request)
115
+ return run(Effect.map(
116
+ Effect.provideService(self, ServerRequest.ServerRequest, req),
117
+ (res) => ServerResponse.toWeb(res, req.method === "HEAD")
118
+ ))
119
+ }
120
+ }
121
+ }
122
+
123
+ /**
124
+ * @since 1.0.0
125
+ * @category conversions
126
+ */
127
+ export const toWebHandler: <E>(self: Default<never, E>) => (request: Request) => Promise<Response> =
128
+ toWebHandlerRuntime(Runtime.defaultRuntime)
129
+
130
+ /**
131
+ * @since 1.0.0
132
+ * @category conversions
133
+ */
134
+ export const toWebHandlerLayer = <R, E, RE>(
135
+ self: Default<R, E>,
136
+ layer: Layer.Layer<never, RE, R>
137
+ ): {
138
+ readonly close: () => Promise<void>
139
+ readonly handler: (request: Request) => Promise<Response>
140
+ } => {
141
+ const scope = Effect.runSync(Scope.make())
142
+ const close = () => Effect.runPromise(Scope.close(scope, Exit.unit))
143
+ const build = Effect.map(Layer.toRuntime(layer), (_) => toWebHandlerRuntime(_)(self))
144
+ const runner = Effect.runPromise(Scope.extend(build, scope))
145
+ const handler = (request: Request): Promise<Response> => runner.then((handler) => handler(request))
146
+ return { close, handler } as const
147
+ }
@@ -127,3 +127,9 @@ export const schemaFormDataJson: <I, A>(
127
127
  Error.RequestError | FormData.FormDataError | ParseResult.ParseError,
128
128
  A
129
129
  > = internal.schemaFormDataJson
130
+
131
+ /**
132
+ * @since 1.0.0
133
+ * @category conversions
134
+ */
135
+ export const fromWeb: (request: Request) => ServerRequest = internal.fromWeb
@@ -190,3 +190,9 @@ export const setStatus: {
190
190
  (status: number, statusText?: string | undefined): (self: ServerResponse) => ServerResponse
191
191
  (self: ServerResponse, status: number, statusText?: string | undefined): ServerResponse
192
192
  } = internal.setStatus
193
+
194
+ /**
195
+ * @since 1.0.0
196
+ * @category conversions
197
+ */
198
+ export const toWeb: (response: ServerResponse, withoutBody?: boolean) => Response = internal.toWeb
@@ -1,10 +1,18 @@
1
1
  import type * as Schema from "@effect/schema/Schema"
2
2
  import * as Context from "effect/Context"
3
3
  import * as Effect from "effect/Effect"
4
+ import * as Option from "effect/Option"
5
+ import type * as Scope from "effect/Scope"
6
+ import * as Stream from "effect/Stream"
7
+ import type * as FileSystem from "../../FileSystem.js"
4
8
  import * as FormData from "../../Http/FormData.js"
9
+ import * as Headers from "../../Http/Headers.js"
5
10
  import * as IncomingMessage from "../../Http/IncomingMessage.js"
11
+ import type { Method } from "../../Http/Method.js"
6
12
  import * as Error from "../../Http/ServerError.js"
7
13
  import type * as ServerRequest from "../../Http/ServerRequest.js"
14
+ import * as UrlParams from "../../Http/UrlParams.js"
15
+ import type * as Path from "../../Path.js"
8
16
 
9
17
  /** @internal */
10
18
  export const TypeId: ServerRequest.TypeId = Symbol.for("@effect/platform/Http/ServerRequest") as ServerRequest.TypeId
@@ -63,3 +71,154 @@ export const schemaFormDataJson = <I, A>(schema: Schema.Schema<I, A>) => {
63
71
  )
64
72
  ))
65
73
  }
74
+
75
+ /** @internal */
76
+ export const fromWeb = (request: globalThis.Request): ServerRequest.ServerRequest =>
77
+ new ServerRequestImpl(request, request.url)
78
+
79
+ class ServerRequestImpl implements ServerRequest.ServerRequest {
80
+ readonly [TypeId]: ServerRequest.TypeId
81
+ readonly [IncomingMessage.TypeId]: IncomingMessage.TypeId
82
+ constructor(
83
+ readonly source: Request,
84
+ readonly url: string,
85
+ public headersOverride?: Headers.Headers,
86
+ private remoteAddressOverride?: string
87
+ ) {
88
+ this[TypeId] = TypeId
89
+ this[IncomingMessage.TypeId] = IncomingMessage.TypeId
90
+ }
91
+ modify(
92
+ options: {
93
+ readonly url?: string | undefined
94
+ readonly headers?: Headers.Headers | undefined
95
+ readonly remoteAddress?: string | undefined
96
+ }
97
+ ) {
98
+ return new ServerRequestImpl(
99
+ this.source,
100
+ options.url ?? this.url,
101
+ options.headers ?? this.headersOverride,
102
+ options.remoteAddress ?? this.remoteAddressOverride
103
+ )
104
+ }
105
+ get method(): Method {
106
+ return this.source.method.toUpperCase() as Method
107
+ }
108
+ get originalUrl() {
109
+ return this.source.url
110
+ }
111
+ get remoteAddress(): Option.Option<string> {
112
+ return this.remoteAddressOverride ? Option.some(this.remoteAddressOverride) : Option.none()
113
+ }
114
+ get headers(): Headers.Headers {
115
+ this.headersOverride ??= Headers.fromInput(this.source.headers)
116
+ return this.headersOverride
117
+ }
118
+
119
+ get stream(): Stream.Stream<never, Error.RequestError, Uint8Array> {
120
+ return this.source.body
121
+ ? Stream.fromReadableStream(() => this.source.body as any, (_) =>
122
+ Error.RequestError({
123
+ request: this,
124
+ reason: "Decode",
125
+ error: _
126
+ }))
127
+ : Stream.fail(Error.RequestError({
128
+ request: this,
129
+ reason: "Decode",
130
+ error: "can not create stream from empty body"
131
+ }))
132
+ }
133
+
134
+ private textEffect: Effect.Effect<never, Error.RequestError, string> | undefined
135
+ get text(): Effect.Effect<never, Error.RequestError, string> {
136
+ if (this.textEffect) {
137
+ return this.textEffect
138
+ }
139
+ this.textEffect = Effect.runSync(Effect.cached(
140
+ Effect.tryPromise({
141
+ try: () => this.source.text(),
142
+ catch: (error) =>
143
+ Error.RequestError({
144
+ request: this,
145
+ reason: "Decode",
146
+ error
147
+ })
148
+ })
149
+ ))
150
+ return this.textEffect
151
+ }
152
+
153
+ get json(): Effect.Effect<never, Error.RequestError, unknown> {
154
+ return Effect.tryMap(this.text, {
155
+ try: (_) => JSON.parse(_) as unknown,
156
+ catch: (error) =>
157
+ Error.RequestError({
158
+ request: this,
159
+ reason: "Decode",
160
+ error
161
+ })
162
+ })
163
+ }
164
+
165
+ get urlParamsBody(): Effect.Effect<never, Error.RequestError, UrlParams.UrlParams> {
166
+ return Effect.flatMap(this.text, (_) =>
167
+ Effect.try({
168
+ try: () => UrlParams.fromInput(new URLSearchParams(_)),
169
+ catch: (error) =>
170
+ Error.RequestError({
171
+ request: this,
172
+ reason: "Decode",
173
+ error
174
+ })
175
+ }))
176
+ }
177
+
178
+ private formDataEffect:
179
+ | Effect.Effect<
180
+ Scope.Scope | FileSystem.FileSystem | Path.Path,
181
+ FormData.FormDataError,
182
+ FormData.PersistedFormData
183
+ >
184
+ | undefined
185
+ get formData(): Effect.Effect<
186
+ Scope.Scope | FileSystem.FileSystem | Path.Path,
187
+ FormData.FormDataError,
188
+ FormData.PersistedFormData
189
+ > {
190
+ if (this.formDataEffect) {
191
+ return this.formDataEffect
192
+ }
193
+ this.formDataEffect = Effect.runSync(Effect.cached(
194
+ FormData.formData(this.formDataStream)
195
+ ))
196
+ return this.formDataEffect
197
+ }
198
+
199
+ get formDataStream(): Stream.Stream<never, FormData.FormDataError, FormData.Part> {
200
+ return Stream.pipeThroughChannel(
201
+ Stream.mapError(this.stream, (error) => FormData.FormDataError("InternalError", error)),
202
+ FormData.makeChannel(this.headers)
203
+ )
204
+ }
205
+
206
+ private arrayBufferEffect: Effect.Effect<never, Error.RequestError, ArrayBuffer> | undefined
207
+ get arrayBuffer(): Effect.Effect<never, Error.RequestError, ArrayBuffer> {
208
+ if (this.arrayBuffer) {
209
+ return this.arrayBuffer
210
+ }
211
+ this.arrayBufferEffect = Effect.runSync(Effect.cached(
212
+ Effect.tryPromise({
213
+ try: () => this.source.arrayBuffer(),
214
+ catch: (error) =>
215
+ Error.RequestError({
216
+ request: this,
217
+ reason: "Decode",
218
+ error
219
+ })
220
+ })
221
+ ))
222
+ return this.arrayBufferEffect
223
+ }
224
+ }
@@ -2,7 +2,7 @@ import type * as Schema from "@effect/schema/Schema"
2
2
  import * as Effect from "effect/Effect"
3
3
  import * as Effectable from "effect/Effectable"
4
4
  import { dual } from "effect/Function"
5
- import type * as Stream from "effect/Stream"
5
+ import * as Stream from "effect/Stream"
6
6
  import type * as PlatformError from "../../Error.js"
7
7
  import type * as FileSystem from "../../FileSystem.js"
8
8
  import type * as Body from "../../Http/Body.js"
@@ -259,3 +259,46 @@ export const setBody = dual<
259
259
  body
260
260
  )
261
261
  })
262
+
263
+ /** @internal */
264
+ export const toWeb = (response: ServerResponse.ServerResponse, withoutBody = false): Response => {
265
+ if (withoutBody) {
266
+ return new Response(undefined, {
267
+ status: response.status,
268
+ statusText: response.statusText,
269
+ headers: response.headers
270
+ })
271
+ }
272
+ const body = response.body
273
+ switch (body._tag) {
274
+ case "Empty": {
275
+ return new Response(undefined, {
276
+ status: response.status,
277
+ statusText: response.statusText,
278
+ headers: response.headers
279
+ })
280
+ }
281
+ case "Uint8Array":
282
+ case "Raw": {
283
+ return new Response(body.body as any, {
284
+ status: response.status,
285
+ statusText: response.statusText,
286
+ headers: response.headers
287
+ })
288
+ }
289
+ case "FormData": {
290
+ return new Response(body.formData as any, {
291
+ status: response.status,
292
+ statusText: response.statusText,
293
+ headers: response.headers
294
+ })
295
+ }
296
+ case "Stream": {
297
+ return new Response(Stream.toReadableStream(body.stream), {
298
+ status: response.status,
299
+ statusText: response.statusText,
300
+ headers: response.headers
301
+ })
302
+ }
303
+ }
304
+ }