@interop/was-client 0.27.2 → 0.28.1
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/dist/edv/EdvCodec.d.ts +5 -4
- package/dist/edv/EdvCodec.d.ts.map +1 -1
- package/dist/edv/EdvCodec.js +16 -7
- package/dist/edv/EdvCodec.js.map +1 -1
- package/dist/edv/docCipher.d.ts +4 -1
- package/dist/edv/docCipher.d.ts.map +1 -1
- package/dist/edv/docCipher.js +4 -1
- package/dist/edv/docCipher.js.map +1 -1
- package/dist/sync/provisioning.d.ts +32 -19
- package/dist/sync/provisioning.d.ts.map +1 -1
- package/dist/sync/provisioning.js +47 -23
- package/dist/sync/provisioning.js.map +1 -1
- package/package.json +1 -1
package/dist/edv/EdvCodec.d.ts
CHANGED
|
@@ -18,10 +18,11 @@ export declare class EdvCodec implements ResourceCodec {
|
|
|
18
18
|
* wallet's own key-agreement key; on a multi-recipient (key-epoch)
|
|
19
19
|
* collection it is the reconstructed `currentEpoch` key pair.
|
|
20
20
|
* @param [options.readKeys] {IKeyAgreementKey[]} the candidate keys a read
|
|
21
|
-
* may decrypt with
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
*
|
|
21
|
+
* may decrypt with: one per epoch this reader can unwrap, plus the reader's
|
|
22
|
+
* own key-agreement key as the last-resort pre-epoch candidate (defaults to
|
|
23
|
+
* just `keyAgreementKey`). A read selects the one whose id matches the
|
|
24
|
+
* stored envelope's recipient, so a resource written under an older epoch
|
|
25
|
+
* -- or before any epoch existed -- still decrypts.
|
|
25
26
|
* @param [options.writeEpoch] {string} the key-epoch id to stamp on writes
|
|
26
27
|
* (the `currentEpoch`), surfaced as {@link EncodedWrite.epoch}; absent on a
|
|
27
28
|
* single-key collection. Its presence also arms the decode-side check of an
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EdvCodec.d.ts","sourceRoot":"","sources":["../../src/edv/EdvCodec.ts"],"names":[],"mappings":"AA2DA,OAAO,EAAE,aAAa,EAAe,MAAM,qBAAqB,CAAA;AAChE,OAAO,KAAK,EAEV,gBAAgB,EAChB,YAAY,EAEb,MAAM,8BAA8B,CAAA;AACrC,OAAO,KAAK,EACV,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,YAAY,EACb,MAAM,aAAa,CAAA;AAkBpB,OAAO,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AA+H7E;;;;GAIG;AACH,qBAAa,QAAS,YAAW,aAAa;;IAC5C,QAAQ,CAAC,iBAAiB,QAAO;IAiCjC
|
|
1
|
+
{"version":3,"file":"EdvCodec.d.ts","sourceRoot":"","sources":["../../src/edv/EdvCodec.ts"],"names":[],"mappings":"AA2DA,OAAO,EAAE,aAAa,EAAe,MAAM,qBAAqB,CAAA;AAChE,OAAO,KAAK,EAEV,gBAAgB,EAChB,YAAY,EAEb,MAAM,8BAA8B,CAAA;AACrC,OAAO,KAAK,EACV,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,YAAY,EACb,MAAM,aAAa,CAAA;AAkBpB,OAAO,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AA+H7E;;;;GAIG;AACH,qBAAa,QAAS,YAAW,aAAa;;IAC5C,QAAQ,CAAC,iBAAiB,QAAO;IAiCjC;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;gBACS,EACV,GAAG,EACH,eAAe,EACf,QAAQ,EACR,UAAU,EACV,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,OAAO,EACP,YAAY,EACb,EAAE;QACD,GAAG,EAAE,aAAa,CAAA;QAClB,eAAe,EAAE,gBAAgB,CAAA;QACjC,QAAQ,CAAC,EAAE,gBAAgB,EAAE,CAAA;QAC7B,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,WAAW,EAAE,MAAM,CAAA;QACnB,YAAY,EAAE,MAAM,CAAA;QACpB,YAAY,EAAE,QAAQ,GAAG,SAAS,CAAA;QAClC,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,YAAY,CAAC,EAAE,MAAM,CAAA;KACtB;IAaD;;OAEG;IACG,MAAM,CAAC,EACX,EAAE,EACF,IAAI,EACJ,WAAW,EACX,OAAO,EACR,EAAE;QACD,EAAE,CAAC,EAAE,MAAM,CAAA;QACX,IAAI,EAAE,YAAY,CAAA;QAClB,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,OAAO,CAAC,EAAE,YAAY,GAAG,IAAI,CAAA;KAC9B,GAAG,OAAO,CAAC,YAAY,CAAC;IA4GzB;;OAEG;IACG,MAAM,CACV,QAAQ,EAAE,YAAY,EACtB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAiNvB;;;;;;;;OAQG;IACG,UAAU,CAAC,EACf,MAAM,EACN,EAAE,EAAE,UAAU,EACf,EAAE;QACD,MAAM,EAAE,sBAAsB,CAAA;QAC9B,EAAE,CAAC,EAAE,MAAM,CAAA;KACZ,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAuB/B;;;;;;;OAOG;IACG,UAAU,CACd,EACE,MAAM,EACP,EAAE;QACD,MAAM,CAAC,EAAE,OAAO,CAAA;KACjB,EACD,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,sBAAsB,CAAC;CA4LnC;AAoDD;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,eAAe,EAAE,gBAAgB,CAAA;IACjC,WAAW,EAAE,YAAY,CAAA;CAC1B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,WAAW,EACX,WAAkC,EAClC,YAAqC,EACrC,YAAuB,EACxB,EAAE;IACD,WAAW,EAAE,CAAC,GAAG,EAAE;QACjB,OAAO,EAAE,MAAM,CAAA;QACf,YAAY,EAAE,MAAM,CAAA;KACrB,KAAK,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAA;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,YAAY,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAA;CACpC,GAAG,kBAAkB,CA4ErB"}
|
package/dist/edv/EdvCodec.js
CHANGED
|
@@ -214,10 +214,11 @@ export class EdvCodec {
|
|
|
214
214
|
* wallet's own key-agreement key; on a multi-recipient (key-epoch)
|
|
215
215
|
* collection it is the reconstructed `currentEpoch` key pair.
|
|
216
216
|
* @param [options.readKeys] {IKeyAgreementKey[]} the candidate keys a read
|
|
217
|
-
* may decrypt with
|
|
218
|
-
*
|
|
219
|
-
*
|
|
220
|
-
*
|
|
217
|
+
* may decrypt with: one per epoch this reader can unwrap, plus the reader's
|
|
218
|
+
* own key-agreement key as the last-resort pre-epoch candidate (defaults to
|
|
219
|
+
* just `keyAgreementKey`). A read selects the one whose id matches the
|
|
220
|
+
* stored envelope's recipient, so a resource written under an older epoch
|
|
221
|
+
* -- or before any epoch existed -- still decrypts.
|
|
221
222
|
* @param [options.writeEpoch] {string} the key-epoch id to stamp on writes
|
|
222
223
|
* (the `currentEpoch`), surfaced as {@link EncodedWrite.epoch}; absent on a
|
|
223
224
|
* single-key collection. Its presence also arms the decode-side check of an
|
|
@@ -836,8 +837,12 @@ export function createEdvEncryption({ resolveKeys, contentType = DEFAULT_CONTENT
|
|
|
836
837
|
// Multi-recipient (key-epoch) collection: resolve the reader's per-epoch
|
|
837
838
|
// keys from the descriptor -- the `currentEpoch` key pair for writes,
|
|
838
839
|
// every epoch key it can unwrap for reads -- and drive the cipher with
|
|
839
|
-
// those. The reader's own key-agreement key
|
|
840
|
-
//
|
|
840
|
+
// those. The reader's own key-agreement key never encrypts resources
|
|
841
|
+
// here, but it stays a last-resort read candidate: envelopes written
|
|
842
|
+
// before the collection's first epoch are sealed straight to it, and the
|
|
843
|
+
// permanent pre-epoch tolerance says they decrypt indefinitely (a
|
|
844
|
+
// content-addressed envelope cannot be re-encrypted in place -- that
|
|
845
|
+
// would change its id).
|
|
841
846
|
if (encryption?.epochs && encryption.epochs.length > 0) {
|
|
842
847
|
const epochKeys = await resolveEpochKeys({
|
|
843
848
|
encryption,
|
|
@@ -849,7 +854,11 @@ export function createEdvEncryption({ resolveKeys, contentType = DEFAULT_CONTENT
|
|
|
849
854
|
// standard did:key resolver, independent of the reader's own keystore.
|
|
850
855
|
keyAgreementKey = epochKeys.writeKey;
|
|
851
856
|
keyResolver = didKeyResolver;
|
|
852
|
-
|
|
857
|
+
// Dedupe by id: a user-key-generation epoch's read key carries the
|
|
858
|
+
// reader's own kid when the reader IS that generation's key.
|
|
859
|
+
readKeys = epochKeys.readKeys.some(key => key.id === resolved.keyAgreementKey.id)
|
|
860
|
+
? epochKeys.readKeys
|
|
861
|
+
: [...epochKeys.readKeys, resolved.keyAgreementKey];
|
|
853
862
|
writeEpoch = epochKeys.writeEpoch;
|
|
854
863
|
}
|
|
855
864
|
}
|
package/dist/edv/EdvCodec.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EdvCodec.js","sourceRoot":"","sources":["../../src/edv/EdvCodec.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"EdvCodec.js","sourceRoot":"","sources":["../../src/edv/EdvCodec.ts"],"names":[],"mappings":"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"}
|
package/dist/edv/docCipher.d.ts
CHANGED
|
@@ -67,7 +67,10 @@ export declare function ownerRecipient({ keyAgreementKey }: {
|
|
|
67
67
|
* is single-recipient: the key-agreement key encrypts and decrypts directly.
|
|
68
68
|
* With epochs on the descriptor the cipher is multi-recipient: it encrypts
|
|
69
69
|
* every write under the descriptor's `currentEpoch` and decrypts any epoch
|
|
70
|
-
* this reader still holds a key for
|
|
70
|
+
* this reader still holds a key for -- plus, indefinitely, envelopes sealed
|
|
71
|
+
* straight to the reader's own key-agreement key before the collection's
|
|
72
|
+
* first epoch existed (the permanent pre-epoch tolerance: content-addressed
|
|
73
|
+
* envelopes cannot be re-encrypted in place). Either way one codec owns both axes --
|
|
71
74
|
* decrypt routing (matching an envelope's JWE recipient `kid`s against the
|
|
72
75
|
* reader's candidate keys, raising `UnknownEpochError` for an envelope no
|
|
73
76
|
* candidate can route) lives in the codec, not here.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docCipher.d.ts","sourceRoot":"","sources":["../../src/edv/docCipher.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,OAAO,KAAK,EACV,gBAAgB,EAChB,YAAY,EACb,MAAM,8BAA8B,CAAA;AAGrC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AACvD,OAAO,KAAK,EAAE,SAAS,EAAQ,MAAM,kBAAkB,CAAA;AAEvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAMzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AACzD,YAAY,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAEhD;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,EAC7B,eAAe,EAChB,EAAE;IACD,eAAe,EAAE,gBAAgB,CAAA;CAClC,GAAG,kBAAkB,CAcrB;AAmBD
|
|
1
|
+
{"version":3,"file":"docCipher.d.ts","sourceRoot":"","sources":["../../src/edv/docCipher.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,OAAO,KAAK,EACV,gBAAgB,EAChB,YAAY,EACb,MAAM,8BAA8B,CAAA;AAGrC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AACvD,OAAO,KAAK,EAAE,SAAS,EAAQ,MAAM,kBAAkB,CAAA;AAEvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAMzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AACzD,YAAY,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAEhD;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,EAC7B,eAAe,EAChB,EAAE;IACD,eAAe,EAAE,gBAAgB,CAAA;CAClC,GAAG,kBAAkB,CAcrB;AAmBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,wBAAsB,kBAAkB,CAAC,EACvC,eAAe,EACf,WAAW,EACX,YAAY,EACZ,YAAwB,EACxB,UAAU,EACX,EAAE;IACD,eAAe,EAAE,gBAAgB,CAAA;IACjC,WAAW,EAAE,YAAY,CAAA;IACzB,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAA;IACnC,UAAU,CAAC,EAAE,oBAAoB,CAAA;CAClC,GAAG,OAAO,CAAC,SAAS,CAAC,CA0GrB"}
|
package/dist/edv/docCipher.js
CHANGED
|
@@ -60,7 +60,10 @@ function envelopeResponse(envelope) {
|
|
|
60
60
|
* is single-recipient: the key-agreement key encrypts and decrypts directly.
|
|
61
61
|
* With epochs on the descriptor the cipher is multi-recipient: it encrypts
|
|
62
62
|
* every write under the descriptor's `currentEpoch` and decrypts any epoch
|
|
63
|
-
* this reader still holds a key for
|
|
63
|
+
* this reader still holds a key for -- plus, indefinitely, envelopes sealed
|
|
64
|
+
* straight to the reader's own key-agreement key before the collection's
|
|
65
|
+
* first epoch existed (the permanent pre-epoch tolerance: content-addressed
|
|
66
|
+
* envelopes cannot be re-encrypted in place). Either way one codec owns both axes --
|
|
64
67
|
* decrypt routing (matching an envelope's JWE recipient `kid`s against the
|
|
65
68
|
* reader's candidate keys, raising `UnknownEpochError` for an envelope no
|
|
66
69
|
* candidate can route) lives in the codec, not here.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docCipher.js","sourceRoot":"","sources":["../../src/edv/docCipher.ts"],"names":[],"mappings":"AAoCA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAG7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAGnD,8EAA8E;AAC9E,2EAA2E;AAC3E,6EAA6E;AAC7E,6EAA6E;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAEzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAEhD;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,cAAc,CAAC,EAC7B,eAAe,EAGhB;IACC,MAAM,EAAE,EAAE,EAAE,GAAG,eAAe,CAAA;IAC9B,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,GAAG,eAGpC,CAAA;IACD,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,OAAO,kBAAkB,KAAK,QAAQ,EAAE,CAAC;QACrE,MAAM,IAAI,KAAK,CACb,wEAAwE;YACtE,uEAAuE;YACvE,aAAa,CAChB,CAAA;IACH,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAA;AACzC,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,gBAAgB,CAAC,QAAc;IACtC,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,QAAQ;QAC1B,OAAO,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE;KAC7B,CAAA;AACH,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"docCipher.js","sourceRoot":"","sources":["../../src/edv/docCipher.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,36 +2,49 @@
|
|
|
2
2
|
* Copyright (c) 2026 Interop Alliance. All rights reserved.
|
|
3
3
|
*/
|
|
4
4
|
/**
|
|
5
|
-
* Idempotent Space + Collection provisioning for a synced
|
|
6
|
-
* is
|
|
7
|
-
*
|
|
5
|
+
* Idempotent, non-clobbering Space + Collection provisioning for a synced
|
|
6
|
+
* collection. Everything is create-if-absent: an existing Space description,
|
|
7
|
+
* an existing encryption descriptor (which may carry a key-epoch roster other
|
|
8
|
+
* clients encrypt under), and an existing access policy are never overwritten,
|
|
9
|
+
* so ANY controller-tier client -- including one that joined a Space some
|
|
10
|
+
* other wallet provisioned -- can re-run it to heal a torn provisioning run.
|
|
11
|
+
* On a fully settled Space it issues only reads.
|
|
8
12
|
*/
|
|
9
13
|
import type { WasClient } from '../WasClient.js';
|
|
10
14
|
/**
|
|
11
15
|
* Ensures the controller's Space exists and one synced collection is
|
|
12
|
-
* configured
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
16
|
+
* configured, without overwriting anything already there. The Space is
|
|
17
|
+
* described first and configured only when absent -- an existing Space keeps
|
|
18
|
+
* its name AND its controller, so `controllerDid` is used only at creation
|
|
19
|
+
* (a joined client re-running this never rewrites the description). The
|
|
20
|
+
* collection likewise: when absent, an `'edv'` collection is created with the
|
|
21
|
+
* encryption descriptor `{ scheme: 'edv', version: EDV_SCHEME_VERSION }`, so
|
|
22
|
+
* the server stores only ciphertext it can never decrypt and validates every
|
|
23
|
+
* write against the declared envelope wire format -- the same version the
|
|
24
|
+
* cipher binds into each envelope's AEAD-protected header, so descriptor and
|
|
25
|
+
* envelopes cannot drift; a `'plaintext'` collection is created without one,
|
|
26
|
+
* with `force` so the descriptor-less upsert can create a fresh collection
|
|
27
|
+
* (running full-tier, a 404 from the pre-merge describe really means absent).
|
|
28
|
+
* An existing collection that lacks a descriptor an `'edv'` spec calls for
|
|
29
|
+
* gets the late in-place declaration (set-once on the server); one that
|
|
30
|
+
* already carries a descriptor -- possibly with appended key epochs -- is
|
|
31
|
+
* left untouched, epochs and display name included. A public collection gets
|
|
32
|
+
* the collection-level world-read grant (`setPublic`, what makes a resource
|
|
33
|
+
* URL in it resolve for anyone) only when its policy does not already say so.
|
|
34
|
+
* Runs full-tier -- the client invokes its own root authority.
|
|
23
35
|
*
|
|
24
36
|
* @param options {object}
|
|
25
37
|
* @param options.was {WasClient}
|
|
26
38
|
* @param options.spaceId {string}
|
|
27
|
-
* @param options.controllerDid {string} the Space controller (e.g. `did:key`)
|
|
39
|
+
* @param options.controllerDid {string} the Space controller (e.g. `did:key`);
|
|
40
|
+
* used only when the Space does not exist yet
|
|
28
41
|
* @param options.collectionId {string} the WAS collection id
|
|
29
42
|
* @param [options.encryption] {'edv' | 'plaintext'} defaults to `'edv'`
|
|
30
43
|
* @param [options.isPublic] {boolean} grant collection-level world read
|
|
31
|
-
* @param [options.spaceName] {string} the Space display name
|
|
32
|
-
* `'WAS Space'`
|
|
33
|
-
* @param [options.collectionName] {string} the collection display name
|
|
34
|
-
* defaults to the collection id
|
|
44
|
+
* @param [options.spaceName] {string} the Space display name, applied only at
|
|
45
|
+
* Space creation; defaults to `'WAS Space'`
|
|
46
|
+
* @param [options.collectionName] {string} the collection display name,
|
|
47
|
+
* applied only at collection creation; defaults to the collection id
|
|
35
48
|
* @returns {Promise<void>}
|
|
36
49
|
*/
|
|
37
50
|
export declare function ensureSpaceAndCollection({ was, spaceId, controllerDid, collectionId, encryption, isPublic, spaceName, collectionName }: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provisioning.d.ts","sourceRoot":"","sources":["../../src/sync/provisioning.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH
|
|
1
|
+
{"version":3,"file":"provisioning.d.ts","sourceRoot":"","sources":["../../src/sync/provisioning.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAKhD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAsB,wBAAwB,CAAC,EAC7C,GAAG,EACH,OAAO,EACP,aAAa,EACb,YAAY,EACZ,UAAkB,EAClB,QAAgB,EAChB,SAAuB,EACvB,cAA6B,EAC9B,EAAE;IACD,GAAG,EAAE,SAAS,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,KAAK,GAAG,WAAW,CAAA;IAChC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB,GAAG,OAAO,CAAC,IAAI,CAAC,CA6ChB"}
|
|
@@ -3,48 +3,72 @@
|
|
|
3
3
|
import { EDV_SCHEME_VERSION } from '../edv/constants.js';
|
|
4
4
|
/**
|
|
5
5
|
* Ensures the controller's Space exists and one synced collection is
|
|
6
|
-
* configured
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
6
|
+
* configured, without overwriting anything already there. The Space is
|
|
7
|
+
* described first and configured only when absent -- an existing Space keeps
|
|
8
|
+
* its name AND its controller, so `controllerDid` is used only at creation
|
|
9
|
+
* (a joined client re-running this never rewrites the description). The
|
|
10
|
+
* collection likewise: when absent, an `'edv'` collection is created with the
|
|
11
|
+
* encryption descriptor `{ scheme: 'edv', version: EDV_SCHEME_VERSION }`, so
|
|
12
|
+
* the server stores only ciphertext it can never decrypt and validates every
|
|
13
|
+
* write against the declared envelope wire format -- the same version the
|
|
14
|
+
* cipher binds into each envelope's AEAD-protected header, so descriptor and
|
|
15
|
+
* envelopes cannot drift; a `'plaintext'` collection is created without one,
|
|
16
|
+
* with `force` so the descriptor-less upsert can create a fresh collection
|
|
17
|
+
* (running full-tier, a 404 from the pre-merge describe really means absent).
|
|
18
|
+
* An existing collection that lacks a descriptor an `'edv'` spec calls for
|
|
19
|
+
* gets the late in-place declaration (set-once on the server); one that
|
|
20
|
+
* already carries a descriptor -- possibly with appended key epochs -- is
|
|
21
|
+
* left untouched, epochs and display name included. A public collection gets
|
|
22
|
+
* the collection-level world-read grant (`setPublic`, what makes a resource
|
|
23
|
+
* URL in it resolve for anyone) only when its policy does not already say so.
|
|
24
|
+
* Runs full-tier -- the client invokes its own root authority.
|
|
17
25
|
*
|
|
18
26
|
* @param options {object}
|
|
19
27
|
* @param options.was {WasClient}
|
|
20
28
|
* @param options.spaceId {string}
|
|
21
|
-
* @param options.controllerDid {string} the Space controller (e.g. `did:key`)
|
|
29
|
+
* @param options.controllerDid {string} the Space controller (e.g. `did:key`);
|
|
30
|
+
* used only when the Space does not exist yet
|
|
22
31
|
* @param options.collectionId {string} the WAS collection id
|
|
23
32
|
* @param [options.encryption] {'edv' | 'plaintext'} defaults to `'edv'`
|
|
24
33
|
* @param [options.isPublic] {boolean} grant collection-level world read
|
|
25
|
-
* @param [options.spaceName] {string} the Space display name
|
|
26
|
-
* `'WAS Space'`
|
|
27
|
-
* @param [options.collectionName] {string} the collection display name
|
|
28
|
-
* defaults to the collection id
|
|
34
|
+
* @param [options.spaceName] {string} the Space display name, applied only at
|
|
35
|
+
* Space creation; defaults to `'WAS Space'`
|
|
36
|
+
* @param [options.collectionName] {string} the collection display name,
|
|
37
|
+
* applied only at collection creation; defaults to the collection id
|
|
29
38
|
* @returns {Promise<void>}
|
|
30
39
|
*/
|
|
31
40
|
export async function ensureSpaceAndCollection({ was, spaceId, controllerDid, collectionId, encryption = 'edv', isPublic = false, spaceName = 'WAS Space', collectionName = collectionId }) {
|
|
32
41
|
const space = was.space(spaceId);
|
|
33
42
|
try {
|
|
34
|
-
await space.
|
|
43
|
+
if ((await space.describe()) === null) {
|
|
44
|
+
await space.configure({ name: spaceName, controller: controllerDid });
|
|
45
|
+
}
|
|
35
46
|
}
|
|
36
47
|
catch (err) {
|
|
37
48
|
throw new Error(`Failed to configure WAS space "${spaceId}" for "${controllerDid}".`, { cause: err });
|
|
38
49
|
}
|
|
39
50
|
try {
|
|
40
51
|
const collection = space.collection(collectionId);
|
|
41
|
-
await collection.
|
|
42
|
-
|
|
43
|
-
|
|
52
|
+
const current = await collection.describe();
|
|
53
|
+
if (current === null) {
|
|
54
|
+
await collection.configure(encryption === 'edv'
|
|
55
|
+
? {
|
|
56
|
+
name: collectionName,
|
|
57
|
+
encryption: { scheme: 'edv', version: EDV_SCHEME_VERSION }
|
|
58
|
+
}
|
|
59
|
+
: { name: collectionName, force: true });
|
|
60
|
+
}
|
|
61
|
+
else if (encryption === 'edv' && current.encryption === undefined) {
|
|
62
|
+
// The late in-place declaration: adding a descriptor to a collection
|
|
63
|
+
// that lacks one is allowed (set-once), while re-sending one over an
|
|
64
|
+
// existing descriptor would drop its appended key epochs -- which is
|
|
65
|
+
// exactly why an existing descriptor is never touched.
|
|
66
|
+
await collection.configure({
|
|
67
|
+
name: current.name ?? collectionName,
|
|
44
68
|
encryption: { scheme: 'edv', version: EDV_SCHEME_VERSION }
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
if (isPublic) {
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
if (isPublic && !(await collection.isPublic())) {
|
|
48
72
|
await collection.setPublic();
|
|
49
73
|
}
|
|
50
74
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provisioning.js","sourceRoot":"","sources":["../../src/sync/provisioning.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"provisioning.js","sourceRoot":"","sources":["../../src/sync/provisioning.ts"],"names":[],"mappings":"AAaA,6EAA6E;AAC7E,iEAAiE;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AAExD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,EAC7C,GAAG,EACH,OAAO,EACP,aAAa,EACb,YAAY,EACZ,UAAU,GAAG,KAAK,EAClB,QAAQ,GAAG,KAAK,EAChB,SAAS,GAAG,WAAW,EACvB,cAAc,GAAG,YAAY,EAU9B;IACC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAEhC,IAAI,CAAC;QACH,IAAI,CAAC,MAAM,KAAK,CAAC,QAAQ,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;YACtC,MAAM,KAAK,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAA;QACvE,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACb,kCAAkC,OAAO,UAAU,aAAa,IAAI,EACpE,EAAE,KAAK,EAAE,GAAG,EAAE,CACf,CAAA;IACH,CAAC;IAED,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;QACjD,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,CAAA;QAC3C,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACrB,MAAM,UAAU,CAAC,SAAS,CACxB,UAAU,KAAK,KAAK;gBAClB,CAAC,CAAC;oBACE,IAAI,EAAE,cAAc;oBACpB,UAAU,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,kBAAkB,EAAE;iBAC3D;gBACH,CAAC,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,IAAI,EAAE,CAC1C,CAAA;QACH,CAAC;aAAM,IAAI,UAAU,KAAK,KAAK,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACpE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,uDAAuD;YACvD,MAAM,UAAU,CAAC,SAAS,CAAC;gBACzB,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,cAAc;gBACpC,UAAU,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,kBAAkB,EAAE;aAC3D,CAAC,CAAA;QACJ,CAAC;QACD,IAAI,QAAQ,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC;YAC/C,MAAM,UAAU,CAAC,SAAS,EAAE,CAAA;QAC9B,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACb,mCAAmC,YAAY,eAAe,OAAO,IAAI,EACzE,EAAE,KAAK,EAAE,GAAG,EAAE,CACf,CAAA;IACH,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED