@livestore/utils 0.3.0-dev.22 → 0.3.0-dev.24

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.
@@ -15,5 +15,4 @@ export interface JsonObject {
15
15
  }
16
16
  export type JsonValue = string | number | boolean | null | JsonObject | JsonArray;
17
17
  export declare const JsonValue: Schema.Schema<JsonValue>;
18
- export declare const SearchParamsString: Schema.transform<typeof Schema.String, Schema.Union<[Schema.Record$<typeof Schema.String, typeof Schema.String>, typeof Schema.String]>>;
19
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/effect/Schema/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAqB,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAEpD,cAAc,eAAe,CAAA;AAC7B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAK5B,eAAO,MAAM,IAAI,GAAI,QAAQ,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,WAS9C,CAAA;AAED,eAAO,MAAM,uBAAuB,GACjC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,QAAQ,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,YAAY,GAAG,SAAS,MAC3E,GAAG,CAAC,EAAE,kBAAkB,YAAY,GAAG,SAAS,KAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,CAShG,CAAA;AAEN,eAAO,MAAM,IAAI,GAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,QAAQ,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAIhF,CAAA;AAEJ,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAqC,CAAA;AAExG,MAAM,WAAW,SAAU,SAAQ,aAAa,CAAC,SAAS,CAAC;CAAG;AAC9D,MAAM,WAAW,UAAU;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;CACzB;AACD,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,UAAU,GAAG,SAAS,CAAA;AAEjF,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,CAOV,CAAA;AAErC,eAAO,MAAM,kBAAkB,0IAa9B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/effect/Schema/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAqB,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAEpD,cAAc,eAAe,CAAA;AAC7B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAK5B,eAAO,MAAM,IAAI,GAAI,QAAQ,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,WAS9C,CAAA;AAED,eAAO,MAAM,uBAAuB,GACjC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,QAAQ,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,YAAY,GAAG,SAAS,MAC3E,GAAG,CAAC,EAAE,kBAAkB,YAAY,GAAG,SAAS,KAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,CAShG,CAAA;AAEN,eAAO,MAAM,IAAI,GAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,QAAQ,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAIhF,CAAA;AAEJ,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAqC,CAAA;AAExG,MAAM,WAAW,SAAU,SAAQ,aAAa,CAAC,SAAS,CAAC;CAAG;AAC9D,MAAM,WAAW,UAAU;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;CACzB;AACD,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,UAAU,GAAG,SAAS,CAAA;AAEjF,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,CAOV,CAAA"}
@@ -26,14 +26,4 @@ export const swap = (schema) => Schema.transformOrFail(Schema.typeSchema(schema)
26
26
  });
27
27
  export const Base64FromUint8Array = swap(Schema.Uint8ArrayFromBase64);
28
28
  export const JsonValue = Schema.Union(Schema.String, Schema.Number, Schema.Boolean, Schema.Null, Schema.Array(Schema.suspend(() => JsonValue)), Schema.Record({ key: Schema.String, value: Schema.suspend(() => JsonValue) })).annotations({ title: 'JsonValue' });
29
- export const SearchParamsString = Schema.transform(Schema.String, Schema.Union(Schema.Record({ key: Schema.String, value: Schema.String }), Schema.String), {
30
- decode: (searchParamsString) => {
31
- const searchParams = new URLSearchParams(searchParamsString);
32
- return Object.fromEntries(searchParams.entries());
33
- },
34
- encode: (searchParams) => {
35
- const searchParamsString = new URLSearchParams(Object.entries(searchParams)).toString();
36
- return searchParamsString;
37
- },
38
- });
39
29
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/effect/Schema/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/effect/Schema/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAI1D,cAAc,eAAe,CAAA;AAC7B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAE5B,2FAA2F;AAC3F,kDAAkD;AAClD,8CAA8C;AAC9C,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,MAA0B,EAAE,EAAE;IACjD,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;IACzD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,IAAI,CACV,qIAAqI,CACtI,CAAA;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAA;IACzC,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,uBAAuB,GAClC,CAAU,MAA8B,EAAE,OAAkC,EAAE,EAAE,CAChF,CAAC,CAAI,EAAE,eAA0C,EAAqD,EAAE,CACtG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,YAAY,CAAC,aAAa,CAAA;IAEnD,MAAM,OAAO,GAAM,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,IAAI,CAC/E,MAAM,CAAC,cAAc,CAAC,YAAY,CAAC,SAAS,EAAE,SAAS,CAAC,CACzD,CAAA;IAED,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,UAAU,EAAoB,CAAC,CAAA;AAC5D,CAAC,CAAC,CAAA;AAEN,MAAM,CAAC,MAAM,IAAI,GAAG,CAAU,MAA8B,EAA0B,EAAE,CACtF,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE;IAC9E,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC;IAClC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC;CACnC,CAAC,CAAA;AAEJ,MAAM,CAAC,MAAM,oBAAoB,GAAsC,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAA;AAQxG,MAAM,CAAC,MAAM,SAAS,GAA6B,MAAM,CAAC,KAAK,CAC7D,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,OAAO,EACd,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,EAC7C,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAC9E,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAA"}
@@ -1,3 +1,4 @@
1
+ import { HttpClient } from '@effect/platform';
1
2
  import type { Schedule, Scope } from 'effect';
