@interop/was-client 0.59.1 → 0.60.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.
Files changed (49) hide show
  1. package/dist/Collection.d.ts +10 -7
  2. package/dist/Collection.d.ts.map +1 -1
  3. package/dist/Collection.js +49 -13
  4. package/dist/Collection.js.map +1 -1
  5. package/dist/WasClient.d.ts.map +1 -1
  6. package/dist/WasClient.js +9 -3
  7. package/dist/WasClient.js.map +1 -1
  8. package/dist/edv/EdvCodec.d.ts.map +1 -1
  9. package/dist/edv/EdvCodec.js +21 -45
  10. package/dist/edv/EdvCodec.js.map +1 -1
  11. package/dist/edv/didKeyRecipient.d.ts +6 -1
  12. package/dist/edv/didKeyRecipient.d.ts.map +1 -1
  13. package/dist/edv/didKeyRecipient.js +4 -0
  14. package/dist/edv/didKeyRecipient.js.map +1 -1
  15. package/dist/edv/epochKeys.d.ts +43 -3
  16. package/dist/edv/epochKeys.d.ts.map +1 -1
  17. package/dist/edv/epochKeys.js +90 -9
  18. package/dist/edv/epochKeys.js.map +1 -1
  19. package/dist/edv/epochRoster.d.ts +36 -26
  20. package/dist/edv/epochRoster.d.ts.map +1 -1
  21. package/dist/edv/epochRoster.js +61 -10
  22. package/dist/edv/epochRoster.js.map +1 -1
  23. package/dist/edv/hmacKey.d.ts +17 -5
  24. package/dist/edv/hmacKey.d.ts.map +1 -1
  25. package/dist/edv/hmacKey.js +19 -5
  26. package/dist/edv/hmacKey.js.map +1 -1
  27. package/dist/edv/recipients.d.ts.map +1 -1
  28. package/dist/edv/recipients.js +10 -2
  29. package/dist/edv/recipients.js.map +1 -1
  30. package/dist/edv/refresh.d.ts +5 -0
  31. package/dist/edv/refresh.d.ts.map +1 -1
  32. package/dist/edv/refresh.js +18 -1
  33. package/dist/edv/refresh.js.map +1 -1
  34. package/dist/internal/cas.d.ts.map +1 -1
  35. package/dist/internal/cas.js +7 -4
  36. package/dist/internal/cas.js.map +1 -1
  37. package/dist/internal/content.d.ts.map +1 -1
  38. package/dist/internal/content.js +12 -1
  39. package/dist/internal/content.js.map +1 -1
  40. package/dist/internal/write.js +30 -1
  41. package/dist/internal/write.js.map +1 -1
  42. package/dist/sync/port.d.ts.map +1 -1
  43. package/dist/sync/port.js +14 -1
  44. package/dist/sync/port.js.map +1 -1
  45. package/dist/sync/provisioning.d.ts +3 -3
  46. package/dist/sync/provisioning.d.ts.map +1 -1
  47. package/dist/sync/provisioning.js +25 -13
  48. package/dist/sync/provisioning.js.map +1 -1
  49. package/package.json +1 -1
@@ -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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"}
@@ -1,3 +1,4 @@
1
+ import type { IDID } from '@interop/data-integrity-core';
1
2
  import type { RecipientPublicKey } from './epochCrypto.js';
2
3
  /**
3
4
  * Whether a string is an Ed25519 `did:key` DID -- the only controller shape a
@@ -5,10 +6,14 @@ import type { RecipientPublicKey } from './epochCrypto.js';
5
6
  * key). A key id (a DID with a fragment) is not one: the derivation is defined
6
7
  * over the DID itself.
7
8
  *
9
+ * A type predicate: what it proves (the `did:` prefix) is exactly what an
10
+ * {@link IDID} asserts, so a caller passing a checked controller on to an
11
+ * `IDID` parameter narrows instead of casting.
12
+ *
8
13
  * @param did {string | undefined}
9
14
  * @returns {boolean}
10
15
  */
11
- export declare function isEd25519DidKey(did: string | undefined): boolean;
16
+ export declare function isEd25519DidKey(did: string | undefined): did is IDID;
12
17
  /**
13
18
  * Derives the X25519 epoch-recipient public key for an Ed25519 `did:key`
14
19
  * controller.
@@ -1 +1 @@
1
- {"version":3,"file":"didKeyRecipient.d.ts","sourceRoot":"","sources":["../../src/edv/didKeyRecipient.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AAM1D;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAOhE;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CAAC,EACxC,GAAG,EACJ,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;CACZ,GAAG,kBAAkB,CAkBrB"}
1
+ {"version":3,"file":"didKeyRecipient.d.ts","sourceRoot":"","sources":["../../src/edv/didKeyRecipient.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAA;AAExD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AAM1D;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,GAAG,IAAI,IAAI,CAOpE;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CAAC,EACxC,GAAG,EACJ,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;CACZ,GAAG,kBAAkB,CAkBrB"}
@@ -31,6 +31,10 @@ const ED25519_MULTIBASE_PREFIX = 'z6Mk';
31
31
  * key). A key id (a DID with a fragment) is not one: the derivation is defined
32
32
  * over the DID itself.
33
33
  *
34
+ * A type predicate: what it proves (the `did:` prefix) is exactly what an
35
+ * {@link IDID} asserts, so a caller passing a checked controller on to an
36
+ * `IDID` parameter narrows instead of casting.
37
+ *
34
38
  * @param did {string | undefined}
35
39
  * @returns {boolean}
36
40
  */
