@effect/platform-browser 0.29.7 → 0.30.0

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.
@@ -1 +1 @@
1
- {"version":3,"file":"BrowserHttpClient.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","xmlHttpRequest","exports","makeXMLHttpRequest","layerXMLHttpRequest","currentXMLHttpRequest"],"sources":["../../src/BrowserHttpClient.ts"],"sourcesContent":[null],"mappings":";;;;;;AAMA,IAAAA,QAAA,gBAAAC,uBAAA,eAAAC,OAAA;AAAqD,SAAAC,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,SAAAH,wBAAAG,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;AAErD;;;;AAIO,MAAMY,cAAc,GAAAC,OAAA,CAAAD,cAAA,GAA0BxB,QAAQ,CAAC0B,kBAAkB;AAEhF;;;;AAIO,MAAMC,mBAAmB,GAAAF,OAAA,CAAAE,mBAAA,GAAqD3B,QAAQ,CAAC2B,mBAAmB;AAEjH;;;;AAIO,MAAMC,qBAAqB,GAAAH,OAAA,CAAAG,qBAAA,GAA6C5B,QAAQ,CAAC4B,qBAAqB"}
1
+ {"version":3,"file":"BrowserHttpClient.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","xmlHttpRequest","exports","makeXMLHttpRequest","layerXMLHttpRequest","currentXMLHttpRequest"],"sources":["../../src/BrowserHttpClient.ts"],"sourcesContent":[null],"mappings":";;;;;;AAOA,IAAAA,QAAA,gBAAAC,uBAAA,eAAAC,OAAA;AAAqD,SAAAC,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,SAAAH,wBAAAG,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;AAErD;;;;AAIO,MAAMY,cAAc,GAAAC,OAAA,CAAAD,cAAA,GAA0BxB,QAAQ,CAAC0B,kBAAkB;AAEhF;;;;AAIO,MAAMC,mBAAmB,GAAAF,OAAA,CAAAE,mBAAA,GAAqD3B,QAAQ,CAAC2B,mBAAmB;AAEjH;;;;AAIO,MAAMC,qBAAqB,GAAAH,OAAA,CAAAG,qBAAA,GAA+C5B,QAAQ,CAAC4B,qBAAqB"}
@@ -44,14 +44,16 @@ function _interopRequireWildcard(e, r) {
44
44
  return n.default = e, t && t.set(e, n), n;
45
45
  }
46
46
  /** @internal */
47
- const currentXMLHttpRequest = exports.currentXMLHttpRequest = /*#__PURE__*/(0, _GlobalValue.globalValue)("@effect/platform-browser/BrowserHttpClient/currentXMLHttpRequest", () => FiberRef.unsafeMake(globalThis.XMLHttpRequest));
47
+ const currentXMLHttpRequest = exports.currentXMLHttpRequest = /*#__PURE__*/(0, _GlobalValue.globalValue)("@effect/platform-browser/BrowserHttpClient/currentXMLHttpRequest", () => FiberRef.unsafeMake(() => new XMLHttpRequest()));
48
48
  /** @internal */
49
49
  const makeXMLHttpRequest = exports.makeXMLHttpRequest = /*#__PURE__*/Client.makeDefault(request => UrlParams.makeUrl(request.url, request.urlParams, _ => Error.RequestError({
50
50
  request,
51
51
  reason: "InvalidUrl",
52
52
  error: _
53
- })).pipe(Effect.zip(FiberRef.get(currentXMLHttpRequest)), Effect.flatMap(([url, XHR]) => {
54
- const xhr = new XHR();
53
+ })).pipe(Effect.zip(Effect.flatMap(FiberRef.get(currentXMLHttpRequest), makeXhr => Effect.acquireRelease(Effect.sync(() => makeXhr()), xhr => Effect.sync(() => {
54
+ xhr.abort();
55
+ xhr.onreadystatechange = null;
56
+ })))), Effect.flatMap(([url, xhr]) => {
55
57
  xhr.open(request.method, url.toString(), true);
56
58
  xhr.responseType = "text";
57
59
  Object.entries(request.headers).forEach(([k, v]) => {
@@ -64,10 +66,17 @@ const makeXMLHttpRequest = exports.makeXMLHttpRequest = /*#__PURE__*/Client.make
64
66
  }
65
67
  };
66
68
  xhr.onreadystatechange = onChange;
69
+ xhr.onerror = _event => {
70
+ resume(Effect.fail(Error.RequestError({
71
+ request,
72
+ reason: "Transport",
73
+ error: xhr.statusText
74
+ })));
75
+ };
67
76
  onChange();
68
- })), Effect.as(new ClientResponseImpl(request, xhr)), Effect.onInterrupt(() => Effect.sync(() => xhr.abort())));
77
+ })), Effect.as(new ClientResponseImpl(request, xhr)));
69
78
  })));
