@effect/platform 0.13.14 → 0.13.15

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.
@@ -4,7 +4,10 @@
4
4
  import type * as Effect from "@effect/io/Effect";
5
5
  import type * as Error from "@effect/platform/Http/ClientError";
6
6
  import type * as ClientRequest from "@effect/platform/Http/ClientRequest";
7
+ import type * as Headers from "@effect/platform/Http/Headers";
7
8
  import type * as IncomingMessage from "@effect/platform/Http/IncomingMessage";
9
+ import type * as ParseResult from "@effect/schema/ParseResult";
10
+ import type * as Schema from "@effect/schema/Schema";
8
11
  export {
9
12
  /**
10
13
  * @since 1.0.0
@@ -45,4 +48,13 @@ export interface ClientResponse extends IncomingMessage.IncomingMessage<Error.Re
45
48
  * @category constructors
46
49
  */
47
50
  export declare const fromWeb: (request: ClientRequest.ClientRequest, source: Response) => ClientResponse;
51
+ /**
52
+ * @since 1.0.0
53
+ * @category schema
54
+ */
55
+ export declare const schemaJson: <I extends {
56
+ readonly status?: number;
57
+ readonly headers?: Headers.Headers;
58
+ readonly body?: unknown;
59
+ }, A>(schema: Schema.Schema<I, A>) => (self: ClientResponse) => Effect.Effect<never, Error.ResponseError | ParseResult.ParseError, A>;
48
60
  //# sourceMappingURL=ClientResponse.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ClientResponse.d.ts","sourceRoot":"","sources":["../src/Http/ClientResponse.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAChD,OAAO,KAAK,KAAK,KAAK,MAAM,mCAAmC,CAAA;AAC/D,OAAO,KAAK,KAAK,aAAa,MAAM,qCAAqC,CAAA;AACzE,OAAO,KAAK,KAAK,eAAe,MAAM,uCAAuC,CAAA;AAG7E,OAAO;AACL;;;GAGG;AACH,cAAc;AACd;;;GAGG;AACH,mBAAmB;AACnB;;;GAGG;AACH,aAAa,EACd,MAAM,uCAAuC,CAAA;AAE9C;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,OAAO,MAAwB,CAAA;AAEpD;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAA;AAElC;;;GAGG;AACH,MAAM,WAAW,cAAe,SAAQ,eAAe,CAAC,eAAe,CAAC,KAAK,CAAC,aAAa,CAAC;IAC1F,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAA;CACvE;AAED;;;GAGG;AACH,eAAO,MAAM,OAAO,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,KAAK,cAAiC,CAAA"}
1
+ {"version":3,"file":"ClientResponse.d.ts","sourceRoot":"","sources":["../src/Http/ClientResponse.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAChD,OAAO,KAAK,KAAK,KAAK,MAAM,mCAAmC,CAAA;AAC/D,OAAO,KAAK,KAAK,aAAa,MAAM,qCAAqC,CAAA;AACzE,OAAO,KAAK,KAAK,OAAO,MAAM,+BAA+B,CAAA;AAC7D,OAAO,KAAK,KAAK,eAAe,MAAM,uCAAuC,CAAA;AAE7E,OAAO,KAAK,KAAK,WAAW,MAAM,4BAA4B,CAAA;AAC9D,OAAO,KAAK,KAAK,MAAM,MAAM,uBAAuB,CAAA;AAEpD,OAAO;AACL;;;GAGG;AACH,cAAc;AACd;;;GAGG;AACH,mBAAmB;AACnB;;;GAGG;AACH,aAAa,EACd,MAAM,uCAAuC,CAAA;AAE9C;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,OAAO,MAAwB,CAAA;AAEpD;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAA;AAElC;;;GAGG;AACH,MAAM,WAAW,cAAe,SAAQ,eAAe,CAAC,eAAe,CAAC,KAAK,CAAC,aAAa,CAAC;IAC1F,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAA;CACvE;AAED;;;GAGG;AACH,eAAO,MAAM,OAAO,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,KAAK,cAAiC,CAAA;AAEnH;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,CACvB,CAAC,SAAS;IACR,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,CAAA;IAClC,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CACxB,EACD,CAAC,EAED,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,KACxB,CAAC,IAAI,EAAE,cAAc,KAAK,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,GAAG,WAAW,CAAC,UAAU,EAAE,CAAC,CAC9E,CAAA"}
@@ -22,6 +22,7 @@ Object.defineProperty(exports, "schemaHeaders", {
22
22
  return _IncomingMessage.schemaHeaders;
23
23
  }
24
24
  });
25
+ exports.schemaJson = void 0;
25
26
  var internal = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/internal/http/clientResponse"));
26
27
  var _IncomingMessage = /*#__PURE__*/require("@effect/platform/Http/IncomingMessage");
27
28
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -37,5 +38,11 @@ const TypeId = internal.TypeId;
37
38
  */
38
39
  exports.TypeId = TypeId;
39
40
  const fromWeb = internal.fromWeb;
41
+ /**
42
+ * @since 1.0.0
43
+ * @category schema
44
+ */
40
45
  exports.fromWeb = fromWeb;
46
+ const schemaJson = internal.schemaJson;
47
+ exports.schemaJson = schemaJson;
41
48
  //# sourceMappingURL=ClientResponse.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ClientResponse.js","names":["internal","_interopRequireWildcard","require","_IncomingMessage","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","TypeId","exports","fromWeb"],"sources":["../src/Http/ClientResponse.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAOA,IAAAA,QAAA,gBAAAC,uBAAA,eAAAC,OAAA;AAEA,IAAAC,gBAAA,gBAAAD,OAAA;AAgB8C,SAAAE,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAJ,wBAAAQ,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,CAAAJ,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAE9C;;;;AAIO,MAAMW,MAAM,GAAkB1B,QAAQ,CAAC0B,MAAM;AAkBpD;;;;AAAAC,OAAA,CAAAD,MAAA,GAAAA,MAAA;AAIO,MAAME,OAAO,GAA+E5B,QAAQ,CAAC4B,OAAO;AAAAD,OAAA,CAAAC,OAAA,GAAAA,OAAA"}
1
+ {"version":3,"file":"ClientResponse.js","names":["internal","_interopRequireWildcard","require","_IncomingMessage","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","TypeId","exports","fromWeb","schemaJson"],"sources":["../src/Http/ClientResponse.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAQA,IAAAA,QAAA,gBAAAC,uBAAA,eAAAC,OAAA;AAIA,IAAAC,gBAAA,gBAAAD,OAAA;AAgB8C,SAAAE,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAJ,wBAAAQ,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,CAAAJ,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAE9C;;;;AAIO,MAAMW,MAAM,GAAkB1B,QAAQ,CAAC0B,MAAM;AAkBpD;;;;AAAAC,OAAA,CAAAD,MAAA,GAAAA,MAAA;AAIO,MAAME,OAAO,GAA+E5B,QAAQ,CAAC4B,OAAO;AAEnH;;;;AAAAD,OAAA,CAAAC,OAAA,GAAAA,OAAA;AAIO,MAAMC,UAAU,GAUrB7B,QAAQ,CAAC6B,UAAU;AAAAF,OAAA,CAAAE,UAAA,GAAAA,UAAA"}
@@ -3,12 +3,13 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.fromWeb = exports.TypeId = void 0;
6
+ exports.schemaJson = exports.fromWeb = exports.TypeId = void 0;
7
7
  var Effect = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/io/Effect"));
8
8
  var Headers = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/Http/Headers"));
9
9
  var IncomingMessage = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/Http/IncomingMessage"));
10
10
  var UrlParams = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/Http/UrlParams"));
11
11
  var internalError = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/internal/http/clientError"));
12
+ var Schema = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/schema/Schema"));
12
13
  var Stream = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/stream/Stream"));
13
14
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
14
15
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -101,4 +102,14 @@ class ClientResponseImpl {
101
102
  }
102
103
  }
103
104
  IncomingMessage.TypeId;
105
+ /** @internal */
106
+ const schemaJson = schema => {
107
+ const parse = Schema.parse(schema);
108
+ return self => Effect.flatMap(self.json, body => parse({
109
+ status: self.status,
110
+ headers: self.headers,
111
+ body
112
+ }));
113
+ };
114
+ exports.schemaJson = schemaJson;
104
115
  //# sourceMappingURL=clientResponse.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"clientResponse.js","names":["Effect","_interopRequireWildcard","require","Headers","IncomingMessage","UrlParams","internalError","Stream","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","TypeId","Symbol","for","exports","fromWeb","request","source","ClientResponseImpl","constructor","status","headers","fromInput","stream","body","fromReadableStream","_","responseError","response","reason","error","fail","json","tryPromise","try","catch","text","urlParamsBody","flatMap","URLSearchParams","formData","arrayBuffer"],"sources":["../../src/internal/http/clientResponse.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"clientResponse.js","names":["Effect","_interopRequireWildcard","require","Headers","IncomingMessage","UrlParams","internalError","Schema","Stream","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","TypeId","Symbol","for","exports","fromWeb","request","source","ClientResponseImpl","constructor","status","headers","fromInput","stream","body","fromReadableStream","_","responseError","response","reason","error","fail","json","tryPromise","try","catch","text","urlParamsBody","flatMap","URLSearchParams","formData","arrayBuffer","schemaJson","schema","parse","self"],"sources":["../../src/internal/http/clientResponse.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -25,4 +25,9 @@ export const TypeId = internal.TypeId;
25
25
  * @category constructors
26
26
  */
27
27
  export const fromWeb = internal.fromWeb;
28
+ /**
29
+ * @since 1.0.0
30
+ * @category schema
31
+ */
32
+ export const schemaJson = internal.schemaJson;
28
33
  //# sourceMappingURL=ClientResponse.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ClientResponse.mjs","names":["internal","schemaBodyJson","schemaBodyUrlParams","schemaHeaders","TypeId","fromWeb"],"sources":["../../src/Http/ClientResponse.ts"],"sourcesContent":[null],"mappings":"AAOA,OAAO,KAAKA,QAAQ,MAAM,+CAA+C;AAEzE;AACE;;;;AAIAC,cAAc;AACd;;;;AAIAC,mBAAmB;AACnB;;;;AAIAC,aAAa,QACR,uCAAuC;AAE9C;;;;AAIA,OAAO,MAAMC,MAAM,GAAkBJ,QAAQ,CAACI,MAAM;AAkBpD;;;;AAIA,OAAO,MAAMC,OAAO,GAA+EL,QAAQ,CAACK,OAAO"}
1
+ {"version":3,"file":"ClientResponse.mjs","names":["internal","schemaBodyJson","schemaBodyUrlParams","schemaHeaders","TypeId","fromWeb","schemaJson"],"sources":["../../src/Http/ClientResponse.ts"],"sourcesContent":[null],"mappings":"AAQA,OAAO,KAAKA,QAAQ,MAAM,+CAA+C;AAIzE;AACE;;;;AAIAC,cAAc;AACd;;;;AAIAC,mBAAmB;AACnB;;;;AAIAC,aAAa,QACR,uCAAuC;AAE9C;;;;AAIA,OAAO,MAAMC,MAAM,GAAkBJ,QAAQ,CAACI,MAAM;AAkBpD;;;;AAIA,OAAO,MAAMC,OAAO,GAA+EL,QAAQ,CAACK,OAAO;AAEnH;;;;AAIA,OAAO,MAAMC,UAAU,GAUrBN,QAAQ,CAACM,UAAU"}
@@ -3,6 +3,7 @@ import * as Headers from "@effect/platform/Http/Headers";
3
3
  import * as IncomingMessage from "@effect/platform/Http/IncomingMessage";
4
4
  import * as UrlParams from "@effect/platform/Http/UrlParams";
5
5
  import * as internalError from "@effect/platform/internal/http/clientError";
6
+ import * as Schema from "@effect/schema/Schema";
6
7
  import * as Stream from "@effect/stream/Stream";
7
8
  /** @internal */
8
9
  export const TypeId = /*#__PURE__*/Symbol.for("@effect/platform/Http/ClientResponse");
@@ -91,4 +92,13 @@ class ClientResponseImpl {
91
92
  }
92
93
  }
