@peerbit/log 5.0.9 → 5.0.10-000e3f1

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.
@@ -17,6 +17,7 @@ type ResolveFullyOptions = true | {
17
17
  replicate?: boolean;
18
18
  signal?: AbortSignal;
19
19
  timeout?: number;
20
+ from?: string[];
20
21
  } | boolean;
21
22
  ignoreMissing?: boolean;
22
23
  };
@@ -37,6 +38,9 @@ export declare class EntryIndex<T> {
37
38
  index: Index<ShallowEntry>;
38
39
  sort: SortFn;
39
40
  onGidRemoved?: (gid: string[]) => Promise<void> | void;
41
+ resolveRemotePeers?: (hash: string, options?: {
42
+ signal?: AbortSignal;
43
+ }) => Promise<string[] | undefined> | string[] | undefined;
40
44
  };
41
45
  private cache;
42
46
  private sortReversed;
@@ -51,6 +55,9 @@ export declare class EntryIndex<T> {
51
55
  index: Index<ShallowEntry>;
52
56
  sort: SortFn;
53
57
  onGidRemoved?: (gid: string[]) => Promise<void> | void;
58
+ resolveRemotePeers?: (hash: string, options?: {
59
+ signal?: AbortSignal;
60
+ }) => Promise<string[] | undefined> | string[] | undefined;
54
61
  });
55
62
  getHeads<R extends MaybeResolveOptions = false>(gid?: string, resolve?: R): ResultsIterator<ReturnTypeFromResolveOptions<R, T>>;
56
63
  getHasNext<R extends MaybeResolveOptions>(next: string, resolve?: R): ResultsIterator<ReturnTypeFromResolveOptions<R, T>>;
