@peerbit/log 2.0.3 → 2.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/esm/clock.js CHANGED
@@ -43,7 +43,7 @@ export function fromBits(low, high, unsigned, target) {
43
43
  return {
44
44
  low: low | 0,
45
45
  high: high | 0,
46
- unsigned: !!unsigned,
46
+ unsigned: !!unsigned
47
47
  };
48
48
  }
49
49
  target.low = low | 0;
@@ -93,7 +93,7 @@ export let Timestamp = Timestamp_1 = class Timestamp {
93
93
  clone() {
94
94
  return new Timestamp_1({
95
95
  wallTime: this.wallTime,
96
- logical: this.logical,
96
+ logical: this.logical
97
97
  });
98
98
  }
99
99
  toString() {
@@ -200,14 +200,14 @@ export let LamportClock = LamportClock_1 = class LamportClock {
200
200
  if (!properties.timestamp) {
201
201
  this.timestamp = new Timestamp({
202
202
  wallTime: bigintTime(),
203
- logical: 0,
203
+ logical: 0
204
204
  });
205
205
  }
206
206
  else {
207
207
  if (typeof properties.timestamp === "number") {
208
208
  this.timestamp = new Timestamp({
209
209
  wallTime: bigintTime(),
210
- logical: properties.timestamp,
210
+ logical: properties.timestamp
211
211
  });
212
212
  }
213
213
  else {
@@ -218,7 +218,7 @@ export let LamportClock = LamportClock_1 = class LamportClock {
218
218
  clone() {
219
219
  return new LamportClock_1({
220
220
  id: this.id,
221
- timestamp: this.timestamp.clone(),
221
+ timestamp: this.timestamp.clone()
222
222
  });
223
223
  }
224
224
  equals(other) {
@@ -9,12 +9,12 @@ export const NO_ENCODING = {
9
9
  },
10
10
  decoder: (bytes) => {
11
11
  return bytes;
12
- },
12
+ }
13
13
  };
14
14
  export const BORSH_ENCODING = (clazz) => {
15
15
  return {
16
16
  decoder: (bytes) => deserialize(bytes, clazz),
17
- encoder: (data) => serialize(data),
17
+ encoder: (data) => serialize(data)
18
18
  };
19
19
  };
20
20
  //# sourceMappingURL=encoding.js.map
package/lib/esm/entry.js CHANGED
@@ -9,8 +9,8 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  };
10
10
  var Entry_1;
11
11
  import { HLC, LamportClock as Clock, Timestamp } from "./clock.js";
12
- import { variant, field, serialize, deserialize, option, vec, fixedArray, } from "@dao-xyz/borsh";
13
- import { DecryptedThing, MaybeEncrypted, X25519PublicKey, SignatureWithKey, AccessError, Ed25519PublicKey, sha256Base64, randomBytes, } from "@peerbit/crypto";
12
+ import { variant, field, serialize, deserialize, option, vec, fixedArray } from "@dao-xyz/borsh";
13
+ import { DecryptedThing, MaybeEncrypted, X25519PublicKey, SignatureWithKey, AccessError, Ed25519PublicKey, sha256Base64, randomBytes } from "@peerbit/crypto";
14
14
  import { verify } from "@peerbit/crypto";
15
15
  import { compare, equals } from "@peerbit/uint8arrays";
16
16
  import { NO_ENCODING } from "./encoding.js";
@@ -90,7 +90,7 @@ Payload = __decorate([
90
90
  export var EntryType;
91
91
  (function (EntryType) {
92
92
  EntryType[EntryType["APPEND"] = 0] = "APPEND";
93
- EntryType[EntryType["CUT"] = 1] = "CUT";
93
+ EntryType[EntryType["CUT"] = 1] = "CUT"; // Delete or Create tombstone ... delete all nexts, i
94
94
  })(EntryType || (EntryType = {}));
95
95
  export let Meta = class Meta {
96
96
  clock;
@@ -171,12 +171,12 @@ const maybeEncrypt = (thing, keypair, receiver) => {
171
171
  }
172
172
  return new DecryptedThing({
173
173
  data: serialize(thing),
174
- value: thing,
174
+ value: thing
175
175
  }).encrypt(keypair, ...receivers);
176
176
  }
177
177
  return new DecryptedThing({
178
178
  data: serialize(thing),
179
- value: thing,
179
+ value: thing
180
180
  });
181
181
  };
182
182
  export let Entry = Entry_1 = class Entry {
@@ -315,7 +315,7 @@ export let Entry = Entry_1 = class Entry {
315
315
  payload: entry._payload,
316
316
  reserved: entry._reserved,
317
317
  signatures: undefined,
318
- hash: undefined,
318
+ hash: undefined
319
319
  });
320
320
  return serialize(trimmed);
321
321
  }
@@ -349,9 +349,9 @@ export let Entry = Entry_1 = class Entry {
349
349
  ...properties,
350
350
  meta: {
351
351
  ...properties?.meta,
352
- next: properties.meta?.next ? properties.meta?.next : [],
352
+ next: properties.meta?.next ? properties.meta?.next : []
353
353
  },
354
- encoding: properties.encoding ? properties.encoding : NO_ENCODING,
354
+ encoding: properties.encoding ? properties.encoding : NO_ENCODING
355
355
  };
356
356
  }
357
357
  if (!properties.encoding) {
@@ -366,7 +366,7 @@ export let Entry = Entry_1 = class Entry {
366
366
  const payloadToSave = new Payload({
367
367
  data: properties.encoding.encoder(properties.data),
368
368
  value: properties.data,
369
- encoding: properties.encoding,
369
+ encoding: properties.encoding
370
370
  });
371
371
  let clock = properties.meta?.clock;
372
372
  if (!clock) {
@@ -380,7 +380,7 @@ export let Entry = Entry_1 = class Entry {
380
380
  }
381
381
  clock = new Clock({
382
382
  id: properties.identity.publicKey.bytes,
383
- timestamp: hlc.now(),
383
+ timestamp: hlc.now()
384
384
  });
385
385
  }
386
386
  else {
@@ -428,17 +428,17 @@ export let Entry = Entry_1 = class Entry {
428
428
  gid: gid,
429
429
  type: properties.meta?.type ?? EntryType.APPEND,
430
430
  data: properties.meta?.data,
431
- next: nextHashes,
431
+ next: nextHashes
432
432
  }), properties.encryption?.keypair, properties.encryption?.receiver.meta);
433
433
  // Sign id, encrypted payload, clock, nexts, refs
434
434
  const entry = new Entry_1({
435
435
  payload,
436
436
  meta: metadataEncrypted,
437
437
  signatures: undefined,
438
- createdLocally: true,
438
+ createdLocally: true
439
439
  });
440
440
  const signers = properties.signers || [
441
- properties.identity.sign.bind(properties.identity),
441
+ properties.identity.sign.bind(properties.identity)
442
442
  ];
443
443
  const signable = entry.toSignable();
444
444
  let signatures = await Promise.all(signers.map((signer) => signer(signable)));
@@ -453,7 +453,7 @@ export let Entry = Entry_1 = class Entry {
453
453
  encryptedSignatures.push(signatureEncrypted);
454
454
  }
455
455
  entry._signatures = new Signatures({
456
- signatures: encryptedSignatures,
456
+ signatures: encryptedSignatures
457
457
  });
458
458
  if (properties.canAppend && !(await properties.canAppend(entry))) {
459
459
  throw new AccessError();
@@ -475,8 +475,8 @@ export let Entry = Entry_1 = class Entry {
475
475
  data: this.meta.data,
476
476
  clock: this.meta.clock,
477
477
  next: this.meta.next,
478
- type: this.meta.type,
479
- },
478
+ type: this.meta.type
479
+ }
480
480
  };
481
481
  }
482
482
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"entry.js","sourceRoot":"","sources":["../../src/entry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entry.js","sourceRoot":"","sources":["../../src/entry.ts"],"names":[],"mappings":"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"}
@@ -84,7 +84,7 @@ const updateHashes = async (headCache, headsPath, lastCid, lastCounter, hashes)
84
84
  const counter = lastCounter + BigInt(hashes.length);
85
85
  await Promise.all([
86
86
  headCache.cache?.put(headsPath, serialize(new CachePath(newHeadsPath.toString()))),
87
- headCache.cache?.put(newHeadsPath, serialize(new HeadsCacheToSerialize(hashes, counter, lastCid))),
87
+ headCache.cache?.put(newHeadsPath, serialize(new HeadsCacheToSerialize(hashes, counter, lastCid)))
88
88
  ]);
89
89
  return { counter, newPath: newHeadsPath };
90
90
  };
package/lib/esm/log.js CHANGED
@@ -8,14 +8,14 @@ var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
10
  var Log_1;
11
- import { randomBytes, sha256Base64Sync, } from "@peerbit/crypto";
11
+ import { randomBytes, sha256Base64Sync } from "@peerbit/crypto";
12
12
  import { Cache } from "@peerbit/cache";
13
13
  import { EntryIndex } from "./entry-index.js";
14
14
  import * as LogError from "./log-errors.js";
15
15
  import * as Sorting from "./log-sorting.js";
16
16
  import { findUniques } from "./find-uniques.js";
17
- import { Entry, EntryType, } from "./entry.js";
18
- import { HLC, LamportClock as Clock, } from "./clock.js";
17
+ import { Entry, EntryType } from "./entry.js";
18
+ import { HLC, LamportClock as Clock } from "./clock.js";
19
19
  import { field, fixedArray, variant } from "@dao-xyz/borsh";
20
20
  import { NO_ENCODING } from "./encoding.js";
21
21
  import { HeadsIndex } from "./heads.js";
@@ -90,7 +90,7 @@ export let Log = Log_1 = class Log {
90
90
  this._entryIndex = new EntryIndex({
91
91
  store: this._storage,
92
92
  init: (e) => e.init(this),
93
- cache: this._entryCache,
93
+ cache: this._entryCache
94
94
  });
95
95
  this._values = new Values(this._entryIndex, this._sortFn);
96
96
  this._trim = new Trim({
@@ -115,7 +115,7 @@ export let Log = Log_1 = class Log {
115
115
  }
116
116
  return entry;
117
117
  },
118
- values: () => this.values,
118
+ values: () => this.values
119
119
  }, trim);
120
120
  this._canAppend = async (entry) => {
121
121
  if (options?.canAppend) {
@@ -389,7 +389,7 @@ export let Log = Log_1 = class Log {
389
389
  // Calculate max time for log/graph
390
390
  const clock = new Clock({
391
391
  id: this._identity.publicKey.bytes,
392
- timestamp: options?.meta?.timestamp || this._hlc.now(),
392
+ timestamp: options?.meta?.timestamp || this._hlc.now()
393
393
  });
394
394
  const entry = await Entry.create({
395
395
  store: this._storage,
@@ -401,18 +401,18 @@ export let Log = Log_1 = class Log {
401
401
  type: options.meta?.type,
402
402
  gidSeed: options.meta?.gidSeed,
403
403
  data: options.meta?.data,
404
- next: nexts,
404
+ next: nexts
405
405
  },
406
406
  encoding: this._encoding,
407
407
  encryption: options.encryption
408
408
  ? {
409
409
  keypair: options.encryption.keypair,
410
410
  receiver: {
411
- ...options.encryption.receiver,
412
- },
411
+ ...options.encryption.receiver
412
+ }
413
413
  }
414
414
  : undefined,
415
- canAppend: this._canAppend,
415
+ canAppend: this._canAppend
416
416
  });
417
417
  if (!entry.hash) {
418
418
  throw new Error("Unexpected");
@@ -440,7 +440,7 @@ export let Log = Log_1 = class Log {
440
440
  }
441
441
  const changes = {
442
442
  added: [entry],
443
- removed: removed,
443
+ removed: removed
444
444
  };
445
445
  await this._headsIndex.updateHeadsCache(changes); // * here
446
446
  await this._onChange?.(changes);
@@ -451,7 +451,7 @@ export let Log = Log_1 = class Log {
451
451
  this._entryIndex = new EntryIndex({
452
452
  store: this._storage,
453
453
  init: (e) => e.init(this),
454
- cache: this._entryCache,
454
+ cache: this._entryCache
455
455
  });
456
456
  const promises = [];
457
457
  const set = new Set();
@@ -502,7 +502,7 @@ export let Log = Log_1 = class Log {
502
502
  if (entries.length === 0) {
503
503
  return {
504
504
  added: [],
505
- removed: [],
505
+ removed: []
506
506
  };
507
507
  }
508
508
  if (options?.recursively) {
@@ -515,7 +515,7 @@ export let Log = Log_1 = class Log {
515
515
  }
516
516
  const change = {
517
517
  added: [],
518
- removed: Array.isArray(entry) ? entry : [entry],
518
+ removed: Array.isArray(entry) ? entry : [entry]
519
519
  };
520
520
  /* await Promise.all([
521
521
  this._logCache?.queue(change),
@@ -591,8 +591,8 @@ export let Log = Log_1 = class Log {
591
591
  const definedOptions = {
592
592
  ...options,
593
593
  cache: options?.cache ?? {
594
- update: true,
595
- },
594
+ update: true
595
+ }
596
596
  };
597
597
  await this.load({ reload: false });
598
598
  if (entriesOrLog.length === 0) {
@@ -650,7 +650,7 @@ export let Log = Log_1 = class Log {
650
650
  visited.add(hash);
651
651
  const entry = resolvedEntries.get(hash) ||
652
652
  (await Entry.fromMultihash(this._storage, hash, {
653
- timeout: options?.timeout,
653
+ timeout: options?.timeout
654
654
  }));
655
655
  entry.init(this);
656
656
  resolvedEntries.set(entry.hash, entry);
@@ -818,7 +818,7 @@ export let Log = Log_1 = class Log {
818
818
  }
819
819
  await this._headsIndex.updateHeadsCache({
820
820
  added: newHeads,
821
- removed: [entry.hash],
821
+ removed: [entry.hash]
822
822
  });
823
823
  return entry.delete(this._storage);
824
824
  }
@@ -868,7 +868,7 @@ export let Log = Log_1 = class Log {
868
868
  replicate: true,
869
869
  timeout: opts.fetchEntryTimeout,
870
870
  reload: opts.reload,
871
- cache: { update: true, reset: true },
871
+ cache: { update: true, reset: true }
872
872
  });
873
873
  if (heads) {
874
874
  // Load the log
@@ -886,8 +886,8 @@ export let Log = Log_1 = class Log {
886
886
  /* length: amount, */
887
887
  timeout: opts?.fetchEntryTimeout,
888
888
  cache: {
889
- update: false,
890
- },
889
+ update: false
890
+ }
891
891
  });
892
892
  }
893
893
  }
@@ -898,7 +898,7 @@ export let Log = Log_1 = class Log {
898
898
  await log.join(!Array.isArray(entryOrHash) ? [entryOrHash] : entryOrHash, {
899
899
  timeout: options.timeout,
900
900
  trim: options.trim,
901
- verifySignatures: true,
901
+ verifySignatures: true
902
902
  });
903
903
  return log;
904
904
  }
@@ -1 +1 @@
1
- {"version":3,"file":"log.js","sourceRoot":"","sources":["../../src/log.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"log.js","sourceRoot":"","sources":["../../src/log.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
10
  import { Entry } from "./entry.js";
11
- import { BinaryReader, BinaryWriter, deserialize, field, fixedArray, serialize, variant, vec, } from "@dao-xyz/borsh";
11
+ import { BinaryReader, BinaryWriter, deserialize, field, fixedArray, serialize, variant, vec } from "@dao-xyz/borsh";
12
12
  import { waitForAsync } from "@peerbit/time";
13
13
  import { logger } from "./logger.js";
14
14
  export let Snapshot = class Snapshot {
@@ -51,7 +51,7 @@ export const save = async (snapshotPath, blockstore, cache, log) => {
51
51
  id: log.id,
52
52
  heads: await log.getHeads(),
53
53
  size: BigInt(values.length),
54
- values: values,
54
+ values: values
55
55
  }));
56
56
  const snapshot = await blockstore.put(buf);
57
57
  const writer = new BinaryWriter();
@@ -59,7 +59,7 @@ export const save = async (snapshotPath, blockstore, cache, log) => {
59
59
  await cache.put(snapshotPath, writer.finalize());
60
60
  await waitForAsync(() => cache.get(snapshotPath).then((bytes) => !!bytes), {
61
61
  delayInterval: 200,
62
- timeout: 10 * 1000,
62
+ timeout: 10 * 1000
63
63
  });
64
64
  logger.debug(`Saved snapshot: ${snapshot}`);
65
65
  return snapshot;
@@ -1 +1 @@
1
- {"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../src/snapshot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../src/snapshot.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@peerbit/log",
3
- "version": "2.0.3",
3
+ "version": "2.0.5",
4
4
  "description": "Append-only log CRDT",
5
5
  "author": "dao.xyz",
6
6
  "license": "MIT",
@@ -32,9 +32,9 @@
32
32
  ],
33
33
  "dependencies": {
34
34
  "@dao-xyz/borsh": "^5.1.5",
35
- "@peerbit/blocks-interface": "^1.0.7",
36
- "@peerbit/cache": "1.0.2",
37
- "@peerbit/crypto": "1.0.5",
35
+ "@peerbit/blocks-interface": "^1.0.8",
36
+ "@peerbit/cache": "1.1.0",
37
+ "@peerbit/crypto": "1.0.6",
38
38
  "@peerbit/logger": "1.0.1",
39
39
  "libp2p": "^0.46.6",
40
40
  "p-queue": "^7.3.3",
@@ -43,7 +43,7 @@
43
43
  "yallist": "^4.0.0"
44
44
  },
45
45
  "devDependencies": {
46
- "@peerbit/test-utils": "1.0.19",
46
+ "@peerbit/test-utils": "1.0.21",
47
47
  "@types/yallist": "^4.0.1",
48
48
  "assert": "^2.0.0",
49
49
  "json-stringify-deterministic": "^1.0.7"
@@ -75,5 +75,5 @@
75
75
  "localMaintainers": [
76
76
  "dao.xyz"
77
77
  ],
78
- "gitHead": "017864072da27e6adf8955eab5287f93d2e8f610"
78
+ "gitHead": "6442481a66eec1bc13d06b3663f93643c247d141"
79
79
  }
package/src/clock.ts CHANGED
@@ -36,7 +36,7 @@ export function fromBits(low, high, unsigned, target?) {
36
36
  return {
37
37
  low: low | 0,
38
38
  high: high | 0,
39
- unsigned: !!unsigned,
39
+ unsigned: !!unsigned
40
40
  };
41
41
  }
42
42
  target.low = low | 0;
@@ -92,7 +92,7 @@ export class Timestamp {
92
92
  clone(): Timestamp {
93
93
  return new Timestamp({
94
94
  wallTime: this.wallTime,
95
- logical: this.logical,
95
+ logical: this.logical
96
96
  });
97
97
  }
98
98
 
@@ -228,13 +228,13 @@ export class LamportClock {
228
228
  if (!properties.timestamp) {
229
229
  this.timestamp = new Timestamp({
230
230
  wallTime: bigintTime(),
231
- logical: 0,
231
+ logical: 0
232
232
  });
233
233
  } else {
234
234
  if (typeof properties.timestamp === "number") {
235
235
  this.timestamp = new Timestamp({
236
236
  wallTime: bigintTime(),
237
- logical: properties.timestamp,
237
+ logical: properties.timestamp
238
238
  });
239
239
  } else {
240
240
  this.timestamp = properties.timestamp;
@@ -245,7 +245,7 @@ export class LamportClock {
245
245
  clone() {
246
246
  return new LamportClock({
247
247
  id: this.id,
248
- timestamp: this.timestamp.clone(),
248
+ timestamp: this.timestamp.clone()
249
249
  });
250
250
  }
251
251
 
package/src/encoding.ts CHANGED
@@ -16,12 +16,12 @@ export const NO_ENCODING: Encoding<any> = {
16
16
  },
17
17
  decoder: (bytes: Uint8Array) => {
18
18
  return bytes;
19
- },
19
+ }
20
20
  };
21
21
 
22
22
  export const BORSH_ENCODING = <T>(clazz: AbstractType<T>): Encoding<T> => {
23
23
  return {
24
24
  decoder: (bytes: Uint8Array) => deserialize(bytes, clazz),
25
- encoder: (data: any) => serialize(data),
25
+ encoder: (data: any) => serialize(data)
26
26
  };
27
27
  };
package/src/entry.ts CHANGED
@@ -6,7 +6,7 @@ import {
6
6
  deserialize,
7
7
  option,
8
8
  vec,
9
- fixedArray,
9
+ fixedArray
10
10
  } from "@dao-xyz/borsh";
11
11
 
12
12
  import {
@@ -21,7 +21,7 @@ import {
21
21
  randomBytes,
22
22
  Identity,
23
23
  Keychain,
24
- X25519Keypair,
24
+ X25519Keypair
25
25
  } from "@peerbit/crypto";
26
26
  import { verify } from "@peerbit/crypto";
27
27
  import { compare, equals } from "@peerbit/uint8arrays";
@@ -134,7 +134,7 @@ export interface EntryEncryptionTemplate<A, B, C> {
134
134
 
135
135
  export enum EntryType {
136
136
  APPEND = 0, // Add more data
137
- CUT = 1, // Delete or Create tombstone ... delete all nexts, i
137
+ CUT = 1 // Delete or Create tombstone ... delete all nexts, i
138
138
  }
139
139
 
140
140
  @variant(0)
@@ -211,12 +211,12 @@ const maybeEncrypt = <Q>(
211
211
  }
212
212
  return new DecryptedThing<Q>({
213
213
  data: serialize(thing),
214
- value: thing,
214
+ value: thing
215
215
  }).encrypt(keypair, ...receivers);
216
216
  }
217
217
  return new DecryptedThing<Q>({
218
218
  data: serialize(thing),
219
- value: thing,
219
+ value: thing
220
220
  });
221
221
  };
222
222
 
@@ -418,7 +418,7 @@ export class Entry<T>
418
418
  payload: entry._payload,
419
419
  reserved: entry._reserved,
420
420
  signatures: undefined,
421
- hash: undefined,
421
+ hash: undefined
422
422
  });
423
423
  return serialize(trimmed);
424
424
  }
@@ -478,9 +478,9 @@ export class Entry<T>
478
478
  ...properties,
479
479
  meta: {
480
480
  ...properties?.meta,
481
- next: properties.meta?.next ? properties.meta?.next : [],
481
+ next: properties.meta?.next ? properties.meta?.next : []
482
482
  },
483
- encoding: properties.encoding ? properties.encoding : NO_ENCODING,
483
+ encoding: properties.encoding ? properties.encoding : NO_ENCODING
484
484
  };
485
485
  }
486
486
 
@@ -498,7 +498,7 @@ export class Entry<T>
498
498
  const payloadToSave = new Payload<T>({
499
499
  data: properties.encoding.encoder(properties.data),
500
500
  value: properties.data,
501
- encoding: properties.encoding,
501
+ encoding: properties.encoding
502
502
  });
503
503
 
504
504
  let clock: Clock | undefined = properties.meta?.clock;
@@ -518,7 +518,7 @@ export class Entry<T>
518
518
  }
519
519
  clock = new Clock({
520
520
  id: properties.identity.publicKey.bytes,
521
- timestamp: hlc.now(),
521
+ timestamp: hlc.now()
522
522
  });
523
523
  } else {
524
524
  const cv = clock;
@@ -577,7 +577,7 @@ export class Entry<T>
577
577
  gid: gid!,
578
578
  type: properties.meta?.type ?? EntryType.APPEND,
579
579
  data: properties.meta?.data,
580
- next: nextHashes,
580
+ next: nextHashes
581
581
  }),
