@effect/platform-browser 0.33.7 → 0.33.9
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.
- package/BrowserStream/package.json +6 -0
- package/dist/cjs/BrowserStream.js +47 -0
- package/dist/cjs/BrowserStream.js.map +1 -0
- package/dist/cjs/index.js +3 -1
- package/dist/cjs/internal/stream.js +43 -0
- package/dist/cjs/internal/stream.js.map +1 -0
- package/dist/cjs/internal/workerRunner.js +6 -6
- package/dist/cjs/internal/workerRunner.js.map +1 -1
- package/dist/dts/BrowserStream.d.ts +15 -0
- package/dist/dts/BrowserStream.d.ts.map +1 -0
- package/dist/dts/index.d.ts +4 -0
- package/dist/dts/index.d.ts.map +1 -1
- package/dist/dts/internal/stream.d.ts +5 -0
- package/dist/dts/internal/stream.d.ts.map +1 -0
- package/dist/esm/BrowserStream.js +15 -0
- package/dist/esm/BrowserStream.js.map +1 -0
- package/dist/esm/index.js +4 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/internal/stream.js +9 -0
- package/dist/esm/internal/stream.js.map +1 -0
- package/dist/esm/internal/workerRunner.js +6 -6
- package/dist/esm/internal/workerRunner.js.map +1 -1
- package/package.json +11 -3
- package/src/BrowserStream.ts +24 -0
- package/src/index.ts +5 -0
- package/src/internal/stream.ts +17 -0
- package/src/internal/workerRunner.ts +6 -6
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.fromEventListenerWindow = exports.fromEventListenerDocument = void 0;
|
|
7
|
+
var internal = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./internal/stream.js"));
|
|
8
|
+
function _getRequireWildcardCache(e) {
|
|
9
|
+
if ("function" != typeof WeakMap) return null;
|
|
10
|
+
var r = new WeakMap(),
|
|
11
|
+
t = new WeakMap();
|
|
12
|
+
return (_getRequireWildcardCache = function (e) {
|
|
13
|
+
return e ? t : r;
|
|
14
|
+
})(e);
|
|
15
|
+
}
|
|
16
|
+
function _interopRequireWildcard(e, r) {
|
|
17
|
+
if (!r && e && e.__esModule) return e;
|
|
18
|
+
if (null === e || "object" != typeof e && "function" != typeof e) return {
|
|
19
|
+
default: e
|
|
20
|
+
};
|
|
21
|
+
var t = _getRequireWildcardCache(r);
|
|
22
|
+
if (t && t.has(e)) return t.get(e);
|
|
23
|
+
var n = {
|
|
24
|
+
__proto__: null
|
|
25
|
+
},
|
|
26
|
+
a = Object.defineProperty && Object.getOwnPropertyDescriptor;
|
|
27
|
+
for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) {
|
|
28
|
+
var i = a ? Object.getOwnPropertyDescriptor(e, u) : null;
|
|
29
|
+
i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u];
|
|
30
|
+
}
|
|
31
|
+
return n.default = e, t && t.set(e, n), n;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* @since 1.0.0
|
|
35
|
+
*/
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* Creates a `Stream` from window.addEventListener.
|
|
39
|
+
* @since 1.0.0
|
|
40
|
+
*/
|
|
41
|
+
const fromEventListenerWindow = exports.fromEventListenerWindow = internal.fromEventListenerWindow;
|
|
42
|
+
/**
|
|
43
|
+
* Creates a `Stream` from document.addEventListener.
|
|
44
|
+
* @since 1.0.0
|
|
45
|
+
*/
|
|
46
|
+
const fromEventListenerDocument = exports.fromEventListenerDocument = internal.fromEventListenerDocument;
|
|
47
|
+
//# sourceMappingURL=BrowserStream.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BrowserStream.js","names":["internal","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","fromEventListenerWindow","exports","fromEventListenerDocument"],"sources":["../../src/BrowserStream.ts"],"sourcesContent":[null],"mappings":";;;;;;AAKA,IAAAA,QAAA,gBAAAC,uBAAA,eAAAC,OAAA;AAAgD,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,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA;IAAA,IAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA;IAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA;EAAA;EAAA,OAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA;AALhD;;;;AAOA;;;;AAIO,MAAMW,uBAAuB,GAAAC,OAAA,CAAAD,uBAAA,GAGIvB,QAAQ,CAACuB,uBAAuB;AAExE;;;;AAIO,MAAME,yBAAyB,GAAAD,OAAA,CAAAC,yBAAA,GAGIzB,QAAQ,CAACyB,yBAAyB","ignoreList":[]}
|
package/dist/cjs/index.js
CHANGED
|
@@ -3,13 +3,15 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.Clipboard = exports.BrowserWorkerRunner = exports.BrowserWorker = exports.BrowserRuntime = exports.BrowserKeyValueStore = exports.BrowserHttpClient = void 0;
|
|
6
|
+
exports.Clipboard = exports.BrowserWorkerRunner = exports.BrowserWorker = exports.BrowserStream = exports.BrowserRuntime = exports.BrowserKeyValueStore = exports.BrowserHttpClient = void 0;
|
|
7
7
|
var _BrowserHttpClient = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./BrowserHttpClient.js"));
|
|
8
8
|
exports.BrowserHttpClient = _BrowserHttpClient;
|
|
9
9
|
var _BrowserKeyValueStore = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./BrowserKeyValueStore.js"));
|
|
10
10
|
exports.BrowserKeyValueStore = _BrowserKeyValueStore;
|
|
11
11
|
var _BrowserRuntime = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./BrowserRuntime.js"));
|
|
12
12
|
exports.BrowserRuntime = _BrowserRuntime;
|
|
13
|
+
var _BrowserStream = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./BrowserStream.js"));
|
|
14
|
+
exports.BrowserStream = _BrowserStream;
|
|
13
15
|
var _BrowserWorker = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./BrowserWorker.js"));
|
|
14
16
|
exports.BrowserWorker = _BrowserWorker;
|
|
15
17
|
var _BrowserWorkerRunner = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./BrowserWorkerRunner.js"));
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.fromEventListenerWindow = exports.fromEventListenerDocument = void 0;
|
|
7
|
+
var Stream = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Stream"));
|
|
8
|
+
function _getRequireWildcardCache(e) {
|
|
9
|
+
if ("function" != typeof WeakMap) return null;
|
|
10
|
+
var r = new WeakMap(),
|
|
11
|
+
t = new WeakMap();
|
|
12
|
+
return (_getRequireWildcardCache = function (e) {
|
|
13
|
+
return e ? t : r;
|
|
14
|
+
})(e);
|
|
15
|
+
}
|
|
16
|
+
function _interopRequireWildcard(e, r) {
|
|
17
|
+
if (!r && e && e.__esModule) return e;
|
|
18
|
+
if (null === e || "object" != typeof e && "function" != typeof e) return {
|
|
19
|
+
default: e
|
|
20
|
+
};
|
|
21
|
+
var t = _getRequireWildcardCache(r);
|
|
22
|
+
if (t && t.has(e)) return t.get(e);
|
|
23
|
+
var n = {
|
|
24
|
+
__proto__: null
|
|
25
|
+
},
|
|
26
|
+
a = Object.defineProperty && Object.getOwnPropertyDescriptor;
|
|
27
|
+
for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) {
|
|
28
|
+
var i = a ? Object.getOwnPropertyDescriptor(e, u) : null;
|
|
29
|
+
i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u];
|
|
30
|
+
}
|
|
31
|
+
return n.default = e, t && t.set(e, n), n;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* @since 1.0.0
|
|
35
|
+
*/
|
|
36
|
+
|
|
37
|
+
/** @internal */
|
|
38
|
+
const fromEventListenerWindow = (type, options) => Stream.fromEventListener(window, type, options);
|
|
39
|
+
/** @internal */
|
|
40
|
+
exports.fromEventListenerWindow = fromEventListenerWindow;
|
|
41
|
+
const fromEventListenerDocument = (type, options) => Stream.fromEventListener(document, type, options);
|
|
42
|
+
exports.fromEventListenerDocument = fromEventListenerDocument;
|
|
43
|
+
//# sourceMappingURL=stream.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stream.js","names":["Stream","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","fromEventListenerWindow","type","options","fromEventListener","window","exports","fromEventListenerDocument","document"],"sources":["../../../src/internal/stream.ts"],"sourcesContent":[null],"mappings":";;;;;;AAIA,IAAAA,MAAA,gBAAAC,uBAAA,eAAAC,OAAA;AAAuC,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,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA;IAAA,IAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA;IAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA;EAAA;EAAA,OAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA;AAJvC;;;;AAMA;AACO,MAAMW,uBAAuB,GAAGA,CACrCC,IAAO,EACPC,OAA2D,KACxDzB,MAAM,CAAC0B,iBAAiB,CAAoBC,MAAM,EAAEH,IAAI,EAAEC,OAAO,CAAC;AAEvE;AAAAG,OAAA,CAAAL,uBAAA,GAAAA,uBAAA;AACO,MAAMM,yBAAyB,GAAGA,CACvCL,IAAO,EACPC,OAA2D,KACxDzB,MAAM,CAAC0B,iBAAiB,CAAsBI,QAAQ,EAAEN,IAAI,EAAEC,OAAO,CAAC;AAAAG,OAAA,CAAAC,yBAAA,GAAAA,yBAAA","ignoreList":[]}
|
|
@@ -42,16 +42,16 @@ const cachedPorts = /*#__PURE__*/(0, _GlobalValue.globalValue)("@effect/platform
|
|
|
42
42
|
function globalHandleConnect(event) {
|
|
43
43
|
cachedPorts.add(event.ports[0]);
|
|
44
44
|
}
|
|
45
|
-
if ("onconnect" in self) {
|
|
45
|
+
if (typeof self !== "undefined" && "onconnect" in self) {
|
|
46
46
|
self.onconnect = globalHandleConnect;
|
|
47
47
|
}
|
|
48
48
|
const platformRunnerImpl = /*#__PURE__*/Runner.PlatformRunner.of({
|
|
49
49
|
[Runner.PlatformRunnerTypeId]: Runner.PlatformRunnerTypeId,
|
|
50
50
|
start(shutdown) {
|
|
51
|
-
return Effect.gen(function* (
|
|
51
|
+
return Effect.gen(function* () {
|
|
52
52
|
let currentPortId = 0;
|
|
53
|
-
const queue = yield*
|
|
54
|
-
const runFork = yield*
|
|
53
|
+
const queue = yield* Queue.unbounded();
|
|
54
|
+
const runFork = yield* FiberSet.makeRuntime();
|
|
55
55
|
const ports = new Map();
|
|
56
56
|
const send = (portId, message, transfer) => Effect.sync(() => {
|
|
57
57
|
ports.get(portId)?.postMessage([1, message], {
|
|
@@ -109,10 +109,10 @@ const platformRunnerImpl = /*#__PURE__*/Runner.PlatformRunner.of({
|
|
|
109
109
|
const port = event.ports[0];
|
|
110
110
|
handlePort(port, true);
|
|
111
111
|
};
|
|
112
|
-
yield*
|
|
112
|
+
yield* Effect.addFinalizer(() => Effect.sync(() => {
|
|
113
113
|
;
|
|
114
114
|
self.onconnect = globalHandleConnect;
|
|
115
|
-
}))
|
|
115
|
+
}));
|
|
116
116
|
for (const port of cachedPorts) {
|
|
117
117
|
handlePort(port, true);
|
|
118
118
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workerRunner.js","names":["_WorkerError","require","Runner","_interopRequireWildcard","Cause","Effect","FiberSet","_GlobalValue","Layer","Queue","Schedule","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","cachedPorts","globalValue","Set","globalHandleConnect","event","add","ports","self","onconnect","platformRunnerImpl","PlatformRunner","of","PlatformRunnerTypeId","start","shutdown","gen","
|
|
1
|
+
{"version":3,"file":"workerRunner.js","names":["_WorkerError","require","Runner","_interopRequireWildcard","Cause","Effect","FiberSet","_GlobalValue","Layer","Queue","Schedule","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","cachedPorts","globalValue","Set","globalHandleConnect","event","add","ports","self","onconnect","platformRunnerImpl","PlatformRunner","of","PlatformRunnerTypeId","start","shutdown","gen","currentPortId","queue","unbounded","runFork","makeRuntime","Map","send","portId","message","transfer","sync","postMessage","handlePort","port","sharedWorker","async","resume","onMessage","data","unsafeOffer","interrupt","onMessageError","error","WorkerError","reason","onError","addEventListener","removeEventListener","pipe","tapErrorCause","cause","isInterruptedOnly","void","logDebug","retry","forever","annotateLogs","package","module","ensuring","delete","interruptible","addFinalizer","clear","layer","exports","succeed"],"sources":["../../../src/internal/workerRunner.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
import type * as Stream from "effect/Stream";
|
|
5
|
+
/**
|
|
6
|
+
* Creates a `Stream` from window.addEventListener.
|
|
7
|
+
* @since 1.0.0
|
|
8
|
+
*/
|
|
9
|
+
export declare const fromEventListenerWindow: <K extends keyof WindowEventMap>(type: K, options?: boolean | Omit<AddEventListenerOptions, "signal">) => Stream.Stream<WindowEventMap[K]>;
|
|
10
|
+
/**
|
|
11
|
+
* Creates a `Stream` from document.addEventListener.
|
|
12
|
+
* @since 1.0.0
|
|
13
|
+
*/
|
|
14
|
+
export declare const fromEventListenerDocument: <K extends keyof DocumentEventMap>(type: K, options?: boolean | Omit<AddEventListenerOptions, "signal">) => Stream.Stream<DocumentEventMap[K]>;
|
|
15
|
+
//# sourceMappingURL=BrowserStream.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BrowserStream.d.ts","sourceRoot":"","sources":["../../src/BrowserStream.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAG5C;;;GAGG;AACH,eAAO,MAAM,uBAAuB,EAAE,CAAC,CAAC,SAAS,MAAM,cAAc,EACnE,IAAI,EAAE,CAAC,EACP,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC,uBAAuB,EAAE,QAAQ,CAAC,KACxD,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAoC,CAAA;AAExE;;;GAGG;AACH,eAAO,MAAM,yBAAyB,EAAE,CAAC,CAAC,SAAS,MAAM,gBAAgB,EACvE,IAAI,EAAE,CAAC,EACP,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC,uBAAuB,EAAE,QAAQ,CAAC,KACxD,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAsC,CAAA"}
|
package/dist/dts/index.d.ts
CHANGED
|
@@ -10,6 +10,10 @@ export * as BrowserKeyValueStore from "./BrowserKeyValueStore.js";
|
|
|
10
10
|
* @since 1.0.0
|
|
11
11
|
*/
|
|
12
12
|
export * as BrowserRuntime from "./BrowserRuntime.js";
|
|
13
|
+
/**
|
|
14
|
+
* @since 1.0.0
|
|
15
|
+
*/
|
|
16
|
+
export * as BrowserStream from "./BrowserStream.js";
|
|
13
17
|
/**
|
|
14
18
|
* @since 1.0.0
|
|
15
19
|
*/
|
package/dist/dts/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,iBAAiB,MAAM,wBAAwB,CAAA;AAE3D;;GAEG;AACH,OAAO,KAAK,oBAAoB,MAAM,2BAA2B,CAAA;AAEjE;;GAEG;AACH,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AAErD;;GAEG;AACH,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AAEnD;;GAEG;AACH,OAAO,KAAK,mBAAmB,MAAM,0BAA0B,CAAA;AAE/D;;GAEG;AACH,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,iBAAiB,MAAM,wBAAwB,CAAA;AAE3D;;GAEG;AACH,OAAO,KAAK,oBAAoB,MAAM,2BAA2B,CAAA;AAEjE;;GAEG;AACH,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AAErD;;GAEG;AACH,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AAEnD;;GAEG;AACH,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AAEnD;;GAEG;AACH,OAAO,KAAK,mBAAmB,MAAM,0BAA0B,CAAA;AAE/D;;GAEG;AACH,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../../src/internal/stream.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
import * as internal from "./internal/stream.js";
|
|
5
|
+
/**
|
|
6
|
+
* Creates a `Stream` from window.addEventListener.
|
|
7
|
+
* @since 1.0.0
|
|
8
|
+
*/
|
|
9
|
+
export const fromEventListenerWindow = internal.fromEventListenerWindow;
|
|
10
|
+
/**
|
|
11
|
+
* Creates a `Stream` from document.addEventListener.
|
|
12
|
+
* @since 1.0.0
|
|
13
|
+
*/
|
|
14
|
+
export const fromEventListenerDocument = internal.fromEventListenerDocument;
|
|
15
|
+
//# sourceMappingURL=BrowserStream.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BrowserStream.js","names":["internal","fromEventListenerWindow","fromEventListenerDocument"],"sources":["../../src/BrowserStream.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAKA,OAAO,KAAKA,QAAQ,MAAM,sBAAsB;AAEhD;;;;AAIA,OAAO,MAAMC,uBAAuB,GAGID,QAAQ,CAACC,uBAAuB;AAExE;;;;AAIA,OAAO,MAAMC,yBAAyB,GAGIF,QAAQ,CAACE,yBAAyB","ignoreList":[]}
|
package/dist/esm/index.js
CHANGED
|
@@ -10,6 +10,10 @@ export * as BrowserKeyValueStore from "./BrowserKeyValueStore.js";
|
|
|
10
10
|
* @since 1.0.0
|
|
11
11
|
*/
|
|
12
12
|
export * as BrowserRuntime from "./BrowserRuntime.js";
|
|
13
|
+
/**
|
|
14
|
+
* @since 1.0.0
|
|
15
|
+
*/
|
|
16
|
+
export * as BrowserStream from "./BrowserStream.js";
|
|
13
17
|
/**
|
|
14
18
|
* @since 1.0.0
|
|
15
19
|
*/
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["BrowserHttpClient","BrowserKeyValueStore","BrowserRuntime","BrowserWorker","BrowserWorkerRunner","Clipboard"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,iBAAiB,MAAM,wBAAwB;AAE3D;;;AAGA,OAAO,KAAKC,oBAAoB,MAAM,2BAA2B;AAEjE;;;AAGA,OAAO,KAAKC,cAAc,MAAM,qBAAqB;AAErD;;;AAGA,OAAO,KAAKC,aAAa,MAAM,oBAAoB;AAEnD;;;AAGA,OAAO,KAAKC,mBAAmB,MAAM,0BAA0B;AAE/D;;;AAGA,OAAO,KAAKC,SAAS,MAAM,gBAAgB","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["BrowserHttpClient","BrowserKeyValueStore","BrowserRuntime","BrowserStream","BrowserWorker","BrowserWorkerRunner","Clipboard"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,iBAAiB,MAAM,wBAAwB;AAE3D;;;AAGA,OAAO,KAAKC,oBAAoB,MAAM,2BAA2B;AAEjE;;;AAGA,OAAO,KAAKC,cAAc,MAAM,qBAAqB;AAErD;;;AAGA,OAAO,KAAKC,aAAa,MAAM,oBAAoB;AAEnD;;;AAGA,OAAO,KAAKC,aAAa,MAAM,oBAAoB;AAEnD;;;AAGA,OAAO,KAAKC,mBAAmB,MAAM,0BAA0B;AAE/D;;;AAGA,OAAO,KAAKC,SAAS,MAAM,gBAAgB","ignoreList":[]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
import * as Stream from "effect/Stream";
|
|
5
|
+
/** @internal */
|
|
6
|
+
export const fromEventListenerWindow = (type, options) => Stream.fromEventListener(window, type, options);
|
|
7
|
+
/** @internal */
|
|
8
|
+
export const fromEventListenerDocument = (type, options) => Stream.fromEventListener(document, type, options);
|
|
9
|
+
//# sourceMappingURL=stream.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stream.js","names":["Stream","fromEventListenerWindow","type","options","fromEventListener","window","fromEventListenerDocument","document"],"sources":["../../../src/internal/stream.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAIA,OAAO,KAAKA,MAAM,MAAM,eAAe;AAEvC;AACA,OAAO,MAAMC,uBAAuB,GAAGA,CACrCC,IAAO,EACPC,OAA2D,KACxDH,MAAM,CAACI,iBAAiB,CAAoBC,MAAM,EAAEH,IAAI,EAAEC,OAAO,CAAC;AAEvE;AACA,OAAO,MAAMG,yBAAyB,GAAGA,CACvCJ,IAAO,EACPC,OAA2D,KACxDH,MAAM,CAACI,iBAAiB,CAAsBG,QAAQ,EAAEL,IAAI,EAAEC,OAAO,CAAC","ignoreList":[]}
|
|
@@ -11,16 +11,16 @@ const cachedPorts = /*#__PURE__*/globalValue("@effect/platform-browser/Worker/ca
|
|
|
11
11
|
function globalHandleConnect(event) {
|
|
12
12
|
cachedPorts.add(event.ports[0]);
|
|
13
13
|
}
|
|
14
|
-
if ("onconnect" in self) {
|
|
14
|
+
if (typeof self !== "undefined" && "onconnect" in self) {
|
|
15
15
|
self.onconnect = globalHandleConnect;
|
|
16
16
|
}
|
|
17
17
|
const platformRunnerImpl = /*#__PURE__*/Runner.PlatformRunner.of({
|
|
18
18
|
[Runner.PlatformRunnerTypeId]: Runner.PlatformRunnerTypeId,
|
|
19
19
|
start(shutdown) {
|
|
20
|
-
return Effect.gen(function* (
|
|
20
|
+
return Effect.gen(function* () {
|
|
21
21
|
let currentPortId = 0;
|
|
22
|
-
const queue = yield*
|
|
23
|
-
const runFork = yield*
|
|
22
|
+
const queue = yield* Queue.unbounded();
|
|
23
|
+
const runFork = yield* FiberSet.makeRuntime();
|
|
24
24
|
const ports = new Map();
|
|
25
25
|
const send = (portId, message, transfer) => Effect.sync(() => {
|
|
26
26
|
ports.get(portId)?.postMessage([1, message], {
|
|
@@ -78,10 +78,10 @@ const platformRunnerImpl = /*#__PURE__*/Runner.PlatformRunner.of({
|
|
|
78
78
|
const port = event.ports[0];
|
|
79
79
|
handlePort(port, true);
|
|
80
80
|
};
|
|
81
|
-
yield*
|
|
81
|
+
yield* Effect.addFinalizer(() => Effect.sync(() => {
|
|
82
82
|
;
|
|
83
83
|
self.onconnect = globalHandleConnect;
|
|
84
|
-
}))
|
|
84
|
+
}));
|
|
85
85
|
for (const port of cachedPorts) {
|
|
86
86
|
handlePort(port, true);
|
|
87
87
|
}
|
|
@@ -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","
|
|
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","queue","unbounded","runFork","makeRuntime","Map","send","portId","message","transfer","sync","get","postMessage","handlePort","port","sharedWorker","set","async","resume","onMessage","data","unsafeOffer","interrupt","onMessageError","error","reason","onError","addEventListener","removeEventListener","pipe","tapErrorCause","cause","isInterruptedOnly","void","logDebug","retry","forever","annotateLogs","package","module","ensuring","delete","interruptible","addFinalizer","clear","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.33.
|
|
3
|
+
"version": "0.33.9",
|
|
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.0"
|
|
14
14
|
},
|
|
15
15
|
"peerDependencies": {
|
|
16
|
-
"@effect/platform": "^0.
|
|
17
|
-
"effect": "^3.0
|
|
16
|
+
"@effect/platform": "^0.51.0",
|
|
17
|
+
"effect": "^3.1.0"
|
|
18
18
|
},
|
|
19
19
|
"publishConfig": {
|
|
20
20
|
"provenance": true
|
|
@@ -44,6 +44,11 @@
|
|
|
44
44
|
"import": "./dist/esm/BrowserRuntime.js",
|
|
45
45
|
"default": "./dist/cjs/BrowserRuntime.js"
|
|
46
46
|
},
|
|
47
|
+
"./BrowserStream": {
|
|
48
|
+
"types": "./dist/dts/BrowserStream.d.ts",
|
|
49
|
+
"import": "./dist/esm/BrowserStream.js",
|
|
50
|
+
"default": "./dist/cjs/BrowserStream.js"
|
|
51
|
+
},
|
|
47
52
|
"./BrowserWorker": {
|
|
48
53
|
"types": "./dist/dts/BrowserWorker.d.ts",
|
|
49
54
|
"import": "./dist/esm/BrowserWorker.js",
|
|
@@ -71,6 +76,9 @@
|
|
|
71
76
|
"BrowserRuntime": [
|
|
72
77
|
"./dist/dts/BrowserRuntime.d.ts"
|
|
73
78
|
],
|
|
79
|
+
"BrowserStream": [
|
|
80
|
+
"./dist/dts/BrowserStream.d.ts"
|
|
81
|
+
],
|
|
74
82
|
"BrowserWorker": [
|
|
75
83
|
"./dist/dts/BrowserWorker.d.ts"
|
|
76
84
|
],
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import type * as Stream from "effect/Stream"
|
|
6
|
+
import * as internal from "./internal/stream.js"
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Creates a `Stream` from window.addEventListener.
|
|
10
|
+
* @since 1.0.0
|
|
11
|
+
*/
|
|
12
|
+
export const fromEventListenerWindow: <K extends keyof WindowEventMap>(
|
|
13
|
+
type: K,
|
|
14
|
+
options?: boolean | Omit<AddEventListenerOptions, "signal">
|
|
15
|
+
) => Stream.Stream<WindowEventMap[K]> = internal.fromEventListenerWindow
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Creates a `Stream` from document.addEventListener.
|
|
19
|
+
* @since 1.0.0
|
|
20
|
+
*/
|
|
21
|
+
export const fromEventListenerDocument: <K extends keyof DocumentEventMap>(
|
|
22
|
+
type: K,
|
|
23
|
+
options?: boolean | Omit<AddEventListenerOptions, "signal">
|
|
24
|
+
) => Stream.Stream<DocumentEventMap[K]> = internal.fromEventListenerDocument
|
package/src/index.ts
CHANGED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import * as Stream from "effect/Stream"
|
|
6
|
+
|
|
7
|
+
/** @internal */
|
|
8
|
+
export const fromEventListenerWindow = <K extends keyof WindowEventMap>(
|
|
9
|
+
type: K,
|
|
10
|
+
options?: boolean | Omit<AddEventListenerOptions, "signal">
|
|
11
|
+
) => Stream.fromEventListener<WindowEventMap[K]>(window, type, options)
|
|
12
|
+
|
|
13
|
+
/** @internal */
|
|
14
|
+
export const fromEventListenerDocument = <K extends keyof DocumentEventMap>(
|
|
15
|
+
type: K,
|
|
16
|
+
options?: boolean | Omit<AddEventListenerOptions, "signal">
|
|
17
|
+
) => Stream.fromEventListener<DocumentEventMap[K]>(document, type, options)
|
|
@@ -12,18 +12,18 @@ const cachedPorts = globalValue("@effect/platform-browser/Worker/cachedPorts", (
|
|
|
12
12
|
function globalHandleConnect(event: MessageEvent) {
|
|
13
13
|
cachedPorts.add((event as MessageEvent).ports[0])
|
|
14
14
|
}
|
|
15
|
-
if ("onconnect" in self) {
|
|
15
|
+
if (typeof self !== "undefined" && "onconnect" in self) {
|
|
16
16
|
self.onconnect = globalHandleConnect
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
const platformRunnerImpl = Runner.PlatformRunner.of({
|
|
20
20
|
[Runner.PlatformRunnerTypeId]: Runner.PlatformRunnerTypeId,
|
|
21
21
|
start<I, O>(shutdown: Effect.Effect<void>) {
|
|
22
|
-
return Effect.gen(function*(
|
|
22
|
+
return Effect.gen(function*() {
|
|
23
23
|
let currentPortId = 0
|
|
24
24
|
|
|
25
|
-
const queue = yield*
|
|
26
|
-
const runFork = yield*
|
|
25
|
+
const queue = yield* Queue.unbounded<readonly [portId: number, message: I]>()
|
|
26
|
+
const runFork = yield* FiberSet.makeRuntime<never>()
|
|
27
27
|
const ports = new Map<number, MessagePort>()
|
|
28
28
|
const send = (portId: number, message: O, transfer?: ReadonlyArray<unknown>) =>
|
|
29
29
|
Effect.sync(() => {
|
|
@@ -88,11 +88,11 @@ const platformRunnerImpl = Runner.PlatformRunner.of({
|
|
|
88
88
|
const port = (event as MessageEvent).ports[0]
|
|
89
89
|
handlePort(port, true)
|
|
90
90
|
}
|
|
91
|
-
yield*
|
|
91
|
+
yield* Effect.addFinalizer(() =>
|
|
92
92
|
Effect.sync(() => {
|
|
93
93
|
;(self as any).onconnect = globalHandleConnect
|
|
94
94
|
})
|
|
95
|
-
)
|
|
95
|
+
)
|
|
96
96
|
for (const port of cachedPorts) {
|
|
97
97
|
handlePort(port, true)
|
|
98
98
|
}
|