93
94
  IncomingMessage.TypeId;
95
+ /** @internal */
96
+ export const schemaJson = schema => {
97
+ const parse = Schema.parse(schema);
98
+ return self => Effect.flatMap(self.json, body => parse({
99
+ status: self.status,
100
+ headers: self.headers,
101
+ body
102
+ }));
103
+ };
94
104
  //# sourceMappingURL=clientResponse.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"clientResponse.mjs","names":["Effect","Headers","IncomingMessage","UrlParams","internalError","Stream","TypeId","Symbol","for","fromWeb","request","source","ClientResponseImpl","constructor","status","headers","fromInput","stream","body","fromReadableStream","_","responseError","response","reason","error","fail","json","tryPromise","try","catch","text","urlParamsBody","flatMap","URLSearchParams","formData","arrayBuffer"],"sources":["../../../src/internal/http/clientResponse.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"clientResponse.mjs","names":["Effect","Headers","IncomingMessage","UrlParams","internalError","Schema","Stream","TypeId","Symbol","for","fromWeb","request","source","ClientResponseImpl","constructor","status","headers","fromInput","stream","body","fromReadableStream","_","responseError","response","reason","error","fail","json","tryPromise","try","catch","text","urlParamsBody","flatMap","URLSearchParams","formData","arrayBuffer","schemaJson","schema","parse","self"],"sources":["../../../src/internal/http/clientResponse.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.13.14",
