@livestore/sync-cf 0.4.0-dev.18 → 0.4.0-dev.19

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 (51) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/cf-worker/do/layer.d.ts +3 -3
  3. package/dist/cf-worker/do/layer.d.ts.map +1 -1
  4. package/dist/cf-worker/do/layer.js +5 -5
  5. package/dist/cf-worker/do/layer.js.map +1 -1
  6. package/dist/cf-worker/do/pull.d.ts.map +1 -1
  7. package/dist/cf-worker/do/pull.js +3 -3
  8. package/dist/cf-worker/do/pull.js.map +1 -1
  9. package/dist/cf-worker/do/push.js +4 -4
  10. package/dist/cf-worker/do/push.js.map +1 -1
  11. package/dist/cf-worker/do/sqlite.js +3 -3
  12. package/dist/cf-worker/do/sqlite.js.map +1 -1
  13. package/dist/cf-worker/do/sync-storage.d.ts +6 -6
  14. package/dist/cf-worker/do/sync-storage.d.ts.map +1 -1
  15. package/dist/cf-worker/do/sync-storage.js +10 -10
  16. package/dist/cf-worker/do/sync-storage.js.map +1 -1
  17. package/dist/cf-worker/shared.d.ts +1 -3
  18. package/dist/cf-worker/shared.d.ts.map +1 -1
  19. package/dist/cf-worker/shared.js.map +1 -1
  20. package/dist/cf-worker/worker.d.ts +1 -1
  21. package/dist/cf-worker/worker.js +4 -4
  22. package/dist/cf-worker/worker.js.map +1 -1
  23. package/dist/client/transport/do-rpc-client.d.ts.map +1 -1
  24. package/dist/client/transport/do-rpc-client.js +4 -6
  25. package/dist/client/transport/do-rpc-client.js.map +1 -1
  26. package/dist/client/transport/http-rpc-client.d.ts.map +1 -1
  27. package/dist/client/transport/http-rpc-client.js +6 -6
  28. package/dist/client/transport/http-rpc-client.js.map +1 -1
  29. package/dist/client/transport/ws-rpc-client.d.ts +2 -1
  30. package/dist/client/transport/ws-rpc-client.d.ts.map +1 -1
  31. package/dist/client/transport/ws-rpc-client.js +5 -5
  32. package/dist/client/transport/ws-rpc-client.js.map +1 -1
  33. package/dist/common/http-rpc-schema.d.ts +2 -2
  34. package/dist/common/http-rpc-schema.d.ts.map +1 -1
  35. package/dist/common/http-rpc-schema.js +2 -2
  36. package/dist/common/http-rpc-schema.js.map +1 -1
  37. package/dist/common/sync-message-types.js +3 -3
  38. package/dist/common/sync-message-types.js.map +1 -1
  39. package/package.json +5 -5
  40. package/src/cf-worker/do/layer.ts +6 -6
  41. package/src/cf-worker/do/pull.ts +3 -5
  42. package/src/cf-worker/do/push.ts +4 -4
  43. package/src/cf-worker/do/sqlite.ts +3 -3
  44. package/src/cf-worker/do/sync-storage.ts +26 -26
  45. package/src/cf-worker/shared.ts +1 -3
  46. package/src/cf-worker/worker.ts +4 -4
  47. package/src/client/transport/do-rpc-client.ts +4 -6
  48. package/src/client/transport/http-rpc-client.ts +7 -7
  49. package/src/client/transport/ws-rpc-client.ts +7 -7
  50. package/src/common/http-rpc-schema.ts +2 -2
  51. package/src/common/sync-message-types.ts +3 -3
@@ -1,4 +1,4 @@
1
- import { InvalidPullError, InvalidPushError, SyncBackend, UnexpectedError } from '@livestore/common'
1
+ import { InvalidPullError, InvalidPushError, SyncBackend, UnknownError } from '@livestore/common'
2
2
  import { splitChunkBySize } from '@livestore/common/sync'
3
3
  import { type CfTypes, layerProtocolDurableObject } from '@livestore/common-cf'
4
4
  import { omit, shouldNeverHappen } from '@livestore/utils'
@@ -114,7 +114,7 @@ export const makeDoRpcSync =
114
114
  backendId,
115
115
  }),
116
116
  }),
117
- Effect.mapError((cause) => new InvalidPushError({ cause: new UnexpectedError({ cause }) })),
117
+ Effect.mapError((cause) => new InvalidPushError({ cause: new UnknownError({ cause }) })),
118
118
  )
119
119
 
120
120
  for (const chunk of Chunk.toReadonlyArray(batchChunks)) {
@@ -123,9 +123,7 @@ export const makeDoRpcSync =
123
123
  }
124
124
  }).pipe(
125
125
  Effect.mapError((cause) =>
126
- cause._tag === 'InvalidPushError'
127
- ? cause
128
- : InvalidPushError.make({ cause: new UnexpectedError({ cause }) }),
126
+ cause._tag === 'InvalidPushError' ? cause : InvalidPushError.make({ cause: new UnknownError({ cause }) }),
129
127
  ),
130
128
  Effect.withSpan('rpc-sync-client:push'),
131
129
  )