70
- const sendBody = (xhr, request) => Effect.suspend(() => {
79
+ const sendBody = (xhr, request) => {
71
80
  const body = request.body;
72
81
  switch (body._tag) {
73
82
  case "Empty":
@@ -93,7 +102,7 @@ const sendBody = (xhr, request) => Effect.suspend(() => {
93
102
  onSuccess: body => Effect.sync(() => xhr.send(body))
94
103
  });
95
104
  }
96
- });
105
+ };
97
106
  const encoder = /*#__PURE__*/new TextEncoder();
98
107
  /** @internal */
99
108
  class IncomingMessageImpl {
@@ -129,16 +138,16 @@ class IncomingMessageImpl {
129
138
  }
130
139
  return this._textEffect = Effect.async(resume => {
131
140
  if (this.source.readyState === 4) {
132
- resume(Effect.succeed(this.source.response));
141
+ resume(Effect.succeed(this.source.responseText));
133
142
  return;
134
143
  }
135
144
  const onReadyStateChange = () => {
136
145
  if (this.source.readyState === 4) {
137
- resume(Effect.succeed(this.source.response));
146
+ resume(Effect.succeed(this.source.responseText));
138
147
  }
139
148
  };
140
- const onError = event => {
141
- resume(Effect.fail(this.onError(event)));
149
+ const onError = () => {
150
+ resume(Effect.fail(this.onError(this.source.statusText)));
142
151
  };
143
152
  this.source.addEventListener("readystatechange", onReadyStateChange);
144
153
  this.source.addEventListener("error", onError);
@@ -162,20 +171,20 @@ class IncomingMessageImpl {
162
171
  }
163
172
  get stream() {
164
173
  return Stream.asyncInterrupt(emit => {
165
- let bytes = 0;
174
+ let offset = 0;
166
175
  const onReadyStateChange = () => {
167
176
  if (this.source.readyState === 3) {
168
- emit.single(encoder.encode(this.source.responseText.slice(bytes)));
169
- bytes = this.source.responseText.length;
177
+ emit.single(encoder.encode(this.source.responseText.slice(offset)));
178
+ offset = this.source.responseText.length;
170
179
  } else if (this.source.readyState === 4) {
171
- if (bytes < this.source.responseText.length) {
172
- emit.single(encoder.encode(this.source.responseText.slice(bytes)));
180
+ if (offset < this.source.responseText.length) {
181
+ emit.single(encoder.encode(this.source.responseText.slice(offset)));
173
182
  }
174
183
  emit.end();
175
184
  }
176
185
  };
177
- const onError = event => {
178
- emit.fail(this.onError(event));
186
+ const onError = () => {
187
+ emit.fail(this.onError(this.source.statusText));
179
188
  };
180
189
  this.source.addEventListener("readystatechange", onReadyStateChange);
181
190
  this.source.addEventListener("error", onError);
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","names":["Client","_interopRequireWildcard","require","Error","ClientResponse","Headers","IncomingMessage","UrlParams","Effect","Either","FiberRef","_GlobalValue","Layer","Option","Stream","HeaderParser","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","currentXMLHttpRequest","exports","globalValue","unsafeMake","globalThis","XMLHttpRequest","makeXMLHttpRequest","makeDefault","request","makeUrl","url","urlParams","_","RequestError","reason","error","pipe","zip","flatMap","XHR","xhr","open","method","toString","responseType","entries","headers","forEach","k","v","setRequestHeader","sendBody","zipLeft","async","resume","onChange","readyState","unit","onreadystatechange","as","ClientResponseImpl","onInterrupt","sync","abort","suspend","body","_tag","send","formData","matchEffect","runFold","stream","Uint8Array","acc","chunk","next","length","onFailure","fail","onSuccess","encoder","TextEncoder","IncomingMessageImpl","source","onError","TypeId","constructor","_headers","getAllResponseHeaders","empty","parser","make","result","encode","parsed","fromInput","remoteAddress","none","_textEffect","text","succeed","response","onReadyStateChange","event","addEventListener","removeEventListener","cached","runSync","json","tryMap","try","JSON","parse","catch","urlParamsBody","URLSearchParams","asyncInterrupt","emit","bytes","single","responseText","slice","end","left","arrayBuffer","map","buffer","ResponseError","status","die","toJSON","layerXMLHttpRequest"],"sources":["../../../../src/internal/http/client.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"client.js","names":["Client","_interopRequireWildcard","require","Error","ClientResponse","Headers","IncomingMessage","UrlParams","Effect","Either","FiberRef","_GlobalValue","Layer","Option","Stream","HeaderParser","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","currentXMLHttpRequest","exports","globalValue","unsafeMake","XMLHttpRequest","makeXMLHttpRequest","makeDefault","request","makeUrl","url","urlParams","_","RequestError","reason","error","pipe","zip","flatMap","makeXhr","acquireRelease","sync","xhr","abort","onreadystatechange","open","method","toString","responseType","entries","headers","forEach","k","v","setRequestHeader","sendBody","zipLeft","async","resume","onChange","readyState","unit","onerror","_event","fail","statusText","as","ClientResponseImpl","body","_tag","send","formData","matchEffect","runFold","stream","Uint8Array","acc","chunk","next","length","onFailure","onSuccess","encoder","TextEncoder","IncomingMessageImpl","source","onError","TypeId","constructor","_headers","getAllResponseHeaders","empty","parser","make","result","encode","parsed","fromInput","remoteAddress","none","_textEffect","text","succeed","responseText","onReadyStateChange","addEventListener","removeEventListener","cached","runSync","json","tryMap","try","JSON","parse","catch","urlParamsBody","URLSearchParams","asyncInterrupt","emit","offset","single","slice","end","left","arrayBuffer","map","buffer","ResponseError","response","status","die","toJSON","layerXMLHttpRequest"],"sources":["../../../../src/internal/http/client.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -3,6 +3,7 @@
3
3
  */
4
4
  import type * as Client from "@effect/platform/Http/Client";
5
5
  import type * as FiberRef from "effect/FiberRef";
6
+ import type { LazyArg } from "effect/Function";
6
7
  import type * as Layer from "effect/Layer";
7
8
  /**
8
9
  * @since 1.0.0
@@ -18,5 +19,5 @@ export declare const layerXMLHttpRequest: Layer.Layer<Client.Client.Default, nev
18
19
  * @since 1.0.0
19
20
  * @category fiber refs
20
21
  */
21
- export declare const currentXMLHttpRequest: FiberRef.FiberRef<typeof XMLHttpRequest>;
22
+ export declare const currentXMLHttpRequest: FiberRef.FiberRef<LazyArg<XMLHttpRequest>>;
22
23
  //# sourceMappingURL=BrowserHttpClient.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BrowserHttpClient.d.ts","sourceRoot":"","sources":["../../src/BrowserHttpClient.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,MAAM,MAAM,8BAA8B,CAAA;AAC3D,OAAO,KAAK,KAAK,QAAQ,MAAM,iBAAiB,CAAA;AAChD,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAG1C;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,OAAqC,CAAA;AAEhF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAgC,CAAA;AAEjH;;;GAGG;AACH,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,QAAQ,CAAC,OAAO,cAAc,CAAkC,CAAA"}
1
+ {"version":3,"file":"BrowserHttpClient.d.ts","sourceRoot":"","sources":["../../src/BrowserHttpClient.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,MAAM,MAAM,8BAA8B,CAAA;AAC3D,OAAO,KAAK,KAAK,QAAQ,MAAM,iBAAiB,CAAA;AAChD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAG1C;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,OAAqC,CAAA;AAEhF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAgC,CAAA;AAEjH;;;GAGG;AACH,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,CAAkC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"BrowserHttpClient.js","names":["internal","xmlHttpRequest","makeXMLHttpRequest","layerXMLHttpRequest","currentXMLHttpRequest"],"sources":["../../src/BrowserHttpClient.ts"],"sourcesContent":[null],"mappings":"AAMA,OAAO,KAAKA,QAAQ,MAAM,2BAA2B;AAErD;;;;AAIA,OAAO,MAAMC,cAAc,GAA0BD,QAAQ,CAACE,kBAAkB;AAEhF;;;;AAIA,OAAO,MAAMC,mBAAmB,GAAqDH,QAAQ,CAACG,mBAAmB;AAEjH;;;;AAIA,OAAO,MAAMC,qBAAqB,GAA6CJ,QAAQ,CAACI,qBAAqB"}
1
+ {"version":3,"file":"BrowserHttpClient.js","names":["internal","xmlHttpRequest","makeXMLHttpRequest","layerXMLHttpRequest","currentXMLHttpRequest"],"sources":["../../src/BrowserHttpClient.ts"],"sourcesContent":[null],"mappings":"AAOA,OAAO,KAAKA,QAAQ,MAAM,2BAA2B;AAErD;;;;AAIA,OAAO,MAAMC,cAAc,GAA0BD,QAAQ,CAACE,kBAAkB;AAEhF;;;;AAIA,OAAO,MAAMC,mBAAmB,GAAqDH,QAAQ,CAACG,mBAAmB;AAEjH;;;;AAIA,OAAO,MAAMC,qBAAqB,GAA+CJ,QAAQ,CAACI,qBAAqB"}
@@ -13,14 +13,16 @@ import * as Option from "effect/Option";
13
13
  import * as Stream from "effect/Stream";
14
14
  import * as HeaderParser from "multipasta/HeadersParser";
15
15
  /** @internal */
16
- export const currentXMLHttpRequest = /*#__PURE__*/globalValue("@effect/platform-browser/BrowserHttpClient/currentXMLHttpRequest", () => FiberRef.unsafeMake(globalThis.XMLHttpRequest));
16
+ export const currentXMLHttpRequest = /*#__PURE__*/globalValue("@effect/platform-browser/BrowserHttpClient/currentXMLHttpRequest", () => FiberRef.unsafeMake(() => new XMLHttpRequest()));
17
17
  /** @internal */
18
18
  export const makeXMLHttpRequest = /*#__PURE__*/Client.makeDefault(request => UrlParams.makeUrl(request.url, request.urlParams, _ => Error.RequestError({
19
19
  request,
20
20
  reason: "InvalidUrl",
21
21
  error: _
22
- })).pipe(Effect.zip(FiberRef.get(currentXMLHttpRequest)), Effect.flatMap(([url, XHR]) => {
23
- const xhr = new XHR();
22
+ })).pipe(Effect.zip(Effect.flatMap(FiberRef.get(currentXMLHttpRequest), makeXhr => Effect.acquireRelease(Effect.sync(() => makeXhr()), xhr => Effect.sync(() => {
23
+ xhr.abort();
24
+ xhr.onreadystatechange = null;
25
+ })))), Effect.flatMap(([url, xhr]) => {
24
26
  xhr.open(request.method, url.toString(), true);
25
27
  xhr.responseType = "text";
26
28
  Object.entries(request.headers).forEach(([k, v]) => {
@@ -33,10 +35,17 @@ export const makeXMLHttpRequest = /*#__PURE__*/Client.makeDefault(request => Url
33
35
  }
34
36
  };
35
37
  xhr.onreadystatechange = onChange;
38
+ xhr.onerror = _event => {
39
+ resume(Effect.fail(Error.RequestError({
40
+ request,
41
+ reason: "Transport",
42
+ error: xhr.statusText
43
+ })));
44
+ };
36
45
  onChange();
37
- })), Effect.as(new ClientResponseImpl(request, xhr)), Effect.onInterrupt(() => Effect.sync(() => xhr.abort())));
46
+ })), Effect.as(new ClientResponseImpl(request, xhr)));
38
47
  })));
39
- const sendBody = (xhr, request) => Effect.suspend(() => {
48
+ const sendBody = (xhr, request) => {
40
49
  const body = request.body;
41
50
  switch (body._tag) {
42
51
  case "Empty":
@@ -62,7 +71,7 @@ const sendBody = (xhr, request) => Effect.suspend(() => {
62
71
  onSuccess: body => Effect.sync(() => xhr.send(body))
63
72
  });
64
73
  }
65
- });
74
+ };
66
75
  const encoder = /*#__PURE__*/new TextEncoder();
67
76
  /** @internal */
68
77
  export class IncomingMessageImpl {
@@ -98,16 +107,16 @@ export class IncomingMessageImpl {
98
107
  }
99
108
  return this._textEffect = Effect.async(resume => {
100
109
  if (this.source.readyState === 4) {
101
- resume(Effect.succeed(this.source.response));
110
+ resume(Effect.succeed(this.source.responseText));
102
111
  return;
103
112
  }
104
113
  const onReadyStateChange = () => {
105
114
  if (this.source.readyState === 4) {
106
- resume(Effect.succeed(this.source.response));
115
+ resume(Effect.succeed(this.source.responseText));
107
116
  }
108
117
  };
109
- const onError = event => {
110
- resume(Effect.fail(this.onError(event)));
118
+ const onError = () => {
119
+ resume(Effect.fail(this.onError(this.source.statusText)));
111
120
  };
112
121
  this.source.addEventListener("readystatechange", onReadyStateChange);
113
122
  this.source.addEventListener("error", onError);
@@ -131,20 +140,20 @@ export class IncomingMessageImpl {
131
140
  }
132
141
  get stream() {
133
142
  return Stream.asyncInterrupt(emit => {
134
- let bytes = 0;
143
+ let offset = 0;
135
144
  const onReadyStateChange = () => {
136
145
  if (this.source.readyState === 3) {
137
- emit.single(encoder.encode(this.source.responseText.slice(bytes)));
138
- bytes = this.source.responseText.length;
146
+ emit.single(encoder.encode(this.source.responseText.slice(offset)));
147
+ offset = this.source.responseText.length;
139
148
  } else if (this.source.readyState === 4) {
140
- if (bytes < this.source.responseText.length) {
141
- emit.single(encoder.encode(this.source.responseText.slice(bytes)));
149
+ if (offset < this.source.responseText.length) {
150
+ emit.single(encoder.encode(this.source.responseText.slice(offset)));
142
151
  }
143
152
  emit.end();
144
153
  }
145
154
  };
146
- const onError = event => {
147
- emit.fail(this.onError(event));
155
+ const onError = () => {
156
+ emit.fail(this.onError(this.source.statusText));
148
157
  };
149
158
  this.source.addEventListener("readystatechange", onReadyStateChange);
150
159
  this.source.addEventListener("error", onError);
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","names":["Client","Error","ClientResponse","Headers","IncomingMessage","UrlParams","Effect","Either","FiberRef","globalValue","Layer","Option","Stream","HeaderParser","currentXMLHttpRequest","unsafeMake","globalThis","XMLHttpRequest","makeXMLHttpRequest","makeDefault","request","makeUrl","url","urlParams","_","RequestError","reason","error","pipe","zip","get","flatMap","XHR","xhr","open","method","toString","responseType","Object","entries","headers","forEach","k","v","setRequestHeader","sendBody","zipLeft","async","resume","onChange","readyState","unit","onreadystatechange","as","ClientResponseImpl","onInterrupt","sync","abort","suspend","body","_tag","send","formData","matchEffect","runFold","stream","Uint8Array","acc","chunk","next","length","set","onFailure","fail","onSuccess","encoder","TextEncoder","IncomingMessageImpl","source","onError","TypeId","constructor","_headers","getAllResponseHeaders","empty","parser","make","result","encode","parsed","fromInput","remoteAddress","none","_textEffect","text","succeed","response","onReadyStateChange","event","addEventListener","removeEventListener","cached","runSync","json","tryMap","try","JSON","parse","catch","urlParamsBody","URLSearchParams","asyncInterrupt","emit","bytes","single","responseText","slice","end","left","arrayBuffer","map","buffer","ResponseError","status","die","toJSON","layerXMLHttpRequest"],"sources":["../../../../src/internal/http/client.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"client.js","names":["Client","Error","ClientResponse","Headers","IncomingMessage","UrlParams","Effect","Either","FiberRef","globalValue","Layer","Option","Stream","HeaderParser","currentXMLHttpRequest","unsafeMake","XMLHttpRequest","makeXMLHttpRequest","makeDefault","request","makeUrl","url","urlParams","_","RequestError","reason","error","pipe","zip","flatMap","get","makeXhr","acquireRelease","sync","xhr","abort","onreadystatechange","open","method","toString","responseType","Object","entries","headers","forEach","k","v","setRequestHeader","sendBody","zipLeft","async","resume","onChange","readyState","unit","onerror","_event","fail","statusText","as","ClientResponseImpl","body","_tag","send","formData","matchEffect","runFold","stream","Uint8Array","acc","chunk","next","length","set","onFailure","onSuccess","encoder","TextEncoder","IncomingMessageImpl","source","onError","TypeId","constructor","_headers","getAllResponseHeaders","empty","parser","make","result","encode","parsed","fromInput","remoteAddress","none","_textEffect","text","succeed","responseText","onReadyStateChange","addEventListener","removeEventListener","cached","runSync","json","tryMap","try","JSON","parse","catch","urlParamsBody","URLSearchParams","asyncInterrupt","emit","offset","single","slice","end","left","arrayBuffer","map","buffer","ResponseError","response","status","die","toJSON","layerXMLHttpRequest"],"sources":["../../../../src/internal/http/client.ts"],"sourcesContent":[null],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/platform-browser",
3
- "version": "0.29.7",
3
+ "version": "0.30.0",
4
4
  "description": "Unified interfaces for common platform-specific services",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -12,8 +12,8 @@
12
12
  "multipasta": "^0.1.21"
13
13
  },
14
14
  "peerDependencies": {
15
- "@effect/platform": "^0.44.6",
16
- "effect": "^2.3.4"
15
+ "@effect/platform": "^0.45.0",
16
+ "effect": "^2.3.5"
17
17
  },
18
18
  "main": "./dist/cjs/index.js",
19
19
  "module": "./dist/esm/index.js",
@@ -3,6 +3,7 @@
3
3
  */
4
4
  import type * as Client from "@effect/platform/Http/Client"
5
5
  import type * as FiberRef from "effect/FiberRef"
6
+ import type { LazyArg } from "effect/Function"
6
7
  import type * as Layer from "effect/Layer"
7
8
  import * as internal from "./internal/http/client.js"
8
9
 
@@ -22,4 +23,4 @@ export const layerXMLHttpRequest: Layer.Layer<Client.Client.Default, never, neve
22
23
  * @since 1.0.0
23
24
  * @category fiber refs
24
25
  */
25
- export const currentXMLHttpRequest: FiberRef.FiberRef<typeof XMLHttpRequest> = internal.currentXMLHttpRequest
26
+ export const currentXMLHttpRequest: FiberRef.FiberRef<LazyArg<XMLHttpRequest>> = internal.currentXMLHttpRequest
@@ -8,6 +8,7 @@ import * as UrlParams from "@effect/platform/Http/UrlParams"
8
8
  import * as Effect from "effect/Effect"
9
9
  import * as Either from "effect/Either"
10
10
  import * as FiberRef from "effect/FiberRef"
11
+ import type { LazyArg } from "effect/Function"
11
12
  import { globalValue } from "effect/GlobalValue"
12
13
  import * as Layer from "effect/Layer"
13
14
  import * as Option from "effect/Option"
@@ -17,7 +18,7 @@ import * as HeaderParser from "multipasta/HeadersParser"
17
18
  /** @internal */
18
19
  export const currentXMLHttpRequest = globalValue(
19
20
  "@effect/platform-browser/BrowserHttpClient/currentXMLHttpRequest",
20
- () => FiberRef.unsafeMake(globalThis.XMLHttpRequest)
21
+ () => FiberRef.unsafeMake<LazyArg<XMLHttpRequest>>(() => new XMLHttpRequest())
21
22
  )
22
23
 
23
24
  /** @internal */
@@ -28,63 +29,80 @@ export const makeXMLHttpRequest = Client.makeDefault((request) =>
28
29
  reason: "InvalidUrl",
29
30
  error: _
30
31
  })).pipe(
31
- Effect.zip(FiberRef.get(currentXMLHttpRequest)),
32
- Effect.flatMap(([url, XHR]) => {
33
- const xhr = new XHR()
32
+ Effect.zip(
33
+ Effect.flatMap(FiberRef.get(currentXMLHttpRequest), (makeXhr) =>
34
+ Effect.acquireRelease(
35
+ Effect.sync(() => makeXhr()),
36
+ (xhr) =>
37
+ Effect.sync(() => {
38
+ xhr.abort()
39
+ xhr.onreadystatechange = null
40
+ })
41
+ ))
42
+ ),
43
+ Effect.flatMap(([url, xhr]) => {
34
44
  xhr.open(request.method, url.toString(), true)
35
45
  xhr.responseType = "text"
36
46
  Object.entries(request.headers).forEach(([k, v]) => {
37
47
  xhr.setRequestHeader(k, v)
38
48
  })
39
49
  return sendBody(xhr, request).pipe(
40
- Effect.zipLeft(Effect.async<void>((resume) => {
50
+ Effect.zipLeft(Effect.async<void, Error.RequestError>((resume) => {
41
51
  const onChange = () => {
42
52
  if (xhr.readyState >= 2) {
43
53
  resume(Effect.unit)
44
54
  }
45
55
  }
46
56
  xhr.onreadystatechange = onChange
57
+ xhr.onerror = (_event) => {
58
+ resume(Effect.fail(Error.RequestError({
59
+ request,
60
+ reason: "Transport",
61
+ error: xhr.statusText
62
+ })))
63
+ }
47
64
  onChange()
48
65
  })),
49
- Effect.as(new ClientResponseImpl(request, xhr)),
50
- Effect.onInterrupt(() => Effect.sync(() => xhr.abort()))
66
+ Effect.as(new ClientResponseImpl(request, xhr))
51
67
  )
52
68
  })
53
69
  )
54
70
  )
55
71
 
56
- const sendBody = (xhr: XMLHttpRequest, request: ClientRequest.ClientRequest): Effect.Effect<void, Error.RequestError> =>
57
- Effect.suspend(() => {
58
- const body = request.body
59
- switch (body._tag) {
60
- case "Empty":
61
- return Effect.sync(() => xhr.send())
62
- case "Raw":
63
- return Effect.sync(() => xhr.send(body.body as any))
64
- case "Uint8Array":
65
- return Effect.sync(() => xhr.send(body.body))
66
- case "FormData":
67
- return Effect.sync(() => xhr.send(body.formData))
68
- case "Stream":
69
- return Effect.matchEffect(
70
- Stream.runFold(body.stream, new Uint8Array(0), (acc, chunk) => {
71
- const next = new Uint8Array(acc.length + chunk.length)
72
- next.set(acc, 0)
73
- next.set(chunk, acc.length)
74
- return next
75
- }),
76
- {
77
- onFailure: (error) =>
78
- Effect.fail(Error.RequestError({
79
- request,
80
- reason: "Encode",
81
- error
82
- })),
83
- onSuccess: (body) => Effect.sync(() => xhr.send(body))
84
- }
85
- )
86
- }
87
- })
72
+ const sendBody = (
73
+ xhr: XMLHttpRequest,
74
+ request: ClientRequest.ClientRequest
75
+ ): Effect.Effect<void, Error.RequestError> => {
76
+ const body = request.body
77
+ switch (body._tag) {
78
+ case "Empty":
79
+ return Effect.sync(() => xhr.send())
80
+ case "Raw":
81
+ return Effect.sync(() => xhr.send(body.body as any))
82
+ case "Uint8Array":
83
+ return Effect.sync(() => xhr.send(body.body))
84
+ case "FormData":
85
+ return Effect.sync(() => xhr.send(body.formData))
86
+ case "Stream":
87
+ return Effect.matchEffect(
88
+ Stream.runFold(body.stream, new Uint8Array(0), (acc, chunk) => {
89
+ const next = new Uint8Array(acc.length + chunk.length)
90
+ next.set(acc, 0)
91
+ next.set(chunk, acc.length)
92
+ return next
93
+ }),
94
+ {
95
+ onFailure: (error) =>
96
+ Effect.fail(Error.RequestError({
97
+ request,
98
+ reason: "Encode",
99
+ error
100
+ })),
101
+ onSuccess: (body) => Effect.sync(() => xhr.send(body))
102
+ }
103
+ )
104
+ }
105
+ }
88
106
 
89
107
  const encoder = new TextEncoder()
90
108
 
@@ -125,17 +143,17 @@ export class IncomingMessageImpl<E> implements IncomingMessage.IncomingMessage<E
125
143
  }
126
144
  return this._textEffect = Effect.async<string, E>((resume) => {
127
145
  if (this.source.readyState === 4) {
128
- resume(Effect.succeed(this.source.response))
146
+ resume(Effect.succeed(this.source.responseText))
129
147
  return
130
148
  }
131
149
 
132
150
  const onReadyStateChange = () => {
133
151
  if (this.source.readyState === 4) {
134
- resume(Effect.succeed(this.source.response))
152
+ resume(Effect.succeed(this.source.responseText))
135
153
  }
136
154
  }
137
- const onError = (event: any) => {
138
- resume(Effect.fail(this.onError(event)))
155
+ const onError = () => {
156
+ resume(Effect.fail(this.onError(this.source.statusText)))
139
157
  }
140
158
  this.source.addEventListener("readystatechange", onReadyStateChange)
141
159
  this.source.addEventListener("error", onError)
@@ -166,20 +184,20 @@ export class IncomingMessageImpl<E> implements IncomingMessage.IncomingMessage<E
166
184
 
167
185
  get stream(): Stream.Stream<Uint8Array, E> {
168
186
  return Stream.asyncInterrupt<Uint8Array, E>((emit) => {
169
- let bytes = 0
187
+ let offset = 0
170
188
  const onReadyStateChange = () => {
171
189
  if (this.source.readyState === 3) {
172
- emit.single(encoder.encode(this.source.responseText.slice(bytes)))
173
- bytes = this.source.responseText.length
190
+ emit.single(encoder.encode(this.source.responseText.slice(offset)))
191
+ offset = this.source.responseText.length
174
192
  } else if (this.source.readyState === 4) {
175
- if (bytes < this.source.responseText.length) {
176
- emit.single(encoder.encode(this.source.responseText.slice(bytes)))
193
+ if (offset < this.source.responseText.length) {
194
+ emit.single(encoder.encode(this.source.responseText.slice(offset)))
177
195
  }
178
196
  emit.end()
179
197
  }
180
198
  }
181
- const onError = (event: any) => {
182
- emit.fail(this.onError(event))
199
+ const onError = () => {
200
+ emit.fail(this.onError(this.source.statusText))
183
201
  }
184
202
  this.source.addEventListener("readystatechange", onReadyStateChange)
185
203
  this.source.addEventListener("error", onError)