@peerbit/document 7.0.7-a16b978 → 7.0.8-b57d808

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 +1 @@
1
- {"version":3,"file":"program.d.ts","sourceRoot":"","sources":["../../src/program.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"program.d.ts","sourceRoot":"","sources":["../../src/program.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,YAAY,EAKjB,MAAM,gBAAgB,CAAC;AAIxB,OAAO,KAAK,YAAY,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EACN,KAAK,MAAM,EACX,KAAK,EAEL,KAAK,kBAAkB,EACvB,KAAK,WAAW,EAChB,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EACN,KAAK,mBAAmB,EACxB,SAAS,EACT,KAAK,gBAAgB,EACrB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAEN,KAAK,OAAO,EACZ,KAAK,SAAS,EACd,eAAe,EACf,aAAa,EACb,SAAS,EACT,YAAY,EACZ,KAAK,gBAAgB,EAIrB,MAAM,aAAa,CAAC;AAIrB,qBAAa,cAAe,SAAQ,KAAK;gBAC5B,OAAO,CAAC,EAAE,MAAM;CAG5B;AACD,MAAM,WAAW,eAAe,CAAC,CAAC;IACjC,KAAK,EAAE,CAAC,EAAE,CAAC;IACX,OAAO,EAAE,CAAC,EAAE,CAAC;CACb;AACD,MAAM,WAAW,cAAc,CAAC,CAAC;IAChC,MAAM,EAAE,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;CACxC;AAED,KAAK,YAAY,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAEtC,KAAK,aAAa,CAAC,CAAC,IAAI;IACvB,IAAI,EAAE,KAAK,CAAC;IACZ,KAAK,EAAE,CAAC,CAAC;IACT,SAAS,EAAE,YAAY,CAAC;IACxB,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;CAC3B,CAAC;AAEF,KAAK,gBAAgB,CAAC,CAAC,IAAI;IAC1B,IAAI,EAAE,QAAQ,CAAC;IACf,SAAS,EAAE,eAAe,CAAC;IAC3B,KAAK,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,oBAAoB,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;AAC7E,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,CAC3B,UAAU,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAC/B,YAAY,CAAC,OAAO,CAAC,CAAC;AAE3B,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI;IACpC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IACtB,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,YAAY,CAAC,OAAO,CAAC,CAAC;IAChD,UAAU,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IAC3B,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,YAAY,CAAC,WAAW,CAAC;IAC5C,KAAK,CAAC,EAAE;QACP,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QACrB,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;KAC/B,GAAG,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3B,GAAG,CAAC,EAAE;QACL,IAAI,CAAC,EAAE,WAAW,CAAC;KACnB,CAAC;CACF,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;AAEhC,qBACa,SAAS,CACrB,CAAC,EACD,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,CACtE,SAAQ,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC;IAEvE,GAAG,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAG1B,SAAS,EAAE,OAAO,CAAC;IAGnB,OAAO,CAAC,MAAM,CAAsB;IAEpC,OAAO,CAAC,MAAM,CAAmB;IAEjC,OAAO,CAAC,iBAAiB,CAAC,CAAgB;IAC1C,OAAO,CAAC,eAAe,CAAe;IACtC,OAAO,CAAC,UAAU,CAA0C;IAE5D,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;gBAElE,UAAU,CAAC,EAAE;QACxB,EAAE,CAAC,EAAE,UAAU,CAAC;QAChB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,KAAK,CAAC,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;KAC5B;IAQD,IAAI,KAAK,IAAI,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAE/B;IAEK,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC;IA8DhC,OAAO;YAIC,aAAa;IAOrB,SAAS,CACd,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,EACvB,SAAS,CAAC,EAAE;QAAE,QAAQ,EAAE,CAAC,CAAC;QAAC,SAAS,EAAE,YAAY,CAAA;KAAE,GAClD,OAAO,CAAC,OAAO,CAAC;IAuDb,UAAU,CACf,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,EACvB,SAAS,CAAC,EAAE;QAAE,QAAQ,EAAE,CAAC,CAAC;QAAC,SAAS,EAAE,YAAY,CAAA;KAAE,GAClD,OAAO,CAAC,YAAY,GAAG,eAAe,GAAG,KAAK,CAAC;IA0GrC,GAAG,CACf,GAAG,EAAE,CAAC,EACN,OAAO,CAAC,EAAE,mBAAmB,CAAC,SAAS,CAAC,GAAG;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE;;;;IA+C1D,GAAG,CACR,EAAE,EAAE,YAAY,CAAC,OAAO,EACxB,OAAO,CAAC,EAAE,mBAAmB,CAAC,SAAS,CAAC;;;;IA6BnC,aAAa,CAClB,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,EACzB,SAAS,CAAC,EAAE;QAAE,QAAQ,EAAE,CAAC,CAAC;QAAC,SAAS,EAAE,YAAY,CAAA;KAAE,GAClD,OAAO,CAAC,IAAI,CAAC;CAoIhB"}
@@ -9,7 +9,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  };
10
10
  import { BorshError, field, serialize, variant, } from "@dao-xyz/borsh";
11
11
  import { CustomEvent } from "@libp2p/interface";
12
- import { AccessError, DecryptedThing } from "@peerbit/crypto";
12
+ import { AccessError } from "@peerbit/crypto";
13
13
  import * as documentsTypes from "@peerbit/document-interface";
14
14
  import * as indexerTypes from "@peerbit/indexer-interface";
15
15
  import { Entry, EntryType, } from "@peerbit/log";
@@ -17,7 +17,7 @@ import { logger as loggerFn } from "@peerbit/logger";
17
17
  import { Program } from "@peerbit/program";
18
18
  import { SharedLog, } from "@peerbit/shared-log";
19
19
  import { MAX_BATCH_SIZE } from "./constants.js";
20
- import { BORSH_ENCODING_OPERATION, DeleteOperation, DocumentIndex, Operation, PutOperation, } from "./search.js";
20
+ import { BORSH_ENCODING_OPERATION, DeleteOperation, DocumentIndex, Operation, PutOperation, coerceDeleteOperation, isDeleteOperation, isPutOperation, } from "./search.js";
21
21
  const logger = loggerFn({ module: "document" });
22
22
  export class OperationError extends Error {
23
23
  constructor(message) {
@@ -112,13 +112,13 @@ let Documents = class Documents extends Program {
112
112
  let operation = l0;
113
113
  let document = reference?.document;
114
114
  if (!document) {
115
- if (l0 instanceof PutOperation) {
115
+ if (isPutOperation(l0)) {
116
116
  document = this._index.valueEncoding.decoder(l0.data);
117
117
  if (!document) {
118
118
  return false;
119
119
  }
120
120
  }
121
- else if (l0 instanceof DeleteOperation) {
121
+ else if (isDeleteOperation(l0)) {
122
122
  // Nothing to do here by default
123
123
  // checking if the document exists is not necessary
124
124
  // since it might already be deleted
@@ -128,7 +128,7 @@ let Documents = class Documents extends Program {
128
128
  }
129
129
  }
130
130
  if (this._optionCanPerform) {
131
- if (!(await this._optionCanPerform(operation instanceof PutOperation
131
+ if (!(await this._optionCanPerform(isPutOperation(operation)
132
132
  ? {
133
133
  type: "put",
134
134
  value: document,
@@ -163,11 +163,11 @@ let Documents = class Documents extends Program {
163
163
  const pointsToHistory = async (history) => {
164
164
  // make sure nexts only points to this document at some point in history
165
165
  let current = await resolve(history);
166
- const next = entry.next[0];
166
+ const next = entry.meta.next[0];
167
167
  while (current?.hash &&
168
168
  next !== current?.hash &&
169
- current.next.length > 0) {
170
- current = await this.log.log.get(current.next[0]);
169
+ current.meta.next.length > 0) {
170
+ current = await this.log.log.get(current.meta.next[0]);
171
171
  }
172
172
  if (current?.hash === next) {
173
173
  return true; // Ok, we are pointing this new edit to some exising point in time of the old document
@@ -179,10 +179,11 @@ let Documents = class Documents extends Program {
179
179
  encoding: this.log.log.encoding,
180
180
  keychain: this.node.services.keychain,
181
181
  });
182
- const operation = reference?.operation || entry._payload instanceof DecryptedThing
183
- ? entry.payload.getValue(entry.encoding)
184
- : await entry.getPayloadValue();
185
- if (operation instanceof PutOperation) {
182
+ const operation = reference?.operation ||
183
+ /* entry._payload instanceof DecryptedThing
184
+ ? entry.payload.getValue(entry.encoding)
185
+ : */ (await entry.getPayloadValue()); // TODO implement sync api for resolving entries that does not deep decryption
186
+ if (isPutOperation(operation)) {
186
187
  // check nexts
187
188
  const putOperation = operation;
188
189
  let value = reference?.document ??
@@ -197,7 +198,7 @@ let Documents = class Documents extends Program {
197
198
  //Key already exist and this instance Documents can note overrite/edit'
198
199
  return false;
199
200
  }
200
- if (entry.next.length !== 1) {
201
+ if (entry.meta.next.length !== 1) {
201
202
  return false;
202
203
  }
203
204
  let doc = await this.log.log.get(existingDocument.context.head);
@@ -209,19 +210,19 @@ let Documents = class Documents extends Program {
209
210
  return referenceHistoryCorrectly ? putOperation : false;
210
211
  }
211
212
  else {
212
- if (entry.next.length !== 0) {
213
+ if (entry.meta.next.length !== 0) {
213
214
  return false;
214
215
  }
215
216
  }
216
217
  }
217
- else if (operation instanceof DeleteOperation) {
218
- if (entry.next.length !== 1) {
218
+ else if (isDeleteOperation(operation)) {
219
+ if (entry.meta.next.length !== 1) {
219
220
  return false;
220
221
  }
221
222
  const existingDocument = (await this.index.getDetailed(operation.key))?.[0].results[0];
222
223
  if (!existingDocument) {
223
224
  // already deleted
224
- return operation; // assume ok
225
+ return coerceDeleteOperation(operation); // assume ok
225
226
  }
226
227
  let doc = await this.log.log.get(existingDocument.context.head);
227
228
  if (!doc) {
@@ -230,7 +231,7 @@ let Documents = class Documents extends Program {
230
231
  }
231
232
  if (await pointsToHistory(doc)) {
232
233
  // references the existing document
233
- return operation;
234
+ return coerceDeleteOperation(operation);
234
235
  }
235
236
  return false;
236
237
  }
@@ -329,10 +330,11 @@ let Documents = class Documents extends Program {
329
330
  if (!item)
330
331
  continue;
331
332
  try {
332
- const payload = item._payload instanceof DecryptedThing
333
+ const payload =
334
+ /* item._payload instanceof DecryptedThing
333
335
  ? item.payload.getValue(item.encoding)
334
- : await item.getPayloadValue();
335
- if (payload instanceof PutOperation && !removedSet.has(item.hash)) {
336
+ : */ await item.getPayloadValue(); // TODO implement sync api for resolving entries that does not deep decryption
337
+ if (isPutOperation(payload) && !removedSet.has(item.hash)) {
336
338
  let value = (isAppendOperation &&
337
339
  reference?.operation === payload &&
338
340
  reference?.document) ||
@@ -360,13 +362,13 @@ let Documents = class Documents extends Program {
360
362
  await this._index.put(value, item, key);
361
363
  modified.add(key.primitive);
362
364
  }
363
- else if ((payload instanceof DeleteOperation && !removedSet.has(item.hash)) ||
364
- payload instanceof PutOperation ||
365
+ else if ((isDeleteOperation(payload) && !removedSet.has(item.hash)) ||
366
+ isPutOperation(payload) ||
365
367
  removedSet.has(item.hash)) {
366
- this._manuallySynced.delete(item.gid);
368
+ this._manuallySynced.delete(item.meta.gid);
367
369
  let value;
368
370
  let key;
369
- if (payload instanceof PutOperation) {
371
+ if (isPutOperation(payload)) {
370
372
  value = this.index.valueEncoding.decoder(payload.data);
371
373
  key = indexerTypes.toId(this.idResolver(value));
372
374
  // document is already updated with more recent entry
@@ -374,8 +376,8 @@ let Documents = class Documents extends Program {
374
376
  continue;
375
377
  }
376
378
  }
377
- else if (payload instanceof DeleteOperation) {
378
- key = payload.key;
379
+ else if (isDeleteOperation(payload)) {
380
+ key = coerceDeleteOperation(payload).key;
379
381
  // document is already updated with more recent entry
380
382
  if (modified.has(key.primitive)) {
381
383
  continue;
@@ -1 +1 @@
1
- {"version":3,"file":"program.js","sourceRoot":"","sources":["../../src/program.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"program.js","sourceRoot":"","sources":["../../src/program.ts"],"names":[],"mappings":"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"}
@@ -9,15 +9,29 @@ import { SharedLog } from "@peerbit/shared-log";
9
9
  export declare class Operation {
10
10
  }
11
11
  export declare const BORSH_ENCODING_OPERATION: Encoding<Operation>;
12
- /**
13
- * Put a complete document at a key
14
- */
12
+ export declare class PutWithKeyOperation extends Operation {
13
+ key: string;
14
+ data: Uint8Array;
15
+ constructor(props: {
16
+ key: string;
17
+ data: Uint8Array;
18
+ });
19
+ }
20
+ export declare class DeleteByStringKeyOperation extends Operation {
21
+ key: string;
22
+ constructor(props: {
23
+ key: string;
24
+ });
25
+ toDeleteOperation(): DeleteOperation;
26
+ }
27
+ export declare const coerceDeleteOperation: (operation: DeleteOperation | DeleteByStringKeyOperation) => DeleteOperation;
15
28
  export declare class PutOperation extends Operation {
16
29
  data: Uint8Array;
17
30
  constructor(props: {
18
31
  data: Uint8Array;
19
32
  });
20
33
  }
34
+ export declare const isPutOperation: (operation: Operation) => operation is PutOperation | PutWithKeyOperation;
21
35
  /**
22
36
  * Delete a document at a key
23
37
  */
@@ -27,6 +41,7 @@ export declare class DeleteOperation extends Operation {
27
41
  key: indexerTypes.IdKey;
28
42
  });
29
43
  }
44
+ export declare const isDeleteOperation: (operation: Operation) => operation is DeleteOperation | DeleteByStringKeyOperation;
30
45
  export type RemoteQueryOptions<R> = RPCRequestAllOptions<R> & {
31
46
  sync?: boolean;
32
47
  minAge?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/search.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAA6B,MAAM,gBAAgB,CAAC;AAE9E,OAAO,EACN,KAAK,YAAY,EACjB,aAAa,EAEb,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,KAAK,MAAM,6BAA6B,CAAC;AACrD,OAAO,KAAK,YAAY,MAAM,4BAA4B,CAAC;AAE3D,OAAO,EAAkB,KAAK,QAAQ,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAEpE,OAAO,EAAe,OAAO,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAEN,GAAG,EACH,KAAK,oBAAoB,EAGzB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAgBhD,qBACa,SAAS;CAAa;AAEnC,eAAO,MAAM,wBAAwB,qBAA4B,CAAC;AAElE;;GAEG;AAEH,qBACa,YAAa,SAAQ,SAAS;IAE1C,IAAI,EAAE,UAAU,CAAC;gBAIL,KAAK,EAAE;QAAE,IAAI,EAAE,UAAU,CAAA;KAAkB;CAIvD;AAgBD;;GAEG;AACH,qBACa,eAAgB,SAAQ,SAAS;IAE7C,GAAG,EAAE,YAAY,CAAC,KAAK,CAAC;gBAEZ,KAAK,EAAE;QAAE,GAAG,EAAE,YAAY,CAAC,KAAK,CAAA;KAAE;CAI9C;AAED,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI,oBAAoB,CAAC,CAAC,CAAC,GAAG;IAC7D,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AACF,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI;IAC7B,MAAM,CAAC,EAAE,OAAO,GAAG,kBAAkB,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC;IACrE,KAAK,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AACF,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;AAE/C,KAAK,WAAW,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,KAAK,YAAY,CAAC,CAAC,CAAC,CAAC;AAE7E,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI;IAChC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IACvC,IAAI,EAAE,MAAM,OAAO,CAAC;CACpB,CAAC;AAEF,KAAK,oBAAoB,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,GAAG;IAChD,UAAU,CAAC,EAAE,CACZ,QAAQ,EAAE,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC,EACvC,IAAI,EAAE,aAAa,KACf,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B,CAAC;AAwDF,MAAM,MAAM,SAAS,GAAG,CACvB,OAAO,EAAE,YAAY,CAAC,aAAa,GAAG,YAAY,CAAC,kBAAkB,EACrE,IAAI,EAAE,aAAa,KACf,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;AAEhC,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,CACxB,MAAM,EAAE,CAAC,EACT,IAAI,EAAE,aAAa,KACf,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;AAEhC,MAAM,MAAM,oBAAoB,CAAC,CAAC,IAAI;IACrC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC;CACzB,GAAG,CAAC,CAAC;AAEN,MAAM,MAAM,wBAAwB,CAAC,CAAC,EAAE,CAAC,IAAI;IAC5C,IAAI,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC;CACjD,CAAC;AAEF,MAAM,MAAM,qBAAqB,CAAC,CAAC,EAAE,CAAC,IAAI;IACzC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IACtB,SAAS,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CAC9D,CAAC;AACF,MAAM,MAAM,gBAAgB,CAAC,CAAC,EAAE,CAAC,IAC9B,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,GAC9B,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAQ/B,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,CAAC,IAAI;IAC/B,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IAE9B,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,GAAG,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACrB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,IAAI,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC5B,SAAS,CAAC,EAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CACnC,CAAC;AAEF,KAAK,cAAc,CAAC,CAAC,IAAI,KACxB,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,KAAK,CAAC,OAAO,KAClB,oBAAoB,CAAC,CAAC,CAAC,CAAC;AAE7B,qBACa,aAAa,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAE,SAAQ,OAAO,CAC3E,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CACjB;IAEA,MAAM,EAAE,GAAG,CACV,YAAY,CAAC,qBAAqB,EAClC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAC7B,CAAC;IAGF,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IAG9B,WAAW,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAG/B,kBAAkB,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;IAGtC,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,yBAAyB,EAAE,OAAO,CAAC;IAGnC,OAAO,CAAC,OAAO,CAAW;IAC1B,OAAO,CAAC,eAAe,CAAoC;IAC3D,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC;IAKnD,OAAO,CAAC,cAAc,CAAc;IAEpC,OAAO,CAAC,KAAK,CAA8C;IAE3D,OAAO,CAAC,IAAI,CAAuB;IAEnC,OAAO,CAAC,qBAAqB,CAAC,CAAmC;IACjE,OAAO,CAAC,cAAc,CAAW;IACjC,OAAO,CAAC,gBAAgB,CAAU;IAElC,OAAO,CAAC,YAAY,CAQlB;gBAEU,UAAU,CAAC,EAAE;QACxB,KAAK,CAAC,EAAE,GAAG,CACV,YAAY,CAAC,qBAAqB,EAClC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAC7B,CAAC;KACF;IAKD,IAAI,aAAa,gBAEhB;IAEK,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC;IA+HxC,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAS1C,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAQvC,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAS/B,GAAG,CACf,GAAG,EAAE,YAAY,CAAC,OAAO,GAAG,YAAY,CAAC,KAAK,EAC9C,OAAO,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,GACvB,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IASZ,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,YAAY,CAAC,KAAK;IA2BnE,GAAG,CAAC,GAAG,EAAE,YAAY,CAAC,KAAK;IAarB,WAAW,CACvB,GAAG,EAAE,YAAY,CAAC,KAAK,GAAG,YAAY,CAAC,WAAW,EAClD,OAAO,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,GACvB,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC;IA4D1C,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM;YAIrB,eAAe;IAuCvB,YAAY,CACjB,KAAK,EAAE,YAAY,CAAC,aAAa,GAAG,YAAY,CAAC,kBAAkB,EACnE,IAAI,EAAE,aAAa,EACnB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE;QACT,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;KACrB,GACC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAoF5B,iBAAiB,CAChB,KAAK,EACF,YAAY,CAAC,aAAa,GAC1B,YAAY,CAAC,kBAAkB,GAC/B,YAAY,CAAC,oBAAoB;IAQ/B,2BAA2B,CAChC,KAAK,EAAE,YAAY,CAAC,oBAAoB,EACxC,SAAS,EAAE,aAAa,GACtB,OAAO,CAAC,IAAI,CAAC;IAUhB;;;;;OAKG;IACU,aAAa,CACzB,YAAY,EAAE,YAAY,CAAC,aAAa,EACxC,OAAO,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAC/B,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IAiH9B;;;;;OAKG;IACU,MAAM,CAClB,YAAY,EAAE,YAAY,CAAC,aAAa,EACxC,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,GACxB,OAAO,CAAC,CAAC,EAAE,CAAC;IA2Bf;;;;;OAKG;IACI,OAAO,CACb,YAAY,EAAE,YAAY,CAAC,aAAa,EACxC,OAAO,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,GACvB,eAAe,CAAC,CAAC,CAAC;CA2VrB"}
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/search.ts"],"names":[],"mappings":"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"}
@@ -31,26 +31,30 @@ Operation = __decorate([
31
31
  ], Operation);
32
32
  export { Operation };
33
33
  export const BORSH_ENCODING_OPERATION = BORSH_ENCODING(Operation);
34
- /**
35
- * Put a complete document at a key
36
- */
37
- let PutOperation = class PutOperation extends Operation /* <T> */ {
34
+ // @deprecated
35
+ let PutWithKeyOperation = class PutWithKeyOperation extends Operation {
36
+ key;
38
37
  data;
39
- /* _value?: T; */
40
38
  constructor(props) {
41
39
  super();
40
+ this.key = props.key;
42
41
  this.data = props.data;
43
42
  }
44
43
  };
44
+ __decorate([
45
+ field({ type: "string" }),
46
+ __metadata("design:type", String)
47
+ ], PutWithKeyOperation.prototype, "key", void 0);
45
48
  __decorate([
46
49
  field({ type: Uint8Array }),
47
50
  __metadata("design:type", Uint8Array)
48
- ], PutOperation.prototype, "data", void 0);
49
- PutOperation = __decorate([
51
+ ], PutWithKeyOperation.prototype, "data", void 0);
52
+ PutWithKeyOperation = __decorate([
50
53
  variant(0),
51
54
  __metadata("design:paramtypes", [Object])
52
- ], PutOperation);
53
- export { PutOperation };
55
+ ], PutWithKeyOperation);
56
+ export { PutWithKeyOperation };
57
+ // @deprecated
54
58
  /* @variant(1)
55
59
  export class PutAllOperation<T> extends Operation<T> {
56
60
  @field({ type: vec(PutOperation) })
@@ -64,6 +68,51 @@ export class PutAllOperation<T> extends Operation<T> {
64
68
  }
65
69
  }
66
70
  */
71
+ // @deprecated
72
+ let DeleteByStringKeyOperation = class DeleteByStringKeyOperation extends Operation {
73
+ key;
74
+ constructor(props) {
75
+ super();
76
+ this.key = props.key;
77
+ }
78
+ toDeleteOperation() {
79
+ return new DeleteOperation({ key: indexerTypes.toId(this.key) });
80
+ }
81
+ };
82
+ __decorate([
83
+ field({ type: "string" }),
84
+ __metadata("design:type", String)
85
+ ], DeleteByStringKeyOperation.prototype, "key", void 0);
86
+ DeleteByStringKeyOperation = __decorate([
87
+ variant(2),
88
+ __metadata("design:paramtypes", [Object])
89
+ ], DeleteByStringKeyOperation);
90
+ export { DeleteByStringKeyOperation };
91
+ export const coerceDeleteOperation = (operation) => {
92
+ return operation instanceof DeleteByStringKeyOperation
93
+ ? operation.toDeleteOperation()
94
+ : operation;
95
+ };
96
+ let PutOperation = class PutOperation extends Operation {
97
+ data;
98
+ constructor(props) {
99
+ super();
100
+ this.data = props.data;
101
+ }
102
+ };
103
+ __decorate([
104
+ field({ type: Uint8Array }),
105
+ __metadata("design:type", Uint8Array)
106
+ ], PutOperation.prototype, "data", void 0);
107
+ PutOperation = __decorate([
108
+ variant(3),
109
+ __metadata("design:paramtypes", [Object])
110
+ ], PutOperation);
111
+ export { PutOperation };
112
+ export const isPutOperation = (operation) => {
113
+ return (operation instanceof PutOperation ||
114
+ operation instanceof PutWithKeyOperation);
115
+ };
67
116
  /**
68
117
  * Delete a document at a key
69
118
  */
@@ -79,10 +128,14 @@ __decorate([
79
128
  __metadata("design:type", indexerTypes.IdKey)
80
129
  ], DeleteOperation.prototype, "key", void 0);
81
130
  DeleteOperation = __decorate([
82
- variant(2),
131
+ variant(4),
83
132
  __metadata("design:paramtypes", [Object])
84
133
  ], DeleteOperation);
85
134
  export { DeleteOperation };
135
+ export const isDeleteOperation = (operation) => {
136
+ return (operation instanceof DeleteOperation ||
137
+ operation instanceof DeleteByStringKeyOperation);
138
+ };
86
139
  const introduceEntries = async (responses, type, sync, options) => {
87
140
  const results = [];
88
141
  for (const response of responses) {
@@ -281,8 +334,8 @@ let DocumentIndex = class DocumentIndex extends Program {
281
334
  entry.meta.clock.timestamp.wallTime,
282
335
  modified: entry.meta.clock.timestamp.wallTime,
283
336
  head: entry.hash,
284
- gid: entry.gid,
285
- size: entry.payloadByteLength,
337
+ gid: entry.meta.gid,
338
+ size: entry.payload.byteLength,
286
339
  });
287
340
  const valueToIndex = await this.transformer(value, context);
288
341
  const wrappedValueToIndex = new this.wrappedIndexedType(valueToIndex, context);
@@ -366,7 +419,7 @@ let DocumentIndex = class DocumentIndex extends Program {
366
419
  // TODO update changes in index before removing entries from log entry storage
367
420
  }
368
421
  const payloadValue = await head.getPayloadValue();
369
- if (payloadValue instanceof PutOperation) {
422
+ if (isPutOperation(payloadValue)) {
370
423
  return {
371
424
  value: this.valueEncoding.decoder(payloadValue.data),
372
425
  /* size: payloadValue.data.byteLength */
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/search.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/search.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@peerbit/document",
3
- "version": "7.0.7-a16b978",
3
+ "version": "7.0.8-b57d808",
4
4
  "description": "Document store implementation",
5
5
  "type": "module",
6
6
  "sideEffects": false,
@@ -59,17 +59,17 @@
59
59
  "license": "MIT",
60
60
  "dependencies": {
61
61
  "@dao-xyz/borsh": "^5.2.3",
62
- "@peerbit/program": "5.0.1-a16b978",
63
- "@peerbit/rpc": "5.0.4-a16b978",
64
- "@peerbit/shared-log": "9.0.5-a16b978",
65
- "@peerbit/indexer-interface": "1.0.0-a16b978",
66
- "@peerbit/indexer-simple": "1.0.0-a16b978",
67
- "@peerbit/indexer-sqlite3": "1.0.2-a16b978",
68
- "@peerbit/document-interface": "1.0.0-a16b978"
62
+ "@peerbit/program": "5.0.1-b57d808",
63
+ "@peerbit/rpc": "5.0.5-b57d808",
64
+ "@peerbit/shared-log": "9.0.6-b57d808",
65
+ "@peerbit/indexer-interface": "1.0.0-b57d808",
66
+ "@peerbit/indexer-simple": "1.0.1-b57d808",
67
+ "@peerbit/indexer-sqlite3": "1.0.3-b57d808",
68
+ "@peerbit/document-interface": "1.0.0-b57d808"
69
69
  },
70
70
  "devDependencies": {
71
- "@peerbit/test-utils": "2.0.38-a16b978",
72
- "@peerbit/time": "2.0.7-a16b978",
71
+ "@peerbit/test-utils": "2.0.39-b57d808",
72
+ "@peerbit/time": "2.0.7-b57d808",
73
73
  "@types/pidusage": "^2.0.5",
74
74
  "pidusage": "^3.0.2"
75
75
  }
package/src/program.ts CHANGED
@@ -6,7 +6,7 @@ import {
6
6
  variant,
7
7
  } from "@dao-xyz/borsh";
8
8
  import { CustomEvent } from "@libp2p/interface";
9
- import { AccessError, DecryptedThing } from "@peerbit/crypto";
9
+ import { AccessError } from "@peerbit/crypto";
10
10
  import * as documentsTypes from "@peerbit/document-interface";
11
11
  import * as indexerTypes from "@peerbit/indexer-interface";
12
12
  import {
@@ -33,6 +33,9 @@ import {
33
33
  Operation,
34
34
  PutOperation,
35
35
  type TransformOptions,
36
+ coerceDeleteOperation,
37
+ isDeleteOperation,
38
+ isPutOperation,
36
39
  } from "./search.js";
37
40
 
38
41
  const logger = loggerFn({ module: "document" });
@@ -209,12 +212,12 @@ export class Documents<
209
212
  let operation: PutOperation | DeleteOperation = l0;
210
213
  let document: T | undefined = reference?.document;
211
214
  if (!document) {
212
- if (l0 instanceof PutOperation) {
215
+ if (isPutOperation(l0)) {
213
216
  document = this._index.valueEncoding.decoder(l0.data);
214
217
  if (!document) {
215
218
  return false;
216
219
  }
217
- } else if (l0 instanceof DeleteOperation) {
220
+ } else if (isDeleteOperation(l0)) {
218
221
  // Nothing to do here by default
219
222
  // checking if the document exists is not necessary
220
223
  // since it might already be deleted
@@ -226,7 +229,7 @@ export class Documents<
226
229
  if (this._optionCanPerform) {
227
230
  if (
228
231
  !(await this._optionCanPerform(
229
- operation instanceof PutOperation
232
+ isPutOperation(operation)
230
233
  ? {
231
234
  type: "put",
232
235
  value: document!,
@@ -268,13 +271,13 @@ export class Documents<
268
271
  // make sure nexts only points to this document at some point in history
269
272
  let current = await resolve(history);
270
273
 
271
- const next = entry.next[0];
274
+ const next = entry.meta.next[0];
272
275
  while (
273
276
  current?.hash &&
274
277
  next !== current?.hash &&
275
- current.next.length > 0
278
+ current.meta.next.length > 0
276
279
  ) {
277
- current = await this.log.log.get(current.next[0])!;
280
+ current = await this.log.log.get(current.meta.next[0])!;
278
281
  }
279
282
  if (current?.hash === next) {
280
283
  return true; // Ok, we are pointing this new edit to some exising point in time of the old document
@@ -288,10 +291,11 @@ export class Documents<
288
291
  keychain: this.node.services.keychain,
289
292
  });
290
293
  const operation =
291
- reference?.operation || entry._payload instanceof DecryptedThing
294
+ reference?.operation ||
295
+ /* entry._payload instanceof DecryptedThing
292
296
  ? entry.payload.getValue(entry.encoding)
293
- : await entry.getPayloadValue();
294
- if (operation instanceof PutOperation) {
297
+ : */ (await entry.getPayloadValue()); // TODO implement sync api for resolving entries that does not deep decryption
298
+ if (isPutOperation(operation)) {
295
299
  // check nexts
296
300
  const putOperation = operation as PutOperation;
297
301
  let value =
@@ -310,7 +314,7 @@ export class Documents<
310
314
  return false;
311
315
  }
312
316
 
313
- if (entry.next.length !== 1) {
317
+ if (entry.meta.next.length !== 1) {
314
318
  return false;
315
319
  }
316
320
  let doc = await this.log.log.get(existingDocument.context.head);
@@ -321,12 +325,12 @@ export class Documents<
321
325
  const referenceHistoryCorrectly = await pointsToHistory(doc);
322
326
  return referenceHistoryCorrectly ? putOperation : false;
323
327
  } else {
324
- if (entry.next.length !== 0) {
328
+ if (entry.meta.next.length !== 0) {
325
329
  return false;
326
330
  }
327
331
  }
328
- } else if (operation instanceof DeleteOperation) {
329
- if (entry.next.length !== 1) {
332
+ } else if (isDeleteOperation(operation)) {
333
+ if (entry.meta.next.length !== 1) {
330
334
  return false;
331
335
  }
332
336
  const existingDocument = (
@@ -334,7 +338,7 @@ export class Documents<
334
338
  )?.[0].results[0];
335
339
  if (!existingDocument) {
336
340
  // already deleted
337
- return operation; // assume ok
341
+ return coerceDeleteOperation(operation); // assume ok
338
342
  }
339
343
  let doc = await this.log.log.get(existingDocument.context.head);
340
344
  if (!doc) {
@@ -343,7 +347,7 @@ export class Documents<
343
347
  }
344
348
  if (await pointsToHistory(doc)) {
345
349
  // references the existing document
346
- return operation;
350
+ return coerceDeleteOperation(operation);
347
351
  }
348
352
  return false;
349
353
  } else {
@@ -480,11 +484,11 @@ export class Documents<
480
484
 
481
485
  try {
482
486
  const payload =
483
- item._payload instanceof DecryptedThing
487
+ /* item._payload instanceof DecryptedThing
484
488
  ? item.payload.getValue(item.encoding)
485
- : await item.getPayloadValue();
489
+ : */ await item.getPayloadValue(); // TODO implement sync api for resolving entries that does not deep decryption
486
490
 
487
- if (payload instanceof PutOperation && !removedSet.has(item.hash)) {
491
+ if (isPutOperation(payload) && !removedSet.has(item.hash)) {
488
492
  let value =
489
493
  (isAppendOperation &&
490
494
  reference?.operation === payload &&
@@ -518,24 +522,24 @@ export class Documents<
518
522
  await this._index.put(value, item, key);
519
523
  modified.add(key.primitive);
520
524
  } else if (
521
- (payload instanceof DeleteOperation && !removedSet.has(item.hash)) ||
522
- payload instanceof PutOperation ||
525
+ (isDeleteOperation(payload) && !removedSet.has(item.hash)) ||
526
+ isPutOperation(payload) ||
523
527
  removedSet.has(item.hash)
524
528
  ) {
525
- this._manuallySynced.delete(item.gid);
529
+ this._manuallySynced.delete(item.meta.gid);
526
530
 
527
531
  let value: T;
528
532
  let key: indexerTypes.IdKey;
529
533
 
530
- if (payload instanceof PutOperation) {
534
+ if (isPutOperation(payload)) {
531
535
  value = this.index.valueEncoding.decoder(payload.data);
532
536
  key = indexerTypes.toId(this.idResolver(value));
533
537
  // document is already updated with more recent entry
534
538
  if (modified.has(key.primitive)) {
535
539
  continue;
536
540
  }
537
- } else if (payload instanceof DeleteOperation) {
538
- key = payload.key;
541
+ } else if (isDeleteOperation(payload)) {
542
+ key = coerceDeleteOperation(payload).key;
539
543
  // document is already updated with more recent entry
540
544
  if (modified.has(key.primitive)) {
541
545
  continue;
package/src/search.ts CHANGED
@@ -39,23 +39,23 @@ export class Operation /* <T> */ {}
39
39
 
40
40
  export const BORSH_ENCODING_OPERATION = BORSH_ENCODING(Operation);
41
41
 
42
- /**
43
- * Put a complete document at a key
44
- */
45
-
42
+ // @deprecated
46
43
  @variant(0)
47
- export class PutOperation extends Operation /* <T> */ {
44
+ export class PutWithKeyOperation extends Operation {
45
+ @field({ type: "string" })
46
+ key: string;
47
+
48
48
  @field({ type: Uint8Array })
49
49
  data: Uint8Array;
50
50
 
51
- /* _value?: T; */
52
-
53
- constructor(props: { data: Uint8Array /* value?: T */ }) {
51
+ constructor(props: { key: string; data: Uint8Array }) {
54
52
  super();
53
+ this.key = props.key;
55
54
  this.data = props.data;
56
55
  }
57
56
  }
58
57
 
58
+ // @deprecated
59
59
  /* @variant(1)
60
60
  export class PutAllOperation<T> extends Operation<T> {
61
61
  @field({ type: vec(PutOperation) })
@@ -70,10 +70,54 @@ export class PutAllOperation<T> extends Operation<T> {
70
70
  }
71
71
  */
72
72
 
73
+ // @deprecated
74
+ @variant(2)
75
+ export class DeleteByStringKeyOperation extends Operation {
76
+ @field({ type: "string" })
77
+ key: string;
78
+
79
+ constructor(props: { key: string }) {
80
+ super();
81
+ this.key = props.key;
82
+ }
83
+
84
+ toDeleteOperation(): DeleteOperation {
85
+ return new DeleteOperation({ key: indexerTypes.toId(this.key) });
86
+ }
87
+ }
88
+
89
+ export const coerceDeleteOperation = (
90
+ operation: DeleteOperation | DeleteByStringKeyOperation,
91
+ ): DeleteOperation => {
92
+ return operation instanceof DeleteByStringKeyOperation
93
+ ? operation.toDeleteOperation()
94
+ : operation;
95
+ };
96
+
97
+ @variant(3)
98
+ export class PutOperation extends Operation {
99
+ @field({ type: Uint8Array })
100
+ data: Uint8Array;
101
+
102
+ constructor(props: { data: Uint8Array }) {
103
+ super();
104
+ this.data = props.data;
105
+ }
106
+ }
107
+
108
+ export const isPutOperation = (
109
+ operation: Operation,
110
+ ): operation is PutOperation | PutWithKeyOperation => {
111
+ return (
112
+ operation instanceof PutOperation ||
113
+ operation instanceof PutWithKeyOperation
114
+ );
115
+ };
116
+
73
117
  /**
74
118
  * Delete a document at a key
75
119
  */
76
- @variant(2)
120
+ @variant(4)
77
121
  export class DeleteOperation extends Operation {
78
122
  @field({ type: indexerTypes.IdKey })
79
123
  key: indexerTypes.IdKey;
@@ -84,6 +128,15 @@ export class DeleteOperation extends Operation {
84
128
  }
85
129
  }
86
130
 
131
+ export const isDeleteOperation = (
132
+ operation: Operation,
133
+ ): operation is DeleteOperation | DeleteByStringKeyOperation => {
134
+ return (
135
+ operation instanceof DeleteOperation ||
136
+ operation instanceof DeleteByStringKeyOperation
137
+ );
138
+ };
139
+
87
140
  export type RemoteQueryOptions<R> = RPCRequestAllOptions<R> & {
88
141
  sync?: boolean;
89
142
  minAge?: number;
@@ -458,8 +511,8 @@ export class DocumentIndex<T, I extends Record<string, any>> extends Program<
458
511
  entry.meta.clock.timestamp.wallTime,
459
512
  modified: entry.meta.clock.timestamp.wallTime,
460
513
  head: entry.hash,
461
- gid: entry.gid,
462
- size: entry.payloadByteLength,
514
+ gid: entry.meta.gid,
515
+ size: entry.payload.byteLength,
463
516
  });
464
517
 
465
518
  const valueToIndex = await this.transformer(value, context);
@@ -576,7 +629,7 @@ export class DocumentIndex<T, I extends Record<string, any>> extends Program<
576
629
  // TODO update changes in index before removing entries from log entry storage
577
630
  }
578
631
  const payloadValue = await head.getPayloadValue();
579
- if (payloadValue instanceof PutOperation) {
632
+ if (isPutOperation(payloadValue)) {
580
633
  return {
581
634
  value: this.valueEncoding.decoder(payloadValue.data),
582
635
  /* size: payloadValue.data.byteLength */