@@ -133,7 +131,7 @@ export const makeDoRpcSync =
133
131
  const ping: SyncBackend.SyncBackend<{ createdAt: string }>['ping'] = rpcClient.SyncDoRpc.Ping({
134
132
  storeId,
135
133
  payload,
136
- }).pipe(UnexpectedError.mapToUnexpectedError, Effect.withSpan('rpc-sync-client:ping'))
134
+ }).pipe(UnknownError.mapToUnknownError, Effect.withSpan('rpc-sync-client:ping'))
137
135
 
138
136
  return SyncBackend.of({
139
137
  connect,
@@ -1,4 +1,4 @@
1
- import { InvalidPullError, InvalidPushError, SyncBackend, UnexpectedError } from '@livestore/common'
1
+ import { InvalidPullError, InvalidPushError, SyncBackend, UnknownError } from '@livestore/common'
2
2
  import type { EventSequenceNumber } from '@livestore/common/schema'
3
3
  import { splitChunkBySize } from '@livestore/common/sync'
4
4
  import { omit } from '@livestore/utils'
@@ -76,7 +76,7 @@ export const makeHttpSync =
76
76
  storeId,
77
77
  payload,
78
78
  transport: 'http',
79
- }).pipe(UnexpectedError.mapToUnexpectedError)
79
+ }).pipe(UnknownError.mapToUnknownError)
80
80
 
81
81
  const urlParams = UrlParams.fromInput(urlParamsData)
82
82
 
@@ -103,7 +103,7 @@ export const makeHttpSync =
103
103
 
104
104
  yield* SubscriptionRef.set(isConnected, true)
105
105
  }).pipe(
106
- UnexpectedError.mapToUnexpectedError,
106
+ UnknownError.mapToUnknownError,
107
107
  Effect.timeout(pingTimeout),
108
108
  Effect.catchTag('TimeoutException', () => SubscriptionRef.set(isConnected, false)),
109
109
  )
@@ -116,14 +116,14 @@ export const makeHttpSync =
116
116
  }
117
117
 
118
118
  // Helps already establish a TCP connection to the server
119
- const connect = ping.pipe(UnexpectedError.mapToUnexpectedError)
119
+ const connect = ping.pipe(UnknownError.mapToUnknownError)
120
120
 
121
121
  const backendIdHelper = yield* SyncBackend.makeBackendIdHelper
122
122
 
123
123
  const mapCursor = (cursor: Option.Option<{ eventSequenceNumber: number }>) =>
124
124
  cursor.pipe(
125
125
  Option.map((a) => ({
126
- eventSequenceNumber: a.eventSequenceNumber as EventSequenceNumber.GlobalEventSequenceNumber,
126
+ eventSequenceNumber: a.eventSequenceNumber as EventSequenceNumber.Global.Type,
127
127
  backendId: backendIdHelper.get().pipe(Option.getOrThrow),
128
128
  })),
129
129
  )
@@ -190,7 +190,7 @@ export const makeHttpSync =
190
190
  backendId,
191
191
  }),
192
192
  }),
193
- Effect.mapError((cause) => new InvalidPushError({ cause: new UnexpectedError({ cause }) })),
193
+ Effect.mapError((cause) => new InvalidPushError({ cause: new UnknownError({ cause }) })),
194
194
  )
195
195
 
196
196
  for (const chunk of Chunk.toReadonlyArray(batchChunks)) {
@@ -200,7 +200,7 @@ export const makeHttpSync =
200
200
  }).pipe(
201
201
  pushSemaphore.withPermits(1),
202
202
  Effect.mapError((cause) =>
203
- cause._tag === 'InvalidPushError' ? cause : new InvalidPushError({ cause: new UnexpectedError({ cause }) }),
203
+ cause._tag === 'InvalidPushError' ? cause : new InvalidPushError({ cause: new UnknownError({ cause }) }),
204
204
  ),
205
205
  Effect.withSpan('http-sync-client:push'),
206
206
  )
@@ -1,4 +1,4 @@
1
- import { InvalidPullError, InvalidPushError, IsOfflineError, SyncBackend, UnexpectedError } from '@livestore/common'
1
+ import { InvalidPullError, InvalidPushError, IsOfflineError, SyncBackend, UnknownError } from '@livestore/common'
2
2
  import type { LiveStoreEvent } from '@livestore/common/schema'
3
3
  import { splitChunkBySize } from '@livestore/common/sync'
4
4
  import { omit } from '@livestore/utils'
@@ -17,8 +17,8 @@ import {
17
17
  Stream,
18
18
  SubscriptionRef,
19
19
  UrlParams,
20
- type WebSocket,
21
20
  } from '@livestore/utils/effect'