2
3
  import { Effect, Schema } from 'effect';
3
4
  declare const WebSocketError_base: Schema.TaggedErrorClass<WebSocketError, "WebSocketError", {
@@ -14,6 +15,6 @@ export declare class WebSocketError extends WebSocketError_base {
14
15
  export declare const makeWebSocket: ({ url, reconnect, }: {
15
16
  url: string;
16
17
  reconnect?: Schedule.Schedule<unknown> | false;
17
- }) => Effect.Effect<globalThis.WebSocket, WebSocketError, Scope.Scope>;
18
+ }) => Effect.Effect<globalThis.WebSocket, WebSocketError, Scope.Scope | HttpClient.HttpClient>;
18
19
  export {};
19
20
  //# sourceMappingURL=WebSocket.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WebSocket.d.ts","sourceRoot":"","sources":["../../src/effect/WebSocket.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAkB,MAAM,EAAE,MAAM,QAAQ,CAAA;;;;;;AAEvD,qBAAa,cAAe,SAAQ,mBAElC;CAAG;AAOL;;;GAGG;AACH,eAAO,MAAM,aAAa,GAAI,qBAG3B;IACD,GAAG,EAAE,MAAM,CAAA;IACX,SAAS,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,KAAK,CAAA;CAC/C,KAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,cAAc,EAAE,KAAK,CAAC,KAAK,CAsE/D,CAAA"}
1
+ {"version":3,"file":"WebSocket.d.ts","sourceRoot":"","sources":["../../src/effect/WebSocket.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAkB,MAAM,EAAE,MAAM,QAAQ,CAAA;;;;;;AAEvD,qBAAa,cAAe,SAAQ,mBAElC;CAAG;AAOL;;;GAGG;AACH,eAAO,MAAM,aAAa,GAAI,qBAG3B;IACD,GAAG,EAAE,MAAM,CAAA;IACX,SAAS,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,KAAK,CAAA;CAC/C,KAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,cAAc,EAAE,KAAK,CAAC,KAAK,GAAG,UAAU,CAAC,UAAU,CAyEvF,CAAA"}
@@ -1,3 +1,4 @@
1
+ import { HttpClient } from '@effect/platform';
1
2
  import { Effect, Exit, identity, Schema } from 'effect';
2
3
  export class WebSocketError extends Schema.TaggedError()('WebSocketError', {
3
4
  cause: Schema.Defect,
@@ -36,7 +37,7 @@ export const makeWebSocket = ({ url, reconnect, }) => Effect.gen(function* () {
36
37
  catch (error) {
37
38
  cb(Effect.fail(new WebSocketError({ cause: error })));
38
39
  }
39
- }).pipe(reconnect ? Effect.retry(reconnect) : identity);
40
+ }).pipe(Effect.tapErrorTag('WebSocketError', () => tryLogWebsocketConnectError(url)), reconnect ? Effect.retry(reconnect) : identity);
40
41
  /**
41
42
  * Common WebSocket close codes: https://developer.mozilla.org/en-US/docs/Web/API/WebSocket/close
42
43
  * 1000: Normal closure
@@ -50,7 +51,7 @@ export const makeWebSocket = ({ url, reconnect, }) => Effect.gen(function* () {
50
51
  * 3000-3999: Available for libraries and frameworks
51
52
  * 4000-4999: Available for applications
52
53
  */
53
- yield* Effect.addFinalizer((exit) => Effect.async((cb) => {
54
+ yield* Effect.addFinalizer(Effect.fn(function* (exit) {
54
55
  try {
55
56
  if (Exit.isFailure(exit)) {
56
57
  socket.close(3000);
@@ -60,13 +61,19 @@ export const makeWebSocket = ({ url, reconnect, }) => Effect.gen(function* () {
60
61
  }
61
62
  }
62
63
  catch (error) {
63
- cb(Effect.fail(new WebSocketError({ cause: error })));
64
+ yield* Effect.die(new WebSocketError({ cause: error }));
64
65
  }
65
- }).pipe(Effect.orDie));
66
+ }));
66
67
  return socket;
67
68
  });
68
69
  const validateUrl = (url) => Effect.try({
69
70
  try: () => new URL(url),
70
71
  catch: (error) => new WebSocketError({ cause: error }),
71
72
  });
73
+ const tryLogWebsocketConnectError = (url) => Effect.gen(function* () {
74
+ const client = yield* HttpClient.HttpClient;
75
+ const res = yield* client.get(url);
76
+ const responseBody = yield* res.text;
77
+ yield* Effect.logError(`Failed to connect to '${url}' (status: ${res.status}). Error:`, responseBody);
78
+ }).pipe(Effect.ignore);
72
79
  //# sourceMappingURL=WebSocket.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WebSocket.js","sourceRoot":"","sources":["../../src/effect/WebSocket.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebSocket.js","sourceRoot":"","sources":["../../src/effect/WebSocket.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { FetchHttpClient } from '@effect/platform';
1
2
  import * as Vitest from '@effect/vitest';
2
3
  import { Effect, Exit } from 'effect';
3
4
  import { makeWebSocket } from './WebSocket.js';
@@ -5,6 +6,6 @@ Vitest.describe('WebSocket', () => {
5
6
  Vitest.scopedLive('should create a WebSocket connection', Effect.fn(function* () {
6
7
  const exit = yield* makeWebSocket({ url: 'ws://localhost:1000' }).pipe(Effect.timeout(500), Effect.exit);
7
8
  Vitest.expect(Exit.isFailure(exit)).toBe(true);
8
- }));
9
+ }, Effect.provide(FetchHttpClient.layer)));
9
10
  });
