@effect/platform-browser 4.0.0-beta.7 → 4.0.0-beta.70
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/dist/BrowserCrypto.d.ts +23 -0
- package/dist/BrowserCrypto.d.ts.map +1 -0
- package/dist/BrowserCrypto.js +61 -0
- package/dist/BrowserCrypto.js.map +1 -0
- package/dist/BrowserHttpClient.d.ts +32 -16
- package/dist/BrowserHttpClient.d.ts.map +1 -1
- package/dist/BrowserHttpClient.js +66 -18
- package/dist/BrowserHttpClient.js.map +1 -1
- package/dist/BrowserKeyValueStore.d.ts +17 -14
- package/dist/BrowserKeyValueStore.d.ts.map +1 -1
- package/dist/BrowserKeyValueStore.js +130 -10
- package/dist/BrowserKeyValueStore.js.map +1 -1
- package/dist/BrowserPersistence.d.ts +21 -0
- package/dist/BrowserPersistence.d.ts.map +1 -0
- package/dist/BrowserPersistence.js +188 -0
- package/dist/BrowserPersistence.js.map +1 -0
- package/dist/BrowserRuntime.d.ts +31 -4
- package/dist/BrowserRuntime.d.ts.map +1 -1
- package/dist/BrowserRuntime.js +3 -1
- package/dist/BrowserRuntime.js.map +1 -1
- package/dist/BrowserSocket.d.ts +31 -6
- package/dist/BrowserSocket.d.ts.map +1 -1
- package/dist/BrowserSocket.js +31 -6
- package/dist/BrowserSocket.js.map +1 -1
- package/dist/BrowserStream.d.ts +33 -5
- package/dist/BrowserStream.d.ts.map +1 -1
- package/dist/BrowserStream.js +33 -5
- package/dist/BrowserStream.js.map +1 -1
- package/dist/BrowserWorker.d.ts +8 -4
- package/dist/BrowserWorker.d.ts.map +1 -1
- package/dist/BrowserWorker.js +30 -6
- package/dist/BrowserWorker.js.map +1 -1
- package/dist/BrowserWorkerRunner.d.ts +12 -6
- package/dist/BrowserWorkerRunner.d.ts.map +1 -1
- package/dist/BrowserWorkerRunner.js +34 -10
- package/dist/BrowserWorkerRunner.js.map +1 -1
- package/dist/Clipboard.d.ts +40 -13
- package/dist/Clipboard.d.ts.map +1 -1
- package/dist/Clipboard.js +33 -11
- package/dist/Clipboard.js.map +1 -1
- package/dist/Geolocation.d.ts +58 -24
- package/dist/Geolocation.d.ts.map +1 -1
- package/dist/Geolocation.js +46 -16
- package/dist/Geolocation.js.map +1 -1
- package/dist/IndexedDb.d.ts +77 -0
- package/dist/IndexedDb.d.ts.map +1 -0
- package/dist/IndexedDb.js +87 -0
- package/dist/IndexedDb.js.map +1 -0
- package/dist/IndexedDbDatabase.d.ts +150 -0
- package/dist/IndexedDbDatabase.d.ts.map +1 -0
- package/dist/IndexedDbDatabase.js +324 -0
- package/dist/IndexedDbDatabase.js.map +1 -0
- package/dist/IndexedDbQueryBuilder.d.ts +430 -0
- package/dist/IndexedDbQueryBuilder.d.ts.map +1 -0
- package/dist/IndexedDbQueryBuilder.js +927 -0
- package/dist/IndexedDbQueryBuilder.js.map +1 -0
- package/dist/IndexedDbTable.d.ts +153 -0
- package/dist/IndexedDbTable.d.ts.map +1 -0
- package/dist/IndexedDbTable.js +58 -0
- package/dist/IndexedDbTable.js.map +1 -0
- package/dist/IndexedDbVersion.d.ts +80 -0
- package/dist/IndexedDbVersion.d.ts.map +1 -0
- package/dist/IndexedDbVersion.js +25 -0
- package/dist/IndexedDbVersion.js.map +1 -0
- package/dist/Permissions.d.ts +45 -15
- package/dist/Permissions.d.ts.map +1 -1
- package/dist/Permissions.js +35 -10
- package/dist/Permissions.js.map +1 -1
- package/dist/index.d.ts +357 -10
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +357 -10
- package/dist/index.js.map +1 -1
- package/package.json +4 -3
- package/src/BrowserCrypto.ts +71 -0
- package/src/BrowserHttpClient.ts +76 -24
- package/src/BrowserKeyValueStore.ts +146 -12
- package/src/BrowserPersistence.ts +319 -0
- package/src/BrowserRuntime.ts +31 -4
- package/src/BrowserSocket.ts +31 -6
- package/src/BrowserStream.ts +33 -5
- package/src/BrowserWorker.ts +30 -6
- package/src/BrowserWorkerRunner.ts +34 -10
- package/src/Clipboard.ts +37 -13
- package/src/Geolocation.ts +54 -20
- package/src/IndexedDb.ts +115 -0
- package/src/IndexedDbDatabase.ts +645 -0
- package/src/IndexedDbQueryBuilder.ts +2040 -0
- package/src/IndexedDbTable.ts +247 -0
- package/src/IndexedDbVersion.ts +119 -0
- package/src/Permissions.ts +40 -13
- package/src/index.ts +364 -10
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Browser platform implementation of the Crypto service.
|
|
3
|
+
*
|
|
4
|
+
* @since 1.0.0
|
|
5
|
+
*/
|
|
6
|
+
import * as Context from "effect/Context";
|
|
7
|
+
import * as EffectCrypto from "effect/Crypto";
|
|
8
|
+
import * as Layer from "effect/Layer";
|
|
9
|
+
/**
|
|
10
|
+
* Browser Web Crypto APIs used by the Crypto service implementation.
|
|
11
|
+
*
|
|
12
|
+
* @category models
|
|
13
|
+
* @since 1.0.0
|
|
14
|
+
*/
|
|
15
|
+
export declare const WebCrypto: Context.Reference<Crypto>;
|
|
16
|
+
/**
|
|
17
|
+
* A layer that directly interfaces with the Web Crypto API.
|
|
18
|
+
*
|
|
19
|
+
* @category layers
|
|
20
|
+
* @since 1.0.0
|
|
21
|
+
*/
|
|
22
|
+
export declare const layer: Layer.Layer<EffectCrypto.Crypto>;
|
|
23
|
+
//# sourceMappingURL=BrowserCrypto.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BrowserCrypto.d.ts","sourceRoot":"","sources":["../src/BrowserCrypto.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,YAAY,MAAM,eAAe,CAAA;AAE7C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAGrC;;;;;GAKG;AACH,eAAO,MAAM,SAAS,2BAEpB,CAAA;AAEF;;;;;GAKG;AACH,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CA2ClD,CAAA"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Browser platform implementation of the Crypto service.
|
|
3
|
+
*
|
|
4
|
+
* @since 1.0.0
|
|
5
|
+
*/
|
|
6
|
+
import * as Context from "effect/Context";
|
|
7
|
+
import * as EffectCrypto from "effect/Crypto";
|
|
8
|
+
import * as Effect from "effect/Effect";
|
|
9
|
+
import * as Layer from "effect/Layer";
|
|
10
|
+
import * as PlatformError from "effect/PlatformError";
|
|
11
|
+
/**
|
|
12
|
+
* Browser Web Crypto APIs used by the Crypto service implementation.
|
|
13
|
+
*
|
|
14
|
+
* @category models
|
|
15
|
+
* @since 1.0.0
|
|
16
|
+
*/
|
|
17
|
+
export const WebCrypto = /*#__PURE__*/Context.Reference("@effect/platform-browser/Crypto/WebCrypto", {
|
|
18
|
+
defaultValue: () => globalThis.crypto
|
|
19
|
+
});
|
|
20
|
+
/**
|
|
21
|
+
* A layer that directly interfaces with the Web Crypto API.
|
|
22
|
+
*
|
|
23
|
+
* @category layers
|
|
24
|
+
* @since 1.0.0
|
|
25
|
+
*/
|
|
26
|
+
export const layer = /*#__PURE__*/Layer.effect(EffectCrypto.Crypto, /*#__PURE__*/Effect.gen(function* () {
|
|
27
|
+
const crypto = yield* WebCrypto;
|
|
28
|
+
if (!crypto) {
|
|
29
|
+
return yield* Effect.die(new Error("Web Crypto API is not available"));
|
|
30
|
+
}
|
|
31
|
+
const randomBytes = size => {
|
|
32
|
+
const bytes = new Uint8Array(size);
|
|
33
|
+
crypto.getRandomValues(bytes);
|
|
34
|
+
return bytes;
|
|
35
|
+
};
|
|
36
|
+
const digest = (algorithm, data) => {
|
|
37
|
+
if (typeof crypto.subtle.digest !== "function") {
|
|
38
|
+
return Effect.fail(PlatformError.systemError({
|
|
39
|
+
module: "Crypto",
|
|
40
|
+
method: "digest",
|
|
41
|
+
_tag: "Unknown",
|
|
42
|
+
description: "crypto.subtle.digest is not available"
|
|
43
|
+
}));
|
|
44
|
+
}
|
|
45
|
+
return Effect.map(Effect.tryPromise({
|
|
46
|
+
try: () => crypto.subtle.digest(algorithm, new Uint8Array(data)),
|
|
47
|
+
catch: cause => PlatformError.systemError({
|
|
48
|
+
module: "Crypto",
|
|
49
|
+
method: "digest",
|
|
50
|
+
_tag: "Unknown",
|
|
51
|
+
description: "Could not compute digest",
|
|
52
|
+
cause
|
|
53
|
+
})
|
|
54
|
+
}), buffer => new Uint8Array(buffer));
|
|
55
|
+
};
|
|
56
|
+
return EffectCrypto.make({
|
|
57
|
+
randomBytes,
|
|
58
|
+
digest
|
|
59
|
+
});
|
|
60
|
+
}));
|
|
61
|
+
//# sourceMappingURL=BrowserCrypto.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BrowserCrypto.js","names":["Context","EffectCrypto","Effect","Layer","PlatformError","WebCrypto","Reference","defaultValue","globalThis","crypto","layer","effect","Crypto","gen","die","Error","randomBytes","size","bytes","Uint8Array","getRandomValues","digest","algorithm","data","subtle","fail","systemError","module","method","_tag","description","map","tryPromise","try","catch","cause","buffer","make"],"sources":["../src/BrowserCrypto.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;AAKA,OAAO,KAAKA,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAKC,YAAY,MAAM,eAAe;AAC7C,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,aAAa,MAAM,sBAAsB;AAErD;;;;;;AAMA,OAAO,MAAMC,SAAS,gBAAGL,OAAO,CAACM,SAAS,CAAS,2CAA2C,EAAE;EAC9FC,YAAY,EAAEA,CAAA,KAAMC,UAAU,CAACC;CAChC,CAAC;AAEF;;;;;;AAMA,OAAO,MAAMC,KAAK,gBAAqCP,KAAK,CAACQ,MAAM,CACjEV,YAAY,CAACW,MAAM,eACnBV,MAAM,CAACW,GAAG,CAAC,aAAS;EAClB,MAAMJ,MAAM,GAAG,OAAOJ,SAAS;EAC/B,IAAI,CAACI,MAAM,EAAE;IACX,OAAO,OAAOP,MAAM,CAACY,GAAG,CAAC,IAAIC,KAAK,CAAC,iCAAiC,CAAC,CAAC;EACxE;EACA,MAAMC,WAAW,GAAIC,IAAY,IAAgB;IAC/C,MAAMC,KAAK,GAAG,IAAIC,UAAU,CAACF,IAAI,CAAC;IAClCR,MAAM,CAACW,eAAe,CAACF,KAAK,CAAC;IAC7B,OAAOA,KAAK;EACd,CAAC;EAED,MAAMG,MAAM,GAAkCA,CAACC,SAAS,EAAEC,IAAI,KAAI;IAChE,IAAI,OAAOd,MAAM,CAACe,MAAM,CAACH,MAAM,KAAK,UAAU,EAAE;MAC9C,OAAOnB,MAAM,CAACuB,IAAI,CAACrB,aAAa,CAACsB,WAAW,CAAC;QAC3CC,MAAM,EAAE,QAAQ;QAChBC,MAAM,EAAE,QAAQ;QAChBC,IAAI,EAAE,SAAS;QACfC,WAAW,EAAE;OACd,CAAC,CAAC;IACL;IACA,OAAO5B,MAAM,CAAC6B,GAAG,CACf7B,MAAM,CAAC8B,UAAU,CAAC;MAChBC,GAAG,EAAEA,CAAA,KAAMxB,MAAM,CAACe,MAAM,CAACH,MAAM,CAACC,SAAS,EAAE,IAAIH,UAAU,CAACI,IAAI,CAAC,CAAC;MAChEW,KAAK,EAAGC,KAAK,IACX/B,aAAa,CAACsB,WAAW,CAAC;QACxBC,MAAM,EAAE,QAAQ;QAChBC,MAAM,EAAE,QAAQ;QAChBC,IAAI,EAAE,SAAS;QACfC,WAAW,EAAE,0BAA0B;QACvCK;OACD;KACJ,CAAC,EACDC,MAAM,IAAK,IAAIjB,UAAU,CAACiB,MAAM,CAAC,CACnC;EACH,CAAC;EAED,OAAOnC,YAAY,CAACoC,IAAI,CAAC;IACvBrB,WAAW;IACXK;GACD,CAAC;AACJ,CAAC,CAAC,CACH","ignoreList":[]}
|
|
@@ -1,49 +1,65 @@
|
|
|
1
|
+
import * as Context from "effect/Context";
|
|
1
2
|
import * as Effect from "effect/Effect";
|
|
2
3
|
import type { LazyArg } from "effect/Function";
|
|
3
4
|
import type * as Layer from "effect/Layer";
|
|
4
|
-
import * as ServiceMap from "effect/ServiceMap";
|
|
5
5
|
import * as HttpClient from "effect/unstable/http/HttpClient";
|
|
6
6
|
export {
|
|
7
7
|
/**
|
|
8
|
-
*
|
|
8
|
+
* Context reference for the `fetch` implementation used by the fetch-based HTTP client.
|
|
9
|
+
*
|
|
9
10
|
* @category Fetch
|
|
11
|
+
* @since 4.0.0
|
|
10
12
|
*/
|
|
11
13
|
Fetch,
|
|
12
14
|
/**
|
|
13
|
-
*
|
|
15
|
+
* Layer that provides an `HttpClient` implementation backed by the configured `Fetch` function.
|
|
16
|
+
*
|
|
14
17
|
* @category Fetch
|
|
18
|
+
* @since 4.0.0
|
|
15
19
|
*/
|
|
16
20
|
layer as layerFetch,
|
|
17
21
|
/**
|
|
18
|
-
*
|
|
22
|
+
* Service containing default `RequestInit` options for the fetch-based HTTP client.
|
|
23
|
+
*
|
|
19
24
|
* @category Fetch
|
|
25
|
+
* @since 4.0.0
|
|
20
26
|
*/
|
|
21
27
|
RequestInit } from "effect/unstable/http/FetchHttpClient";
|
|
22
28
|
/**
|
|
23
|
-
*
|
|
24
|
-
*
|
|
29
|
+
* Allowed response body modes for the browser XHR HTTP client.
|
|
30
|
+
*
|
|
31
|
+
* @category models
|
|
32
|
+
* @since 4.0.0
|
|
25
33
|
*/
|
|
26
34
|
export type XHRResponseType = "arraybuffer" | "text";
|
|
27
35
|
/**
|
|
28
|
-
*
|
|
29
|
-
*
|
|
36
|
+
* Reference that controls the `XMLHttpRequest.responseType` used by the browser XHR HTTP client, defaulting to `"text"`.
|
|
37
|
+
*
|
|
38
|
+
* @category references
|
|
39
|
+
* @since 4.0.0
|
|
30
40
|
*/
|
|
31
|
-
export declare const CurrentXHRResponseType:
|
|
41
|
+
export declare const CurrentXHRResponseType: Context.Reference<XHRResponseType>;
|
|
32
42
|
/**
|
|
33
|
-
*
|
|
34
|
-
*
|
|
43
|
+
* Runs an effect with `CurrentXHRResponseType` set to `"arraybuffer"` so the XHR HTTP client receives response bodies as `ArrayBuffer` values.
|
|
44
|
+
*
|
|
45
|
+
* @category references
|
|
46
|
+
* @since 4.0.0
|
|
35
47
|
*/
|
|
36
48
|
export declare const withXHRArrayBuffer: <A, E, R>(self: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
|
|
37
|
-
declare const XMLHttpRequest_base:
|
|
49
|
+
declare const XMLHttpRequest_base: Context.ServiceClass<XMLHttpRequest, "@effect/platform-browser/BrowserHttpClient/XMLHttpRequest", LazyArg<globalThis.XMLHttpRequest>>;
|
|
38
50
|
/**
|
|
39
|
-
*
|
|
40
|
-
*
|
|
51
|
+
* Service tag for the `XMLHttpRequest` constructor used by the browser XHR HTTP client.
|
|
52
|
+
*
|
|
53
|
+
* @category services
|
|
54
|
+
* @since 4.0.0
|
|
41
55
|
*/
|
|
42
56
|
export declare class XMLHttpRequest extends XMLHttpRequest_base {
|
|
43
57
|
}
|
|
44
58
|
/**
|
|
45
|
-
*
|
|
46
|
-
*
|
|
59
|
+
* Layer that provides an `HttpClient` implementation backed by the browser `XMLHttpRequest` API.
|
|
60
|
+
*
|
|
61
|
+
* @category layers
|
|
62
|
+
* @since 4.0.0
|
|
47
63
|
*/
|
|
48
64
|
export declare const layerXMLHttpRequest: Layer.Layer<HttpClient.HttpClient>;
|
|
49
65
|
//# sourceMappingURL=BrowserHttpClient.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BrowserHttpClient.d.ts","sourceRoot":"","sources":["../src/BrowserHttpClient.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"BrowserHttpClient.d.ts","sourceRoot":"","sources":["../src/BrowserHttpClient.ts"],"names":[],"mappings":"AAiCA,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAE9C,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAQ1C,OAAO,KAAK,UAAU,MAAM,iCAAiC,CAAA;AAY7D,OAAO;AACL;;;;;GAKG;AACH,KAAK;AACL;;;;;GAKG;AACH,KAAK,IAAI,UAAU;AACnB;;;;;GAKG;AACH,WAAW,EACZ,MAAM,sCAAsC,CAAA;AAM7C;;;;;GAKG;AACH,MAAM,MAAM,eAAe,GAAG,aAAa,GAAG,MAAM,CAAA;AAEpD;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,EAAE,OAAO,CAAC,SAAS,CAAC,eAAe,CAGrE,CAAA;AAED;;;;;GAKG;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;;;;;GAKG;AACH,qBAAa,cAAe,SAAQ,mBAG4B;CAAG;AA4SnE;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAElE,CAAA"}
|
|
@@ -1,11 +1,42 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Browser implementations of the Effect `HttpClient`.
|
|
3
|
+
*
|
|
4
|
+
* This module exposes HTTP client layers for code that runs in a browser. It
|
|
5
|
+
* re-exports the fetch-based client for the common case, where requests should
|
|
6
|
+
* use the platform `fetch` implementation and optional `RequestInit` defaults,
|
|
7
|
+
* and it provides an `XMLHttpRequest`-backed layer for integrations that need
|
|
8
|
+
* XHR semantics such as response type control or environments where XHR is the
|
|
9
|
+
* required transport.
|
|
10
|
+
*
|
|
11
|
+
* Use these layers for single-page applications, browser tests, generated
|
|
12
|
+
* `HttpApiClient`s, and other client-side Effect programs that need HTTP
|
|
13
|
+
* requests to participate in interruption, typed transport / decode errors, and
|
|
14
|
+
* Effect's response body readers.
|
|
15
|
+
*
|
|
16
|
+
* Browser networking rules still apply. Cross-origin requests are subject to
|
|
17
|
+
* CORS preflights and server allowlists, especially when using custom headers,
|
|
18
|
+
* non-simple methods, or non-simple content types. Only CORS-exposed response
|
|
19
|
+
* headers are readable, and cookies / authentication are controlled by the
|
|
20
|
+
* browser and the configured fetch `RequestInit.credentials` policy. The XHR
|
|
21
|
+
* layer uses the browser's `XMLHttpRequest` defaults for credentials.
|
|
22
|
+
*
|
|
23
|
+
* Body handling differs between the transports. Fetch delegates body framing to
|
|
24
|
+
* the Web Fetch implementation. The XHR client sends empty, raw, `Uint8Array`,
|
|
25
|
+
* and `FormData` bodies directly, buffers `Stream` request bodies before
|
|
26
|
+
* sending, defaults responses to text, and can be switched to `ArrayBuffer`
|
|
27
|
+
* responses with `withXHRArrayBuffer`. When sending `FormData`, avoid setting
|
|
28
|
+
* an incompatible `Content-Type` header so the browser can generate the
|
|
29
|
+
* multipart boundary.
|
|
30
|
+
*
|
|
31
|
+
* @since 4.0.0
|
|
3
32
|
*/
|
|
4
33
|
import * as Cause from "effect/Cause";
|
|
34
|
+
import * as Context from "effect/Context";
|
|
5
35
|
import * as Effect from "effect/Effect";
|
|
6
36
|
import * as Inspectable from "effect/Inspectable";
|
|
37
|
+
import * as Option from "effect/Option";
|
|
38
|
+
import { pipeArguments } from "effect/Pipeable";
|
|
7
39
|
import * as Queue from "effect/Queue";
|
|
8
|
-
import * as ServiceMap from "effect/ServiceMap";
|
|
9
40
|
import * as Stream from "effect/Stream";
|
|
10
41
|
import * as Cookies from "effect/unstable/http/Cookies";
|
|
11
42
|
import * as Headers from "effect/unstable/http/Headers";
|
|
@@ -20,40 +51,52 @@ import * as HeaderParser from "multipasta/HeadersParser";
|
|
|
20
51
|
// =============================================================================
|
|
21
52
|
export {
|
|
22
53
|
/**
|
|
23
|
-
*
|
|
54
|
+
* Context reference for the `fetch` implementation used by the fetch-based HTTP client.
|
|
55
|
+
*
|
|
24
56
|
* @category Fetch
|
|
57
|
+
* @since 4.0.0
|
|
25
58
|
*/
|
|
26
59
|
Fetch,
|
|
27
60
|
/**
|
|
28
|
-
*
|
|
61
|
+
* Layer that provides an `HttpClient` implementation backed by the configured `Fetch` function.
|
|
62
|
+
*
|
|
29
63
|
* @category Fetch
|
|
64
|
+
* @since 4.0.0
|
|
30
65
|
*/
|
|
31
66
|
layer as layerFetch,
|
|
32
67
|
/**
|
|
33
|
-
*
|
|
68
|
+
* Service containing default `RequestInit` options for the fetch-based HTTP client.
|
|
69
|
+
*
|
|
34
70
|
* @category Fetch
|
|
71
|
+
* @since 4.0.0
|
|
35
72
|
*/
|
|
36
73
|
RequestInit } from "effect/unstable/http/FetchHttpClient";
|
|
37
74
|
/**
|
|
38
|
-
*
|
|
39
|
-
*
|
|
75
|
+
* Reference that controls the `XMLHttpRequest.responseType` used by the browser XHR HTTP client, defaulting to `"text"`.
|
|
76
|
+
*
|
|
77
|
+
* @category references
|
|
78
|
+
* @since 4.0.0
|
|
40
79
|
*/
|
|
41
|
-
export const CurrentXHRResponseType = /*#__PURE__*/
|
|
80
|
+
export const CurrentXHRResponseType = /*#__PURE__*/Context.Reference("@effect/platform-browser/BrowserHttpClient/CurrentXHRResponseType", {
|
|
42
81
|
defaultValue: () => "text"
|
|
43
82
|
});
|
|
44
83
|
/**
|
|
45
|
-
*
|
|
46
|
-
*
|
|
84
|
+
* Runs an effect with `CurrentXHRResponseType` set to `"arraybuffer"` so the XHR HTTP client receives response bodies as `ArrayBuffer` values.
|
|
85
|
+
*
|
|
86
|
+
* @category references
|
|
87
|
+
* @since 4.0.0
|
|
47
88
|
*/
|
|
48
89
|
export const withXHRArrayBuffer = self => Effect.provideService(self, CurrentXHRResponseType, "arraybuffer");
|
|
49
90
|
/**
|
|
50
|
-
*
|
|
51
|
-
*
|
|
91
|
+
* Service tag for the `XMLHttpRequest` constructor used by the browser XHR HTTP client.
|
|
92
|
+
*
|
|
93
|
+
* @category services
|
|
94
|
+
* @since 4.0.0
|
|
52
95
|
*/
|
|
53
|
-
export class XMLHttpRequest extends /*#__PURE__*/
|
|
96
|
+
export class XMLHttpRequest extends /*#__PURE__*/Context.Service()("@effect/platform-browser/BrowserHttpClient/XMLHttpRequest") {}
|
|
54
97
|
const makeXhrRequest = () => new globalThis.XMLHttpRequest();
|
|
55
98
|
const makeXmlHttpRequest = /*#__PURE__*/HttpClient.make((request, url, signal, fiber) => Effect.suspend(() => {
|
|
56
|
-
const xhr =
|
|
99
|
+
const xhr = Context.getOrElse(fiber.context, XMLHttpRequest, () => makeXhrRequest)();
|
|
57
100
|
signal.addEventListener("abort", () => {
|
|
58
101
|
xhr.abort();
|
|
59
102
|
xhr.onreadystatechange = null;
|
|
@@ -155,7 +198,7 @@ class IncomingMessageImpl extends Inspectable.Class {
|
|
|
155
198
|
return this.cachedCookies = Cookies.fromSetCookie(this._rawHeaders["set-cookie"]);
|
|
156
199
|
}
|
|
157
200
|
get remoteAddress() {
|
|
158
|
-
return
|
|
201
|
+
return Option.none();
|
|
159
202
|
}
|
|
160
203
|
_textEffect;
|
|
161
204
|
get text() {
|
|
@@ -286,10 +329,15 @@ class ClientResponseImpl extends IncomingMessageImpl {
|
|
|
286
329
|
status: this.status
|
|
287
330
|
});
|
|
288
331
|
}
|
|
332
|
+
pipe() {
|
|
333
|
+
return pipeArguments(this, arguments);
|
|
334
|
+
}
|
|
289
335
|
}
|
|
290
336
|
/**
|
|
291
|
-
*
|
|
292
|
-
*
|
|
337
|
+
* Layer that provides an `HttpClient` implementation backed by the browser `XMLHttpRequest` API.
|
|
338
|
+
*
|
|
339
|
+
* @category layers
|
|
340
|
+
* @since 4.0.0
|
|
293
341
|
*/
|
|
294
|
-
export const layerXMLHttpRequest = /*#__PURE__*/HttpClient.
|
|
342
|
+
export const layerXMLHttpRequest = /*#__PURE__*/HttpClient.layerMergedContext(/*#__PURE__*/Effect.succeed(makeXmlHttpRequest));
|
|
295
343
|
//# sourceMappingURL=BrowserHttpClient.js.map
|
|
@@ -1 +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":[]}
|
|
1
|
+
{"version":3,"file":"BrowserHttpClient.js","names":["Cause","Context","Effect","Inspectable","Option","pipeArguments","Queue","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","context","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","none","_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","arguments","layerXMLHttpRequest","layerMergedContext"],"sources":["../src/BrowserHttpClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,24 +1,27 @@
|
|
|
1
|
-
|
|
2
|
-
* @since 1.0.0
|
|
3
|
-
*/
|
|
4
|
-
import type * as Layer from "effect/Layer";
|
|
1
|
+
import * as Layer from "effect/Layer";
|
|
5
2
|
import * as KeyValueStore from "effect/unstable/persistence/KeyValueStore";
|
|
3
|
+
import { IndexedDb } from "./IndexedDb.ts";
|
|
6
4
|
/**
|
|
7
|
-
* Creates a `KeyValueStore` layer that uses the browser's `localStorage`
|
|
5
|
+
* Creates a `KeyValueStore` layer that uses the browser's `localStorage` API and stores values between browser sessions.
|
|
8
6
|
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
* @since 1.0.0
|
|
12
|
-
* @category Layers
|
|
7
|
+
* @category layers
|
|
8
|
+
* @since 4.0.0
|
|
13
9
|
*/
|
|
14
10
|
export declare const layerLocalStorage: Layer.Layer<KeyValueStore.KeyValueStore>;
|
|
15
11
|
/**
|
|
16
|
-
* Creates a `KeyValueStore` layer that uses the browser's `sessionStorage`
|
|
17
|
-
*
|
|
18
|
-
* Values are stored only for the current session.
|
|
12
|
+
* Creates a `KeyValueStore` layer that uses the browser's `sessionStorage` API and stores values only for the current session.
|
|
19
13
|
*
|
|
20
|
-
* @
|
|
21
|
-
* @
|
|
14
|
+
* @category layers
|
|
15
|
+
* @since 4.0.0
|
|
22
16
|
*/
|
|
23
17
|
export declare const layerSessionStorage: Layer.Layer<KeyValueStore.KeyValueStore>;
|
|
18
|
+
/**
|
|
19
|
+
* Creates a `KeyValueStore` layer backed by IndexedDB.
|
|
20
|
+
*
|
|
21
|
+
* @category layers
|
|
22
|
+
* @since 4.0.0
|
|
23
|
+
*/
|
|
24
|
+
export declare const layerIndexedDb: (options?: {
|
|
25
|
+
readonly database?: string | undefined;
|
|
26
|
+
}) => Layer.Layer<KeyValueStore.KeyValueStore, never, IndexedDb>;
|
|
24
27
|
//# sourceMappingURL=BrowserKeyValueStore.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BrowserKeyValueStore.d.ts","sourceRoot":"","sources":["../src/BrowserKeyValueStore.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"BrowserKeyValueStore.d.ts","sourceRoot":"","sources":["../src/BrowserKeyValueStore.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,aAAa,MAAM,2CAA2C,CAAA;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,aAAa,CAEtE,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,aAAa,CAExE,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GAAI,UAAU;IACvC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACvC,KAAG,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,aAAa,EAAE,KAAK,EAAE,SAAS,CA8D1D,CAAA"}
|
|
@@ -1,20 +1,140 @@
|
|
|
1
|
-
import * as KeyValueStore from "effect/unstable/persistence/KeyValueStore";
|
|
2
1
|
/**
|
|
3
|
-
*
|
|
2
|
+
* Browser-backed `KeyValueStore` layers for Effect programs.
|
|
3
|
+
*
|
|
4
|
+
* This module provides `KeyValueStore` implementations backed by the browser's
|
|
5
|
+
* synchronous Web Storage APIs: `localStorage` for origin-scoped data that
|
|
6
|
+
* persists across page reloads and browser sessions, and `sessionStorage` for
|
|
7
|
+
* page-session data that is cleared when that tab or window's page session
|
|
8
|
+
* ends. They are useful for small client-side values such as user preferences,
|
|
9
|
+
* feature flags, lightweight caches, persisted drafts, or session-only workflow
|
|
10
|
+
* state.
|
|
4
11
|
*
|
|
5
|
-
*
|
|
12
|
+
* Web Storage is only available in browser environments and is scoped by origin.
|
|
13
|
+
* Browsers may deny access in private modes or restricted contexts, and writes
|
|
14
|
+
* can fail when storage quotas are exceeded. The API stores strings and runs
|
|
15
|
+
* synchronously on the main thread, so prefer it for small payloads and avoid
|
|
16
|
+
* treating it as a database or a secure place for sensitive data.
|
|
6
17
|
*
|
|
7
|
-
* @since
|
|
8
|
-
* @category Layers
|
|
18
|
+
* @since 4.0.0
|
|
9
19
|
*/
|
|
10
|
-
|
|
20
|
+
import * as Effect from "effect/Effect";
|
|
21
|
+
import * as Layer from "effect/Layer";
|
|
22
|
+
import * as KeyValueStore from "effect/unstable/persistence/KeyValueStore";
|
|
23
|
+
import { IndexedDb } from "./IndexedDb.js";
|
|
11
24
|
/**
|
|
12
|
-
* Creates a `KeyValueStore` layer that uses the browser's `
|
|
25
|
+
* Creates a `KeyValueStore` layer that uses the browser's `localStorage` API and stores values between browser sessions.
|
|
13
26
|
*
|
|
14
|
-
*
|
|
27
|
+
* @category layers
|
|
28
|
+
* @since 4.0.0
|
|
29
|
+
*/
|
|
30
|
+
export const layerLocalStorage = /*#__PURE__*/KeyValueStore.layerStorage(() => globalThis.localStorage);
|
|
31
|
+
/**
|
|
32
|
+
* Creates a `KeyValueStore` layer that uses the browser's `sessionStorage` API and stores values only for the current session.
|
|
15
33
|
*
|
|
16
|
-
* @
|
|
17
|
-
* @
|
|
34
|
+
* @category layers
|
|
35
|
+
* @since 4.0.0
|
|
18
36
|
*/
|
|
19
37
|
export const layerSessionStorage = /*#__PURE__*/KeyValueStore.layerStorage(() => globalThis.sessionStorage);
|
|
38
|
+
/**
|
|
39
|
+
* Creates a `KeyValueStore` layer backed by IndexedDB.
|
|
40
|
+
*
|
|
41
|
+
* @category layers
|
|
42
|
+
* @since 4.0.0
|
|
43
|
+
*/
|
|
44
|
+
export const layerIndexedDb = options => Layer.effect(KeyValueStore.KeyValueStore)(Effect.gen(function* () {
|
|
45
|
+
const db = yield* Effect.acquireRelease(openDatabase(options?.database ?? "effect_key_value_store"), db => Effect.sync(() => db.close())).pipe(Effect.orDie);
|
|
46
|
+
return KeyValueStore.make({
|
|
47
|
+
clear: Effect.suspend(() => {
|
|
48
|
+
const store = getKvsEntriesStore(db, "readwrite");
|
|
49
|
+
return idbRequest({
|
|
50
|
+
method: "clear",
|
|
51
|
+
message: "Failed to clear backing store"
|
|
52
|
+
}, () => store.clear());
|
|
53
|
+
}),
|
|
54
|
+
get: key => Effect.map(Effect.suspend(() => {
|
|
55
|
+
const store = getKvsEntriesStore(db, "readonly");
|
|
56
|
+
return idbRequest({
|
|
57
|
+
method: "get",
|
|
58
|
+
message: "Failed to get value from backing store",
|
|
59
|
+
key
|
|
60
|
+
}, () => store.get(key));
|
|
61
|
+
}), found => typeof found?.value === "string" ? found.value : undefined),
|
|
62
|
+
getUint8Array: key => Effect.map(Effect.suspend(() => {
|
|
63
|
+
const store = getKvsEntriesStore(db, "readonly");
|
|
64
|
+
return idbRequest({
|
|
65
|
+
method: "getUint8Array",
|
|
66
|
+
message: "Failed to get value from backing store",
|
|
67
|
+
key
|
|
68
|
+
}, () => store.get(key));
|
|
69
|
+
}), found => found?.value && found.value instanceof Uint8Array ? found.value : undefined),
|
|
70
|
+
set: (key, value) => Effect.asVoid(Effect.suspend(() => {
|
|
71
|
+
const store = getKvsEntriesStore(db, "readwrite");
|
|
72
|
+
return idbRequest({
|
|
73
|
+
method: "set",
|
|
74
|
+
message: "Failed to set value in backing store",
|
|
75
|
+
key
|
|
76
|
+
}, () => store.put({
|
|
77
|
+
key,
|
|
78
|
+
value
|
|
79
|
+
}));
|
|
80
|
+
})),
|
|
81
|
+
size: Effect.suspend(() => {
|
|
82
|
+
const store = getKvsEntriesStore(db, "readonly");
|
|
83
|
+
return idbRequest({
|
|
84
|
+
method: "size",
|
|
85
|
+
message: "Failed to get backing store size"
|
|
86
|
+
}, () => store.count());
|
|
87
|
+
}),
|
|
88
|
+
remove: key => Effect.asVoid(Effect.suspend(() => {
|
|
89
|
+
const store = getKvsEntriesStore(db, "readwrite");
|
|
90
|
+
return idbRequest({
|
|
91
|
+
method: "remove",
|
|
92
|
+
message: "Failed to remove value from backing store",
|
|
93
|
+
key
|
|
94
|
+
}, () => store.delete(key));
|
|
95
|
+
}))
|
|
96
|
+
});
|
|
97
|
+
}));
|
|
98
|
+
const databaseVersion = 1;
|
|
99
|
+
const entriesStoreName = "entries";
|
|
100
|
+
const openDatabase = /*#__PURE__*/Effect.fnUntraced(function* (database) {
|
|
101
|
+
const idb = (yield* IndexedDb).indexedDB;
|
|
102
|
+
const openRequest = yield* Effect.try({
|
|
103
|
+
try: () => idb.open(database, databaseVersion),
|
|
104
|
+
catch: cause => new KeyValueStore.KeyValueStoreError({
|
|
105
|
+
method: "open",
|
|
106
|
+
message: "Failed to open backing store database",
|
|
107
|
+
cause
|
|
108
|
+
})
|
|
109
|
+
});
|
|
110
|
+
openRequest.onupgradeneeded = () => {
|
|
111
|
+
const db = openRequest.result;
|
|
112
|
+
if (!db.objectStoreNames.contains(entriesStoreName)) {
|
|
113
|
+
db.createObjectStore(entriesStoreName, {
|
|
114
|
+
keyPath: "key"
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
};
|
|
118
|
+
return yield* idbRequest({
|
|
119
|
+
method: "open",
|
|
120
|
+
message: "Failed to open backing store database"
|
|
121
|
+
}, () => openRequest);
|
|
122
|
+
});
|
|
123
|
+
const idbRequest = (failArgs, evaluate) => Effect.callback(resume => {
|
|
124
|
+
const request = evaluate();
|
|
125
|
+
if (request.readyState === "done") {
|
|
126
|
+
return resume(Effect.succeed(request.result));
|
|
127
|
+
}
|
|
128
|
+
request.onsuccess = () => {
|
|
129
|
+
resume(Effect.succeed(request.result));
|
|
130
|
+
};
|
|
131
|
+
request.onerror = () => resume(Effect.fail(new KeyValueStore.KeyValueStoreError({
|
|
132
|
+
...failArgs,
|
|
133
|
+
cause: request.error
|
|
134
|
+
})));
|
|
135
|
+
});
|
|
136
|
+
const getKvsEntriesStore = (db, mode) => {
|
|
137
|
+
const transaction = db.transaction(entriesStoreName, mode);
|
|
138
|
+
return transaction.objectStore(entriesStoreName);
|
|
139
|
+
};
|
|
20
140
|
//# sourceMappingURL=BrowserKeyValueStore.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BrowserKeyValueStore.js","names":["KeyValueStore","layerLocalStorage","layerStorage","globalThis","localStorage","layerSessionStorage","sessionStorage"],"sources":["../src/BrowserKeyValueStore.ts"],"sourcesContent":[null],"mappings":"
|
|
1
|
+
{"version":3,"file":"BrowserKeyValueStore.js","names":["Effect","Layer","KeyValueStore","IndexedDb","layerLocalStorage","layerStorage","globalThis","localStorage","layerSessionStorage","sessionStorage","layerIndexedDb","options","effect","gen","db","acquireRelease","openDatabase","database","sync","close","pipe","orDie","make","clear","suspend","store","getKvsEntriesStore","idbRequest","method","message","get","key","map","found","value","undefined","getUint8Array","Uint8Array","set","asVoid","put","size","count","remove","delete","databaseVersion","entriesStoreName","fnUntraced","idb","indexedDB","openRequest","try","open","catch","cause","KeyValueStoreError","onupgradeneeded","result","objectStoreNames","contains","createObjectStore","keyPath","failArgs","evaluate","callback","resume","request","readyState","succeed","onsuccess","onerror","fail","error","mode","transaction","objectStore"],"sources":["../src/BrowserKeyValueStore.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import * as Layer from "effect/Layer";
|
|
2
|
+
import * as Persistence from "effect/unstable/persistence/Persistence";
|
|
3
|
+
/**
|
|
4
|
+
* Creates a `BackingPersistence` layer backed by IndexedDB, optionally using the provided database name.
|
|
5
|
+
*
|
|
6
|
+
* @category layers
|
|
7
|
+
* @since 4.0.0
|
|
8
|
+
*/
|
|
9
|
+
export declare const layerBackingIndexedDb: (options?: {
|
|
10
|
+
readonly database?: string | undefined;
|
|
11
|
+
}) => Layer.Layer<Persistence.BackingPersistence>;
|
|
12
|
+
/**
|
|
13
|
+
* Creates a `Persistence` layer backed by IndexedDB, optionally using the provided database name.
|
|
14
|
+
*
|
|
15
|
+
* @category layers
|
|
16
|
+
* @since 4.0.0
|
|
17
|
+
*/
|
|
18
|
+
export declare const layerIndexedDb: (options?: {
|
|
19
|
+
readonly database?: string | undefined;
|
|
20
|
+
}) => Layer.Layer<Persistence.Persistence>;
|
|
21
|
+
//# sourceMappingURL=BrowserPersistence.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BrowserPersistence.d.ts","sourceRoot":"","sources":["../src/BrowserPersistence.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,WAAW,MAAM,yCAAyC,CAAA;AAEtE;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,GAAI,UAAU;IAC9C,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACvC,KAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,kBAAkB,CAoBzC,CAAA;AAOL;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GAAI,UAAU;IACvC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACvC,KAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,WAAW,CAGpC,CAAA"}
|