@interop/was-react 0.13.1 → 0.14.0
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 +19 -18
- package/dist/auth/walletRequestTypes.d.ts +30 -47
- package/dist/auth/walletRequestTypes.d.ts.map +1 -1
- package/dist/config.d.ts +9 -9
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +0 -0
- package/dist/config.js.map +1 -1
- package/dist/identity/seedCredential.d.ts +15 -13
- package/dist/identity/seedCredential.d.ts.map +1 -1
- package/dist/identity/seedCredential.js +15 -16
- package/dist/identity/seedCredential.js.map +1 -1
- package/dist/identity/seedStore.d.ts.map +1 -1
- package/dist/identity/seedStore.js +4 -3
- package/dist/identity/seedStore.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/react/documentApp.d.ts +5 -5
- package/dist/react/documentApp.d.ts.map +1 -1
- package/dist/react/documentApp.js +14 -17
- package/dist/react/documentApp.js.map +1 -1
- package/dist/session/authStore.d.ts +4 -3
- package/dist/session/authStore.d.ts.map +1 -1
- package/dist/session/authStore.js +89 -55
- package/dist/session/authStore.js.map +1 -1
- package/dist/storage/adopt.d.ts +6 -5
- package/dist/storage/adopt.d.ts.map +1 -1
- package/dist/storage/adopt.js +22 -10
- package/dist/storage/adopt.js.map +1 -1
- package/dist/storage/entityStore.d.ts +25 -6
- package/dist/storage/entityStore.d.ts.map +1 -1
- package/dist/storage/entityStore.js +16 -7
- package/dist/storage/entityStore.js.map +1 -1
- package/dist/storage/localStore.d.ts.map +1 -1
- package/dist/storage/localStore.js +51 -61
- package/dist/storage/localStore.js.map +1 -1
- package/dist/storage/sharedCollectionReader.d.ts.map +1 -1
- package/dist/storage/sharedCollectionReader.js +6 -7
- package/dist/storage/sharedCollectionReader.js.map +1 -1
- package/dist/storage/storageManager.d.ts +30 -0
- package/dist/storage/storageManager.d.ts.map +1 -1
- package/dist/storage/storageManager.js +46 -0
- package/dist/storage/storageManager.js.map +1 -1
- package/dist/storage/wasRemoteStore.d.ts +6 -7
- package/dist/storage/wasRemoteStore.d.ts.map +1 -1
- package/dist/storage/wasRemoteStore.js +7 -11
- package/dist/storage/wasRemoteStore.js.map +1 -1
- package/dist/storage/wasSync.d.ts +11 -3
- package/dist/storage/wasSync.d.ts.map +1 -1
- package/dist/storage/wasSync.js +21 -7
- package/dist/storage/wasSync.js.map +1 -1
- package/package.json +1 -1
|
@@ -8,6 +8,10 @@
|
|
|
8
8
|
* reads through selectors and applies the app's own comparators/filters; this
|
|
9
9
|
* layer stays domain-agnostic so every entity shares it.
|
|
10
10
|
*
|
|
11
|
+
* The persisted write verbs (`insert` / `update` / `upsert`) stamp the
|
|
12
|
+
* last-write-wins fields themselves through {@link stampLww}, so an app can
|
|
13
|
+
* never degrade conflict resolution by forgetting to.
|
|
14
|
+
*
|
|
11
15
|
* Reactivity note: local writes patch the Map optimistically after the localStore
|
|
12
16
|
* write resolves. Pulled remote changes are applied per-doc by the sync layer
|
|
13
17
|
* through `patch` / `drop` (no whole-collection re-hydrate), keeping multi-device
|
|
@@ -18,7 +22,7 @@
|
|
|
18
22
|
* local writes stay immediate so a single edit is snappy.
|
|
19
23
|
*/
|
|
20
24
|
import { create } from 'zustand';
|
|
21
|
-
import { requireStore, requireRemoteStore } from './storageManager.js';
|
|
25
|
+
import { requireStore, requireRemoteStore, stampLww } from './storageManager.js';
|
|
22
26
|
import { lwwFields, remotePayloadWins } from '../sync/lww.js';
|
|
23
27
|
/**
|
|
24
28
|
* Builds a zustand hook for the collection whose localStore key is `collectionKey`.
|
|
@@ -111,16 +115,21 @@ export function createEntityStore(collectionKey) {
|
|
|
111
115
|
set({ byId: new Map(docs.map(d => [d.id, d])) });
|
|
112
116
|
},
|
|
113
117
|
insert: async (doc) => {
|
|
114
|
-
|
|
115
|
-
|
|
118
|
+
// Stamp once, then persist and commit the SAME object, so the
|
|
119
|
+
// optimistic Map entry is byte-for-byte what the replica holds.
|
|
120
|
+
const stamped = stampLww(doc);
|
|
121
|
+
await requireStore().insertEntity(collectionKey, stamped);
|
|
122
|
+
commitDoc(stamped);
|
|
116
123
|
},
|
|
117
124
|
update: async (doc) => {
|
|
118
|
-
|
|
119
|
-
|
|
125
|
+
const stamped = stampLww(doc);
|
|
126
|
+
await requireStore().updateEntity(collectionKey, stamped);
|
|
127
|
+
commitDoc(stamped);
|
|
120
128
|
},
|
|
121
129
|
upsert: async (doc) => {
|
|
122
|
-
|
|
123
|
-
|
|
130
|
+
const stamped = stampLww(doc);
|
|
131
|
+
await requireStore().upsertEntity(collectionKey, stamped);
|
|
132
|
+
commitDoc(stamped);
|
|
124
133
|
},
|
|
125
134
|
remove: async (uuid) => {
|
|
126
135
|
await requireStore().deleteEntity(collectionKey, uuid);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entityStore.js","sourceRoot":"","sources":["../../src/storage/entityStore.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH
|
|
1
|
+
{"version":3,"file":"entityStore.js","sourceRoot":"","sources":["../../src/storage/entityStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"localStore.d.ts","sourceRoot":"","sources":["../../src/storage/localStore.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,EAGL,KAAK,YAAY,
|
|
1
|
+
{"version":3,"file":"localStore.d.ts","sourceRoot":"","sources":["../../src/storage/localStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
*/
|
|
27
27
|
import { createRxDatabase, removeRxDatabase } from 'rxdb/plugins/core';
|
|
28
28
|
import { getRxStorageDexie } from 'rxdb/plugins/storage-dexie';
|
|
29
|
-
import { DEFAULT_DB_NAME, validateCollections, validateSharedCollections } from '../config.js';
|
|
29
|
+
import { DEFAULT_DB_NAME, isPublicCollection, validateCollections, validateSharedCollections } from '../config.js';
|
|
30
30
|
import { DescriptorRefreshPolicy } from '@interop/wallet-core/descriptors';
|
|
31
31
|
import { syncedDocSchema, createDocCipher, createPlaintextDocCodec, createUnprovisionedDocCipher, hasKeyEpochs, isUnknownEpochError, makeLwwConflictHandler, remotePayloadWins } from '../sync/index.js';
|
|
32
32
|
/**
|
|
@@ -152,10 +152,11 @@ export class LocalStore {
|
|
|
152
152
|
// Build every collection's cipher concurrently: each private one runs real
|
|
153
153
|
// asymmetric crypto (an ECDH unwrap of the epoch secret) on the boot
|
|
154
154
|
// critical path, and no collection's cipher depends on another's.
|
|
155
|
-
await Promise.all(collections.map(async (
|
|
155
|
+
await Promise.all(collections.map(async (collection) => {
|
|
156
|
+
const { key, id } = collection;
|
|
156
157
|
// A public collection is stored plaintext: no key derivation, no EDV
|
|
157
158
|
// cipher -- just the pass-through codec behind the same seam.
|
|
158
|
-
if (
|
|
159
|
+
if (isPublicCollection(collection)) {
|
|
159
160
|
ciphers[key] = createPlaintextDocCodec({ collectionId: id });
|
|
160
161
|
return;
|
|
161
162
|
}
|
|
@@ -336,7 +337,7 @@ export class LocalStore {
|
|
|
336
337
|
*/
|
|
337
338
|
async rebuildCipher({ key, encryption }) {
|
|
338
339
|
const config = this.collectionConfig(key);
|
|
339
|
-
if (config
|
|
340
|
+
if (isPublicCollection(config)) {
|
|
340
341
|
return;
|
|
341
342
|
}
|
|
342
343
|
this.#ciphers[key] = await createDocCipher({
|
|
@@ -373,7 +374,7 @@ export class LocalStore {
|
|
|
373
374
|
return false;
|
|
374
375
|
}
|
|
375
376
|
const config = this.collectionConfig(key);
|
|
376
|
-
if (config
|
|
377
|
+
if (isPublicCollection(config) || !hasKeyEpochs(encryption)) {
|
|
377
378
|
return false;
|
|
378
379
|
}
|
|
379
380
|
if (descriptorsEqual(this.#descriptors[key], encryption)) {
|
|
@@ -434,24 +435,19 @@ export class LocalStore {
|
|
|
434
435
|
async updateEntity(key, payload) {
|
|
435
436
|
const index = await this.#ensureIndex(key);
|
|
436
437
|
const envelopeId = index.get(payload.id);
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
//
|
|
442
|
-
//
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
await this.insertEntity(key, payload);
|
|
451
|
-
return;
|
|
452
|
-
}
|
|
453
|
-
const current = doc.toMutableJSON().data;
|
|
454
|
-
if (current === undefined) {
|
|
438
|
+
const doc = envelopeId
|
|
439
|
+
? await this.#collection(key).findOne(envelopeId).exec()
|
|
440
|
+
: null;
|
|
441
|
+
const current = doc ? doc.toMutableJSON().data : undefined;
|
|
442
|
+
// The entity's envelope may be gone -- unknown to the index (another device
|
|
443
|
+
// deleted it and the tombstone was pulled, which forgets the index entry),
|
|
444
|
+
// its row otherwise removed, or the row left without ciphertext. Rather than
|
|
445
|
+
// throwing (which loses the edit), forget any stale index entry (deleting a
|
|
446
|
+
// missing key is a no-op) and resurrect the entity as a fresh create. This
|
|
447
|
+
// matches the mutable-head LWW rule the conflict handler already applies: a
|
|
448
|
+
// live local edit beats a remote tombstone, so re-asserting the payload
|
|
449
|
+
// under a new envelope is correct.
|
|
450
|
+
if (!envelopeId || !doc || current === undefined) {
|
|
455
451
|
index.delete(payload.id);
|
|
456
452
|
await this.insertEntity(key, payload);
|
|
457
453
|
return;
|
|
@@ -535,28 +531,38 @@ export class LocalStore {
|
|
|
535
531
|
*/
|
|
536
532
|
async listEntities(key) {
|
|
537
533
|
const index = new Map();
|
|
538
|
-
const
|
|
534
|
+
const decoded = await this.#decodeAll(key);
|
|
535
|
+
const payloads = [];
|
|
536
|
+
for (const entry of decoded) {
|
|
537
|
+
index.set(entry.payload.id, entry.envelopeId);
|
|
538
|
+
payloads.push(entry.payload);
|
|
539
|
+
}
|
|
540
|
+
this.#index[key] = index;
|
|
541
|
+
return payloads;
|
|
542
|
+
}
|
|
543
|
+
/**
|
|
544
|
+
* Decrypts every live row of a collection, dropping rows that carry no
|
|
545
|
+
* ciphertext. Each result keeps its RxDocument alongside the plaintext, so a
|
|
546
|
+
* caller that goes on to remove a row (e.g. the singleton reconciler) needs no
|
|
547
|
+
* second lookup.
|
|
548
|
+
*
|
|
549
|
+
* @param key {string}
|
|
550
|
+
* @returns {Promise<Array<{envelopeId: string, payload: T, row: RxDocument<SyncedDoc>}>>}
|
|
551
|
+
*/
|
|
552
|
+
async #decodeAll(key) {
|
|
553
|
+
const rows = await this.#collection(key).find().exec();
|
|
539
554
|
// Decrypt every row concurrently (the unlock hot path): the store is keyed
|
|
540
555
|
// by logical uuid, so payload order does not matter and serializing the
|
|
541
556
|
// per-row WebCrypto work would only add latency.
|
|
542
|
-
const decoded = await Promise.all(
|
|
543
|
-
const { id: envelopeId, data } =
|
|
557
|
+
const decoded = await Promise.all(rows.map(async (row) => {
|
|
558
|
+
const { id: envelopeId, data } = row.toMutableJSON();
|
|
544
559
|
if (data === undefined) {
|
|
545
560
|
return null;
|
|
546
561
|
}
|
|
547
562
|
const payload = (await this.#decryptWithRefresh(key, data));
|
|
548
|
-
return { envelopeId, payload };
|
|
563
|
+
return { envelopeId, payload, row };
|
|
549
564
|
}));
|
|
550
|
-
|
|
551
|
-
for (const entry of decoded) {
|
|
552
|
-
if (entry === null) {
|
|
553
|
-
continue;
|
|
554
|
-
}
|
|
555
|
-
index.set(entry.payload.id, entry.envelopeId);
|
|
556
|
-
payloads.push(entry.payload);
|
|
557
|
-
}
|
|
558
|
-
this.#index[key] = index;
|
|
559
|
-
return payloads;
|
|
565
|
+
return decoded.filter(entry => entry !== null);
|
|
560
566
|
}
|
|
561
567
|
/**
|
|
562
568
|
* Hydrates a singleton collection (at most one logical entity, e.g. an app's
|
|
@@ -572,21 +578,9 @@ export class LocalStore {
|
|
|
572
578
|
* @returns {Promise<T | null>}
|
|
573
579
|
*/
|
|
574
580
|
async hydrateSingleton(key) {
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
// winner is picked from the whole decoded set afterwards, so payload order
|
|
579
|
-
// does not matter and serializing the per-row WebCrypto work would only add
|
|
580
|
-
// latency. The loser tombstoning below stays serial.
|
|
581
|
-
const decrypted = await Promise.all(rows.map(async (row) => {
|
|
582
|
-
const { id: envelopeId, data } = row.toMutableJSON();
|
|
583
|
-
if (data === undefined) {
|
|
584
|
-
return null;
|
|
585
|
-
}
|
|
586
|
-
const payload = (await this.#decryptWithRefresh(key, data));
|
|
587
|
-
return { envelopeId, payload };
|
|
588
|
-
}));
|
|
589
|
-
const decoded = decrypted.filter(entry => entry !== null);
|
|
581
|
+
// The winner is picked from the whole decoded set afterwards, so payload
|
|
582
|
+
// order does not matter.
|
|
583
|
+
const decoded = await this.#decodeAll(key);
|
|
590
584
|
const index = new Map();
|
|
591
585
|
this.#index[key] = index;
|
|
592
586
|
if (decoded.length === 0) {
|
|
@@ -601,15 +595,11 @@ export class LocalStore {
|
|
|
601
595
|
winner = entry;
|
|
602
596
|
}
|
|
603
597
|
}
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
if (doc) {
|
|
610
|
-
await doc.remove();
|
|
611
|
-
}
|
|
612
|
-
}
|
|
598
|
+
// The losers are tombstoned through the RxDocuments already in hand,
|
|
599
|
+
// concurrently: no re-lookup, and the removals are independent.
|
|
600
|
+
await Promise.all(decoded
|
|
601
|
+
.filter(entry => entry.envelopeId !== winner.envelopeId)
|
|
602
|
+
.map(async (entry) => await entry.row.remove()));
|
|
613
603
|
index.set(winner.payload.id, winner.envelopeId);
|
|
614
604
|
return winner.payload;
|
|
615
605
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"localStore.js","sourceRoot":"","sources":["../../src/storage/localStore.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"localStore.js","sourceRoot":"","sources":["../../src/storage/localStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sharedCollectionReader.d.ts","sourceRoot":"","sources":["../../src/storage/sharedCollectionReader.ts"],"names":[],"mappings":"AAuCA,OAAO,KAAK,EACV,gBAAgB,EAChB,YAAY,EACb,MAAM,8BAA8B,CAAA;AAMrC,OAAO,EAIL,KAAK,IAAI,EACV,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAEL,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAA;AAE5B;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,MAAM,CAAA;AAU3C;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,IAAI,CAAA;CACX;AAED;;;;;GAKG;AACH,qBAAa,gCAAiC,SAAQ,KAAK;gBAC7C,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;CAI3D;AAED,qBAAa,sBAAsB;;IACjC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAgB7B,OAAO;IAiBP;;;;;;;;;;;;;;;;;OAiBG;WACU,IAAI,CAAC,EAChB,WAAW,EACX,eAAe,EACf,WAAW,EACX,YAAY,EACZ,QAAmC,EACpC,EAAE;QACD,WAAW,EAAE,cAAc,CAAA;QAC3B,eAAe,EAAE,gBAAgB,CAAA;QACjC,WAAW,EAAE,YAAY,CAAA;QACzB,YAAY,EAAE,MAAM,CAAA;QACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;KAClB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAgBnC;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACG,IAAI,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"sharedCollectionReader.d.ts","sourceRoot":"","sources":["../../src/storage/sharedCollectionReader.ts"],"names":[],"mappings":"AAuCA,OAAO,KAAK,EACV,gBAAgB,EAChB,YAAY,EACb,MAAM,8BAA8B,CAAA;AAMrC,OAAO,EAIL,KAAK,IAAI,EACV,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAEL,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAA;AAE5B;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,MAAM,CAAA;AAU3C;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,IAAI,CAAA;CACX;AAED;;;;;GAKG;AACH,qBAAa,gCAAiC,SAAQ,KAAK;gBAC7C,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;CAI3D;AAED,qBAAa,sBAAsB;;IACjC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAgB7B,OAAO;IAiBP;;;;;;;;;;;;;;;;;OAiBG;WACU,IAAI,CAAC,EAChB,WAAW,EACX,eAAe,EACf,WAAW,EACX,YAAY,EACZ,QAAmC,EACpC,EAAE;QACD,WAAW,EAAE,cAAc,CAAA;QAC3B,eAAe,EAAE,gBAAgB,CAAA;QACjC,WAAW,EAAE,YAAY,CAAA;QACzB,YAAY,EAAE,MAAM,CAAA;QACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;KAClB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAgBnC;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACG,IAAI,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IA+EvC;;;;;;;;OAQG;IACG,GAAG,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC;CA+EzD"}
|
|
@@ -199,15 +199,14 @@ export class SharedCollectionReader {
|
|
|
199
199
|
async #listViaResources(collection) {
|
|
200
200
|
const listing = await collection.list();
|
|
201
201
|
const items = listing?.items ?? [];
|
|
202
|
-
|
|
203
|
-
|
|
202
|
+
// Fetch and decrypt the resources concurrently: each is an independent
|
|
203
|
+
// request plus unwrap, and `Promise.all` keeps the listing order.
|
|
204
|
+
const resources = await Promise.all(items.map(async (item) => {
|
|
204
205
|
const body = (await collection.get(item.id));
|
|
205
206
|
const decrypted = await this.#decryptBody({ id: item.id, body });
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
}
|
|
210
|
-
return resources;
|
|
207
|
+
return decrypted === undefined ? null : { id: item.id, data: decrypted };
|
|
208
|
+
}));
|
|
209
|
+
return resources.filter(resource => resource !== null);
|
|
211
210
|
}
|
|
212
211
|
/**
|
|
213
212
|
* Reads and decrypts one resource of the shared collection by its WAS
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sharedCollectionReader.js","sourceRoot":"","sources":["../../src/storage/sharedCollectionReader.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"sharedCollectionReader.js","sourceRoot":"","sources":["../../src/storage/sharedCollectionReader.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { LwwFields } from '../sync/lww.js';
|
|
1
2
|
import type { LocalStore } from './localStore.js';
|
|
2
3
|
import type { WasRemoteStore } from './wasRemoteStore.js';
|
|
3
4
|
/**
|
|
@@ -71,4 +72,33 @@ export declare function clearRemoteStore(): void;
|
|
|
71
72
|
export declare function getWriterId({ storageKeyPrefix }?: {
|
|
72
73
|
storageKeyPrefix?: string;
|
|
73
74
|
}): string;
|
|
75
|
+
/**
|
|
76
|
+
* Installs the session's resolved writer id (called once by the session store,
|
|
77
|
+
* under the app's configured `storageKeyPrefix`, before any replica opens).
|
|
78
|
+
*
|
|
79
|
+
* @param id {string}
|
|
80
|
+
* @returns {void}
|
|
81
|
+
*/
|
|
82
|
+
export declare function setWriterId(id: string): void;
|
|
83
|
+
/**
|
|
84
|
+
* The session's resolved writer id, or throws if it has not been installed
|
|
85
|
+
* yet. Deliberately never falls back to {@link getWriterId}: that would resolve
|
|
86
|
+
* under the DEFAULT key prefix, so an app with a custom `storageKeyPrefix`
|
|
87
|
+
* would silently stamp a second writer id.
|
|
88
|
+
*
|
|
89
|
+
* @returns {string}
|
|
90
|
+
*/
|
|
91
|
+
export declare function requireWriterId(): string;
|
|
92
|
+
/**
|
|
93
|
+
* Stamps a payload with fresh last-write-wins fields: the current instant as
|
|
94
|
+
* `updatedAt` and the session's resolved writer id. Any values the caller
|
|
95
|
+
* supplied are overwritten -- a stamp must describe THIS write, or a hydrated
|
|
96
|
+
* doc's older `updatedAt` would ride a later edit and lose the conflict.
|
|
97
|
+
*
|
|
98
|
+
* @param payload {object}
|
|
99
|
+
* @returns {object} the payload with the LWW fields set
|
|
100
|
+
*/
|
|
101
|
+
export declare function stampLww<T extends {
|
|
102
|
+
id: string;
|
|
103
|
+
}>(payload: T): T & LwwFields;
|
|
74
104
|
//# sourceMappingURL=storageManager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storageManager.d.ts","sourceRoot":"","sources":["../../src/storage/storageManager.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"storageManager.d.ts","sourceRoot":"","sources":["../../src/storage/storageManager.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAKzD;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAErD;AAED;;;;GAIG;AACH,wBAAgB,YAAY,IAAI,UAAU,CAKzC;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,IAAI,OAAO,CAElC;AAED;;;;GAIG;AACH,wBAAgB,eAAe,IAAI,IAAI,CAEtC;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI,CAE1D;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,IAAI,cAAc,CAOnD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,IAAI,OAAO,CAExC;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAEvC;AASD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,WAAW,CAAC,EAC1B,gBAA6C,EAC9C,GAAE;IAAE,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,MAAM,CAe7C;AAID;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAE5C;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAOxC;AAED;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CAAC,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS,CAM5E"}
|
|
@@ -8,6 +8,11 @@
|
|
|
8
8
|
* {@link requireRemoteStore} inside their verbs rather than importing them
|
|
9
9
|
* directly, which keeps this module free of store imports (no cycle) and lets
|
|
10
10
|
* the app own the init/hydrate ordering.
|
|
11
|
+
*
|
|
12
|
+
* It also owns the writer-id concern end to end: {@link getWriterId} resolves
|
|
13
|
+
* the per-install id, {@link setWriterId} installs the session's resolved value,
|
|
14
|
+
* and {@link stampLww} is the one place a payload's last-write-wins fields are
|
|
15
|
+
* minted, so no caller has to remember to stamp.
|
|
11
16
|
*/
|
|
12
17
|
import { uuidv7 } from 'uuidv7';
|
|
13
18
|
import { DEFAULT_STORAGE_KEY_PREFIX } from '../config.js';
|
|
@@ -126,4 +131,45 @@ export function getWriterId({ storageKeyPrefix = DEFAULT_STORAGE_KEY_PREFIX } =
|
|
|
126
131
|
return fallbackWriterId;
|
|
127
132
|
}
|
|
128
133
|
}
|
|
134
|
+
let resolvedWriterId = null;
|
|
135
|
+
/**
|
|
136
|
+
* Installs the session's resolved writer id (called once by the session store,
|
|
137
|
+
* under the app's configured `storageKeyPrefix`, before any replica opens).
|
|
138
|
+
*
|
|
139
|
+
* @param id {string}
|
|
140
|
+
* @returns {void}
|
|
141
|
+
*/
|
|
142
|
+
export function setWriterId(id) {
|
|
143
|
+
resolvedWriterId = id;
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* The session's resolved writer id, or throws if it has not been installed
|
|
147
|
+
* yet. Deliberately never falls back to {@link getWriterId}: that would resolve
|
|
148
|
+
* under the DEFAULT key prefix, so an app with a custom `storageKeyPrefix`
|
|
149
|
+
* would silently stamp a second writer id.
|
|
150
|
+
*
|
|
151
|
+
* @returns {string}
|
|
152
|
+
*/
|
|
153
|
+
export function requireWriterId() {
|
|
154
|
+
if (!resolvedWriterId) {
|
|
155
|
+
throw new Error('Writer id is not resolved; create the session store first.');
|
|
156
|
+
}
|
|
157
|
+
return resolvedWriterId;
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Stamps a payload with fresh last-write-wins fields: the current instant as
|
|
161
|
+
* `updatedAt` and the session's resolved writer id. Any values the caller
|
|
162
|
+
* supplied are overwritten -- a stamp must describe THIS write, or a hydrated
|
|
163
|
+
* doc's older `updatedAt` would ride a later edit and lose the conflict.
|
|
164
|
+
*
|
|
165
|
+
* @param payload {object}
|
|
166
|
+
* @returns {object} the payload with the LWW fields set
|
|
167
|
+
*/
|
|
168
|
+
export function stampLww(payload) {
|
|
169
|
+
return {
|
|
170
|
+
...payload,
|
|
171
|
+
updatedAt: new Date().toISOString(),
|
|
172
|
+
writerId: requireWriterId()
|
|
173
|
+
};
|
|
174
|
+
}
|
|
129
175
|
//# sourceMappingURL=storageManager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storageManager.js","sourceRoot":"","sources":["../../src/storage/storageManager.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH
|
|
1
|
+
{"version":3,"file":"storageManager.js","sourceRoot":"","sources":["../../src/storage/storageManager.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAA;AAKzD,IAAI,UAAU,GAAsB,IAAI,CAAA;AACxC,IAAI,WAAW,GAA0B,IAAI,CAAA;AAE7C;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,KAAiB;IAC7C,UAAU,GAAG,KAAK,CAAA;AACpB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY;IAC1B,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;IAClE,CAAC;IACD,OAAO,UAAU,CAAA;AACnB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,QAAQ;IACtB,OAAO,UAAU,KAAK,IAAI,CAAA;AAC5B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe;IAC7B,UAAU,GAAG,IAAI,CAAA;AACnB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,KAAqB;IAClD,WAAW,GAAG,KAAK,CAAA;AACrB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB;IAChC,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CACb,mEAAmE,CACpE,CAAA;IACH,CAAC;IACD,OAAO,WAAW,CAAA;AACpB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc;IAC5B,OAAO,WAAW,KAAK,IAAI,CAAA;AAC7B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB;IAC9B,WAAW,GAAG,IAAI,CAAA;AACpB,CAAC;AAED;;;;GAIG;AACH,IAAI,gBAAgB,GAAkB,IAAI,CAAA;AAE1C;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,WAAW,CAAC,EAC1B,gBAAgB,GAAG,0BAA0B,KACZ,EAAE;IACnC,MAAM,WAAW,GAAG,GAAG,gBAAgB,UAAU,CAAA;IACjD,MAAM,SAAS,GAAG,GAAG,gBAAgB,UAAU,CAAA;IAC/C,IAAI,CAAC;QACH,IAAI,EAAE,GAAG,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;QAC1C,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,EAAE,GAAG,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,MAAM,EAAE,CAAA;YAChD,YAAY,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;YACrC,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;QACpC,CAAC;QACD,OAAO,EAAE,CAAA;IACX,CAAC;IAAC,MAAM,CAAC;QACP,gBAAgB,KAAK,MAAM,EAAE,CAAA;QAC7B,OAAO,gBAAgB,CAAA;IACzB,CAAC;AACH,CAAC;AAED,IAAI,gBAAgB,GAAkB,IAAI,CAAA;AAE1C;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,EAAU;IACpC,gBAAgB,GAAG,EAAE,CAAA;AACvB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe;IAC7B,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D,CAAA;IACH,CAAC;IACD,OAAO,gBAAgB,CAAA;AACzB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,QAAQ,CAA2B,OAAU;IAC3D,OAAO;QACL,GAAG,OAAO;QACV,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,QAAQ,EAAE,eAAe,EAAE;KAC5B,CAAA;AACH,CAAC"}
|
|
@@ -124,16 +124,15 @@ export declare class WasRemoteStore {
|
|
|
124
124
|
* no-op fallback for servers/wallets that did not provision the roster.
|
|
125
125
|
*
|
|
126
126
|
* @param collectionId {string} the WAS collection id
|
|
127
|
-
* @param
|
|
128
|
-
* collection description, to spend one authenticated GET rather than two:
|
|
129
|
-
* the read-before-PUT guard then turns on the descriptor handed in here
|
|
130
|
-
* instead of re-reading it. `undefined` means "read, and the collection
|
|
131
|
-
* carries no descriptor" -- not "unknown"
|
|
127
|
+
* @param options {object}
|
|
132
128
|
* @param options.encryption {CollectionEncryption | undefined} the
|
|
133
|
-
* already-read descriptor
|
|
129
|
+
* already-read descriptor the caller fetched from the collection
|
|
130
|
+
* description (the bootstrap reads it once and feeds both the cipher
|
|
131
|
+
* rebuild and this guard). `undefined` means "read, and the collection
|
|
132
|
+
* carries no descriptor" -- not "unknown"
|
|
134
133
|
* @returns {Promise<DeclarationResult>}
|
|
135
134
|
*/
|
|
136
|
-
markCollectionEncrypted(collectionId: string,
|
|
135
|
+
markCollectionEncrypted(collectionId: string, { encryption }: {
|
|
137
136
|
encryption: CollectionEncryption | undefined;
|
|
138
137
|
}): Promise<DeclarationResult>;
|
|
139
138
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wasRemoteStore.d.ts","sourceRoot":"","sources":["../../src/storage/wasRemoteStore.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAA;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAE/D,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAA;AAQlF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAEhD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,YAAY,EAAE,MAAM,CAAA;IACpB,EAAE,EAAE,OAAO,CAAA;IACX,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;IACd;;;;;OAKG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;IAClE,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAWD,qBAAa,cAAc;;IACzB,SAAgB,GAAG,EAAE,SAAS,CAAA;IAC9B,SAAgB,SAAS,EAAE,MAAM,CAAA;IACjC,SAAgB,OAAO,EAAE,MAAM,CAAA;IAM/B,OAAO;IAgBP;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,UAAU,CAAC,EAChB,MAAM,EACN,UAAU,EACV,WAAgB,EACjB,EAAE;QACD,MAAM,EAAE,YAAY,CAAA;QACpB,UAAU,EAAE,UAAU,CAAA;QACtB,WAAW,CAAC,EAAE,mBAAmB,EAAE,CAAA;KACpC,GAAG,cAAc;IAkBlB;;;;;;;OAOG;IACH,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS;IAI7D;;;;;;;;;;;OAWG;IACG,wBAAwB,CAC5B,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC;IAmB5C
|
|
1
|
+
{"version":3,"file":"wasRemoteStore.d.ts","sourceRoot":"","sources":["../../src/storage/wasRemoteStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -102,23 +102,19 @@ export class WasRemoteStore {
|
|
|
102
102
|
* no-op fallback for servers/wallets that did not provision the roster.
|
|
103
103
|
*
|
|
104
104
|
* @param collectionId {string} the WAS collection id
|
|
105
|
-
* @param
|
|
106
|
-
* collection description, to spend one authenticated GET rather than two:
|
|
107
|
-
* the read-before-PUT guard then turns on the descriptor handed in here
|
|
108
|
-
* instead of re-reading it. `undefined` means "read, and the collection
|
|
109
|
-
* carries no descriptor" -- not "unknown"
|
|
105
|
+
* @param options {object}
|
|
110
106
|
* @param options.encryption {CollectionEncryption | undefined} the
|
|
111
|
-
* already-read descriptor
|
|
107
|
+
* already-read descriptor the caller fetched from the collection
|
|
108
|
+
* description (the bootstrap reads it once and feeds both the cipher
|
|
109
|
+
* rebuild and this guard). `undefined` means "read, and the collection
|
|
110
|
+
* carries no descriptor" -- not "unknown"
|
|
112
111
|
* @returns {Promise<DeclarationResult>}
|
|
113
112
|
*/
|
|
114
|
-
async markCollectionEncrypted(collectionId,
|
|
113
|
+
async markCollectionEncrypted(collectionId, { encryption }) {
|
|
115
114
|
if (this.#configById.get(collectionId)?.visibility === 'public') {
|
|
116
115
|
return { collectionId, ok: true, skipped: true };
|
|
117
116
|
}
|
|
118
|
-
|
|
119
|
-
? options.encryption
|
|
120
|
-
: await this.readCollectionEncryption(collectionId);
|
|
121
|
-
if (existing) {
|
|
117
|
+
if (encryption) {
|
|
122
118
|
return { collectionId, ok: true, skipped: true };
|
|
123
119
|
}
|
|
124
120
|
return this.#putDescription({
|