10
11
  //# sourceMappingURL=WebSocket.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WebSocket.test.js","sourceRoot":"","sources":["../../src/effect/WebSocket.test.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAA;AACxC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAErC,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAE9C,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;IAChC,MAAM,CAAC,UAAU,CACf,sCAAsC,EACtC,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC;QACjB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,aAAa,CAAC,EAAE,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;QACxG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAChD,CAAC,CAAC,CACH,CAAA;AACH,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"WebSocket.test.js","sourceRoot":"","sources":["../../src/effect/WebSocket.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAA;AACxC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAErC,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAE9C,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;IAChC,MAAM,CAAC,UAAU,CACf,sCAAsC,EACtC,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC;QACjB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,aAAa,CAAC,EAAE,GAAG,EAAE,qBAAqB,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;QACxG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAChD,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAC1C,CAAA;AACH,CAAC,CAAC,CAAA"}
@@ -16,7 +16,7 @@ export type { Serializable, SerializableWithResult } from 'effect/Schema';
16
16
  export * as Schema from './Schema/index.js';
17
17
  export * as OtelTracer from '@effect/opentelemetry/Tracer';
18
18
  export * as TaskTracing from './TaskTracing.js';
19
- export { Transferable, FileSystem, Worker, WorkerError, WorkerRunner, Terminal, HttpServer, HttpClient, HttpClientError, HttpClientRequest, HttpClientResponse, FetchHttpClient, Socket, } from '@effect/platform';
19
+ export { Transferable, FileSystem, Worker, WorkerError, WorkerRunner, Terminal, HttpServer, HttpClient, HttpClientError, HttpClientRequest, HttpClientResponse, FetchHttpClient, Socket, UrlParams, HttpServerRequest, Headers, HttpMiddleware, HttpRouter, HttpServerResponse, } from '@effect/platform';
20
20
  export { BrowserWorker, BrowserWorkerRunner } from '@effect/platform-browser';
21
21
  export * as Effect from './Effect.js';