21
+ import type { WebSocket } from '@livestore/utils/effect/browser'
22
22
  import { MAX_PUSH_EVENTS_PER_REQUEST, MAX_WS_MESSAGE_BYTES } from '../../common/constants.ts'
23
23
  import { SearchParamsSchema } from '../../common/mod.ts'
24
24
  import type { SyncMetadata } from '../../common/sync-message-types.ts'
@@ -73,7 +73,7 @@ export const makeWsSync =
73
73
  storeId,
74
74
  payload,
75
75
  transport: 'ws',
76
- }).pipe(UnexpectedError.mapToUnexpectedError)
76
+ }).pipe(UnknownError.mapToUnknownError)
77
77
 
78
78
  const urlParams = UrlParams.fromInput(urlParamsData)
79
79
  const wsUrl = `${options.url}?${UrlParams.toString(urlParams)}`
@@ -119,7 +119,7 @@ export const makeWsSync =
119
119
  }).pipe(
120
120
  Effect.timeout(pingTimeout),
121
121
  Effect.catchTag('TimeoutException', () => SubscriptionRef.set(isConnected, false)),
122
- UnexpectedError.mapToUnexpectedError,
122
+ UnknownError.mapToUnknownError,
123
123
  Effect.withSpan('ping'),
124
124
  )
125
125
 
@@ -156,7 +156,7 @@ export const makeWsSync =
156
156
  Effect.gen(function* () {
157
157
  if (batch.length === 0) return
158
158
 
159
- const encodePayload = (batch: ReadonlyArray<LiveStoreEvent.AnyEncodedGlobal>) => ({
159
+ const encodePayload = (batch: ReadonlyArray<LiveStoreEvent.Global.Encoded>) => ({
160
160
  storeId,
161
161
  payload,
162
162
  batch,
@@ -169,7 +169,7 @@ export const makeWsSync =
169
169
  maxBytes: MAX_WS_MESSAGE_BYTES,
170
170
  encode: encodePayload,
171
171
  }),
172
- Effect.mapError((cause) => new InvalidPushError({ cause: new UnexpectedError({ cause }) })),
172
+ Effect.mapError((cause) => new InvalidPushError({ cause: new UnknownError({ cause }) })),
173
173
  )
174
174
 
175
175
  for (const sub of chunksChunk) {
@@ -182,7 +182,7 @@ export const makeWsSync =
182
182
  Effect.mapError((cause) =>
183
183
  cause._tag === 'InvalidPushError'
184
184
  ? cause
185
- : new InvalidPushError({ cause: new UnexpectedError({ cause }) }),
185
+ : new InvalidPushError({ cause: new UnknownError({ cause }) }),
186
186
  ),
187
187
  )
188
188
  }
@@ -1,4 +1,4 @@
1
- import { InvalidPullError, InvalidPushError, UnexpectedError } from '@livestore/common'
1
+ import { InvalidPullError, InvalidPushError, UnknownError } from '@livestore/common'
2
2
  import { Rpc, RpcGroup, Schema } from '@livestore/utils/effect'
3
3
  import * as SyncMessage from './sync-message-types.ts'
4
4
 
@@ -35,6 +35,6 @@ export class SyncHttpRpc extends RpcGroup.make(
35
35
  payload: Schema.optional(Schema.JsonValue),
36
36
  }),
37
37
  success: SyncMessage.Pong,
38
- error: UnexpectedError,
38
+ error: UnknownError,
39
39
  }),
40
40
  ) {}
@@ -20,7 +20,7 @@ export const PullRequest = Schema.Struct({
20
20
  cursor: Schema.Option(
21
21
  Schema.Struct({
22
22
  backendId: BackendId,
23
- eventSequenceNumber: EventSequenceNumber.GlobalEventSequenceNumber,
23
+ eventSequenceNumber: EventSequenceNumber.Global.Schema,
24
24
  }),
25
25
  ),
26
26
  }).annotations({ title: '@livestore/sync-cf:PullRequest' })
@@ -30,7 +30,7 @@ export type PullRequest = typeof PullRequest.Type
30
30
  export const PullResponse = Schema.Struct({
31
31
  batch: Schema.Array(
32
32
  Schema.Struct({
33
- eventEncoded: LiveStoreEvent.AnyEncodedGlobal,
33
+ eventEncoded: LiveStoreEvent.Global.Encoded,
34
34
  metadata: Schema.Option(SyncMetadata),
35
35
  }),
36
36
  ),
@@ -48,7 +48,7 @@ export const emptyPullResponse = (backendId: string) =>
48
48
  export type PullResponse = typeof PullResponse.Type
49
49
 
50
50
  export const PushRequest = Schema.Struct({
51
- batch: Schema.Array(LiveStoreEvent.AnyEncodedGlobal),
51
+ batch: Schema.Array(LiveStoreEvent.Global.Encoded),
52
52
  backendId: Schema.Option(BackendId),
53
53
  }).annotations({ title: '@livestore/sync-cf:PushRequest' })
54
54