@effect/platform-browser 0.73.0 → 4.0.0-beta.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.
- package/README.md +0 -6
- package/dist/BrowserHttpClient.d.ts +49 -0
- package/dist/BrowserHttpClient.d.ts.map +1 -0
- package/dist/{esm/internal/httpClient.js → BrowserHttpClient.js} +98 -60
- package/dist/BrowserHttpClient.js.map +1 -0
- package/dist/BrowserKeyValueStore.d.ts +24 -0
- package/dist/BrowserKeyValueStore.d.ts.map +1 -0
- package/dist/BrowserKeyValueStore.js +20 -0
- package/dist/BrowserKeyValueStore.js.map +1 -0
- package/dist/BrowserRuntime.d.ts +28 -0
- package/dist/BrowserRuntime.d.ts.map +1 -0
- package/dist/BrowserRuntime.js +13 -0
- package/dist/BrowserRuntime.js.map +1 -0
- package/dist/{dts/BrowserSocket.d.ts → BrowserSocket.d.ts} +4 -4
- package/dist/BrowserSocket.d.ts.map +1 -0
- package/dist/{esm/BrowserSocket.js → BrowserSocket.js} +5 -5
- package/dist/BrowserSocket.js.map +1 -0
- package/dist/BrowserStream.d.ts +35 -0
- package/dist/BrowserStream.d.ts.map +1 -0
- package/dist/BrowserStream.js +25 -0
- package/dist/BrowserStream.js.map +1 -0
- package/dist/BrowserWorker.d.ts +13 -0
- package/dist/BrowserWorker.d.ts.map +1 -0
- package/dist/{esm/internal/worker.js → BrowserWorker.js} +23 -17
- package/dist/BrowserWorker.js.map +1 -0
- package/dist/BrowserWorkerRunner.d.ts +18 -0
- package/dist/BrowserWorkerRunner.d.ts.map +1 -0
- package/dist/BrowserWorkerRunner.js +143 -0
- package/dist/BrowserWorkerRunner.js.map +1 -0
- package/dist/{dts/Clipboard.d.ts → Clipboard.d.ts} +13 -30
- package/dist/Clipboard.d.ts.map +1 -0
- package/dist/{esm/Clipboard.js → Clipboard.js} +12 -18
- package/dist/Clipboard.js.map +1 -0
- package/dist/Geolocation.d.ts +97 -0
- package/dist/Geolocation.d.ts.map +1 -0
- package/dist/Geolocation.js +99 -0
- package/dist/Geolocation.js.map +1 -0
- package/dist/Permissions.d.ts +80 -0
- package/dist/Permissions.d.ts.map +1 -0
- package/dist/Permissions.js +70 -0
- package/dist/Permissions.js.map +1 -0
- package/dist/index.d.ts +44 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/{esm/index.js → index.js} +4 -0
- package/dist/index.js.map +1 -0
- package/package.json +51 -111
- package/src/BrowserHttpClient.ts +364 -16
- package/src/BrowserKeyValueStore.ts +15 -8
- package/src/BrowserRuntime.ts +30 -4
- package/src/BrowserSocket.ts +5 -5
- package/src/BrowserStream.ts +20 -10
- package/src/BrowserWorker.ts +58 -21
- package/src/BrowserWorkerRunner.ts +151 -18
- package/src/Clipboard.ts +16 -38
- package/src/Geolocation.ts +80 -40
- package/src/Permissions.ts +49 -34
- package/src/index.ts +16 -10
- package/BrowserHttpClient/package.json +0 -6
- package/BrowserKeyValueStore/package.json +0 -6
- package/BrowserRuntime/package.json +0 -6
- package/BrowserSocket/package.json +0 -6
- package/BrowserStream/package.json +0 -6
- package/BrowserWorker/package.json +0 -6
- package/BrowserWorkerRunner/package.json +0 -6
- package/Clipboard/package.json +0 -6
- package/Geolocation/package.json +0 -6
- package/Permissions/package.json +0 -6
- package/dist/cjs/BrowserHttpClient.js +0 -31
- package/dist/cjs/BrowserHttpClient.js.map +0 -1
- package/dist/cjs/BrowserKeyValueStore.js +0 -23
- package/dist/cjs/BrowserKeyValueStore.js.map +0 -1
- package/dist/cjs/BrowserRuntime.js +0 -14
- package/dist/cjs/BrowserRuntime.js.map +0 -1
- package/dist/cjs/BrowserSocket.js +0 -27
- package/dist/cjs/BrowserSocket.js.map +0 -1
- package/dist/cjs/BrowserStream.js +0 -23
- package/dist/cjs/BrowserStream.js.map +0 -1
- package/dist/cjs/BrowserWorker.js +0 -29
- package/dist/cjs/BrowserWorker.js.map +0 -1
- package/dist/cjs/BrowserWorkerRunner.js +0 -31
- package/dist/cjs/BrowserWorkerRunner.js.map +0 -1
- package/dist/cjs/Clipboard.js +0 -86
- package/dist/cjs/Clipboard.js.map +0 -1
- package/dist/cjs/Geolocation.js +0 -73
- package/dist/cjs/Geolocation.js.map +0 -1
- package/dist/cjs/Permissions.js +0 -59
- package/dist/cjs/Permissions.js.map +0 -1
- package/dist/cjs/index.js +0 -28
- package/dist/cjs/index.js.map +0 -1
- package/dist/cjs/internal/httpClient.js +0 -266
- package/dist/cjs/internal/httpClient.js.map +0 -1
- package/dist/cjs/internal/keyValueStore.js +0 -13
- package/dist/cjs/internal/keyValueStore.js.map +0 -1
- package/dist/cjs/internal/runtime.js +0 -16
- package/dist/cjs/internal/runtime.js.map +0 -1
- package/dist/cjs/internal/stream.js +0 -19
- package/dist/cjs/internal/stream.js.map +0 -1
- package/dist/cjs/internal/worker.js +0 -60
- package/dist/cjs/internal/worker.js.map +0 -1
- package/dist/cjs/internal/workerRunner.js +0 -144
- package/dist/cjs/internal/workerRunner.js.map +0 -1
- package/dist/dts/BrowserHttpClient.d.ts +0 -33
- package/dist/dts/BrowserHttpClient.d.ts.map +0 -1
- package/dist/dts/BrowserKeyValueStore.d.ts +0 -20
- package/dist/dts/BrowserKeyValueStore.d.ts.map +0 -1
- package/dist/dts/BrowserRuntime.d.ts +0 -10
- package/dist/dts/BrowserRuntime.d.ts.map +0 -1
- package/dist/dts/BrowserSocket.d.ts.map +0 -1
- package/dist/dts/BrowserStream.d.ts +0 -25
- package/dist/dts/BrowserStream.d.ts.map +0 -1
- package/dist/dts/BrowserWorker.d.ts +0 -26
- package/dist/dts/BrowserWorker.d.ts.map +0 -1
- package/dist/dts/BrowserWorkerRunner.d.ts +0 -27
- package/dist/dts/BrowserWorkerRunner.d.ts.map +0 -1
- package/dist/dts/Clipboard.d.ts.map +0 -1
- package/dist/dts/Geolocation.d.ts +0 -67
- package/dist/dts/Geolocation.d.ts.map +0 -1
- package/dist/dts/Permissions.d.ts +0 -67
- package/dist/dts/Permissions.d.ts.map +0 -1
- package/dist/dts/index.d.ts +0 -41
- package/dist/dts/index.d.ts.map +0 -1
- package/dist/dts/internal/httpClient.d.ts +0 -2
- package/dist/dts/internal/httpClient.d.ts.map +0 -1
- package/dist/dts/internal/keyValueStore.d.ts +0 -2
- package/dist/dts/internal/keyValueStore.d.ts.map +0 -1
- package/dist/dts/internal/runtime.d.ts +0 -2
- package/dist/dts/internal/runtime.d.ts.map +0 -1
- package/dist/dts/internal/stream.d.ts +0 -5
- package/dist/dts/internal/stream.d.ts.map +0 -1
- package/dist/dts/internal/worker.d.ts +0 -2
- package/dist/dts/internal/worker.d.ts.map +0 -1
- package/dist/dts/internal/workerRunner.d.ts +0 -2
- package/dist/dts/internal/workerRunner.d.ts.map +0 -1
- package/dist/esm/BrowserHttpClient.js +0 -23
- package/dist/esm/BrowserHttpClient.js.map +0 -1
- package/dist/esm/BrowserKeyValueStore.js +0 -16
- package/dist/esm/BrowserKeyValueStore.js.map +0 -1
- package/dist/esm/BrowserRuntime.js +0 -7
- package/dist/esm/BrowserRuntime.js.map +0 -1
- package/dist/esm/BrowserSocket.js.map +0 -1
- package/dist/esm/BrowserStream.js +0 -15
- package/dist/esm/BrowserStream.js.map +0 -1
- package/dist/esm/BrowserWorker.js +0 -22
- package/dist/esm/BrowserWorker.js.map +0 -1
- package/dist/esm/BrowserWorkerRunner.js +0 -23
- package/dist/esm/BrowserWorkerRunner.js.map +0 -1
- package/dist/esm/Clipboard.js.map +0 -1
- package/dist/esm/Geolocation.js +0 -63
- package/dist/esm/Geolocation.js.map +0 -1
- package/dist/esm/Permissions.js +0 -50
- package/dist/esm/Permissions.js.map +0 -1
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/internal/httpClient.js.map +0 -1
- package/dist/esm/internal/keyValueStore.js +0 -6
- package/dist/esm/internal/keyValueStore.js.map +0 -1
- package/dist/esm/internal/runtime.js +0 -10
- package/dist/esm/internal/runtime.js.map +0 -1
- package/dist/esm/internal/stream.js +0 -9
- package/dist/esm/internal/stream.js.map +0 -1
- package/dist/esm/internal/worker.js.map +0 -1
- package/dist/esm/internal/workerRunner.js +0 -135
- package/dist/esm/internal/workerRunner.js.map +0 -1
- package/dist/esm/package.json +0 -4
- package/index/package.json +0 -6
- package/src/internal/httpClient.ts +0 -324
- package/src/internal/keyValueStore.ts +0 -7
- package/src/internal/runtime.ts +0 -8
- package/src/internal/stream.ts +0 -27
- package/src/internal/worker.ts +0 -58
- package/src/internal/workerRunner.ts +0 -155
package/README.md
CHANGED
|
@@ -1,7 +1 @@
|
|
|
1
1
|
# `@effect/platform-browser`
|
|
2
|
-
|
|
3
|
-
Provides browser-specific implementations for the abstractions defined in [`@effect/platform`](https://github.com/Effect-TS/effect/tree/main/packages/platform). This allows you to write platform-independent code that can seamlessly run in the browser, leveraging browser capabilities while keeping your application portable across multiple environments.
|
|
4
|
-
|
|
5
|
-
## Documentation
|
|
6
|
-
|
|
7
|
-
- **API Reference**: [View the full documentation](https://effect-ts.github.io/effect/docs/platform-browser).
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import * as Effect from "effect/Effect";
|
|
2
|
+
import type { LazyArg } from "effect/Function";
|
|
3
|
+
import type * as Layer from "effect/Layer";
|
|
4
|
+
import * as ServiceMap from "effect/ServiceMap";
|
|
5
|
+
import * as HttpClient from "effect/unstable/http/HttpClient";
|
|
6
|
+
export {
|
|
7
|
+
/**
|
|
8
|
+
* @since 1.0.0
|
|
9
|
+
* @category Fetch
|
|
10
|
+
*/
|
|
11
|
+
Fetch,
|
|
12
|
+
/**
|
|
13
|
+
* @since 1.0.0
|
|
14
|
+
* @category Fetch
|
|
15
|
+
*/
|
|
16
|
+
layer as layerFetch,
|
|
17
|
+
/**
|
|
18
|
+
* @since 1.0.0
|
|
19
|
+
* @category Fetch
|
|
20
|
+
*/
|
|
21
|
+
RequestInit } from "effect/unstable/http/FetchHttpClient";
|
|
22
|
+
/**
|
|
23
|
+
* @since 1.0.0
|
|
24
|
+
* @category Models
|
|
25
|
+
*/
|
|
26
|
+
export type XHRResponseType = "arraybuffer" | "text";
|
|
27
|
+
/**
|
|
28
|
+
* @since 1.0.0
|
|
29
|
+
* @category References
|
|
30
|
+
*/
|
|
31
|
+
export declare const CurrentXHRResponseType: ServiceMap.Reference<XHRResponseType>;
|
|
32
|
+
/**
|
|
33
|
+
* @since 1.0.0
|
|
34
|
+
* @category References
|
|
35
|
+
*/
|
|
36
|
+
export declare const withXHRArrayBuffer: <A, E, R>(self: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
|
|
37
|
+
declare const XMLHttpRequest_base: ServiceMap.ServiceClass<XMLHttpRequest, "@effect/platform-browser/BrowserHttpClient/XMLHttpRequest", LazyArg<globalThis.XMLHttpRequest>>;
|
|
38
|
+
/**
|
|
39
|
+
* @since 1.0.0
|
|
40
|
+
* @category Services
|
|
41
|
+
*/
|
|
42
|
+
export declare class XMLHttpRequest extends XMLHttpRequest_base {
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* @since 1.0.0
|
|
46
|
+
* @category Layers
|
|
47
|
+
*/
|
|
48
|
+
export declare const layerXMLHttpRequest: Layer.Layer<HttpClient.HttpClient>;
|
|
49
|
+
//# sourceMappingURL=BrowserHttpClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BrowserHttpClient.d.ts","sourceRoot":"","sources":["../src/BrowserHttpClient.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAE9C,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAE1C,OAAO,KAAK,UAAU,MAAM,mBAAmB,CAAA;AAI/C,OAAO,KAAK,UAAU,MAAM,iCAAiC,CAAA;AAY7D,OAAO;AACL;;;GAGG;AACH,KAAK;AACL;;;GAGG;AACH,KAAK,IAAI,UAAU;AACnB;;;GAGG;AACH,WAAW,EACZ,MAAM,sCAAsC,CAAA;AAM7C;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,aAAa,GAAG,MAAM,CAAA;AAEpD;;;GAGG;AACH,eAAO,MAAM,sBAAsB,EAAE,UAAU,CAAC,SAAS,CAAC,eAAe,CAGxE,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,kBAAkB,GAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EACxC,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAC3B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAKrB,CAAA;;AAEH;;;GAGG;AACH,qBAAa,cAAe,SAAQ,mBAG4B;CAAG;AAwSnE;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAElE,CAAA"}
|
|
@@ -1,28 +1,59 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
import * as
|
|
5
|
-
import * as ClientResponse from "@effect/platform/HttpClientResponse";
|
|
6
|
-
import * as IncomingMessage from "@effect/platform/HttpIncomingMessage";
|
|
7
|
-
import * as UrlParams from "@effect/platform/UrlParams";
|
|
8
|
-
import * as Context from "effect/Context";
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
import * as Cause from "effect/Cause";
|
|
9
5
|
import * as Effect from "effect/Effect";
|
|
10
|
-
import * as FiberRef from "effect/FiberRef";
|
|
11
|
-
import { globalValue } from "effect/GlobalValue";
|
|
12
6
|
import * as Inspectable from "effect/Inspectable";
|
|
13
|
-
import * as
|
|
7
|
+
import * as Queue from "effect/Queue";
|
|
8
|
+
import * as ServiceMap from "effect/ServiceMap";
|
|
14
9
|
import * as Stream from "effect/Stream";
|
|
10
|
+
import * as Cookies from "effect/unstable/http/Cookies";
|
|
11
|
+
import * as Headers from "effect/unstable/http/Headers";
|
|
12
|
+
import * as HttpClient from "effect/unstable/http/HttpClient";
|
|
13
|
+
import * as HttpClientError from "effect/unstable/http/HttpClientError";
|
|
14
|
+
import * as HttpClientResponse from "effect/unstable/http/HttpClientResponse";
|
|
15
|
+
import * as HttpIncomingMessage from "effect/unstable/http/HttpIncomingMessage";
|
|
16
|
+
import * as UrlParams from "effect/unstable/http/UrlParams";
|
|
15
17
|
import * as HeaderParser from "multipasta/HeadersParser";
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
18
|
+
// =============================================================================
|
|
19
|
+
// Fetch
|
|
20
|
+
// =============================================================================
|
|
21
|
+
export {
|
|
22
|
+
/**
|
|
23
|
+
* @since 1.0.0
|
|
24
|
+
* @category Fetch
|
|
25
|
+
*/
|
|
26
|
+
Fetch,
|
|
27
|
+
/**
|
|
28
|
+
* @since 1.0.0
|
|
29
|
+
* @category Fetch
|
|
30
|
+
*/
|
|
31
|
+
layer as layerFetch,
|
|
32
|
+
/**
|
|
33
|
+
* @since 1.0.0
|
|
34
|
+
* @category Fetch
|
|
35
|
+
*/
|
|
36
|
+
RequestInit } from "effect/unstable/http/FetchHttpClient";
|
|
37
|
+
/**
|
|
38
|
+
* @since 1.0.0
|
|
39
|
+
* @category References
|
|
40
|
+
*/
|
|
41
|
+
export const CurrentXHRResponseType = /*#__PURE__*/ServiceMap.Reference("@effect/platform-browser/BrowserHttpClient/CurrentXHRResponseType", {
|
|
42
|
+
defaultValue: () => "text"
|
|
43
|
+
});
|
|
44
|
+
/**
|
|
45
|
+
* @since 1.0.0
|
|
46
|
+
* @category References
|
|
47
|
+
*/
|
|
48
|
+
export const withXHRArrayBuffer = self => Effect.provideService(self, CurrentXHRResponseType, "arraybuffer");
|
|
49
|
+
/**
|
|
50
|
+
* @since 1.0.0
|
|
51
|
+
* @category Services
|
|
52
|
+
*/
|
|
53
|
+
export class XMLHttpRequest extends /*#__PURE__*/ServiceMap.Service()("@effect/platform-browser/BrowserHttpClient/XMLHttpRequest") {}
|
|
54
|
+
const makeXhrRequest = () => new globalThis.XMLHttpRequest();
|
|
55
|
+
const makeXmlHttpRequest = /*#__PURE__*/HttpClient.make((request, url, signal, fiber) => Effect.suspend(() => {
|
|
56
|
+
const xhr = ServiceMap.getOrElse(fiber.services, XMLHttpRequest, () => makeXhrRequest)();
|
|
26
57
|
signal.addEventListener("abort", () => {
|
|
27
58
|
xhr.abort();
|
|
28
59
|
xhr.onreadystatechange = null;
|
|
@@ -30,11 +61,11 @@ const makeXMLHttpRequest = /*#__PURE__*/Client.make((request, url, signal, fiber
|
|
|
30
61
|
once: true
|
|
31
62
|
});
|
|
32
63
|
xhr.open(request.method, url.toString(), true);
|
|
33
|
-
xhr.responseType = fiber.
|
|
64
|
+
xhr.responseType = fiber.getRef(CurrentXHRResponseType);
|
|
34
65
|
Object.entries(request.headers).forEach(([k, v]) => {
|
|
35
66
|
xhr.setRequestHeader(k, v);
|
|
36
67
|
});
|
|
37
|
-
return Effect.
|
|
68
|
+
return Effect.andThen(sendBody(xhr, request), Effect.callback(resume => {
|
|
38
69
|
let sent = false;
|
|
39
70
|
const onChange = () => {
|
|
40
71
|
if (!sent && xhr.readyState >= 2) {
|
|
@@ -44,10 +75,11 @@ const makeXMLHttpRequest = /*#__PURE__*/Client.make((request, url, signal, fiber
|
|
|
44
75
|
};
|
|
45
76
|
xhr.onreadystatechange = onChange;
|
|
46
77
|
xhr.onerror = _event => {
|
|
47
|
-
resume(Effect.fail(new
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
78
|
+
resume(Effect.fail(new HttpClientError.HttpClientError({
|
|
79
|
+
reason: new HttpClientError.TransportError({
|
|
80
|
+
request,
|
|
81
|
+
cause: xhr.statusText
|
|
82
|
+
})
|
|
51
83
|
})));
|
|
52
84
|
};
|
|
53
85
|
onChange();
|
|
@@ -66,32 +98,32 @@ const sendBody = (xhr, request) => {
|
|
|
66
98
|
case "FormData":
|
|
67
99
|
return Effect.sync(() => xhr.send(body.formData));
|
|
68
100
|
case "Stream":
|
|
69
|
-
return Effect.matchEffect(Stream.runFold(body.stream, new Uint8Array(0), (acc, chunk) => {
|
|
101
|
+
return Effect.matchEffect(Stream.runFold(body.stream, () => new Uint8Array(0), (acc, chunk) => {
|
|
70
102
|
const next = new Uint8Array(acc.length + chunk.length);
|
|
71
103
|
next.set(acc, 0);
|
|
72
104
|
next.set(chunk, acc.length);
|
|
73
105
|
return next;
|
|
74
106
|
}), {
|
|
75
|
-
onFailure: cause => Effect.fail(new
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
107
|
+
onFailure: cause => Effect.fail(new HttpClientError.HttpClientError({
|
|
108
|
+
reason: new HttpClientError.EncodeError({
|
|
109
|
+
request,
|
|
110
|
+
cause
|
|
111
|
+
})
|
|
79
112
|
})),
|
|
80
113
|
onSuccess: body => Effect.sync(() => xhr.send(body))
|
|
81
114
|
});
|
|
82
115
|
}
|
|
83
116
|
};
|
|
84
117
|
const encoder = /*#__PURE__*/new TextEncoder();
|
|
85
|
-
|
|
86
|
-
|
|
118
|
+
class IncomingMessageImpl extends Inspectable.Class {
|
|
119
|
+
[HttpIncomingMessage.TypeId];
|
|
87
120
|
source;
|
|
88
121
|
onError;
|
|
89
|
-
[IncomingMessage.TypeId];
|
|
90
122
|
constructor(source, onError) {
|
|
91
123
|
super();
|
|
124
|
+
this[HttpIncomingMessage.TypeId] = HttpIncomingMessage.TypeId;
|
|
92
125
|
this.source = source;
|
|
93
126
|
this.onError = onError;
|
|
94
|
-
this[IncomingMessage.TypeId] = IncomingMessage.TypeId;
|
|
95
127
|
this._rawHeaderString = source.getAllResponseHeaders();
|
|
96
128
|
}
|
|
97
129
|
_rawHeaderString;
|
|
@@ -123,14 +155,14 @@ export class IncomingMessageImpl extends Inspectable.Class {
|
|
|
123
155
|
return this.cachedCookies = Cookies.fromSetCookie(this._rawHeaders["set-cookie"]);
|
|
124
156
|
}
|
|
125
157
|
get remoteAddress() {
|
|
126
|
-
return
|
|
158
|
+
return undefined;
|
|
127
159
|
}
|
|
128
160
|
_textEffect;
|
|
129
161
|
get text() {
|
|
130
162
|
if (this._textEffect) {
|
|
131
163
|
return this._textEffect;
|
|
132
164
|
}
|
|
133
|
-
return this._textEffect = Effect.
|
|
165
|
+
return this._textEffect = Effect.callback(resume => {
|
|
134
166
|
if (this.source.readyState === 4) {
|
|
135
167
|
resume(Effect.succeed(this.source.responseText));
|
|
136
168
|
return;
|
|
@@ -152,33 +184,35 @@ export class IncomingMessageImpl extends Inspectable.Class {
|
|
|
152
184
|
}).pipe(Effect.cached, Effect.runSync);
|
|
153
185
|
}
|
|
154
186
|
get json() {
|
|
155
|
-
return Effect.
|
|
156
|
-
try:
|
|
187
|
+
return Effect.flatMap(this.text, text => Effect.try({
|
|
188
|
+
try: () => text === "" ? null : JSON.parse(text),
|
|
157
189
|
catch: this.onError
|
|
158
|
-
});
|
|
190
|
+
}));
|
|
159
191
|
}
|
|
160
192
|
get urlParamsBody() {
|
|
161
|
-
return Effect.flatMap(this.text,
|
|
162
|
-
try: () => UrlParams.fromInput(new URLSearchParams(
|
|
193
|
+
return Effect.flatMap(this.text, text => Effect.try({
|
|
194
|
+
try: () => UrlParams.fromInput(new URLSearchParams(text)),
|
|
163
195
|
catch: this.onError
|
|
164
196
|
}));
|
|
165
197
|
}
|
|
166
198
|
get stream() {
|
|
167
|
-
return Stream.
|
|
199
|
+
return Stream.callback(queue => {
|
|
168
200
|
let offset = 0;
|
|
169
201
|
const onReadyStateChange = () => {
|
|
170
202
|
if (this.source.readyState === 3) {
|
|
171
|
-
|
|
203
|
+
const encoded = encoder.encode(this.source.responseText.slice(offset));
|
|
204
|
+
Queue.offerUnsafe(queue, encoded);
|
|
172
205
|
offset = this.source.responseText.length;
|
|
173
206
|
} else if (this.source.readyState === 4) {
|
|
207
|
+
const encoded = encoder.encode(this.source.responseText.slice(offset));
|
|
174
208
|
if (offset < this.source.responseText.length) {
|
|
175
|
-
|
|
209
|
+
Queue.offerUnsafe(queue, encoded);
|
|
176
210
|
}
|
|
177
|
-
|
|
211
|
+
Queue.endUnsafe(queue);
|
|
178
212
|
}
|
|
179
213
|
};
|
|
180
214
|
const onError = () => {
|
|
181
|
-
|
|
215
|
+
Queue.failCauseUnsafe(queue, Cause.fail(this.onError(this.source.statusText)));
|
|
182
216
|
};
|
|
183
217
|
this.source.addEventListener("readystatechange", onReadyStateChange);
|
|
184
218
|
this.source.addEventListener("error", onError);
|
|
@@ -194,7 +228,7 @@ export class IncomingMessageImpl extends Inspectable.Class {
|
|
|
194
228
|
if (this._arrayBufferEffect) {
|
|
195
229
|
return this._arrayBufferEffect;
|
|
196
230
|
}
|
|
197
|
-
return this._arrayBufferEffect = Effect.
|
|
231
|
+
return this._arrayBufferEffect = Effect.callback(resume => {
|
|
198
232
|
if (this.source.readyState === 4) {
|
|
199
233
|
resume(Effect.succeed(this.source.response));
|
|
200
234
|
return;
|
|
@@ -223,17 +257,18 @@ export class IncomingMessageImpl extends Inspectable.Class {
|
|
|
223
257
|
}
|
|
224
258
|
}
|
|
225
259
|
class ClientResponseImpl extends IncomingMessageImpl {
|
|
260
|
+
[HttpClientResponse.TypeId];
|
|
226
261
|
request;
|
|
227
|
-
[ClientResponse.TypeId];
|
|
228
262
|
constructor(request, source) {
|
|
229
|
-
super(source, cause => new
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
263
|
+
super(source, cause => new HttpClientError.HttpClientError({
|
|
264
|
+
reason: new HttpClientError.DecodeError({
|
|
265
|
+
request,
|
|
266
|
+
response: this,
|
|
267
|
+
cause
|
|
268
|
+
})
|
|
234
269
|
}));
|
|
235
270
|
this.request = request;
|
|
236
|
-
this[
|
|
271
|
+
this[HttpClientResponse.TypeId] = HttpClientResponse.TypeId;
|
|
237
272
|
}
|
|
238
273
|
get status() {
|
|
239
274
|
return this.source.status;
|
|
@@ -245,13 +280,16 @@ class ClientResponseImpl extends IncomingMessageImpl {
|
|
|
245
280
|
return `ClientResponse(${this.status})`;
|
|
246
281
|
}
|
|
247
282
|
toJSON() {
|
|
248
|
-
return
|
|
283
|
+
return HttpIncomingMessage.inspect(this, {
|
|
249
284
|
_id: "@effect/platform/HttpClientResponse",
|
|
250
285
|
request: this.request.toJSON(),
|
|
251
286
|
status: this.status
|
|
252
287
|
});
|
|
253
288
|
}
|
|
254
289
|
}
|
|
255
|
-
/**
|
|
256
|
-
|
|
257
|
-
|
|
290
|
+
/**
|
|
291
|
+
* @since 1.0.0
|
|
292
|
+
* @category Layers
|
|
293
|
+
*/
|
|
294
|
+
export const layerXMLHttpRequest = /*#__PURE__*/HttpClient.layerMergedServices(/*#__PURE__*/Effect.succeed(makeXmlHttpRequest));
|
|
295
|
+
//# sourceMappingURL=BrowserHttpClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BrowserHttpClient.js","names":["Cause","Effect","Inspectable","Queue","ServiceMap","Stream","Cookies","Headers","HttpClient","HttpClientError","HttpClientResponse","HttpIncomingMessage","UrlParams","HeaderParser","Fetch","layer","layerFetch","RequestInit","CurrentXHRResponseType","Reference","defaultValue","withXHRArrayBuffer","self","provideService","XMLHttpRequest","Service","makeXhrRequest","globalThis","makeXmlHttpRequest","make","request","url","signal","fiber","suspend","xhr","getOrElse","services","addEventListener","abort","onreadystatechange","once","open","method","toString","responseType","getRef","Object","entries","headers","forEach","k","v","setRequestHeader","andThen","sendBody","callback","resume","sent","onChange","readyState","succeed","ClientResponseImpl","onerror","_event","fail","reason","TransportError","cause","statusText","void","body","_tag","sync","send","formData","matchEffect","runFold","stream","Uint8Array","acc","chunk","next","length","set","onFailure","EncodeError","onSuccess","encoder","TextEncoder","IncomingMessageImpl","Class","TypeId","source","onError","constructor","_rawHeaderString","getAllResponseHeaders","_rawHeaders","_headers","empty","parser","result","encode","undefined","parsed","fromInput","cachedCookies","cookies","fromSetCookie","remoteAddress","_textEffect","text","responseText","onReadyStateChange","removeEventListener","pipe","cached","runSync","json","flatMap","try","JSON","parse","catch","urlParamsBody","URLSearchParams","queue","offset","encoded","slice","offerUnsafe","endUnsafe","failCauseUnsafe","_arrayBufferEffect","arrayBuffer","response","map","arr","byteLength","buffer","byteOffset","DecodeError","status","die","toJSON","inspect","_id","layerXMLHttpRequest","layerMergedServices"],"sources":["../src/BrowserHttpClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
import type * as Layer from "effect/Layer";
|
|
5
|
+
import * as KeyValueStore from "effect/unstable/persistence/KeyValueStore";
|
|
6
|
+
/**
|
|
7
|
+
* Creates a `KeyValueStore` layer that uses the browser's `localStorage` api.
|
|
8
|
+
*
|
|
9
|
+
* Values are stored between sessions.
|
|
10
|
+
*
|
|
11
|
+
* @since 1.0.0
|
|
12
|
+
* @category Layers
|
|
13
|
+
*/
|
|
14
|
+
export declare const layerLocalStorage: Layer.Layer<KeyValueStore.KeyValueStore>;
|
|
15
|
+
/**
|
|
16
|
+
* Creates a `KeyValueStore` layer that uses the browser's `sessionStorage` api.
|
|
17
|
+
*
|
|
18
|
+
* Values are stored only for the current session.
|
|
19
|
+
*
|
|
20
|
+
* @since 1.0.0
|
|
21
|
+
* @category Layers
|
|
22
|
+
*/
|
|
23
|
+
export declare const layerSessionStorage: Layer.Layer<KeyValueStore.KeyValueStore>;
|
|
24
|
+
//# sourceMappingURL=BrowserKeyValueStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BrowserKeyValueStore.d.ts","sourceRoot":"","sources":["../src/BrowserKeyValueStore.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,aAAa,MAAM,2CAA2C,CAAA;AAE1E;;;;;;;GAOG;AACH,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,aAAa,CAEtE,CAAA;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,aAAa,CAExE,CAAA"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import * as KeyValueStore from "effect/unstable/persistence/KeyValueStore";
|
|
2
|
+
/**
|
|
3
|
+
* Creates a `KeyValueStore` layer that uses the browser's `localStorage` api.
|
|
4
|
+
*
|
|
5
|
+
* Values are stored between sessions.
|
|
6
|
+
*
|
|
7
|
+
* @since 1.0.0
|
|
8
|
+
* @category Layers
|
|
9
|
+
*/
|
|
10
|
+
export const layerLocalStorage = /*#__PURE__*/KeyValueStore.layerStorage(() => globalThis.localStorage);
|
|
11
|
+
/**
|
|
12
|
+
* Creates a `KeyValueStore` layer that uses the browser's `sessionStorage` api.
|
|
13
|
+
*
|
|
14
|
+
* Values are stored only for the current session.
|
|
15
|
+
*
|
|
16
|
+
* @since 1.0.0
|
|
17
|
+
* @category Layers
|
|
18
|
+
*/
|
|
19
|
+
export const layerSessionStorage = /*#__PURE__*/KeyValueStore.layerStorage(() => globalThis.sessionStorage);
|
|
20
|
+
//# sourceMappingURL=BrowserKeyValueStore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BrowserKeyValueStore.js","names":["KeyValueStore","layerLocalStorage","layerStorage","globalThis","localStorage","layerSessionStorage","sessionStorage"],"sources":["../src/BrowserKeyValueStore.ts"],"sourcesContent":[null],"mappings":"AAIA,OAAO,KAAKA,aAAa,MAAM,2CAA2C;AAE1E;;;;;;;;AAQA,OAAO,MAAMC,iBAAiB,gBAA6CD,aAAa,CAACE,YAAY,CAAC,MACpGC,UAAU,CAACC,YAAY,CACxB;AAED;;;;;;;;AAQA,OAAO,MAAMC,mBAAmB,gBAA6CL,aAAa,CAACE,YAAY,CAAC,MACtGC,UAAU,CAACG,cAAc,CAC1B","ignoreList":[]}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
import type * as Effect from "effect/Effect";
|
|
5
|
+
import { type Teardown } from "effect/Runtime";
|
|
6
|
+
/**
|
|
7
|
+
* @since 1.0.0
|
|
8
|
+
* @category Runtime
|
|
9
|
+
*/
|
|
10
|
+
export declare const runMain: {
|
|
11
|
+
/**
|
|
12
|
+
* @since 1.0.0
|
|
13
|
+
* @category Runtime
|
|
14
|
+
*/
|
|
15
|
+
(options?: {
|
|
16
|
+
readonly disableErrorReporting?: boolean | undefined;
|
|
17
|
+
readonly teardown?: Teardown | undefined;
|
|
18
|
+
}): <E, A>(effect: Effect.Effect<A, E>) => void;
|
|
19
|
+
/**
|
|
20
|
+
* @since 1.0.0
|
|
21
|
+
* @category Runtime
|
|
22
|
+
*/
|
|
23
|
+
<E, A>(effect: Effect.Effect<A, E>, options?: {
|
|
24
|
+
readonly disableErrorReporting?: boolean | undefined;
|
|
25
|
+
readonly teardown?: Teardown | undefined;
|
|
26
|
+
}): void;
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=BrowserRuntime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BrowserRuntime.d.ts","sourceRoot":"","sources":["../src/BrowserRuntime.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAC5C,OAAO,EAAe,KAAK,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAE3D;;;GAGG;AACH,eAAO,MAAM,OAAO,EAAE;IACpB;;;OAGG;IACH,CACE,OAAO,CAAC,EAAE;QACR,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QACpD,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAA;KACzC,GACA,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAA;IAC9C;;;OAGG;IACH,CAAC,CAAC,EAAE,CAAC,EACH,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAC3B,OAAO,CAAC,EAAE;QACR,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QACpD,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAA;KACzC,GACA,IAAI,CAAA;CAKP,CAAA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { makeRunMain } from "effect/Runtime";
|
|
2
|
+
/**
|
|
3
|
+
* @since 1.0.0
|
|
4
|
+
* @category Runtime
|
|
5
|
+
*/
|
|
6
|
+
export const runMain = /*#__PURE__*/makeRunMain(({
|
|
7
|
+
fiber
|
|
8
|
+
}) => {
|
|
9
|
+
globalThis.addEventListener("beforeunload", () => {
|
|
10
|
+
fiber.interruptUnsafe(fiber.id);
|
|
11
|
+
});
|
|
12
|
+
});
|
|
13
|
+
//# sourceMappingURL=BrowserRuntime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BrowserRuntime.js","names":["makeRunMain","runMain","fiber","globalThis","addEventListener","interruptUnsafe","id"],"sources":["../src/BrowserRuntime.ts"],"sourcesContent":[null],"mappings":"AAIA,SAASA,WAAW,QAAuB,gBAAgB;AAE3D;;;;AAIA,OAAO,MAAMC,OAAO,gBAsBhBD,WAAW,CAAC,CAAC;EAAEE;AAAK,CAAE,KAAI;EAC5BC,UAAU,CAACC,gBAAgB,CAAC,cAAc,EAAE,MAAK;IAC/CF,KAAK,CAACG,eAAe,CAACH,KAAK,CAACI,EAAE,CAAC;EACjC,CAAC,CAAC;AACJ,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @since 1.0.0
|
|
3
3
|
*/
|
|
4
|
-
import * as Socket from "@effect/platform/Socket";
|
|
5
4
|
import * as Layer from "effect/Layer";
|
|
5
|
+
import * as Socket from "effect/unstable/socket/Socket";
|
|
6
6
|
/**
|
|
7
7
|
* @since 1.0.0
|
|
8
|
-
* @category
|
|
8
|
+
* @category Layers
|
|
9
9
|
*/
|
|
10
10
|
export declare const layerWebSocket: (url: string, options?: {
|
|
11
11
|
readonly closeCodeIsError?: (code: number) => boolean;
|
|
12
12
|
}) => Layer.Layer<Socket.Socket>;
|
|
13
13
|
/**
|
|
14
|
-
* A WebSocket constructor that uses globalThis.WebSocket
|
|
14
|
+
* A WebSocket constructor that uses `globalThis.WebSocket`.
|
|
15
15
|
*
|
|
16
16
|
* @since 1.0.0
|
|
17
|
-
* @category
|
|
17
|
+
* @category Layers
|
|
18
18
|
*/
|
|
19
19
|
export declare const layerWebSocketConstructor: Layer.Layer<Socket.WebSocketConstructor>;
|
|
20
20
|
//# sourceMappingURL=BrowserSocket.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BrowserSocket.d.ts","sourceRoot":"","sources":["../src/BrowserSocket.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,MAAM,MAAM,+BAA+B,CAAA;AAEvD;;;GAGG;AACH,eAAO,MAAM,cAAc,GAAI,KAAK,MAAM,EAAE,UAAU;IACpD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAA;CACtD,KAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAG1B,CAAA;AAEH;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,oBAAoB,CACvC,CAAA"}
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @since 1.0.0
|
|
3
3
|
*/
|
|
4
|
-
import * as Socket from "@effect/platform/Socket";
|
|
5
4
|
import * as Layer from "effect/Layer";
|
|
5
|
+
import * as Socket from "effect/unstable/socket/Socket";
|
|
6
6
|
/**
|
|
7
7
|
* @since 1.0.0
|
|
8
|
-
* @category
|
|
8
|
+
* @category Layers
|
|
9
9
|
*/
|
|
10
|
-
export const layerWebSocket = (url, options) => Layer.
|
|
10
|
+
export const layerWebSocket = (url, options) => Layer.effect(Socket.Socket, Socket.makeWebSocket(url, options)).pipe(Layer.provide(layerWebSocketConstructor));
|
|
11
11
|
/**
|
|
12
|
-
* A WebSocket constructor that uses globalThis.WebSocket
|
|
12
|
+
* A WebSocket constructor that uses `globalThis.WebSocket`.
|
|
13
13
|
*
|
|
14
14
|
* @since 1.0.0
|
|
15
|
-
* @category
|
|
15
|
+
* @category Layers
|
|
16
16
|
*/
|
|
17
17
|
export const layerWebSocketConstructor = Socket.layerWebSocketConstructorGlobal;
|
|
18
18
|
//# sourceMappingURL=BrowserSocket.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BrowserSocket.js","names":["Layer","Socket","layerWebSocket","url","options","effect","makeWebSocket","pipe","provide","layerWebSocketConstructor","layerWebSocketConstructorGlobal"],"sources":["../src/BrowserSocket.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,MAAM,MAAM,+BAA+B;AAEvD;;;;AAIA,OAAO,MAAMC,cAAc,GAAGA,CAACC,GAAW,EAAEC,OAE3C,KACCJ,KAAK,CAACK,MAAM,CAACJ,MAAM,CAACA,MAAM,EAAEA,MAAM,CAACK,aAAa,CAACH,GAAG,EAAEC,OAAO,CAAC,CAAC,CAACG,IAAI,CAClEP,KAAK,CAACQ,OAAO,CAACC,yBAAyB,CAAC,CACzC;AAEH;;;;;;AAMA,OAAO,MAAMA,yBAAyB,GACpCR,MAAM,CAACS,+BAA+B","ignoreList":[]}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
import * as Stream from "effect/Stream";
|
|
5
|
+
/**
|
|
6
|
+
* Creates a `Stream` from `window.addEventListener`.
|
|
7
|
+
*
|
|
8
|
+
* By default, the underlying buffer is unbounded in size. You can customize the
|
|
9
|
+
* buffer size an object as the second argument with the `bufferSize` field.
|
|
10
|
+
*
|
|
11
|
+
* @since 1.0.0
|
|
12
|
+
* @category Streams
|
|
13
|
+
*/
|
|
14
|
+
export declare const fromEventListenerWindow: <K extends keyof WindowEventMap>(type: K, options?: boolean | {
|
|
15
|
+
readonly capture?: boolean;
|
|
16
|
+
readonly passive?: boolean;
|
|
17
|
+
readonly once?: boolean;
|
|
18
|
+
readonly bufferSize?: number | undefined;
|
|
19
|
+
} | undefined) => Stream.Stream<WindowEventMap[K], never, never>;
|
|
20
|
+
/**
|
|
21
|
+
* Creates a `Stream` from `document.addEventListener`.
|
|
22
|
+
*
|
|
23
|
+
* By default, the underlying buffer is unbounded in size. You can customize the
|
|
24
|
+
* buffer size an object as the second argument with the `bufferSize` field.
|
|
25
|
+
*
|
|
26
|
+
* @since 1.0.0
|
|
27
|
+
* @category Streams
|
|
28
|
+
*/
|
|
29
|
+
export declare const fromEventListenerDocument: <K extends keyof DocumentEventMap>(type: K, options?: boolean | {
|
|
30
|
+
readonly capture?: boolean;
|
|
31
|
+
readonly passive?: boolean;
|
|
32
|
+
readonly once?: boolean;
|
|
33
|
+
readonly bufferSize?: number | undefined;
|
|
34
|
+
} | undefined) => Stream.Stream<DocumentEventMap[K], never, never>;
|
|
35
|
+
//# 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,MAAM,MAAM,eAAe,CAAA;AAEvC;;;;;;;;GAQG;AACH,eAAO,MAAM,uBAAuB,GAAI,CAAC,SAAS,MAAM,cAAc,EACpE,MAAM,CAAC,EACP,UAAU,OAAO,GAAG;IAClB,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACzC,GAAG,SAAS,KACZ,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAuE,CAAA;AAEvH;;;;;;;;GAQG;AACH,eAAO,MAAM,yBAAyB,GAAI,CAAC,SAAS,MAAM,gBAAgB,EACxE,MAAM,CAAC,EACP,UAAU,OAAO,GAAG;IAClB,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACzC,GAAG,SAAS,KACZ,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CACsB,CAAA"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
import * as Stream from "effect/Stream";
|
|
5
|
+
/**
|
|
6
|
+
* Creates a `Stream` from `window.addEventListener`.
|
|
7
|
+
*
|
|
8
|
+
* By default, the underlying buffer is unbounded in size. You can customize the
|
|
9
|
+
* buffer size an object as the second argument with the `bufferSize` field.
|
|
10
|
+
*
|
|
11
|
+
* @since 1.0.0
|
|
12
|
+
* @category Streams
|
|
13
|
+
*/
|
|
14
|
+
export const fromEventListenerWindow = (type, options) => Stream.fromEventListener(window, type, options);
|
|
15
|
+
/**
|
|
16
|
+
* Creates a `Stream` from `document.addEventListener`.
|
|
17
|
+
*
|
|
18
|
+
* By default, the underlying buffer is unbounded in size. You can customize the
|
|
19
|
+
* buffer size an object as the second argument with the `bufferSize` field.
|
|
20
|
+
*
|
|
21
|
+
* @since 1.0.0
|
|
22
|
+
* @category Streams
|
|
23
|
+
*/
|
|
24
|
+
export const fromEventListenerDocument = (type, options) => Stream.fromEventListener(document, type, options);
|
|
25
|
+
//# sourceMappingURL=BrowserStream.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BrowserStream.js","names":["Stream","fromEventListenerWindow","type","options","fromEventListener","window","fromEventListenerDocument","document"],"sources":["../src/BrowserStream.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAIA,OAAO,KAAKA,MAAM,MAAM,eAAe;AAEvC;;;;;;;;;AASA,OAAO,MAAMC,uBAAuB,GAAGA,CACrCC,IAAO,EACPC,OAKa,KACsCH,MAAM,CAACI,iBAAiB,CAAoBC,MAAM,EAAEH,IAAI,EAAEC,OAAO,CAAC;AAEvH;;;;;;;;;AASA,OAAO,MAAMG,yBAAyB,GAAGA,CACvCJ,IAAO,EACPC,OAKa,KAEbH,MAAM,CAACI,iBAAiB,CAAsBG,QAAQ,EAAEL,IAAI,EAAEC,OAAO,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as Layer from "effect/Layer";
|
|
2
|
+
import * as Worker from "effect/unstable/workers/Worker";
|
|
3
|
+
/**
|
|
4
|
+
* @since 1.0.0
|
|
5
|
+
* @category Layers
|
|
6
|
+
*/
|
|
7
|
+
export declare const layer: (spawn: (id: number) => Worker | SharedWorker | MessagePort) => Layer.Layer<Worker.WorkerPlatform | Worker.Spawner>;
|
|
8
|
+
/**
|
|
9
|
+
* @since 1.0.0
|
|
10
|
+
* @category Layers
|
|
11
|
+
*/
|
|
12
|
+
export declare const layerPlatform: Layer.Layer<Worker.WorkerPlatform>;
|
|
13
|
+
//# sourceMappingURL=BrowserWorker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BrowserWorker.d.ts","sourceRoot":"","sources":["../src/BrowserWorker.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,KAAK,MAAM,MAAM,gCAAgC,CAAA;AAGxD;;;GAGG;AACH,eAAO,MAAM,KAAK,GAChB,OAAO,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,GAAG,YAAY,GAAG,WAAW,KACzD,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,GAAG,MAAM,CAAC,OAAO,CAIlD,CAAA;AAEH;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CA2C5D,CAAA"}
|