@livestore/utils 0.3.0-dev.9 → 0.3.1-dev.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.
Files changed (151) hide show
  1. package/LICENSE +201 -0
  2. package/dist/.tsbuildinfo.json +1 -1
  3. package/dist/Deferred.d.ts.map +1 -1
  4. package/dist/base64.d.ts.map +1 -1
  5. package/dist/bun/mod.d.ts +5 -0
  6. package/dist/bun/mod.d.ts.map +1 -0
  7. package/dist/bun/mod.js +10 -0
  8. package/dist/bun/mod.js.map +1 -0
  9. package/dist/cuid/cuid.browser.d.ts.map +1 -1
  10. package/dist/cuid/cuid.node.d.ts.map +1 -1
  11. package/dist/effect/BucketQueue.d.ts +15 -3
  12. package/dist/effect/BucketQueue.d.ts.map +1 -1
  13. package/dist/effect/BucketQueue.js +24 -7
  14. package/dist/effect/BucketQueue.js.map +1 -1
  15. package/dist/effect/Effect.d.ts +4 -2
  16. package/dist/effect/Effect.d.ts.map +1 -1
  17. package/dist/effect/Effect.js +21 -18
  18. package/dist/effect/Effect.js.map +1 -1
  19. package/dist/effect/Logger.d.ts +2 -0
  20. package/dist/effect/Logger.d.ts.map +1 -1
  21. package/dist/effect/Logger.js +16 -1
  22. package/dist/effect/Logger.js.map +1 -1
  23. package/dist/effect/Scheduler.d.ts.map +1 -1
  24. package/dist/effect/Schema/debug-diff.d.ts.map +1 -1
  25. package/dist/effect/Schema/index.d.ts +3 -0
  26. package/dist/effect/Schema/index.d.ts.map +1 -1
  27. package/dist/effect/Schema/index.js +19 -0
  28. package/dist/effect/Schema/index.js.map +1 -1
  29. package/dist/effect/Schema/msgpack.d.ts +1 -1
  30. package/dist/effect/Schema/msgpack.d.ts.map +1 -1
  31. package/dist/effect/ServiceContext.d.ts.map +1 -1
  32. package/dist/effect/Stream.d.ts.map +1 -1
  33. package/dist/effect/Subscribable.d.ts +3 -0
  34. package/dist/effect/Subscribable.d.ts.map +1 -1
  35. package/dist/effect/Subscribable.js +8 -3
  36. package/dist/effect/Subscribable.js.map +1 -1
  37. package/dist/effect/TaskTracing.d.ts.map +1 -1
  38. package/dist/effect/{WebChannel.d.ts → WebChannel/WebChannel.d.ts} +39 -17
  39. package/dist/effect/WebChannel/WebChannel.d.ts.map +1 -0
  40. package/dist/effect/WebChannel/WebChannel.js +300 -0
  41. package/dist/effect/WebChannel/WebChannel.js.map +1 -0
  42. package/dist/effect/WebChannel/WebChannel.test.d.ts +2 -0
  43. package/dist/effect/WebChannel/WebChannel.test.d.ts.map +1 -0
  44. package/dist/effect/WebChannel/WebChannel.test.js +62 -0
  45. package/dist/effect/WebChannel/WebChannel.test.js.map +1 -0
  46. package/dist/effect/WebChannel/broadcastChannelWithAck.d.ts +5 -6
  47. package/dist/effect/WebChannel/broadcastChannelWithAck.d.ts.map +1 -1
  48. package/dist/effect/WebChannel/broadcastChannelWithAck.js +12 -9
  49. package/dist/effect/WebChannel/broadcastChannelWithAck.js.map +1 -1
  50. package/dist/effect/WebChannel/common.d.ts +29 -1
  51. package/dist/effect/WebChannel/common.d.ts.map +1 -1
  52. package/dist/effect/WebChannel/common.js +26 -1
  53. package/dist/effect/WebChannel/common.js.map +1 -1
  54. package/dist/effect/WebChannel/mod.d.ts +4 -0
  55. package/dist/effect/WebChannel/mod.d.ts.map +1 -0
  56. package/dist/effect/WebChannel/mod.js +4 -0
  57. package/dist/effect/WebChannel/mod.js.map +1 -0
  58. package/dist/effect/WebLock.d.ts.map +1 -1
  59. package/dist/effect/WebSocket.d.ts +3 -2
  60. package/dist/effect/WebSocket.d.ts.map +1 -1
  61. package/dist/effect/WebSocket.js +45 -19
  62. package/dist/effect/WebSocket.js.map +1 -1
  63. package/dist/effect/WebSocket.test.d.ts +2 -0
  64. package/dist/effect/WebSocket.test.d.ts.map +1 -0
  65. package/dist/effect/WebSocket.test.js +11 -0
  66. package/dist/effect/WebSocket.test.js.map +1 -0
  67. package/dist/effect/index.d.ts +5 -3
  68. package/dist/effect/index.d.ts.map +1 -1
  69. package/dist/effect/index.js +6 -5
  70. package/dist/effect/index.js.map +1 -1
  71. package/dist/env.d.ts +4 -1
  72. package/dist/env.d.ts.map +1 -1
  73. package/dist/env.js +7 -12
  74. package/dist/env.js.map +1 -1
  75. package/dist/fast-deep-equal.d.ts.map +1 -1
  76. package/dist/guards.d.ts.map +1 -1
  77. package/dist/index.d.ts +6 -5
  78. package/dist/index.d.ts.map +1 -1
  79. package/dist/index.js +0 -8
  80. package/dist/index.js.map +1 -1
  81. package/dist/misc.d.ts +3 -0
  82. package/dist/misc.d.ts.map +1 -1
  83. package/dist/misc.js +23 -0
  84. package/dist/misc.js.map +1 -1
  85. package/dist/node/ChildProcessRunner/ChildProcessRunner.d.ts +0 -1
  86. package/dist/node/ChildProcessRunner/ChildProcessRunner.d.ts.map +1 -1
  87. package/dist/node/ChildProcessRunner/ChildProcessRunner.js +21 -11
  88. package/dist/node/ChildProcessRunner/ChildProcessRunner.js.map +1 -1
  89. package/dist/node/ChildProcessRunner/ChildProcessRunnerTest/ChildProcessRunner.test.d.ts +2 -0
  90. package/dist/node/ChildProcessRunner/ChildProcessRunnerTest/ChildProcessRunner.test.d.ts.map +1 -0
  91. package/dist/node/ChildProcessRunner/ChildProcessRunnerTest/ChildProcessRunner.test.js +39 -0
  92. package/dist/node/ChildProcessRunner/ChildProcessRunnerTest/ChildProcessRunner.test.js.map +1 -0
  93. package/dist/node/ChildProcessRunner/ChildProcessRunnerTest/schema.d.ts +75 -0
  94. package/dist/node/ChildProcessRunner/ChildProcessRunnerTest/schema.d.ts.map +1 -0
  95. package/dist/node/ChildProcessRunner/ChildProcessRunnerTest/schema.js +62 -0
  96. package/dist/node/ChildProcessRunner/ChildProcessRunnerTest/schema.js.map +1 -0
  97. package/dist/node/ChildProcessRunner/ChildProcessRunnerTest/serializedWorker.d.ts +2 -0
  98. package/dist/node/ChildProcessRunner/ChildProcessRunnerTest/serializedWorker.d.ts.map +1 -0
  99. package/dist/node/ChildProcessRunner/ChildProcessRunnerTest/serializedWorker.js +42 -0
  100. package/dist/node/ChildProcessRunner/ChildProcessRunnerTest/serializedWorker.js.map +1 -0
  101. package/dist/node/ChildProcessRunner/ChildProcessWorker.d.ts +1 -4
  102. package/dist/node/ChildProcessRunner/ChildProcessWorker.d.ts.map +1 -1
  103. package/dist/node/ChildProcessRunner/ChildProcessWorker.js +1 -4
  104. package/dist/node/ChildProcessRunner/ChildProcessWorker.js.map +1 -1
  105. package/dist/node/mod.d.ts +3 -16
  106. package/dist/node/mod.d.ts.map +1 -1
  107. package/dist/node/mod.js +24 -75
  108. package/dist/node/mod.js.map +1 -1
  109. package/dist/object/index.d.ts.map +1 -1
  110. package/dist/object/omit.d.ts.map +1 -1
  111. package/dist/object/pick.d.ts.map +1 -1
  112. package/dist/promise.d.ts.map +1 -1
  113. package/dist/set.d.ts.map +1 -1
  114. package/dist/string.d.ts.map +1 -1
  115. package/dist/time.d.ts.map +1 -1
  116. package/package.json +52 -43
  117. package/src/bun/mod.ts +13 -0
  118. package/src/effect/BucketQueue.ts +32 -7
  119. package/src/effect/Effect.ts +33 -20
  120. package/src/effect/Logger.ts +23 -1
  121. package/src/effect/Schema/index.ts +27 -0
  122. package/src/effect/Subscribable.ts +12 -0
  123. package/src/effect/WebChannel/WebChannel.test.ts +106 -0
  124. package/src/effect/WebChannel/WebChannel.ts +502 -0
  125. package/src/effect/WebChannel/broadcastChannelWithAck.ts +86 -83
  126. package/src/effect/WebChannel/common.ts +61 -2
  127. package/src/effect/WebChannel/mod.ts +3 -0
  128. package/src/effect/WebSocket.test.ts +15 -0
  129. package/src/effect/WebSocket.ts +75 -36
  130. package/src/effect/index.ts +31 -2
  131. package/src/env.ts +9 -13
  132. package/src/index.ts +6 -12
  133. package/src/misc.ts +31 -0
  134. package/src/node/ChildProcessRunner/ChildProcessRunner.ts +40 -29
  135. package/src/node/ChildProcessRunner/ChildProcessRunnerTest/ChildProcessRunner.test.ts +52 -0
  136. package/src/node/ChildProcessRunner/ChildProcessRunnerTest/schema.ts +65 -0
  137. package/src/node/ChildProcessRunner/ChildProcessRunnerTest/serializedWorker.ts +53 -0
  138. package/src/node/ChildProcessRunner/ChildProcessWorker.ts +3 -6
  139. package/src/node/mod.ts +30 -103
  140. package/dist/effect/WebChannel.d.ts.map +0 -1
  141. package/dist/effect/WebChannel.js +0 -175
  142. package/dist/effect/WebChannel.js.map +0 -1
  143. package/dist/nanoid/index.browser.d.ts +0 -2
  144. package/dist/nanoid/index.browser.d.ts.map +0 -1
  145. package/dist/nanoid/index.browser.js +0 -3
  146. package/dist/nanoid/index.browser.js.map +0 -1
  147. package/src/effect/WebChannel.ts +0 -305
  148. package/src/nanoid/index.browser.ts +0 -2
  149. package/tmp/effect-deferred-repro.ts +0 -29
  150. package/tmp/effect-semaphore-repro.ts +0 -93
  151. package/tsconfig.json +0 -10
