@effect/platform-browser 0.37.26 → 0.38.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.
@@ -46,7 +46,7 @@ export const makeXMLHttpRequest = /*#__PURE__*/Client.makeDefault((request, url,
46
46
  resume(Effect.fail(new Error.RequestError({
47
47
  request,
48
48
  reason: "Transport",
49
- error: xhr.statusText
49
+ cause: xhr.statusText
50
50
  })));
51
51
  };
52
52
  onChange();
@@ -70,10 +70,10 @@ const sendBody = (xhr, request) => {
70
70
  next.set(chunk, acc.length);
71
71
  return next;
72
72
  }), {
73
- onFailure: error => Effect.fail(new Error.RequestError({
73
+ onFailure: cause => Effect.fail(new Error.RequestError({
74
74
  request,
75
75
  reason: "Encode",
76
- error
76
+ cause
77
77
  })),
78
78
  onSuccess: body => Effect.sync(() => xhr.send(body))
79
79
  });
@@ -227,11 +227,11 @@ class ClientResponseImpl extends IncomingMessageImpl {
227
227
  request;
228
228
  [ClientResponse.TypeId];
229
229
  constructor(request, source) {
230
- super(source, _ => new Error.ResponseError({
230
+ super(source, cause => new Error.ResponseError({
231
231
  request,
232
232
  response: this,
233
233
  reason: "Decode",
234
- error: _
234
+ cause
235
235
  }));
236
236
  this.request = request;
237
237
  this[ClientResponse.TypeId] = ClientResponse.TypeId;
@@ -1 +1 @@
1
- {"version":3,"file":"httpClient.js","names":["Cookies","Headers","Client","Error","ClientResponse","IncomingMessage","UrlParams","Effect","FiberRef","globalValue","Inspectable","Layer","Option","Stream","HeaderParser","currentXMLHttpRequest","unsafeMake","XMLHttpRequest","currentXHRResponseType","withXHRArrayBuffer","effect","locally","makeXMLHttpRequest","makeDefault","request","url","signal","fiber","suspend","xhr","getFiberRef","addEventListener","abort","onreadystatechange","once","open","method","toString","responseType","Object","entries","headers","forEach","k","v","setRequestHeader","zipRight","sendBody","async","resume","sent","onChange","readyState","succeed","ClientResponseImpl","onerror","_event","fail","RequestError","reason","error","statusText","body","_tag","sync","send","formData","matchEffect","runFold","stream","Uint8Array","acc","chunk","next","length","set","onFailure","onSuccess","encoder","TextEncoder","IncomingMessageImpl","Class","source","onError","TypeId","constructor","_rawHeaderString","getAllResponseHeaders","_rawHeaders","_headers","empty","parser","make","result","encode","undefined","parsed","fromInput","cachedCookies","cookies","fromSetCookie","remoteAddress","none","_textEffect","text","responseText","onReadyStateChange","removeEventListener","pipe","cached","runSync","json","tryMap","try","_","JSON","parse","catch","urlParamsBody","flatMap","URLSearchParams","emit","offset","single","slice","end","_arrayBufferEffect","arrayBuffer","globalThis","response","map","buffer","ResponseError","status","die","toJSON","_id","layerXMLHttpRequest","HttpClient"],"sources":["../../../src/internal/httpClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"httpClient.js","names":["Cookies","Headers","Client","Error","ClientResponse","IncomingMessage","UrlParams","Effect","FiberRef","globalValue","Inspectable","Layer","Option","Stream","HeaderParser","currentXMLHttpRequest","unsafeMake","XMLHttpRequest","currentXHRResponseType","withXHRArrayBuffer","effect","locally","makeXMLHttpRequest","makeDefault","request","url","signal","fiber","suspend","xhr","getFiberRef","addEventListener","abort","onreadystatechange","once","open","method","toString","responseType","Object","entries","headers","forEach","k","v","setRequestHeader","zipRight","sendBody","async","resume","sent","onChange","readyState","succeed","ClientResponseImpl","onerror","_event","fail","RequestError","reason","cause","statusText","body","_tag","sync","send","formData","matchEffect","runFold","stream","Uint8Array","acc","chunk","next","length","set","onFailure","onSuccess","encoder","TextEncoder","IncomingMessageImpl","Class","source","onError","TypeId","constructor","_rawHeaderString","getAllResponseHeaders","_rawHeaders","_headers","empty","parser","make","result","encode","undefined","parsed","fromInput","cachedCookies","cookies","fromSetCookie","remoteAddress","none","_textEffect","text","responseText","onReadyStateChange","removeEventListener","pipe","cached","runSync","json","tryMap","try","_","JSON","parse","catch","urlParamsBody","flatMap","URLSearchParams","emit","offset","single","slice","end","_arrayBufferEffect","arrayBuffer","globalThis","response","map","buffer","ResponseError","status","die","toJSON","_id","layerXMLHttpRequest","HttpClient"],"sources":["../../../src/internal/httpClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -3,56 +3,41 @@ import { WorkerError } from "@effect/platform/WorkerError";
3
3
  import * as Deferred from "effect/Deferred";
4
4
  import * as Effect from "effect/Effect";
5
5
  import * as Layer from "effect/Layer";
6
- import * as Queue from "effect/Queue";
7
- const platformWorkerImpl = /*#__PURE__*/Worker.PlatformWorker.of({
8
- [Worker.PlatformWorkerTypeId]: Worker.PlatformWorkerTypeId,
9
- spawn(worker_) {
10
- return Effect.gen(function* (_) {
11
- const worker = worker_;
12
- let port;
13
- if ("port" in worker) {
14
- port = worker.port;
15
- } else {
16
- port = worker;
17
- }
18
- yield* _(Effect.addFinalizer(() => Effect.sync(() => port.postMessage([1]))));
19
- const queue = yield* _(Queue.unbounded());
20
- const latch = yield* Deferred.make();
21
- const fiber = yield* _(Effect.async(resume => {
22
- function onMessage(event) {
23
- queue.unsafeOffer(event.data);
24
- }
25
- function onError(event) {
26
- resume(new WorkerError({
27
- reason: "unknown",
28
- error: event.error ?? event.message
29
- }));
30
- }
31
- port.addEventListener("message", onMessage);
32
- port.addEventListener("error", onError);
33
- Deferred.unsafeDone(latch, Effect.void);
34
- return Effect.sync(() => {
35
- port.removeEventListener("message", onMessage);
36
- port.removeEventListener("error", onError);
37
- });
38
- }), Effect.interruptible, Effect.forkScoped);
39
- yield* Deferred.await(latch);
40
- if ("start" in port) {
41
- port.start();
42
- }
43
- const send = (message, transfers) => Effect.try({
44
- try: () => port.postMessage([0, message], transfers),
45
- catch: error => new WorkerError({
46
- reason: "send",
47
- error
48
- })
49
- });
50
- return {
51
- fiber,
52
- queue,
53
- send
54
- };
55
- });
6
+ import * as Scope from "effect/Scope";
7
+ const platformWorkerImpl = /*#__PURE__*/Worker.makePlatform()({
8
+ setup({
9
+ scope,
10
+ worker
11
+ }) {
12
+ const port = "port" in worker ? worker.port : worker;
13
+ return Effect.as(Scope.addFinalizer(scope, Effect.sync(() => {
14
+ port.postMessage([1]);
15
+ })), port);
16
+ },
17
+ listen({
18
+ deferred,
19
+ emit,
20
+ port,
21
+ scope
22
+ }) {
23
+ function onMessage(event) {
24
+ emit(event.data);
25
+ }
26
+ function onError(event) {
27
+ Deferred.unsafeDone(deferred, new WorkerError({
28
+ reason: "unknown",
29
+ cause: event.error ?? event.message
30
+ }));
31
+ }
32
+ port.addEventListener("message", onMessage);
33
+ port.addEventListener("error", onError);
34
+ if ("start" in port) {
35
+ port.start();
36
+ }
37
+ return Scope.addFinalizer(scope, Effect.sync(() => {
38
+ port.removeEventListener("message", onMessage);
39
+ port.removeEventListener("error", onError);
40
+ }));
56
41
  }
57
42
  });
58
43
  /** @internal */
@@ -1 +1 @@
1
- {"version":3,"file":"worker.js","names":["Worker","WorkerError","Deferred","Effect","Layer","Queue","platformWorkerImpl","PlatformWorker","of","PlatformWorkerTypeId","spawn","worker_","gen","_","worker","port","addFinalizer","sync","postMessage","queue","unbounded","latch","make","fiber","async","resume","onMessage","event","unsafeOffer","data","onError","reason","error","message","addEventListener","unsafeDone","void","removeEventListener","interruptible","forkScoped","await","start","send","transfers","try","catch","layerWorker","succeed","layerManager","provide","layer","merge","layerSpawner"],"sources":["../../../src/internal/worker.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"worker.js","names":["Worker","WorkerError","Deferred","Effect","Layer","Scope","platformWorkerImpl","makePlatform","setup","scope","worker","port","as","addFinalizer","sync","postMessage","listen","deferred","emit","onMessage","event","data","onError","unsafeDone","reason","cause","error","message","addEventListener","start","removeEventListener","layerWorker","succeed","PlatformWorker","layerManager","provide","layer","spawn","merge","layerSpawner"],"sources":["../../../src/internal/worker.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,MAAM,MAAM,yBAAyB;AACjD,SAASC,WAAW,QAAQ,8BAA8B;AAC1D,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAC3C,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,KAAK,MAAM,cAAc;AAErC,MAAMC,kBAAkB,gBAAGN,MAAM,CAACO,YAAY,EAA6D,CAAC;EAC1GC,KAAKA,CAAC;IAAEC,KAAK;IAAEC;EAAM,CAAE;IACrB,MAAMC,IAAI,GAAG,MAAM,IAAID,MAAM,GAAGA,MAAM,CAACC,IAAI,GAAGD,MAAM;IACpD,OAAOP,MAAM,CAACS,EAAE,CACdP,KAAK,CAACQ,YAAY,CAChBJ,KAAK,EACLN,MAAM,CAACW,IAAI,CAAC,MAAK;MACfH,IAAI,CAACI,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC,CAAC,CACH,EACDJ,IAAI,CACL;EACH,CAAC;EACDK,MAAMA,CAAC;IAAEC,QAAQ;IAAEC,IAAI;IAAEP,IAAI;IAAEF;EAAK,CAAE;IACpC,SAASU,SAASA,CAACC,KAAmB;MACpCF,IAAI,CAACE,KAAK,CAACC,IAAI,CAAC;IAClB;IACA,SAASC,OAAOA,CAACF,KAAiB;MAChClB,QAAQ,CAACqB,UAAU,CACjBN,QAAQ,EACR,IAAIhB,WAAW,CAAC;QAAEuB,MAAM,EAAE,SAAS;QAAEC,KAAK,EAAEL,KAAK,CAACM,KAAK,IAAIN,KAAK,CAACO;MAAO,CAAE,CAAC,CAC5E;IACH;IACAhB,IAAI,CAACiB,gBAAgB,CAAC,SAAS,EAAET,SAAgB,CAAC;IAClDR,IAAI,CAACiB,gBAAgB,CAAC,OAAO,EAAEN,OAAc,CAAC;IAC9C,IAAI,OAAO,IAAIX,IAAI,EAAE;MACnBA,IAAI,CAACkB,KAAK,EAAE;IACd;IACA,OAAOxB,KAAK,CAACQ,YAAY,CACvBJ,KAAK,EACLN,MAAM,CAACW,IAAI,CAAC,MAAK;MACfH,IAAI,CAACmB,mBAAmB,CAAC,SAAS,EAAEX,SAAgB,CAAC;MACrDR,IAAI,CAACmB,mBAAmB,CAAC,OAAO,EAAER,OAAc,CAAC;IACnD,CAAC,CAAC,CACH;EACH;CACD,CAAC;AAEF;AACA,OAAO,MAAMS,WAAW,gBAAG3B,KAAK,CAAC4B,OAAO,CAAChC,MAAM,CAACiC,cAAc,EAAE3B,kBAAkB,CAAC;AAEnF;AACA,OAAO,MAAM4B,YAAY,gBAAG9B,KAAK,CAAC+B,OAAO,CAACnC,MAAM,CAACkC,YAAY,EAAEH,WAAW,CAAC;AAE3E;AACA,OAAO,MAAMK,KAAK,GAAIC,KAAgF,IACpGjC,KAAK,CAACkC,KAAK,CAACJ,YAAY,EAAElC,MAAM,CAACuC,YAAY,CAACF,KAAK,CAAC,CAAC","ignoreList":[]}
@@ -1,12 +1,14 @@
1
1
  import { WorkerError } from "@effect/platform/WorkerError";
2
2
  import * as Runner from "@effect/platform/WorkerRunner";
3
- import * as Cause from "effect/Cause";
3
+ import * as Deferred from "effect/Deferred";
4
4
  import * as Effect from "effect/Effect";
5
+ import * as ExecStrategy from "effect/ExecutionStrategy";
6
+ import * as Exit from "effect/Exit";
7
+ import * as FiberId from "effect/FiberId";
5
8
  import * as FiberSet from "effect/FiberSet";
6
9
  import { globalValue } from "effect/GlobalValue";
7
10
  import * as Layer from "effect/Layer";
8
- import * as Queue from "effect/Queue";
9
- import * as Schedule from "effect/Schedule";
11
+ import * as Scope from "effect/Scope";
10
12
  const cachedPorts = /*#__PURE__*/globalValue("@effect/platform-browser/Worker/cachedPorts", () => new Set());
11
13
  function globalHandleConnect(event) {
12
14
  cachedPorts.add(event.ports[0]);
@@ -16,82 +18,97 @@ if (typeof self !== "undefined" && "onconnect" in self) {
16
18
  }
17
19
  const platformRunnerImpl = /*#__PURE__*/Runner.PlatformRunner.of({
18
20
  [Runner.PlatformRunnerTypeId]: Runner.PlatformRunnerTypeId,
19
- start(shutdown) {
20
- return Effect.gen(function* () {
21
+ start() {
22
+ return Effect.sync(() => {
21
23
  let currentPortId = 0;
22
- yield* Effect.addFinalizer(() => Effect.sync(() => self.close()));
23
- const queue = yield* Queue.unbounded();
24
- const runFork = yield* FiberSet.makeRuntime();
25
24
  const ports = new Map();
26
25
  const send = (portId, message, transfer) => Effect.sync(() => {
27
- ports.get(portId)?.postMessage([1, message], {
26
+ ;
27
+ (ports.get(portId)?.[0] ?? self).postMessage([1, message], {
28
28
  transfer: transfer
29
29
  });
30
30
  });
31
- function handlePort(port, sharedWorker) {
32
- const portId = currentPortId++;
33
- ports.set(portId, port);
34
- Effect.async(resume => {
35
- function onMessage(event) {
31
+ const run = handler => Effect.uninterruptibleMask(restore => Scope.make().pipe(Effect.bindTo("scope"), Effect.bind("fiberSet", ({
32
+ scope
33
+ }) => FiberSet.make().pipe(Scope.extend(scope))), Effect.bind("runFork", ({
34
+ fiberSet
35
+ }) => FiberSet.runtime(fiberSet)()), Effect.tap(({
36
+ fiberSet,
37
+ runFork,
38
+ scope
39
+ }) => {
40
+ function onMessage(portId) {
41
+ return function (event) {
36
42
  const message = event.data;
37
43
  if (message[0] === 0) {
38
- queue.unsafeOffer([portId, message[1]]);
39
- } else if (sharedWorker && ports.size > 1) {
40
- resume(Effect.interrupt);
44
+ runFork(restore(handler(portId, message[1])));
41
45
  } else {
42
- Effect.runFork(shutdown);
46
+ const port = ports.get(portId);
47
+ if (port) {
48
+ Effect.runFork(Scope.close(port[1], Exit.void));
49
+ }
50
+ ports.delete(portId);
51
+ if (ports.size === 0) {
52
+ Deferred.unsafeDone(fiberSet.deferred, Exit.interrupt(FiberId.none));
53
+ }
43
54
  }
44
- }
45
- function onMessageError(error) {
46
- resume(new WorkerError({
47
- reason: "decode",
48
- error: error.error ?? error.message
49
- }));
50
- }
51
- function onError(error) {
52
- resume(new WorkerError({
53
- reason: "unknown",
54
- error: error.error ?? error.message
55
+ };
56
+ }
57
+ function onMessageError(error) {
58
+ Deferred.unsafeDone(fiberSet.deferred, new WorkerError({
59
+ reason: "decode",
60
+ cause: error.data
61
+ }));
62
+ }
63
+ function onError(error) {
64
+ Deferred.unsafeDone(fiberSet.deferred, new WorkerError({
65
+ reason: "unknown",
66
+ cause: error.data
67
+ }));
68
+ }
69
+ function handlePort(port) {
70
+ return Scope.fork(scope, ExecStrategy.sequential).pipe(Effect.flatMap(scope => {
71
+ const portId = currentPortId++;
72
+ ports.set(portId, [port, scope]);
73
+ const onMsg = onMessage(portId);
74
+ port.addEventListener("message", onMsg);
75
+ port.addEventListener("messageerror", onMessageError);
76
+ if ("start" in port) {
77
+ port.start();
78
+ }
79
+ port.postMessage([0]);
80
+ return Scope.addFinalizer(scope, Effect.sync(() => {
81
+ port.removeEventListener("message", onMsg);
82
+ port.removeEventListener("messageerror", onError);
55
83
  }));
84
+ }), runFork);
85
+ }
86
+ self.addEventListener("error", onError);
87
+ if ("onconnect" in self) {
88
+ self.onconnect = function (event) {
89
+ const port = event.ports[0];
90
+ handlePort(port);
91
+ };
92
+ for (const port of cachedPorts) {
93
+ handlePort(port);
56
94
  }
57
- port.addEventListener("message", onMessage);
58
- port.addEventListener("messageerror", onMessageError);
59
- port.addEventListener("error", onError);
60
- // ready
61
- if ("start" in port) {
62
- port.start();
95
+ cachedPorts.clear();
96
+ } else {
97
+ handlePort(self);
98
+ }
99
+ return Scope.addFinalizer(scope, Effect.sync(() => {
100
+ self.removeEventListener("error", onError);
101
+ if ("onconnect" in self) {
102
+ self.onconnect = globalHandleConnect;
63
103
  }
64
- port.postMessage([0]);
65
- return Effect.sync(() => {
66
- port.removeEventListener("message", onMessage);
67
- port.removeEventListener("messageerror", onMessageError);
68
- port.removeEventListener("error", onError);
69
- });
70
- }).pipe(Effect.tapErrorCause(cause => Cause.isInterruptedOnly(cause) ? Effect.void : Effect.logDebug(cause)), Effect.retry(Schedule.forever), Effect.annotateLogs({
71
- package: "@effect/platform-browser",
72
- module: "WorkerRunner"
73
- }), Effect.ensuring(Effect.sync(() => {
74
- ports.delete(portId);
75
- })), Effect.interruptible, runFork);
76
- }
77
- if ("onconnect" in self) {
78
- self.onconnect = function (event) {
79
- const port = event.ports[0];
80
- handlePort(port, true);
81
- };
82
- yield* Effect.addFinalizer(() => Effect.sync(() => {
83
- ;
84
- self.onconnect = globalHandleConnect;
104
+ self.close();
85
105
  }));
86
- for (const port of cachedPorts) {
87
- handlePort(port, true);
88
- }
89
- cachedPorts.clear();
90
- } else {
91
- handlePort(self, false);
92
- }
106
+ }), Effect.flatMap(({
107
+ fiberSet,
108
+ scope
109
+ }) => restore(FiberSet.join(fiberSet)).pipe(Effect.ensuring(Scope.close(scope, Exit.void))))));
93
110
  return {
94
- queue,
111
+ run,
95
112
  send
96
113
  };
97
114
  });
@@ -1 +1 @@
1
- {"version":3,"file":"workerRunner.js","names":["WorkerError","Runner","Cause","Effect","FiberSet","globalValue","Layer","Queue","Schedule","cachedPorts","Set","globalHandleConnect","event","add","ports","self","onconnect","platformRunnerImpl","PlatformRunner","of","PlatformRunnerTypeId","start","shutdown","gen","currentPortId","addFinalizer","sync","close","queue","unbounded","runFork","makeRuntime","Map","send","portId","message","transfer","get","postMessage","handlePort","port","sharedWorker","set","async","resume","onMessage","data","unsafeOffer","size","interrupt","onMessageError","error","reason","onError","addEventListener","removeEventListener","pipe","tapErrorCause","cause","isInterruptedOnly","void","logDebug","retry","forever","annotateLogs","package","module","ensuring","delete","interruptible","clear","layer","succeed"],"sources":["../../../src/internal/workerRunner.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"workerRunner.js","names":["WorkerError","Runner","Deferred","Effect","ExecStrategy","Exit","FiberId","FiberSet","globalValue","Layer","Scope","cachedPorts","Set","globalHandleConnect","event","add","ports","self","onconnect","platformRunnerImpl","PlatformRunner","of","PlatformRunnerTypeId","start","sync","currentPortId","Map","send","portId","message","transfer","get","postMessage","run","handler","uninterruptibleMask","restore","make","pipe","bindTo","bind","scope","extend","fiberSet","runtime","tap","runFork","onMessage","data","port","close","void","delete","size","unsafeDone","deferred","interrupt","none","onMessageError","error","reason","cause","onError","handlePort","fork","sequential","flatMap","set","onMsg","addEventListener","addFinalizer","removeEventListener","clear","join","ensuring","layer","succeed"],"sources":["../../../src/internal/workerRunner.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/platform-browser",
3
- "version": "0.37.26",
3
+ "version": "0.38.0",
4
4
  "description": "Platform specific implementations for the browser",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -13,8 +13,8 @@
13
13
  "multipasta": "^0.2.2"
14
14
  },
15
15
  "peerDependencies": {
16
- "@effect/platform": "^0.58.26",
17
- "effect": "^3.5.2"
16
+ "@effect/platform": "^0.59.0",
17
+ "effect": "^3.5.4"
18
18
  },
19
19
  "publishConfig": {
20
20
  "provenance": true
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @since 1.0.0
3
3
  */
4
- import { RefailError } from "@effect/platform/Error"
4
+ import { TypeIdError } from "@effect/platform/Error"
5
5
  import * as Context from "effect/Context"
6
6
  import * as Effect from "effect/Effect"
7
7
  import * as Either from "effect/Either"
@@ -64,9 +64,14 @@ export type ErrorTypeId = typeof ErrorTypeId
64
64
  * @since 1.0.0
65
65
  * @category errors
66
66
  */
67
- export class GeolocationError extends RefailError(ErrorTypeId, "GeolocationError")<{
67
+ export class GeolocationError extends TypeIdError(ErrorTypeId, "GeolocationError")<{
68
68
  readonly reason: "PositionUnavailable" | "PermissionDenied" | "Timeout"
69
- }> {}
69
+ readonly cause: unknown
70
+ }> {
71
+ get message() {
72
+ return this.reason
73
+ }
74
+ }
70
75
 
71
76
  const makeQueue = (
72
77
  options:
@@ -81,11 +86,11 @@ const makeQueue = (
81
86
  Effect.sync(() =>
82
87
  navigator.geolocation.watchPosition(
83
88
  (position) => queue.unsafeOffer(Either.right(position)),
84
- (error) => {
85
- if (error.code === error.PERMISSION_DENIED) {
86
- queue.unsafeOffer(Either.left(new GeolocationError({ reason: "PermissionDenied", error })))
87
- } else if (error.code === error.TIMEOUT) {
88
- queue.unsafeOffer(Either.left(new GeolocationError({ reason: "Timeout", error })))
89
+ (cause) => {
90
+ if (cause.code === cause.PERMISSION_DENIED) {
91
+ queue.unsafeOffer(Either.left(new GeolocationError({ reason: "PermissionDenied", cause })))
92
+ } else if (cause.code === cause.TIMEOUT) {
93
+ queue.unsafeOffer(Either.left(new GeolocationError({ reason: "Timeout", cause })))
89
94
  }
90
95
  },
91
96
  options
@@ -65,7 +65,7 @@ export const makeXMLHttpRequest = Client.makeDefault((request, url, signal, fibe
65
65
  new Error.RequestError({
66
66
  request,
67
67
  reason: "Transport",
68
- error: xhr.statusText
68
+ cause: xhr.statusText
69
69
  })
70
70
  ))
71
71
  }
@@ -98,12 +98,12 @@ const sendBody = (
98
98
  return next
99
99
  }),
100
100
  {
101
- onFailure: (error) =>
101
+ onFailure: (cause) =>
102
102
  Effect.fail(
103
103
  new Error.RequestError({
104
104
  request,
105
105
  reason: "Encode",
106
- error
106
+ cause
107
107
  })
108
108
  ),
109
109
  onSuccess: (body) => Effect.sync(() => xhr.send(body))
@@ -286,12 +286,12 @@ class ClientResponseImpl extends IncomingMessageImpl<Error.ResponseError> implem
286
286
  readonly request: ClientRequest.HttpClientRequest,
287
287
  source: XMLHttpRequest
288
288
  ) {
289
- super(source, (_) =>
289
+ super(source, (cause) =>
290
290
  new Error.ResponseError({
291
291
  request,
292
292
  response: this,
293
293
  reason: "Decode",
294
- error: _
294
+ cause
295
295
  }))
296
296
  this[ClientResponse.TypeId] = ClientResponse.TypeId
297
297
  }
@@ -3,58 +3,43 @@ import { WorkerError } from "@effect/platform/WorkerError"
3
3
  import * as Deferred from "effect/Deferred"
4
4
  import * as Effect from "effect/Effect"
5
5
  import * as Layer from "effect/Layer"
6
- import * as Queue from "effect/Queue"
7
-
8
- const platformWorkerImpl = Worker.PlatformWorker.of({
9
- [Worker.PlatformWorkerTypeId]: Worker.PlatformWorkerTypeId,
10
- spawn<I, O>(worker_: unknown) {
11
- return Effect.gen(function*(_) {
12
- const worker = worker_ as globalThis.SharedWorker | globalThis.Worker | MessagePort
13
- let port: globalThis.Worker | MessagePort
14
- if ("port" in worker) {
15
- port = worker.port
16
- } else {
17
- port = worker
18
- }
19
-
20
- yield* _(Effect.addFinalizer(() => Effect.sync(() => port.postMessage([1]))))
21
-
22
- const queue = yield* _(Queue.unbounded<Worker.BackingWorker.Message<O>>())
23
- const latch = yield* Deferred.make<void>()
24
-
25
- const fiber = yield* _(
26
- Effect.async<never, WorkerError, never>((resume) => {
27
- function onMessage(event: MessageEvent) {
28
- queue.unsafeOffer((event as MessageEvent).data)
29
- }
30
- function onError(event: ErrorEvent) {
31
- resume(new WorkerError({ reason: "unknown", error: event.error ?? event.message }))
32
- }
33
- port.addEventListener("message", onMessage as any)
34
- port.addEventListener("error", onError as any)
35
- Deferred.unsafeDone(latch, Effect.void)
36
- return Effect.sync(() => {
37
- port.removeEventListener("message", onMessage as any)
38
- port.removeEventListener("error", onError as any)
39
- })
40
- }),
41
- Effect.interruptible,
42
- Effect.forkScoped
43
- )
44
- yield* Deferred.await(latch)
45
-
46
- if ("start" in port) {
47
- port.start()
48
- }
49
-
50
- const send = (message: I, transfers?: ReadonlyArray<unknown>) =>
51
- Effect.try({
52
- try: () => port.postMessage([0, message], transfers as any),
53
- catch: (error) => new WorkerError({ reason: "send", error })
6
+ import * as Scope from "effect/Scope"
7
+
8
+ const platformWorkerImpl = Worker.makePlatform<globalThis.SharedWorker | globalThis.Worker | MessagePort>()({
9
+ setup({ scope, worker }) {
10
+ const port = "port" in worker ? worker.port : worker
11
+ return Effect.as(
12
+ Scope.addFinalizer(
13
+ scope,
14
+ Effect.sync(() => {
15
+ port.postMessage([1])
54
16
  })
55
-
56
- return { fiber, queue, send }
57
- })
17
+ ),
18
+ port
19
+ )
20
+ },
21
+ listen({ deferred, emit, port, scope }) {
22
+ function onMessage(event: MessageEvent) {
23
+ emit(event.data)
24
+ }
25
+ function onError(event: ErrorEvent) {
26
+ Deferred.unsafeDone(
27
+ deferred,
28
+ new WorkerError({ reason: "unknown", cause: event.error ?? event.message })
29
+ )
30
+ }
31
+ port.addEventListener("message", onMessage as any)
32
+ port.addEventListener("error", onError as any)
33
+ if ("start" in port) {
34
+ port.start()
35
+ }
36
+ return Scope.addFinalizer(
37
+ scope,
38
+ Effect.sync(() => {
39
+ port.removeEventListener("message", onMessage as any)
40
+ port.removeEventListener("error", onError as any)
41
+ })
42
+ )
58
43
  }
59
44
  })
60
45