22
22
  export * as Schedule from './Schedule.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/effect/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,CAAA;AAErB,OAAO,EACL,KAAK,EACL,GAAG,EACH,eAAe,EACf,KAAK,EACL,KAAK,EACL,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,WAAW,EACX,YAAY,EACZ,MAAM,EACN,IAAI,EACJ,KAAK,EACL,OAAO,EACP,QAAQ,EACR,SAAS,EACT,cAAc,EACd,QAAQ,EACR,MAAM,EACN,WAAW,EACX,OAAO,EACP,MAAM,EACN,OAAO,EACP,IAAI,EACJ,MAAM,EACN,KAAK,EACL,IAAI,EACJ,KAAK,EACL,KAAK,EACL,QAAQ,EACR,KAAK,IAAI,aAAa,EACtB,MAAM,IAAI,cAAc,EACxB,SAAS,EACT,OAAO,EACP,OAAO,EACP,cAAc,EACd,cAAc,EACd,MAAM,EACN,MAAM,EACN,QAAQ,EAER,MAAM,EACN,KAAK,EACL,GAAG,EACH,IAAI,EACJ,OAAO,EACP,SAAS,EAET,IAAI,EACJ,QAAQ,EACR,WAAW,EACX,KAAK,EACL,YAAY,EACZ,OAAO,EACP,iBAAiB,EACjB,UAAU,EACV,KAAK,EACL,KAAK,GACN,MAAM,QAAQ,CAAA;AAEf,OAAO,KAAK,cAAc,MAAM,uBAAuB,CAAA;AAEvD,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAEtC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C,OAAO,KAAK,eAAe,MAAM,sBAAsB,CAAA;AACvD,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAA;AAEjD,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC,OAAO,KAAK,UAAU,MAAM,qBAAqB,CAAA;AACjD,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC5C,YAAY,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AACzE,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,UAAU,MAAM,8BAA8B,CAAA;AAE1D,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C,OAAO,EACL,YAAY,EACZ,UAAU,EACV,MAAM,EACN,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,UAAU,EACV,UAAU,EACV,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,MAAM,GACP,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAI7E,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,cAAc,YAAY,CAAA;AAC1B,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/effect/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,CAAA;AAErB,OAAO,EACL,KAAK,EACL,GAAG,EACH,eAAe,EACf,KAAK,EACL,KAAK,EACL,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,WAAW,EACX,YAAY,EACZ,MAAM,EACN,IAAI,EACJ,KAAK,EACL,OAAO,EACP,QAAQ,EACR,SAAS,EACT,cAAc,EACd,QAAQ,EACR,MAAM,EACN,WAAW,EACX,OAAO,EACP,MAAM,EACN,OAAO,EACP,IAAI,EACJ,MAAM,EACN,KAAK,EACL,IAAI,EACJ,KAAK,EACL,KAAK,EACL,QAAQ,EACR,KAAK,IAAI,aAAa,EACtB,MAAM,IAAI,cAAc,EACxB,SAAS,EACT,OAAO,EACP,OAAO,EACP,cAAc,EACd,cAAc,EACd,MAAM,EACN,MAAM,EACN,QAAQ,EAER,MAAM,EACN,KAAK,EACL,GAAG,EACH,IAAI,EACJ,OAAO,EACP,SAAS,EAET,IAAI,EACJ,QAAQ,EACR,WAAW,EACX,KAAK,EACL,YAAY,EACZ,OAAO,EACP,iBAAiB,EACjB,UAAU,EACV,KAAK,EACL,KAAK,GACN,MAAM,QAAQ,CAAA;AAEf,OAAO,KAAK,cAAc,MAAM,uBAAuB,CAAA;AAEvD,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAEtC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C,OAAO,KAAK,eAAe,MAAM,sBAAsB,CAAA;AACvD,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAA;AAEjD,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC,OAAO,KAAK,UAAU,MAAM,qBAAqB,CAAA;AACjD,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC5C,YAAY,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AACzE,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,UAAU,MAAM,8BAA8B,CAAA;AAE1D,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C,OAAO,EACL,YAAY,EACZ,UAAU,EACV,MAAM,EACN,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,UAAU,EACV,UAAU,EACV,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,MAAM,EACN,SAAS,EACT,iBAAiB,EACjB,OAAO,EACP,cAAc,EACd,UAAU,EACV,kBAAkB,GACnB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAI7E,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,cAAc,YAAY,CAAA;AAC1B,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA"}
@@ -20,7 +20,7 @@ export * as Schema from './Schema/index.js';
20
20
  export * as OtelTracer from '@effect/opentelemetry/Tracer';
21
21
  // export * as OtelResource from '@effect/opentelemetry/Resource'
22
22
  export * as TaskTracing from './TaskTracing.js';
23
- export { Transferable, FileSystem, Worker, WorkerError, WorkerRunner, Terminal, HttpServer, HttpClient, HttpClientError, HttpClientRequest, HttpClientResponse, FetchHttpClient, Socket, } from '@effect/platform';
23
+ export { Transferable, FileSystem, Worker, WorkerError, WorkerRunner, Terminal, HttpServer, HttpClient, HttpClientError, HttpClientRequest, HttpClientResponse, FetchHttpClient, Socket, UrlParams, HttpServerRequest, Headers, HttpMiddleware, HttpRouter, HttpServerResponse, } from '@effect/platform';
24
24
  export { BrowserWorker, BrowserWorkerRunner } from '@effect/platform-browser';
25
25
  // export { DevTools as EffectDevtools } from '@effect/experimental'