@@ -1,4 +1,5 @@
1
- import type { Deferred, Effect, Either, ParseResult, Schema, Stream } from 'effect';
1
+ import type { Deferred, Either, ParseResult } from 'effect';
2
+ import { Effect, Schema, Stream } from 'effect';
2
3
  export declare const WebChannelSymbol: unique symbol;
3
4
  export type WebChannelSymbol = typeof WebChannelSymbol;
4
5
  export declare const isWebChannel: <MsgListen, MsgSend>(value: unknown) => value is WebChannel<MsgListen, MsgSend>;
@@ -8,9 +9,36 @@ export interface WebChannel<MsgListen, MsgSend, E = never> {
8
9
  listen: Stream.Stream<Either.Either<MsgListen, ParseResult.ParseError>, E>;
9
10
  supportsTransferables: boolean;
10
11
  closedDeferred: Deferred.Deferred<void>;
12
+ shutdown: Effect.Effect<void>;
11
13
  schema: {
12
14
  listen: Schema.Schema<MsgListen, any>;
13
15
  send: Schema.Schema<MsgSend, any>;
14
16
  };
17
+ debugInfo?: Record<string, any>;
15
18
  }
19
+ export declare const DebugPingMessage: Schema.TaggedStruct<"WebChannel.DebugPing", {
20
+ message: typeof Schema.String;
21
+ payload: Schema.optional<typeof Schema.String>;
22
+ }>;
23
+ export declare const WebChannelPing: Schema.TaggedStruct<"WebChannel.Ping", {
24
+ requestId: typeof Schema.String;
25
+ }>;
26
+ export declare const WebChannelPong: Schema.TaggedStruct<"WebChannel.Pong", {
27
+ requestId: typeof Schema.String;
28
+ }>;
29
+ export declare const WebChannelHeartbeat: Schema.Union<[Schema.TaggedStruct<"WebChannel.Ping", {
30
+ requestId: typeof Schema.String;
31
+ }>, Schema.TaggedStruct<"WebChannel.Pong", {
32
+ requestId: typeof Schema.String;
33
+ }>]>;
34
+ type WebChannelMessages = typeof DebugPingMessage.Type | typeof WebChannelPing.Type | typeof WebChannelPong.Type;
35
+ export declare const schemaWithWebChannelMessages: <MsgListen, MsgSend>(schema: OutputSchema<MsgListen, MsgSend, any, any>) => OutputSchema<MsgListen | WebChannelMessages, MsgSend | WebChannelMessages, any, any>;
36
+ export type InputSchema<MsgListen, MsgSend, MsgListenEncoded, MsgSendEncoded> = Schema.Schema<MsgListen | MsgSend, MsgListenEncoded | MsgSendEncoded> | OutputSchema<MsgListen, MsgSend, MsgListenEncoded, MsgSendEncoded>;
37
+ export type OutputSchema<MsgListen, MsgSend, MsgListenEncoded, MsgSendEncoded> = {
38
+ listen: Schema.Schema<MsgListen, MsgListenEncoded>;
39
+ send: Schema.Schema<MsgSend, MsgSendEncoded>;
40
+ };
41
+ export declare const mapSchema: <MsgListen, MsgSend, MsgListenEncoded, MsgSendEncoded>(schema: InputSchema<MsgListen, MsgSend, MsgListenEncoded, MsgSendEncoded>) => OutputSchema<MsgListen, MsgSend, MsgListenEncoded, MsgSendEncoded>;
42
+ export declare const listenToDebugPing: (channelName: string) => <MsgListen>(stream: Stream.Stream<Either.Either<MsgListen, ParseResult.ParseError>, never>) => Stream.Stream<Either.Either<MsgListen, ParseResult.ParseError>, never>;
43
+ export {};
16
44
  //# sourceMappingURL=common.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/effect/WebChannel/common.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAGnF,eAAO,MAAM,gBAAgB,eAAuB,CAAA;AACpD,MAAM,MAAM,gBAAgB,GAAG,OAAO,gBAAgB,CAAA;AAEtD,eAAO,MAAM,YAAY,GAAI,SAAS,EAAE,OAAO,SAAS,OAAO,KAAG,KAAK,IAAI,UAAU,CAAC,SAAS,EAAE,OAAO,CACT,CAAA;AAE/F,MAAM,WAAW,UAAU,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,GAAG,KAAK;IACvD,QAAQ,CAAC,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAA;IACpC,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,UAAU,GAAG,CAAC,CAAC,CAAA;IACrE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAA;IAC1E,qBAAqB,EAAE,OAAO,CAAA;IAC9B,cAAc,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IACvC,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;KAAE,CAAA;CACrF"}
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/effect/WebChannel/common.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,29 @@
1
- import { Predicate } from 'effect';
1
+ import { Effect, Predicate, Schema, Stream } from 'effect';
2
2
  export const WebChannelSymbol = Symbol('WebChannel');