582
582
  properties.encryption?.keypair,
583
583
  properties.encryption?.receiver.meta
@@ -588,11 +588,11 @@ export class Entry<T>
588
588
  payload,
589
589
  meta: metadataEncrypted,
590
590
  signatures: undefined,
591
- createdLocally: true,
591
+ createdLocally: true
592
592
  });
593
593
 
594
594
  const signers = properties.signers || [
595
- properties.identity.sign.bind(properties.identity),
595
+ properties.identity.sign.bind(properties.identity)
596
596
  ];
597
597
  const signable = entry.toSignable();
598
598
  let signatures = await Promise.all(
@@ -620,7 +620,7 @@ export class Entry<T>
620
620
  }
621
621
 
622
622
  entry._signatures = new Signatures({
623
- signatures: encryptedSignatures,
623
+ signatures: encryptedSignatures
624
624
  });
625
625
 
626
626
  if (properties.canAppend && !(await properties.canAppend(entry))) {
@@ -648,8 +648,8 @@ export class Entry<T>
648
648
  data: this.meta.data,
649
649
  clock: this.meta.clock,
650
650
  next: this.meta.next,
651
- type: this.meta.type,
652
- },
651
+ type: this.meta.type
652
+ }
653
653
  };
654
654
  }
655
655
 
