@effect/platform-browser 0.33.29 → 0.35.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.
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.layerWorker = exports.layerManager = exports.layer = void 0;
7
7
  var Worker = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/Worker"));
8
8
  var _WorkerError = /*#__PURE__*/require("@effect/platform/WorkerError");
9
+ var Deferred = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Deferred"));
9
10
  var Effect = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Effect"));
10
11
  var Layer = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Layer"));
11
12
  var Queue = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Queue"));
@@ -47,6 +48,7 @@ const platformWorkerImpl = /*#__PURE__*/Worker.PlatformWorker.of({
47
48
  }
48
49
  yield* _(Effect.addFinalizer(() => Effect.sync(() => port.postMessage([1]))));
49
50
  const queue = yield* _(Queue.unbounded());
51
+ const latch = yield* Deferred.make();
50
52
  const fiber = yield* _(Effect.async(resume => {
51
53
  function onMessage(event) {
52
54
  queue.unsafeOffer(event.data);
@@ -59,12 +61,13 @@ const platformWorkerImpl = /*#__PURE__*/Worker.PlatformWorker.of({
59
61
  }
60
62
  port.addEventListener("message", onMessage);
61
63
  port.addEventListener("error", onError);
64
+ Deferred.unsafeDone(latch, Effect.void);
62
65
  return Effect.sync(() => {
63
66
  port.removeEventListener("message", onMessage);
64
67
  port.removeEventListener("error", onError);
65
68
  });
66
69
  }), Effect.interruptible, Effect.forkScoped);
67
- yield* _(Effect.yieldNow());
70
+ yield* Deferred.await(latch);
68
71
  if ("start" in port) {
69
72
  port.start();
70
73
  }
@@ -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","hasOwnProperty","call","i","set","platformWorkerImpl","PlatformWorker","of","PlatformWorkerTypeId","spawn","worker_","gen","_","worker","port","addFinalizer","sync","postMessage","queue","unbounded","fiber","async","resume","onMessage","event","unsafeOffer","data","onError","WorkerError","reason","error","message","addEventListener","removeEventListener","interruptible","forkScoped","yieldNow","start","send","transfers","try","catch","layerWorker","exports","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","_interopRequireWildcard","require","_WorkerError","Deferred","Effect","Layer","Queue","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","platformWorkerImpl","PlatformWorker","of","PlatformWorkerTypeId","spawn","worker_","gen","_","worker","port","addFinalizer","sync","postMessage","queue","unbounded","latch","make","fiber","async","resume","onMessage","event","unsafeOffer","data","onError","WorkerError","reason","error","message","addEventListener","unsafeDone","void","removeEventListener","interruptible","forkScoped","await","start","send","transfers","try","catch","layerWorker","exports","succeed","layerManager","provide","layer","merge","layerSpawner"],"sources":["../../../src/internal/worker.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,6 @@
1
1
  import * as Worker from "@effect/platform/Worker";
2
2
  import { WorkerError } from "@effect/platform/WorkerError";
3
+ import * as Deferred from "effect/Deferred";
3
4
  import * as Effect from "effect/Effect";
4
5
  import * as Layer from "effect/Layer";
5
6
  import * as Queue from "effect/Queue";
@@ -16,6 +17,7 @@ const platformWorkerImpl = /*#__PURE__*/Worker.PlatformWorker.of({
16
17
  }
17
18
  yield* _(Effect.addFinalizer(() => Effect.sync(() => port.postMessage([1]))));
18
19
  const queue = yield* _(Queue.unbounded());
20
+ const latch = yield* Deferred.make();
19
21
  const fiber = yield* _(Effect.async(resume => {
20
22
  function onMessage(event) {
21
23
  queue.unsafeOffer(event.data);
@@ -28,12 +30,13 @@ const platformWorkerImpl = /*#__PURE__*/Worker.PlatformWorker.of({
28
30
  }
29
31
  port.addEventListener("message", onMessage);
30
32
  port.addEventListener("error", onError);
33
+ Deferred.unsafeDone(latch, Effect.void);
31
34
  return Effect.sync(() => {
32
35
  port.removeEventListener("message", onMessage);
33
36
  port.removeEventListener("error", onError);
34
37
  });
35
38
  }), Effect.interruptible, Effect.forkScoped);
36
- yield* _(Effect.yieldNow());
39
+ yield* Deferred.await(latch);
37
40
  if ("start" in port) {
38
41
  port.start();
39
42
  }
@@ -1 +1 @@
1
- {"version":3,"file":"worker.js","names":["Worker","WorkerError","Effect","Layer","Queue","platformWorkerImpl","PlatformWorker","of","PlatformWorkerTypeId","spawn","worker_","gen","_","worker","port","addFinalizer","sync","postMessage","queue","unbounded","fiber","async","resume","onMessage","event","unsafeOffer","data","onError","reason","error","message","addEventListener","removeEventListener","interruptible","forkScoped","yieldNow","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","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":"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,cAAc,CAACC,EAAE,CAAC;EAClD,CAACR,MAAM,CAACS,oBAAoB,GAAGT,MAAM,CAACS,oBAAoB;EAC1DC,KAAKA,CAAOC,OAAgB;IAC1B,OAAOR,MAAM,CAACS,GAAG,CAAC,WAAUC,CAAC;MAC3B,MAAMC,MAAM,GAAGH,OAAoE;MACnF,IAAII,IAAqC;MACzC,IAAI,MAAM,IAAID,MAAM,EAAE;QACpBC,IAAI,GAAGD,MAAM,CAACC,IAAI;MACpB,CAAC,MAAM;QACLA,IAAI,GAAGD,MAAM;MACf;MAEA,OAAOD,CAAC,CAACV,MAAM,CAACa,YAAY,CAAC,MAAMb,MAAM,CAACc,IAAI,CAAC,MAAMF,IAAI,CAACG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;MAE7E,MAAMC,KAAK,GAAG,OAAON,CAAC,CAACR,KAAK,CAACe,SAAS,EAAmC,CAAC;MAC1E,MAAMC,KAAK,GAAG,OAAOnB,QAAQ,CAACoB,IAAI,EAAQ;MAE1C,MAAMC,KAAK,GAAG,OAAOV,CAAC,CACpBV,MAAM,CAACqB,KAAK,CAA6BC,MAAM,IAAI;QACjD,SAASC,SAASA,CAACC,KAAmB;UACpCR,KAAK,CAACS,WAAW,CAAED,KAAsB,CAACE,IAAI,CAAC;QACjD;QACA,SAASC,OAAOA,CAACH,KAAiB;UAChCF,MAAM,CAAC,IAAIxB,WAAW,CAAC;YAAE8B,MAAM,EAAE,SAAS;YAAEC,KAAK,EAAEL,KAAK,CAACK,KAAK,IAAIL,KAAK,CAACM;UAAO,CAAE,CAAC,CAAC;QACrF;QACAlB,IAAI,CAACmB,gBAAgB,CAAC,SAAS,EAAER,SAAgB,CAAC;QAClDX,IAAI,CAACmB,gBAAgB,CAAC,OAAO,EAAEJ,OAAc,CAAC;QAC9C5B,QAAQ,CAACiC,UAAU,CAACd,KAAK,EAAElB,MAAM,CAACiC,IAAI,CAAC;QACvC,OAAOjC,MAAM,CAACc,IAAI,CAAC,MAAK;UACtBF,IAAI,CAACsB,mBAAmB,CAAC,SAAS,EAAEX,SAAgB,CAAC;UACrDX,IAAI,CAACsB,mBAAmB,CAAC,OAAO,EAAEP,OAAc,CAAC;QACnD,CAAC,CAAC;MACJ,CAAC,CAAC,EACF3B,MAAM,CAACmC,aAAa,EACpBnC,MAAM,CAACoC,UAAU,CAClB;MACD,OAAOrC,QAAQ,CAACsC,KAAK,CAACnB,KAAK,CAAC;MAE5B,IAAI,OAAO,IAAIN,IAAI,EAAE;QACnBA,IAAI,CAAC0B,KAAK,EAAE;MACd;MAEA,MAAMC,IAAI,GAAGA,CAACT,OAAU,EAAEU,SAAkC,KAC1DxC,MAAM,CAACyC,GAAG,CAAC;QACTA,GAAG,EAAEA,CAAA,KAAM7B,IAAI,CAACG,WAAW,CAAC,CAAC,CAAC,EAAEe,OAAO,CAAC,EAAEU,SAAgB,CAAC;QAC3DE,KAAK,EAAGb,KAAK,IAAK,IAAI/B,WAAW,CAAC;UAAE8B,MAAM,EAAE,MAAM;UAAEC;QAAK,CAAE;OAC5D,CAAC;MAEJ,OAAO;QAAET,KAAK;QAAEJ,KAAK;QAAEuB;MAAI,CAAE;IAC/B,CAAC,CAAC;EACJ;CACD,CAAC;AAEF;AACA,OAAO,MAAMI,WAAW,gBAAG1C,KAAK,CAAC2C,OAAO,CAAC/C,MAAM,CAACO,cAAc,EAAED,kBAAkB,CAAC;AAEnF;AACA,OAAO,MAAM0C,YAAY,gBAAG5C,KAAK,CAAC6C,OAAO,CAACjD,MAAM,CAACgD,YAAY,EAAEF,WAAW,CAAC;AAE3E;AACA,OAAO,MAAMI,KAAK,GAAIxC,KAAgF,IACpGN,KAAK,CAAC+C,KAAK,CAACH,YAAY,EAAEhD,MAAM,CAACoD,YAAY,CAAC1C,KAAK,CAAC,CAAC","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/platform-browser",
3
- "version": "0.33.29",
3
+ "version": "0.35.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.1"
14
14
  },
15
15
  "peerDependencies": {
16
- "@effect/platform": "^0.53.14",
17
- "effect": "^3.2.3"
16
+ "@effect/platform": "^0.55.0",
17
+ "effect": "^3.2.5"
18
18
  },
19
19
  "publishConfig": {
20
20
  "provenance": true
@@ -1,5 +1,6 @@
1
1
  import * as Worker from "@effect/platform/Worker"
2
2
  import { WorkerError } from "@effect/platform/WorkerError"
3
+ import * as Deferred from "effect/Deferred"
3
4
  import * as Effect from "effect/Effect"
4
5
  import * as Layer from "effect/Layer"
5
6
  import * as Queue from "effect/Queue"
@@ -19,6 +20,7 @@ const platformWorkerImpl = Worker.PlatformWorker.of({
19
20
  yield* _(Effect.addFinalizer(() => Effect.sync(() => port.postMessage([1]))))
20
21
 
21
22
  const queue = yield* _(Queue.unbounded<Worker.BackingWorker.Message<O>>())
23
+ const latch = yield* Deferred.make<void>()
22
24
 
23
25
  const fiber = yield* _(
24
26
  Effect.async<never, WorkerError, never>((resume) => {
@@ -30,6 +32,7 @@ const platformWorkerImpl = Worker.PlatformWorker.of({
30
32
  }
31
33
  port.addEventListener("message", onMessage as any)
32
34
  port.addEventListener("error", onError as any)
35
+ Deferred.unsafeDone(latch, Effect.void)
33
36
  return Effect.sync(() => {
34
37
  port.removeEventListener("message", onMessage as any)
35
38
  port.removeEventListener("error", onError as any)
@@ -38,7 +41,7 @@ const platformWorkerImpl = Worker.PlatformWorker.of({
38
41
  Effect.interruptible,
39
42
  Effect.forkScoped
40
43
  )
41
- yield* _(Effect.yieldNow())
44
+ yield* Deferred.await(latch)
42
45
 
43
46
  if ("start" in port) {
44
47
  port.start()