@interop/was-client 0.22.0 → 0.24.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 +12 -11
- package/dist/Collection.d.ts +28 -25
- package/dist/Collection.d.ts.map +1 -1
- package/dist/Collection.js +55 -51
- package/dist/Collection.js.map +1 -1
- package/dist/Resource.d.ts +7 -7
- package/dist/Resource.d.ts.map +1 -1
- package/dist/Resource.js +19 -18
- package/dist/Resource.js.map +1 -1
- package/dist/Space.d.ts +3 -2
- package/dist/Space.d.ts.map +1 -1
- package/dist/Space.js +5 -4
- package/dist/Space.js.map +1 -1
- package/dist/WasClient.d.ts +19 -17
- package/dist/WasClient.d.ts.map +1 -1
- package/dist/WasClient.js +23 -21
- package/dist/WasClient.js.map +1 -1
- package/dist/codec.d.ts +16 -15
- package/dist/codec.d.ts.map +1 -1
- package/dist/edv/EdvCodec.d.ts +2 -2
- package/dist/edv/EdvCodec.d.ts.map +1 -1
- package/dist/edv/EdvCodec.js +29 -28
- package/dist/edv/EdvCodec.js.map +1 -1
- package/dist/edv/WasTransport.d.ts +9 -8
- package/dist/edv/WasTransport.d.ts.map +1 -1
- package/dist/edv/WasTransport.js +9 -8
- package/dist/edv/WasTransport.js.map +1 -1
- package/dist/edv/constants.js +1 -1
- package/dist/edv/descriptorStore.d.ts +119 -0
- package/dist/edv/descriptorStore.d.ts.map +1 -0
- package/dist/edv/{markerStore.js → descriptorStore.js} +41 -40
- package/dist/edv/descriptorStore.js.map +1 -0
- package/dist/edv/docCipher.d.ts +31 -29
- package/dist/edv/docCipher.d.ts.map +1 -1
- package/dist/edv/docCipher.js +26 -24
- package/dist/edv/docCipher.js.map +1 -1
- package/dist/edv/epochCrypto.d.ts +8 -8
- package/dist/edv/epochCrypto.d.ts.map +1 -1
- package/dist/edv/epochCrypto.js +15 -14
- package/dist/edv/epochCrypto.js.map +1 -1
- package/dist/edv/epochKeys.d.ts +18 -15
- package/dist/edv/epochKeys.d.ts.map +1 -1
- package/dist/edv/epochKeys.js +20 -19
- package/dist/edv/epochKeys.js.map +1 -1
- package/dist/edv/epochMac.d.ts +11 -10
- package/dist/edv/epochMac.d.ts.map +1 -1
- package/dist/edv/epochMac.js +24 -23
- package/dist/edv/epochMac.js.map +1 -1
- package/dist/edv/index.d.ts +11 -8
- package/dist/edv/index.d.ts.map +1 -1
- package/dist/edv/index.js +9 -7
- package/dist/edv/index.js.map +1 -1
- package/dist/edv/recipients.d.ts +92 -30
- package/dist/edv/recipients.d.ts.map +1 -1
- package/dist/edv/recipients.js +228 -80
- package/dist/edv/recipients.js.map +1 -1
- package/dist/errors.d.ts +2 -2
- package/dist/errors.js +2 -2
- package/dist/internal/codec.d.ts +8 -8
- package/dist/internal/codec.d.ts.map +1 -1
- package/dist/internal/codec.js +12 -12
- package/dist/internal/codec.js.map +1 -1
- package/dist/internal/describe.d.ts +3 -3
- package/dist/sync/envelope.d.ts +2 -2
- package/dist/sync/envelope.js +2 -2
- package/dist/sync/provisioning.d.ts +10 -10
- package/dist/sync/provisioning.js +9 -9
- package/dist/sync/types.d.ts +4 -4
- package/dist/types.d.ts +5 -5
- package/package.json +2 -2
- package/dist/edv/markerStore.d.ts +0 -118
- package/dist/edv/markerStore.d.ts.map +0 -1
- package/dist/edv/markerStore.js.map +0 -1
package/README.md
CHANGED
|
@@ -575,9 +575,10 @@ stores faithfully). Two things drive it, kept separate:
|
|
|
575
575
|
|
|
576
576
|
- **Policy** (is this collection encrypted?) is declared on the collection
|
|
577
577
|
itself: `createCollection({ encryption: { scheme: 'edv' } })` writes a
|
|
578
|
-
non-secret `encryption`
|
|
579
|
-
reader -- including a delegated consumer that did **not** create
|
|
580
|
-
collection -- discovers it by reading the Description, so it knows to
|
|
578
|
+
non-secret `encryption` descriptor to the Collection Description. Any
|
|
579
|
+
authorized reader -- including a delegated consumer that did **not** create
|
|
580
|
+
the collection -- discovers it by reading the Description, so it knows to
|
|
581
|
+
decrypt.
|
|
581
582
|
- **Keys** come from an `encryption` provider you pass to `WasClient` (built
|
|
582
583
|
from the opt-in `@interop/was-client/edv` subpath, so plaintext consumers
|
|
583
584
|
never pull the crypto graph). It is a pure **keystore**: `resolveKeys` returns
|
|
@@ -585,7 +586,7 @@ stores faithfully). Two things drive it, kept separate:
|
|
|
585
586
|
opaque JWE envelopes.
|
|
586
587
|
|
|
587
588
|
The ordinary `Collection`/`Resource` handles then transparently encrypt on write
|
|
588
|
-
and decrypt on read for any collection the
|
|
589
|
+
and decrypt on read for any collection the descriptor (or an override) declares
|
|
589
590
|
encrypted.
|
|
590
591
|
|
|
591
592
|
```ts
|
|
@@ -600,7 +601,7 @@ const encryption = createEdvEncryption({
|
|
|
600
601
|
})
|
|
601
602
|
const was = WasClient.fromSigner({ serverUrl, signer, encryption })
|
|
602
603
|
|
|
603
|
-
// Declare the collection encrypted (writes the
|
|
604
|
+
// Declare the collection encrypted (writes the descriptor). The returned handle is
|
|
604
605
|
// pre-seeded, so the first write encrypts with no extra round-trip.
|
|
605
606
|
const vault = await was
|
|
606
607
|
.space(spaceId)
|
|
@@ -608,13 +609,13 @@ const vault = await was
|
|
|
608
609
|
const { id } = await vault.add({ secret: 'hello' }) // encrypted; id is an EDV id
|
|
609
610
|
const back = await vault.get(id) // { secret: 'hello' } -- decrypted
|
|
610
611
|
|
|
611
|
-
// A consumer that did not create it discovers the
|
|
612
|
+
// A consumer that did not create it discovers the descriptor and decrypts with its
|
|
612
613
|
// own keys -- no override needed; one cached read of the Description:
|
|
613
614
|
const same = was.space(spaceId).collection('vault')
|
|
614
|
-
await same.get(id) // reads the
|
|
615
|
+
await same.get(id) // reads the descriptor, then decrypts
|
|
615
616
|
```
|
|
616
617
|
|
|
617
|
-
The switch is the **
|
|
618
|
+
The switch is the **descriptor**: a handle encrypts a collection when its
|
|
618
619
|
Description declares `encryption` (resolution reads the Description once, then
|
|
619
620
|
caches -- no round-trip for plaintext-only clients or when an override is set).
|
|
620
621
|
Keys are then **required**: if the collection is declared encrypted but your
|
|
@@ -631,9 +632,9 @@ const vault = was.space(spaceId).collection('vault', {
|
|
|
631
632
|
})
|
|
632
633
|
```
|
|
633
634
|
|
|
634
|
-
**Migrating a pre-
|
|
635
|
-
re-declare it once with
|
|
636
|
-
`collection.configure({ encryption: { scheme: 'edv' } })` (the
|
|
635
|
+
**Migrating a pre-descriptor vault** (created before the descriptor existed,
|
|
636
|
+
keys-only): re-declare it once with
|
|
637
|
+
`collection.configure({ encryption: { scheme: 'edv' } })` (the descriptor is
|
|
637
638
|
set-once: declaring it on a collection that lacks one is allowed, changing or
|
|
638
639
|
clearing an existing one is rejected). Until then, a per-handle override reads
|
|
639
640
|
it correctly.
|
package/dist/Collection.d.ts
CHANGED
|
@@ -14,8 +14,8 @@ export declare class Collection {
|
|
|
14
14
|
* @param options.collectionId {string}
|
|
15
15
|
* @param [options.capability] {IZcap} - capability attached to every request
|
|
16
16
|
* @param [options.encryption] {EncryptionOverride} - per-handle encryption
|
|
17
|
-
* override; wins over the Collection's declared
|
|
18
|
-
*
|
|
17
|
+
* override; wins over the Collection's declared descriptor and skips the
|
|
18
|
+
* descriptor-discovery round-trip
|
|
19
19
|
*/
|
|
20
20
|
constructor({ context, spaceId, collectionId, capability, encryption }: {
|
|
21
21
|
context: ClientContext;
|
|
@@ -42,14 +42,15 @@ export declare class Collection {
|
|
|
42
42
|
* nor `encryption` is supplied, this fails closed rather than sending a PUT
|
|
43
43
|
* body that would silently drop an existing collection's `backend` (a
|
|
44
44
|
* data-placement change) or trip `encryption-immutable` by clearing its
|
|
45
|
-
*
|
|
45
|
+
* descriptor on a replace-semantics server. Pass `force: true` to proceed
|
|
46
|
+
* anyway
|
|
46
47
|
* -- e.g. when creating a new collection through a handle (or use
|
|
47
48
|
* `space.createCollection()`, which does not merge).
|
|
48
49
|
*
|
|
49
50
|
* @param desc {CollectionWritableFields} the fields to merge; `encryption`
|
|
50
|
-
* declares the client-side encryption
|
|
51
|
+
* declares the client-side encryption descriptor, which is set-once on the
|
|
51
52
|
* server (it may be added to a Collection that lacks one, but
|
|
52
|
-
* changing/clearing an existing
|
|
53
|
+
* changing/clearing an existing descriptor is rejected -- `ConflictError`,
|
|
53
54
|
* `encryption-immutable`)
|
|
54
55
|
* @param [desc.force] {boolean} proceed even when the current description
|
|
55
56
|
* is unreadable and `backend`/`encryption` are omitted (see above)
|
|
@@ -73,16 +74,17 @@ export declare class Collection {
|
|
|
73
74
|
etag?: string;
|
|
74
75
|
} | null>;
|
|
75
76
|
/**
|
|
76
|
-
* Writes (replaces) the Collection Description, optionally as a
|
|
77
|
-
* against a prior `ETag` (`ifMatch`, from {@link
|
|
78
|
-
* concurrent writer cannot be silently clobbered -- a
|
|
79
|
-
* as `PreconditionFailedError` (412). Sends the
|
|
80
|
-
* body; omit a field to drop it (replace
|
|
81
|
-
* every field forward. Returns the new
|
|
77
|
+
* Writes (replaces) the Collection Description, optionally as a
|
|
78
|
+
* compare-and-swap against a prior `ETag` (`ifMatch`, from {@link
|
|
79
|
+
* describeWithEtag}) so a concurrent writer cannot be silently clobbered -- a
|
|
80
|
+
* stale validator surfaces as `PreconditionFailedError` (412). Sends the
|
|
81
|
+
* writable fields as the full body; omit a field to drop it (replace
|
|
82
|
+
* semantics), so callers doing CAS pass every field forward. Returns the new
|
|
83
|
+
* `ETag` and the fields written.
|
|
82
84
|
*
|
|
83
85
|
* This is the generic description-CAS primitive the key-epoch recipient
|
|
84
86
|
* operations build on (add/remove a reader is a CAS of the `encryption`
|
|
85
|
-
*
|
|
87
|
+
* descriptor); it is not epoch-specific.
|
|
86
88
|
*
|
|
87
89
|
* @param description {CollectionWritableFields}
|
|
88
90
|
* @param options {object}
|
|
@@ -138,9 +140,10 @@ export declare class Collection {
|
|
|
138
140
|
*/
|
|
139
141
|
get(resourceId: string): Promise<Json | Blob | null>;
|
|
140
142
|
/**
|
|
141
|
-
* Creates or replaces a resource by id (upsert). Forwards the
|
|
142
|
-
* options (`ifMatch` / `ifNoneMatch`) to `Resource.put`;
|
|
143
|
-
* `conditional-writes` semantics. Returns the stored
|
|
143
|
+
* Creates or replaces a resource by id (upsert). Forwards the
|
|
144
|
+
* conditional-write options (`ifMatch` / `ifNoneMatch`) to `Resource.put`;
|
|
145
|
+
* see it for the `conditional-writes` semantics. Returns the stored
|
|
146
|
+
* resource's new `etag`.
|
|
144
147
|
*
|
|
145
148
|
* @param resourceId {string}
|
|
146
149
|
* @param data {ResourceData}
|
|
@@ -162,19 +165,19 @@ export declare class Collection {
|
|
|
162
165
|
* pagination links, buffering every page into a single list (the returned
|
|
163
166
|
* envelope omits `next`). Convenient, but holds the whole collection in memory
|
|
164
167
|
* -- for a large collection prefer `listPages()` or `listItems()`, which stream
|
|
165
|
-
* one page at a time and allow stopping early. Returns `null` if the
|
|
166
|
-
* is missing or not visible to you (404 conflation caveat).
|
|
168
|
+
* one page at a time and allow stopping early. Returns `null` if the
|
|
169
|
+
* collection is missing or not visible to you (404 conflation caveat).
|
|
167
170
|
*
|
|
168
171
|
* @returns {Promise<CollectionResourcesList | null>}
|
|
169
172
|
*/
|
|
170
173
|
list(): Promise<CollectionResourcesList | null>;
|
|
171
174
|
/**
|
|
172
175
|
* Lazily yields the listing one page at a time, following the server's `next`
|
|
173
|
-
* links on demand (each page fetched with the same authorization). Use this
|
|
174
|
-
* stream a large collection in constant memory or to stop early. Yields
|
|
175
|
-
* if the collection is missing or not visible to you (404 conflation
|
|
176
|
-
* unlike `list()`, the iterator does not distinguish that from an
|
|
177
|
-
* collection.
|
|
176
|
+
* links on demand (each page fetched with the same authorization). Use this
|
|
177
|
+
* to stream a large collection in constant memory or to stop early. Yields
|
|
178
|
+
* nothing if the collection is missing or not visible to you (404 conflation
|
|
179
|
+
* caveat) -- unlike `list()`, the iterator does not distinguish that from an
|
|
180
|
+
* empty collection.
|
|
178
181
|
*
|
|
179
182
|
* @returns {AsyncGenerator<CollectionResourcesList>}
|
|
180
183
|
*/
|
|
@@ -224,9 +227,9 @@ export declare class Collection {
|
|
|
224
227
|
grant(options: GrantOptions): Promise<IDelegatedZcap>;
|
|
225
228
|
/**
|
|
226
229
|
* Reads the collection's access-control policy. Returns `null` when no policy
|
|
227
|
-
* is set (or it is not visible to you). Managing a policy is a
|
|
228
|
-
* operation; a capability scoped to the collection does not
|
|
229
|
-
* sub-resource.
|
|
230
|
+
* is set (or it is not visible to you). Managing a policy is a
|
|
231
|
+
* controller-level operation; a capability scoped to the collection does not
|
|
232
|
+
* cover its policy sub-resource.
|
|
230
233
|
*
|
|
231
234
|
* @returns {Promise<PolicyDocument | null>}
|
|
232
235
|
*/
|
package/dist/Collection.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Collection.d.ts","sourceRoot":"","sources":["../src/Collection.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAiC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAC3E,OAAO,KAAK,EACV,SAAS,EACT,iBAAiB,EACjB,YAAY,EACZ,qBAAqB,EACrB,wBAAwB,EACxB,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,cAAc,EACd,KAAK,EACL,IAAI,EACJ,YAAY,EACZ,OAAO,EACP,cAAc,EACd,uBAAuB,EACvB,eAAe,EAChB,MAAM,YAAY,CAAA;AAEnB,qBAAa,UAAU;;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IAYnB;;;;;;;;;;OAUG;gBACS,EACV,OAAO,EACP,OAAO,EACP,YAAY,EACZ,UAAU,EACV,UAAU,EACX,EAAE;QACD,OAAO,EAAE,aAAa,CAAA;QACtB,OAAO,EAAE,MAAM,CAAA;QACf,YAAY,EAAE,MAAM,CAAA;QACpB,UAAU,CAAC,EAAE,KAAK,CAAA;QAClB,UAAU,CAAC,EAAE,kBAAkB,CAAA;KAChC;
|
|
1
|
+
{"version":3,"file":"Collection.d.ts","sourceRoot":"","sources":["../src/Collection.ts"],"names":[],"mappings":"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"}
|
package/dist/Collection.js
CHANGED
|
@@ -39,8 +39,8 @@ export class Collection {
|
|
|
39
39
|
* @param options.collectionId {string}
|
|
40
40
|
* @param [options.capability] {IZcap} - capability attached to every request
|
|
41
41
|
* @param [options.encryption] {EncryptionOverride} - per-handle encryption
|
|
42
|
-
* override; wins over the Collection's declared
|
|
43
|
-
*
|
|
42
|
+
* override; wins over the Collection's declared descriptor and skips the
|
|
43
|
+
* descriptor-discovery round-trip
|
|
44
44
|
*/
|
|
45
45
|
constructor({ context, spaceId, collectionId, capability, encryption }) {
|
|
46
46
|
// Guard the id against the Reserved Path Segment Registry up front
|
|
@@ -99,14 +99,15 @@ export class Collection {
|
|
|
99
99
|
/**
|
|
100
100
|
* Resolves (once, then caches) the codec for this collection's reads and
|
|
101
101
|
* writes: the identity codec for a plaintext collection, or the encrypting
|
|
102
|
-
* codec when this collection is declared encrypted -- by a per-handle
|
|
103
|
-
* or its `encryption`
|
|
104
|
-
* An encrypted collection the client cannot key for fails
|
|
105
|
-
* a successful
|
|
106
|
-
* fresh handle to the same collection re-reads
|
|
107
|
-
* reuse it. A failed resolution (e.g. a transient
|
|
108
|
-
*
|
|
109
|
-
* retries rather than re-throwing the stale error
|
|
102
|
+
* codec when this collection is declared encrypted -- by a per-handle
|
|
103
|
+
* override or its `encryption` descriptor -- and the client's keystore
|
|
104
|
+
* supplies its keys. An encrypted collection the client cannot key for fails
|
|
105
|
+
* closed (throws), and a successful descriptor read happens at most once per
|
|
106
|
+
* handle (memoized here) -- a fresh handle to the same collection re-reads
|
|
107
|
+
* it, so retain the handle to reuse it. A failed resolution (e.g. a transient
|
|
108
|
+
* 500/network error during descriptor discovery) is not memoized: the cache
|
|
109
|
+
* is cleared so the next call retries rather than re-throwing the stale error
|
|
110
|
+
* forever.
|
|
110
111
|
*
|
|
111
112
|
* @returns {Promise<ResourceCodec>}
|
|
112
113
|
*/
|
|
@@ -137,14 +138,15 @@ export class Collection {
|
|
|
137
138
|
* nor `encryption` is supplied, this fails closed rather than sending a PUT
|
|
138
139
|
* body that would silently drop an existing collection's `backend` (a
|
|
139
140
|
* data-placement change) or trip `encryption-immutable` by clearing its
|
|
140
|
-
*
|
|
141
|
+
* descriptor on a replace-semantics server. Pass `force: true` to proceed
|
|
142
|
+
* anyway
|
|
141
143
|
* -- e.g. when creating a new collection through a handle (or use
|
|
142
144
|
* `space.createCollection()`, which does not merge).
|
|
143
145
|
*
|
|
144
146
|
* @param desc {CollectionWritableFields} the fields to merge; `encryption`
|
|
145
|
-
* declares the client-side encryption
|
|
147
|
+
* declares the client-side encryption descriptor, which is set-once on the
|
|
146
148
|
* server (it may be added to a Collection that lacks one, but
|
|
147
|
-
* changing/clearing an existing
|
|
149
|
+
* changing/clearing an existing descriptor is rejected -- `ConflictError`,
|
|
148
150
|
* `encryption-immutable`)
|
|
149
151
|
* @param [desc.force] {boolean} proceed even when the current description
|
|
150
152
|
* is unreadable and `backend`/`encryption` are omitted (see above)
|
|
@@ -159,7 +161,7 @@ export class Collection {
|
|
|
159
161
|
throw unreadableDescriptionError({
|
|
160
162
|
operation: `configure collection "${this.id}"`,
|
|
161
163
|
consequence: "merging forward could silently drop an existing collection's " +
|
|
162
|
-
'backend or encryption
|
|
164
|
+
'backend or encryption descriptor',
|
|
163
165
|
advice: 'Supply `backend`/`encryption` explicitly, use a read-capable ' +
|
|
164
166
|
'capability, or pass `force: true` if you are creating a new ' +
|
|
165
167
|
'collection.'
|
|
@@ -168,7 +170,7 @@ export class Collection {
|
|
|
168
170
|
// Merge every current field forward (mirror `Space.configure`): a
|
|
169
171
|
// replace-semantics server drops anything omitted from the PUT body, so
|
|
170
172
|
// `configure({ name })` on an EDV collection would otherwise wipe its
|
|
171
|
-
// `backend` or trip `encryption-immutable` by clearing the
|
|
173
|
+
// `backend` or trip `encryption-immutable` by clearing the descriptor.
|
|
172
174
|
const name = desc.name ?? current?.name;
|
|
173
175
|
const backend = desc.backend ?? current?.backend;
|
|
174
176
|
const encryption = desc.encryption ?? current?.encryption;
|
|
@@ -179,12 +181,12 @@ export class Collection {
|
|
|
179
181
|
capability: this.#capability,
|
|
180
182
|
json: { id: this.id, ...fields }
|
|
181
183
|
});
|
|
182
|
-
// Adding the encryption
|
|
184
|
+
// Adding the encryption descriptor flips this collection from plaintext to
|
|
183
185
|
// encrypted server-side. Drop any codec memoized from the prior (plaintext)
|
|
184
|
-
//
|
|
185
|
-
// reuse the cached identity codec and write server-visible plaintext
|
|
186
|
-
// the now-encrypted collection. Child resource handles share this
|
|
187
|
-
// their thunk, so resetting here propagates to them too.
|
|
186
|
+
// descriptor so the next read/write re-resolves it -- otherwise a `put`
|
|
187
|
+
// would reuse the cached identity codec and write server-visible plaintext
|
|
188
|
+
// into the now-encrypted collection. Child resource handles share this
|
|
189
|
+
// codec via their thunk, so resetting here propagates to them too.
|
|
188
190
|
if (desc.encryption) {
|
|
189
191
|
this.#codecHolder.reset();
|
|
190
192
|
}
|
|
@@ -222,16 +224,17 @@ export class Collection {
|
|
|
222
224
|
};
|
|
223
225
|
}
|
|
224
226
|
/**
|
|
225
|
-
* Writes (replaces) the Collection Description, optionally as a
|
|
226
|
-
* against a prior `ETag` (`ifMatch`, from {@link
|
|
227
|
-
* concurrent writer cannot be silently clobbered -- a
|
|
228
|
-
* as `PreconditionFailedError` (412). Sends the
|
|
229
|
-
* body; omit a field to drop it (replace
|
|
230
|
-
* every field forward. Returns the new
|
|
227
|
+
* Writes (replaces) the Collection Description, optionally as a
|
|
228
|
+
* compare-and-swap against a prior `ETag` (`ifMatch`, from {@link
|
|
229
|
+
* describeWithEtag}) so a concurrent writer cannot be silently clobbered -- a
|
|
230
|
+
* stale validator surfaces as `PreconditionFailedError` (412). Sends the
|
|
231
|
+
* writable fields as the full body; omit a field to drop it (replace
|
|
232
|
+
* semantics), so callers doing CAS pass every field forward. Returns the new
|
|
233
|
+
* `ETag` and the fields written.
|
|
231
234
|
*
|
|
232
235
|
* This is the generic description-CAS primitive the key-epoch recipient
|
|
233
236
|
* operations build on (add/remove a reader is a CAS of the `encryption`
|
|
234
|
-
*
|
|
237
|
+
* descriptor); it is not epoch-specific.
|
|
235
238
|
*
|
|
236
239
|
* @param description {CollectionWritableFields}
|
|
237
240
|
* @param options {object}
|
|
@@ -248,14 +251,14 @@ export class Collection {
|
|
|
248
251
|
json: { id: this.id, ...fields },
|
|
249
252
|
headers: writeHeaders({ precondition: { ifMatch: options.ifMatch } })
|
|
250
253
|
});
|
|
251
|
-
// Writing the `encryption`
|
|
252
|
-
// operations CAS this field) or flip the collection from
|
|
253
|
-
// encrypted. Drop any memoized codec -- bound at construction
|
|
254
|
-
//
|
|
255
|
-
// the new
|
|
256
|
-
// under the stale epoch, whose key a
|
|
257
|
-
// resource handles share this codec
|
|
258
|
-
// propagates to them too.
|
|
254
|
+
// Writing the `encryption` descriptor can rotate the key epoch (the
|
|
255
|
+
// recipient operations CAS this field) or flip the collection from
|
|
256
|
+
// plaintext to encrypted. Drop any memoized codec -- bound at construction
|
|
257
|
+
// to the prior descriptor's write key/epoch -- so the next read/write
|
|
258
|
+
// re-resolves it under the new descriptor; otherwise a `put` on the same
|
|
259
|
+
// handle would keep encrypting under the stale epoch, whose key a
|
|
260
|
+
// just-removed reader still holds. Child resource handles share this codec
|
|
261
|
+
// via their thunk, so resetting here propagates to them too.
|
|
259
262
|
if (description.encryption !== undefined) {
|
|
260
263
|
this.#codecHolder.reset();
|
|
261
264
|
}
|
|
@@ -305,9 +308,9 @@ export class Collection {
|
|
|
305
308
|
features: () => this.#features.get(),
|
|
306
309
|
// A per-resource encryption override resolves its own codec (honoring the
|
|
307
310
|
// override); without one, share this collection's resolved codec so the
|
|
308
|
-
// resource handle does not repeat the
|
|
309
|
-
// are mutually exclusive: the Resource ignores `encryption` when
|
|
310
|
-
// is supplied.
|
|
311
|
+
// resource handle does not repeat the descriptor-discovery round-trip.
|
|
312
|
+
// The two are mutually exclusive: the Resource ignores `encryption` when
|
|
313
|
+
// `codec` is supplied.
|
|
311
314
|
...(options.encryption !== undefined
|
|
312
315
|
? { encryption: options.encryption }
|
|
313
316
|
: { codec: () => this.#codec() })
|
|
@@ -398,9 +401,10 @@ export class Collection {
|
|
|
398
401
|
return this.resource(resourceId).get();
|
|
399
402
|
}
|
|
400
403
|
/**
|
|
401
|
-
* Creates or replaces a resource by id (upsert). Forwards the
|
|
402
|
-
* options (`ifMatch` / `ifNoneMatch`) to `Resource.put`;
|
|
403
|
-
* `conditional-writes` semantics. Returns the stored
|
|
404
|
+
* Creates or replaces a resource by id (upsert). Forwards the
|
|
405
|
+
* conditional-write options (`ifMatch` / `ifNoneMatch`) to `Resource.put`;
|
|
406
|
+
* see it for the `conditional-writes` semantics. Returns the stored
|
|
407
|
+
* resource's new `etag`.
|
|
404
408
|
*
|
|
405
409
|
* @param resourceId {string}
|
|
406
410
|
* @param data {ResourceData}
|
|
@@ -442,8 +446,8 @@ export class Collection {
|
|
|
442
446
|
* pagination links, buffering every page into a single list (the returned
|
|
443
447
|
* envelope omits `next`). Convenient, but holds the whole collection in memory
|
|
444
448
|
* -- for a large collection prefer `listPages()` or `listItems()`, which stream
|
|
445
|
-
* one page at a time and allow stopping early. Returns `null` if the
|
|
446
|
-
* is missing or not visible to you (404 conflation caveat).
|
|
449
|
+
* one page at a time and allow stopping early. Returns `null` if the
|
|
450
|
+
* collection is missing or not visible to you (404 conflation caveat).
|
|
447
451
|
*
|
|
448
452
|
* @returns {Promise<CollectionResourcesList | null>}
|
|
449
453
|
*/
|
|
@@ -452,11 +456,11 @@ export class Collection {
|
|
|
452
456
|
}
|
|
453
457
|
/**
|
|
454
458
|
* Lazily yields the listing one page at a time, following the server's `next`
|
|
455
|
-
* links on demand (each page fetched with the same authorization). Use this
|
|
456
|
-
* stream a large collection in constant memory or to stop early. Yields
|
|
457
|
-
* if the collection is missing or not visible to you (404 conflation
|
|
458
|
-
* unlike `list()`, the iterator does not distinguish that from an
|
|
459
|
-
* collection.
|
|
459
|
+
* links on demand (each page fetched with the same authorization). Use this
|
|
460
|
+
* to stream a large collection in constant memory or to stop early. Yields
|
|
461
|
+
* nothing if the collection is missing or not visible to you (404 conflation
|
|
462
|
+
* caveat) -- unlike `list()`, the iterator does not distinguish that from an
|
|
463
|
+
* empty collection.
|
|
460
464
|
*
|
|
461
465
|
* @returns {AsyncGenerator<CollectionResourcesList>}
|
|
462
466
|
*/
|
|
@@ -530,9 +534,9 @@ export class Collection {
|
|
|
530
534
|
}
|
|
531
535
|
/**
|
|
532
536
|
* Reads the collection's access-control policy. Returns `null` when no policy
|
|
533
|
-
* is set (or it is not visible to you). Managing a policy is a
|
|
534
|
-
* operation; a capability scoped to the collection does not
|
|
535
|
-
* sub-resource.
|
|
537
|
+
* is set (or it is not visible to you). Managing a policy is a
|
|
538
|
+
* controller-level operation; a capability scoped to the collection does not
|
|
539
|
+
* cover its policy sub-resource.
|
|
536
540
|
*
|
|
537
541
|
* @returns {Promise<PolicyDocument | null>}
|
|
538
542
|
*/
|
package/dist/Collection.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Collection.js","sourceRoot":"","sources":["../src/Collection.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Collection.js","sourceRoot":"","sources":["../src/Collection.ts"],"names":[],"mappings":"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"}
|
package/dist/Resource.d.ts
CHANGED
|
@@ -101,13 +101,13 @@ export declare class Resource {
|
|
|
101
101
|
* Conditional writes (the backend's `conditional-writes` feature): pass
|
|
102
102
|
* `ifMatch` (the ETag from a prior read/write) for an update-if-unchanged, or
|
|
103
103
|
* `ifNoneMatch: true` for a create-if-absent. A failed precondition throws
|
|
104
|
-
* `PreconditionFailedError` (412). On an encrypted collection these are
|
|
105
|
-
* automatically by the codec (the EDV `sequence` becomes the enforced
|
|
106
|
-
* the explicit options are for plaintext collections -- and because
|
|
107
|
-
* pre-reads the current document to compute them, updating an
|
|
108
|
-
* encrypted document needs read access (a PUT-only capability can
|
|
109
|
-
* create, and only against a backend advertising `conditional-writes`;
|
|
110
|
-
* `upsertResource`). Returns the new `etag`.
|
|
104
|
+
* `PreconditionFailedError` (412). On an encrypted collection these are
|
|
105
|
+
* managed automatically by the codec (the EDV `sequence` becomes the enforced
|
|
106
|
+
* ETag), so the explicit options are for plaintext collections -- and because
|
|
107
|
+
* the codec pre-reads the current document to compute them, updating an
|
|
108
|
+
* existing encrypted document needs read access (a PUT-only capability can
|
|
109
|
+
* only create, and only against a backend advertising `conditional-writes`;
|
|
110
|
+
* see `upsertResource`). Returns the new `etag`.
|
|
111
111
|
*
|
|
112
112
|
* @param data {ResourceData}
|
|
113
113
|
* @param options {object}
|
package/dist/Resource.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Resource.d.ts","sourceRoot":"","sources":["../src/Resource.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAc1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC/C,OAAO,KAAK,EACV,kBAAkB,EAClB,KAAK,EACL,IAAI,EACJ,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,sBAAsB,EACvB,MAAM,YAAY,CAAA;AAkBnB,qBAAa,QAAQ;;IACnB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"Resource.d.ts","sourceRoot":"","sources":["../src/Resource.ts"],"names":[],"mappings":"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"}
|
package/dist/Resource.js
CHANGED
|
@@ -33,18 +33,19 @@ export class Resource {
|
|
|
33
33
|
* Resolves the codec for this resource: the parent collection's shared codec
|
|
34
34
|
* when this handle came from `collection.resource(id)`, otherwise one
|
|
35
35
|
* resolved (and memoized per handle) for its own collection. A standalone
|
|
36
|
-
* resource discovers its collection's `encryption`
|
|
36
|
+
* resource discovers its collection's `encryption` descriptor (one GET on the
|
|
37
37
|
* collection, cached per handle) unless a per-handle override is set, and
|
|
38
38
|
* fails closed if it cannot key an encrypted collection. A fresh standalone
|
|
39
|
-
* handle re-reads the
|
|
40
|
-
* resolution (e.g. a transient 500/network error during
|
|
41
|
-
* not memoized: the cache is cleared so the next call retries rather than
|
|
39
|
+
* handle re-reads the descriptor, so retain the handle to reuse it. A failed
|
|
40
|
+
* resolution (e.g. a transient 500/network error during descriptor discovery)
|
|
41
|
+
* is not memoized: the cache is cleared so the next call retries rather than
|
|
42
42
|
* re-throwing the stale error forever.
|
|
43
43
|
*
|
|
44
44
|
* A handle obtained via `collection.resource(id)` delegates to the parent's
|
|
45
45
|
* shared resolver on every call rather than memoizing locally: the parent
|
|
46
46
|
* already memoizes (so this adds no round-trip), and delegating lets a parent
|
|
47
|
-
* reset (e.g. after `configure()` adds the encryption
|
|
47
|
+
* reset (e.g. after `configure()` adds the encryption descriptor) propagate
|
|
48
|
+
* here.
|
|
48
49
|
*/
|
|
49
50
|
#codec;
|
|
50
51
|
/**
|
|
@@ -74,12 +75,12 @@ export class Resource {
|
|
|
74
75
|
constructor({ context, spaceId, collectionId, resourceId, capability, codec, features, encryption }) {
|
|
75
76
|
// Guard the id against the Reserved Path Segment Registry up front, so a
|
|
76
77
|
// reserved id from caller input can never be mis-targeted at a
|
|
77
|
-
// collection-level endpoint. `resourcePath(s, c, 'policy')` is
|
|
78
|
-
// to the collection policy path, so an unguarded
|
|
79
|
-
// would silently wipe the collection's
|
|
80
|
-
// collision exists for `backend` / `quota`
|
|
81
|
-
// the constructor covers every operation
|
|
82
|
-
// not just writes.
|
|
78
|
+
// collection-level endpoint. `resourcePath(s, c, 'policy')` is
|
|
79
|
+
// byte-identical to the collection policy path, so an unguarded
|
|
80
|
+
// `resource('policy').delete()` would silently wipe the collection's
|
|
81
|
+
// access-control policy; the same collision exists for `backend` / `quota`
|
|
82
|
+
// / `linkset` / `meta`. Guarding in the constructor covers every operation
|
|
83
|
+
// (read, delete, meta, policy, put), not just writes.
|
|
83
84
|
assertNotReserved({ id: resourceId, kind: 'resource' });
|
|
84
85
|
this.#context = context;
|
|
85
86
|
this.spaceId = spaceId;
|
|
@@ -222,13 +223,13 @@ export class Resource {
|
|
|
222
223
|
* Conditional writes (the backend's `conditional-writes` feature): pass
|
|
223
224
|
* `ifMatch` (the ETag from a prior read/write) for an update-if-unchanged, or
|
|
224
225
|
* `ifNoneMatch: true` for a create-if-absent. A failed precondition throws
|
|
225
|
-
* `PreconditionFailedError` (412). On an encrypted collection these are
|
|
226
|
-
* automatically by the codec (the EDV `sequence` becomes the enforced
|
|
227
|
-
* the explicit options are for plaintext collections -- and because
|
|
228
|
-
* pre-reads the current document to compute them, updating an
|
|
229
|
-
* encrypted document needs read access (a PUT-only capability can
|
|
230
|
-
* create, and only against a backend advertising `conditional-writes`;
|
|
231
|
-
* `upsertResource`). Returns the new `etag`.
|
|
226
|
+
* `PreconditionFailedError` (412). On an encrypted collection these are
|
|
227
|
+
* managed automatically by the codec (the EDV `sequence` becomes the enforced
|
|
228
|
+
* ETag), so the explicit options are for plaintext collections -- and because
|
|
229
|
+
* the codec pre-reads the current document to compute them, updating an
|
|
230
|
+
* existing encrypted document needs read access (a PUT-only capability can
|
|
231
|
+
* only create, and only against a backend advertising `conditional-writes`;
|
|
232
|
+
* see `upsertResource`). Returns the new `etag`.
|
|
232
233
|
*
|
|
233
234
|
* @param data {ResourceData}
|
|
234
235
|
* @param options {object}
|
package/dist/Resource.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Resource.js","sourceRoot":"","sources":["../src/Resource.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAChF,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAE5C,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAA;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAC3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAA;AAClE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EACL,UAAU,EACV,WAAW,EACX,YAAY,EACZ,cAAc,EACd,eAAe,EAChB,MAAM,sBAAsB,CAAA;AAY7B;;;;;;;;;;;GAWG;AACH,SAAS,aAAa,CAAC,QAAsB;IAC3C,OAAO,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;AAChF,CAAC;AAED,MAAM,OAAO,QAAQ;IACV,OAAO,CAAQ;IACf,YAAY,CAAQ;IACpB,EAAE,CAAQ;IAEV,QAAQ,CAAe;IACvB,WAAW,CAAQ;IAC5B
|
|
1
|
+
{"version":3,"file":"Resource.js","sourceRoot":"","sources":["../src/Resource.ts"],"names":[],"mappings":"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"}
|
package/dist/Space.d.ts
CHANGED
|
@@ -75,7 +75,7 @@ export declare class Space {
|
|
|
75
75
|
* @param [desc.encryption] {CollectionEncryption} declare the collection
|
|
76
76
|
* client-side encrypted (e.g. `{ scheme: 'edv' }`). The returned handle is
|
|
77
77
|
* pre-seeded with a matching encryption override, so the immediate next
|
|
78
|
-
* write encrypts without a
|
|
78
|
+
* write encrypts without a descriptor-discovery round-trip.
|
|
79
79
|
* @returns {Promise<Collection>}
|
|
80
80
|
*/
|
|
81
81
|
createCollection(desc?: {
|
|
@@ -132,7 +132,8 @@ export declare class Space {
|
|
|
132
132
|
* connection (the re-consent path), use {@link updateBackend}.
|
|
133
133
|
*
|
|
134
134
|
* @param registration {BackendRegistration} the backend to register
|
|
135
|
-
* (`{ id, provider, connection: { kind, ... }, name?, storageMode?,
|
|
135
|
+
* (`{ id, provider, connection: { kind, ... }, name?, storageMode?,
|
|
136
|
+
* features? }`)
|
|
136
137
|
* @returns {Promise<BackendDescriptor>} the sanitized descriptor of the
|
|
137
138
|
* newly registered backend
|
|
138
139
|
*/
|
package/dist/Space.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Space.d.ts","sourceRoot":"","sources":["../src/Space.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAiB1D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,KAAK,EACV,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,YAAY,EACZ,aAAa,EACb,cAAc,EACd,KAAK,EACL,WAAW,EACX,OAAO,EACP,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,YAAY,CAAA;AAEnB,qBAAa,KAAK;;IAChB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IAKnB;;;;;OAKG;gBACS,EACV,OAAO,EACP,OAAO,EACP,UAAU,EACX,EAAE;QACD,OAAO,EAAE,aAAa,CAAA;QACtB,OAAO,EAAE,MAAM,CAAA;QACf,UAAU,CAAC,EAAE,KAAK,CAAA;KACnB;IAcD;;;;;OAKG;IACG,QAAQ,IAAI,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAOlD;;;;;;;;;;;;;;;;;;;;;OAqBG;IACG,SAAS,CAAC,IAAI,EAAE;QACpB,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,KAAK,CAAC,EAAE,OAAO,CAAA;KAChB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAqC7B;;;;OAIG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAS7B;;;;;;;OAOG;IACH,UAAU,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,GAAE,aAAkB,GAAG,UAAU;IAUzE;;;;;;;;;;;;;OAaG;IACG,gBAAgB,CACpB,IAAI,GAAE;QACJ,EAAE,CAAC,EAAE,MAAM,CAAA;QACX,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,OAAO,CAAC,EAAE,gBAAgB,CAAA;QAC1B,UAAU,CAAC,EAAE,oBAAoB,CAAA;KAC7B,GACL,OAAO,CAAC,UAAU,CAAC;IA0DtB;;;;;;;;;OASG;IACG,WAAW,IAAI,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAIpD;;;;;;;;;OASG;IACI,gBAAgB,IAAI,cAAc,CAAC,eAAe,CAAC;IAI1D;;;;;;;;;;OAUG;IACG,QAAQ,IAAI,OAAO,CAAC,iBAAiB,EAAE,GAAG,IAAI,CAAC;IAOrD
|
|
1
|
+
{"version":3,"file":"Space.d.ts","sourceRoot":"","sources":["../src/Space.ts"],"names":[],"mappings":"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"}
|