@effect/platform 0.13.9 → 0.13.10
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/Body.d.ts +40 -21
- package/Http/Body.d.ts.map +1 -1
- package/Http/Body.js +14 -8
- package/Http/Body.js.map +1 -1
- package/Http/Client.d.ts +1 -1
- package/Http/Client.d.ts.map +1 -1
- package/Http/ClientRequest.d.ts +4 -24
- package/Http/ClientRequest.d.ts.map +1 -1
- package/Http/ClientRequest.js +1 -7
- package/Http/ClientRequest.js.map +1 -1
- package/Http/ServerResponse.d.ts +2 -25
- package/Http/ServerResponse.d.ts.map +1 -1
- package/Http/ServerResponse.js +2 -13
- package/Http/ServerResponse.js.map +1 -1
- package/internal/http/body.js +24 -15
- package/internal/http/body.js.map +1 -1
- package/internal/http/client.d.ts.map +1 -1
- package/internal/http/client.js +1 -6
- package/internal/http/client.js.map +1 -1
- package/internal/http/clientRequest.js +3 -14
- package/internal/http/clientRequest.js.map +1 -1
- package/internal/http/serverResponse.js +3 -16
- package/internal/http/serverResponse.js.map +1 -1
- package/mjs/Http/Body.mjs +10 -5
- package/mjs/Http/Body.mjs.map +1 -1
- package/mjs/Http/ClientRequest.mjs +0 -5
- package/mjs/Http/ClientRequest.mjs.map +1 -1
- package/mjs/Http/ServerResponse.mjs +0 -9
- package/mjs/Http/ServerResponse.mjs.map +1 -1
- package/mjs/internal/http/body.mjs +20 -12
- package/mjs/internal/http/body.mjs.map +1 -1
- package/mjs/internal/http/client.mjs +1 -6
- package/mjs/internal/http/client.mjs.map +1 -1
- package/mjs/internal/http/clientRequest.mjs +2 -11
- package/mjs/internal/http/clientRequest.mjs.map +1 -1
- package/mjs/internal/http/serverResponse.mjs +2 -13
- package/mjs/internal/http/serverResponse.mjs.map +1 -1
- package/package.json +1 -1
- package/src/Http/Body.ts +46 -24
- package/src/Http/Client.ts +1 -1
- package/src/Http/ClientRequest.ts +7 -27
- package/src/Http/ServerResponse.ts +6 -34
- package/src/internal/http/body.ts +22 -22
- package/src/internal/http/client.ts +3 -11
- package/src/internal/http/clientRequest.ts +15 -39
- package/src/internal/http/serverResponse.ts +22 -52
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"body.mjs","names":["Effect","FileSystem","Schema","TypeId","Symbol","for","EmptyImpl","constructor","_tag","empty","RawImpl","body","contentType","contentLength","raw","Uint8ArrayImpl","length","uint8Array","text","TextEncoder","encode","
|
|
1
|
+
{"version":3,"file":"body.mjs","names":["Data","Effect","FileSystem","Schema","TypeId","Symbol","for","ErrorTypeId","bodyError","tagged","BodyError","reason","EmptyImpl","constructor","_tag","empty","RawImpl","body","contentType","contentLength","raw","Uint8ArrayImpl","length","uint8Array","text","TextEncoder","encode","unsafeJson","JSON","stringify","json","try","catch","error","jsonSchema","schema","flatMap","mapError","file","path","options","fs","map","stat","info","stream","Number","size","fileInfo","FormDataImpl","formData","StreamImpl"],"sources":["../../../src/internal/http/body.ts"],"sourcesContent":[null],"mappings":"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"}
|
|
@@ -26,12 +26,7 @@ const setProto = f => {
|
|
|
26
26
|
return f;
|
|
27
27
|
};
|
|
28
28
|
/** @internal */
|
|
29
|
-
export const make = f =>
|
|
30
|
-
function client(request) {
|
|
31
|
-
return Effect.flatMap(internalRequest.resolveBody(request), request => f(request));
|
|
32
|
-
}
|
|
33
|
-
return setProto(client);
|
|
34
|
-
};
|
|
29
|
+
export const make = f => setProto(f);
|
|
35
30
|
/** @internal */
|
|
36
31
|
export const fetch = (options = {}) => make(request => Effect.flatMap(UrlParams.makeUrl(request.url, request.urlParams, _ => internalError.requestError({
|
|
37
32
|
request,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.mjs","names":["Context","dual","pipeArguments","Effect","Layer","Method","UrlParams","internalBody","internalError","internalRequest","internalResponse","Schema","Stream","TypeId","Symbol","for","tag","Tag","clientProto","pipe","arguments","setProto","f","Object","setPrototypeOf","make","
|
|
1
|
+
{"version":3,"file":"client.mjs","names":["Context","dual","pipeArguments","Effect","Layer","Method","UrlParams","internalBody","internalError","internalRequest","internalResponse","Schema","Stream","TypeId","Symbol","for","tag","Tag","clientProto","pipe","arguments","setProto","f","Object","setPrototypeOf","make","fetch","options","request","flatMap","makeUrl","url","urlParams","_","requestError","reason","error","suspend","headers","Headers","send","body","map","tryPromise","try","signal","globalThis","method","catch","fromWeb","hasBody","convertBody","undefined","_tag","formData","toReadableStream","stream","fetchOk","filterStatusOk","layer","succeed","catchTag","self","catchTags","cases","catchAll","filterOrElse","orElse","filterOrFail","orFailWith","filterStatus","response","status","responseError","mapEffect","mapRequest","mapRequestEffect","retry","policy","schemaFunction","schema","encode","a","tryMap","TextEncoder","JSON","stringify","setBody","uint8Array","tap","tapRequest","zipRight"],"sources":["../../../src/internal/http/client.ts"],"sourcesContent":[null],"mappings":"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"}
|
|
@@ -4,7 +4,6 @@ import * as Effect from "@effect/io/Effect";
|
|
|
4
4
|
import * as Headers from "@effect/platform/Http/Headers";
|
|
5
5
|
import * as UrlParams from "@effect/platform/Http/UrlParams";
|
|
6
6
|
import * as internalBody from "@effect/platform/internal/http/body";
|
|
7
|
-
import * as internalError from "@effect/platform/internal/http/clientError";
|
|
8
7
|
/** @internal */
|
|
9
8
|
export const TypeId = /*#__PURE__*/Symbol.for("@effect/platform/Http/ClientRequest");
|
|
10
9
|
class ClientRequestImpl {
|
|
@@ -120,11 +119,9 @@ export const setBody = /*#__PURE__*/dual(2, (self, body) => {
|
|
|
120
119
|
/** @internal */
|
|
121
120
|
export const uint8ArrayBody = /*#__PURE__*/dual(args => isClientRequest(args[0]), (self, body, contentType = "application/octet-stream") => setBody(self, internalBody.uint8Array(body, contentType)));
|
|
122
121
|
/** @internal */
|
|
123
|
-
export const effectBody = /*#__PURE__*/dual(2, (self, body) => setBody(self, internalBody.effect(body)));
|
|
124
|
-
/** @internal */
|
|
125
122
|
export const textBody = /*#__PURE__*/dual(args => isClientRequest(args[0]), (self, body, contentType = "text/plain") => setBody(self, internalBody.text(body, contentType)));
|
|
126
123
|
/** @internal */
|
|
127
|
-
export const jsonBody = /*#__PURE__*/dual(2, (self, body) =>
|
|
124
|
+
export const jsonBody = /*#__PURE__*/dual(2, (self, body) => Effect.map(internalBody.json(body), body => setBody(self, body)));
|
|
128
125
|
/** @internal */
|
|
129
126
|
export const unsafeJsonBody = /*#__PURE__*/dual(2, (self, body) => setBody(self, internalBody.unsafeJson(body)));
|
|
130
127
|
/** @internal */
|
|
@@ -132,7 +129,7 @@ export const fileBody = /*#__PURE__*/dual(args => isClientRequest(args[0]), (sel
|
|
|
132
129
|
/** @internal */
|
|
133
130
|
export const schemaBody = schema => {
|
|
134
131
|
const encode = internalBody.jsonSchema(schema);
|
|
135
|
-
return dual(2, (self, body) => setBody(self,
|
|
132
|
+
return dual(2, (self, body) => Effect.map(encode(body), body => setBody(self, body)));
|
|
136
133
|
};
|
|
137
134
|
/** @internal */
|
|
138
135
|
export const urlParamsBody = /*#__PURE__*/dual(2, (self, body) => setBody(self, internalBody.text(UrlParams.toString(UrlParams.fromInput(body)), "application/x-www-form-urlencoded")));
|
|
@@ -143,10 +140,4 @@ export const streamBody = /*#__PURE__*/dual(args => isClientRequest(args[0]), (s
|
|
|
143
140
|
contentLength,
|
|
144
141
|
contentType = "application/octet-stream"
|
|
145
142
|
} = {}) => setBody(self, internalBody.stream(body, contentType, contentLength)));
|
|
146
|
-
/** @internal */
|
|
147
|
-
export const resolveBody = self => self.body._tag === "Effect" ? Effect.map(Effect.mapError(self.body.effect, error => internalError.requestError({
|
|
148
|
-
reason: "Encode",
|
|
149
|
-
request: self,
|
|
150
|
-
error
|
|
151
|
-
})), body => setBody(self, body)) : Effect.succeed(self);
|
|
152
143
|
//# sourceMappingURL=clientRequest.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clientRequest.mjs","names":["dual","pipeArguments","Effect","Headers","UrlParams","internalBody","
|
|
1
|
+
{"version":3,"file":"clientRequest.mjs","names":["dual","pipeArguments","Effect","Headers","UrlParams","internalBody","TypeId","Symbol","for","ClientRequestImpl","constructor","method","url","urlParams","headers","body","pipe","arguments","isClientRequest","u","empty","make","options","modify","get","post","put","patch","del","head","self","result","setMethod","setUrl","setHeaders","setUrlParams","setBody","accept","acceptJson","setHeader","key","value","set","input","setAll","basicAuth","username","password","btoa","bearerToken","token","mediaType","appendUrl","prependUrl","updateUrl","f","appendUrlParam","append","appendUrlParams","appendAll","setUrlParam","_tag","remove","contentType","contentLength","toString","uint8ArrayBody","args","uint8Array","textBody","text","jsonBody","map","json","unsafeJsonBody","unsafeJson","fileBody","path","file","schemaBody","schema","encode","jsonSchema","urlParamsBody","fromInput","formDataBody","formData","streamBody","stream"],"sources":["../../../src/internal/http/clientRequest.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,IAAI,QAAQ,uBAAuB;AAC5C,SAASC,aAAa,QAAQ,uBAAuB;AACrD,OAAO,KAAKC,MAAM,MAAM,mBAAmB;AAM3C,OAAO,KAAKC,OAAO,MAAM,+BAA+B;AAExD,OAAO,KAAKC,SAAS,MAAM,iCAAiC;AAC5D,OAAO,KAAKC,YAAY,MAAM,qCAAqC;AAInE;AACA,OAAO,MAAMC,MAAM,gBAAyBC,MAAM,CAACC,GAAG,CAAC,qCAAqC,CAAyB;AAErH,MAAMC,iBAAiB;EAErBC,YACWC,MAAc,EACdC,GAAW,EACXC,SAA8B,EAC9BC,OAAwB,EACxBC,IAAe;IAJf,KAAAJ,MAAM,GAANA,MAAM;IACN,KAAAC,GAAG,GAAHA,GAAG;IACH,KAAAC,SAAS,GAATA,SAAS;IACT,KAAAC,OAAO,GAAPA,OAAO;IACP,KAAAC,IAAI,GAAJA,IAAI;IAEb,IAAI,CAACT,MAAM,CAAC,GAAGA,MAAM;EACvB;EACAU,IAAIA,CAAA;IACF,OAAOf,aAAa,CAAC,IAAI,EAAEgB,SAAS,CAAC;EACvC;;AAGF;AACA,OAAO,MAAMC,eAAe,GAAIC,CAAU,IACxC,OAAOA,CAAC,KAAK,QAAQ,IAAIA,CAAC,KAAK,IAAI,IAAIb,MAAM,IAAIa,CAAC;AAEpD;AACA,OAAO,MAAMC,KAAK,gBAAgC,IAAIX,iBAAiB,CACrE,KAAK,EACL,EAAE,EACFL,SAAS,CAACgB,KAAK,EACfjB,OAAO,CAACiB,KAAK,EACbf,YAAY,CAACe,KAAK,CACnB;AAED;AACA,OAAO,MAAMC,IAAI,GAKZV,MAAc,IAAK,CAACC,GAAW,EAAEU,OAAqC,KACzEC,MAAM,CAACH,KAAK,EAAE;EACZT,MAAM;EACNC,GAAG;EACH,IAAIU,OAAO,IAAI,EAAE;CAClB,CAAC;AAEJ;AACA,OAAO,MAAME,GAAG,gBAAGH,IAAI,CAAC,KAAK,CAAC;AAE9B;AACA,OAAO,MAAMI,IAAI,gBAAGJ,IAAI,CAAC,MAAM,CAAC;AAEhC;AACA,OAAO,MAAMK,GAAG,gBAAGL,IAAI,CAAC,KAAK,CAAC;AAE9B;AACA,OAAO,MAAMM,KAAK,gBAAGN,IAAI,CAAC,OAAO,CAAC;AAElC;AACA,OAAO,MAAMO,GAAG,gBAAGP,IAAI,CAAC,QAAQ,CAAC;AAEjC;AACA,OAAO,MAAMQ,IAAI,gBAAGR,IAAI,CAAC,MAAM,CAAC;AAEhC;AACA,OAAO,MAAMC,OAAO,gBAAGD,IAAI,CAAC,SAAS,CAAC;AAEtC;AACA,OAAO,MAAME,MAAM,gBAAGvB,IAAI,CAGxB,CAAC,EAAE,CAAC8B,IAAI,EAAER,OAAO,KAAI;EACrB,IAAIS,MAAM,GAAGD,IAAI;EAEjB,IAAIR,OAAO,CAACX,MAAM,EAAE;IAClBoB,MAAM,GAAGC,SAAS,CAACD,MAAM,EAAET,OAAO,CAACX,MAAM,CAAC;;EAE5C,IAAIW,OAAO,CAACV,GAAG,EAAE;IACfmB,MAAM,GAAGE,MAAM,CAACF,MAAM,EAAET,OAAO,CAACV,GAAG,CAAC;;EAEtC,IAAIU,OAAO,CAACR,OAAO,EAAE;IACnBiB,MAAM,GAAGG,UAAU,CAACH,MAAM,EAAET,OAAO,CAACR,OAAO,CAAC;;EAE9C,IAAIQ,OAAO,CAACT,SAAS,EAAE;IACrBkB,MAAM,GAAGI,YAAY,CAACJ,MAAM,EAAET,OAAO,CAACT,SAAS,CAAC;;EAElD,IAAIS,OAAO,CAACP,IAAI,EAAE;IAChBgB,MAAM,GAAGK,OAAO,CAACL,MAAM,EAAET,OAAO,CAACP,IAAI,CAAC;;EAExC,IAAIO,OAAO,CAACe,MAAM,EAAE;IAClBN,MAAM,GAAGM,MAAM,CAACN,MAAM,EAAET,OAAO,CAACe,MAAM,CAAC;;EAEzC,IAAIf,OAAO,CAACgB,UAAU,EAAE;IACtBP,MAAM,GAAGO,UAAU,CAACP,MAAM,CAAC;;EAG7B,OAAOA,MAAM;AACf,CAAC,CAAC;AAEF;AACA,OAAO,MAAMQ,SAAS,gBAAGvC,IAAI,CAG3B,CAAC,EAAE,CAAC8B,IAAI,EAAEU,GAAG,EAAEC,KAAK,KACpB,IAAIhC,iBAAiB,CACnBqB,IAAI,CAACnB,MAAM,EACXmB,IAAI,CAAClB,GAAG,EACRkB,IAAI,CAACjB,SAAS,EACdV,OAAO,CAACuC,GAAG,CAACZ,IAAI,CAAChB,OAAO,EAAE0B,GAAG,EAAEC,KAAK,CAAC,EACrCX,IAAI,CAACf,IAAI,CACV,CAAC;AAEJ;AACA,OAAO,MAAMmB,UAAU,gBAAGlC,IAAI,CAG5B,CAAC,EAAE,CAAC8B,IAAI,EAAEa,KAAK,KACf,IAAIlC,iBAAiB,CACnBqB,IAAI,CAACnB,MAAM,EACXmB,IAAI,CAAClB,GAAG,EACRkB,IAAI,CAACjB,SAAS,EACdV,OAAO,CAACyC,MAAM,CAACd,IAAI,CAAChB,OAAO,EAAE6B,KAAK,CAAC,EACnCb,IAAI,CAACf,IAAI,CACV,CAAC;AAEJ;AACA,OAAO,MAAM8B,SAAS,gBAAG7C,IAAI,CAG3B,CAAC,EAAE,CAAC8B,IAAI,EAAEgB,QAAQ,EAAEC,QAAQ,KAAKR,SAAS,CAACT,IAAI,EAAE,eAAe,EAAE,SAASkB,IAAI,CAAC,GAAGF,QAAQ,IAAIC,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;AAEhH;AACA,OAAO,MAAME,WAAW,gBAAGjD,IAAI,CAG7B,CAAC,EAAE,CAAC8B,IAAI,EAAEoB,KAAK,KAAKX,SAAS,CAACT,IAAI,EAAE,eAAe,EAAE,UAAUoB,KAAK,EAAE,CAAC,CAAC;AAE1E;AACA,OAAO,MAAMb,MAAM,gBAAGrC,IAAI,CAGxB,CAAC,EAAE,CAAC8B,IAAI,EAAEqB,SAAS,KAAKZ,SAAS,CAACT,IAAI,EAAE,QAAQ,EAAEqB,SAAS,CAAC,CAAC;AAE/D;AACA,OAAO,MAAMb,UAAU,gBAAGD,MAAM,CAAC,kBAAkB,CAAC;AAEpD;AACA,OAAO,MAAML,SAAS,gBAAGhC,IAAI,CAG3B,CAAC,EAAE,CAAC8B,IAAI,EAAEnB,MAAM,KAChB,IAAIF,iBAAiB,CACnBE,MAAM,EACNmB,IAAI,CAAClB,GAAG,EACRkB,IAAI,CAACjB,SAAS,EACdiB,IAAI,CAAChB,OAAO,EACZgB,IAAI,CAACf,IAAI,CACV,CAAC;AAEJ;AACA,OAAO,MAAMkB,MAAM,gBAAGjC,IAAI,CAGxB,CAAC,EAAE,CAAC8B,IAAI,EAAElB,GAAG,KACb,IAAIH,iBAAiB,CACnBqB,IAAI,CAACnB,MAAM,EACXC,GAAG,EACHkB,IAAI,CAACjB,SAAS,EACdiB,IAAI,CAAChB,OAAO,EACZgB,IAAI,CAACf,IAAI,CACV,CAAC;AAEJ;AACA,OAAO,MAAMqC,SAAS,gBAAGpD,IAAI,CAG3B,CAAC,EAAE,CAAC8B,IAAI,EAAElB,GAAG,KACb,IAAIH,iBAAiB,CACnBqB,IAAI,CAACnB,MAAM,EACXmB,IAAI,CAAClB,GAAG,GAAGA,GAAG,EACdkB,IAAI,CAACjB,SAAS,EACdiB,IAAI,CAAChB,OAAO,EACZgB,IAAI,CAACf,IAAI,CACV,CAAC;AAEJ;AACA,OAAO,MAAMsC,UAAU,gBAAGrD,IAAI,CAG5B,CAAC,EAAE,CAAC8B,IAAI,EAAElB,GAAG,KACb,IAAIH,iBAAiB,CACnBqB,IAAI,CAACnB,MAAM,EACXC,GAAG,GAAGkB,IAAI,CAAClB,GAAG,EACdkB,IAAI,CAACjB,SAAS,EACdiB,IAAI,CAAChB,OAAO,EACZgB,IAAI,CAACf,IAAI,CACV,CAAC;AAEJ;AACA,OAAO,MAAMuC,SAAS,gBAAGtD,IAAI,CAG3B,CAAC,EAAE,CAAC8B,IAAI,EAAEyB,CAAC,KACX,IAAI9C,iBAAiB,CACnBqB,IAAI,CAACnB,MAAM,EACX4C,CAAC,CAACzB,IAAI,CAAClB,GAAG,CAAC,EACXkB,IAAI,CAACjB,SAAS,EACdiB,IAAI,CAAChB,OAAO,EACZgB,IAAI,CAACf,IAAI,CACV,CAAC;AAEJ;AACA,OAAO,MAAMyC,cAAc,gBAAGxD,IAAI,CAGhC,CAAC,EAAE,CAAC8B,IAAI,EAAEU,GAAG,EAAEC,KAAK,KACpB,IAAIhC,iBAAiB,CACnBqB,IAAI,CAACnB,MAAM,EACXmB,IAAI,CAAClB,GAAG,EACRR,SAAS,CAACqD,MAAM,CAAC3B,IAAI,CAACjB,SAAS,EAAE2B,GAAG,EAAEC,KAAK,CAAC,EAC5CX,IAAI,CAAChB,OAAO,EACZgB,IAAI,CAACf,IAAI,CACV,CAAC;AAEJ;AACA,OAAO,MAAM2C,eAAe,gBAAG1D,IAAI,CAGjC,CAAC,EAAE,CAAC8B,IAAI,EAAEa,KAAK,KACf,IAAIlC,iBAAiB,CACnBqB,IAAI,CAACnB,MAAM,EACXmB,IAAI,CAAClB,GAAG,EACRR,SAAS,CAACuD,SAAS,CAAC7B,IAAI,CAACjB,SAAS,EAAE8B,KAAK,CAAC,EAC1Cb,IAAI,CAAChB,OAAO,EACZgB,IAAI,CAACf,IAAI,CACV,CAAC;AAEJ;AACA,OAAO,MAAM6C,WAAW,gBAAG5D,IAAI,CAG7B,CAAC,EAAE,CAAC8B,IAAI,EAAEU,GAAG,EAAEC,KAAK,KACpB,IAAIhC,iBAAiB,CACnBqB,IAAI,CAACnB,MAAM,EACXmB,IAAI,CAAClB,GAAG,EACRR,SAAS,CAACsC,GAAG,CAACZ,IAAI,CAACjB,SAAS,EAAE2B,GAAG,EAAEC,KAAK,CAAC,EACzCX,IAAI,CAAChB,OAAO,EACZgB,IAAI,CAACf,IAAI,CACV,CAAC;AAEJ;AACA,OAAO,MAAMoB,YAAY,gBAAGnC,IAAI,CAG9B,CAAC,EAAE,CAAC8B,IAAI,EAAEa,KAAK,KACf,IAAIlC,iBAAiB,CACnBqB,IAAI,CAACnB,MAAM,EACXmB,IAAI,CAAClB,GAAG,EACRR,SAAS,CAACwC,MAAM,CAACd,IAAI,CAACjB,SAAS,EAAE8B,KAAK,CAAC,EACvCb,IAAI,CAAChB,OAAO,EACZgB,IAAI,CAACf,IAAI,CACV,CAAC;AAEJ;AACA,OAAO,MAAMqB,OAAO,gBAAGpC,IAAI,CAGzB,CAAC,EAAE,CAAC8B,IAAI,EAAEf,IAAI,KAAI;EAClB,IAAID,OAAO,GAAGgB,IAAI,CAAChB,OAAO;EAC1B,IAAIC,IAAI,CAAC8C,IAAI,KAAK,OAAO,EAAE;IACzB/C,OAAO,GAAGX,OAAO,CAAC2D,MAAM,CAAC3D,OAAO,CAAC2D,MAAM,CAAChD,OAAO,EAAE,cAAc,CAAC,EAAE,gBAAgB,CAAC;GACpF,MAAM;IACL,MAAMiD,WAAW,GAAGhD,IAAI,CAACgD,WAAW;IACpC,IAAIA,WAAW,EAAE;MACfjD,OAAO,GAAGX,OAAO,CAACuC,GAAG,CAAC5B,OAAO,EAAE,cAAc,EAAEiD,WAAW,CAAC;;IAG7D,MAAMC,aAAa,GAAGjD,IAAI,CAACiD,aAAa;IACxC,IAAIA,aAAa,EAAE;MACjBlD,OAAO,GAAGX,OAAO,CAACuC,GAAG,CAAC5B,OAAO,EAAE,gBAAgB,EAAEkD,aAAa,CAACC,QAAQ,EAAE,CAAC;;;EAG9E,OAAO,IAAIxD,iBAAiB,CAC1BqB,IAAI,CAACnB,MAAM,EACXmB,IAAI,CAAClB,GAAG,EACRkB,IAAI,CAACjB,SAAS,EACdC,OAAO,EACPC,IAAI,CACL;AACH,CAAC,CAAC;AAEF;AACA,OAAO,MAAMmD,cAAc,gBAAGlE,IAAI,CAI/BmE,IAAI,IAAKjD,eAAe,CAACiD,IAAI,CAAC,CAAC,CAAC,CAAC,EAClC,CAACrC,IAAI,EAAEf,IAAI,EAAEgD,WAAW,GAAG,0BAA0B,KAAK3B,OAAO,CAACN,IAAI,EAAEzB,YAAY,CAAC+D,UAAU,CAACrD,IAAI,EAAEgD,WAAW,CAAC,CAAC,CACpH;AAED;AACA,OAAO,MAAMM,QAAQ,gBAAGrE,IAAI,CAIzBmE,IAAI,IAAKjD,eAAe,CAACiD,IAAI,CAAC,CAAC,CAAC,CAAC,EAClC,CAACrC,IAAI,EAAEf,IAAI,EAAEgD,WAAW,GAAG,YAAY,KAAK3B,OAAO,CAACN,IAAI,EAAEzB,YAAY,CAACiE,IAAI,CAACvD,IAAI,EAAEgD,WAAW,CAAC,CAAC,CAChG;AAED;AACA,OAAO,MAAMQ,QAAQ,gBAAGvE,IAAI,CAQ1B,CAAC,EAAE,CAAC8B,IAAI,EAAEf,IAAI,KAAKb,MAAM,CAACsE,GAAG,CAACnE,YAAY,CAACoE,IAAI,CAAC1D,IAAI,CAAC,EAAGA,IAAI,IAAKqB,OAAO,CAACN,IAAI,EAAEf,IAAI,CAAC,CAAC,CAAC;AAExF;AACA,OAAO,MAAM2D,cAAc,gBAAG1E,IAAI,CAGhC,CAAC,EAAE,CAAC8B,IAAI,EAAEf,IAAI,KAAKqB,OAAO,CAACN,IAAI,EAAEzB,YAAY,CAACsE,UAAU,CAAC5D,IAAI,CAAC,CAAC,CAAC;AAElE;AACA,OAAO,MAAM6D,QAAQ,gBAAG5E,IAAI,CAazBmE,IAAI,IAAKjD,eAAe,CAACiD,IAAI,CAAC,CAAC,CAAC,CAAC,EAClC,CAACrC,IAAI,EAAE+C,IAAI,EAAEvD,OAAO,KAAKpB,MAAM,CAACsE,GAAG,CAACnE,YAAY,CAACyE,IAAI,CAACD,IAAI,EAAEvD,OAAO,CAAC,EAAGP,IAAI,IAAKqB,OAAO,CAACN,IAAI,EAAEf,IAAI,CAAC,CAAC,CACrG;AAED;AACA,OAAO,MAAMgE,UAAU,GAAUC,MAA2B,IAGxD;EACF,MAAMC,MAAM,GAAG5E,YAAY,CAAC6E,UAAU,CAACF,MAAM,CAAC;EAC9C,OAAOhF,IAAI,CAKT,CAAC,EAAE,CAAC8B,IAAI,EAAEf,IAAI,KAAKb,MAAM,CAACsE,GAAG,CAACS,MAAM,CAAClE,IAAI,CAAC,EAAGA,IAAI,IAAKqB,OAAO,CAACN,IAAI,EAAEf,IAAI,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED;AACA,OAAO,MAAMoE,aAAa,gBAAGnF,IAAI,CAG/B,CAAC,EAAE,CAAC8B,IAAI,EAAEf,IAAI,KACdqB,OAAO,CACLN,IAAI,EACJzB,YAAY,CAACiE,IAAI,CACflE,SAAS,CAAC6D,QAAQ,CAAC7D,SAAS,CAACgF,SAAS,CAACrE,IAAI,CAAC,CAAC,EAC7C,mCAAmC,CACpC,CACF,CAAC;AAEJ;AACA,OAAO,MAAMsE,YAAY,gBAAGrF,IAAI,CAG9B,CAAC,EAAE,CAAC8B,IAAI,EAAEf,IAAI,KAAKqB,OAAO,CAACN,IAAI,EAAEzB,YAAY,CAACiF,QAAQ,CAACvE,IAAI,CAAC,CAAC,CAAC;AAEhE;AACA,OAAO,MAAMwE,UAAU,gBAAGvF,IAAI,CAiB3BmE,IAAI,IAAKjD,eAAe,CAACiD,IAAI,CAAC,CAAC,CAAC,CAAC,EAClC,CAACrC,IAAI,EAAEf,IAAI,EAAE;EAAEiD,aAAa;EAAED,WAAW,GAAG;AAA0B,CAAE,GAAG,EAAE,KAC3E3B,OAAO,CAACN,IAAI,EAAEzB,YAAY,CAACmF,MAAM,CAACzE,IAAI,EAAEgD,WAAW,EAAEC,aAAa,CAAC,CAAC,CACvE"}
|
|
@@ -4,10 +4,8 @@ import * as Effect from "@effect/io/Effect";
|
|
|
4
4
|
import * as FileSystem from "@effect/platform/FileSystem";
|
|
5
5
|
import * as Etag from "@effect/platform/Http/Etag";
|
|
6
6
|
import * as Headers from "@effect/platform/Http/Headers";
|
|
7
|
-
import * as ServerRequest from "@effect/platform/Http/ServerRequest";
|
|
8
7
|
import * as UrlParams from "@effect/platform/Http/UrlParams";
|
|
9
8
|
import * as internalBody from "@effect/platform/internal/http/body";
|
|
10
|
-
import * as internalError from "@effect/platform/internal/http/serverError";
|
|
11
9
|
import * as Mime from "mime";
|
|
12
10
|
/** @internal */
|
|
13
11
|
export const TypeId = /*#__PURE__*/Symbol.for("@effect/platform/Http/ServerResponse");
|
|
@@ -39,26 +37,19 @@ class ServerResponseImpl {
|
|
|
39
37
|
/** @internal */
|
|
40
38
|
export const isServerResponse = u => typeof u === "object" && u !== null && TypeId in u;
|
|
41
39
|
/** @internal */
|
|
42
|
-
export const toNonEffectBody = self => self.body._tag === "Effect" ? Effect.map(Effect.catchAll(self.body.effect, error => Effect.flatMap(ServerRequest.ServerRequest, request => Effect.fail(internalError.responseError({
|
|
43
|
-
reason: "Decode",
|
|
44
|
-
request,
|
|
45
|
-
response: self,
|
|
46
|
-
error
|
|
47
|
-
})))), body => setBody(self, body)) : Effect.succeed(self);
|
|
48
|
-
/** @internal */
|
|
49
40
|
export const empty = options => new ServerResponseImpl(options?.status ?? 204, options?.statusText, options?.headers ?? Headers.empty, internalBody.empty);
|
|
50
41
|
/** @internal */
|
|
51
42
|
export const uint8Array = (body, options) => new ServerResponseImpl(options?.status ?? 200, options?.statusText, options?.headers ?? Headers.empty, internalBody.uint8Array(body, getContentType(options)));
|
|
52
43
|
/** @internal */
|
|
53
44
|
export const text = (body, options) => new ServerResponseImpl(options?.status ?? 200, options?.statusText, options?.headers ?? Headers.empty, internalBody.text(body, getContentType(options)));
|
|
54
45
|
/** @internal */
|
|
55
|
-
export const json = (body, options) => new ServerResponseImpl(options?.status ?? 200, options?.statusText, options?.headers ?? Headers.empty,
|
|
46
|
+
export const json = (body, options) => Effect.map(internalBody.json(body), body => new ServerResponseImpl(options?.status ?? 200, options?.statusText, options?.headers ?? Headers.empty, body));
|
|
56
47
|
/** @internal */
|
|
57
48
|
export const unsafeJson = (body, options) => new ServerResponseImpl(options?.status ?? 200, options?.statusText, options?.headers ?? Headers.empty, internalBody.unsafeJson(body));
|
|
58
49
|
/** @internal */
|
|
59
50
|
export const schemaJson = schema => {
|
|
60
51
|
const encode = internalBody.jsonSchema(schema);
|
|
61
|
-
return (body, options) => new ServerResponseImpl(options?.status ?? 200, options?.statusText, options?.headers ?? Headers.empty,
|
|
52
|
+
return (body, options) => Effect.map(encode(body), body => new ServerResponseImpl(options?.status ?? 200, options?.statusText, options?.headers ?? Headers.empty, body));
|
|
62
53
|
};
|
|
63
54
|
/** @internal */
|
|
64
55
|
export const file = (path, options) => Effect.map(({
|
|
@@ -85,8 +76,6 @@ export const file = (path, options) => Effect.map(({
|
|
|
85
76
|
/** @internal */
|
|
86
77
|
export const urlParams = (body, options) => new ServerResponseImpl(options?.status ?? 200, options?.statusText, options?.headers ?? Headers.empty, internalBody.text(UrlParams.toString(UrlParams.fromInput(body)), "application/x-www-form-urlencoded"));
|
|
87
78
|
/** @internal */
|
|
88
|
-
export const effect = (body, options) => new ServerResponseImpl(options?.status ?? 200, options?.statusText, options?.headers ?? Headers.empty, internalBody.effect(body));
|
|
89
|
-
/** @internal */
|
|
90
79
|
export const raw = (body, options) => new ServerResponseImpl(options?.status ?? 200, options?.statusText, options?.headers ?? Headers.empty, internalBody.raw(body));
|
|
91
80
|
/** @internal */
|
|
92
81
|
export const formData = (body, options) => new ServerResponseImpl(options?.status ?? 200, options?.statusText, options?.headers ?? Headers.empty, internalBody.formData(body));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serverResponse.mjs","names":["dual","pipeArguments","Effect","FileSystem","Etag","Headers","
|
|
1
|
+
{"version":3,"file":"serverResponse.mjs","names":["dual","pipeArguments","Effect","FileSystem","Etag","Headers","UrlParams","internalBody","Mime","TypeId","Symbol","for","ServerResponseImpl","constructor","status","statusText","headers","body","contentType","contentLength","newHeaders","toString","pipe","arguments","isServerResponse","u","empty","options","uint8Array","getContentType","text","json","map","unsafeJson","schemaJson","schema","encode","jsonSchema","file","path","etag","info","mtime","_tag","value","toUTCString","bind","fileInfo","getType","undefined","flatMap","Generator","generator","fromFileInfo","bindTo","fs","stat","urlParams","fromInput","raw","formData","stream","setHeader","self","key","set","setHeaders","input","setAll","setStatus","args","setBody","remove"],"sources":["../../../src/internal/http/serverResponse.ts"],"sourcesContent":[null],"mappings":"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"}
|
package/package.json
CHANGED
package/src/Http/Body.ts
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @since 1.0.0
|
|
3
3
|
*/
|
|
4
|
+
import type * as Data from "@effect/data/Data"
|
|
4
5
|
import type * as Effect from "@effect/io/Effect"
|
|
5
6
|
import type * as PlatformError from "@effect/platform/Error"
|
|
6
7
|
import type * as FileSystem from "@effect/platform/FileSystem"
|
|
7
8
|
import * as internal from "@effect/platform/internal/http/body"
|
|
9
|
+
import type * as ParseResult from "@effect/schema/ParseResult"
|
|
8
10
|
import type * as Schema from "@effect/schema/Schema"
|
|
9
11
|
import type * as Stream_ from "@effect/stream/Stream"
|
|
10
12
|
|
|
@@ -24,13 +26,7 @@ export type TypeId = typeof TypeId
|
|
|
24
26
|
* @since 1.0.0
|
|
25
27
|
* @category models
|
|
26
28
|
*/
|
|
27
|
-
export type Body = Empty | Raw | Uint8Array |
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
* @since 1.0.0
|
|
31
|
-
* @category models
|
|
32
|
-
*/
|
|
33
|
-
export type NonEffect = Exclude<Body, EffectBody>
|
|
29
|
+
export type Body = Empty | Raw | Uint8Array | FormData | Stream
|
|
34
30
|
|
|
35
31
|
/**
|
|
36
32
|
* @since 1.0.0
|
|
@@ -48,6 +44,45 @@ export namespace Body {
|
|
|
48
44
|
}
|
|
49
45
|
}
|
|
50
46
|
|
|
47
|
+
/**
|
|
48
|
+
* @since 1.0.0
|
|
49
|
+
* @category type ids
|
|
50
|
+
*/
|
|
51
|
+
export const ErrorTypeId: unique symbol = internal.ErrorTypeId
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* @since 1.0.0
|
|
55
|
+
* @category type ids
|
|
56
|
+
*/
|
|
57
|
+
export type ErrorTypeId = typeof ErrorTypeId
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* @since 1.0.0
|
|
61
|
+
* @category errors
|
|
62
|
+
*/
|
|
63
|
+
export interface BodyError extends Data.Case {
|
|
64
|
+
readonly [ErrorTypeId]: ErrorTypeId
|
|
65
|
+
readonly _tag: "BodyError"
|
|
66
|
+
readonly reason: BodyErrorReason
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* @since 1.0.0
|
|
71
|
+
* @category errors
|
|
72
|
+
*/
|
|
73
|
+
export const BodyError: (reason: BodyErrorReason) => BodyError = internal.BodyError
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* @since 1.0.0
|
|
77
|
+
* @category errors
|
|
78
|
+
*/
|
|
79
|
+
export type BodyErrorReason = {
|
|
80
|
+
readonly _tag: "JsonError"
|
|
81
|
+
readonly error: unknown
|
|
82
|
+
} | {
|
|
83
|
+
readonly _tag: "SchemaError"
|
|
84
|
+
readonly error: ParseResult.ParseError
|
|
85
|
+
}
|
|
51
86
|
/**
|
|
52
87
|
* @since 1.0.0
|
|
53
88
|
* @category models
|
|
@@ -100,21 +135,6 @@ export const uint8Array: (body: globalThis.Uint8Array) => Uint8Array = internal.
|
|
|
100
135
|
*/
|
|
101
136
|
export const text: (body: string, contentType?: string) => Uint8Array = internal.text
|
|
102
137
|
|
|
103
|
-
/**
|
|
104
|
-
* @since 1.0.0
|
|
105
|
-
* @category models
|
|
106
|
-
*/
|
|
107
|
-
export interface EffectBody extends Body.Proto {
|
|
108
|
-
readonly _tag: "Effect"
|
|
109
|
-
readonly effect: Effect.Effect<never, unknown, NonEffect>
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
/**
|
|
113
|
-
* @since 1.0.0
|
|
114
|
-
* @category constructors
|
|
115
|
-
*/
|
|
116
|
-
export const effect: (body: Effect.Effect<never, unknown, NonEffect>) => EffectBody = internal.effect
|
|
117
|
-
|
|
118
138
|
/**
|
|
119
139
|
* @since 1.0.0
|
|
120
140
|
* @category constructors
|
|
@@ -125,13 +145,15 @@ export const unsafeJson: (body: unknown) => Uint8Array = internal.unsafeJson
|
|
|
125
145
|
* @since 1.0.0
|
|
126
146
|
* @category constructors
|
|
127
147
|
*/
|
|
128
|
-
export const json: (body: unknown) =>
|
|
148
|
+
export const json: (body: unknown) => Effect.Effect<never, BodyError, Uint8Array> = internal.json
|
|
129
149
|
|
|
130
150
|
/**
|
|
131
151
|
* @since 1.0.0
|
|
132
152
|
* @category constructors
|
|
133
153
|
*/
|
|
134
|
-
export const jsonSchema: <I, A>(
|
|
154
|
+
export const jsonSchema: <I, A>(
|
|
155
|
+
schema: Schema.Schema<I, A>
|
|
156
|
+
) => (body: A) => Effect.Effect<never, BodyError, Uint8Array> = internal.jsonSchema
|
|
135
157
|
|
|
136
158
|
/**
|
|
137
159
|
* @since 1.0.0
|
package/src/Http/Client.ts
CHANGED
|
@@ -204,7 +204,7 @@ export const filterStatusOk: <R, E>(
|
|
|
204
204
|
*/
|
|
205
205
|
export const make: (
|
|
206
206
|
f: (
|
|
207
|
-
request: ClientRequest.ClientRequest
|
|
207
|
+
request: ClientRequest.ClientRequest
|
|
208
208
|
) => Effect.Effect<never, Error.HttpClientError, ClientResponse.ClientResponse>
|
|
209
209
|
) => Client.Default = internal.make
|
|
210
210
|
|
|
@@ -39,19 +39,6 @@ export interface ClientRequest extends Pipeable {
|
|
|
39
39
|
readonly body: Body.Body
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
/**
|
|
43
|
-
* @since 1.0.0
|
|
44
|
-
*/
|
|
45
|
-
export namespace ClientRequest {
|
|
46
|
-
/**
|
|
47
|
-
* @since 1.0.0
|
|
48
|
-
* @category models
|
|
49
|
-
*/
|
|
50
|
-
export interface NonEffectBody extends ClientRequest {
|
|
51
|
-
readonly body: Body.NonEffect
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
|
|
55
42
|
/**
|
|
56
43
|
* @since 1.0.0
|
|
57
44
|
* @category models
|
|
@@ -283,15 +270,6 @@ export const uint8ArrayBody: {
|
|
|
283
270
|
(self: ClientRequest, body: Uint8Array, contentType?: string): ClientRequest
|
|
284
271
|
} = internal.uint8ArrayBody
|
|
285
272
|
|
|
286
|
-
/**
|
|
287
|
-
* @since 1.0.0
|
|
288
|
-
* @category combinators
|
|
289
|
-
*/
|
|
290
|
-
export const effectBody: {
|
|
291
|
-
(body: Effect.Effect<never, unknown, Body.NonEffect>): (self: ClientRequest) => ClientRequest
|
|
292
|
-
(self: ClientRequest, body: Effect.Effect<never, unknown, Body.NonEffect>): ClientRequest
|
|
293
|
-
} = internal.effectBody
|
|
294
|
-
|
|
295
273
|
/**
|
|
296
274
|
* @since 1.0.0
|
|
297
275
|
* @category combinators
|
|
@@ -306,8 +284,8 @@ export const textBody: {
|
|
|
306
284
|
* @category combinators
|
|
307
285
|
*/
|
|
308
286
|
export const jsonBody: {
|
|
309
|
-
(body: unknown): (self: ClientRequest) => ClientRequest
|
|
310
|
-
(self: ClientRequest, body: unknown): ClientRequest
|
|
287
|
+
(body: unknown): (self: ClientRequest) => Effect.Effect<never, Body.BodyError, ClientRequest>
|
|
288
|
+
(self: ClientRequest, body: unknown): Effect.Effect<never, Body.BodyError, ClientRequest>
|
|
311
289
|
} = internal.jsonBody
|
|
312
290
|
|
|
313
291
|
/**
|
|
@@ -323,9 +301,11 @@ export const unsafeJsonBody: {
|
|
|
323
301
|
* @since 1.0.0
|
|
324
302
|
* @category combinators
|
|
325
303
|
*/
|
|
326
|
-
export const schemaBody: <I, A>(
|
|
327
|
-
|
|
328
|
-
|
|
304
|
+
export const schemaBody: <I, A>(
|
|
305
|
+
schema: Schema.Schema<I, A>
|
|
306
|
+
) => {
|
|
307
|
+
(body: A): (self: ClientRequest) => Effect.Effect<never, Body.BodyError, ClientRequest>
|
|
308
|
+
(self: ClientRequest, body: A): Effect.Effect<never, Body.BodyError, ClientRequest>
|
|
329
309
|
} = internal.schemaBody
|
|
330
310
|
|
|
331
311
|
/**
|
|
@@ -8,8 +8,6 @@ import type * as FileSystem from "@effect/platform/FileSystem"
|
|
|
8
8
|
import type * as Body from "@effect/platform/Http/Body"
|
|
9
9
|
import type * as Etag from "@effect/platform/Http/Etag"
|
|
10
10
|
import type * as Headers from "@effect/platform/Http/Headers"
|
|
11
|
-
import type * as Error from "@effect/platform/Http/ServerError"
|
|
12
|
-
import type * as ServerRequest from "@effect/platform/Http/ServerRequest"
|
|
13
11
|
import type * as UrlParams from "@effect/platform/Http/UrlParams"
|
|
14
12
|
import * as internal from "@effect/platform/internal/http/serverResponse"
|
|
15
13
|
import type * as Schema from "@effect/schema/Schema"
|
|
@@ -39,19 +37,6 @@ export interface ServerResponse extends Pipeable {
|
|
|
39
37
|
readonly body: Body.Body
|
|
40
38
|
}
|
|
41
39
|
|
|
42
|
-
/**
|
|
43
|
-
* @since 1.0.0
|
|
44
|
-
*/
|
|
45
|
-
export namespace ServerResponse {
|
|
46
|
-
/**
|
|
47
|
-
* @since 1.0.0
|
|
48
|
-
* @category models
|
|
49
|
-
*/
|
|
50
|
-
export interface NonEffectBody extends ServerResponse {
|
|
51
|
-
readonly body: Body.NonEffect
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
|
|
55
40
|
/**
|
|
56
41
|
* @since 1.0.0
|
|
57
42
|
* @category models
|
|
@@ -86,14 +71,6 @@ export namespace Options {
|
|
|
86
71
|
*/
|
|
87
72
|
export const isServerResponse: (u: unknown) => u is ServerResponse = internal.isServerResponse
|
|
88
73
|
|
|
89
|
-
/**
|
|
90
|
-
* @since 1.0.0
|
|
91
|
-
*/
|
|
92
|
-
export const toNonEffectBody: (
|
|
93
|
-
self: ServerResponse
|
|
94
|
-
) => Effect.Effect<ServerRequest.ServerRequest, Error.ResponseError, ServerResponse.NonEffectBody> =
|
|
95
|
-
internal.toNonEffectBody
|
|
96
|
-
|
|
97
74
|
/**
|
|
98
75
|
* @since 1.0.0
|
|
99
76
|
* @category constructors
|
|
@@ -116,7 +93,10 @@ export const text: (body: string, options?: Options.WithContentType) => ServerRe
|
|
|
116
93
|
* @since 1.0.0
|
|
117
94
|
* @category constructors
|
|
118
95
|
*/
|
|
119
|
-
export const json: (
|
|
96
|
+
export const json: (
|
|
97
|
+
body: unknown,
|
|
98
|
+
options?: Options.WithContent
|
|
99
|
+
) => Effect.Effect<never, Body.BodyError, ServerResponse> = internal.json
|
|
120
100
|
|
|
121
101
|
/**
|
|
122
102
|
* @since 1.0.0
|
|
@@ -124,7 +104,8 @@ export const json: (body: unknown, options?: Options.WithContent) => ServerRespo
|
|
|
124
104
|
*/
|
|
125
105
|
export const schemaJson: <I, A>(
|
|
126
106
|
schema: Schema.Schema<I, A>
|
|
127
|
-
) => (body: A, options?: Options.WithContent) => ServerResponse =
|
|
107
|
+
) => (body: A, options?: Options.WithContent) => Effect.Effect<never, Body.BodyError, ServerResponse> =
|
|
108
|
+
internal.schemaJson
|
|
128
109
|
|
|
129
110
|
/**
|
|
130
111
|
* @since 1.0.0
|
|
@@ -138,15 +119,6 @@ export const unsafeJson: (body: unknown, options?: Options.WithContent) => Serve
|
|
|
138
119
|
*/
|
|
139
120
|
export const urlParams: (body: UrlParams.Input, options?: Options.WithContent) => ServerResponse = internal.urlParams
|
|
140
121
|
|
|
141
|
-
/**
|
|
142
|
-
* @since 1.0.0
|
|
143
|
-
* @category constructors
|
|
144
|
-
*/
|
|
145
|
-
export const effect: (
|
|
146
|
-
body: Effect.Effect<never, unknown, Body.NonEffect>,
|
|
147
|
-
options?: Options.WithContent
|
|
148
|
-
) => ServerResponse = internal.effect
|
|
149
|
-
|
|
150
122
|
/**
|
|
151
123
|
* @since 1.0.0
|
|
152
124
|
* @category constructors
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import * as Data from "@effect/data/Data"
|
|
1
2
|
import * as Effect from "@effect/io/Effect"
|
|
2
3
|
import type * as PlatformError from "@effect/platform/Error"
|
|
3
4
|
import * as FileSystem from "@effect/platform/FileSystem"
|
|
@@ -10,6 +11,17 @@ export const TypeId: Body.TypeId = Symbol.for(
|
|
|
10
11
|
"@effect/platform/Http/Body"
|
|
11
12
|
) as Body.TypeId
|
|
12
13
|
|
|
14
|
+
/** @internal */
|
|
15
|
+
export const ErrorTypeId: Body.ErrorTypeId = Symbol.for(
|
|
16
|
+
"@effect/platform/Http/Body/BodyError"
|
|
17
|
+
) as Body.ErrorTypeId
|
|
18
|
+
|
|
19
|
+
const bodyError = Data.tagged<Body.BodyError>("BodyError")
|
|
20
|
+
|
|
21
|
+
/** @internal */
|
|
22
|
+
export const BodyError = (reason: Body.BodyErrorReason): Body.BodyError =>
|
|
23
|
+
bodyError({ [ErrorTypeId]: ErrorTypeId, reason })
|
|
24
|
+
|
|
13
25
|
class EmptyImpl implements Body.Empty {
|
|
14
26
|
readonly [TypeId]: Body.TypeId
|
|
15
27
|
readonly _tag = "Empty"
|
|
@@ -59,37 +71,25 @@ export const uint8Array = (body: Uint8Array, contentType?: string): Body.Uint8Ar
|
|
|
59
71
|
export const text = (body: string, contentType?: string): Body.Uint8Array =>
|
|
60
72
|
uint8Array(new TextEncoder().encode(body), contentType ?? "text/plain")
|
|
61
73
|
|
|
62
|
-
class EffectBodyImpl implements Body.EffectBody {
|
|
63
|
-
readonly [TypeId]: Body.TypeId
|
|
64
|
-
readonly _tag = "Effect"
|
|
65
|
-
constructor(
|
|
66
|
-
readonly effect: Effect.Effect<never, unknown, Body.NonEffect>,
|
|
67
|
-
readonly contentType?: string
|
|
68
|
-
) {
|
|
69
|
-
this[TypeId] = TypeId
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
/** @internal */
|
|
74
|
-
export const effect = (
|
|
75
|
-
body: Effect.Effect<never, unknown, Body.NonEffect>
|
|
76
|
-
): Body.EffectBody => new EffectBodyImpl(body)
|
|
77
|
-
|
|
78
74
|
/** @internal */
|
|
79
75
|
export const unsafeJson = (body: unknown): Body.Uint8Array =>
|
|
80
76
|
uint8Array(new TextEncoder().encode(JSON.stringify(body)), "application/json")
|
|
81
77
|
|
|
82
78
|
/** @internal */
|
|
83
|
-
export const json = (body: unknown): Body.
|
|
79
|
+
export const json = (body: unknown): Effect.Effect<never, Body.BodyError, Body.Uint8Array> =>
|
|
80
|
+
Effect.try({
|
|
81
|
+
try: () => unsafeJson(body),
|
|
82
|
+
catch: (error) => BodyError({ _tag: "JsonError", error })
|
|
83
|
+
})
|
|
84
84
|
|
|
85
85
|
/** @internal */
|
|
86
86
|
export const jsonSchema = <I, A>(schema: Schema.Schema<I, A>) => {
|
|
87
87
|
const encode = Schema.encode(schema)
|
|
88
|
-
return (body: A): Body.
|
|
89
|
-
|
|
90
|
-
encode(body),
|
|
91
|
-
|
|
92
|
-
)
|
|
88
|
+
return (body: A): Effect.Effect<never, Body.BodyError, Body.Uint8Array> =>
|
|
89
|
+
Effect.flatMap(
|
|
90
|
+
Effect.mapError(encode(body), (error) => BodyError({ _tag: "SchemaError", error })),
|
|
91
|
+
json
|
|
92
|
+
)
|
|
93
93
|
}
|
|
94
94
|
|
|
95
95
|
/** @internal */
|