@interop/was-client 0.99.1 → 0.100.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 +90 -70
- package/dist/Collection.d.ts +20 -8
- package/dist/Collection.d.ts.map +1 -1
- package/dist/Collection.js +89 -69
- package/dist/Collection.js.map +1 -1
- package/dist/Resource.d.ts +14 -3
- package/dist/Resource.d.ts.map +1 -1
- package/dist/Resource.js +38 -27
- package/dist/Resource.js.map +1 -1
- package/dist/Space.d.ts +18 -4
- package/dist/Space.d.ts.map +1 -1
- package/dist/Space.js +64 -61
- package/dist/Space.js.map +1 -1
- package/dist/WasClient.d.ts +102 -54
- package/dist/WasClient.d.ts.map +1 -1
- package/dist/WasClient.js +212 -133
- package/dist/WasClient.js.map +1 -1
- package/dist/codec.d.ts +3 -2
- package/dist/codec.d.ts.map +1 -1
- package/dist/edv/EdvCodec.js +1 -1
- package/dist/edv/EdvCodec.js.map +1 -1
- package/dist/edv/WasTransport.d.ts +7 -4
- package/dist/edv/WasTransport.d.ts.map +1 -1
- package/dist/edv/WasTransport.js +39 -20
- package/dist/edv/WasTransport.js.map +1 -1
- package/dist/edv/acquire.d.ts +3 -3
- package/dist/edv/acquire.d.ts.map +1 -1
- package/dist/edv/acquire.js +3 -3
- package/dist/edv/acquire.js.map +1 -1
- package/dist/edv/cipher.d.ts +1 -1
- package/dist/edv/cipher.js +1 -1
- package/dist/edv/docCipher.d.ts +6 -5
- package/dist/edv/docCipher.d.ts.map +1 -1
- package/dist/edv/docCipher.js +6 -5
- package/dist/edv/docCipher.js.map +1 -1
- package/dist/edv/encryption.d.ts +2 -2
- package/dist/edv/encryption.d.ts.map +1 -1
- package/dist/edv/encryption.js +8 -6
- package/dist/edv/encryption.js.map +1 -1
- package/dist/edv/refreshingDocCipher.d.ts +3 -3
- package/dist/edv/refreshingDocCipher.d.ts.map +1 -1
- package/dist/edv/refreshingDocCipher.js +3 -3
- package/dist/edv/refreshingDocCipher.js.map +1 -1
- package/dist/edv/transportFactory.d.ts +3 -3
- package/dist/edv/transportFactory.d.ts.map +1 -1
- package/dist/edv/transportFactory.js +3 -3
- package/dist/edv/transportFactory.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/internal/codec.d.ts +7 -7
- package/dist/internal/codec.d.ts.map +1 -1
- package/dist/internal/codec.js +19 -18
- package/dist/internal/codec.js.map +1 -1
- package/dist/internal/conditional.d.ts +3 -3
- package/dist/internal/conditional.d.ts.map +1 -1
- package/dist/internal/conditional.js +5 -5
- package/dist/internal/conditional.js.map +1 -1
- package/dist/internal/grant.d.ts +15 -26
- package/dist/internal/grant.d.ts.map +1 -1
- package/dist/internal/grant.js +95 -29
- package/dist/internal/grant.js.map +1 -1
- package/dist/internal/meta.d.ts +8 -8
- package/dist/internal/meta.d.ts.map +1 -1
- package/dist/internal/meta.js +13 -10
- package/dist/internal/meta.js.map +1 -1
- package/dist/internal/paths.d.ts +332 -195
- package/dist/internal/paths.d.ts.map +1 -1
- package/dist/internal/paths.js +400 -367
- package/dist/internal/paths.js.map +1 -1
- package/dist/internal/policy.d.ts +23 -23
- package/dist/internal/policy.d.ts.map +1 -1
- package/dist/internal/policy.js +20 -20
- package/dist/internal/policy.js.map +1 -1
- package/dist/internal/request.d.ts +17 -21
- package/dist/internal/request.d.ts.map +1 -1
- package/dist/internal/request.js +10 -21
- package/dist/internal/request.js.map +1 -1
- package/dist/internal/revoke.d.ts +34 -13
- package/dist/internal/revoke.d.ts.map +1 -1
- package/dist/internal/revoke.js +97 -28
- package/dist/internal/revoke.js.map +1 -1
- package/dist/internal/service.d.ts +25 -7
- package/dist/internal/service.d.ts.map +1 -1
- package/dist/internal/service.js +49 -45
- package/dist/internal/service.js.map +1 -1
- package/dist/internal/write.d.ts +18 -18
- package/dist/internal/write.d.ts.map +1 -1
- package/dist/internal/write.js +27 -27
- package/dist/internal/write.js.map +1 -1
- package/dist/paths.d.ts +32 -25
- package/dist/paths.d.ts.map +1 -1
- package/dist/paths.js +32 -25
- package/dist/paths.js.map +1 -1
- package/dist/sync/port.d.ts +3 -3
- package/dist/sync/port.d.ts.map +1 -1
- package/dist/sync/port.js +12 -12
- package/dist/sync/port.js.map +1 -1
- package/dist/sync/provisioning.d.ts +10 -9
- package/dist/sync/provisioning.d.ts.map +1 -1
- package/dist/sync/provisioning.js +19 -18
- package/dist/sync/provisioning.js.map +1 -1
- package/dist/sync/types.d.ts +2 -2
- package/dist/types.d.ts +13 -5
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/edv/docCipher.js
CHANGED
|
@@ -70,7 +70,8 @@ export function ownerRecipient({ keyAgreementKey }) {
|
|
|
70
70
|
* the real id, not a label: the collection's metadata envelope is
|
|
71
71
|
* AEAD-bound to it (`was.collection`), so `applyMeta` refuses an envelope
|
|
72
72
|
* bound elsewhere.
|
|
73
|
-
* @param [options.
|
|
73
|
+
* @param [options.spaceUrl] {string} the URL of the WAS Space holding the
|
|
74
|
+
* collection.
|
|
74
75
|
* It gives the codec a route to a chunked document's chunk resources, so a
|
|
75
76
|
* `decrypt` that also passes a request context reassembles a chunked
|
|
76
77
|
* envelope. Without it such a `decrypt` throws `NotSupportedError`; a
|
|
@@ -90,17 +91,17 @@ export function ownerRecipient({ keyAgreementKey }) {
|
|
|
90
91
|
* as before.
|
|
91
92
|
* @returns {Promise<EdvDocCipher>}
|
|
92
93
|
*/
|
|
93
|
-
export async function createEdvDocCipher({ keyAgreementKey, keyResolver, collectionId,
|
|
94
|
+
export async function createEdvDocCipher({ keyAgreementKey, keyResolver, collectionId, spaceUrl, idDerivation = 'content', encryption, meta }) {
|
|
94
95
|
// Only a cipher told which Space its collection lives in has a server to
|
|
95
96
|
// address, and only the chunked-stream paths address one. Loading the
|
|
96
97
|
// factory here rather than at module scope keeps `WasTransport` out of an
|
|
97
98
|
// offline caller's import graph: a `createEdvDocCipher` call with no
|
|
98
|
-
// `
|
|
99
|
+
// `spaceUrl` evaluates no transport module at all.
|
|
99
100
|
let transportFactory;
|
|
100
|
-
if (
|
|
101
|
+
if (spaceUrl !== undefined) {
|
|
101
102
|
const { wasTransportFactory } = await import('./transportFactory.js');
|
|
102
103
|
transportFactory = wasTransportFactory({
|
|
103
|
-
|
|
104
|
+
spaceUrl,
|
|
104
105
|
collectionId,
|
|
105
106
|
contentType: DEFAULT_CONTENT_TYPE
|
|
106
107
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docCipher.js","sourceRoot":"","sources":["../../src/edv/docCipher.ts"],"names":[],"mappings":"AAyDA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAChE,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAChF,OAAO,EACL,sBAAsB,EACtB,cAAc,EACd,iBAAiB,EACjB,eAAe,EAChB,MAAM,cAAc,CAAA;AAGrB,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAQlE,8EAA8E;AAC9E,+EAA+E;AAC/E,6EAA6E;AAC7E,6EAA6E;AAC7E,+EAA+E;AAC/E,8EAA8E;AAC9E,iBAAiB;AACjB,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAEzD,OAAO,EACL,sBAAsB,EACtB,cAAc,EACd,cAAc,EACd,iBAAiB,EAClB,MAAM,cAAc,CAAA;AAErB;;;;;;;;;;;;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;AA6FD
|
|
1
|
+
{"version":3,"file":"docCipher.js","sourceRoot":"","sources":["../../src/edv/docCipher.ts"],"names":[],"mappings":"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"}
|
package/dist/edv/encryption.d.ts
CHANGED
|
@@ -21,7 +21,7 @@ import type { EdvKeys } from './EdvCodec.js';
|
|
|
21
21
|
* Collection's `encryption` descriptor (or a per-handle override). Core calls
|
|
22
22
|
* `codecFor` only for a collection already known to be encrypted; this provider
|
|
23
23
|
* then supplies the keys: the override-supplied `keys` when present, else
|
|
24
|
-
* `resolveKeys({
|
|
24
|
+
* `resolveKeys({ spaceUrl, collectionId })`. `resolveKeys` returning `null` means
|
|
25
25
|
* "I hold no keys for this collection", so core fails closed (it does **not**
|
|
26
26
|
* mean plaintext -- the descriptor/override already decided that). A non-`edv`
|
|
27
27
|
* scheme yields `null` (this provider does not handle it).
|
|
@@ -60,7 +60,7 @@ import type { EdvKeys } from './EdvCodec.js';
|
|
|
60
60
|
*/
|
|
61
61
|
export declare function createEdvEncryption({ resolveKeys, contentType, maxBlobBytes, chunkSize, idDerivation }: {
|
|
62
62
|
resolveKeys: (ref: {
|
|
63
|
-
|
|
63
|
+
spaceUrl: string;
|
|
64
64
|
collectionId: string;
|
|
65
65
|
}) => Promise<EdvKeys | null>;
|
|
66
66
|
contentType?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encryption.d.ts","sourceRoot":"","sources":["../../src/edv/encryption.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AASrD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"encryption.d.ts","sourceRoot":"","sources":["../../src/edv/encryption.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AASrD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAI5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,WAAW,EACX,WAAkC,EAClC,YAAqC,EACrC,SAAS,EACT,YAAuB,EACxB,EAAE;IACD,WAAW,EAAE,CAAC,GAAG,EAAE;QACjB,QAAQ,EAAE,MAAM,CAAA;QAChB,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,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAA;CACpC,GAAG,kBAAkB,CA4CrB"}
|
package/dist/edv/encryption.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { DEFAULT_CONTENT_TYPE } from './constants.js';
|
|
2
2
|
import { DEFAULT_MAX_BLOB_BYTES, EDV_SCHEME, buildEdvCodec, descriptorDefect, guardEncryptionDescriptor } from './EdvCodec.js';
|
|
3
|
+
import { collectionUrl } from '../internal/paths.js';
|
|
3
4
|
import { wasTransportFactory } from './transportFactory.js';
|
|
4
5
|
/**
|
|
5
6
|
* Builds an {@link EncryptionProvider} for the `edv` scheme: a pure **keystore**
|
|
@@ -10,7 +11,7 @@ import { wasTransportFactory } from './transportFactory.js';
|
|
|
10
11
|
* Collection's `encryption` descriptor (or a per-handle override). Core calls
|
|
11
12
|
* `codecFor` only for a collection already known to be encrypted; this provider
|
|
12
13
|
* then supplies the keys: the override-supplied `keys` when present, else
|
|
13
|
-
* `resolveKeys({
|
|
14
|
+
* `resolveKeys({ spaceUrl, collectionId })`. `resolveKeys` returning `null` means
|
|
14
15
|
* "I hold no keys for this collection", so core fails closed (it does **not**
|
|
15
16
|
* mean plaintext -- the descriptor/override already decided that). A non-`edv`
|
|
16
17
|
* scheme yields `null` (this provider does not handle it).
|
|
@@ -52,7 +53,7 @@ export function createEdvEncryption({ resolveKeys, contentType = DEFAULT_CONTENT
|
|
|
52
53
|
canRoute({ scheme, encryption }) {
|
|
53
54
|
return scheme === EDV_SCHEME && descriptorDefect(encryption) === null;
|
|
54
55
|
},
|
|
55
|
-
async codecFor({
|
|
56
|
+
async codecFor({ spaceUrl, collectionId, scheme, encryption, keys }) {
|
|
56
57
|
if (scheme !== EDV_SCHEME) {
|
|
57
58
|
return null;
|
|
58
59
|
}
|
|
@@ -61,20 +62,21 @@ export function createEdvEncryption({ resolveKeys, contentType = DEFAULT_CONTENT
|
|
|
61
62
|
// "holds no keys" the null return below would produce. `buildEdvCodec`
|
|
62
63
|
// guards again for callers that reach it directly; the guard is pure, so
|
|
63
64
|
// running it twice costs nothing.
|
|
65
|
+
const label = collectionUrl({ spaceUrl, collectionId });
|
|
64
66
|
guardEncryptionDescriptor({
|
|
65
|
-
label
|
|
67
|
+
label,
|
|
66
68
|
encryption
|
|
67
69
|
});
|
|
68
70
|
// Prefer override-supplied keys; otherwise consult the keystore.
|
|
69
71
|
const resolved = keys ??
|
|
70
|
-
(await resolveKeys({
|
|
72
|
+
(await resolveKeys({ spaceUrl, collectionId }));
|
|
71
73
|
if (!resolved) {
|
|
72
74
|
return null;
|
|
73
75
|
}
|
|
74
76
|
return buildEdvCodec({
|
|
75
|
-
label
|
|
77
|
+
label,
|
|
76
78
|
transportFactory: wasTransportFactory({
|
|
77
|
-
|
|
79
|
+
spaceUrl,
|
|
78
80
|
collectionId,
|
|
79
81
|
contentType
|
|
80
82
|
}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encryption.js","sourceRoot":"","sources":["../../src/edv/encryption.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,EACL,sBAAsB,EACtB,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,eAAe,CAAA;AAEtB,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAE3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAClC,WAAW,EACX,WAAW,GAAG,oBAAoB,EAClC,YAAY,GAAG,sBAAsB,EACrC,SAAS,EACT,YAAY,GAAG,QAAQ,EAUxB;IACC,OAAO;QACL,QAAQ,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE;YAC7B,OAAO,MAAM,KAAK,UAAU,IAAI,gBAAgB,CAAC,UAAU,CAAC,KAAK,IAAI,CAAA;QACvE,CAAC;QAED,KAAK,CAAC,QAAQ,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"encryption.js","sourceRoot":"","sources":["../../src/edv/encryption.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,EACL,sBAAsB,EACtB,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,eAAe,CAAA;AAEtB,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAE3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAClC,WAAW,EACX,WAAW,GAAG,oBAAoB,EAClC,YAAY,GAAG,sBAAsB,EACrC,SAAS,EACT,YAAY,GAAG,QAAQ,EAUxB;IACC,OAAO;QACL,QAAQ,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE;YAC7B,OAAO,MAAM,KAAK,UAAU,IAAI,gBAAgB,CAAC,UAAU,CAAC,KAAK,IAAI,CAAA;QACvE,CAAC;QAED,KAAK,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE;YACjE,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;gBAC1B,OAAO,IAAI,CAAA;YACb,CAAC;YACD,uEAAuE;YACvE,wEAAwE;YACxE,uEAAuE;YACvE,yEAAyE;YACzE,kCAAkC;YAClC,MAAM,KAAK,GAAG,aAAa,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,CAAA;YACvD,yBAAyB,CAAC;gBACxB,KAAK;gBACL,UAAU;aACX,CAAC,CAAA;YACF,iEAAiE;YACjE,MAAM,QAAQ,GACX,IAA4B;gBAC7B,CAAC,MAAM,WAAW,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,CAAC,CAAA;YACjD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,IAAI,CAAA;YACb,CAAC;YACD,OAAO,aAAa,CAAC;gBACnB,KAAK;gBACL,gBAAgB,EAAE,mBAAmB,CAAC;oBACpC,QAAQ;oBACR,YAAY;oBACZ,WAAW;iBACZ,CAAC;gBACF,YAAY;gBACZ,UAAU;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW;gBACX,YAAY;gBACZ,GAAG,CAAC,SAAS,KAAK,SAAS,IAAI,EAAE,SAAS,EAAE,CAAC;gBAC7C,YAAY;aACb,CAAC,CAAA;QACJ,CAAC;KACF,CAAA;AACH,CAAC"}
|
|
@@ -49,7 +49,7 @@ import { type EncryptionDescriptorCache, type EncryptionDescriptorSource } from
|
|
|
49
49
|
* collection's envelopes are sealed to
|
|
50
50
|
* @param options.keyResolver {IKeyResolver}
|
|
51
51
|
* @param options.collectionId {string}
|
|
52
|
-
* @param [options.
|
|
52
|
+
* @param [options.spaceUrl] {string} the WAS Space holding the collection,
|
|
53
53
|
* which lets a `decrypt` given a request context read a chunked envelope
|
|
54
54
|
* @param [options.idDerivation] {'content' | 'random'} defaults to
|
|
55
55
|
* `'content'`
|
|
@@ -62,11 +62,11 @@ import { type EncryptionDescriptorCache, type EncryptionDescriptorSource } from
|
|
|
62
62
|
* descriptor-fetch failures
|
|
63
63
|
* @returns {Promise<EdvDocCipher>}
|
|
64
64
|
*/
|
|
65
|
-
export declare function createRefreshingEdvDocCipher({ keyAgreementKey, keyResolver, collectionId,
|
|
65
|
+
export declare function createRefreshingEdvDocCipher({ keyAgreementKey, keyResolver, collectionId, spaceUrl, idDerivation, source, cache, requireGoverned, onFetchError }: {
|
|
66
66
|
keyAgreementKey: IKeyAgreementKey;
|
|
67
67
|
keyResolver: IKeyResolver;
|
|
68
68
|
collectionId: string;
|
|
69
|
-
|
|
69
|
+
spaceUrl?: string;
|
|
70
70
|
idDerivation?: 'content' | 'random';
|
|
71
71
|
source?: EncryptionDescriptorSource;
|
|
72
72
|
cache: EncryptionDescriptorCache;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"refreshingDocCipher.d.ts","sourceRoot":"","sources":["../../src/edv/refreshingDocCipher.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,OAAO,KAAK,EACV,gBAAgB,EAChB,YAAY,EACb,MAAM,8BAA8B,CAAA;AAErC,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAA;AACtE,OAAO,EAEL,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAChC,MAAM,cAAc,CAAA;AAErB;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAsB,4BAA4B,CAAC,EACjD,eAAe,EACf,WAAW,EACX,YAAY,EACZ,
|
|
1
|
+
{"version":3,"file":"refreshingDocCipher.d.ts","sourceRoot":"","sources":["../../src/edv/refreshingDocCipher.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,OAAO,KAAK,EACV,gBAAgB,EAChB,YAAY,EACb,MAAM,8BAA8B,CAAA;AAErC,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAA;AACtE,OAAO,EAEL,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAChC,MAAM,cAAc,CAAA;AAErB;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAsB,4BAA4B,CAAC,EACjD,eAAe,EACf,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,YAAY,EACZ,MAAM,EACN,KAAK,EACL,eAAe,EACf,YAAY,EACb,EAAE;IACD,eAAe,EAAE,gBAAgB,CAAA;IACjC,WAAW,EAAE,YAAY,CAAA;IACzB,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAA;IACnC,MAAM,CAAC,EAAE,0BAA0B,CAAA;IACnC,KAAK,EAAE,yBAAyB,CAAA;IAChC,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE;QAAE,YAAY,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;CACtE,GAAG,OAAO,CAAC,YAAY,CAAC,CAsHxB"}
|
|
@@ -16,7 +16,7 @@ import { acquireDescriptor } from './acquire.js';
|
|
|
16
16
|
* collection's envelopes are sealed to
|
|
17
17
|
* @param options.keyResolver {IKeyResolver}
|
|
18
18
|
* @param options.collectionId {string}
|
|
19
|
-
* @param [options.
|
|
19
|
+
* @param [options.spaceUrl] {string} the WAS Space holding the collection,
|
|
20
20
|
* which lets a `decrypt` given a request context read a chunked envelope
|
|
21
21
|
* @param [options.idDerivation] {'content' | 'random'} defaults to
|
|
22
22
|
* `'content'`
|
|
@@ -29,7 +29,7 @@ import { acquireDescriptor } from './acquire.js';
|
|
|
29
29
|
* descriptor-fetch failures
|
|
30
30
|
* @returns {Promise<EdvDocCipher>}
|
|
31
31
|
*/
|
|
32
|
-
export async function createRefreshingEdvDocCipher({ keyAgreementKey, keyResolver, collectionId,
|
|
32
|
+
export async function createRefreshingEdvDocCipher({ keyAgreementKey, keyResolver, collectionId, spaceUrl, idDerivation, source, cache, requireGoverned, onFetchError }) {
|
|
33
33
|
// The `/meta` value last installed with `applyMeta`, replayed onto a rebuilt
|
|
34
34
|
// cipher so a refresh does not drop the collection's index schema.
|
|
35
35
|
let appliedMeta;
|
|
@@ -50,7 +50,7 @@ export async function createRefreshingEdvDocCipher({ keyAgreementKey, keyResolve
|
|
|
50
50
|
keyAgreementKey,
|
|
51
51
|
keyResolver,
|
|
52
52
|
collectionId,
|
|
53
|
-
|
|
53
|
+
spaceUrl,
|
|
54
54
|
idDerivation,
|
|
55
55
|
encryption
|
|
56
56
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"refreshingDocCipher.js","sourceRoot":"","sources":["../../src/edv/refreshingDocCipher.ts"],"names":[],"mappings":"AAqCA,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAChD,OAAO,EAAE,kBAAkB,EAAqB,MAAM,gBAAgB,CAAA;AACtE,OAAO,EACL,iBAAiB,EAGlB,MAAM,cAAc,CAAA;AAErB;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAAC,EACjD,eAAe,EACf,WAAW,EACX,YAAY,EACZ,
|
|
1
|
+
{"version":3,"file":"refreshingDocCipher.js","sourceRoot":"","sources":["../../src/edv/refreshingDocCipher.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,13 +4,13 @@ import type { CodecTransportFactory } from './EdvCodec.js';
|
|
|
4
4
|
* codec's route to its own document and chunk resources on the server.
|
|
5
5
|
*
|
|
6
6
|
* @param options {object}
|
|
7
|
-
* @param options.
|
|
7
|
+
* @param options.spaceUrl {string} the Space holding the Collection
|
|
8
8
|
* @param options.collectionId {string} the Collection
|
|
9
9
|
* @param options.contentType {string} stored envelope content type
|
|
10
10
|
* @returns {CodecTransportFactory}
|
|
11
11
|
*/
|
|
12
|
-
export declare function wasTransportFactory({
|
|
13
|
-
|
|
12
|
+
export declare function wasTransportFactory({ spaceUrl, collectionId, contentType }: {
|
|
13
|
+
spaceUrl: string;
|
|
14
14
|
collectionId: string;
|
|
15
15
|
contentType: string;
|
|
16
16
|
}): CodecTransportFactory;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transportFactory.d.ts","sourceRoot":"","sources":["../../src/edv/transportFactory.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAE1D;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,
|
|
1
|
+
{"version":3,"file":"transportFactory.d.ts","sourceRoot":"","sources":["../../src/edv/transportFactory.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAE1D;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,QAAQ,EACR,YAAY,EACZ,WAAW,EACZ,EAAE;IACD,QAAQ,EAAE,MAAM,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;CACpB,GAAG,qBAAqB,CAUxB"}
|
|
@@ -15,15 +15,15 @@ import { WasTransport } from './WasTransport.js';
|
|
|
15
15
|
* codec's route to its own document and chunk resources on the server.
|
|
16
16
|
*
|
|
17
17
|
* @param options {object}
|
|
18
|
-
* @param options.
|
|
18
|
+
* @param options.spaceUrl {string} the Space holding the Collection
|
|
19
19
|
* @param options.collectionId {string} the Collection
|
|
20
20
|
* @param options.contentType {string} stored envelope content type
|
|
21
21
|
* @returns {CodecTransportFactory}
|
|
22
22
|
*/
|
|
23
|
-
export function wasTransportFactory({
|
|
23
|
+
export function wasTransportFactory({ spaceUrl, collectionId, contentType }) {
|
|
24
24
|
return ({ context, documentHeaders, baseline }) => new WasTransport({
|
|
25
25
|
was: { request: input => context.request(input) },
|
|
26
|
-
|
|
26
|
+
spaceUrl,
|
|
27
27
|
collectionId,
|
|
28
28
|
contentType,
|
|
29
29
|
...(documentHeaders !== undefined && { documentHeaders }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transportFactory.js","sourceRoot":"","sources":["../../src/edv/transportFactory.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;GAOG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAGhD;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAClC,
|
|
1
|
+
{"version":3,"file":"transportFactory.js","sourceRoot":"","sources":["../../src/edv/transportFactory.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;GAOG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAGhD;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAClC,QAAQ,EACR,YAAY,EACZ,WAAW,EAKZ;IACC,OAAO,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,EAAE,EAAE,CAChD,IAAI,YAAY,CAAC;QACf,GAAG,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACjD,QAAQ;QACR,YAAY;QACZ,WAAW;QACX,GAAG,CAAC,eAAe,KAAK,SAAS,IAAI,EAAE,eAAe,EAAE,CAAC;QACzD,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,CAAC;KAC5C,CAAC,CAAA;AACN,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -6,11 +6,12 @@
|
|
|
6
6
|
* navigational handles, the typed error hierarchy, and the shared types.
|
|
7
7
|
*/
|
|
8
8
|
export { WasClient } from './WasClient.js';
|
|
9
|
+
export type { ServerLocator } from './WasClient.js';
|
|
9
10
|
export { Space } from './Space.js';
|
|
10
11
|
export { Collection } from './Collection.js';
|
|
11
12
|
export { Resource } from './Resource.js';
|
|
12
13
|
export { zcapClientForSigner } from './zcapClient.js';
|
|
13
|
-
export { discoverService } from './internal/service.js';
|
|
14
|
+
export { discoverService, readServiceDescription } from './internal/service.js';
|
|
14
15
|
export { parseSpaceTarget } from './internal/paths.js';
|
|
15
16
|
export { allowsAction } from './internal/grant.js';
|
|
16
17
|
export type { ParsedSpacePath } from './internal/paths.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;GAGG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -10,7 +10,7 @@ export { Space } from './Space.js';
|
|
|
10
10
|
export { Collection } from './Collection.js';
|
|
11
11
|
export { Resource } from './Resource.js';
|
|
12
12
|
export { zcapClientForSigner } from './zcapClient.js';
|
|
13
|
-
export { discoverService } from './internal/service.js';
|
|
13
|
+
export { discoverService, readServiceDescription } from './internal/service.js';
|
|
14
14
|
export { parseSpaceTarget } from './internal/paths.js';
|
|
15
15
|
export { allowsAction } from './internal/grant.js';
|
|
16
16
|
export { readEtag, writeHeaders } from './internal/conditional.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;GAGG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;GAGG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAE/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAElD,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAC7D,4EAA4E;AAC5E,8EAA8E;AAC9E,+EAA+E;AAC/E,gDAAgD;AAChD,OAAO,EACL,4BAA4B,EAC5B,oBAAoB,EACpB,gBAAgB,EAChB,YAAY,EACb,MAAM,uBAAuB,CAAA;AAG9B,OAAO,EACL,QAAQ,EACR,aAAa,EACb,sBAAsB,EACtB,sBAAsB,EACtB,eAAe,EACf,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,EACb,uBAAuB,EACvB,oBAAoB,EACpB,kBAAkB,EAClB,eAAe,EACf,sBAAsB,EACtB,yBAAyB,EACzB,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,oBAAoB,EACpB,oBAAoB,EACpB,cAAc,EACd,UAAU,EACV,aAAa,EACb,QAAQ,EACT,MAAM,aAAa,CAAA;AAEpB,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA"}
|
package/dist/internal/codec.d.ts
CHANGED
|
@@ -93,7 +93,7 @@ export declare class CodecHolder {
|
|
|
93
93
|
* through unchanged.
|
|
94
94
|
*/
|
|
95
95
|
interface CodecTarget {
|
|
96
|
-
|
|
96
|
+
spaceUrl: string;
|
|
97
97
|
collectionId: string;
|
|
98
98
|
override?: EncryptionOverride;
|
|
99
99
|
capability?: IZcap;
|
|
@@ -105,7 +105,7 @@ interface CodecTarget {
|
|
|
105
105
|
*
|
|
106
106
|
* @param context {ClientContext}
|
|
107
107
|
* @param options {object}
|
|
108
|
-
* @param options.
|
|
108
|
+
* @param options.spaceUrl {string}
|
|
109
109
|
* @param options.collectionId {string}
|
|
110
110
|
* @param [options.override] {EncryptionOverride} per-handle override
|
|
111
111
|
* @param [options.capability] {IZcap} the handle's bound capability
|
|
@@ -131,7 +131,7 @@ export declare const identityCodec: ResourceCodec;
|
|
|
131
131
|
*
|
|
132
132
|
* @param context {ClientContext}
|
|
133
133
|
* @param options {object}
|
|
134
|
-
* @param options.
|
|
134
|
+
* @param options.spaceUrl {string}
|
|
135
135
|
* @param options.collectionId {string}
|
|
136
136
|
* @param [options.override] {EncryptionOverride} per-handle override; wins
|
|
137
137
|
* over the descriptor and skips the descriptor read
|
|
@@ -141,7 +141,7 @@ export declare const identityCodec: ResourceCodec;
|
|
|
141
141
|
* @returns {Promise<CodecResolution>} the codec, plus the metadata snapshot
|
|
142
142
|
* the index-schema read produced when there was one
|
|
143
143
|
*/
|
|
144
|
-
export declare function resolveCodec(context: ClientContext, {
|
|
144
|
+
export declare function resolveCodec(context: ClientContext, { spaceUrl, collectionId, override, capability }: CodecTarget): Promise<CodecResolution>;
|
|
145
145
|
/**
|
|
146
146
|
* Builds the codec a descriptor names, for a write that states the descriptor
|
|
147
147
|
* itself rather than discovering it from stored state: the identity codec when
|
|
@@ -152,14 +152,14 @@ export declare function resolveCodec(context: ClientContext, { spaceId, collecti
|
|
|
152
152
|
*
|
|
153
153
|
* @param context {ClientContext}
|
|
154
154
|
* @param options {object}
|
|
155
|
-
* @param options.
|
|
155
|
+
* @param options.spaceUrl {string}
|
|
156
156
|
* @param options.collectionId {string}
|
|
157
157
|
* @param [options.descriptor] {CollectionEncryption} the descriptor the write
|
|
158
158
|
* declares; absent means plaintext
|
|
159
159
|
* @returns {Promise<ResourceCodec | null>}
|
|
160
160
|
*/
|
|
161
|
-
export declare function codecForDescriptor(context: ClientContext, {
|
|
162
|
-
|
|
161
|
+
export declare function codecForDescriptor(context: ClientContext, { spaceUrl, collectionId, descriptor }: {
|
|
162
|
+
spaceUrl: string;
|
|
163
163
|
collectionId: string;
|
|
164
164
|
descriptor?: CollectionEncryption;
|
|
165
165
|
}): Promise<ResourceCodec | null>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codec.d.ts","sourceRoot":"","sources":["../../src/internal/codec.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAA+B,aAAa,EAAE,MAAM,aAAa,CAAA;AAC7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAajD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"codec.d.ts","sourceRoot":"","sources":["../../src/internal/codec.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAA+B,aAAa,EAAE,MAAM,aAAa,CAAA;AAC7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAajD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAA;AAM7D,OAAO,KAAK,EACV,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,KAAK,EAGL,sBAAsB,EAEvB,MAAM,aAAa,CAAA;AAEpB;;;;;;;;;;GAUG;AACH,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,aAAa,CAAA;IACpB,IAAI,CAAC,EAAE,CAAC,kBAAkB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,IAAI,CAAA;IACtD,QAAQ,CAAC,EAAE,YAAY,CAAA;CACxB;AAED;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,wBAAwB,CAAA;IAClC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,sBAAsB,CAAA;CAChC;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,kBAAkB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC5C,QAAQ,EAAE,YAAY,CAAA;CACvB;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,WAAW;;IAGtB;;;OAGG;gBACS,OAAO,EAAE,MAAM,OAAO,CAAC,eAAe,CAAC;IAInD;;;;;OAKG;IACG,GAAG,IAAI,OAAO,CAAC,aAAa,CAAC;IAOnC;;;;;;;;;OASG;IACG,OAAO,IAAI,OAAO,CAAC,eAAe,CAAC;IAczC;;;;OAIG;IACH,KAAK,IAAI,IAAI;CAGd;AAED;;;;;GAKG;AACH,UAAU,WAAW;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,kBAAkB,CAAA;IAC7B,UAAU,CAAC,EAAE,KAAK,CAAA;CACnB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE,WAAW,GACnB,WAAW,CAEb;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,aAAa,EAAE,aAyD3B,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,aAAa,EACtB,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,WAAW,GAC5D,OAAO,CAAC,eAAe,CAAC,CA+E1B;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,aAAa,EACtB,EACE,QAAQ,EACR,YAAY,EACZ,UAAU,EACX,EAAE;IACD,QAAQ,EAAE,MAAM,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,oBAAoB,CAAA;CAClC,GACA,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAc/B;AA4CD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,gBAAgB,CAAC,EACrC,KAAK,EACL,MAAM,EACP,EAAE;IACD,KAAK,EAAE,aAAa,CAAA;IACpB,MAAM,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,CAAA;CAC7B,GAAG,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CASzC"}
|
package/dist/internal/codec.js
CHANGED
|
@@ -2,6 +2,7 @@ import { decodedStream, mediaType, prepareBody, parseResource } from './content.
|
|
|
2
2
|
import { bytesToStream } from './blob.js';
|
|
3
3
|
import { asCollectionMetadata, storedEncryption, unreadableDescriptionError } from './describe.js';
|
|
4
4
|
import { readCollectionMetadata } from './meta.js';
|
|
5
|
+
import { collectionUrl } from './paths.js';
|
|
5
6
|
import { readIndexSchema } from './indexSchema.js';
|
|
6
7
|
import { Memo } from './memo.js';
|
|
7
8
|
import { EncryptionError, NotImplementedError } from '../errors.js';
|
|
@@ -78,7 +79,7 @@ export class CodecHolder {
|
|
|
78
79
|
*
|
|
79
80
|
* @param context {ClientContext}
|
|
80
81
|
* @param options {object}
|
|
81
|
-
* @param options.
|
|
82
|
+
* @param options.spaceUrl {string}
|
|
82
83
|
* @param options.collectionId {string}
|
|
83
84
|
* @param [options.override] {EncryptionOverride} per-handle override
|
|
84
85
|
* @param [options.capability] {IZcap} the handle's bound capability
|
|
@@ -144,7 +145,7 @@ export const identityCodec = {
|
|
|
144
145
|
*
|
|
145
146
|
* @param context {ClientContext}
|
|
146
147
|
* @param options {object}
|
|
147
|
-
* @param options.
|
|
148
|
+
* @param options.spaceUrl {string}
|
|
148
149
|
* @param options.collectionId {string}
|
|
149
150
|
* @param [options.override] {EncryptionOverride} per-handle override; wins
|
|
150
151
|
* over the descriptor and skips the descriptor read
|
|
@@ -154,7 +155,7 @@ export const identityCodec = {
|
|
|
154
155
|
* @returns {Promise<CodecResolution>} the codec, plus the metadata snapshot
|
|
155
156
|
* the index-schema read produced when there was one
|
|
156
157
|
*/
|
|
157
|
-
export async function resolveCodec(context, {
|
|
158
|
+
export async function resolveCodec(context, { spaceUrl, collectionId, override, capability }) {
|
|
158
159
|
// 1. A per-handle override wins and skips the descriptor read.
|
|
159
160
|
if (override !== undefined) {
|
|
160
161
|
if (override === 'plaintext') {
|
|
@@ -166,7 +167,7 @@ export async function resolveCodec(context, { spaceId, collectionId, override, c
|
|
|
166
167
|
// fail-closed, so dropping the descriptor here would break every read and
|
|
167
168
|
// write.
|
|
168
169
|
const { codec } = await buildEncryptingCodec(context, {
|
|
169
|
-
|
|
170
|
+
spaceUrl,
|
|
170
171
|
collectionId,
|
|
171
172
|
scheme: override.scheme,
|
|
172
173
|
keys: override.keys,
|
|
@@ -175,7 +176,7 @@ export async function resolveCodec(context, { spaceId, collectionId, override, c
|
|
|
175
176
|
// The override skipped the Collection Metadata read, so a searchable
|
|
176
177
|
// collection's persisted index schema is fetched here.
|
|
177
178
|
const snapshot = await loadIndexSchema(context, {
|
|
178
|
-
|
|
179
|
+
spaceUrl,
|
|
179
180
|
collectionId,
|
|
180
181
|
capability,
|
|
181
182
|
codec
|
|
@@ -197,13 +198,13 @@ export async function resolveCodec(context, { spaceId, collectionId, override, c
|
|
|
197
198
|
// downgrading to plaintext and writing the caller's secret as server-visible
|
|
198
199
|
// plaintext into a possibly-encrypted collection.
|
|
199
200
|
const read = await readCollectionMetadata(context, {
|
|
200
|
-
|
|
201
|
+
spaceUrl,
|
|
201
202
|
collectionId,
|
|
202
203
|
capability
|
|
203
204
|
});
|
|
204
205
|
if (read === null) {
|
|
205
206
|
throw unreadableDescriptionError({
|
|
206
|
-
operation: `determine whether collection ${
|
|
207
|
+
operation: `determine whether collection ${collectionUrl({ spaceUrl, collectionId })} is ` +
|
|
207
208
|
'encrypted',
|
|
208
209
|
consequence: 'an encryption-capable client refuses to fall back to plaintext',
|
|
209
210
|
advice: 'Pass an explicit per-handle encryption override -- ' +
|
|
@@ -215,7 +216,7 @@ export async function resolveCodec(context, { spaceId, collectionId, override, c
|
|
|
215
216
|
const declared = storedEncryption(read.metadata);
|
|
216
217
|
const { codec } = declared
|
|
217
218
|
? await buildEncryptingCodec(context, {
|
|
218
|
-
|
|
219
|
+
spaceUrl,
|
|
219
220
|
collectionId,
|
|
220
221
|
scheme: declared.scheme,
|
|
221
222
|
encryption: declared
|
|
@@ -241,13 +242,13 @@ export async function resolveCodec(context, { spaceId, collectionId, override, c
|
|
|
241
242
|
*
|
|
242
243
|
* @param context {ClientContext}
|
|
243
244
|
* @param options {object}
|
|
244
|
-
* @param options.
|
|
245
|
+
* @param options.spaceUrl {string}
|
|
245
246
|
* @param options.collectionId {string}
|
|
246
247
|
* @param [options.descriptor] {CollectionEncryption} the descriptor the write
|
|
247
248
|
* declares; absent means plaintext
|
|
248
249
|
* @returns {Promise<ResourceCodec | null>}
|
|
249
250
|
*/
|
|
250
|
-
export async function codecForDescriptor(context, {
|
|
251
|
+
export async function codecForDescriptor(context, { spaceUrl, collectionId, descriptor }) {
|
|
251
252
|
if (descriptor === undefined) {
|
|
252
253
|
return identityCodec;
|
|
253
254
|
}
|
|
@@ -255,7 +256,7 @@ export async function codecForDescriptor(context, { spaceId, collectionId, descr
|
|
|
255
256
|
return null;
|
|
256
257
|
}
|
|
257
258
|
const codec = await context.encryption.codecFor({
|
|
258
|
-
|
|
259
|
+
spaceUrl,
|
|
259
260
|
collectionId,
|
|
260
261
|
scheme: descriptor.scheme,
|
|
261
262
|
encryption: descriptor
|
|
@@ -330,7 +331,7 @@ export async function openStoredCustom({ codec, stored }) {
|
|
|
330
331
|
*
|
|
331
332
|
* @param context {ClientContext}
|
|
332
333
|
* @param options {object}
|
|
333
|
-
* @param options.
|
|
334
|
+
* @param options.spaceUrl {string}
|
|
334
335
|
* @param options.collectionId {string}
|
|
335
336
|
* @param options.scheme {string}
|
|
336
337
|
* @param [options.encryption] {CollectionEncryption} the descriptor, passed
|
|
@@ -338,15 +339,15 @@ export async function openStoredCustom({ codec, stored }) {
|
|
|
338
339
|
* @param [options.keys] {unknown} override-supplied key material
|
|
339
340
|
* @returns {Promise<CodecResolution>}
|
|
340
341
|
*/
|
|
341
|
-
async function buildEncryptingCodec(context, {
|
|
342
|
-
const where =
|
|
342
|
+
async function buildEncryptingCodec(context, { spaceUrl, collectionId, scheme, encryption, keys }) {
|
|
343
|
+
const where = collectionUrl({ spaceUrl, collectionId });
|
|
343
344
|
if (!context.encryption) {
|
|
344
345
|
throw new EncryptionError(`Collection ${where} is encrypted (scheme "${scheme}") but this client ` +
|
|
345
346
|
'has no encryption provider. Construct the WasClient with an ' +
|
|
346
347
|
'`encryption` provider (see @interop/was-client/edv).');
|
|
347
348
|
}
|
|
348
349
|
const codec = await context.encryption.codecFor({
|
|
349
|
-
|
|
350
|
+
spaceUrl,
|
|
350
351
|
collectionId,
|
|
351
352
|
scheme,
|
|
352
353
|
encryption,
|
|
@@ -384,7 +385,7 @@ async function buildEncryptingCodec(context, { spaceId, collectionId, scheme, en
|
|
|
384
385
|
*
|
|
385
386
|
* @param context {ClientContext}
|
|
386
387
|
* @param options {object}
|
|
387
|
-
* @param options.
|
|
388
|
+
* @param options.spaceUrl {string}
|
|
388
389
|
* @param options.collectionId {string}
|
|
389
390
|
* @param [options.capability] {IZcap}
|
|
390
391
|
* @param options.codec {ResourceCodec} the codec to install the schema on
|
|
@@ -392,14 +393,14 @@ async function buildEncryptingCodec(context, { spaceId, collectionId, scheme, en
|
|
|
392
393
|
* the read behind it, `null` when there is none to read, and `undefined`
|
|
393
394
|
* when no read happened at all
|
|
394
395
|
*/
|
|
395
|
-
async function loadIndexSchema(context, {
|
|
396
|
+
async function loadIndexSchema(context, { spaceUrl, collectionId, capability, codec }) {
|
|
396
397
|
if (!codec.indexing) {
|
|
397
398
|
return undefined;
|
|
398
399
|
}
|
|
399
400
|
let read;
|
|
400
401
|
try {
|
|
401
402
|
read = await readCollectionMetadata(context, {
|
|
402
|
-
|
|
403
|
+
spaceUrl,
|
|
403
404
|
collectionId,
|
|
404
405
|
capability
|
|
405
406
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codec.js","sourceRoot":"","sources":["../../src/internal/codec.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"codec.js","sourceRoot":"","sources":["../../src/internal/codec.ts"],"names":[],"mappings":"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"}
|
|
@@ -154,13 +154,13 @@ export declare function readEtag(response: ResponseLike | null): string | undefi
|
|
|
154
154
|
* the server.
|
|
155
155
|
*
|
|
156
156
|
* @param options {object}
|
|
157
|
-
* @param options.
|
|
157
|
+
* @param options.url {string} the resource URL written
|
|
158
158
|
* @param options.current {ResponseLike | null} the pre-read document
|
|
159
159
|
* @param [options.precondition] {WritePrecondition} the caller's precondition
|
|
160
160
|
* @returns {void}
|
|
161
161
|
*/
|
|
162
|
-
export declare function assertPreconditionAgainstPreRead({
|
|
163
|
-
|
|
162
|
+
export declare function assertPreconditionAgainstPreRead({ url, current, precondition }: {
|
|
163
|
+
url: string;
|
|
164
164
|
current: ResponseLike | null;
|
|
165
165
|
precondition?: WritePrecondition;
|
|
166
166
|
}): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conditional.d.ts","sourceRoot":"","sources":["../../src/internal/conditional.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC7D,OAAO,EACL,iBAAiB,EAGlB,MAAM,cAAc,CAAA;AAErB;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,cAAc,CAAA;AAE3C;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,cAAc,CAAA;AAE3C;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,YAAY,GAAG,iBAAiB,CAE5E;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAC/B,YAAY,CAAC,EAAE,iBAAiB,GAC/B,iBAAiB,GAAG,SAAS,CAK/B;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CACtC,YAAY,CAAC,EAAE,iBAAiB,GAC/B,IAAI,CAQN;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAOtD;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,YAAY,CAAC,EAC3B,WAAW,EACX,YAAiB,EACjB,KAAK,EACL,QAAQ,EACT,EAAE;IACD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,YAAY,CAAC,EAAE,iBAAiB,CAAA;IAChC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAqBrC;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,2BAA2B,CAAC,EAC1C,SAAS,EACV,EAAE;IACD,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,iBAAiB,CASpB;AAED;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAE1E;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,gCAAgC,CAAC,EAC/C,
|
|
1
|
+
{"version":3,"file":"conditional.d.ts","sourceRoot":"","sources":["../../src/internal/conditional.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC7D,OAAO,EACL,iBAAiB,EAGlB,MAAM,cAAc,CAAA;AAErB;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,cAAc,CAAA;AAE3C;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,cAAc,CAAA;AAE3C;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,YAAY,GAAG,iBAAiB,CAE5E;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAC/B,YAAY,CAAC,EAAE,iBAAiB,GAC/B,iBAAiB,GAAG,SAAS,CAK/B;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CACtC,YAAY,CAAC,EAAE,iBAAiB,GAC/B,IAAI,CAQN;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAOtD;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,YAAY,CAAC,EAC3B,WAAW,EACX,YAAiB,EACjB,KAAK,EACL,QAAQ,EACT,EAAE;IACD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,YAAY,CAAC,EAAE,iBAAiB,CAAA;IAChC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAqBrC;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,2BAA2B,CAAC,EAC1C,SAAS,EACV,EAAE;IACD,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,iBAAiB,CASpB;AAED;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAE1E;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,gCAAgC,CAAC,EAC/C,GAAG,EACH,OAAO,EACP,YAAY,EACb,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,YAAY,GAAG,IAAI,CAAA;IAC5B,YAAY,CAAC,EAAE,iBAAiB,CAAA;CACjC,GAAG,IAAI,CAkCP"}
|