@@ -1 +1 @@
1
- {"version":3,"file":"didKeyRecipient.js","sourceRoot":"","sources":["../../src/edv/didKeyRecipient.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAA;AAC7E,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAGjD,sEAAsE;AACtE,gDAAgD;AAChD,MAAM,wBAAwB,GAAG,MAAM,CAAA;AAEvC;;;;;;;;GAQG;AACH,MAAM,UAAU,eAAe,CAAC,GAAuB;IACrD,OAAO,CACL,CAAC,CAAC,GAAG;QACL,GAAG,CAAC,UAAU,CAAC,cAAc,CAAC;QAC9B,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,wBAAwB,CAAC;QACrE,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CACnB,CAAA;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,yBAAyB,CAAC,EACxC,GAAG,EAGJ;IACC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CACb,mCAAmC,GAAG,kCAAkC,CACzE,CAAA;IACH,CAAC;IACD,MAAM,eAAe,GAAG,yBAAyB,CAAC,WAAW,CAAC;QAC5D,UAAU,EAAE,GAAG;QACf,kBAAkB,EAAE,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC;KACrD,CAAC,CAAA;IACF,MAAM,EAAE,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,GAAG,eAAe,CAAA;IACxD,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,OAAO,kBAAkB,KAAK,QAAQ,EAAE,CAAC;QACrE,MAAM,IAAI,KAAK,CACb,uEAAuE;YACrE,8BAA8B,CACjC,CAAA;IACH,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAA;AACzC,CAAC"}
1
+ {"version":3,"file":"didKeyRecipient.js","sourceRoot":"","sources":["../../src/edv/didKeyRecipient.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAA;AAE7E,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAGjD,sEAAsE;AACtE,gDAAgD;AAChD,MAAM,wBAAwB,GAAG,MAAM,CAAA;AAEvC;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,eAAe,CAAC,GAAuB;IACrD,OAAO,CACL,CAAC,CAAC,GAAG;QACL,GAAG,CAAC,UAAU,CAAC,cAAc,CAAC;QAC9B,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,wBAAwB,CAAC;QACrE,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CACnB,CAAA;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,yBAAyB,CAAC,EACxC,GAAG,EAGJ;IACC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CACb,mCAAmC,GAAG,kCAAkC,CACzE,CAAA;IACH,CAAC;IACD,MAAM,eAAe,GAAG,yBAAyB,CAAC,WAAW,CAAC;QAC5D,UAAU,EAAE,GAAG;QACf,kBAAkB,EAAE,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC;KACrD,CAAC,CAAA;IACF,MAAM,EAAE,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,GAAG,eAAe,CAAA;IACxD,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,OAAO,kBAAkB,KAAK,QAAQ,EAAE,CAAC;QACrE,MAAM,IAAI,KAAK,CACb,uEAAuE;YACrE,8BAA8B,CACjC,CAAA;IACH,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAA;AACzC,CAAC"}
@@ -29,15 +29,25 @@ export interface ResolvedEpochKeys {
29
29
  */
30
30
  writeEpoch: string;
31
31
  /**
32
- * the key writes encrypt under
32
+ * the key writes encrypt under. Where this reader is a recipient of
33
+ * `writeEpoch`, its own unwrapped epoch key pair; where it is not (a reader
34
+ * rotated off the current epoch), a public-only stand-in reconstructed from
35
+ * the epoch id, which seals writes to the current epoch but decrypts nothing
33
36
  */
34
37
  writeKey: IKeyAgreementKey;
35
38
  /**
36
39
  * every epoch key this reader can unwrap, for decrypting any epoch (the
37
40
  * `writeKey`, unwrapped eagerly, plus a lazily-unwrapped key per other epoch
38
- * this reader is a recipient of)
41
+ * this reader is a recipient of). A rotated-off reader's `writeKey` is not
42
+ * among them -- it holds no secret for the current epoch
39
43
  */
40
44
  readKeys: IKeyAgreementKey[];
45
+ /**
46
+ * whether this reader is a recipient of `writeEpoch`. `false` marks a reader
47
+ * rotated off the current epoch: it reads the history it is still named in,
48
+ * and anything it writes it cannot read back
49
+ */
50
+ namedInWriteEpoch: boolean;
41
51
  }
42
52
  /**
43
53
  * Resolves the reader's epoch keys from a descriptor. Returns `null` when the
@@ -47,14 +57,44 @@ export interface ResolvedEpochKeys {
47
57
  * recipient), so an encrypted collection is never silently read/written with
48
58
  * the wrong key.
49
59
  *
60
+ * The write epoch is always the descriptor's current epoch, whether or not
61
+ * this reader is a recipient of it: a reader rotated off the current epoch
62
+ * keeps reading the epochs it is still named in, and writes through a
63
+ * public-only stand-in for the current one rather than falling back to an
64
+ * epoch it was rotated off of. `namedInWriteEpoch` reports which of the two it
65
+ * is.
66
+ *
50
67
  * @param options {object}
51
68
  * @param options.encryption {CollectionEncryption} the Collection's descriptor
52
69
  * @param options.keyAgreementKey {IKeyAgreementKey} the reader's own KAK; its
53
70
  * `id` must match a recipient `kid` in an epoch for that epoch to unwrap
71
+ * @param [options.label] {string} names the collection in error messages
54
72
  * @returns {Promise<ResolvedEpochKeys | null>}
55
73
  */
56
- export declare function resolveEpochKeys({ encryption, keyAgreementKey }: {
74
+ export declare function resolveEpochKeys({ encryption, keyAgreementKey, label }: {
57
75
  encryption: CollectionEncryption;
58
76
  keyAgreementKey: IKeyAgreementKey;
77
+ label?: string;
59
78
  }): Promise<ResolvedEpochKeys | null>;
79
+ /**
80
+ * The public-only write key for an epoch this client holds no secret for,
81
+ * reconstructed from the epoch id alone. Sound because encryption in this
82
+ * scheme needs no secret: a write seals a fresh content-encryption key to the
83
+ * epoch's PUBLIC key, and the epoch id IS that key's did:key. Its
84
+ * `deriveSecret` refuses with {@link EncryptOnlyCipherError}, so the key can
85
+ * never be mistaken for one that decrypts.
86
+ *
87
+ * Shared by the encrypt-only build (a writer holding no key-agreement key at
88
+ * all) and the rotated-off reader (one holding keys, but none for the current
89
+ * epoch), so the two cannot drift.
90
+ *
91
+ * @param options {object}
92
+ * @param options.epochId {string} the epoch to seal to
93
+ * @param options.label {string} names the collection in error messages
94
+ * @returns {Promise<IKeyAgreementKey>}
95
+ */
96
+ export declare function epochWriteStandIn({ epochId, label }: {
97
+ epochId: string;
98
+ label: string;
99
+ }): Promise<IKeyAgreementKey>;
60
100
  //# sourceMappingURL=epochKeys.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"epochKeys.d.ts","sourceRoot":"","sources":["../../src/edv/epochKeys.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAGpE,OAAO,KAAK,EACV,oBAAoB,EAErB,MAAM,aAAa,CAAA;AAQpB;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAA;IAClB;;OAEG;IACH,QAAQ,EAAE,gBAAgB,CAAA;IAC1B;;;;OAIG;IACH,QAAQ,EAAE,gBAAgB,EAAE,CAAA;CAC7B;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,gBAAgB,CAAC,EACrC,UAAU,EACV,eAAe,EAChB,EAAE;IACD,UAAU,EAAE,oBAAoB,CAAA;IAChC,eAAe,EAAE,gBAAgB,CAAA;CAClC,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAsDpC"}
1
+ {"version":3,"file":"epochKeys.d.ts","sourceRoot":"","sources":["../../src/edv/epochKeys.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAOpE,OAAO,KAAK,EACV,oBAAoB,EAErB,MAAM,aAAa,CAAA;AASpB;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAA;IAClB;;;;;OAKG;IACH,QAAQ,EAAE,gBAAgB,CAAA;IAC1B;;;;;OAKG;IACH,QAAQ,EAAE,gBAAgB,EAAE,CAAA;IAC5B;;;;OAIG;IACH,iBAAiB,EAAE,OAAO,CAAA;CAC3B;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,gBAAgB,CAAC,EACrC,UAAU,EACV,eAAe,EACf,KAAmB,EACpB,EAAE;IACD,UAAU,EAAE,oBAAoB,CAAA;IAChC,eAAe,EAAE,gBAAgB,CAAA;IACjC,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CA0FpC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,iBAAiB,CAAC,EACtC,OAAO,EACP,KAAK,EACN,EAAE;IACD,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;CACd,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA2B5B"}
@@ -1,7 +1,7 @@
1
- import { KeyUnwrapError } from '../errors.js';
1
+ import { EncryptionError, EncryptOnlyCipherError, KeyUnwrapError } from '../errors.js';
2
2
  import { Memo } from '../internal/memo.js';
3
- import { epochKeyIdFor, reconstructEpochKeyPair, unwrapEpochSecret } from './epochCrypto.js';
4
- import { pickEpoch } from './epochRoster.js';
3
+ import { didKeyResolver, epochKeyIdFor, reconstructEpochKeyPair, unwrapEpochSecret } from './epochCrypto.js';
4
+ import { currentEpochOf } from './epochRoster.js';
5
5
  /**
6
6
  * Resolves the reader's epoch keys from a descriptor. Returns `null` when the
7
7
  * descriptor declares no epochs (the epoch codec refuses such a descriptor
@@ -10,13 +10,21 @@ import { pickEpoch } from './epochRoster.js';
10
10
  * recipient), so an encrypted collection is never silently read/written with
11
11
  * the wrong key.
12
12
  *
13
+ * The write epoch is always the descriptor's current epoch, whether or not
14
+ * this reader is a recipient of it: a reader rotated off the current epoch
15
+ * keeps reading the epochs it is still named in, and writes through a
16
+ * public-only stand-in for the current one rather than falling back to an
17
+ * epoch it was rotated off of. `namedInWriteEpoch` reports which of the two it
18
+ * is.
19
+ *
13
20
  * @param options {object}
14
21
  * @param options.encryption {CollectionEncryption} the Collection's descriptor
15
22
  * @param options.keyAgreementKey {IKeyAgreementKey} the reader's own KAK; its
16
23
  * `id` must match a recipient `kid` in an epoch for that epoch to unwrap
24
+ * @param [options.label] {string} names the collection in error messages
17
25
  * @returns {Promise<ResolvedEpochKeys | null>}
18
26
  */
19
- export async function resolveEpochKeys({ encryption, keyAgreementKey }) {
27
+ export async function resolveEpochKeys({ encryption, keyAgreementKey, label = '(unnamed)' }) {
20
28
  const epochs = encryption.epochs;
21
29
  if (!epochs || epochs.length === 0) {
22
30
  return null;
@@ -32,10 +40,37 @@ export async function resolveEpochKeys({ encryption, keyAgreementKey }) {
32
40
  "reader's key-agreement key). Add this reader with addRecipient, or " +
33
41
  'supply the correct key-agreement key.');
34
42
  }
35
- // The candidates are only the epochs this reader is named in: it can write
36
- // under no other, so a `currentEpoch` it does not hold falls back within its
37
- // own epochs rather than to a roster entry it cannot unwrap.
38
- const writeEpochEntry = pickEpoch(namedEpochs, encryption.currentEpoch);
43
+ // The write epoch is the descriptor's CURRENT epoch, resolved against the
44
+ // full roster -- never against the subset this reader is named in. Falling
45
+ // back within the reader's own epochs would hand a reader rotated off the
46
+ // current epoch a write key for an epoch it was rotated off OF, so every
47
+ // document it wrote afterward would be sealed to a key each removed
48
+ // recipient of that epoch still holds. The rotation's read axis is
49
+ // prospective on its own terms; it must not depend on the pull axis having
50
+ // already taken effect.
51
+ const writeEpochEntry = currentEpochOf({
52
+ epochs,
53
+ currentEpoch: encryption.currentEpoch,
54
+ label
55
+ });
56
+ const namedInWriteEpoch = writeEpochEntry.recipients.some(recipient => recipient.header.kid === keyAgreementKey.id);
57
+ if (!namedInWriteEpoch) {
58
+ // A rotated-off reader: still a recipient of older epochs (history stays
59
+ // readable -- rotation is prospective, never retroactive), but of no key
60
+ // for the current one. It seals writes to the current epoch's PUBLIC key,
61
+ // reconstructed from the epoch id exactly as an encrypt-only writer does,
62
+ // so nothing it writes reaches a rotated-out epoch and nothing it writes
63
+ // is readable back to it.
64
+ return {
65
+ writeEpoch: writeEpochEntry.id,
66
+ writeKey: await epochWriteStandIn({
67
+ epochId: writeEpochEntry.id,
68
+ label
69
+ }),
70
+ readKeys: namedEpochs.map(epoch => lazyEpochKey({ epoch, keyAgreementKey })),
71
+ namedInWriteEpoch
72
+ };
73
+ }
39
74
  // The write epoch is unwrapped eagerly: `writeKey` must be a full key pair the
40
75
  // EDV cipher can name recipients with and encrypt under right away.
41
76
  const writeKey = await unwrapEpochKey({
@@ -61,7 +96,53 @@ export async function resolveEpochKeys({ encryption, keyAgreementKey }) {
61
96
  readKeys.push(lazyEpochKey({ epoch, keyAgreementKey }));
62
97
  }
63
98
  }
64
- return { writeEpoch: writeEpochEntry.id, writeKey, readKeys };
99
+ return {
100
+ writeEpoch: writeEpochEntry.id,
101
+ writeKey,
102
+ readKeys,
103
+ namedInWriteEpoch
104
+ };
105
+ }
106
+ /**
107
+ * The public-only write key for an epoch this client holds no secret for,
108
+ * reconstructed from the epoch id alone. Sound because encryption in this
109
+ * scheme needs no secret: a write seals a fresh content-encryption key to the
110
+ * epoch's PUBLIC key, and the epoch id IS that key's did:key. Its
111
+ * `deriveSecret` refuses with {@link EncryptOnlyCipherError}, so the key can
112
+ * never be mistaken for one that decrypts.
113
+ *
114
+ * Shared by the encrypt-only build (a writer holding no key-agreement key at
115
+ * all) and the rotated-off reader (one holding keys, but none for the current
116
+ * epoch), so the two cannot drift.
117
+ *
118
+ * @param options {object}
119
+ * @param options.epochId {string} the epoch to seal to
120
+ * @param options.label {string} names the collection in error messages
121
+ * @returns {Promise<IKeyAgreementKey>}
122
+ */
123
+ export async function epochWriteStandIn({ epochId, label }) {
124
+ let id;
125
+ try {
126
+ id = epochKeyIdFor(epochId);
127
+ // Fail fast on a malformed epoch id: the resolver validates the fragment
128
+ // is a well-formed X25519 public-key fingerprint, exactly what every
129
+ // write's recipient resolution will do.
130
+ await didKeyResolver({ id });
131
+ }
132
+ catch (err) {
133
+ throw new EncryptionError(`Collection ${label} lists a malformed key-epoch id "${epochId}": it ` +
134
+ 'is not the did:key of an X25519 key-agreement key, so no write ' +
135
+ 'recipient can be reconstructed from it.', { cause: err });
136
+ }
137
+ return {
138
+ id,
139
+ async deriveSecret() {
140
+ throw new EncryptOnlyCipherError(`The cipher for collection ${label} holds no key-agreement secret ` +
141
+ `for key epoch "${epochId}": it was built from the descriptor ` +
142
+ 'alone, or this reader was rotated off that epoch. It encrypts to ' +
143
+ 'the epoch and decrypts nothing under it.');
144
+ }
145
+ };
65
146
  }
66
147
  /**
67
148
  * Unwraps and reconstructs a single epoch's key pair for this reader, or returns
@@ -1 +1 @@
1
- {"version":3,"file":"epochKeys.js","sourceRoot":"","sources":["../../src/edv/epochKeys.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAK1C,OAAO,EACL,aAAa,EACb,uBAAuB,EACvB,iBAAiB,EAClB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAuB5C;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,EACrC,UAAU,EACV,eAAe,EAIhB;IACC,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAA;IAChC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnC,OAAO,IAAI,CAAA;IACb,CAAC;IACD,yEAAyE;IACzE,sEAAsE;IACtE,6EAA6E;IAC7E,8DAA8D;IAC9D,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACxC,KAAK,CAAC,UAAU,CAAC,IAAI,CACnB,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,KAAK,eAAe,CAAC,EAAE,CACzD,CACF,CAAA;IACD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,cAAc,CACtB,oEAAoE;YAClE,mEAAmE;YACnE,qEAAqE;YACrE,uCAAuC,CAC1C,CAAA;IACH,CAAC;IACD,2EAA2E;IAC3E,6EAA6E;IAC7E,6DAA6D;IAC7D,MAAM,eAAe,GAAG,SAAS,CAAC,WAAW,EAAE,UAAU,CAAC,YAAY,CAAC,CAAA;IACvE,+EAA+E;IAC/E,oEAAoE;IACpE,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC;QACpC,KAAK,EAAE,eAAe;QACtB,eAAe;KAChB,CAAC,CAAA;IACF,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,cAAc,CACtB,oDAAoD;YAClD,IAAI,eAAe,CAAC,EAAE,6CAA6C;YACnE,qEAAqE;YACrE,MAAM,CACT,CAAA;IACH,CAAC;IACD,8EAA8E;IAC9E,8EAA8E;IAC9E,+EAA+E;IAC/E,yEAAyE;IACzE,wEAAwE;IACxE,4EAA4E;IAC5E,iBAAiB;IACjB,MAAM,QAAQ,GAAuB,CAAC,QAAQ,CAAC,CAAA;IAC/C,KAAK,MAAM,KAAK,IAAI,WAAW,EAAE,CAAC;QAChC,IAAI,KAAK,CAAC,EAAE,KAAK,eAAe,CAAC,EAAE,EAAE,CAAC;YACpC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC,CAAA;QACzD,CAAC;IACH,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,eAAe,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAA;AAC/D,CAAC;AAED;;;;;;;;;GASG;AACH,KAAK,UAAU,cAAc,CAAC,EAC5B,KAAK,EACL,eAAe,EAIhB;IACC,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CACjC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,KAAK,eAAe,CAAC,EAAE,CACzD,CAAA;IACD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,IAAI,CAAA;IACb,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAA;IAClE,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,uBAAuB,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;AAC/D,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAS,YAAY,CAAC,EACpB,KAAK,EACL,eAAe,EAIhB;IACC,6EAA6E;IAC7E,0EAA0E;IAC1E,uEAAuE;IACvE,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK,IAAI,EAAE;QAC/B,MAAM,GAAG,GAAG,MAAM,cAAc,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAA;QAC5D,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,0EAA0E;YAC1E,wEAAwE;YACxE,mEAAmE;YACnE,WAAW;YACX,MAAM,IAAI,cAAc,CACtB,4CAA4C,KAAK,CAAC,EAAE,YAAY;gBAC9D,2BAA2B,CAC9B,CAAA;QACH,CAAC;QACD,OAAO,GAAG,CAAA;IACZ,CAAC,CAAC,CAAA;IACF,OAAO;QACL,EAAE,EAAE,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,KAAK,CAAC,YAAY,CAAC,OAA+B;YAChD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,EAAE,CAAA;YAC5B,OAAO,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;QAClC,CAAC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"epochKeys.js","sourceRoot":"","sources":["../../src/edv/epochKeys.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,3 @@
1
- /*!
2
- * Copyright (c) 2026 Interop Alliance. All rights reserved.
3
- */
4
- /**
5
- * Crypto-free predicates over a Collection's `encryption` descriptor: whether it
6
- * carries a usable key-epoch roster, and whether two descriptors name the same
7
- * roster. Neither touches key material, so a caller deciding what to do with a
8
- * descriptor -- open it, refuse it fail-closed, rebuild a cipher for it -- does
9
- * not have to pull in the epoch crypto to ask.
10
- *
11
- * These exist because every consumer that holds descriptors (a local replica
12
- * deciding whether a collection is encrypted, a sync layer deciding whether a
13
- * freshly-read descriptor invalidates the cipher it opened with) otherwise
14
- * re-derives the same two checks, and the two definitions have to agree across
15
- * consumers to be worth anything.
16
- */
17
1
  import type { CollectionEncryption, CollectionEncryptionEpoch } from '../types.js';
18
2
  /**
19
3
  * Whether a descriptor carries a usable key-epoch roster: it is present, its
@@ -51,19 +35,20 @@ export declare function hasKeyEpochs(encryption?: CollectionEncryption): encrypt
51
35
  */
52
36
  export declare function epochRostersEqual(current?: CollectionEncryption, next?: CollectionEncryption): boolean;
53
37
  /**
54
- * Picks the epoch to write under from a roster: the entry named by
55
- * `currentEpoch` when the list holds it, otherwise the LAST entry in the
56
- * list's canonical order.
38
+ * Picks the current epoch out of a roster: the entry named by `currentEpoch`
39
+ * when the list holds it, otherwise the LAST entry in the list's canonical
40
+ * order.
57
41
  *
58
42
  * The fallback is defined against the list's own order rather than against the
59
43
  * incidental order in which secrets happened to unwrap, so the choice is
60
- * deterministic for every caller. Callers pass the list they are entitled to
61
- * write under -- the full roster during a rotation, or only the epochs a given
62
- * reader names -- and the rule itself does not vary between them. A reader that
63
- * does not hold `currentEpoch` is a removed/archive reader whose writes the
64
- * server rejects via its revoked zcap anyway; the fallback only keeps the
65
- * selection well-defined instead of assuming the list is append-ordered
66
- * newest-last.
44
+ * deterministic for every caller, instead of assuming the list is
45
+ * append-ordered newest-last.
46
+ *
47
+ * This is the tolerant form, for callers holding the full roster during a
48
+ * rotation, where `currentEpoch` naming an unlisted entry is not yet
49
+ * actionable. A caller choosing the epoch to SEAL PLAINTEXT UNDER wants
50
+ * {@link currentEpochOf} instead, which refuses that case rather than
51
+ * selecting another entry.
67
52
  *
68
53
  * The list must be non-empty -- every caller has already established that it
69
54
  * holds at least one epoch, so an empty list is a programming error rather than
@@ -74,4 +59,29 @@ export declare function epochRostersEqual(current?: CollectionEncryption, next?:
74
59
  * @returns {CollectionEncryptionEpoch}
75
60
  */
76
61
  export declare function pickEpoch(epochs: CollectionEncryptionEpoch[], currentEpoch?: string): CollectionEncryptionEpoch;
62
+ /**
63
+ * The epoch a descriptor seals new writes under: the entry `currentEpoch`
64
+ * names, or the last listed entry when the descriptor declares none (the
65
+ * roster is append-only, so the last entry is the newest).
66
+ *
67
+ * Always resolved against the FULL roster, never against the subset of epochs
68
+ * one reader is named in, and fails closed when `currentEpoch` names an entry
69
+ * the roster does not list. Both rules exist for the same reason: selecting
70
+ * any other entry would seal new plaintext under a rotated-out epoch, whose
71
+ * key every removed recipient of that epoch still holds. A descriptor whose
72
+ * `currentEpoch` is unlisted violates the descriptor invariant -- it is stale,
73
+ * partially synced, or tampered with -- and re-reading it is the only sound
74
+ * recovery.
75
+ *
76
+ * @param options {object}
77
+ * @param options.epochs {CollectionEncryptionEpoch[]} the non-empty roster
78
+ * @param [options.currentEpoch] {string} the descriptor's declared write epoch
79
+ * @param options.label {string} names the collection in the error message
80
+ * @returns {CollectionEncryptionEpoch}
81
+ */
82
+ export declare function currentEpochOf({ epochs, currentEpoch, label }: {
83
+ epochs: CollectionEncryptionEpoch[];
84
+ currentEpoch?: string;
85
+ label: string;
86
+ }): CollectionEncryptionEpoch;
77
87
  //# sourceMappingURL=epochRoster.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"epochRoster.d.ts","sourceRoot":"","sources":["../../src/edv/epochRoster.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,EACV,oBAAoB,EACpB,yBAAyB,EAC1B,MAAM,aAAa,CAAA;AAEpB;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAC1B,UAAU,CAAC,EAAE,oBAAoB,GAChC,UAAU,IAAI,oBAAoB,GAAG;IACtC,YAAY,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,yBAAyB,EAAE,CAAA;CACpC,CAOA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,CAAC,EAAE,oBAAoB,EAC9B,IAAI,CAAC,EAAE,oBAAoB,GAC1B,OAAO,CAaT;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,SAAS,CACvB,MAAM,EAAE,yBAAyB,EAAE,EACnC,YAAY,CAAC,EAAE,MAAM,GACpB,yBAAyB,CAE3B"}
1
+ {"version":3,"file":"epochRoster.d.ts","sourceRoot":"","sources":["../../src/edv/epochRoster.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EACV,oBAAoB,EACpB,yBAAyB,EAC1B,MAAM,aAAa,CAAA;AAEpB;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAC1B,UAAU,CAAC,EAAE,oBAAoB,GAChC,UAAU,IAAI,oBAAoB,GAAG;IACtC,YAAY,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,yBAAyB,EAAE,CAAA;CACpC,CAOA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,CAAC,EAAE,oBAAoB,EAC9B,IAAI,CAAC,EAAE,oBAAoB,GAC1B,OAAO,CAaT;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,SAAS,CACvB,MAAM,EAAE,yBAAyB,EAAE,EACnC,YAAY,CAAC,EAAE,MAAM,GACpB,yBAAyB,CAE3B;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,cAAc,CAAC,EAC7B,MAAM,EACN,YAAY,EACZ,KAAK,EACN,EAAE;IACD,MAAM,EAAE,yBAAyB,EAAE,CAAA;IACnC,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,EAAE,MAAM,CAAA;CACd,GAAG,yBAAyB,CAc5B"}
@@ -1,3 +1,20 @@
1
+ /*!
2
+ * Copyright (c) 2026 Interop Alliance. All rights reserved.
3
+ */
4
+ /**
5
+ * Crypto-free predicates over a Collection's `encryption` descriptor: whether it
6
+ * carries a usable key-epoch roster, and whether two descriptors name the same
7
+ * roster. Neither touches key material, so a caller deciding what to do with a
8
+ * descriptor -- open it, refuse it fail-closed, rebuild a cipher for it -- does
9
+ * not have to pull in the epoch crypto to ask.
10
+ *
11
+ * These exist because every consumer that holds descriptors (a local replica
12
+ * deciding whether a collection is encrypted, a sync layer deciding whether a
13
+ * freshly-read descriptor invalidates the cipher it opened with) otherwise
14
+ * re-derives the same two checks, and the two definitions have to agree across
15
+ * consumers to be worth anything.
16
+ */
17
+ import { EncryptionError } from '../errors.js';
1
18
  /**
2
19
  * Whether a descriptor carries a usable key-epoch roster: it is present, its
3
20
  * `currentEpoch` is a string, and its `epochs` list is a non-empty array. Both
@@ -47,19 +64,20 @@ export function epochRostersEqual(current, next) {
47
64
  currentIds.every((id, index) => id === nextIds[index]));
48
65
  }
49
66
  /**
50
- * Picks the epoch to write under from a roster: the entry named by
51
- * `currentEpoch` when the list holds it, otherwise the LAST entry in the
52
- * list's canonical order.
67
+ * Picks the current epoch out of a roster: the entry named by `currentEpoch`
68
+ * when the list holds it, otherwise the LAST entry in the list's canonical
69
+ * order.
53
70
  *
54
71
  * The fallback is defined against the list's own order rather than against the
55
72
  * incidental order in which secrets happened to unwrap, so the choice is
56
- * deterministic for every caller. Callers pass the list they are entitled to
57
- * write under -- the full roster during a rotation, or only the epochs a given
58
- * reader names -- and the rule itself does not vary between them. A reader that
59
- * does not hold `currentEpoch` is a removed/archive reader whose writes the
60
- * server rejects via its revoked zcap anyway; the fallback only keeps the
61
- * selection well-defined instead of assuming the list is append-ordered
62
- * newest-last.
73
+ * deterministic for every caller, instead of assuming the list is
74
+ * append-ordered newest-last.
75
+ *
76
+ * This is the tolerant form, for callers holding the full roster during a
77
+ * rotation, where `currentEpoch` naming an unlisted entry is not yet
78
+ * actionable. A caller choosing the epoch to SEAL PLAINTEXT UNDER wants
79
+ * {@link currentEpochOf} instead, which refuses that case rather than
80
+ * selecting another entry.
63
81
  *
64
82
  * The list must be non-empty -- every caller has already established that it
65
83
  * holds at least one epoch, so an empty list is a programming error rather than
@@ -72,4 +90,37 @@ export function epochRostersEqual(current, next) {
72
90
  export function pickEpoch(epochs, currentEpoch) {
73
91
  return epochs.find(epoch => epoch.id === currentEpoch) ?? epochs.at(-1);
74
92
  }
93
+ /**
94
+ * The epoch a descriptor seals new writes under: the entry `currentEpoch`
95
+ * names, or the last listed entry when the descriptor declares none (the
96
+ * roster is append-only, so the last entry is the newest).
97
+ *
98
+ * Always resolved against the FULL roster, never against the subset of epochs
99
+ * one reader is named in, and fails closed when `currentEpoch` names an entry
100
+ * the roster does not list. Both rules exist for the same reason: selecting
101
+ * any other entry would seal new plaintext under a rotated-out epoch, whose
102
+ * key every removed recipient of that epoch still holds. A descriptor whose
103
+ * `currentEpoch` is unlisted violates the descriptor invariant -- it is stale,
104
+ * partially synced, or tampered with -- and re-reading it is the only sound
105
+ * recovery.
106
+ *
107
+ * @param options {object}
108
+ * @param options.epochs {CollectionEncryptionEpoch[]} the non-empty roster
109
+ * @param [options.currentEpoch] {string} the descriptor's declared write epoch
110
+ * @param options.label {string} names the collection in the error message
111
+ * @returns {CollectionEncryptionEpoch}
112
+ */
113
+ export function currentEpochOf({ epochs, currentEpoch, label }) {
114
+ if (currentEpoch === undefined) {
115
+ return epochs.at(-1);
116
+ }
117
+ const entry = epochs.find(epoch => epoch.id === currentEpoch);
118
+ if (entry === undefined) {
119
+ throw new EncryptionError(`Collection ${label} declares currentEpoch "${currentEpoch}" but its ` +
120
+ 'epoch roster does not list it. A descriptor names its current ' +
121
+ 'epoch among the epochs it lists; re-read the descriptor before ' +
122
+ 'writing.');
123
+ }
124
+ return entry;
125
+ }
75
126
  //# sourceMappingURL=epochRoster.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"epochRoster.js","sourceRoot":"","sources":["../../src/edv/epochRoster.ts"],"names":[],"mappings":"AAqBA;;;;;;;;;;GAUG;AACH,MAAM,UAAU,YAAY,CAC1B,UAAiC;IAKjC,OAAO,CACL,UAAU,KAAK,SAAS;QACxB,OAAO,UAAU,CAAC,YAAY,KAAK,QAAQ;QAC3C,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;QAChC,UAAU,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAC7B,CAAA;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,iBAAiB,CAC/B,OAA8B,EAC9B,IAA2B;IAE3B,IAAI,OAAO,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QAChD,OAAO,OAAO,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,CAAA;IACpD,CAAC;IACD,IAAI,OAAO,CAAC,YAAY,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;QAC/C,OAAO,KAAK,CAAA;IACd,CAAC;IACD,MAAM,UAAU,GAAG,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAChE,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAC1D,OAAO,CACL,UAAU,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM;QACpC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC,CACvD,CAAA;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,UAAU,SAAS,CACvB,MAAmC,EACnC,YAAqB;IAErB,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,YAAY,CAAC,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAA;AAC1E,CAAC"}
1
+ {"version":3,"file":"epochRoster.js","sourceRoot":"","sources":["../../src/edv/epochRoster.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAM9C;;;;;;;;;;GAUG;AACH,MAAM,UAAU,YAAY,CAC1B,UAAiC;IAKjC,OAAO,CACL,UAAU,KAAK,SAAS;QACxB,OAAO,UAAU,CAAC,YAAY,KAAK,QAAQ;QAC3C,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;QAChC,UAAU,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAC7B,CAAA;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,iBAAiB,CAC/B,OAA8B,EAC9B,IAA2B;IAE3B,IAAI,OAAO,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QAChD,OAAO,OAAO,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,CAAA;IACpD,CAAC;IACD,IAAI,OAAO,CAAC,YAAY,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;QAC/C,OAAO,KAAK,CAAA;IACd,CAAC;IACD,MAAM,UAAU,GAAG,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAChE,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAC1D,OAAO,CACL,UAAU,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM;QACpC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC,CACvD,CAAA;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,SAAS,CACvB,MAAmC,EACnC,YAAqB;IAErB,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,YAAY,CAAC,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAA;AAC1E,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,cAAc,CAAC,EAC7B,MAAM,EACN,YAAY,EACZ,KAAK,EAKN;IACC,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAA;IACvB,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,YAAY,CAAC,CAAA;IAC7D,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,MAAM,IAAI,eAAe,CACvB,cAAc,KAAK,2BAA2B,YAAY,YAAY;YACpE,gEAAgE;YAChE,iEAAiE;YACjE,UAAU,CACb,CAAA;IACH,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC"}