26
26
  export * as Effect from './Effect.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/effect/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,CAAA;AAErB,OAAO,EACL,KAAK,EACL,GAAG,EACH,eAAe,EACf,KAAK,EACL,KAAK,EACL,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,WAAW,EACX,YAAY,EACZ,MAAM,EACN,IAAI,EACJ,KAAK,EACL,OAAO,EACP,QAAQ,EACR,SAAS,EACT,cAAc,EACd,QAAQ,EACR,MAAM,EACN,WAAW,EACX,OAAO,EACP,MAAM,EACN,OAAO,EACP,IAAI,EACJ,MAAM,EACN,KAAK,EACL,IAAI,EACJ,KAAK,EACL,KAAK,EACL,QAAQ,EACR,KAAK,IAAI,aAAa,EACtB,MAAM,IAAI,cAAc,EACxB,SAAS,EACT,OAAO,EACP,OAAO,EACP,cAAc,EACd,cAAc,EACd,MAAM,EACN,MAAM,EACN,QAAQ;AACR,UAAU;AACV,MAAM,EACN,KAAK,EACL,GAAG,EACH,IAAI,EACJ,OAAO,EACP,SAAS;AACT,gBAAgB;AAChB,IAAI,EACJ,QAAQ,EACR,WAAW,EACX,KAAK,EACL,YAAY,EACZ,OAAO,EACP,iBAAiB,EACjB,UAAU,EACV,KAAK,EACL,KAAK,GACN,MAAM,QAAQ,CAAA;AAEf,OAAO,KAAK,cAAc,MAAM,uBAAuB,CAAA;AAEvD,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAEtC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C,OAAO,KAAK,eAAe,MAAM,sBAAsB,CAAA;AACvD,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAA;AAEjD,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC,OAAO,KAAK,UAAU,MAAM,qBAAqB,CAAA;AACjD,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE5C,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,UAAU,MAAM,8BAA8B,CAAA;AAC1D,iEAAiE;AACjE,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C,OAAO,EACL,YAAY,EACZ,UAAU,EACV,MAAM,EACN,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,UAAU,EACV,UAAU,EACV,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,MAAM,GACP,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAE7E,oEAAoE;AAEpE,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,cAAc,YAAY,CAAA;AAC1B,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/effect/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,CAAA;AAErB,OAAO,EACL,KAAK,EACL,GAAG,EACH,eAAe,EACf,KAAK,EACL,KAAK,EACL,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,WAAW,EACX,YAAY,EACZ,MAAM,EACN,IAAI,EACJ,KAAK,EACL,OAAO,EACP,QAAQ,EACR,SAAS,EACT,cAAc,EACd,QAAQ,EACR,MAAM,EACN,WAAW,EACX,OAAO,EACP,MAAM,EACN,OAAO,EACP,IAAI,EACJ,MAAM,EACN,KAAK,EACL,IAAI,EACJ,KAAK,EACL,KAAK,EACL,QAAQ,EACR,KAAK,IAAI,aAAa,EACtB,MAAM,IAAI,cAAc,EACxB,SAAS,EACT,OAAO,EACP,OAAO,EACP,cAAc,EACd,cAAc,EACd,MAAM,EACN,MAAM,EACN,QAAQ;AACR,UAAU;AACV,MAAM,EACN,KAAK,EACL,GAAG,EACH,IAAI,EACJ,OAAO,EACP,SAAS;AACT,gBAAgB;AAChB,IAAI,EACJ,QAAQ,EACR,WAAW,EACX,KAAK,EACL,YAAY,EACZ,OAAO,EACP,iBAAiB,EACjB,UAAU,EACV,KAAK,EACL,KAAK,GACN,MAAM,QAAQ,CAAA;AAEf,OAAO,KAAK,cAAc,MAAM,uBAAuB,CAAA;AAEvD,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAEtC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C,OAAO,KAAK,eAAe,MAAM,sBAAsB,CAAA;AACvD,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAA;AAEjD,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC,OAAO,KAAK,UAAU,MAAM,qBAAqB,CAAA;AACjD,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE5C,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,UAAU,MAAM,8BAA8B,CAAA;AAC1D,iEAAiE;AACjE,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C,OAAO,EACL,YAAY,EACZ,UAAU,EACV,MAAM,EACN,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,UAAU,EACV,UAAU,EACV,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,MAAM,EACN,SAAS,EACT,iBAAiB,EACjB,OAAO,EACP,cAAc,EACd,UAAU,EACV,kBAAkB,GACnB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAE7E,oEAAoE;AAEpE,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,cAAc,YAAY,CAAA;AAC1B,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA"}
package/dist/env.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  export declare const env: (name: string) => string | undefined;
2
2
  export declare const isDevEnv: () => any;
3
3
  export declare const TRACE_VERBOSE: boolean;
4
+ /** Only set when developing LiveStore itself. */
4
5
  export declare const LS_DEV: boolean;
5
6
  export declare const IS_CI: boolean;
6
7
  //# sourceMappingURL=env.d.ts.map