@@ -1 +1 @@
1
- {"version":3,"file":"entry-index.d.ts","sourceRoot":"","sources":["../../src/entry-index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entry-index.d.ts","sourceRoot":"","sources":["../../src/entry-index.ts"],"names":[],"mappings":"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"}
@@ -312,7 +312,38 @@ export class EntryIndex {
312
312
  return undefined; */
313
313
  }
314
314
  async resolveFromStore(k, options) {
315
- const value = await this.properties.store.get(k, options);
315
+ let coercedOptions = options;
316
+ const remote = coercedOptions?.remote;
317
+ if (this.properties.resolveRemotePeers) {
318
+ if (remote === true) {
319
+ try {
320
+ const from = await this.properties.resolveRemotePeers(k);
321
+ if (from && from.length > 0) {
322
+ coercedOptions = { ...coercedOptions, remote: { from } };
323
+ }
324
+ }
325
+ catch {
326
+ // Best-effort only; fall back to the store's default remote strategy.
327
+ }
328
+ }
329
+ else if (remote && typeof remote === "object" && remote.from == null) {
330
+ try {
331
+ const from = await this.properties.resolveRemotePeers(k, {
332
+ signal: remote.signal,
333
+ });
334
+ if (from && from.length > 0) {
335
+ coercedOptions = {
336
+ ...coercedOptions,
337
+ remote: { ...remote, from },
338
+ };
339
+ }
340
+ }
341
+ catch {
342
+ // Best-effort only; fall back to the store's default remote strategy.
343
+ }
344
+ }
345
+ }
346
+ const value = await this.properties.store.get(k, coercedOptions);
316
347
  if (value) {
317
348
  const entry = deserialize(value, Entry);
318
349
  entry.size = value.length;
@@ -1 +1 @@
1
- {"version":3,"file":"entry-index.js","sourceRoot":"","sources":["../../src/entry-index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entry-index.js","sourceRoot":"","sources":["../../src/entry-index.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { type Blocks } from "@peerbit/blocks-interface";
1
+ import { type Blocks, type GetOptions } from "@peerbit/blocks-interface";
2
2
  import type { PublicSignKey, SignatureWithKey } from "@peerbit/crypto";
3
3
  import type { CryptoKeychain } from "@peerbit/keychain";
4
4
  import { LamportClock as Clock } from "./clock.js";
@@ -47,12 +47,7 @@ export declare abstract class Entry<T> {
47
47
  */
48
48
  static compare<T>(a: Entry<T>, b: Entry<T>): number;
49
49
  static toMultihash<T>(store: Blocks, entry: Entry<T>): Promise<string> | string;
50
- static fromMultihash: <T_1>(store: Blocks, hash: string, options?: {
51
- remote?: {
52
- timeout?: number;
53
- replicate?: boolean;
54
- } | boolean;
55
- }) => Promise<Entry<T_1>>;
50
+ static fromMultihash: <T_1>(store: Blocks, hash: string, options?: GetOptions) => Promise<Entry<T_1>>;
56
51
  /**
57
52
  * Check if an entry equals another entry.
58
53
  * @param {Entry} a
@@ -1 +1 @@
1
- {"version":3,"file":"entry.d.ts","sourceRoot":"","sources":["../../src/entry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entry.d.ts","sourceRoot":"","sources":["../../src/entry.ts"],"names":[],"mappings":"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"}
@@ -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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"}
package/dist/src/log.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { type AnyStore } from "@peerbit/any-store";
2
- import { type Blocks } from "@peerbit/blocks-interface";
2
+ import { type Blocks, type GetOptions } from "@peerbit/blocks-interface";
3
3
  import { type Identity, SignatureWithKey, X25519Keypair } from "@peerbit/crypto";
4
4
  import { type Indices } from "@peerbit/indexer-interface";
5
5
  import { type CryptoKeychain } from "@peerbit/keychain";
@@ -30,6 +30,9 @@ export type LogProperties<T> = {
30
30
  sortFn?: Sorting.SortFn;
31
31
  trim?: TrimOptions;
32
32
  canAppend?: CanAppend<T>;
33
+ resolveRemotePeers?: (hash: string, options?: {
34
+ signal?: AbortSignal;
35
+ }) => Promise<string[] | undefined> | string[] | undefined;
33
36
  };
34
37
  export type LogOptions<T> = LogProperties<T> & LogEvents<T> & MemoryProperties;
35
38
  export type AppendOptions<T> = {
@@ -152,11 +155,7 @@ export declare class Log<T> {
152
155
  * Get an entry.
153
156
  * @param {string} [hash] The hashes of the entry
154
157
  */
155
- get(hash: string, options?: {
156
- remote?: {
157
- timeout?: number;
158
- } | boolean;
159
- }): Promise<Entry<T> | undefined>;
158
+ get(hash: string, options?: GetOptions): Promise<Entry<T> | undefined>;
160
159
  /**
161
160
  * Get a entry with shallow representation
162
161
  * @param {string} [hash] The hashes of the entry
@@ -1 +1 @@
1
- {"version":3,"file":"log.d.ts","sourceRoot":"","sources":["../../src/log.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,2BAA2B,CAAC;AACtE,OAAO,EACN,KAAK,QAAQ,EACb,gBAAgB,EAChB,aAAa,EAGb,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAE1D,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAEN,GAAG,EACH,YAAY,EACZ,SAAS,EACT,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,KAAK,QAAQ,EAAe,MAAM,eAAe,CAAC;AAC3D,OAAO,EACN,UAAU,EACV,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,KAAK,4BAA4B,EACjC,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,KAAK,gCAAgC,EAAW,MAAM,eAAe,CAAC;AAC/E,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,EAAE,KAAK,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAG5E,OAAO,KAAK,OAAO,MAAM,kBAAkB,CAAC;AAC5C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAQ,KAAK,WAAW,EAAE,MAAM,WAAW,CAAC;AAInD,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI;IAC1B,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,KAA2B,IAAI,CAAC;IAC7D,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CACxD,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC9B,OAAO,CAAC,EAAE,QAAQ,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI;IAC9B,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;IACvB,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;IACxB,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,SAAS,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC;AAE/E,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI;IAC9B,IAAI,CAAC,EAAE;QACN,IAAI,CAAC,EAAE,SAAS,CAAC;QACjB,OAAO,CAAC,EAAE,UAAU,CAAC;QACrB,IAAI,CAAC,EAAE,UAAU,CAAC;QAClB,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,IAAI,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,YAAY,EAAE,CAAC;KACrC,CAAC;IAEF,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,OAAO,CAAC,EAAE,CAAC,CACV,IAAI,EAAE,UAAU,KACZ,OAAO,CAAC,gBAAgB,CAAC,GAAG,gBAAgB,CAAC,EAAE,CAAC;IAErD,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,UAAU,CAAC,EAAE;QACZ,OAAO,EAAE,aAAa,CAAC;QACvB,QAAQ,EAAE,gCAAgC,CAAC;KAC3C,CAAC;IACF,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;IACvB,SAAS,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;CACzB,CAAC;AAEF,KAAK,QAAQ,CAAC,CAAC,IAAI,CAClB,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,EACjB,SAAS,CAAC,EAAE,SAAS,KACjB,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE1B,MAAM,MAAM,aAAa,GAAG;IAC3B,IAAI,EAAE;QACL,KAAK,EAAE;YACN,SAAS,EAAE,SAAS,CAAC;SACrB,CAAC;QACF,IAAI,EAAE,MAAM,EAAE,CAAC;QACf,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,SAAS,CAAC;KAChB,CAAC;IACF,IAAI,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;;;;;;CAGnB,CAAC;AAEX,KAAK,aAAa,CAAC,CAAC,IAAI;IACvB,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAC7B,EAAE,EAAE,MAAM,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC,CAAC;CAC5C,CAAC;AAEF,qBACa,GAAG,CAAC,CAAC;IAEjB,OAAO,CAAC,GAAG,CAAa;IAGxB,OAAO,CAAC,QAAQ,CAAU;IAC1B,OAAO,CAAC,IAAI,CAAO;IAGnB,OAAO,CAAC,SAAS,CAAY;IAG7B,OAAO,CAAC,WAAW,CAAiB;IAMpC,OAAO,CAAC,SAAS,CAAC,CAAiB;IACnC,OAAO,CAAC,SAAS,CAAe;IAChC,OAAO,CAAC,KAAK,CAAW;IACxB,OAAO,CAAC,UAAU,CAAC,CAAe;IAClC,OAAO,CAAC,SAAS,CAAC,CAAc;IAChC,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,OAAO,CAAkB;gBAErB,UAAU,CAAC,EAAE;QAAE,EAAE,CAAC,EAAE,UAAU,CAAA;KAAE;IAItC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,GAAE,UAAU,CAAC,CAAC,CAAM;IAmFzE,OAAO,CAAC,SAAS,CAAqB;IAEtC,IAAI,QAAQ,WAKX;WAEa,cAAc,CAAC,EAAE,EAAE,UAAU;IAI3C,IAAI,EAAE,IAGK,UAAU,CADpB;IACD,IAAI,EAAE,CAAC,EAAE,EAAE,UAAU,EAMpB;IAED;;OAEG;IACH,IAAI,MAAM,WAKT;IAED,IAAI,SAAS,6BAEZ;IAED;;;;OAIG;IAEH,GAAG,CAAC,GAAG,EAAE,MAAM;IAGf;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IAKpC;;OAEG;IAEH,QAAQ,CAAC,CAAC,SAAS,mBAAmB,GAAG,KAAK,EAC7C,OAAO,GAAE,CAAc,GACrB,eAAe,CAAC,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAItD;;;;OAIG;IACG,QAAQ,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IAIrC;;;;OAIG;IACG,aAAa,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAIxC;;OAEG;IACH,IAAI,GAAG,IAAI,GAAG,CAEb;IAED,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,UAAU,IAAI,UAAU,CAAC,CAAC,CAAC,CAE9B;IAED,IAAI,QAAQ,+BAEX;IAED,IAAI,QAAQ,gBAEX;IAED,IAAI,MAAM,mBAET;IAED,IAAI,MAAM,YAET;IAED;;;OAGG;IACH,WAAW,CAAC,QAAQ,EAAE,QAAQ;IAI9B;;;OAGG;IACH,GAAG,CACF,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE;YAAE,OAAO,CAAC,EAAE,MAAM,CAAA;SAAE,GAAG,OAAO,CAAA;KAAE,GACnD,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IAkBhC;;;OAGG;IACG,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAI3D,mBAAmB,CACxB,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,EACd,OAAO,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,GACvD,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IA+DtB;;;;;OAKG;IACG,MAAM,CACX,IAAI,EAAE,CAAC,EACP,OAAO,GAAE,aAAa,CAAC,CAAC,CAAM,GAC5B,OAAO,CAAC;QAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;QAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAA;KAAE,CAAC;IAyG3D,MAAM,CACX,KAAK,EACF;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE;YAAE,IAAI,EAAE,MAAM,EAAE,CAAA;SAAE,CAAA;KAAE,GAC1C;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE;YAAE,IAAI,EAAE,MAAM,EAAE,CAAA;SAAE,CAAA;KAAE,EAAE,EAC/C,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,OAAO,CAAA;KAAE,GACjC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAwCf,IAAI,CAAC,MAAM,GAAE,WAAW,GAAG,SAA8B;IAIzD,IAAI,CACT,YAAY,EACT,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,YAAY,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,GACvD,GAAG,CAAC,CAAC,CAAC,GACN,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAC9B,OAAO,CAAC,EAAE;QACT,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAC3B,IAAI,CAAC,EAAE,WAAW,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;QACvB,KAAK,CAAC,EAAE,OAAO,CAAC;KAChB,GACC,OAAO,CAAC,IAAI,CAAC;IAsGhB;;;;;OAKG;YAEW,eAAe;YA0Hf,YAAY;IAYpB,iBAAiB,CACtB,IAAI,EACD;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE;YAAE,IAAI,EAAE,MAAM,EAAE,CAAA;SAAE,CAAA;KAAE,GAC1C;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE;YAAE,IAAI,EAAE,MAAM,EAAE,CAAA;SAAE,CAAA;KAAE,EAAE,EAC/C,SAAS,UAAQ;IAgBZ,wBAAwB,CAC7B,IAAI,EACD;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE;YAAE,IAAI,EAAE,MAAM,EAAE,CAAA;SAAE,CAAA;KAAE,GAC1C;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE;YAAE,IAAI,EAAE,MAAM,EAAE,CAAA;SAAE,CAAA;KAAE,EAAE,EAC/C,SAAS,UAAQ;IAsCZ,aAAa,CAClB,IAAI,EAAE,MAAM,GACV,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG;QAAE,KAAK,EAAE,SAAS,CAAA;KAAE,CAAC;IAkB7C,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAK7D;;;;;;;OAOG;IACG,QAAQ,CACb,aAAa,GAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,MACY,GAClD,OAAO,CAAC,MAAM,CAAC;IAwBZ,KAAK;IASL,IAAI;IASJ,OAAO;IAkCP,IAAI,CACT,IAAI,GAAE;QACL,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,OAAO,CAAC;KACX;WA6CM,SAAS,CAAC,CAAC,EACvB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,EACtD,OAAO,GAAE;QACR,EAAE,CAAC,EAAE,UAAU,CAAC;QAEhB,OAAO,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG,UAAU,CAAC,CAAC,CAA2B,GACzC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAWlB;;;;;;;;OAQG;IACH,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE;IAiBvC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE;IAoDpD,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE;CAsB3C"}
1
+ {"version":3,"file":"log.d.ts","sourceRoot":"","sources":["../../src/log.ts"],"names":[],"mappings":"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"}
package/dist/src/log.js CHANGED
@@ -37,7 +37,6 @@ import {} from "@peerbit/any-store";
37
37
  import { cidifyString } from "@peerbit/blocks-interface";
38
38
  import { SignatureWithKey, X25519Keypair, randomBytes, sha256Base64Sync, } from "@peerbit/crypto";
39
39
  import {} from "@peerbit/indexer-interface";
40
- import { create } from "@peerbit/indexer-sqlite3";
41
40
  import {} from "@peerbit/keychain";
42
41
  import {} from "./change.js";
43
42
  import { LamportClock as Clock, HLC, LamportClock, Timestamp, } from "./clock.js";
@@ -53,6 +52,14 @@ import * as LogError from "./log-errors.js";
53
52
  import * as Sorting from "./log-sorting.js";
54
53
  import { Trim } from "./trim.js";
55
54
  const { LastWriteWins } = Sorting;
55
+ let sqliteCreate;
56
+ const createDefaultIndexer = async () => {
57
+ if (!sqliteCreate) {
58
+ const mod = await import("@peerbit/indexer-sqlite3");
59
+ sqliteCreate = mod.create;
60
+ }
61
+ return sqliteCreate();
62
+ };
56
63
  export const ENTRY_JOIN_SHAPE = {
57
64
  hash: true,
58
65
  meta: { type: true, next: true, gid: true, clock: true },
@@ -114,11 +121,11 @@ let Log = (() => {
114
121
  throw new Error("Already open");
115
122
  }
116
123
  this._closeController = new AbortController();
117
- const { encoding, trim, keychain, indexer, onGidRemoved, sortFn } = options;
124
+ const { encoding, trim, keychain, indexer, onGidRemoved, sortFn, resolveRemotePeers, } = options;
118
125
  // TODO do correctly with tie breaks
119
126
  this._sortFn = sortFn || LastWriteWins;
120
127
  this._storage = store;
121
- this._indexer = indexer || (await create());
128
+ this._indexer = indexer || (await createDefaultIndexer());
122
129
  await this._indexer.start?.();
123
130
  this._encoding = encoding || NO_ENCODING;
124
131
  this._joining = new Map();
@@ -139,6 +146,7 @@ let Log = (() => {
139
146
  index: await (await this._indexer.scope("heads")).init({ schema: ShallowEntry }),
140
147
  publicKey: this._identity.publicKey,
141
148
  sort: this._sortFn,
149
+ resolveRemotePeers,
142
150
  });
143
151
  await this._entryIndex.init();
144
152
  /* this._values = new Values(this._entryIndex, this._sortFn); */
@@ -276,11 +284,7 @@ let Log = (() => {
276
284
  return this._entryIndex.get(hash, options
277
285
  ? {
278
286
  type: "full",
279
- remote: options?.remote && {
280
- timeout: typeof options?.remote !== "boolean"
281
- ? options.remote.timeout
282
- : undefined,
283
- },
287
+ remote: options.remote,
284
288
  ignoreMissing: true, // always return undefined instead of throwing errors on missing entries
285
289
  }
286
290
  : { type: "full", ignoreMissing: true });
@@ -481,97 +485,120 @@ let Log = (() => {
481
485
  }
482
486
  async join(entriesOrLog, options) {
483
487
  let entries;
484
- let references = new Map();
488
+ const references = new Map();
489
+ const fromCache = new Map();
490
+ const resolveRemoteFrom = async (hash, signal) => {
491
+ const cached = fromCache.get(hash);
492
+ if (cached !== undefined)
493
+ return cached === null ? undefined : cached;
494
+ let from;
495
+ try {
496
+ from = await this.entryIndex.properties.resolveRemotePeers?.(hash, { signal });
497
+ }
498
+ catch {
499
+ from = undefined;
500
+ }
501
+ const normalized = from && from.length > 0 ? from : undefined;
502
+ fromCache.set(hash, normalized ?? null);
503
+ return normalized;
504
+ };
505
+ const remote = {
506
+ timeout: options?.timeout,
507
+ signal: this._closeController.signal,
508
+ };
485
509
  if (entriesOrLog instanceof Log) {
486
510
  if (entriesOrLog.entryIndex.length === 0)
487
511
  return;
488
512
  entries = await entriesOrLog.toArray();
489
- for (const element of entries) {
513
+ for (const element of entries)
490
514
  references.set(element.hash, element);
491
- }
492
515
  }
493
516
  else if (Array.isArray(entriesOrLog)) {
494
- if (entriesOrLog.length === 0) {
517
+ if (entriesOrLog.length === 0)
495
518
  return;
496
- }
497
519
  entries = [];
498
520
  for (const element of entriesOrLog) {
499
521
  if (element instanceof Entry) {
500
522
  entries.push(element);
501
523
  references.set(element.hash, element);
524
+ continue;
502
525
  }
503
- else if (typeof element === "string") {
504
- if ((await this.has(element)) && !options?.reset) {
526
+ if (typeof element === "string") {
527
+ if ((await this.entryIndex.getShallow(element)) != null && !options?.reset) {
505
528
  continue; // already in log
506
529
  }
507
- let entry = await Entry.fromMultihash(this._storage, element, {
530
+ const from = await resolveRemoteFrom(element, this._closeController.signal);
531
+ const entry = await Entry.fromMultihash(this._storage, element, {
508
532
  remote: {
509
- timeout: options?.timeout,
533
+ timeout: remote.timeout,
534
+ signal: remote.signal,
535
+ ...(from && from.length > 0 ? { from } : {}),
510
536
  },
511
537
  });
512
- if (!entry) {
513
- throw new Error("Missing entry in join by hash: " + element);
514
- }
515
538
  entries.push(entry);
539
+ references.set(entry.hash, entry);
540
+ continue;
516
541
  }
517
- else if (element instanceof ShallowEntry) {
518
- if ((await this.has(element.hash)) && !options?.reset) {
542
+ if (element instanceof ShallowEntry) {
543
+ if ((await this.entryIndex.getShallow(element.hash)) != null &&
544
+ !options?.reset) {
519
545
  continue; // already in log
520
546
  }
521
- let entry = await Entry.fromMultihash(this._storage, element.hash, {
547
+ const from = await resolveRemoteFrom(element.hash, this._closeController.signal);
548
+ const entry = await Entry.fromMultihash(this._storage, element.hash, {
522
549
  remote: {
523
- timeout: options?.timeout,
550
+ timeout: remote.timeout,
551
+ signal: remote.signal,
552
+ ...(from && from.length > 0 ? { from } : {}),
524
553
  },
525
554
  });
526
- if (!entry) {
527
- throw new Error("Missing entry in join by hash: " + element.hash);
528
- }
529
555
  entries.push(entry);
556
+ references.set(entry.hash, entry);
557
+ continue;
530
558
  }
531
- else {
532
- entries.push(element.entry);
533
- references.set(element.entry.hash, element.entry);
534
- for (const ref of element.references) {
535
- references.set(ref.hash, ref);
536
- }
559
+ entries.push(element.entry);
560
+ references.set(element.entry.hash, element.entry);
561
+ for (const ref of element.references) {
562
+ references.set(ref.hash, ref);
537
563
  }
538
564
  }
539
565
  }
540
566
  else {
541
- let all = await entriesOrLog.all(); // TODO dont load all at once
542
- if (all.length === 0) {
567
+ const all = await entriesOrLog.all(); // TODO dont load all at once
568
+ if (all.length === 0)
543
569
  return;
544
- }
545
570
  entries = all;
546
571
  }
547
- let heads = new Map();
572
+ const heads = new Map();
548
573
  for (const entry of entries) {
549
- if (heads.has(entry.hash)) {
574
+ if (heads.has(entry.hash))
550
575
  continue;
551
- }
552
576
  heads.set(entry.hash, true);
553
- for (const next of await entry.getNext()) {
577
+ for (const next of await entry.getNext())
554
578
  heads.set(next, false);
555
- }
556
579
  }
557
580
  for (const entry of entries) {
558
- let isHead = heads.get(entry.hash);
559
- let prev = this._joining.get(entry.hash);
581
+ const isHead = heads.get(entry.hash);
582
+ const prev = this._joining.get(entry.hash);
560
583
  if (prev) {
561
584
  await prev;
585
+ continue;
562
586
  }
563
- else {
564
- const p = this.joinRecursively(entry, {
565
- references,
566
- isHead,
567
- ...options,
568
- });
569
- this._joining.set(entry.hash, p);
570
- p.finally(() => {
571
- this._joining.delete(entry.hash);
572
- });
573
- await p;
574
- }
587
+ const p = this.joinRecursively(entry, {
588
+ references,
589
+ isHead,
590
+ reset: options?.reset,
591
+ verifySignatures: options?.verifySignatures,
592
+ trim: options?.trim,
593
+ onChange: options?.onChange,
594
+ remote,
595
+ resolveRemoteFrom,
596
+ });
597
+ this._joining.set(entry.hash, p);
598
+ p.finally(() => {
599
+ this._joining.delete(entry.hash);
600
+ });
601
+ await p;
575
602
  }
576
603
  }
577
604
  /**
@@ -581,19 +608,19 @@ let Log = (() => {
581
608
  * @returns
582
609
  */
583
610
  async joinRecursively(entry, options) {
584
- if (this.entryIndex.length > (options?.length ?? Number.MAX_SAFE_INTEGER)) {
611
+ if (this.entryIndex.length > (options.length ?? Number.MAX_SAFE_INTEGER)) {
585
612
  return false;
586
613
  }
587
614
  if (!entry.hash) {
588
615
  throw new Error("Unexpected");
589
616
  }
590
- if ((await this.has(entry.hash)) && !options.reset) {
617
+ if ((await this.entryIndex.getShallow(entry.hash)) != null && !options.reset) {
591
618
  return false;
592
619
  }
593
620
  entry.init(this);
594
- if (options?.verifySignatures) {
621
+ if (options.verifySignatures) {
595
622
  if (!(await entry.verifySignatures())) {
596
- throw new Error('Invalid signature entry with hash "' + entry.hash + '"');
623
+ throw new Error(`Invalid signature entry with hash "${entry.hash}"`);
597
624
  }
598
625
  }
599
626
  const headsWithGid = await this.entryIndex
@@ -611,29 +638,36 @@ let Log = (() => {
611
638
  }
612
639
  }
613
640
  if (entry.meta.type !== EntryType.CUT) {
641
+ const remote = options.remote && typeof options.remote === "object"
642
+ ? options.remote
643
+ : undefined;
614
644
  for (const a of entry.meta.next) {
615
645
  const prev = this._joining.get(a);
616
646
  if (prev) {
617
647
  await prev;
648
+ continue;
618
649
  }
619
- else if (!(await this.has(a)) || options.reset) {
620
- const nested = options.references?.get(a) ||
621
- (await Entry.fromMultihash(this._storage, a, {
622
- remote: { timeout: options?.remote?.timeout },
623
- }));
624
- if (!nested) {
625
- throw new Error("Missing entry in joinRecursively: " + a);
626
- }
627
- const p = this.joinRecursively(nested, options.isHead ? { ...options, isHead: false } : options);
628
- this._joining.set(nested.hash, p);
629
- p.finally(() => {
630
- this._joining.delete(nested.hash);
631
- });
632
- await p;
650
+ if ((await this.entryIndex.getShallow(a)) != null && !options.reset) {
651
+ continue;
633
652
  }
653
+ const from = await options.resolveRemoteFrom?.(a, remote?.signal);
654
+ const nested = options.references?.get(a) ??
655
+ (await Entry.fromMultihash(this._storage, a, {
656
+ remote: {
657
+ timeout: remote?.timeout,
658
+ signal: remote?.signal,
659
+ ...(from && from.length > 0 ? { from } : {}),
660
+ },
661
+ }));
662
+ const p = this.joinRecursively(nested, options.isHead ? { ...options, isHead: false } : options);
663
+ this._joining.set(nested.hash, p);
664
+ p.finally(() => {
665
+ this._joining.delete(nested.hash);
666
+ });
667
+ await p;
634
668
  }
635
669
  }
636
- if (this?._canAppend && !(await this?._canAppend(entry))) {
670
+ if (this._canAppend && !(await this._canAppend(entry))) {
637
671
  return false;
638
672
  }
639
673
  const clock = await entry.getClock();
@@ -644,20 +678,20 @@ let Log = (() => {
644
678
  toMultiHash: true,
645
679
  });
646
680
  const pendingDeletes = await this.processEntry(entry);
647
- const trimmed = await this.trim(options?.trim);
681
+ const trimmed = await this.trim(options.trim);
648
682
  if (trimmed) {
649
- for (const entry of trimmed) {
650
- pendingDeletes.push({ entry, fn: undefined });
683
+ for (const removedEntry of trimmed) {
684
+ pendingDeletes.push({ entry: removedEntry, fn: undefined });
651
685
  }
652
686
  }
653
687
  const removed = pendingDeletes.map((x) => x.entry);
654
- await options?.onChange?.({
688
+ await options.onChange?.({
655
689
  added: [{ head: options.isHead, entry }],
656
- removed: removed,
690
+ removed,
657
691
  });
658
692
  await this._onChange?.({
659
693
  added: [{ head: options.isHead, entry }],
660
- removed: removed,
694
+ removed,
661
695
  });
662
696
  await Promise.all(pendingDeletes.map((x) => x.fn?.()));
663
697
  return true;