@@ -78,7 +78,7 @@ const updateHashes = async (
78
78
  headCache.cache?.put(
79
79
  newHeadsPath,
80
80
  serialize(new HeadsCacheToSerialize(hashes, counter, lastCid))
81
- ),
81
+ )
82
82
  ]);
83
83
  return { counter, newPath: newHeadsPath };
84
84
  };
package/src/log.ts CHANGED
@@ -4,7 +4,7 @@ import {
4
4
  sha256Base64Sync,
5
5
  Identity,
6
6
  Keychain,
7
- X25519Keypair,
7
+ X25519Keypair
8
8
  } from "@peerbit/crypto";
9
9
  import { Cache } from "@peerbit/cache";
10
10
  import { SimpleLevel } from "@peerbit/lazy-level";
@@ -18,13 +18,13 @@ import {
18
18
  Entry,
19
19
  Payload,
20
20
  CanAppend,
21
- EntryType,
21
+ EntryType
22
22
  } from "./entry.js";
23
23
  import {
24
24
  HLC,
25
25
  LamportClock as Clock,
26
26
  LamportClock,
27
- Timestamp,
27
+ Timestamp
28
28
  } from "./clock.js";
29
29
 
30
30
  import { field, fixedArray, variant } from "@dao-xyz/borsh";
