@peerbit/document 15.0.14 → 15.0.16

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/README.md CHANGED
@@ -6,6 +6,31 @@ This store is built on top of the base store. This store allows for type-safe do
6
6
 
7
7
  As of now, go through the [tests](./src//__tests__/index.integration.test.ts) for documentation on how to use the module.
8
8
 
9
+ ## Durable remote delivery
10
+
11
+ Document puts can opt in to waiting for crash-safe persistence on current remote
12
+ replica owners:
13
+
14
+ ```typescript
15
+ await store.docs.putMany(documents, {
16
+ unique: true,
17
+ delivery: {
18
+ reliability: "persisted",
19
+ minAcks: 2,
20
+ timeout: 120_000,
21
+ },
22
+ });
23
+ ```
24
+
25
+ `minAcks` counts distinct remote owners; it does not increase the store's
26
+ configured replication degree. A successful return proves persistence at the
27
+ receipt instant, not permanent custody or Byzantine correctness. The local
28
+ commit happens first, so a later delivery failure reports the exact committed
29
+ hashes in a `PersistedDeliveryError` with `retrySafe === false`.
30
+
31
+ Persisted delivery currently supports `put` and independent, distinct-key
32
+ `putMany` operations. Deletes do not yet support persisted receipts.
33
+
9
34
 
10
35
 
11
36
  Example
@@ -1,3 +1,4 @@
1
+ import type { PublicSignKey } from "@peerbit/crypto";
1
2
  import { Entry } from "@peerbit/log";
2
3
  import { type Operation } from "./operation.js";
3
4
  /**
@@ -11,4 +12,8 @@ export declare const detachCanPerformCallbackProperties: <T extends {
11
12
  entry: Entry<any>;
12
13
  }>(properties: T) => T;
13
14
  export declare const detachEntryPayloadForCallback: <T>(entry: Entry<T>) => Entry<T>;
15
+ /** Detach full, shallow, and replicated entries at document callback edges. */
16
+ export declare const detachEntryForCallback: <T>(entry: T) => T;
17
+ /** Give arbitrary document transforms signer objects they cannot retain/mutate. */
18
+ export declare const detachPublicKeysForCallback: (keys: readonly PublicSignKey[]) => PublicSignKey[];
14
19
  //# sourceMappingURL=callback-detachment.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"callback-detachment.d.ts","sourceRoot":"","sources":["../../src/callback-detachment.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAGN,KAAK,SAAS,EAGd,MAAM,gBAAgB,CAAC;AAExB;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAAI,CAAC,SAAS,SAAS,EAAE,WAAW,CAAC,KAAG,CAgDxE,CAAC;AAkGF,eAAO,MAAM,kCAAkC,GAC9C,CAAC,SAAS;IAAE,SAAS,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;CAAE,EAErD,YAAY,CAAC,KACX,CAUF,CAAC;AASF,eAAO,MAAM,6BAA6B,GAAI,CAAC,EAAE,OAAO,KAAK,CAAC,CAAC,CAAC,KAAG,KAAK,CAAC,CAAC,CA2HzE,CAAC"}
1
+ {"version":3,"file":"callback-detachment.d.ts","sourceRoot":"","sources":["../../src/callback-detachment.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAoB,MAAM,iBAAiB,CAAC;AAEvE,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAGN,KAAK,SAAS,EAGd,MAAM,gBAAgB,CAAC;AA8YxB;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAAI,CAAC,SAAS,SAAS,EAAE,WAAW,CAAC,KAAG,CAgDxE,CAAC;AAkGF,eAAO,MAAM,kCAAkC,GAC9C,CAAC,SAAS;IAAE,SAAS,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;CAAE,EAErD,YAAY,CAAC,KACX,CAUF,CAAC;AA4PF,eAAO,MAAM,6BAA6B,GAAI,CAAC,EAAE,OAAO,KAAK,CAAC,CAAC,CAAC,KAAG,KAAK,CAAC,CAAC,CAMzE,CAAC;AAEF,+EAA+E;AAC/E,eAAO,MAAM,sBAAsB,GAAI,CAAC,EAAE,OAAO,CAAC,KAAG,CASpD,CAAC;AAEF,mFAAmF;AACnF,eAAO,MAAM,2BAA2B,GACvC,MAAM,SAAS,aAAa,EAAE,KAC5B,aAAa,EAA2D,CAAC"}
@@ -1,6 +1,287 @@
1
1
  import * as indexerTypes from "@peerbit/indexer-interface";
2
2
  import { Entry } from "@peerbit/log";
3
3
  import { DeleteByStringKeyOperation, DeleteOperation, PutOperation, PutWithKeyOperation, } from "./operation.js";
4
+ const isPromiseLike = (value) => !!value &&
5
+ (typeof value === "object" || typeof value === "function") &&
6
+ typeof value.then === "function";
7
+ const mapMaybePromise = (value, map) => (isPromiseLike(value) ? value.then(map) : map(value));
8
+ const copyOptionalBytes = (bytes) => bytes == null ? undefined : new Uint8Array(bytes);
9
+ const preserveArrayIntegrity = (source, copy) => {
10
+ if (Object.isFrozen(source)) {
11
+ Object.freeze(copy);
12
+ }
13
+ else if (Object.isSealed(source)) {
14
+ Object.seal(copy);
15
+ }
16
+ else if (!Object.isExtensible(source)) {
17
+ Object.preventExtensions(copy);
18
+ }
19
+ return copy;
20
+ };
21
+ const detachArray = (values, detach = (value) => value) => preserveArrayIntegrity(values, values.map(detach));
22
+ const getInheritedPropertyDescriptor = (value, key) => {
23
+ let prototype = Object.getPrototypeOf(value);
24
+ while (prototype) {
25
+ const descriptor = Reflect.getOwnPropertyDescriptor(prototype, key);
26
+ if (descriptor) {
27
+ return descriptor;
28
+ }
29
+ prototype = Object.getPrototypeOf(prototype);
30
+ }
31
+ return undefined;
32
+ };
33
+ /**
34
+ * Clone an object without resolving selected nested values. For normal
35
+ * objects the selected fields become callback-local lazy accessors. The clone
36
+ * receives the source's frozen/sealed/non-extensible state only after those
37
+ * accessors are installed, so a no-touch callback never resolves lazy source
38
+ * fields.
39
+ */
40
+ const cloneWithLazyProperties = (value, factories) => {
41
+ const descriptors = Object.getOwnPropertyDescriptors(value);
42
+ const extensible = Object.isExtensible(value);
43
+ for (const [key, factory] of factories) {
44
+ const ownDescriptor = descriptors[key];
45
+ const descriptor = ownDescriptor ?? getInheritedPropertyDescriptor(value, key);
46
+ let resolved = false;
47
+ let detachedValue;
48
+ const writable = descriptor
49
+ ? (ownDescriptor != null || extensible) &&
50
+ ("value" in descriptor
51
+ ? descriptor.writable !== false
52
+ : descriptor.set != null)
53
+ : extensible;
54
+ descriptors[key] = {
55
+ configurable: descriptor?.configurable ?? true,
56
+ enumerable: descriptor?.enumerable ?? true,
57
+ get() {
58
+ if (!resolved) {
59
+ detachedValue = factory();
60
+ resolved = true;
61
+ }
62
+ return detachedValue;
63
+ },
64
+ ...(writable
65
+ ? {
66
+ set(nextValue) {
67
+ detachedValue = nextValue;
68
+ resolved = true;
69
+ },
70
+ }
71
+ : {}),
72
+ };
73
+ }
74
+ const clone = Object.create(Object.getPrototypeOf(value), descriptors);
75
+ if (Object.isFrozen(value)) {
76
+ Object.freeze(clone);
77
+ }
78
+ else if (Object.isSealed(value)) {
79
+ Object.seal(clone);
80
+ }
81
+ else if (!Object.isExtensible(value)) {
82
+ Object.preventExtensions(clone);
83
+ }
84
+ return clone;
85
+ };
86
+ const addOwnByteFactories = (value, factories) => {
87
+ const descriptors = Object.getOwnPropertyDescriptors(value);
88
+ for (const key of Reflect.ownKeys(descriptors)) {
89
+ const descriptor = descriptors[key];
90
+ if (descriptor && "value" in descriptor) {
91
+ const bytes = descriptor.value;
92
+ if (bytes instanceof Uint8Array) {
93
+ factories.set(key, () => new Uint8Array(bytes));
94
+ }
95
+ }
96
+ }
97
+ };
98
+ const addOwnArrayFactories = (value, factories) => {
99
+ const descriptors = Object.getOwnPropertyDescriptors(value);
100
+ for (const key of Reflect.ownKeys(descriptors)) {
101
+ const descriptor = descriptors[key];
102
+ if (descriptor &&
103
+ "value" in descriptor &&
104
+ Array.isArray(descriptor.value)) {
105
+ const array = descriptor.value;
106
+ factories.set(key, () => detachArray(array, (item) => item instanceof Uint8Array ? new Uint8Array(item) : item));
107
+ }
108
+ }
109
+ };
110
+ const detachedCallbackEntryLikes = new WeakSet();
111
+ const createEntryDetachmentContext = () => {
112
+ let metadata;
113
+ let clocks;
114
+ let timestamps;
115
+ let signatures;
116
+ let publicKeys;
117
+ let entryLikes;
118
+ let arrays;
119
+ const detachValues = (values, detach = (value) => value) => {
120
+ const cached = arrays?.get(values);
121
+ if (cached) {
122
+ return cached;
123
+ }
124
+ const clone = detachArray(values, detach);
125
+ (arrays ??= new WeakMap()).set(values, clone);
126
+ return clone;
127
+ };
128
+ const detachTimestamp = (value) => {
129
+ if (!value || typeof value !== "object") {
130
+ return value;
131
+ }
132
+ const cached = timestamps?.get(value);
133
+ if (cached) {
134
+ return cached;
135
+ }
136
+ const factories = new Map();
137
+ addOwnByteFactories(value, factories);
138
+ const clone = cloneWithLazyProperties(value, factories);
139
+ (timestamps ??= new WeakMap()).set(value, clone);
140
+ return clone;
141
+ };
142
+ const detachClock = (value) => {
143
+ if (!value || typeof value !== "object") {
144
+ return value;
145
+ }
146
+ const cached = clocks?.get(value);
147
+ if (cached) {
148
+ return cached;
149
+ }
150
+ const factories = new Map();
151
+ addOwnByteFactories(value, factories);
152
+ if (Reflect.has(value, "id") && !factories.has("id")) {
153
+ factories.set("id", () => copyOptionalBytes(Reflect.get(value, "id", value)));
154
+ }
155
+ if (Reflect.has(value, "timestamp")) {
156
+ factories.set("timestamp", () => detachTimestamp(Reflect.get(value, "timestamp", value)));
157
+ }
158
+ const clone = cloneWithLazyProperties(value, factories);
159
+ (clocks ??= new WeakMap()).set(value, clone);
160
+ return clone;
161
+ };
162
+ const detachMeta = (value) => {
163
+ if (!value || typeof value !== "object") {
164
+ return value;
165
+ }
166
+ const cached = metadata?.get(value);
167
+ if (cached) {
168
+ return cached;
169
+ }
170
+ const factories = new Map();
171
+ addOwnByteFactories(value, factories);
172
+ if (Reflect.has(value, "data") && !factories.has("data")) {
173
+ factories.set("data", () => copyOptionalBytes(Reflect.get(value, "data", value)));
174
+ }
175
+ if (Reflect.has(value, "clock")) {
176
+ factories.set("clock", () => detachClock(Reflect.get(value, "clock", value)));
177
+ }
178
+ if (Reflect.has(value, "next")) {
179
+ factories.set("next", () => {
180
+ const next = Reflect.get(value, "next", value);
181
+ return Array.isArray(next) ? detachValues(next) : next;
182
+ });
183
+ }
184
+ const clone = cloneWithLazyProperties(value, factories);
185
+ (metadata ??= new WeakMap()).set(value, clone);
186
+ return clone;
187
+ };
188
+ const detachPublicKey = (value) => {
189
+ if (!value || typeof value !== "object") {
190
+ return value;
191
+ }
192
+ const cached = publicKeys?.get(value);
193
+ if (cached) {
194
+ return cached;
195
+ }
196
+ const factories = new Map();
197
+ addOwnByteFactories(value, factories);
198
+ const clone = cloneWithLazyProperties(value, factories);
199
+ (publicKeys ??= new WeakMap()).set(value, clone);
200
+ return clone;
201
+ };
202
+ const detachSignature = (value) => {
203
+ if (!value || typeof value !== "object") {
204
+ return value;
205
+ }
206
+ const cached = signatures?.get(value);
207
+ if (cached) {
208
+ return cached;
209
+ }
210
+ const factories = new Map();
211
+ addOwnByteFactories(value, factories);
212
+ if (Reflect.has(value, "publicKey")) {
213
+ factories.set("publicKey", () => detachPublicKey(Reflect.get(value, "publicKey", value)));
214
+ }
215
+ const clone = cloneWithLazyProperties(value, factories);
216
+ (signatures ??= new WeakMap()).set(value, clone);
217
+ return clone;
218
+ };
219
+ const detachSignatures = (values) => detachValues(values, detachSignature);
220
+ const detachPublicKeys = (values) => detachValues(values, detachPublicKey);
221
+ const detachEntryLike = (value) => {
222
+ if (detachedCallbackEntryLikes.has(value)) {
223
+ return value;
224
+ }
225
+ const cached = entryLikes?.get(value);
226
+ if (cached) {
227
+ return cached;
228
+ }
229
+ const factories = new Map();
230
+ addOwnByteFactories(value, factories);
231
+ addOwnArrayFactories(value, factories);
232
+ if (Reflect.has(value, "meta")) {
233
+ factories.set("meta", () => detachMeta(Reflect.get(value, "meta", value)));
234
+ }
235
+ for (const methodName of ["getMetaBytes", "getHashDigestBytes"]) {
236
+ const method = Reflect.get(value, methodName, value);
237
+ if (typeof method === "function") {
238
+ factories.set(methodName, () => (...args) => mapMaybePromise(Reflect.apply(method, value, args), copyOptionalBytes));
239
+ }
240
+ }
241
+ const clone = cloneWithLazyProperties(value, factories);
242
+ (entryLikes ??= new WeakMap()).set(value, clone);
243
+ detachedCallbackEntryLikes.add(clone);
244
+ return clone;
245
+ };
246
+ return {
247
+ detachArray: detachValues,
248
+ detachClock,
249
+ detachEntryLike,
250
+ detachMeta,
251
+ detachPublicKeys,
252
+ detachSignatures,
253
+ };
254
+ };
255
+ const detachPreparedAppendJoinFactsForCallback = (facts, canonicalEntry, callbackEntry, getContext) => {
256
+ const factories = new Map();
257
+ addOwnByteFactories(facts, factories);
258
+ if (Reflect.has(facts, "bytes")) {
259
+ factories.set("bytes", () => copyOptionalBytes(Reflect.get(facts, "bytes", facts)));
260
+ }
261
+ if (Reflect.has(facts, "meta")) {
262
+ factories.set("meta", () => getContext().detachMeta(Reflect.get(facts, "meta", facts)));
263
+ }
264
+ const getShallowEntry = Reflect.get(facts, "getShallowEntry", facts);
265
+ if (typeof getShallowEntry === "function") {
266
+ factories.set("getShallowEntry", () => (...args) => {
267
+ const shallow = Reflect.apply(getShallowEntry, facts, args);
268
+ return shallow && typeof shallow === "object"
269
+ ? getContext().detachEntryLike(shallow)
270
+ : shallow;
271
+ });
272
+ }
273
+ const materializeEntry = Reflect.get(facts, "materializeEntry", facts);
274
+ if (typeof materializeEntry === "function") {
275
+ factories.set("materializeEntry", () => (...args) => mapMaybePromise(Reflect.apply(materializeEntry, facts, args), (materialized) => materialized === canonicalEntry
276
+ ? callbackEntry
277
+ : materialized instanceof Entry
278
+ ? detachEntryPayloadForCallbackWithContext(materialized, getContext)
279
+ : materialized && typeof materialized === "object"
280
+ ? getContext().detachEntryLike(materialized)
281
+ : materialized));
282
+ }
283
+ return cloneWithLazyProperties(facts, factories);
284
+ };
4
285
  /**
5
286
  * Borsh byte fields are input-buffer views. Clone only fields that can expose
6
287
  * verified operation bytes while retaining the operation's exact prototype,
@@ -119,12 +400,12 @@ export const detachCanPerformCallbackProperties = (properties) => {
119
400
  return new Proxy(properties, lazyCallbackHandler);
120
401
  };
121
402
  /**
122
- * Return an Entry view whose public payload accessors cannot expose the
123
- * verified payload buffer to application callbacks. The byte copy is lazy:
124
- * callbacks that only inspect hashes, clocks, or signers allocate nothing.
403
+ * Return an Entry view whose public accessors cannot expose verified payload,
404
+ * metadata, signature, public-key, or hash-digest buffers to application
405
+ * callbacks. Nested copies remain lazy, including metadata byte fields.
125
406
  */
126
407
  const detachedCallbackEntries = new WeakSet();
127
- export const detachEntryPayloadForCallback = (entry) => {
408
+ const detachEntryPayloadForCallbackWithContext = (entry, getContext) => {
128
409
  if (detachedCallbackEntries.has(entry)) {
129
410
  return entry;
130
411
  }
@@ -179,6 +460,19 @@ export const detachEntryPayloadForCallback = (entry) => {
179
460
  if (property === "payload") {
180
461
  return copyPayload(entry.payload);
181
462
  }
463
+ if (property === "meta") {
464
+ return getContext().detachMeta(Reflect.get(target, property, target));
465
+ }
466
+ if (property === "next") {
467
+ const next = Reflect.get(target, property, target);
468
+ return Array.isArray(next) ? getContext().detachArray(next) : next;
469
+ }
470
+ if (property === "signatures") {
471
+ return getContext().detachSignatures(Reflect.get(target, property, target));
472
+ }
473
+ if (property === "publicKeys") {
474
+ return getContext().detachPublicKeys(Reflect.get(target, property, target));
475
+ }
182
476
  if (property === "getPayload" &&
183
477
  typeof entry.getPayload ===
184
478
  "function") {
@@ -187,9 +481,60 @@ export const detachEntryPayloadForCallback = (entry) => {
187
481
  if (property === "getPayloadValue") {
188
482
  return getPayloadValue;
189
483
  }
484
+ if (property === "getMeta") {
485
+ const getMeta = Reflect.get(target, property, target);
486
+ if (typeof getMeta === "function") {
487
+ return (...args) => mapMaybePromise(Reflect.apply(getMeta, target, args), getContext().detachMeta);
488
+ }
489
+ }
490
+ if (property === "getClock") {
491
+ const getClock = Reflect.get(target, property, target);
492
+ if (typeof getClock === "function") {
493
+ return (...args) => mapMaybePromise(Reflect.apply(getClock, target, args), getContext().detachClock);
494
+ }
495
+ }
496
+ if (property === "getNext") {
497
+ const getNext = Reflect.get(target, property, target);
498
+ if (typeof getNext === "function") {
499
+ return (...args) => mapMaybePromise(Reflect.apply(getNext, target, args), (next) => Array.isArray(next) ? getContext().detachArray(next) : next);
500
+ }
501
+ }
502
+ if (property === "getSignatures") {
503
+ const getSignatures = Reflect.get(target, property, target);
504
+ if (typeof getSignatures === "function") {
505
+ return (...args) => mapMaybePromise(Reflect.apply(getSignatures, target, args), getContext().detachSignatures);
506
+ }
507
+ }
508
+ if (property === "getPublicKeys") {
509
+ const getPublicKeys = Reflect.get(target, property, target);
510
+ if (typeof getPublicKeys === "function") {
511
+ return (...args) => mapMaybePromise(Reflect.apply(getPublicKeys, target, args), getContext().detachPublicKeys);
512
+ }
513
+ }
514
+ if (property === "getMetaBytes" || property === "getHashDigestBytes") {
515
+ const getBytes = Reflect.get(target, property, target);
516
+ if (typeof getBytes === "function") {
517
+ return (...args) => mapMaybePromise(Reflect.apply(getBytes, target, args), copyOptionalBytes);
518
+ }
519
+ }
520
+ if (property === "__peerbitNext") {
521
+ const next = Reflect.get(target, property, target);
522
+ return Array.isArray(next) ? getContext().detachArray(next) : next;
523
+ }
190
524
  if (property === "getStorageBytes") {
191
525
  return () => new Uint8Array(entry.getStorageBytes());
192
526
  }
527
+ if (property === "toShallow") {
528
+ const toShallow = Reflect.get(target, property, target);
529
+ if (typeof toShallow === "function") {
530
+ return (...args) => {
531
+ const shallow = Reflect.apply(toShallow, target, args);
532
+ return shallow && typeof shallow === "object"
533
+ ? getContext().detachEntryLike(shallow)
534
+ : shallow;
535
+ };
536
+ }
537
+ }
193
538
  if (property === "valueOf") {
194
539
  return () => callbackEntry;
195
540
  }
@@ -200,11 +545,22 @@ export const detachEntryPayloadForCallback = (entry) => {
200
545
  return callbackEntry;
201
546
  }
202
547
  return (detachedMaterialized ??=
203
- detachEntryPayloadForCallback(materialized));
548
+ detachEntryPayloadForCallbackWithContext(materialized, getContext));
204
549
  };
205
550
  }
206
551
  if (property === "toSignable") {
207
- return () => detachEntryPayloadForCallback(entry.toSignable());
552
+ return () => detachEntryPayloadForCallbackWithContext(entry.toSignable(), getContext);
553
+ }
554
+ if (property === "toPreparedAppendJoinFacts") {
555
+ const toPreparedAppendJoinFacts = Reflect.get(target, property, target);
556
+ if (typeof toPreparedAppendJoinFacts === "function") {
557
+ return (...args) => {
558
+ const facts = Reflect.apply(toPreparedAppendJoinFacts, target, args);
559
+ return facts && typeof facts === "object"
560
+ ? detachPreparedAppendJoinFactsForCallback(facts, target, callbackEntry, getContext)
561
+ : facts;
562
+ };
563
+ }
208
564
  }
209
565
  if (property === "init") {
210
566
  return (properties) => {
@@ -231,4 +587,19 @@ export const detachEntryPayloadForCallback = (entry) => {
231
587
  detachedCallbackEntries.add(callbackEntry);
232
588
  return callbackEntry;
233
589
  };
590
+ export const detachEntryPayloadForCallback = (entry) => {
591
+ let context;
592
+ return detachEntryPayloadForCallbackWithContext(entry, () => (context ??= createEntryDetachmentContext()));
593
+ };
594
+ /** Detach full, shallow, and replicated entries at document callback edges. */
595
+ export const detachEntryForCallback = (entry) => {
596
+ if (!entry || typeof entry !== "object") {
597
+ return entry;
598
+ }
599
+ return (entry instanceof Entry
600
+ ? detachEntryPayloadForCallback(entry)
601
+ : createEntryDetachmentContext().detachEntryLike(entry));
602
+ };
603
+ /** Give arbitrary document transforms signer objects they cannot retain/mutate. */
604
+ export const detachPublicKeysForCallback = (keys) => createEntryDetachmentContext().detachPublicKeys(keys);
234
605
  //# sourceMappingURL=callback-detachment.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"callback-detachment.js","sourceRoot":"","sources":["../../src/callback-detachment.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"callback-detachment.js","sourceRoot":"","sources":["../../src/callback-detachment.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"domain.d.ts","sourceRoot":"","sources":["../../src/domain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"domain.d.ts","sourceRoot":"","sources":["../../src/domain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAExD,OAAO,EACN,KAAK,eAAe,EAGpB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,SAAS,EACd,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,KAAK,SAAS,EAAkB,MAAM,gBAAgB,CAAC;AAChE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAIjD,KAAK,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AACpE,KAAK,MAAM,CAAC,CAAC,IACZ,CAAC,SAAS,SAAS,CAAC,GAAG,EAAE,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAE5E,KAAK,SAAS,CACb,CAAC,EACD,CAAC,SAAS,iBAAiB,CAAC,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC,EAC9C,CAAC,SAAS,KAAK,GAAG,KAAK,GAAG,CAAC,SAAS,iBAAiB,CAAC,GAAG,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,GACnE,CAAC,GACD,KAAK,IACL;IAAE,GAAG,EAAE,SAAS,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAAC,KAAK,EAAE,aAAa,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAA;CAAE,CAAC;AAEzE,KAAK,SAAS,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK,IAAI;IACzC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;IACxB,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK,IAAI,iBAAiB,CAC5E,SAAS,CAAC,CAAC,CAAC,EACZ,SAAS,EACT,CAAC,CACD,GAAG;IACH,sBAAsB,EAAE,CAAC,OAAO,EAAE;QACjC,KAAK,EAAE,KAAK,EAAE,CAAC;QACf,IAAI,EAAE,IAAI,EAAE,CAAC;KACb,KAAK,OAAO,CAAC;CACd,CAAC;AAEF,KAAK,SAAS,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK,IAAI;IACzC,SAAS,CAAC,EAAE,CACX,KAAK,EAAE,YAAY,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,KACvD,cAAc,CAAC,CAAC,CAAC,CAAC;CACvB,CAAC;AACF,KAAK,SAAS,CAAC,CAAC,EAAE,CAAC,SAAS,KAAK,GAAG,KAAK,IAAI;IAC5C,SAAS,CAAC,EAAE,CACX,KAAK,EAAE,CAAC,GAAG,SAAS,EACpB,KAAK,EAAE,YAAY,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,KACvD,cAAc,CAAC,CAAC,CAAC,CAAC;CACvB,CAAC;AAEF,KAAK,UAAU,CACd,CAAC,SAAS,KAAK,GAAG,KAAK,EACvB,EAAE,SAAS,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,IAChC;IACH,UAAU,EAAE,CAAC,CAAC;IACd,sBAAsB,EAAE,CAAC,OAAO,EAAE;QACjC,KAAK,EAAE,KAAK,EAAE,CAAC;QACf,IAAI,EAAE,IAAI,EAAE,CAAC;KACb,KAAK,OAAO,CAAC;IACd,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC9B,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAE9C,eAAO,MAAM,gCAAgC,GAC5C,CAAC,SAAS,KAAK,GAAG,KAAK,EACvB,EAAE,SAAS,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAClC,YAAY;IACb,QAAQ,EAAE,MAAM,MAAM,CAAC,EAAE,CAAC,CAAC;IAC3B,UAAU,EAAE,CAAC,CAAC;IACd,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC9B,KAAG,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAYhD,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAC/B,CAAC,SAAS,KAAK,GAAG,KAAK,EAAE,EAAE,SAAS,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAC5D,MAAM,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,KACrB,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAoE/C,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { Entry } from "@peerbit/log";
2
2
  import { logger as loggerFn } from "@peerbit/logger";
3
3
  import { MAX_U32, MAX_U64, } from "@peerbit/shared-log";
4
- import { detachEntryPayloadForCallback } from "./callback-detachment.js";
4
+ import { detachEntryForCallback } from "./callback-detachment.js";
5
5
  import { isPutOperation } from "./operation.js";
6
6
  const logger = loggerFn("peerbit:program:document:domain");
7
7
  export const createDocumentDomainFromProperty = (properties) => {
@@ -17,7 +17,7 @@ export const createDocumentDomainFromProperty = (properties) => {
17
17
  };
18
18
  export const createDocumentDomain = (args) => (db) => {
19
19
  let maxValue = args.resolution === "u32" ? MAX_U32 : MAX_U64;
20
- const detachEntry = (entry) => entry instanceof Entry ? detachEntryPayloadForCallback(entry) : entry;
20
+ const detachEntry = (entry) => detachEntryForCallback(entry);
21
21
  let fromEntry = args.fromEntry
22
22
  ? (entry) => args.fromEntry(detachEntry(entry))
23
23
  : async (entry) => {
@@ -1 +1 @@
1
- {"version":3,"file":"domain.js","sourceRoot":"","sources":["../../src/domain.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAqB,MAAM,cAAc,CAAC;AACxD,OAAO,EAAE,MAAM,IAAI,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAEN,OAAO,EACP,OAAO,GAIP,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,6BAA6B,EAAE,MAAM,0BAA0B,CAAC;AACzE,OAAO,EAAkB,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGhE,MAAM,MAAM,GAAG,QAAQ,CAAC,iCAAiC,CAAC,CAAC;AAsD3D,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAG9C,UAID,EAAkD,EAAE;IACpD,MAAM,YAAY,GAAG,CAAC,MAAuB,EAAqB,EAAE,CACnE,CAAC,UAAU,CAAC,UAAU,KAAK,KAAK;QAC/B,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAsB,CAAC;IACzC,OAAO,oBAAoB,CAAC;QAC3B,UAAU,EAAE,UAAU,CAAC,UAAU;QACjC,sBAAsB,EAAE,CAAC,OAAO,EAAE,EAAE,CACnC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,QAAQ;QAChD,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,KAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC/D,oBAAoB,EAAE,UAAU,CAAC,oBAAoB;KACrD,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAChC,CACC,IAAuB,EAC0B,EAAE,CACpD,CAAC,EAAM,EAAE,EAAE;IACV,IAAI,QAAQ,GAAG,IAAI,CAAC,UAAU,KAAK,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;IAC7D,MAAM,WAAW,GAAG,CACnB,KAA6D,EAC5D,EAAE,CACH,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,6BAA6B,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACvE,IAAI,SAAS,GAAI,IAA8B,CAAC,SAAS;QACxD,CAAC,CAAC,CAAC,KAA6D,EAAE,EAAE,CACjE,IAA8B,CAAC,SAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAChE,CAAC,CAAC,KAAK,EACL,KAA6D,EAC5D,EAAE;YACH,MAAM,IAAI,GAAG,MAAM,CAClB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CACjE,EAAE,eAAe,EAAE,CAAC;YAErB,IAAI,QAAQ,GAA2B,SAAS,CAAC;YACjD,IAAI,CAAC,IAAI,EAAE,CAAC;gBACX,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;YAChC,CAAC;iBAAM,IAAI,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;gBACjC,QAAQ,GAAG,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CACxC,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CACzB,CAAC;YACH,CAAC;YACD,OAAQ,IAA4B,CAAC,SAAU,CAC9C,QAAQ,EACR,WAAW,CAAC,KAAK,CAAC,CACY,CAAC;QACjC,CAAC,CAAC;IACJ,OAAO;QACN,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE,IAAI,CAAC,UAAwB;QACzC,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;QACnD,QAAQ,CAAC,IAAI;YACZ,IAAI,CAAC,IAAI,EAAE,CAAC;gBACX,OAAO;oBACN,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS;oBACtC,MAAM,EAAE,QAAsC;iBAC9C,CAAC;YACH,CAAC;YACD,OAAO;gBACN,MAAM,EAAE,IAAI,CAAC,IAAI;gBACjB,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,IAAI,CAA+B;aAC3D,CAAC;QACH,CAAC;QACD,SAAS;QACT,QAAQ,EACP,IAAI,CAAC,oBAAoB,IAAI,IAAI;YAChC,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;gBACf,IACC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;oBACzC,IAAI,CAAC,oBAAqB,EACzB,CAAC;oBACF,OAAO,IAAI,CAAC;gBACb,CAAC;gBACD,IACC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;oBACzC,IAAI,CAAC,oBAAqB,EACzB,CAAC;oBACF,OAAO,IAAI,CAAC;gBACb,CAAC;gBACD,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;oBACzB,OAAO,IAAI,CAAC;gBACb,CAAC;gBACD,OAAO,KAAK,CAAC;YACd,CAAC;KACJ,CAAC;AACH,CAAC,CAAC"}
1
+ {"version":3,"file":"domain.js","sourceRoot":"","sources":["../../src/domain.ts"],"names":[],"mappings":"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"}
@@ -139,6 +139,7 @@ export declare class Documents<T, I extends Record<string, any> = T extends Reco
139
139
  private isNativeMode;
140
140
  private createDocumentBackend;
141
141
  private detachDomainEntryCallback;
142
+ private detachTrimEntryCallback;
142
143
  private createNativeDocumentBackendContext;
143
144
  private nativeModeError;
144
145
  private assertNativeModeOpenOptions;
@@ -260,6 +261,8 @@ export declare class Documents<T, I extends Record<string, any> = T extends Reco
260
261
  private preparePut;
261
262
  private preparePlainPut;
262
263
  put(doc: T, options?: DocumentPutOptions): Promise<DocumentPutResult>;
264
+ private deliverPersistedDocumentEntries;
265
+ private deliverPersistedDocumentAppendCommits;
263
266
  private putCompatDocumentBackend;
264
267
  putMany(docs: T[], options?: DocumentPutOptions): Promise<DocumentPutManyResult>;
265
268
  private putManyCompatDocumentBackend;
@@ -270,6 +273,7 @@ export declare class Documents<T, I extends Record<string, any> = T extends Reco
270
273
  private createPlainPutCommitPlan;
271
274
  private commitPlainPutPlan;
272
275
  private commitNativeDocumentAppend;
276
+ private commitNativeDocumentAppendWithEvidence;
273
277
  private createNativeCheckedDocumentAppendCommitFacts;
274
278
  private assertNativeModeDocumentAppendCommit;
275
279
  private toNativeBackboneDocumentIndexCommitInput;
@@ -277,6 +281,7 @@ export declare class Documents<T, I extends Record<string, any> = T extends Reco
277
281
  private createNativeBackboneDocumentIndexAppendFactsPreparer;
278
282
  private commitNativeDocumentAppendPayloadFallback;
279
283
  private commitNativeDocumentAppendMany;
284
+ private commitNativeDocumentAppendManyWithEvidence;
280
285
  private prepareNativeBackboneDocumentIndexCommitBatch;
281
286
  private createDocumentAppendCommitFacts;
282
287
  private createDocumentAppendCommitFactsWithLazyContext;
@@ -286,6 +291,8 @@ export declare class Documents<T, I extends Record<string, any> = T extends Reco
286
291
  private hasDocumentChangeConsumers;
287
292
  private dispatchDocumentChangeIfObserved;
288
293
  private nextFromIndexedContext;
294
+ private finishPreparedPlainPutCommit;
295
+ private finishPreparedPlainPutManyCommit;
289
296
  private handlePreparedPlainPutCommit;
290
297
  private tryHandlePreparedPlainPutCommitRemovedFromHeads;
291
298
  private tryHandlePreparedPlainPutCommitRemovedHashesFromHeads;