cojson-storage-indexeddb 0.7.18 → 0.7.26

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.
@@ -1,8 +1,8 @@
1
1
 
2
- > cojson-storage-indexeddb@0.7.17 build /Users/anselm/jazz/jazz/packages/cojson-storage-indexeddb
2
+ > cojson-storage-indexeddb@0.7.23 build /Users/anselm/jazz/jazz/packages/cojson-storage-indexeddb
3
3
  > npm run lint && rm -rf ./dist && tsc --sourceMap --outDir dist
4
4
 
5
5
 
6
- > cojson-storage-indexeddb@0.7.17 lint
6
+ > cojson-storage-indexeddb@0.7.23 lint
7
7
  > eslint . --ext ts,tsx
8
8
 
@@ -1,4 +1,4 @@
1
1
 
2
- > cojson-storage-indexeddb@0.7.0 lint /Users/anselm/jazz/jazz/packages/cojson-storage-indexeddb
2
+ > cojson-storage-indexeddb@0.7.18 lint /Users/anselm/jazz/jazz/packages/cojson-storage-indexeddb
3
3
  > eslint . --ext ts,tsx
4
4
 
package/CHANGELOG.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # cojson-storage-indexeddb
2
2
 
3
+ ## 0.7.26
4
+
5
+ ### Patch Changes
6
+
7
+ - Remove Effect from jazz/cojson internals
8
+ - Updated dependencies
9
+ - cojson@0.7.26
10
+
11
+ ## 0.7.23
12
+
13
+ ### Patch Changes
14
+
15
+ - Updated dependencies
16
+ - cojson@0.7.23
17
+
3
18
  ## 0.7.18
4
19
 
5
20
  ### Patch Changes
package/dist/index.js CHANGED
@@ -1,26 +1,33 @@
1
1
  import { cojsonInternals, MAX_RECOMMENDED_TX_SIZE, } from "cojson";
2
2
  import { SyncPromise } from "./syncPromises.js";
3
- import { Effect, Queue, Stream } from "effect";
4
3
  export class IDBStorage {
5
4
  constructor(db, fromLocalNode, toLocalNode) {
6
5
  this.currentTxID = 0;
7
6
  this.db = db;
8
7
  this.toLocalNode = toLocalNode;
9
- void fromLocalNode.pipe(Stream.runForEach((msg) => Effect.tryPromise({
10
- try: () => this.handleSyncMessage(msg),
11
- catch: (e) => new Error(`Error reading from localNode, handling msg\n\n${JSON.stringify(msg, (k, v) => k === "changes" || k === "encryptedChanges"
12
- ? v.slice(0, 20) + "..."
13
- : v)}`, { cause: e }),
14
- })), Effect.runPromise);
8
+ const processMessages = async () => {
9
+ for await (const msg of fromLocalNode) {
10
+ try {
11
+ if (msg === "Disconnected" || msg === "PingTimeout") {
12
+ throw new Error("Unexpected Disconnected message");
13
+ }
14
+ await this.handleSyncMessage(msg);
15
+ }
16
+ catch (e) {
17
+ console.error(new Error(`Error reading from localNode, handling msg\n\n${JSON.stringify(msg, (k, v) => k === "changes" || k === "encryptedChanges"
18
+ ? v.slice(0, 20) + "..."
19
+ : v)}`, { cause: e }));
20
+ }
21
+ }
22
+ };
23
+ processMessages().catch((e) => console.error("Error in processMessages in IndexedDB", e));
15
24
  }
16
25
  static async asPeer({ trace, localNodeName = "local", } = {
17
26
  localNodeName: "local",
18
27
  }) {
19
- return Effect.runPromise(Effect.gen(function* () {
20
- const [localNodeAsPeer, storageAsPeer] = yield* cojsonInternals.connectedPeers(localNodeName, "storage", { peer1role: "client", peer2role: "server", trace });
21
- yield* Effect.promise(() => IDBStorage.open(localNodeAsPeer.incoming, localNodeAsPeer.outgoing));
22
- return { ...storageAsPeer, priority: 100 };
23
- }));
28
+ const [localNodeAsPeer, storageAsPeer] = cojsonInternals.connectedPeers(localNodeName, "storage", { peer1role: "client", peer2role: "server", trace });
29
+ await IDBStorage.open(localNodeAsPeer.incoming, localNodeAsPeer.outgoing);
30
+ return { ...storageAsPeer, priority: 100 };
24
31
  }
25
32
  static async open(fromLocalNode, toLocalNode) {
26
33
  const dbPromise = new Promise((resolve, reject) => {
@@ -194,21 +201,23 @@ export class IDBStorage {
194
201
  sessions: {},
195
202
  }, asDependencyOf || theirKnown.id))).then(() => {
196
203
  // we're done with IndexedDB stuff here so can use native Promises again
197
- setTimeout(() => Effect.runPromise(Effect.gen(this, function* () {
198
- yield* Queue.offer(this.toLocalNode, {
204
+ setTimeout(() => {
205
+ this.toLocalNode
206
+ .push({
199
207
  action: "known",
200
208
  ...ourKnown,
201
209
  asDependencyOf,
202
- });
210
+ })
211
+ .catch((e) => console.error("Error sending known state", e));
203
212
  const nonEmptyNewContentPieces = newContentPieces.filter((piece) => piece.header ||
204
- Object.keys(piece.new)
205
- .length > 0);
213
+ Object.keys(piece.new).length > 0);
206
214
  // console.log(theirKnown.id, nonEmptyNewContentPieces);
207
215
  for (const piece of nonEmptyNewContentPieces) {
208
- yield* Queue.offer(this.toLocalNode, piece);
209
- yield* Effect.yieldNow();
216
+ this.toLocalNode
217
+ .push(piece)
218
+ .catch((e) => console.error("Error sending new content piece", e));
210
219
  }
211
- })));
220
+ });
212
221
  return Promise.resolve();
213
222
  });