@@ -167,7 +167,7 @@ export class Log<T> {
167
167
  this._entryIndex = new EntryIndex({
168
168
  store: this._storage,
169
169
  init: (e) => e.init(this),
170
- cache: this._entryCache,
170
+ cache: this._entryCache
171
171
  });
172
172
  this._values = new Values(this._entryIndex, this._sortFn);
173
173
  this._trim = new Trim(
@@ -195,7 +195,7 @@ export class Log<T> {
195
195
  }
196
196
  return entry;
197
197
  },
198
- values: () => this.values,
198
+ values: () => this.values
199
199
  },
200
200
  trim
201
201
  );
@@ -529,7 +529,7 @@ export class Log<T> {
529
529
  // Calculate max time for log/graph
530
530
  const clock = new Clock({
531
531
  id: this._identity.publicKey.bytes,
532
- timestamp: options?.meta?.timestamp || this._hlc.now(),
532
+ timestamp: options?.meta?.timestamp || this._hlc.now()
533
533
  });
534
534
 
535
535
  const entry = await Entry.create<T>({
@@ -542,7 +542,7 @@ export class Log<T> {
542
542
  type: options.meta?.type,
543
543
  gidSeed: options.meta?.gidSeed,
544
544
  data: options.meta?.data,
545
- next: nexts,
545
+ next: nexts
546
546
  },
547
547
 
548
548
  encoding: this._encoding,
@@ -551,11 +551,11 @@ export class Log<T> {
551
551
  ? {
552
552
  keypair: options.encryption.keypair,
553
553
  receiver: {
554
- ...options.encryption.receiver,
555
- },
554
+ ...options.encryption.receiver
555
+ }
556
556
  }
557
557
  : undefined,
558
- canAppend: this._canAppend,
558
+ canAppend: this._canAppend
559
559
  });
560
560
 
561
561
  if (!entry.hash) {
@@ -590,7 +590,7 @@ export class Log<T> {
590
590
 
591
591
  const changes: Change<T> = {
592
592
  added: [entry],
593
- removed: removed,
593
+ removed: removed
594
594
  };
595
595
 
596
596
  await this._headsIndex.updateHeadsCache(changes); // * here
@@ -603,7 +603,7 @@ export class Log<T> {
603
603
  this._entryIndex = new EntryIndex({
604
604
  store: this._storage,
605
605
  init: (e) => e.init(this),
606
- cache: this._entryCache,
606
+ cache: this._entryCache
607
607
  });
608
608
  const promises: Promise<any>[] = [];
609
609
  const set = new Set<string>();
@@ -666,7 +666,7 @@ export class Log<T> {
666
666
  if (entries.length === 0) {
667
667
  return {
668
668
  added: [],
669
- removed: [],
669
+ removed: []
670
670
  };
671
671
  }
672
672
 
@@ -680,7 +680,7 @@ export class Log<T> {
680
680
 
681
681
  const change: Change<T> = {
682
682
  added: [],
683
- removed: Array.isArray(entry) ? entry : [entry],
683
+ removed: Array.isArray(entry) ? entry : [entry]
684
684
  };
685
685
 
686
686
  /* await Promise.all([
@@ -773,8 +773,8 @@ export class Log<T> {
773
773
  const definedOptions = {
774
774
  ...options,
775
775
  cache: options?.cache ?? {
776
- update: true,
777
- },
776
+ update: true
777
+ }
778
778
  };
779
779
 
780
780
  await this.load({ reload: false });
@@ -837,7 +837,7 @@ export class Log<T> {
837
837
  const entry =
838
838
  resolvedEntries.get(hash) ||
839
839
  (await Entry.fromMultihash<T>(this._storage, hash, {
840
- timeout: options?.timeout,
840
+ timeout: options?.timeout
841
841
  }));
842
842
 
843
843
  entry.init(this);
@@ -1039,7 +1039,7 @@ export class Log<T> {
1039
1039
  }
1040
1040
  await this._headsIndex.updateHeadsCache({
1041
1041
  added: newHeads,
1042
- removed: [entry.hash],
1042
+ removed: [entry.hash]
1043
1043
  });
1044
1044
  return entry.delete(this._storage);
1045
1045
  }
@@ -1058,9 +1058,7 @@ export class Log<T> {
1058
1058
  ): Promise<string> {
1059
1059
  return (
1060
1060
  await Promise.all(
1061
- (
1062
- await this.toArray()
1063
- )
1061
+ (await this.toArray())
1064
1062
  .slice()
1065
1063
  .reverse()
1066
1064
  .map(async (e, idx) => {
@@ -1113,7 +1111,7 @@ export class Log<T> {
1113
1111
  replicate: true, // TODO this.replication.replicate(x) => true/false
1114
1112
  timeout: opts.fetchEntryTimeout,
1115
1113
  reload: opts.reload,
1116
- cache: { update: true, reset: true },
1114
+ cache: { update: true, reset: true }
1117
1115
  });
1118
1116
 
1119
1117
  if (heads) {
@@ -1134,8 +1132,8 @@ export class Log<T> {
1134
1132
  /* length: amount, */
1135
1133
  timeout: opts?.fetchEntryTimeout,
1136
1134
  cache: {
1137
- update: false,
1138
- },
1135
+ update: false
1136
+ }
1139
1137
  });
1140
1138
  }
1141
1139
  }
@@ -1156,7 +1154,7 @@ export class Log<T> {
1156
1154
  await log.join(!Array.isArray(entryOrHash) ? [entryOrHash] : entryOrHash, {
1157
1155
  timeout: options.timeout,
1158
1156
  trim: options.trim,
1159
- verifySignatures: true,
1157
+ verifySignatures: true
1160
1158
  });
1161
1159
  return log;
1162
1160
  }
package/src/snapshot.ts CHANGED
@@ -8,7 +8,7 @@ import {
8
8
  fixedArray,
9
9
  serialize,
10
10
  variant,
11
- vec,
11
+ vec
12
12
  } from "@dao-xyz/borsh";
13
13
  import { waitForAsync } from "@peerbit/time";
14
14
  import LocalStore from "@peerbit/lazy-level";
@@ -59,7 +59,7 @@ export const save = async <T>(
59
59
  id: log.id,
60
60
  heads: await log.getHeads(),
61
61
  size: BigInt(values.length),
62
- values: values,
62
+ values: values
63
63
  })
64
64
  );
65
65
 
@@ -70,7 +70,7 @@ export const save = async <T>(
70
70
 
71
71
  await waitForAsync(() => cache.get(snapshotPath).then((bytes) => !!bytes), {
72
72
  delayInterval: 200,
73
- timeout: 10 * 1000,
73
+ timeout: 10 * 1000
74
74
  });
75
75
 
76
76
  logger.debug(`Saved snapshot: ${snapshot}`);