@effect/platform-browser
Advanced tools
Comparing version
{ | ||
"name": "@effect/platform-browser", | ||
"version": "0.14.6", | ||
"version": "0.14.7", | ||
"description": "Unified interfaces for common platform-specific services", | ||
@@ -32,3 +32,3 @@ "main": "dist/effect-platform-browser.cjs.js", | ||
"dependencies": { | ||
"@effect/platform": "^0.26.5" | ||
"@effect/platform": "^0.26.6" | ||
}, | ||
@@ -35,0 +35,0 @@ "devDependencies": { |
import * as Worker from "@effect/platform/Worker" | ||
import { WorkerError } from "@effect/platform/WorkerError" | ||
import { Fiber } from "effect" | ||
import * as Effect from "effect/Effect" | ||
@@ -25,14 +24,10 @@ import * as Layer from "effect/Layer" | ||
const fiber = yield* _( | ||
Effect.async<never, WorkerError, never>((resume, signal) => { | ||
port.addEventListener("message", function(event) { | ||
queue.unsafeOffer((event as MessageEvent).data) | ||
}, { signal }) | ||
port.addEventListener("error", function(event) { | ||
resume(Effect.fail(WorkerError("unknown", (event as ErrorEvent).message))) | ||
}, { signal }) | ||
}), | ||
Effect.forkScoped | ||
) | ||
const join = Fiber.join(fiber) | ||
const run = Effect.async<never, WorkerError, never>((resume, signal) => { | ||
port.addEventListener("message", function(event) { | ||
queue.unsafeOffer((event as MessageEvent).data) | ||
}, { signal }) | ||
port.addEventListener("error", function(event) { | ||
resume(Effect.fail(WorkerError("unknown", (event as ErrorEvent).message))) | ||
}, { signal }) | ||
}) | ||
@@ -42,3 +37,3 @@ const send = (message: I, transfers?: ReadonlyArray<unknown>) => | ||
return { join, queue, send } | ||
return { run, queue, send } | ||
}) | ||
@@ -45,0 +40,0 @@ } |
@@ -7,3 +7,2 @@ 'use strict'; | ||
var WorkerError = require('@effect/platform/WorkerError'); | ||
var effect = require('effect'); | ||
var Effect = require('effect/Effect'); | ||
@@ -50,3 +49,3 @@ var Layer = require('effect/Layer'); | ||
const queue = yield* _(Queue__namespace.unbounded()); | ||
const fiber = yield* _(Effect__namespace.async((resume, signal) => { | ||
const run = Effect__namespace.async((resume, signal) => { | ||
port.addEventListener("message", function (event) { | ||
@@ -62,7 +61,6 @@ queue.unsafeOffer(event.data); | ||
}); | ||
}), Effect__namespace.forkScoped); | ||
const join = effect.Fiber.join(fiber); | ||
}); | ||
const send = (message, transfers) => Effect__namespace.sync(() => port.postMessage([0, message], transfers)); | ||
return { | ||
join, | ||
run, | ||
queue, | ||
@@ -69,0 +67,0 @@ send |
@@ -7,3 +7,2 @@ 'use strict'; | ||
var WorkerError = require('@effect/platform/WorkerError'); | ||
var effect = require('effect'); | ||
var Effect = require('effect/Effect'); | ||
@@ -50,3 +49,3 @@ var Layer = require('effect/Layer'); | ||
const queue = yield* _(Queue__namespace.unbounded()); | ||
const fiber = yield* _(Effect__namespace.async((resume, signal) => { | ||
const run = Effect__namespace.async((resume, signal) => { | ||
port.addEventListener("message", function (event) { | ||
@@ -62,7 +61,6 @@ queue.unsafeOffer(event.data); | ||
}); | ||
}), Effect__namespace.forkScoped); | ||
const join = effect.Fiber.join(fiber); | ||
}); | ||
const send = (message, transfers) => Effect__namespace.sync(() => port.postMessage([0, message], transfers)); | ||
return { | ||
join, | ||
run, | ||
queue, | ||
@@ -69,0 +67,0 @@ send |
import * as Worker from '@effect/platform/Worker'; | ||
export * from '@effect/platform/Worker'; | ||
import { WorkerError } from '@effect/platform/WorkerError'; | ||
import { Fiber } from 'effect'; | ||
import * as Effect from 'effect/Effect'; | ||
@@ -23,3 +22,3 @@ import * as Layer from 'effect/Layer'; | ||
const queue = yield* _(Queue.unbounded()); | ||
const fiber = yield* _(Effect.async((resume, signal) => { | ||
const run = Effect.async((resume, signal) => { | ||
port.addEventListener("message", function (event) { | ||
@@ -35,7 +34,6 @@ queue.unsafeOffer(event.data); | ||
}); | ||
}), Effect.forkScoped); | ||
const join = Fiber.join(fiber); | ||
}); | ||
const send = (message, transfers) => Effect.sync(() => port.postMessage([0, message], transfers)); | ||
return { | ||
join, | ||
run, | ||
queue, | ||
@@ -42,0 +40,0 @@ send |
104170
-0.46%2708
-0.4%Updated