3
+ "version": "0.13.15",
4
4
  "description": "Unified interfaces for common platform-specific services",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -4,8 +4,11 @@
4
4
  import type * as Effect from "@effect/io/Effect"
5
5
  import type * as Error from "@effect/platform/Http/ClientError"
6
6
  import type * as ClientRequest from "@effect/platform/Http/ClientRequest"
7
+ import type * as Headers from "@effect/platform/Http/Headers"
7
8
  import type * as IncomingMessage from "@effect/platform/Http/IncomingMessage"
8
9
  import * as internal from "@effect/platform/internal/http/clientResponse"
10
+ import type * as ParseResult from "@effect/schema/ParseResult"
11
+ import type * as Schema from "@effect/schema/Schema"
9
12
 
10
13
  export {
11
14
  /**
@@ -52,3 +55,19 @@ export interface ClientResponse extends IncomingMessage.IncomingMessage<Error.Re
52
55
  * @category constructors
53
56
  */
54
57
  export const fromWeb: (request: ClientRequest.ClientRequest, source: Response) => ClientResponse = internal.fromWeb
58
+
59
+ /**
60
+ * @since 1.0.0
61
+ * @category schema
62
+ */
63
+ export const schemaJson: <
64
+ I extends {
65
+ readonly status?: number
66
+ readonly headers?: Headers.Headers
67
+ readonly body?: unknown
68
+ },
69
+ A
70
+ >(
71
+ schema: Schema.Schema<I, A>
72
+ ) => (self: ClientResponse) => Effect.Effect<never, Error.ResponseError | ParseResult.ParseError, A> =
73
+ internal.schemaJson
@@ -6,6 +6,8 @@ import * as Headers from "@effect/platform/Http/Headers"
6
6
  import * as IncomingMessage from "@effect/platform/Http/IncomingMessage"
7
7
  import * as UrlParams from "@effect/platform/Http/UrlParams"
8
8
  import * as internalError from "@effect/platform/internal/http/clientError"
9
+ import type * as ParseResult from "@effect/schema/ParseResult"
10
+ import * as Schema from "@effect/schema/Schema"
9
11
  import * as Stream from "@effect/stream/Stream"
10
12
 
11
13
  /** @internal */
@@ -120,3 +122,25 @@ class ClientResponseImpl implements ClientResponse.ClientResponse {
120
122
  })
121
123
  }
122
124
  }
125
+
126
+ /** @internal */
127
+ export const schemaJson = <
128
+ I extends {
129
+ readonly status?: number
130
+ readonly headers?: Headers.Headers
131
+ readonly body?: unknown
132
+ },
133
+ A
134
+ >(schema: Schema.Schema<I, A>) => {
135
+ const parse = Schema.parse(schema)
136
+ return (self: ClientResponse.ClientResponse): Effect.Effect<never, Error.ResponseError | ParseResult.ParseError, A> =>
137
+ Effect.flatMap(
138
+ self.json,
139
+ (body) =>
140
+ parse({
141
+ status: self.status,
142
+ headers: self.headers,
143
+ body
144
+ })
145
+ )
146
+ }