3
3
  export const isWebChannel = (value) => typeof value === 'object' && value !== null && Predicate.hasProperty(value, WebChannelSymbol);
4
+ export const DebugPingMessage = Schema.TaggedStruct('WebChannel.DebugPing', {
5
+ message: Schema.String,
6
+ payload: Schema.optional(Schema.String),
7
+ });
8
+ export const WebChannelPing = Schema.TaggedStruct('WebChannel.Ping', {
9
+ requestId: Schema.String,
10
+ });
11
+ export const WebChannelPong = Schema.TaggedStruct('WebChannel.Pong', {
12
+ requestId: Schema.String,
13
+ });
14
+ export const WebChannelHeartbeat = Schema.Union(WebChannelPing, WebChannelPong);
15
+ export const schemaWithWebChannelMessages = (schema) => ({
16
+ send: Schema.Union(schema.send, DebugPingMessage, WebChannelPing, WebChannelPong),
17
+ listen: Schema.Union(schema.listen, DebugPingMessage, WebChannelPing, WebChannelPong),
18
+ });
19
+ export const mapSchema = (schema) => Predicate.hasProperty(schema, 'send') && Predicate.hasProperty(schema, 'listen')
20
+ ? schemaWithWebChannelMessages(schema)
21
+ : schemaWithWebChannelMessages({ send: schema, listen: schema });
22
+ export const listenToDebugPing = (channelName) => (stream) => stream.pipe(Stream.filterEffect(Effect.fn(function* (msg) {
23
+ if (msg._tag === 'Right' && Schema.is(DebugPingMessage)(msg.right)) {
24
+ yield* Effect.logDebug(`WebChannel:ping [${channelName}] ${msg.right.message}`, msg.right.payload);
25
+ return false;
26
+ }
27
+ return true;
28
+ })));
4
29
  //# sourceMappingURL=common.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/effect/WebChannel/common.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAElC,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC,YAAY,CAAC,CAAA;AAGpD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAqB,KAAc,EAA2C,EAAE,CAC1G,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,SAAS,CAAC,WAAW,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAA"}
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/effect/WebChannel/common.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE1D,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC,YAAY,CAAC,CAAA;AAGpD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAqB,KAAc,EAA2C,EAAE,CAC1G,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,SAAS,CAAC,WAAW,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAA;AAa/F,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC,YAAY,CAAC,sBAAsB,EAAE;IAC1E,OAAO,EAAE,MAAM,CAAC,MAAM;IACtB,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC;CACxC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,YAAY,CAAC,iBAAiB,EAAE;IACnE,SAAS,EAAE,MAAM,CAAC,MAAM;CACzB,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,YAAY,CAAC,iBAAiB,EAAE;IACnE,SAAS,EAAE,MAAM,CAAC,MAAM;CACzB,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,cAAc,CAAC,CAAA;AAI/E,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAC1C,MAAkD,EACoC,EAAE,CAAC,CAAC;IAC1F,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,gBAAgB,EAAE,cAAc,EAAE,cAAc,CAAC;IACjF,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,gBAAgB,EAAE,cAAc,EAAE,cAAc,CAAC;CACtF,CAAC,CAAA;AAWF,MAAM,CAAC,MAAM,SAAS,GAAG,CACvB,MAAyE,EACL,EAAE,CACtE,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC9E,CAAC,CAAE,4BAA4B,CAAC,MAAM,CAAS;IAC/C,CAAC,CAAE,4BAA4B,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAS,CAAA;AAE7E,MAAM,CAAC,MAAM,iBAAiB,GAC5B,CAAC,WAAmB,EAAE,EAAE,CACxB,CACE,MAA8E,EACN,EAAE,CAC1E,MAAM,CAAC,IAAI,CACT,MAAM,CAAC,YAAY,CACjB,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,GAAG;IACtB,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,IAAI,MAAM,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QACnE,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,WAAW,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAClG,OAAO,KAAK,CAAA;IACd,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC,CAAC,CACH,CACF,CAAA"}
@@ -0,0 +1,4 @@
1
+ export * from './WebChannel.js';
2
+ export * from './broadcastChannelWithAck.js';
3
+ export * from './common.js';
4
+ //# sourceMappingURL=mod.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../src/effect/WebChannel/mod.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,8BAA8B,CAAA;AAC5C,cAAc,aAAa,CAAA"}
@@ -0,0 +1,4 @@
1
+ export * from './WebChannel.js';
2
+ export * from './broadcastChannelWithAck.js';
3
+ export * from './common.js';
4
+ //# sourceMappingURL=mod.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mod.js","sourceRoot":"","sources":["../../../src/effect/WebChannel/mod.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,8BAA8B,CAAA;AAC5C,cAAc,aAAa,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"WebLock.d.ts","sourceRoot":"","sources":["../../src/effect/WebLock.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAW,MAAM,QAAQ,CAAA;AAGlD,eAAO,MAAM,QAAQ,GAClB,EAAE,mCAIA;IACD,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;IACjC,OAAO,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;CACtC,MACA,GAAG,EAAE,CAAC,EAAE,CAAC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,GAAG,CAiC3E,CAAA;AAEN,eAAO,MAAM,mBAAmB,aAAc,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,MAAM,sCAqBnF,CAAA;AAEJ,eAAO,MAAM,kBAAkB,aAAc,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,MAAM,yCAsBlF,CAAA;AAEJ,eAAO,MAAM,iBAAiB,aAAc,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,MAAM,yCAmBjF,CAAA;AAEJ,eAAO,MAAM,WAAW,aAAc,MAAM,sCAOxC,CAAA;AAEJ,0EAA0E;AAC1E,eAAO,MAAM,sBAAsB,aAAc,MAAM,sCA0CnD,CAAA"}
1
+ {"version":3,"file":"WebLock.d.ts","sourceRoot":"","sources":["../../src/effect/WebLock.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAW,MAAM,QAAQ,CAAA;AAGlD,eAAO,MAAM,QAAQ,GAClB,EAAE,EAAE,iCAIF;IACD,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;IACjC,OAAO,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;CACtC,MACA,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,GAAG,CAiC3E,CAAA;AAEN,eAAO,MAAM,mBAAmB,GAAI,UAAU,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,MAAM,sCAqBnF,CAAA;AAEJ,eAAO,MAAM,kBAAkB,GAAI,UAAU,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,MAAM,yCAsBlF,CAAA;AAEJ,eAAO,MAAM,iBAAiB,GAAI,UAAU,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,MAAM,yCAmBjF,CAAA;AAEJ,eAAO,MAAM,WAAW,GAAI,UAAU,MAAM,sCAOxC,CAAA;AAEJ,0EAA0E;AAC1E,eAAO,MAAM,sBAAsB,GAAI,UAAU,MAAM,sCA0CnD,CAAA"}
@@ -1,9 +1,10 @@
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", {
4
5
  readonly _tag: Schema.tag<"WebSocketError">;
5
6
  } & {
6
- cause: Schema.Defect;
7
+ cause: typeof Schema.Defect;
7
8
  }>;
