@effect/platform-browser 0.18.2 → 0.18.3

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.
@@ -48,19 +48,24 @@ const platformWorkerImpl = /*#__PURE__*/Worker.PlatformWorker.of({
48
48
  }
49
49
  yield* _(Effect.addFinalizer(() => Effect.sync(() => port.postMessage([1]))));
50
50
  const queue = yield* _(Queue.unbounded());
51
- const fiber = yield* _(Effect.async((resume, signal) => {
52
- port.addEventListener("message", function (event) {
51
+ const fiber = yield* _(Effect.async(resume => {
52
+ function onMessage(event) {
53
53
  queue.unsafeOffer(event.data);
54
- }, {
55
- signal
56
- });
57
- port.addEventListener("error", function (event) {
54
+ }
55
+ function onError(event) {
58
56
  resume(Effect.fail((0, _WorkerError.WorkerError)("unknown", event.message)));
59
- }, {
60
- signal
57
+ }
58
+ port.addEventListener("message", onMessage);
59
+ port.addEventListener("error", onError);
60
+ return Effect.sync(() => {
61
+ port.removeEventListener("message", onMessage);
62
+ port.removeEventListener("error", onError);
61
63
  });
62
64
  }), Effect.interruptible, Effect.forkScoped);
63
- const send = (message, transfers) => Effect.sync(() => port.postMessage([0, message], transfers));
65
+ const send = (message, transfers) => Effect.try({
66
+ try: () => port.postMessage([0, message], transfers),
67
+ catch: error => (0, _WorkerError.WorkerError)("send", error.message)
68
+ });
64
69
  return {
65
70
  fiber,
66
71
  queue,
@@ -1 +1 @@
1
- {"version":3,"file":"worker.js","names":["Worker","_interopRequireWildcard","require","_WorkerError","Effect","Layer","Queue","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","platformWorkerImpl","PlatformWorker","of","PlatformWorkerTypeId","spawn","worker_","gen","_","worker","port","start","addFinalizer","sync","postMessage","queue","unbounded","fiber","async","resume","signal","addEventListener","event","unsafeOffer","data","fail","WorkerError","message","interruptible","forkScoped","send","transfers","layerWorker","exports","succeed","layerManager","provide","makePool","makePoolLayer"],"sources":["../../../src/internal/worker.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"worker.js","names":["Worker","_interopRequireWildcard","require","_WorkerError","Effect","Layer","Queue","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","platformWorkerImpl","PlatformWorker","of","PlatformWorkerTypeId","spawn","worker_","gen","_","worker","port","start","addFinalizer","sync","postMessage","queue","unbounded","fiber","async","resume","onMessage","event","unsafeOffer","data","onError","fail","WorkerError","message","addEventListener","removeEventListener","interruptible","forkScoped","send","transfers","try","catch","error","layerWorker","exports","succeed","layerManager","provide","makePool","makePoolLayer"],"sources":["../../../src/internal/worker.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -50,26 +50,28 @@ const platformRunnerImpl = /*#__PURE__*/Runner.PlatformRunner.of({
50
50
  }));
51
51
  const queue = yield* _(Queue.unbounded());
52
52
  const fiberId = yield* _(Effect.fiberId);
53
- const fiber = yield* _(Effect.async((resume, signal) => {
54
- port.addEventListener("message", function (event) {
53
+ const fiber = yield* _(Effect.async(resume => {
54
+ function onMessage(event) {
55
55
  const message = event.data;
56
56
  if (message[0] === 0) {
57
57
  queue.unsafeOffer(message[1]);
58
58
  } else {
59
59
  Effect.runFork(Queue.shutdown(queue));
60
60
  }
61
- }, {
62
- signal
63
- });
64
- port.addEventListener("messageerror", function (error) {
61
+ }
62
+ function onMessageError(error) {
65
63
  resume(Effect.fail((0, _WorkerError.WorkerError)("decode", error.message)));
66
- }, {
67
- signal
68
- });
69
- port.addEventListener("error", function (error) {
64
+ }
65
+ function onError(error) {
70
66
  resume(Effect.fail((0, _WorkerError.WorkerError)("unknown", error.message)));
71
- }, {
72
- signal
67
+ }
68
+ port.addEventListener("message", onMessage);
69
+ port.addEventListener("messageerror", onMessageError);
70
+ port.addEventListener("error", onError);
71
+ return Effect.sync(() => {
72
+ port.removeEventListener("message", onMessage);
73
+ port.removeEventListener("messageerror", onMessageError);
74
+ port.removeEventListener("error", onError);
73
75
  });
74
76
  }), Effect.forkDaemon);
75
77
  yield* _(Effect.addFinalizer(() => fiber.interruptAsFork(fiberId)));
@@ -1 +1 @@
1
- {"version":3,"file":"workerRunner.js","names":["_WorkerError","require","Runner","_interopRequireWildcard","Effect","Layer","Queue","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","platformRunnerImpl","PlatformRunner","of","PlatformRunnerTypeId","start","gen","_","port","self","async","resume","signal","addEventListener","event","ports","succeed","once","queue","unbounded","fiberId","fiber","message","data","unsafeOffer","runFork","shutdown","error","fail","WorkerError","forkDaemon","addFinalizer","interruptAsFork","send","transfer","sync","postMessage","layer","exports","make","process","options","provide"],"sources":["../../../src/internal/workerRunner.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"workerRunner.js","names":["_WorkerError","require","Runner","_interopRequireWildcard","Effect","Layer","Queue","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","platformRunnerImpl","PlatformRunner","of","PlatformRunnerTypeId","start","gen","_","port","self","async","resume","signal","addEventListener","event","ports","succeed","once","queue","unbounded","fiberId","fiber","onMessage","message","data","unsafeOffer","runFork","shutdown","onMessageError","error","fail","WorkerError","onError","sync","removeEventListener","forkDaemon","addFinalizer","interruptAsFork","send","transfer","postMessage","layer","exports","make","process","options","provide"],"sources":["../../../src/internal/workerRunner.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -17,19 +17,24 @@ const platformWorkerImpl = /*#__PURE__*/Worker.PlatformWorker.of({
17
17
  }
18
18
  yield* _(Effect.addFinalizer(() => Effect.sync(() => port.postMessage([1]))));
19
19
  const queue = yield* _(Queue.unbounded());
20
- const fiber = yield* _(Effect.async((resume, signal) => {
21
- port.addEventListener("message", function (event) {
20
+ const fiber = yield* _(Effect.async(resume => {
21
+ function onMessage(event) {
22
22
  queue.unsafeOffer(event.data);
23
- }, {
24
- signal
25
- });
26
- port.addEventListener("error", function (event) {
23
+ }
24
+ function onError(event) {
27
25
  resume(Effect.fail(WorkerError("unknown", event.message)));
28
- }, {
29
- signal
26
+ }
27
+ port.addEventListener("message", onMessage);
28
+ port.addEventListener("error", onError);
29
+ return Effect.sync(() => {
30
+ port.removeEventListener("message", onMessage);
31
+ port.removeEventListener("error", onError);
30
32
  });
31
33
  }), Effect.interruptible, Effect.forkScoped);
32
- const send = (message, transfers) => Effect.sync(() => port.postMessage([0, message], transfers));
34
+ const send = (message, transfers) => Effect.try({
35
+ try: () => port.postMessage([0, message], transfers),
36
+ catch: error => WorkerError("send", error.message)
37
+ });
33
38
  return {
34
39
  fiber,
35
40
  queue,
@@ -1 +1 @@
1
- {"version":3,"file":"worker.js","names":["Worker","WorkerError","Effect","Layer","Queue","platformWorkerImpl","PlatformWorker","of","PlatformWorkerTypeId","spawn","worker_","gen","_","worker","port","start","addFinalizer","sync","postMessage","queue","unbounded","fiber","async","resume","signal","addEventListener","event","unsafeOffer","data","fail","message","interruptible","forkScoped","send","transfers","layerWorker","succeed","layerManager","provide","makePool","makePoolLayer"],"sources":["../../../src/internal/worker.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,MAAM,MAAM,yBAAyB;AACjD,SAASC,WAAW,QAAQ,8BAA8B;AAC1D,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,KAAK,MAAM,cAAc;AAErC,MAAMC,kBAAkB,gBAAGL,MAAM,CAACM,cAAc,CAACC,EAAE,CAAC;EAClD,CAACP,MAAM,CAACQ,oBAAoB,GAAGR,MAAM,CAACQ,oBAAoB;EAC1DC,KAAKA,CAAOC,OAAgB;IAC1B,OAAOR,MAAM,CAACS,GAAG,CAAC,WAAUC,CAAC;MAC3B,MAAMC,MAAM,GAAGH,OAAsD;MACrE,IAAII,IAAqC;MACzC,IAAI,MAAM,IAAID,MAAM,EAAE;QACpBC,IAAI,GAAGD,MAAM,CAACC,IAAI;QAClBA,IAAI,CAACC,KAAK,EAAE;OACb,MAAM;QACLD,IAAI,GAAGD,MAAM;;MAGf,OAAOD,CAAC,CAACV,MAAM,CAACc,YAAY,CAAC,MAAMd,MAAM,CAACe,IAAI,CAAC,MAAMH,IAAI,CAACI,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;MAE7E,MAAMC,KAAK,GAAG,OAAOP,CAAC,CAACR,KAAK,CAACgB,SAAS,EAAmC,CAAC;MAE1E,MAAMC,KAAK,GAAG,OAAOT,CAAC,CACpBV,MAAM,CAACoB,KAAK,CAA4B,CAACC,MAAM,EAAEC,MAAM,KAAI;QACzDV,IAAI,CAACW,gBAAgB,CAAC,SAAS,EAAE,UAASC,KAAK;UAC7CP,KAAK,CAACQ,WAAW,CAAED,KAAsB,CAACE,IAAI,CAAC;QACjD,CAAC,EAAE;UAAEJ;QAAM,CAAE,CAAC;QACdV,IAAI,CAACW,gBAAgB,CAAC,OAAO,EAAE,UAASC,KAAK;UAC3CH,MAAM,CAACrB,MAAM,CAAC2B,IAAI,CAAC5B,WAAW,CAAC,SAAS,EAAGyB,KAAoB,CAACI,OAAO,CAAC,CAAC,CAAC;QAC5E,CAAC,EAAE;UAAEN;QAAM,CAAE,CAAC;MAChB,CAAC,CAAC,EACFtB,MAAM,CAAC6B,aAAa,EACpB7B,MAAM,CAAC8B,UAAU,CAClB;MAED,MAAMC,IAAI,GAAGA,CAACH,OAAU,EAAEI,SAAkC,KAC1DhC,MAAM,CAACe,IAAI,CAAC,MAAMH,IAAI,CAACI,WAAW,CAAC,CAAC,CAAC,EAAEY,OAAO,CAAC,EAAEI,SAAgB,CAAC,CAAC;MAErE,OAAO;QAAEb,KAAK;QAAEF,KAAK;QAAEc;MAAI,CAAE;IAC/B,CAAC,CAAC;EACJ;CACD,CAAC;AAEF;AACA,OAAO,MAAME,WAAW,gBAAGhC,KAAK,CAACiC,OAAO,CAACpC,MAAM,CAACM,cAAc,EAAED,kBAAkB,CAAC;AAEnF;AACA,OAAO,MAAMgC,YAAY,gBAAGlC,KAAK,CAACmC,OAAO,CAACH,WAAW,EAAEnC,MAAM,CAACqC,YAAY,CAAC;AAE3E;AACA,OAAO,MAAME,QAAQ,gBAAGvC,MAAM,CAACuC,QAAQ,EAA+C;AAEtF;AACA,OAAO,MAAMC,aAAa,gBAAGxC,MAAM,CAACwC,aAAa,CAA8CH,YAAY,CAAC"}
1
+ {"version":3,"file":"worker.js","names":["Worker","WorkerError","Effect","Layer","Queue","platformWorkerImpl","PlatformWorker","of","PlatformWorkerTypeId","spawn","worker_","gen","_","worker","port","start","addFinalizer","sync","postMessage","queue","unbounded","fiber","async","resume","onMessage","event","unsafeOffer","data","onError","fail","message","addEventListener","removeEventListener","interruptible","forkScoped","send","transfers","try","catch","error","layerWorker","succeed","layerManager","provide","makePool","makePoolLayer"],"sources":["../../../src/internal/worker.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,MAAM,MAAM,yBAAyB;AACjD,SAASC,WAAW,QAAQ,8BAA8B;AAC1D,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,KAAK,MAAM,cAAc;AAErC,MAAMC,kBAAkB,gBAAGL,MAAM,CAACM,cAAc,CAACC,EAAE,CAAC;EAClD,CAACP,MAAM,CAACQ,oBAAoB,GAAGR,MAAM,CAACQ,oBAAoB;EAC1DC,KAAKA,CAAOC,OAAgB;IAC1B,OAAOR,MAAM,CAACS,GAAG,CAAC,WAAUC,CAAC;MAC3B,MAAMC,MAAM,GAAGH,OAAsD;MACrE,IAAII,IAAqC;MACzC,IAAI,MAAM,IAAID,MAAM,EAAE;QACpBC,IAAI,GAAGD,MAAM,CAACC,IAAI;QAClBA,IAAI,CAACC,KAAK,EAAE;OACb,MAAM;QACLD,IAAI,GAAGD,MAAM;;MAGf,OAAOD,CAAC,CAACV,MAAM,CAACc,YAAY,CAAC,MAAMd,MAAM,CAACe,IAAI,CAAC,MAAMH,IAAI,CAACI,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;MAE7E,MAAMC,KAAK,GAAG,OAAOP,CAAC,CAACR,KAAK,CAACgB,SAAS,EAAmC,CAAC;MAE1E,MAAMC,KAAK,GAAG,OAAOT,CAAC,CACpBV,MAAM,CAACoB,KAAK,CAA6BC,MAAM,IAAI;QACjD,SAASC,SAASA,CAACC,KAAmB;UACpCN,KAAK,CAACO,WAAW,CAAED,KAAsB,CAACE,IAAI,CAAC;QACjD;QACA,SAASC,OAAOA,CAACH,KAAiB;UAChCF,MAAM,CAACrB,MAAM,CAAC2B,IAAI,CAAC5B,WAAW,CAAC,SAAS,EAAGwB,KAAoB,CAACK,OAAO,CAAC,CAAC,CAAC;QAC5E;QACAhB,IAAI,CAACiB,gBAAgB,CAAC,SAAS,EAAEP,SAAgB,CAAC;QAClDV,IAAI,CAACiB,gBAAgB,CAAC,OAAO,EAAEH,OAAc,CAAC;QAC9C,OAAO1B,MAAM,CAACe,IAAI,CAAC,MAAK;UACtBH,IAAI,CAACkB,mBAAmB,CAAC,SAAS,EAAER,SAAgB,CAAC;UACrDV,IAAI,CAACkB,mBAAmB,CAAC,OAAO,EAAEJ,OAAc,CAAC;QACnD,CAAC,CAAC;MACJ,CAAC,CAAC,EACF1B,MAAM,CAAC+B,aAAa,EACpB/B,MAAM,CAACgC,UAAU,CAClB;MAED,MAAMC,IAAI,GAAGA,CAACL,OAAU,EAAEM,SAAkC,KAC1DlC,MAAM,CAACmC,GAAG,CAAC;QACTA,GAAG,EAAEA,CAAA,KAAMvB,IAAI,CAACI,WAAW,CAAC,CAAC,CAAC,EAAEY,OAAO,CAAC,EAAEM,SAAgB,CAAC;QAC3DE,KAAK,EAAGC,KAAK,IAAKtC,WAAW,CAAC,MAAM,EAAGsC,KAAa,CAACT,OAAO;OAC7D,CAAC;MAEJ,OAAO;QAAET,KAAK;QAAEF,KAAK;QAAEgB;MAAI,CAAE;IAC/B,CAAC,CAAC;EACJ;CACD,CAAC;AAEF;AACA,OAAO,MAAMK,WAAW,gBAAGrC,KAAK,CAACsC,OAAO,CAACzC,MAAM,CAACM,cAAc,EAAED,kBAAkB,CAAC;AAEnF;AACA,OAAO,MAAMqC,YAAY,gBAAGvC,KAAK,CAACwC,OAAO,CAACH,WAAW,EAAExC,MAAM,CAAC0C,YAAY,CAAC;AAE3E;AACA,OAAO,MAAME,QAAQ,gBAAG5C,MAAM,CAAC4C,QAAQ,EAA+C;AAEtF;AACA,OAAO,MAAMC,aAAa,gBAAG7C,MAAM,CAAC6C,aAAa,CAA8CH,YAAY,CAAC"}
@@ -19,26 +19,28 @@ const platformRunnerImpl = /*#__PURE__*/Runner.PlatformRunner.of({
19
19
  }));
20
20
  const queue = yield* _(Queue.unbounded());
21
21
  const fiberId = yield* _(Effect.fiberId);
22
- const fiber = yield* _(Effect.async((resume, signal) => {
23
- port.addEventListener("message", function (event) {
22
+ const fiber = yield* _(Effect.async(resume => {
23
+ function onMessage(event) {
24
24
  const message = event.data;
25
25
  if (message[0] === 0) {
26
26
  queue.unsafeOffer(message[1]);
27
27
  } else {
28
28
  Effect.runFork(Queue.shutdown(queue));
29
29
  }
30
- }, {
31
- signal
32
- });
33
- port.addEventListener("messageerror", function (error) {
30
+ }
31
+ function onMessageError(error) {
34
32
  resume(Effect.fail(WorkerError("decode", error.message)));
35
- }, {
36
- signal
37
- });
38
- port.addEventListener("error", function (error) {
33
+ }
34
+ function onError(error) {
39
35
  resume(Effect.fail(WorkerError("unknown", error.message)));
40
- }, {
41
- signal
36
+ }
37
+ port.addEventListener("message", onMessage);
38
+ port.addEventListener("messageerror", onMessageError);
39
+ port.addEventListener("error", onError);
40
+ return Effect.sync(() => {
41
+ port.removeEventListener("message", onMessage);
42
+ port.removeEventListener("messageerror", onMessageError);
43
+ port.removeEventListener("error", onError);
42
44
  });
43
45
  }), Effect.forkDaemon);
44
46
  yield* _(Effect.addFinalizer(() => fiber.interruptAsFork(fiberId)));
@@ -1 +1 @@
1
- {"version":3,"file":"workerRunner.js","names":["WorkerError","Runner","Effect","Layer","Queue","platformRunnerImpl","PlatformRunner","of","PlatformRunnerTypeId","start","gen","_","port","self","async","resume","signal","addEventListener","event","ports","succeed","once","queue","unbounded","fiberId","fiber","message","data","unsafeOffer","runFork","shutdown","error","fail","forkDaemon","addFinalizer","interruptAsFork","send","transfer","sync","postMessage","layer","make","process","options","provide"],"sources":["../../../src/internal/workerRunner.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"workerRunner.js","names":["WorkerError","Runner","Effect","Layer","Queue","platformRunnerImpl","PlatformRunner","of","PlatformRunnerTypeId","start","gen","_","port","self","async","resume","signal","addEventListener","event","ports","succeed","once","queue","unbounded","fiberId","fiber","onMessage","message","data","unsafeOffer","runFork","shutdown","onMessageError","error","fail","onError","sync","removeEventListener","forkDaemon","addFinalizer","interruptAsFork","send","transfer","postMessage","layer","make","process","options","provide"],"sources":["../../../src/internal/workerRunner.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.18.2",
3
+ "version": "0.18.3",
4
4
  "description": "Unified interfaces for common platform-specific services",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -10,7 +10,7 @@
10
10
  "sideEffects": false,
11
11
  "author": "Effect contributors",
12
12
  "dependencies": {
13
- "@effect/platform": "0.30.2"
13
+ "@effect/platform": "0.30.3"
14
14
  },
15
15
  "peerDependencies": {
16
16
  "effect": "2.0.0-next.55"
@@ -22,20 +22,29 @@ const platformWorkerImpl = Worker.PlatformWorker.of({
22
22
  const queue = yield* _(Queue.unbounded<Worker.BackingWorker.Message<O>>())
23
23
 
24
24
  const fiber = yield* _(
25
- Effect.async<never, WorkerError, never>((resume, signal) => {
26
- port.addEventListener("message", function(event) {
25
+ Effect.async<never, WorkerError, never>((resume) => {
26
+ function onMessage(event: MessageEvent) {
27
27
  queue.unsafeOffer((event as MessageEvent).data)
28
- }, { signal })
29
- port.addEventListener("error", function(event) {
28
+ }
29
+ function onError(event: ErrorEvent) {
30
30
  resume(Effect.fail(WorkerError("unknown", (event as ErrorEvent).message)))
31
- }, { signal })
31
+ }
32
+ port.addEventListener("message", onMessage as any)
33
+ port.addEventListener("error", onError as any)
34
+ return Effect.sync(() => {
35
+ port.removeEventListener("message", onMessage as any)
36
+ port.removeEventListener("error", onError as any)
37
+ })
32
38
  }),
33
39
  Effect.interruptible,
34
40
  Effect.forkScoped
35
41
  )
36
42
 
37
43
  const send = (message: I, transfers?: ReadonlyArray<unknown>) =>
38
- Effect.sync(() => port.postMessage([0, message], transfers as any))
44
+ Effect.try({
45
+ try: () => port.postMessage([0, message], transfers as any),
46
+ catch: (error) => WorkerError("send", (error as any).message)
47
+ })
39
48
 
40
49
  return { fiber, queue, send }
41
50
  })
@@ -22,21 +22,29 @@ const platformRunnerImpl = Runner.PlatformRunner.of({
22
22
  const queue = yield* _(Queue.unbounded<I>())
23
23
  const fiberId = yield* _(Effect.fiberId)
24
24
  const fiber = yield* _(
25
- Effect.async<never, WorkerError, never>((resume, signal) => {
26
- port.addEventListener("message", function(event) {
25
+ Effect.async<never, WorkerError, never>((resume) => {
26
+ function onMessage(event: MessageEvent) {
27
27
  const message = (event as MessageEvent).data as Runner.BackingRunner.Message<I>
28
28
  if (message[0] === 0) {
29
29
  queue.unsafeOffer(message[1])
30
30
  } else {
31
31
  Effect.runFork(Queue.shutdown(queue))
32
32
  }
33
- }, { signal })
34
- port.addEventListener("messageerror", function(error) {
33
+ }
34
+ function onMessageError(error: ErrorEvent) {
35
35
  resume(Effect.fail(WorkerError("decode", (error as ErrorEvent).message)))
36
- }, { signal })
37
- port.addEventListener("error", function(error) {
36
+ }
37
+ function onError(error: ErrorEvent) {
38
38
  resume(Effect.fail(WorkerError("unknown", (error as ErrorEvent).message)))
39
- }, { signal })
39
+ }
40
+ port.addEventListener("message", onMessage as any)
41
+ port.addEventListener("messageerror", onMessageError as any)
42
+ port.addEventListener("error", onError as any)
43
+ return Effect.sync(() => {
44
+ port.removeEventListener("message", onMessage as any)
45
+ port.removeEventListener("messageerror", onMessageError as any)
46
+ port.removeEventListener("error", onError as any)
47
+ })
40
48
  }),
41
49
  Effect.forkDaemon
42
50
  )