214
223
  });
@@ -226,14 +235,16 @@ export class IDBStorage {
226
235
  const header = msg.header;
227
236
  if (!header) {
228
237
  console.error("Expected to be sent header first");
229
- void Effect.runPromise(Queue.offer(this.toLocalNode, {
238
+ this.toLocalNode
239
+ .push({
230
240
  action: "known",
231
241
  id: msg.id,
232
242
  header: false,
233
243
  sessions: {},
234
244
  isCorrection: true,
235
- }));
236
- throw new Error("Expected to be sent header first");
245
+ })
246
+ .catch((e) => console.error("Error sending known state", e));
247
+ return SyncPromise.resolve();
237
248
  }
238
249
  return this.makeRequest(({ coValues }) => coValues.put({
239
250
  id: msg.id,
@@ -273,11 +284,13 @@ export class IDBStorage {
273
284
  }
274
285
  })).then(() => {
275
286
  if (invalidAssumptions) {
276
- void Effect.runPromise(Queue.offer(this.toLocalNode, {
287
+ this.toLocalNode
288
+ .push({
277
289
  action: "known",
278
290
  ...ourKnown,
279
291
  isCorrection: invalidAssumptions,
280
- }));
292
+ })
293
+ .catch((e) => console.error("Error sending known state", e));
281
294
  }
282
295
  });
283
296
  });
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/package.json CHANGED
@@ -1,14 +1,13 @@
1
1
  {
2
2
  "name": "cojson-storage-indexeddb",
3
- "version": "0.7.18",
3
+ "version": "0.7.26",
4
4
  "main": "dist/index.js",
5
5
  "type": "module",
6
6
  "types": "src/index.ts",
7
7
  "license": "MIT",
8
8
  "dependencies": {
9
- "effect": "^3.5.2",
10
9
  "typescript": "^5.1.6",
11
- "cojson": "0.7.18"
10
+ "cojson": "0.7.26"
12
11
  },
13
12
  "devDependencies": {
14
13
  "@vitest/browser": "^0.34.1",
package/src/index.ts CHANGED
@@ -10,7 +10,6 @@ import {
10
10
  OutgoingSyncQueue,
11
11
  } from "cojson";
12
12
  import { SyncPromise } from "./syncPromises.js";
13
- import { Effect, Queue, Stream } from "effect";
14
13
 
15
14
  type CoValueRow = {
16
15
  id: CojsonInternalTypes.RawCoID;
@@ -53,11 +52,15 @@ export class IDBStorage {
53
52
  this.db = db;
54
53
  this.toLocalNode = toLocalNode;
55
54
 
56
- void fromLocalNode.pipe(
57
- Stream.runForEach((msg) =>
58
- Effect.tryPromise({
59
- try: () => this.handleSyncMessage(msg),
60
- catch: (e) =>
55
+ const processMessages = async () => {
56
+ for await (const msg of fromLocalNode) {
57
+ try {
58
+ if (msg === "Disconnected" || msg === "PingTimeout") {
59
+ throw new Error("Unexpected Disconnected message");
60
+ }
61
+ await this.handleSyncMessage(msg);
62
+ } catch (e) {
63
+ console.error(
61
64
  new Error(
62
65
  `Error reading from localNode, handling msg\n\n${JSON.stringify(
63
66
  msg,
@@ -68,9 +71,13 @@ export class IDBStorage {
68
71
  )}`,
69
72
  { cause: e },
70
73
  ),
71
- }),
72
- ),
73
- Effect.runPromise,
74
+ );
75
+ }
76
+ }
77
+ };
78
+
79
+ processMessages().catch((e) =>
80
+ console.error("Error in processMessages in IndexedDB", e),
74
81
  );
75
82
  }
76
83
 
@@ -82,25 +89,18 @@ export class IDBStorage {
82
89
  localNodeName: "local",
83
90
  },
84
91
  ): Promise<Peer> {
85
- return Effect.runPromise(
86
- Effect.gen(function* () {
87
- const [localNodeAsPeer, storageAsPeer] =
88
- yield* cojsonInternals.connectedPeers(
89
- localNodeName,
90
- "storage",
91
- { peer1role: "client", peer2role: "server", trace },
92
- );
93
-
94
- yield* Effect.promise(() =>
95
- IDBStorage.open(
96
- localNodeAsPeer.incoming,
97
- localNodeAsPeer.outgoing,
98
- ),
99
- );
92
+ const [localNodeAsPeer, storageAsPeer] = cojsonInternals.connectedPeers(
93
+ localNodeName,
94
+ "storage",
95
+ { peer1role: "client", peer2role: "server", trace },
96
+ );
100
97
 
101
- return { ...storageAsPeer, priority: 100 };
102
- }),
98
+ await IDBStorage.open(
99
+ localNodeAsPeer.incoming,
100
+ localNodeAsPeer.outgoing,
103
101
  );
102
+
103
+ return { ...storageAsPeer, priority: 100 };
104
104
  }
105
105
 
106
106
  static async open(
@@ -392,35 +392,40 @@ export class IDBStorage {
392
392
  ),
393
393
  ).then(() => {
394
394
  // we're done with IndexedDB stuff here so can use native Promises again
395
- setTimeout(() =>
396
- Effect.runPromise(
397
- Effect.gen(this, function* () {
398
- yield* Queue.offer(this.toLocalNode, {
399
- action: "known",
400
- ...ourKnown,
401
- asDependencyOf,
402
- });
403
-
404
- const nonEmptyNewContentPieces =
405
- newContentPieces.filter(
406
- (piece) =>
407
- piece.header ||
408
- Object.keys(piece.new)
409
- .length > 0,
410
- );
411
-
412
- // console.log(theirKnown.id, nonEmptyNewContentPieces);
413
-
414
- for (const piece of nonEmptyNewContentPieces) {
415
- yield* Queue.offer(
416
- this.toLocalNode,
417
- piece,
418
- );
419
- yield* Effect.yieldNow();
420
- }
421
- }),
422
- ),
423
- );
395
+ setTimeout(() => {
396
+ this.toLocalNode
397
+ .push({
398
+ action: "known",
399
+ ...ourKnown,
400
+ asDependencyOf,
401
+ })
402
+ .catch((e) =>
403
+ console.error(
404
+ "Error sending known state",
405
+ e,
406
+ ),
407
+ );
408
+
409
+ const nonEmptyNewContentPieces =
410
+ newContentPieces.filter(
411
+ (piece) =>
412
+ piece.header ||
413
+ Object.keys(piece.new).length > 0,
414
+ );
415
+
416
+ // console.log(theirKnown.id, nonEmptyNewContentPieces);
417
+
418
+ for (const piece of nonEmptyNewContentPieces) {
419
+ this.toLocalNode
420
+ .push(piece)
421
+ .catch((e) =>
422
+ console.error(
423
+ "Error sending new content piece",
424
+ e,
425
+ ),
426
+ );
427
+ }
428
+ });
424
429
 
425
430
  return Promise.resolve();
426
431
  });
@@ -445,16 +450,18 @@ export class IDBStorage {
445
450
  const header = msg.header;
446
451
  if (!header) {
447
452
  console.error("Expected to be sent header first");
448
- void Effect.runPromise(
449
- Queue.offer(this.toLocalNode, {
453
+ this.toLocalNode
454
+ .push({
450
455
  action: "known",
451
456
  id: msg.id,
452
457
  header: false,
453
458
  sessions: {},
454
459
  isCorrection: true,
455
- }),
456
- );
457
- throw new Error("Expected to be sent header first");
460
+ })
461
+ .catch((e) =>
462
+ console.error("Error sending known state", e),
463
+ );
464
+ return SyncPromise.resolve();
458
465
  }
459
466
 
460
467
  return this.makeRequest<IDBValidKey>(({ coValues }) =>
@@ -515,13 +522,18 @@ export class IDBStorage {
515
522
  ),
516
523
  ).then(() => {
517
524
  if (invalidAssumptions) {
518
- void Effect.runPromise(
519
- Queue.offer(this.toLocalNode, {
525
+ this.toLocalNode
526
+ .push({
520
527
  action: "known",
521
528
  ...ourKnown,
522
529
  isCorrection: invalidAssumptions,
523
- }),
524
- );
530
+ })
531
+ .catch((e) =>
532
+ console.error(
533
+ "Error sending known state",
534
+ e,
535
+ ),
536
+ );
525
537
  }
526
538
  });
527
539
  });