package/dist/env.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,GAAG,GAAI,MAAM,MAAM,KAAG,MAAM,GAAG,SAY3C,CAAA;AAED,eAAO,MAAM,QAAQ,WAYpB,CAAA;AAGD,eAAO,MAAM,aAAa,SAAsF,CAAA;AAEhH,eAAO,MAAM,MAAM,SAAkE,CAAA;AAIrF,eAAO,MAAM,KAAK,SAAuB,CAAA"}
1
+ {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,GAAG,GAAI,MAAM,MAAM,KAAG,MAAM,GAAG,SAY3C,CAAA;AAED,eAAO,MAAM,QAAQ,WAYpB,CAAA;AAGD,eAAO,MAAM,aAAa,SAAsF,CAAA;AAEhH,iDAAiD;AACjD,eAAO,MAAM,MAAM,SAAkE,CAAA;AAIrF,eAAO,MAAM,KAAK,SAAuB,CAAA"}
package/dist/env.js CHANGED
@@ -22,6 +22,7 @@ export const isDevEnv = () => {
22
22
  };
23
23
  // export const TRACE_VERBOSE = true
24
24
  export const TRACE_VERBOSE = env('LS_TRACE_VERBOSE') !== undefined || env('VITE_LS_TRACE_VERBOSE') !== undefined;
25
+ /** Only set when developing LiveStore itself. */
25
26
  export const LS_DEV = env('LS_DEV') !== undefined || env('VITE_LS_DEV') !== undefined;
26
27
  const envTruish = (env) => env !== undefined && env !== 'false' && env !== '0';
27
28
  export const IS_CI = envTruish(env('CI'));
package/dist/env.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,IAAY,EAAsB,EAAE;IACtD,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QAChE,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAC1B,CAAC;IAED,6EAA6E;IAC7E,oEAAoE;IACpE,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QAClC,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAC9B,CAAC;IAED,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,EAAE;IAC3B,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QAChE,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAA;IAC9C,CAAC;IAED,6EAA6E;IAC7E,oEAAoE;IACpE,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QAClC,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAA;IAC5B,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,oCAAoC;AACpC,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,CAAC,kBAAkB,CAAC,KAAK,SAAS,IAAI,GAAG,CAAC,uBAAuB,CAAC,KAAK,SAAS,CAAA;AAEhH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,SAAS,IAAI,GAAG,CAAC,aAAa,CAAC,KAAK,SAAS,CAAA;AAErF,MAAM,SAAS,GAAG,CAAC,GAAuB,EAAE,EAAE,CAAC,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,GAAG,CAAA;AAElG,MAAM,CAAC,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,IAAY,EAAsB,EAAE;IACtD,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QAChE,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAC1B,CAAC;IAED,6EAA6E;IAC7E,oEAAoE;IACpE,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QAClC,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAC9B,CAAC;IAED,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,EAAE;IAC3B,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QAChE,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAA;IAC9C,CAAC;IAED,6EAA6E;IAC7E,oEAAoE;IACpE,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QAClC,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAA;IAC5B,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,oCAAoC;AACpC,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,CAAC,kBAAkB,CAAC,KAAK,SAAS,IAAI,GAAG,CAAC,uBAAuB,CAAC,KAAK,SAAS,CAAA;AAEhH,iDAAiD;AACjD,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,SAAS,IAAI,GAAG,CAAC,aAAa,CAAC,KAAK,SAAS,CAAA;AAErF,MAAM,SAAS,GAAG,CAAC,GAAuB,EAAE,EAAE,CAAC,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,GAAG,CAAA;AAElG,MAAM,CAAC,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"ChildProcessRunner.d.ts","sourceRoot":"","sources":["../../../src/node/ChildProcessRunner/ChildProcessRunner.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,+BAA+B,CAAA;AAMvD,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AA0DrC,eAAO,MAAM,KAAK,kDAA2D,CAAA"}
1
+ {"version":3,"file":"ChildProcessRunner.d.ts","sourceRoot":"","sources":["../../../src/node/ChildProcessRunner/ChildProcessRunner.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,+BAA+B,CAAA;AAOvD,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AA0DrC,eAAO,MAAM,KAAK,kDAA2D,CAAA"}
@@ -2,6 +2,7 @@
2
2
  import process from 'node:process';
3
3
  import { WorkerError } from '@effect/platform/WorkerError';
4
4
  import * as Runner from '@effect/platform/WorkerRunner';
5
+ import * as Cause from 'effect/Cause';
5
6
  import * as Context from 'effect/Context';
6
7
  import * as Deferred from 'effect/Deferred';
7
8
  import * as Effect from 'effect/Effect';
@@ -28,7 +29,7 @@ const platformRunnerImpl = Runner.PlatformRunner.of({
28
29
  const fiberSet = yield* FiberSet.make();
29
30
  const runFork = Runtime.runFork(runtime);
30
31
  const onExit = (exit) => {
31
- if (exit._tag === 'Failure') {
32
+ if (exit._tag === 'Failure' && !Cause.isInterruptedOnly(exit.cause)) {
32
33
  // Deferred.unsafeDone(closeLatch, Exit.die(Cause.squash(exit.cause)))
33
34
  Deferred.unsafeDone(closeLatch, Exit.die(exit.cause));
34
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ChildProcessRunner.js","sourceRoot":"","sources":["../../../src/node/ChildProcessRunner/ChildProcessRunner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChildProcessRunner.js","sourceRoot":"","sources":["../../../src/node/ChildProcessRunner/ChildProcessRunner.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@livestore/utils",
3
- "version": "0.3.0-dev.22",
3
+ "version": "0.3.0-dev.24",
4
4
  "type": "module",
5
5
  "sideEffects": [
6
6
  "./dist/global.js",
@@ -75,17 +75,17 @@
75
75
  "pretty-bytes": "6.1.1"
76
76
  },
77
77
  "devDependencies": {
78
- "@effect/cli": "^0.57.1",
79
- "@effect/experimental": "^0.42.1",
80
- "@effect/opentelemetry": "^0.44.8",
81
- "@effect/platform": "^0.78.1",
82
- "@effect/platform-browser": "^0.57.1",
83
- "@effect/platform-bun": "^0.58.1",
84
- "@effect/platform-node": "^0.74.1",
85
- "@effect/printer": "^0.41.8",
86
- "@effect/printer-ansi": "^0.41.8",
87
- "@effect/typeclass": "^0.32.8",
88
- "@effect/vitest": "^0.19.6",
78
+ "@effect/cli": "^0.58.3",
79
+ "@effect/experimental": "^0.43.3",
80
+ "@effect/opentelemetry": "^0.44.12",
81
+ "@effect/platform": "^0.79.3",
82
+ "@effect/platform-browser": "^0.58.3",
83
+ "@effect/platform-bun": "^0.59.3",
84
+ "@effect/platform-node": "^0.75.3",
85
+ "@effect/printer": "^0.41.12",
86
+ "@effect/printer-ansi": "^0.41.12",
87
+ "@effect/typeclass": "^0.32.12",
88
+ "@effect/vitest": "^0.19.10",
89
89
  "@opentelemetry/api": "^1.9.0",
90
90
  "@opentelemetry/exporter-metrics-otlp-http": "^0.57.2",
91
91
  "@opentelemetry/exporter-trace-otlp-http": "^0.57.2",
@@ -96,24 +96,24 @@
96
96
  "@types/jsdom": "^21.1.7",
97
97
  "@types/node": "^22.13.10",
98
98
  "@types/web": "^0.0.203",
99
- "effect": "^3.13.8",
99
+ "effect": "^3.13.12",
100
100
  "jsdom": "^26.0.0",
101
101
  "vitest": "^3.0.8"
102
102
  },
103
103
  "peerDependencies": {
104
- "@effect/cli": "~0.57.1",
105
- "@effect/experimental": "~0.42.1",
106
- "@effect/opentelemetry": "~0.44.8",
107
- "@effect/platform": "~0.78.1",
108
- "@effect/platform-browser": "~0.57.1",
109
- "@effect/platform-bun": "~0.58.1",
110
- "@effect/platform-node": "~0.74.1",
111
- "@effect/printer": "~0.41.8",
112
- "@effect/printer-ansi": "~0.41.8",
113
- "@effect/typeclass": "~0.32.8",
114
- "@effect/vitest": "~0.19.6",
104
+ "@effect/cli": "~0.58.3",
105
+ "@effect/experimental": "~0.43.3",
106
+ "@effect/opentelemetry": "~0.44.12",
107
+ "@effect/platform": "~0.79.3",
108
+ "@effect/platform-browser": "~0.58.3",
109
+ "@effect/platform-bun": "~0.59.3",
110
+ "@effect/platform-node": "~0.75.3",
111
+ "@effect/printer": "~0.41.12",
112
+ "@effect/printer-ansi": "~0.41.12",
113
+ "@effect/typeclass": "~0.32.12",
114
+ "@effect/vitest": "~0.19.10",
115
115
  "@opentelemetry/api": "~1.9.0",
116
- "effect": "~3.13.8"
116
+ "effect": "~3.13.12"
117
117
  },
118
118
  "publishConfig": {
119
119
  "access": "public"
@@ -56,18 +56,3 @@ export const JsonValue: Schema.Schema<JsonValue> = Schema.Union(
56
56
  Schema.Array(Schema.suspend(() => JsonValue)),
57
57
  Schema.Record({ key: Schema.String, value: Schema.suspend(() => JsonValue) }),
58
58
  ).annotations({ title: 'JsonValue' })
59
-
60
- export const SearchParamsString = Schema.transform(
61
- Schema.String,
62
- Schema.Union(Schema.Record({ key: Schema.String, value: Schema.String }), Schema.String),
63
- {
64
- decode: (searchParamsString) => {
65
- const searchParams = new URLSearchParams(searchParamsString)
66
- return Object.fromEntries(searchParams.entries())
67
- },
68
- encode: (searchParams) => {
69
- const searchParamsString = new URLSearchParams(Object.entries(searchParams)).toString()
70
- return searchParamsString
71
- },
72
- },
73
- )
@@ -1,3 +1,4 @@
1
+ import { FetchHttpClient } from '@effect/platform'
1
2
  import * as Vitest from '@effect/vitest'
2
3
  import { Effect, Exit } from 'effect'
3
4
 
@@ -9,6 +10,6 @@ Vitest.describe('WebSocket', () => {
9
10
  Effect.fn(function* () {
10
11
  const exit = yield* makeWebSocket({ url: 'ws://localhost:1000' }).pipe(Effect.timeout(500), Effect.exit)
11
12
  Vitest.expect(Exit.isFailure(exit)).toBe(true)
12
- }),
13
+ }, Effect.provide(FetchHttpClient.layer)),
13
14
  )
14
15
  })
@@ -1,3 +1,4 @@
1
+ import { HttpClient } from '@effect/platform'
1
2
  import type { Schedule, Scope } from 'effect'
2
3
  import { Effect, Exit, identity, Schema } from 'effect'
3
4
 
@@ -20,7 +21,7 @@ export const makeWebSocket = ({
20
21
  }: {
21
22
  url: string
22
23
  reconnect?: Schedule.Schedule<unknown> | false
23
- }): Effect.Effect<globalThis.WebSocket, WebSocketError, Scope.Scope> =>
24
+ }): Effect.Effect<globalThis.WebSocket, WebSocketError, Scope.Scope | HttpClient.HttpClient> =>
24
25
  Effect.gen(function* () {
25
26
  yield* validateUrl(url)
26
27
 
@@ -60,7 +61,10 @@ export const makeWebSocket = ({
60
61
  } catch (error) {
61
62
  cb(Effect.fail(new WebSocketError({ cause: error })))
62
63
  }
63
- }).pipe(reconnect ? Effect.retry(reconnect) : identity)
64
+ }).pipe(
65
+ Effect.tapErrorTag('WebSocketError', () => tryLogWebsocketConnectError(url)),
66
+ reconnect ? Effect.retry(reconnect) : identity,
67
+ )
64
68
 
65
69
  /**
66
70
  * Common WebSocket close codes: https://developer.mozilla.org/en-US/docs/Web/API/WebSocket/close
@@ -75,8 +79,8 @@ export const makeWebSocket = ({
75
79
  * 3000-3999: Available for libraries and frameworks
76
80
  * 4000-4999: Available for applications
77
81
  */
78
- yield* Effect.addFinalizer((exit) =>
79
- Effect.async<void, WebSocketError>((cb) => {
82
+ yield* Effect.addFinalizer(
83
+ Effect.fn(function* (exit) {
80
84
  try {
81
85
  if (Exit.isFailure(exit)) {
82
86
  socket.close(3000)
@@ -84,9 +88,9 @@ export const makeWebSocket = ({
84
88
  socket.close(1000)
85
89
  }
86
90
  } catch (error) {
87
- cb(Effect.fail(new WebSocketError({ cause: error })))
91
+ yield* Effect.die(new WebSocketError({ cause: error }))
88
92
  }
89
- }).pipe(Effect.orDie),
93
+ }),
90
94
  )
91
95
 
92
96
  return socket
@@ -97,3 +101,11 @@ const validateUrl = (url: string) =>
97
101
  try: () => new URL(url),
98
102
  catch: (error) => new WebSocketError({ cause: error }),
99
103
  })
104
+
105
+ const tryLogWebsocketConnectError = (url: string) =>
106
+ Effect.gen(function* () {
107
+ const client = yield* HttpClient.HttpClient
108
+ const res = yield* client.get(url)
109
+ const responseBody = yield* res.text
110
+ yield* Effect.logError(`Failed to connect to '${url}' (status: ${res.status}). Error:`, responseBody)
111
+ }).pipe(Effect.ignore)
@@ -101,6 +101,12 @@ export {
101
101
  HttpClientResponse,
102
102
  FetchHttpClient,
103
103
  Socket,
104
+ UrlParams,
105
+ HttpServerRequest,
106
+ Headers,
107
+ HttpMiddleware,
108
+ HttpRouter,
109
+ HttpServerResponse,
104
110
  } from '@effect/platform'
105
111
  export { BrowserWorker, BrowserWorkerRunner } from '@effect/platform-browser'
106
112
 
package/src/env.ts CHANGED
@@ -29,6 +29,7 @@ export const isDevEnv = () => {
29
29
  // export const TRACE_VERBOSE = true
30
30
  export const TRACE_VERBOSE = env('LS_TRACE_VERBOSE') !== undefined || env('VITE_LS_TRACE_VERBOSE') !== undefined
31
31
 
32
+ /** Only set when developing LiveStore itself. */
32
33
  export const LS_DEV = env('LS_DEV') !== undefined || env('VITE_LS_DEV') !== undefined
33
34
 
34
35
  const envTruish = (env: string | undefined) => env !== undefined && env !== 'false' && env !== '0'
@@ -3,6 +3,7 @@ import process from 'node:process'
3
3
 
4
4
  import { WorkerError } from '@effect/platform/WorkerError'
5
5
  import * as Runner from '@effect/platform/WorkerRunner'
6
+ import * as Cause from 'effect/Cause'
6
7
  import * as Context from 'effect/Context'
7
8
  import * as Deferred from 'effect/Deferred'
8
9
  import * as Effect from 'effect/Effect'
@@ -36,7 +37,7 @@ const platformRunnerImpl = Runner.PlatformRunner.of({
36
37
  const fiberSet = yield* FiberSet.make<any, WorkerError | E>()
37
38
  const runFork = Runtime.runFork(runtime)
38
39
  const onExit = (exit: Exit.Exit<any, E>) => {
39
- if (exit._tag === 'Failure') {
40
+ if (exit._tag === 'Failure' && !Cause.isInterruptedOnly(exit.cause)) {
40
41
  // Deferred.unsafeDone(closeLatch, Exit.die(Cause.squash(exit.cause)))
41
42
  Deferred.unsafeDone(closeLatch, Exit.die(exit.cause))
42
43
  }
package/tmp/pack.tgz CHANGED
Binary file