8
9
  export declare class WebSocketError extends WebSocketError_base {
9
10
  }
@@ -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,wBAGvB;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,CAiD/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,
@@ -12,26 +13,31 @@ export class WebSocketError extends Schema.TaggedError()('WebSocketError', {
12
13
  * Automatically closes the connection when the scope is closed.
13
14
  */
14
15
  export const makeWebSocket = ({ url, reconnect, }) => Effect.gen(function* () {
15
- const socket = yield* Effect.tryPromise({
16
- try: async () => {
17
- // console.debug('[WebSocket] connecting to', url)
16
+ yield* validateUrl(url);
17
+ const socket = yield* Effect.async((cb, signal) => {
18
+ try {
18
19
  const socket = new globalThis.WebSocket(url);
19
20
  if (socket.readyState === globalThis.WebSocket.OPEN) {
20
- return socket;
21
+ cb(Effect.succeed(socket));
22
+ return;
21
23
  }
22
- return await new Promise((resolve, reject) => {
23
- socket.addEventListener('open', () => resolve(socket), { once: true });
24
- // eslint-disable-next-line unicorn/prefer-add-event-listener
25
- socket.onerror = (event) => reject(event);
24
+ signal.addEventListener('abort', () => {
25
+ socket.close(3000, 'abort signal');
26
26
  });
27
- },
28
- catch: (errorEvent) => {
29
- if (errorEvent.currentTarget != null && errorEvent.currentTarget instanceof globalThis.WebSocket) {
30
- errorEvent.currentTarget.close(3000, `closing websocket connection due to error: ${errorEvent.toString()}`);
31
- }
32
- return new WebSocketError({ cause: errorEvent });
33
- },
34
- }).pipe(
27
+ socket.addEventListener('open', () => cb(Effect.succeed(socket)), { once: true });
28
+ socket.addEventListener('error', (event) => {
29
+ cb(Effect.fail(new WebSocketError({ cause: event })));
30
+ }, { once: true });
31
+ socket.addEventListener('close', (event) => {
32
+ // console.log('makeWebSocket:socket:onclose', event)
33
+ return cb(Effect.fail(new WebSocketError({ cause: event })));
34
+ }, { once: true });
35
+ // console.log('makeWebSocket:socket:waiting for open', url)
36
+ }
37
+ catch (error) {
38
+ cb(Effect.fail(new WebSocketError({ cause: error })));
39
+ }
40
+ }).pipe(Effect.tapErrorTag('WebSocketError', () => tryLogWebsocketConnectError(url)), reconnect ? Effect.retry(reconnect) : identity);
35
41
  /**
36
42
  * Common WebSocket close codes: https://developer.mozilla.org/en-US/docs/Web/API/WebSocket/close
37
43
  * 1000: Normal closure
@@ -45,9 +51,29 @@ export const makeWebSocket = ({ url, reconnect, }) => Effect.gen(function* () {
45
51
  * 3000-3999: Available for libraries and frameworks
46
52
  * 4000-4999: Available for applications
47
53
  */
48
- Effect.acquireRelease((socket, exit) => Effect.sync(() => Exit.isFailure(exit)
49
- ? socket.close(3000, `closing webmesh websocket connection due to error: ${exit.cause.toString()}`)
50
- : socket.close(1000, 'closing webmesh websocket connection gracefully'))), reconnect ? Effect.retry(reconnect) : identity);
54
+ yield* Effect.addFinalizer(Effect.fn(function* (exit) {
55
+ try {
56
+ if (Exit.isFailure(exit)) {
57
+ socket.close(3000);
58
+ }
59
+ else {
60
+ socket.close(1000);
61
+ }
62
+ }
63
+ catch (error) {
64
+ yield* Effect.die(new WebSocketError({ cause: error }));
65
+ }
66
+ }));
51
67
  return socket;
52
68
  });
69
+ const validateUrl = (url) => Effect.try({
70
+ try: () => new URL(url),
71
+ catch: (error) => new WebSocketError({ cause: error }),
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);
53
79
  //# sourceMappingURL=WebSocket.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WebSocket.js","sourceRoot":"","sources":["../../src/effect/WebSocket.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAEvD,MAAM,OAAO,cAAe,SAAQ,MAAM,CAAC,WAAW,EAAkB,CAAC,gBAAgB,EAAE;IACzF,KAAK,EAAE,MAAM,CAAC,MAAM;CACrB,CAAC;CAAG;AAEL,mDAAmD;AACnD,0GAA0G;AAC1G,sJAAsJ;AACtJ,2FAA2F;AAE3F;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,EAC5B,GAAG,EACH,SAAS,GAIV,EAAoE,EAAE,CACrE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QACtC,GAAG,EAAE,KAAK,IAAI,EAAE;YACd,kDAAkD;YAClD,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;YAE5C,IAAI,MAAM,CAAC,UAAU,KAAK,UAAU,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;gBACpD,OAAO,MAAM,CAAA;YACf,CAAC;YAED,OAAO,MAAM,IAAI,OAAO,CAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACjE,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;gBACtE,6DAA6D;gBAC7D,MAAM,CAAC,OAAO,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YAC3C,CAAC,CAAC,CAAA;QACJ,CAAC;QACD,KAAK,EAAE,CAAC,UAAe,EAAE,EAAE;YACzB,IAAI,UAAU,CAAC,aAAa,IAAI,IAAI,IAAI,UAAU,CAAC,aAAa,YAAY,UAAU,CAAC,SAAS,EAAE,CAAC;gBACjG,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,EAAE,8CAA8C,UAAU,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;YAC7G,CAAC;YAED,OAAO,IAAI,cAAc,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAA;QAClD,CAAC;KACF,CAAC,CAAC,IAAI;IACL;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,cAAc,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CACrC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CACf,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;QAClB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,sDAAsD,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC;QACnG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,iDAAiD,CAAC,CAC1E,CACF,EACD,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAC/C,CAAA;IAED,OAAO,MAAM,CAAA;AACf,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"WebSocket.js","sourceRoot":"","sources":["../../src/effect/WebSocket.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=WebSocket.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WebSocket.test.d.ts","sourceRoot":"","sources":["../../src/effect/WebSocket.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,11 @@
1
+ import { FetchHttpClient } from '@effect/platform';
2
+ import * as Vitest from '@effect/vitest';
3
+ import { Effect, Exit } from 'effect';
4
+ import { makeWebSocket } from './WebSocket.js';
5
+ Vitest.describe('WebSocket', () => {
6
+ Vitest.scopedLive('should create a WebSocket connection', Effect.fn(function* () {
7
+ const exit = yield* makeWebSocket({ url: 'ws://localhost:1000' }).pipe(Effect.timeout(500), Effect.exit);
8
+ Vitest.expect(Exit.isFailure(exit)).toBe(true);
9
+ }, Effect.provide(FetchHttpClient.layer)));
10
+ });
11
+ //# sourceMappingURL=WebSocket.test.js.map
@@ -0,0 +1 @@
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"}
@@ -1,12 +1,13 @@
1
1
  import '../global.js';
2
- export { Scope, Ref, SynchronizedRef, Queue, Fiber, FiberId, FiberSet, FiberMap, FiberHandle, Inspectable, RuntimeFlags, PubSub, Exit, Cause, Runtime, FiberRef, FiberRefs, FiberRefsPatch, Deferred, Metric, MetricState, Request, Tracer, Context, Data, Either, Brand, Hash, Equal, Chunk, Duration, Array as ReadonlyArray, Record as ReadonlyRecord, SortedMap, HashMap, HashSet, MutableHashSet, MutableHashMap, TQueue, Option, LogLevel, Config, Layer, STM, TRef, Channel, Predicate, pipe, identity, GlobalValue, Match, TestServices, Mailbox, } from 'effect';
2
+ export { Scope, Ref, SynchronizedRef, Queue, Fiber, FiberId, FiberSet, FiberMap, FiberHandle, Inspectable, RuntimeFlags, PubSub, Exit, Cause, Runtime, FiberRef, FiberRefs, FiberRefsPatch, Deferred, Metric, MetricState, Request, Tracer, Context, Data, Either, Brand, Hash, Equal, Chunk, Duration, Array as ReadonlyArray, Record as ReadonlyRecord, SortedMap, HashMap, HashSet, ManagedRuntime, MutableHashSet, MutableHashMap, TQueue, Option, LogLevel, Config, Layer, STM, TRef, Channel, Predicate, pipe, identity, GlobalValue, Match, TestServices, Mailbox, ExecutionStrategy, PrimaryKey, Types, Cache, } from 'effect';
3
+ export * as StandardSchema from '@standard-schema/spec';
3
4
  export { dual } from 'effect/Function';
4
5
  export * as Stream from './Stream.js';
5
6
  export * as BucketQueue from './BucketQueue.js';
6
7
  export * as SubscriptionRef from './SubscriptionRef.js';
7
8
  export * as Subscribable from './Subscribable.js';
8
9
  export * as Logger from './Logger.js';
9
- export * as WebChannel from './WebChannel.js';
10
+ export * as WebChannel from './WebChannel/mod.js';
10
11
  export * as WebSocket from './WebSocket.js';
11
12
  export * as SchemaAST from 'effect/SchemaAST';
12
13
  export { TreeFormatter } from 'effect/ParseResult';
@@ -15,7 +16,8 @@ export type { Serializable, SerializableWithResult } from 'effect/Schema';
15
16
  export * as Schema from './Schema/index.js';
16
17
  export * as OtelTracer from '@effect/opentelemetry/Tracer';
17
18
  export * as TaskTracing from './TaskTracing.js';
18
- export { Transferable, FileSystem, Worker, WorkerError, WorkerRunner, Terminal, HttpServer, HttpClient, HttpClientError, HttpClientRequest, HttpClientResponse, FetchHttpClient, Socket, } from '@effect/platform';
19
+ export { Rpc, RpcGroup, RpcClient, RpcMessage, RpcSchema, RpcMiddleware, RpcServer, RpcSerialization, RpcTest, RpcWorker, } from '@effect/rpc';
20
+ export { Transferable, FileSystem, Worker, WorkerError, WorkerRunner, Terminal, HttpServer, HttpClient, HttpClientError, HttpClientRequest, HttpClientResponse, FetchHttpClient, Socket, UrlParams, HttpServerRequest, Headers, HttpMiddleware, HttpRouter, HttpServerResponse, Command, CommandExecutor, KeyValueStore, Error as PlatformError, } from '@effect/platform';
19
21
  export { BrowserWorker, BrowserWorkerRunner } from '@effect/platform-browser';
20
22
  export * as Effect from './Effect.js';
21
23
  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,GACR,MAAM,QAAQ,CAAA;AAEf,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,iBAAiB,CAAA;AAC7C,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,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;AAC1D,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C,OAAO,EACL,GAAG,EACH,QAAQ,EACR,SAAS,EACT,UAAU,EACV,SAAS,EACT,aAAa,EACb,SAAS,EACT,gBAAgB,EAChB,OAAO,EACP,SAAS,GACV,MAAM,aAAa,CAAA;AAEpB,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,EAClB,OAAO,EACP,eAAe,EACf,aAAa,EACb,KAAK,IAAI,aAAa,GACvB,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,25 +1,26 @@
1
1
  import '../global.js';
2
- export { Scope, Ref, SynchronizedRef, Queue, Fiber, FiberId, FiberSet, FiberMap, FiberHandle, Inspectable, RuntimeFlags, PubSub, Exit, Cause, Runtime, FiberRef, FiberRefs, FiberRefsPatch, Deferred, Metric, MetricState, Request, Tracer, Context, Data, Either, Brand, Hash, Equal, Chunk, Duration, Array as ReadonlyArray, Record as ReadonlyRecord, SortedMap, HashMap, HashSet, MutableHashSet, MutableHashMap, TQueue, Option, LogLevel,
2
+ export { Scope, Ref, SynchronizedRef, Queue, Fiber, FiberId, FiberSet, FiberMap, FiberHandle, Inspectable, RuntimeFlags, PubSub, Exit, Cause, Runtime, FiberRef, FiberRefs, FiberRefsPatch, Deferred, Metric, MetricState, Request, Tracer, Context, Data, Either, Brand, Hash, Equal, Chunk, Duration, Array as ReadonlyArray, Record as ReadonlyRecord, SortedMap, HashMap, HashSet, ManagedRuntime, MutableHashSet, MutableHashMap, TQueue, Option, LogLevel,
3
3
  // Logger,
4
4
  Config, Layer, STM, TRef, Channel, Predicate,
5
5
  // Subscribable,
6
- pipe, identity, GlobalValue, Match, TestServices, Mailbox, } from 'effect';
6
+ pipe, identity, GlobalValue, Match, TestServices, Mailbox, ExecutionStrategy, PrimaryKey, Types, Cache, } from 'effect';
7
+ export * as StandardSchema from '@standard-schema/spec';
7
8
  export { dual } from 'effect/Function';
8
9
  export * as Stream from './Stream.js';
9
10
  export * as BucketQueue from './BucketQueue.js';
10
11
  export * as SubscriptionRef from './SubscriptionRef.js';
11
12
  export * as Subscribable from './Subscribable.js';
12
13
  export * as Logger from './Logger.js';
13
- export * as WebChannel from './WebChannel.js';
14
+ export * as WebChannel from './WebChannel/mod.js';
14
15
  export * as WebSocket from './WebSocket.js';
15
16
  export * as SchemaAST from 'effect/SchemaAST';
16
17
  export { TreeFormatter } from 'effect/ParseResult';
17
18
  export { ParseResult, Pretty } from 'effect';
18
19
  export * as Schema from './Schema/index.js';
19
20
  export * as OtelTracer from '@effect/opentelemetry/Tracer';
20
- // export * as OtelResource from '@effect/opentelemetry/Resource'
21
21
  export * as TaskTracing from './TaskTracing.js';
22
- export { Transferable, FileSystem, Worker, WorkerError, WorkerRunner, Terminal, HttpServer, HttpClient, HttpClientError, HttpClientRequest, HttpClientResponse, FetchHttpClient, Socket, } from '@effect/platform';
22
+ export { Rpc, RpcGroup, RpcClient, RpcMessage, RpcSchema, RpcMiddleware, RpcServer, RpcSerialization, RpcTest, RpcWorker, } from '@effect/rpc';
23
+ export { Transferable, FileSystem, Worker, WorkerError, WorkerRunner, Terminal, HttpServer, HttpClient, HttpClientError, HttpClientRequest, HttpClientResponse, FetchHttpClient, Socket, UrlParams, HttpServerRequest, Headers, HttpMiddleware, HttpRouter, HttpServerResponse, Command, CommandExecutor, KeyValueStore, Error as PlatformError, } from '@effect/platform';
23
24
  export { BrowserWorker, BrowserWorkerRunner } from '@effect/platform-browser';
24
25
  // export { DevTools as EffectDevtools } from '@effect/experimental'
25
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,GACR,MAAM,QAAQ,CAAA;AAEf,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,iBAAiB,CAAA;AAC7C,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,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,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C,OAAO,EACL,GAAG,EACH,QAAQ,EACR,SAAS,EACT,UAAU,EACV,SAAS,EACT,aAAa,EACb,SAAS,EACT,gBAAgB,EAChB,OAAO,EACP,SAAS,GACV,MAAM,aAAa,CAAA;AAEpB,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,EAClB,OAAO,EACP,eAAe,EACf,aAAa,EACb,KAAK,IAAI,aAAa,GACvB,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,5 +1,8 @@
1
1
  export declare const env: (name: string) => string | undefined;
2
- export declare const isDevEnv: () => any;
3
2
  export declare const TRACE_VERBOSE: boolean;
3
+ /** Only set when developing LiveStore itself. */
4
4
  export declare const LS_DEV: boolean;
5
+ export declare const IS_CI: boolean;
6
+ export declare const IS_BUN: boolean;
7
+ export declare const IS_REACT_NATIVE: boolean;
5
8
  //# 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,SAAU,MAAM,KAAG,MAAM,GAAG,SAY3C,CAAA;AAED,eAAO,MAAM,QAAQ,WAYpB,CAAA;AAED,eAAO,MAAM,aAAa,SAAsF,CAAA;AAEhH,eAAO,MAAM,MAAM,SAAkE,CAAA"}
1
+ {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,GAAG,GAAI,MAAM,MAAM,KAAG,MAAM,GAAG,SAY3C,CAAA;AAGD,eAAO,MAAM,aAAa,SAAsF,CAAA;AAEhH,iDAAiD;AACjD,eAAO,MAAM,MAAM,SAA4D,CAAA;AAE/E,eAAO,MAAM,KAAK,SAAuB,CAAA;AAEzC,eAAO,MAAM,MAAM,SAA6B,CAAA;AAEhD,eAAO,MAAM,eAAe,SAA0E,CAAA"}
package/dist/env.js CHANGED
@@ -1,3 +1,4 @@
1
+ import { envTruish } from './misc.js';
1
2
  export const env = (name) => {
2
3
  if (typeof process !== 'undefined' && process.env !== undefined) {
3
4
  return process.env[name];
@@ -9,17 +10,11 @@ export const env = (name) => {
9
10
  }
10
11
  return undefined;
11
12
  };
12
- export const isDevEnv = () => {
13
- if (typeof process !== 'undefined' && process.env !== undefined) {
14
- return process.env.NODE_ENV !== 'production';
15
- }
16
- // TODO re-enable the full guard code once `import.meta` is supported in Expo
17
- // if (import.meta !== undefined && import.meta.env !== undefined) {
18
- if (import.meta.env !== undefined) {
19
- return import.meta.env.DEV;
20
- }
21
- return false;
22
- };
13
+ // export const TRACE_VERBOSE = true
23
14
  export const TRACE_VERBOSE = env('LS_TRACE_VERBOSE') !== undefined || env('VITE_LS_TRACE_VERBOSE') !== undefined;
24
- export const LS_DEV = env('LS_DEV') !== undefined || env('VITE_LS_DEV') !== undefined;
15
+ /** Only set when developing LiveStore itself. */
16
+ export const LS_DEV = envTruish(env('LS_DEV')) || envTruish(env('VITE_LS_DEV'));
17
+ export const IS_CI = envTruish(env('CI'));
18
+ export const IS_BUN = typeof Bun !== 'undefined';
19
+ export const IS_REACT_NATIVE = typeof navigator !== 'undefined' && navigator.product === 'ReactNative';
25
20
  //# sourceMappingURL=env.js.map
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,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"}
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAErC,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,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,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAA;AAE/E,MAAM,CAAC,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAA;AAEzC,MAAM,CAAC,MAAM,MAAM,GAAG,OAAO,GAAG,KAAK,WAAW,CAAA;AAEhD,MAAM,CAAC,MAAM,eAAe,GAAG,OAAO,SAAS,KAAK,WAAW,IAAI,SAAS,CAAC,OAAO,KAAK,aAAa,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"fast-deep-equal.d.ts","sourceRoot":"","sources":["../src/fast-deep-equal.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,SAAS,GAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAG,OAkEzC,CAAA"}
1
+ {"version":3,"file":"fast-deep-equal.d.ts","sourceRoot":"","sources":["../src/fast-deep-equal.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,SAAS,GAAI,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,KAAG,OAkEzC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"guards.d.ts","sourceRoot":"","sources":["../src/guards.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,GAAI,CAAC,KAAK,CAAC,GAAG,SAAS,KAAG,CAAC,IAAI,CAAoB,CAAA;AAE9E,eAAO,MAAM,SAAS,GAAI,CAAC,KAAK,CAAC,GAAG,IAAI,KAAG,CAAC,IAAI,CAAe,CAAA;AAC/D,eAAO,MAAM,WAAW,GAAI,CAAC,KAAK,CAAC,GAAG,SAAS,KAAG,CAAC,IAAI,SAA4B,CAAA;AAEnF,eAAO,MAAM,KAAK,QAAS,GAAG,KAAG,GAAG,IAAI,IAAI,GAAG,SAA8C,CAAA;AAE7F,eAAO,MAAM,QAAQ,GAAI,CAAC,OAAO,CAAC,GAAG,SAAS,GAAG,IAAI,KAAG,GAAG,IAAI,CAAsC,CAAA"}
1
+ {"version":3,"file":"guards.d.ts","sourceRoot":"","sources":["../src/guards.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,GAAI,CAAC,EAAE,GAAG,CAAC,GAAG,SAAS,KAAG,CAAC,IAAI,CAAoB,CAAA;AAE9E,eAAO,MAAM,SAAS,GAAI,CAAC,EAAE,GAAG,CAAC,GAAG,IAAI,KAAG,CAAC,IAAI,CAAe,CAAA;AAC/D,eAAO,MAAM,WAAW,GAAI,CAAC,EAAE,GAAG,CAAC,GAAG,SAAS,KAAG,CAAC,IAAI,SAA4B,CAAA;AAEnF,eAAO,MAAM,KAAK,GAAI,KAAK,GAAG,KAAG,GAAG,IAAI,IAAI,GAAG,SAA8C,CAAA;AAE7F,eAAO,MAAM,QAAQ,GAAI,CAAC,EAAE,KAAK,CAAC,GAAG,SAAS,GAAG,IAAI,KAAG,GAAG,IAAI,CAAsC,CAAA"}
package/dist/index.d.ts CHANGED
@@ -13,12 +13,10 @@ export * from './fast-deep-equal.js';
13
13
  export * as base64 from './base64.js';
14
14
  export { default as prettyBytes } from 'pretty-bytes';
15
15
  import type * as otel from '@opentelemetry/api';
16
+ import type { Types } from 'effect';
16
17
  export type Prettify<T> = T extends infer U ? {
17
18
  [K in keyof U]: Prettify<U[K]>;
18
19
  } : never;
19
- export type PrettifyFlat<T> = T extends infer U ? {
20
- [K in keyof U]: U[K];
21
- } : never;
22
20
  export type TypeEq<A, B> = (<T>() => T extends A ? 1 : 2) extends <T>() => T extends B ? 1 : 2 ? true : false;
23
21
  /** `A` is subtype of `B` */
24
22
  export type IsSubtype<A, B> = A extends B ? true : false;
@@ -29,9 +27,13 @@ export type Writeable<T> = {
29
27
  export type DeepWriteable<T> = {
30
28
  -readonly [P in keyof T]: DeepWriteable<T[P]>;
31
29
  };
30
+ export type Nullable<T> = {
31
+ [K in keyof T]: T[K] | null;
32
+ };
32
33
  export type Primitive = null | undefined | string | number | boolean | symbol | bigint;
33
34
  export type LiteralUnion<LiteralType, BaseType extends Primitive> = LiteralType | (BaseType & Record<never, never>);
34
35
  export type GetValForKey<T, K> = K extends keyof T ? T[K] : never;
36
+ export type SingleOrReadonlyArray<T> = T | ReadonlyArray<T>;
35
37
  export declare const sleep: (ms: number) => Promise<unknown>;
36
38
  export declare const ref: <T>(val: T) => {
37
39
  current: T;
@@ -47,14 +49,13 @@ export declare const isReadonlyArray: <I, T>(value: ReadonlyArray<I> | T) => val
47
49
  * union have been accounted for.
48
50
  */
49
51
  export declare function casesHandled(unexpectedCase: never): never;
50
- export declare const shouldNeverHappen: (msg?: string, ...args: any[]) => never;
51
52
  export declare const assertNever: (failIfFalse: boolean, msg?: string) => void;
52
53
  export declare const debuggerPipe: <T>(val: T) => T;
53
54
  export declare const notYetImplemented: (msg?: string) => never;
54
55
  export declare const noop: () => void;
55
56
  export type Thunk<T> = () => T;
56
57
  export declare const unwrapThunk: <T>(_: T | (() => T)) => T;
57
- export type NullableFieldsToOptional<T> = PrettifyFlat<Partial<T> & {
58
+ export type NullableFieldsToOptional<T> = Types.Simplify<Partial<T> & {
58
59
  [K in keyof T as null extends T[K] ? K : never]?: Exclude<T[K], null>;
59
60
  } & {
60
61
  [K in keyof T as null extends T[K] ? never : K]: T[K];
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -12,7 +12,6 @@ export * from './env.js';
12
12
  export * from './fast-deep-equal.js';
13
13
  export * as base64 from './base64.js';
14
14
  export { default as prettyBytes } from 'pretty-bytes';
15
- import { isDevEnv } from './env.js';
16
15
  import { objectToString } from './misc.js';
17
16
  export const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
18
17
  export const ref = (val) => ({ current: val });
@@ -57,13 +56,6 @@ export function casesHandled(unexpectedCase) {
57
56
  debugger;
58
57
  throw new Error(`A case was not handled for value: ${truncate(objectToString(unexpectedCase), 1000)}`);
59
58
  }
60
- export const shouldNeverHappen = (msg, ...args) => {
61
- console.error(msg, ...args);
62
- if (isDevEnv()) {
63
- debugger;
64
- }
65
- throw new Error(`This should never happen: ${msg}`);
66
- };
67
59
  export const assertNever = (failIfFalse, msg) => {
68
60
  if (failIfFalse === false) {
69
61
  debugger;
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/misc.d.ts CHANGED
@@ -1,3 +1,6 @@
1
+ export declare const isDevEnv: () => any;
1
2
  export declare const objectToString: (error: any) => string;
2
3
  export declare const tryAsFunctionAndNew: <TArg, TResult>(fnOrConstructor: ((arg: TArg) => TResult) | (new (arg: TArg) => TResult), arg: TArg) => TResult;
4
+ export declare const envTruish: (env: string | undefined) => boolean;
5
+ export declare const shouldNeverHappen: (msg?: string, ...args: any[]) => never;
3
6
  //# sourceMappingURL=misc.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"misc.d.ts","sourceRoot":"","sources":["../src/misc.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,UAAW,GAAG,KAAG,MAW3C,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,IAAI,EAAE,OAAO,mBAC9B,CAAC,CAAC,GAAG,EAAE,IAAI,KAAK,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,IAAI,KAAK,OAAO,CAAC,OACnE,IAAI,KACR,OASF,CAAA"}
1
+ {"version":3,"file":"misc.d.ts","sourceRoot":"","sources":["../src/misc.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,QAAQ,WAiBpB,CAAA;AAED,eAAO,MAAM,cAAc,GAAI,OAAO,GAAG,KAAG,MAW3C,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,IAAI,EAAE,OAAO,EAC/C,iBAAiB,CAAC,CAAC,GAAG,EAAE,IAAI,KAAK,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,IAAI,KAAK,OAAO,CAAC,EACxE,KAAK,IAAI,KACR,OASF,CAAA;AAED,eAAO,MAAM,SAAS,GAAI,KAAK,MAAM,GAAG,SAAS,YACgC,CAAA;AAEjF,eAAO,MAAM,iBAAiB,GAAI,MAAM,MAAM,EAAE,GAAG,MAAM,GAAG,EAAE,KAAG,KAOhE,CAAA"}
package/dist/misc.js CHANGED
@@ -1,3 +1,18 @@
1
+ export const isDevEnv = () => {
2
+ if (typeof process !== 'undefined' && process.env !== undefined) {
3
+ return process.env.NODE_ENV !== 'production';
4
+ }
5
+ // TODO re-enable the full guard code once `import.meta` is supported in Expo
6
+ // if (import.meta !== undefined && import.meta.env !== undefined) {
7
+ if (import.meta.env !== undefined) {
8
+ return import.meta.env.DEV;
9
+ }
10
+ // @ts-expect-error Only exists in Expo / RN
11
+ if (typeof globalThis !== 'undefined' && globalThis.__DEV__) {
12
+ return true;
13
+ }
14
+ return false;
15
+ };
1
16
  export const objectToString = (error) => {
2
17
  const str = error?.toString();
3
18
  if (str !== '[object Object]')
@@ -21,4 +36,12 @@ export const tryAsFunctionAndNew = (fnOrConstructor, arg) => {
21
36
  return fnOrConstructor(arg);
22
37
  }
23
38
  };
39
+ export const envTruish = (env) => env !== undefined && env.toLowerCase() !== 'false' && env.toLowerCase() !== '0';
40
+ export const shouldNeverHappen = (msg, ...args) => {
41
+ console.error(msg, ...args);
42
+ if (isDevEnv()) {
43
+ debugger;
44
+ }
45
+ throw new Error(`This should never happen: ${msg}`);
46
+ };
24
47
  //# sourceMappingURL=misc.js.map