@interop/wallet-core 0.48.0 → 0.50.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 (163) hide show
  1. package/README.md +5 -2
  2. package/dist/clientAnnex/credentialAnchoredGenesis.d.ts +118 -0
  3. package/dist/clientAnnex/credentialAnchoredGenesis.d.ts.map +1 -0
  4. package/dist/clientAnnex/credentialAnchoredGenesis.js +174 -0
  5. package/dist/clientAnnex/credentialAnchoredGenesis.js.map +1 -0
  6. package/dist/clientAnnex/forget.d.ts +138 -0
  7. package/dist/clientAnnex/forget.d.ts.map +1 -0
  8. package/dist/clientAnnex/forget.js +133 -0
  9. package/dist/clientAnnex/forget.js.map +1 -0
  10. package/dist/clientAnnex/forgetLast.d.ts +267 -0
  11. package/dist/clientAnnex/forgetLast.d.ts.map +1 -0
  12. package/dist/clientAnnex/forgetLast.js +374 -0
  13. package/dist/clientAnnex/forgetLast.js.map +1 -0
  14. package/dist/clientAnnex/gc.d.ts +255 -0
  15. package/dist/clientAnnex/gc.d.ts.map +1 -0
  16. package/dist/clientAnnex/gc.js +445 -0
  17. package/dist/clientAnnex/gc.js.map +1 -0
  18. package/dist/clientAnnex/index.d.ts +60 -0
  19. package/dist/clientAnnex/index.d.ts.map +1 -0
  20. package/dist/clientAnnex/index.js +60 -0
  21. package/dist/clientAnnex/index.js.map +1 -0
  22. package/dist/{unlock → clientAnnex}/ladder.d.ts +99 -23
  23. package/dist/clientAnnex/ladder.d.ts.map +1 -0
  24. package/dist/clientAnnex/ladder.js +474 -0
  25. package/dist/clientAnnex/ladder.js.map +1 -0
  26. package/dist/clientAnnex/ladderAnchored.d.ts +276 -0
  27. package/dist/clientAnnex/ladderAnchored.d.ts.map +1 -0
  28. package/dist/clientAnnex/ladderAnchored.js +631 -0
  29. package/dist/clientAnnex/ladderAnchored.js.map +1 -0
  30. package/dist/{webvh/companion.d.ts → clientAnnex/log.d.ts} +373 -152
  31. package/dist/clientAnnex/log.d.ts.map +1 -0
  32. package/dist/{webvh/companion.js → clientAnnex/log.js} +654 -261
  33. package/dist/clientAnnex/log.js.map +1 -0
  34. package/dist/clientAnnex/recoveryLadderAnchored.d.ts +103 -0
  35. package/dist/clientAnnex/recoveryLadderAnchored.d.ts.map +1 -0
  36. package/dist/clientAnnex/recoveryLadderAnchored.js +263 -0
  37. package/dist/clientAnnex/recoveryLadderAnchored.js.map +1 -0
  38. package/dist/{unlock → clientAnnex}/selfEnroll.d.ts +1 -1
  39. package/dist/clientAnnex/selfEnroll.d.ts.map +1 -0
  40. package/dist/{unlock → clientAnnex}/selfEnroll.js +1 -1
  41. package/dist/clientAnnex/selfEnroll.js.map +1 -0
  42. package/dist/clientAnnex/zcap.d.ts +49 -0
  43. package/dist/clientAnnex/zcap.d.ts.map +1 -0
  44. package/dist/clientAnnex/zcap.js +101 -0
  45. package/dist/clientAnnex/zcap.js.map +1 -0
  46. package/dist/clients/index.d.ts +9 -6
  47. package/dist/clients/index.d.ts.map +1 -1
  48. package/dist/clients/index.js +8 -5
  49. package/dist/clients/index.js.map +1 -1
  50. package/dist/clients/listing.d.ts +32 -0
  51. package/dist/clients/listing.d.ts.map +1 -1
  52. package/dist/clients/listing.js +47 -1
  53. package/dist/clients/listing.js.map +1 -1
  54. package/dist/clients/revocation.d.ts +33 -1
  55. package/dist/clients/revocation.d.ts.map +1 -1
  56. package/dist/clients/revocation.js +16 -4
  57. package/dist/clients/revocation.js.map +1 -1
  58. package/dist/enrollment/index.d.ts +6 -4
  59. package/dist/enrollment/index.d.ts.map +1 -1
  60. package/dist/enrollment/index.js +6 -4
  61. package/dist/enrollment/index.js.map +1 -1
  62. package/dist/enrollment/onboardingInvite.d.ts +5 -88
  63. package/dist/enrollment/onboardingInvite.d.ts.map +1 -1
  64. package/dist/enrollment/onboardingInvite.js +5 -168
  65. package/dist/enrollment/onboardingInvite.js.map +1 -1
  66. package/dist/genesis/index.d.ts +5 -0
  67. package/dist/genesis/index.d.ts.map +1 -1
  68. package/dist/genesis/index.js +5 -0
  69. package/dist/genesis/index.js.map +1 -1
  70. package/dist/keys/index.d.ts +1 -1
  71. package/dist/keys/index.d.ts.map +1 -1
  72. package/dist/keys/index.js +1 -1
  73. package/dist/keys/index.js.map +1 -1
  74. package/dist/keys/spaceEpochs.d.ts +7 -2
  75. package/dist/keys/spaceEpochs.d.ts.map +1 -1
  76. package/dist/keys/spaceEpochs.js +8 -2
  77. package/dist/keys/spaceEpochs.js.map +1 -1
  78. package/dist/keys/userKeyRoster.d.ts +39 -0
  79. package/dist/keys/userKeyRoster.d.ts.map +1 -1
  80. package/dist/keys/userKeyRoster.js +43 -1
  81. package/dist/keys/userKeyRoster.js.map +1 -1
  82. package/dist/recovery/index.d.ts +5 -3
  83. package/dist/recovery/index.d.ts.map +1 -1
  84. package/dist/recovery/index.js +4 -2
  85. package/dist/recovery/index.js.map +1 -1
  86. package/dist/recovery/recoveryDelegation.d.ts +35 -12
  87. package/dist/recovery/recoveryDelegation.d.ts.map +1 -1
  88. package/dist/recovery/recoveryDelegation.js +84 -86
  89. package/dist/recovery/recoveryDelegation.js.map +1 -1
  90. package/dist/recovery/recoveryWebvh.d.ts +32 -1
  91. package/dist/recovery/recoveryWebvh.d.ts.map +1 -1
  92. package/dist/recovery/recoveryWebvh.js +2 -2
  93. package/dist/recovery/recoveryWebvh.js.map +1 -1
  94. package/dist/request/capabilityRequest.d.ts +33 -0
  95. package/dist/request/capabilityRequest.d.ts.map +1 -0
  96. package/dist/request/capabilityRequest.js +35 -0
  97. package/dist/request/capabilityRequest.js.map +1 -0
  98. package/dist/request/ephemeralExchange.d.ts +118 -0
  99. package/dist/request/ephemeralExchange.d.ts.map +1 -0
  100. package/dist/request/ephemeralExchange.js +224 -0
  101. package/dist/request/ephemeralExchange.js.map +1 -0
  102. package/dist/request/index.d.ts +6 -0
  103. package/dist/request/index.d.ts.map +1 -1
  104. package/dist/request/index.js +6 -0
  105. package/dist/request/index.js.map +1 -1
  106. package/dist/space/activity.d.ts +38 -0
  107. package/dist/space/activity.d.ts.map +1 -1
  108. package/dist/space/activity.js +41 -1
  109. package/dist/space/activity.js.map +1 -1
  110. package/dist/space/index.d.ts +1 -1
  111. package/dist/space/index.d.ts.map +1 -1
  112. package/dist/space/index.js +1 -1
  113. package/dist/space/index.js.map +1 -1
  114. package/dist/unlock/index.d.ts +11 -23
  115. package/dist/unlock/index.d.ts.map +1 -1
  116. package/dist/unlock/index.js +10 -21
  117. package/dist/unlock/index.js.map +1 -1
  118. package/dist/unlock/retire.d.ts +47 -3
  119. package/dist/unlock/retire.d.ts.map +1 -1
  120. package/dist/unlock/retire.js +21 -5
  121. package/dist/unlock/retire.js.map +1 -1
  122. package/dist/unlock/standingWebvh.d.ts +37 -82
  123. package/dist/unlock/standingWebvh.d.ts.map +1 -1
  124. package/dist/unlock/standingWebvh.js +64 -247
  125. package/dist/unlock/standingWebvh.js.map +1 -1
  126. package/dist/unlock/unlockRecord.d.ts +13 -6
  127. package/dist/unlock/unlockRecord.d.ts.map +1 -1
  128. package/dist/unlock/unlockRecord.js +14 -8
  129. package/dist/unlock/unlockRecord.js.map +1 -1
  130. package/dist/webvh/delegatedLogStore.d.ts +5 -5
  131. package/dist/webvh/delegatedLogStore.js +1 -1
  132. package/dist/webvh/didWebvh.d.ts +20 -10
  133. package/dist/webvh/didWebvh.d.ts.map +1 -1
  134. package/dist/webvh/didWebvh.js +17 -17
  135. package/dist/webvh/didWebvh.js.map +1 -1
  136. package/dist/webvh/index.d.ts +9 -23
  137. package/dist/webvh/index.d.ts.map +1 -1
  138. package/dist/webvh/index.js +9 -22
  139. package/dist/webvh/index.js.map +1 -1
  140. package/dist/webvh/revokeClient.d.ts +77 -5
  141. package/dist/webvh/revokeClient.d.ts.map +1 -1
  142. package/dist/webvh/revokeClient.js +154 -61
  143. package/dist/webvh/revokeClient.js.map +1 -1
  144. package/dist/webvh/standingZcap.d.ts +11 -1
  145. package/dist/webvh/standingZcap.d.ts.map +1 -1
  146. package/dist/webvh/standingZcap.js +13 -14
  147. package/dist/webvh/standingZcap.js.map +1 -1
  148. package/dist/webvh/wasIdStore.d.ts +13 -7
  149. package/dist/webvh/wasIdStore.d.ts.map +1 -1
  150. package/dist/webvh/wasIdStore.js +8 -4
  151. package/dist/webvh/wasIdStore.js.map +1 -1
  152. package/dist/webvh/zcap.d.ts +0 -24
  153. package/dist/webvh/zcap.d.ts.map +1 -1
  154. package/dist/webvh/zcap.js +0 -42
  155. package/dist/webvh/zcap.js.map +1 -1
  156. package/package.json +40 -34
  157. package/dist/unlock/ladder.d.ts.map +0 -1
  158. package/dist/unlock/ladder.js +0 -254
  159. package/dist/unlock/ladder.js.map +0 -1
  160. package/dist/unlock/selfEnroll.d.ts.map +0 -1
  161. package/dist/unlock/selfEnroll.js.map +0 -1
  162. package/dist/webvh/companion.d.ts.map +0 -1
  163. package/dist/webvh/companion.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"log.js","sourceRoot":"","sources":["../../src/clientAnnex/log.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,103 @@
1
+ import type { DIDDoc, DIDLog } from '@interop/did-method-webvh';
2
+ import { type UnlockKeyAgreementPublication } from '../unlock/standingWebvh.js';
3
+ import { type RecoveryLogStore, type RecoveryPublicKeys } from '../recovery/recoveryWebvh.js';
4
+ /**
5
+ * THE TRANSIENT-RECOVERY CONTINUATION (run by the code-derived client through
6
+ * the delegated `did.jsonl` PUT, on a non-remembered browser): the
7
+ * ladder-anchored variant of {@link recoverWebvhClient}. No durable client is
8
+ * minted anywhere; the fresh credential's LADDER stands in for one, so the
9
+ * account lands client-less and ladder-anchored. Two entries:
10
+ *
11
+ * 1. **Reveal + commit**: the code's update key joins `updateKeys` (its hash
12
+ * stands committed since issuance) and `nextKeyHashes` extends with the
13
+ * fresh ladder's rung-0 and rung-1 hashes (rung 0's own carry-over hash
14
+ * plus the staged rung, the ladder-anchored genesis posture) and the
15
+ * replacement code's update-key hash.
16
+ * 2. **Add + retire**, signed by the fresh ladder's rung 0: the ladder VM
17
+ * (the stable sibling, under `assertionMethod` and `capabilityDelegation`
18
+ * only) and the fresh credential's `keyAgreement` posture entry
19
+ * (commitment or verbatim -- the entry the mandatory rotation's recipient
20
+ * resolver will back the credential's standing wrap with) in; the
21
+ * replacement code's posture in; the spent code's VM, update key, and hash
22
+ * out; and EVERY standing ladder VM out -- the stale-third-party
23
+ * retirement no other ceremony performs (their revealed update keys and
24
+ * committed hashes stay: a standing credential keeps its account-ladder
25
+ * authority, and an unattributable hash cannot be named without its seed).
26
+ * Rung 0 replaces the spent code's key in `updateKeys`. This same entry
27
+ * also points `#DelegatedClients` at the annex generation `onCommitted`
28
+ * minted. That is what the atomicity buys: the entry retires the
29
+ * pre-recovery credential's ladder VM, so a pointer written after it would
30
+ * leave a window in which the document names a generation no surviving
31
+ * record's sibling delegation targets, and neither credential could enroll
32
+ * a transient client.
33
+ *
34
+ * The entry is the ceremony-tail license's posture-changing anchor: the
35
+ * `keyAgreement` posture set and the ladder-VM set both change here, which is
36
+ * what licenses the caller's ONE ladder-signed roster append (the mandatory
37
+ * rotation) anchored at it.
38
+ *
39
+ * `onCommitted` is the persist-before-publish seam: it runs after the
40
+ * reveal-and-commit entry stands (so a revoked code has already been refused)
41
+ * and BEFORE the add entry publishes the ladder VM -- the caller durably
42
+ * writes the replacement code's record and the fresh credential's unlock
43
+ * record (the ladder seed inside) there, so a tab death can never publish an
44
+ * anchor nobody can derive. It must be idempotent: the conflict retry and a
45
+ * resumed run invoke it again. It returns the fresh annex generation's DID,
46
+ * which the add entry then points the `#DelegatedClients` service entry at.
47
+ *
48
+ * Resumable from durable state alone, like the durable continuation: a
49
+ * completed run is detected by rung 0 already authorized; a torn one by the
50
+ * standing commitments. Note what the completion detection is scoped to: a
51
+ * caller that mints its ladder seed per call (freewallet's does) can only hit
52
+ * the completed branch inside this call's own conflict retry, since a later
53
+ * process derives a different rung 0 and re-runs the whole continuation. A
54
+ * caller that persists its ladder seed and resumes across processes takes the
55
+ * completed branch WITHOUT re-entering `onCommitted`, so it must be able to
56
+ * treat an already-complete continuation as success on its own.
57
+ *
58
+ * @param options {object}
59
+ * @param options.store {RecoveryLogStore} public log read + delegated PUT
60
+ * @param options.recovery {object} the spent code's update seed and public
61
+ * halves
62
+ * @param options.recovery.updateSeed {Uint8Array}
63
+ * @param options.recovery.keyAgreementKeyMultibase {string}
64
+ * @param options.recovery.updateKeyMultibase {string}
65
+ * @param options.ladderSeed {Uint8Array} the FRESH credential's ladder seed
66
+ * (recovery binds a fresh passphrase, so the ladder exists at exactly this
67
+ * moment); rung 0, rung 1, and the ladder VM all derive from it
68
+ * @param options.credentialKeyAgreement {UnlockKeyAgreementPublication} the
69
+ * fresh credential's key-agreement publication (a commitment for a
70
+ * passphrase-derived key)
71
+ * @param options.replacement {RecoveryPublicKeys} the replacement code's
72
+ * public halves, committed and published in the same continuation
73
+ * @param [options.expectedDid] {string} the account DID the log must resolve
74
+ * to, where the recovering flow already knows it
75
+ * @param options.onCommitted {function}
76
+ * `() => Promise<{ clientAnnexDid: string }>` -- the persist-before-publish
77
+ * seam described above. Both the seam and the annex DID it returns are
78
+ * REQUIRED: the add entry points the `#DelegatedClients` service entry at
79
+ * it, and a caller that named no generation would republish the stranding
80
+ * this ordering exists to prevent
81
+ * @returns {Promise<object>} the account DID, the post-continuation
82
+ * document and log (the rotation's recipient source and anchor), and, when
83
+ * the add entry ran here, the final `did.json` projection
84
+ */
85
+ export declare function recoverWebvhLadderAnchored(options: {
86
+ store: RecoveryLogStore;
87
+ recovery: RecoveryPublicKeys & {
88
+ updateSeed: Uint8Array;
89
+ };
90
+ ladderSeed: Uint8Array;
91
+ credentialKeyAgreement: UnlockKeyAgreementPublication;
92
+ replacement: RecoveryPublicKeys;
93
+ expectedDid?: string;
94
+ onCommitted: () => Promise<{
95
+ clientAnnexDid: string;
96
+ }>;
97
+ }): Promise<{
98
+ did: string;
99
+ doc: DIDDoc;
100
+ log: DIDLog;
101
+ webDoc?: object;
102
+ }>;
103
+ //# sourceMappingURL=recoveryLadderAnchored.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recoveryLadderAnchored.d.ts","sourceRoot":"","sources":["../../src/clientAnnex/recoveryLadderAnchored.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EACV,MAAM,EACN,MAAM,EAEP,MAAM,2BAA2B,CAAA;AAUlC,OAAO,EAGL,KAAK,6BAA6B,EACnC,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAKL,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACxB,MAAM,8BAA8B,CAAA;AAIrC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgFG;AACH,wBAAsB,0BAA0B,CAAC,OAAO,EAAE;IACxD,KAAK,EAAE,gBAAgB,CAAA;IACvB,QAAQ,EAAE,kBAAkB,GAAG;QAAE,UAAU,EAAE,UAAU,CAAA;KAAE,CAAA;IACzD,UAAU,EAAE,UAAU,CAAA;IACtB,sBAAsB,EAAE,6BAA6B,CAAA;IACrD,WAAW,EAAE,kBAAkB,CAAA;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,WAAW,EAAE,MAAM,OAAO,CAAC;QAAE,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CACvD,GAAG,OAAO,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAEtE"}
@@ -0,0 +1,263 @@
1
+ /*!
2
+ * Copyright (c) 2026 Interop Alliance. All rights reserved.
3
+ */
4
+ /**
5
+ * The transient-recovery continuation -- the ladder-anchored variant of the
6
+ * recovery subpath's `recoverWebvhClient`, split out beside the rest of the
7
+ * annex-anchored ceremonies: a code spent on a non-remembered browser mints
8
+ * no durable client, so the fresh credential's ladder VM stands in for one
9
+ * and the account lands client-less and ladder-anchored. The durable
10
+ * continuation and the recovery-key posture edits stay in
11
+ * `recovery/recoveryWebvh.ts`.
12
+ */
13
+ import { deriveNextKeyHash, updateDID } from '@interop/did-method-webvh';
14
+ import { assertCarryOverCommitments, ladderVerificationMethod, MULTIKEY_VM_TYPE, relationIds, updateKeySigner, withLogConflictRetry } from '../webvh/didWebvh.js';
15
+ import { ladderVmIds } from '../webvh/listClients.js';
16
+ import { unlockKeyVerificationMethod, unlockKeyVmId } from '../unlock/standingWebvh.js';
17
+ import { publishLogOnly, readLogOrThrow, RecoveryKeyNotCommittedError, recoveryVmId } from '../recovery/recoveryWebvh.js';
18
+ import { ladderRung, ladderVmKeyMultibase } from './ladder.js';
19
+ import { clientAnnexDidParts, servicesPointedAtClientAnnex } from './log.js';
20
+ /**
21
+ * THE TRANSIENT-RECOVERY CONTINUATION (run by the code-derived client through
22
+ * the delegated `did.jsonl` PUT, on a non-remembered browser): the
23
+ * ladder-anchored variant of {@link recoverWebvhClient}. No durable client is
24
+ * minted anywhere; the fresh credential's LADDER stands in for one, so the
25
+ * account lands client-less and ladder-anchored. Two entries:
26
+ *
27
+ * 1. **Reveal + commit**: the code's update key joins `updateKeys` (its hash
28
+ * stands committed since issuance) and `nextKeyHashes` extends with the
29
+ * fresh ladder's rung-0 and rung-1 hashes (rung 0's own carry-over hash
30
+ * plus the staged rung, the ladder-anchored genesis posture) and the
31
+ * replacement code's update-key hash.
32
+ * 2. **Add + retire**, signed by the fresh ladder's rung 0: the ladder VM
33
+ * (the stable sibling, under `assertionMethod` and `capabilityDelegation`
34
+ * only) and the fresh credential's `keyAgreement` posture entry
35
+ * (commitment or verbatim -- the entry the mandatory rotation's recipient
36
+ * resolver will back the credential's standing wrap with) in; the
37
+ * replacement code's posture in; the spent code's VM, update key, and hash
38
+ * out; and EVERY standing ladder VM out -- the stale-third-party
39
+ * retirement no other ceremony performs (their revealed update keys and
40
+ * committed hashes stay: a standing credential keeps its account-ladder
41
+ * authority, and an unattributable hash cannot be named without its seed).
42
+ * Rung 0 replaces the spent code's key in `updateKeys`. This same entry
43
+ * also points `#DelegatedClients` at the annex generation `onCommitted`
44
+ * minted. That is what the atomicity buys: the entry retires the
45
+ * pre-recovery credential's ladder VM, so a pointer written after it would
46
+ * leave a window in which the document names a generation no surviving
47
+ * record's sibling delegation targets, and neither credential could enroll
48
+ * a transient client.
49
+ *
50
+ * The entry is the ceremony-tail license's posture-changing anchor: the
51
+ * `keyAgreement` posture set and the ladder-VM set both change here, which is
52
+ * what licenses the caller's ONE ladder-signed roster append (the mandatory
53
+ * rotation) anchored at it.
54
+ *
55
+ * `onCommitted` is the persist-before-publish seam: it runs after the
56
+ * reveal-and-commit entry stands (so a revoked code has already been refused)
57
+ * and BEFORE the add entry publishes the ladder VM -- the caller durably
58
+ * writes the replacement code's record and the fresh credential's unlock
59
+ * record (the ladder seed inside) there, so a tab death can never publish an
60
+ * anchor nobody can derive. It must be idempotent: the conflict retry and a
61
+ * resumed run invoke it again. It returns the fresh annex generation's DID,
62
+ * which the add entry then points the `#DelegatedClients` service entry at.
63
+ *
64
+ * Resumable from durable state alone, like the durable continuation: a
65
+ * completed run is detected by rung 0 already authorized; a torn one by the
66
+ * standing commitments. Note what the completion detection is scoped to: a
67
+ * caller that mints its ladder seed per call (freewallet's does) can only hit
68
+ * the completed branch inside this call's own conflict retry, since a later
69
+ * process derives a different rung 0 and re-runs the whole continuation. A
70
+ * caller that persists its ladder seed and resumes across processes takes the
71
+ * completed branch WITHOUT re-entering `onCommitted`, so it must be able to
72
+ * treat an already-complete continuation as success on its own.
73
+ *
74
+ * @param options {object}
75
+ * @param options.store {RecoveryLogStore} public log read + delegated PUT
76
+ * @param options.recovery {object} the spent code's update seed and public
77
+ * halves
78
+ * @param options.recovery.updateSeed {Uint8Array}
79
+ * @param options.recovery.keyAgreementKeyMultibase {string}
80
+ * @param options.recovery.updateKeyMultibase {string}
81
+ * @param options.ladderSeed {Uint8Array} the FRESH credential's ladder seed
82
+ * (recovery binds a fresh passphrase, so the ladder exists at exactly this
83
+ * moment); rung 0, rung 1, and the ladder VM all derive from it
84
+ * @param options.credentialKeyAgreement {UnlockKeyAgreementPublication} the
85
+ * fresh credential's key-agreement publication (a commitment for a
86
+ * passphrase-derived key)
87
+ * @param options.replacement {RecoveryPublicKeys} the replacement code's
88
+ * public halves, committed and published in the same continuation
89
+ * @param [options.expectedDid] {string} the account DID the log must resolve
90
+ * to, where the recovering flow already knows it
91
+ * @param options.onCommitted {function}
92
+ * `() => Promise<{ clientAnnexDid: string }>` -- the persist-before-publish
93
+ * seam described above. Both the seam and the annex DID it returns are
94
+ * REQUIRED: the add entry points the `#DelegatedClients` service entry at
95
+ * it, and a caller that named no generation would republish the stranding
96
+ * this ordering exists to prevent
97
+ * @returns {Promise<object>} the account DID, the post-continuation
98
+ * document and log (the rotation's recipient source and anchor), and, when
99
+ * the add entry ran here, the final `did.json` projection
100
+ */
101
+ export async function recoverWebvhLadderAnchored(options) {
102
+ return withLogConflictRetry(() => recoverWebvhLadderAnchoredOnce(options));
103
+ }
104
+ /**
105
+ * One attempt of {@link recoverWebvhLadderAnchored}, re-invoked by the
106
+ * conflict retry.
107
+ *
108
+ * @param options {object} see {@link recoverWebvhLadderAnchored}
109
+ * @returns {Promise<{ did: string, doc: DIDDoc, log: DIDLog, webDoc?: object }>}
110
+ */
111
+ async function recoverWebvhLadderAnchoredOnce({ store, recovery, ladderSeed, credentialKeyAgreement, replacement, expectedDid, onCommitted }) {
112
+ let published = await readLogOrThrow({
113
+ store,
114
+ ...(expectedDid !== undefined ? { expectedDid } : {})
115
+ });
116
+ const rung0 = await ladderRung({ ladderSeed, index: 0 });
117
+ const rung1 = await ladderRung({ ladderSeed, index: 1 });
118
+ const ladderVmKey = await ladderVmKeyMultibase({ ladderSeed });
119
+ // Already complete (a torn earlier run finished the add entry): the fresh
120
+ // ladder's rung 0 is authorized, which only the add entry writes.
121
+ if (published.updateKeys.includes(rung0.keyMultibase)) {
122
+ return { did: published.did, doc: published.doc, log: published.log };
123
+ }
124
+ const recoveryHash = await deriveNextKeyHash(recovery.updateKeyMultibase);
125
+ const rung0Hash = await deriveNextKeyHash(rung0.keyMultibase);
126
+ const rung1Hash = await deriveNextKeyHash(rung1.keyMultibase);
127
+ const replacementHash = await deriveNextKeyHash(replacement.updateKeyMultibase);
128
+ // The reveal-and-commit entry, skipped when a torn earlier run already
129
+ // published it (the revealed key authorized AND every needed hash
130
+ // committed).
131
+ const revealed = published.updateKeys.includes(recovery.updateKeyMultibase);
132
+ const committed = [rung0Hash, rung1Hash, replacementHash].every(hash => published.nextKeyHashes.includes(hash));
133
+ if (!revealed || !committed) {
134
+ if (!revealed && !published.nextKeyHashes.includes(recoveryHash)) {
135
+ throw new RecoveryKeyNotCommittedError();
136
+ }
137
+ await assertCarryOverCommitments({ published });
138
+ const signer = await updateKeySigner({ seed: recovery.updateSeed });
139
+ const updated = await updateDID({
140
+ log: published.log,
141
+ signer,
142
+ alsoKnownAsWeb: true,
143
+ updateKeys: [
144
+ ...new Set([...published.updateKeys, recovery.updateKeyMultibase])
145
+ ],
146
+ // The spent code's own hash is kept through this entry (so a resumed
147
+ // commit can re-state the revealed key); the add entry drops it.
148
+ nextKeyHashes: [
149
+ ...new Set([
150
+ ...published.nextKeyHashes,
151
+ recoveryHash,
152
+ rung0Hash,
153
+ rung1Hash,
154
+ replacementHash
155
+ ])
156
+ ]
157
+ });
158
+ await publishLogOnly({
159
+ store,
160
+ log: updated.log,
161
+ ifMatch: published.etag
162
+ });
163
+ // The same account the reveal entry just extended.
164
+ published = await readLogOrThrow({ store, expectedDid: published.did });
165
+ }
166
+ // The persist-before-publish seam: the replacement code's record and the
167
+ // fresh credential's unlock record (the ladder seed inside) become durable
168
+ // HERE, before the add entry publishes the ladder VM that seed backs.
169
+ const persisted = await onCommitted();
170
+ // Refuses a malformed pointer target before the entry is built.
171
+ clientAnnexDidParts({ did: persisted.clientAnnexDid });
172
+ // The add-and-retire entry: the ladder VM, the fresh credential's
173
+ // keyAgreement posture, and the replacement code's posture in; the spent
174
+ // code's VM, update key, and hash out; every standing ladder VM out. Signed
175
+ // by rung 0, whose hash the commit entry just committed.
176
+ const { did, doc } = published;
177
+ const spentVmId = recoveryVmId({
178
+ did,
179
+ keyAgreementKeyMultibase: recovery.keyAgreementKeyMultibase
180
+ });
181
+ const replacementVmId = recoveryVmId({
182
+ did,
183
+ keyAgreementKeyMultibase: replacement.keyAgreementKeyMultibase
184
+ });
185
+ const ladderVms = ladderVmIds({ doc });
186
+ const ladderVm = ladderVerificationMethod({
187
+ controller: did,
188
+ publicKeyMultibase: ladderVmKey
189
+ });
190
+ const ladderVmId = `${did}#${ladderVmKey}`;
191
+ const credentialVm = unlockKeyVerificationMethod({
192
+ did,
193
+ keyAgreement: credentialKeyAgreement
194
+ });
195
+ const credentialVmId = unlockKeyVmId({
196
+ did,
197
+ keyAgreement: credentialKeyAgreement
198
+ });
199
+ const addedMethods = [
200
+ ladderVm,
201
+ credentialVm,
202
+ {
203
+ id: replacementVmId,
204
+ type: MULTIKEY_VM_TYPE,
205
+ controller: did,
206
+ publicKeyMultibase: replacement.keyAgreementKeyMultibase
207
+ }
208
+ ];
209
+ const existingMethods = (doc.verificationMethod ?? []);
210
+ const verificationMethods = [
211
+ ...existingMethods.filter(method => method.id !== spentVmId &&
212
+ !addedMethods.some(added => added.id === method.id) &&
213
+ (method.id === undefined || !ladderVms.includes(method.id))),
214
+ ...addedMethods
215
+ ];
216
+ const withoutRemoved = (relation, added) => [...new Set([...relationIds(relation), ...(added ?? [])])].filter(referencedId => referencedId !== spentVmId && !ladderVms.includes(referencedId));
217
+ const signer = await updateKeySigner({ seed: rung0.seed });
218
+ const updated = await updateDID({
219
+ log: published.log,
220
+ signer,
221
+ alsoKnownAsWeb: true,
222
+ updateKeys: [
223
+ ...new Set([
224
+ ...published.updateKeys.filter(key => key !== recovery.updateKeyMultibase),
225
+ rung0.keyMultibase
226
+ ])
227
+ ],
228
+ nextKeyHashes: published.nextKeyHashes.filter(hash => hash !== recoveryHash),
229
+ verificationMethods,
230
+ // The ladder VM's relation asymmetry: `assertionMethod` and
231
+ // `capabilityDelegation` only -- no `authentication`, no
232
+ // `capabilityInvocation` -- which is also what keeps it out of every
233
+ // client listing.
234
+ authentication: withoutRemoved(doc.authentication),
235
+ assertionMethod: withoutRemoved(doc.assertionMethod, [ladderVmId]),
236
+ keyAgreement: withoutRemoved(doc.keyAgreement, [
237
+ credentialVmId,
238
+ replacementVmId
239
+ ]),
240
+ capabilityInvocation: withoutRemoved(doc.capabilityInvocation),
241
+ capabilityDelegation: withoutRemoved(doc.capabilityDelegation, [
242
+ ladderVmId
243
+ ]),
244
+ // Atomic with the retirement above: the pointer and the ladder-VM set
245
+ // change in one entry, so no window exists in which the document points
246
+ // at a generation the surviving record cannot reach.
247
+ services: servicesPointedAtClientAnnex({
248
+ doc,
249
+ accountDid: did,
250
+ clientAnnexDid: persisted.clientAnnexDid
251
+ })
252
+ });
253
+ // Conditional on the read this entry was built on: the re-read above when
254
+ // the commit entry ran here, the first read when it was skipped.
255
+ await publishLogOnly({ store, log: updated.log, ifMatch: published.etag });
256
+ return {
257
+ did: updated.did,
258
+ doc: updated.doc,
259
+ log: updated.log,
260
+ webDoc: updated.webDoc
261
+ };
262
+ }
263
+ //# sourceMappingURL=recoveryLadderAnchored.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recoveryLadderAnchored.js","sourceRoot":"","sources":["../../src/clientAnnex/recoveryLadderAnchored.ts"],"names":[],"mappings":"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"}
@@ -38,7 +38,7 @@ import type { UserKey } from '../keys/userKey.js';
38
38
  import type { AccountPointer } from '../keyring/record.js';
39
39
  import { type ResourceLogPinStore } from '../resourceLog/index.js';
40
40
  import type { ClientWebvhUpdateKeys } from '../webvh/didWebvh.js';
41
- import type { UnlockLogStore } from './standingWebvh.js';
41
+ import type { UnlockLogStore } from '../unlock/standingWebvh.js';
42
42
  /**
43
43
  * Runs the whole self-enrollment described in the module doc. The caller has
44
44
  * already unwrapped the credential's unlock record (so it holds the
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selfEnroll.d.ts","sourceRoot":"","sources":["../../src/clientAnnex/selfEnroll.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AASpE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,EAGL,KAAK,mBAAmB,EACzB,MAAM,yBAAyB,CAAA;AAKhC,OAAO,KAAK,EACV,qBAAqB,EAEtB,MAAM,sBAAsB,CAAA;AAQ7B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAEhE;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,oBAAoB,CAAC,EACzC,OAAO,EACP,UAAU,EACV,yBAAyB,EACzB,QAAQ,EACR,kBAAkB,EACnB,EAAE;IACD,OAAO,EAAE,cAAc,CAAA;IACvB,UAAU,EAAE,UAAU,CAAA;IACtB,yBAAyB,EAAE,gBAAgB,CAAA;IAC3C,QAAQ,EAAE,cAAc,CAAA;IACxB,kBAAkB,CAAC,EAAE,mBAAmB,CAAA;CACzC,GAAG,OAAO,CAAC;IACV,UAAU,EAAE,UAAU,CAAA;IACtB,eAAe,EAAE,qBAAqB,CAAA;IACtC,SAAS,EAAE,MAAM,CAAA;IACjB,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,OAAO,CAAA;IAChB,aAAa,EAAE,MAAM,CAAA;CACtB,CAAC,CAqGD"}
@@ -5,7 +5,7 @@ import { memoryResourceLogPinStore, webvhResourceLogController } from '../resour
5
5
  import { mintClientWebvhUpdateKeys, updateKeyMultibase } from '../webvh/didWebvh.js';
6
6
  import { verifyAccountLog } from '../webvh/verifyLog.js';
7
7
  import { clientSigningKeyMultibase, isWebvhDid, webvhZcapClient } from '../webvh/zcap.js';
8
- import { selfEnrollWebvhClient } from './standingWebvh.js';
8
+ import { selfEnrollWebvhClient } from './ladderAnchored.js';
9
9
  /**
10
10
  * Runs the whole self-enrollment described in the module doc. The caller has
11
11
  * already unwrapped the credential's unlock record (so it holds the
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selfEnroll.js","sourceRoot":"","sources":["../../src/clientAnnex/selfEnroll.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ import { ZcapClient } from '@interop/ezcap';
2
+ import type { ICapabilityAgent } from '../webvh/zcap.js';
3
+ /**
4
+ * A ZcapClient signing with the account ladder's document-visible
5
+ * verification method -- the ladder VM, derived from the credential's ladder
6
+ * seed and published under `assertionMethod` and `capabilityDelegation` only.
7
+ * Its keyId is `<accountDid>#<ladderVmMultibase>` (the flat Multikey shape
8
+ * `ladderVerificationMethod` publishes, which `@interop/zcap`'s `isController`
9
+ * check and the server's fragment resolver both depend on).
10
+ *
11
+ * Only DELEGATION is licensed for this client: the ladder VM carries no
12
+ * `capabilityInvocation`, so an invocation signed with it fails the server's
13
+ * current-key-set rule by construction. It exists so a ladder-anchored
14
+ * account -- or a transient session holding nothing but the unlock credential
15
+ * -- can
16
+ * mint the client annex generation delegation and the ladder-signed renewals.
17
+ *
18
+ * @param options {object}
19
+ * @param options.accountDid {string} the account did:webvh
20
+ * @param options.ladderSeed {Uint8Array} the credential's ladder seed, from
21
+ * its unlock record
22
+ * @returns {Promise<ZcapClient>}
23
+ */
24
+ export declare function ladderVmZcapClient({ accountDid, ladderSeed }: {
25
+ accountDid: string;
26
+ ladderSeed: Uint8Array;
27
+ }): Promise<ZcapClient>;
28
+ /**
29
+ * The account ladder VM's key pair presented as a plain did:key agent -- the
30
+ * ladder-anchored signup's BOOTSTRAP identity. The data Space (and the
31
+ * auxiliary annex Space) of a credential-anchored signup are created
32
+ * under this
33
+ * did:key, exactly the role the founding client's persisted did:key plays in
34
+ * the durable flow: any later login that decrypts the unlock record
35
+ * re-derives the ladder seed and can finish (or unwind) a torn bootstrap --
36
+ * the durability precondition restored by derivation instead of persistence.
37
+ *
38
+ * The derivation matches {@link ladderVmZcapClient}'s exactly
39
+ * (`Ed25519VerificationKey.generate` over `ladderVmSeed`), so the bare
40
+ * did:key controller and the document-published ladder VM are one key.
41
+ *
42
+ * @param options {object}
43
+ * @param options.ladderSeed {Uint8Array} the credential's ladder seed
44
+ * @returns {Promise<ICapabilityAgent>}
45
+ */
46
+ export declare function ladderVmAgent({ ladderSeed }: {
47
+ ladderSeed: Uint8Array;
48
+ }): Promise<ICapabilityAgent>;
49
+ //# sourceMappingURL=zcap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zcap.d.ts","sourceRoot":"","sources":["../../src/clientAnnex/zcap.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAGxD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,kBAAkB,CAAC,EACvC,UAAU,EACV,UAAU,EACX,EAAE;IACD,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,UAAU,CAAA;CACvB,GAAG,OAAO,CAAC,UAAU,CAAC,CAqBtB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,aAAa,CAAC,EAClC,UAAU,EACX,EAAE;IACD,UAAU,EAAE,UAAU,CAAA;CACvB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA4B5B"}
@@ -0,0 +1,101 @@
1
+ /*!
2
+ * Copyright (c) 2026 Interop Alliance. All rights reserved.
3
+ */
4
+ /**
5
+ * ZCap signing under the ladder VM -- the document-visible key a standing
6
+ * credential derives from its ladder seed. The durable clients' signing
7
+ * wrappers stay in `webvh/zcap.ts`; these two live with the annex because
8
+ * only the credential-anchored flows (a ladder-anchored account, a transient
9
+ * session holding nothing but the unlock credential) ever sign as the ladder.
10
+ */
11
+ import { Ed25519Signature2020 } from '@interop/ed25519-signature';
12
+ import { Ed25519VerificationKey } from '@interop/ed25519-verification-key';
13
+ import { ZcapClient } from '@interop/ezcap';
14
+ import { ladderVmSeed } from './ladder.js';
15
+ /**
16
+ * A ZcapClient signing with the account ladder's document-visible
17
+ * verification method -- the ladder VM, derived from the credential's ladder
18
+ * seed and published under `assertionMethod` and `capabilityDelegation` only.
19
+ * Its keyId is `<accountDid>#<ladderVmMultibase>` (the flat Multikey shape
20
+ * `ladderVerificationMethod` publishes, which `@interop/zcap`'s `isController`
21
+ * check and the server's fragment resolver both depend on).
22
+ *
23
+ * Only DELEGATION is licensed for this client: the ladder VM carries no
24
+ * `capabilityInvocation`, so an invocation signed with it fails the server's
25
+ * current-key-set rule by construction. It exists so a ladder-anchored
26
+ * account -- or a transient session holding nothing but the unlock credential
27
+ * -- can
28
+ * mint the client annex generation delegation and the ladder-signed renewals.
29
+ *
30
+ * @param options {object}
31
+ * @param options.accountDid {string} the account did:webvh
32
+ * @param options.ladderSeed {Uint8Array} the credential's ladder seed, from
33
+ * its unlock record
34
+ * @returns {Promise<ZcapClient>}
35
+ */
36
+ export async function ladderVmZcapClient({ accountDid, ladderSeed }) {
37
+ const keyPair = await Ed25519VerificationKey.generate({
38
+ seed: ladderVmSeed({ ladderSeed })
39
+ });
40
+ const { publicKeyMultibase } = keyPair;
41
+ // The key pair refuses to hand out a signer without an id; set the
42
+ // document's verification-method id before asking.
43
+ keyPair.id = `${accountDid}#${publicKeyMultibase}`;
44
+ const keySigner = keyPair.signer();
45
+ const signer = {
46
+ id: `${accountDid}#${publicKeyMultibase}`,
47
+ type: 'Ed25519VerificationKey2020',
48
+ sign: keySigner.sign.bind(keySigner)
49
+ };
50
+ return new ZcapClient({
51
+ SuiteClass: Ed25519Signature2020,
52
+ invocationSigner: signer,
53
+ delegationSigner: signer
54
+ });
55
+ }
56
+ /**
57
+ * The account ladder VM's key pair presented as a plain did:key agent -- the
58
+ * ladder-anchored signup's BOOTSTRAP identity. The data Space (and the
59
+ * auxiliary annex Space) of a credential-anchored signup are created
60
+ * under this
61
+ * did:key, exactly the role the founding client's persisted did:key plays in
62
+ * the durable flow: any later login that decrypts the unlock record
63
+ * re-derives the ladder seed and can finish (or unwind) a torn bootstrap --
64
+ * the durability precondition restored by derivation instead of persistence.
65
+ *
66
+ * The derivation matches {@link ladderVmZcapClient}'s exactly
67
+ * (`Ed25519VerificationKey.generate` over `ladderVmSeed`), so the bare
68
+ * did:key controller and the document-published ladder VM are one key.
69
+ *
70
+ * @param options {object}
71
+ * @param options.ladderSeed {Uint8Array} the credential's ladder seed
72
+ * @returns {Promise<ICapabilityAgent>}
73
+ */
74
+ export async function ladderVmAgent({ ladderSeed }) {
75
+ const keyPair = await Ed25519VerificationKey.generate({
76
+ seed: ladderVmSeed({ ladderSeed })
77
+ });
78
+ const { publicKeyMultibase } = keyPair;
79
+ const did = `did:key:${publicKeyMultibase}`;
80
+ // The key pair refuses to hand out a signer without an id; the did:key
81
+ // verification-method form is what the server's did:key resolver expects.
82
+ keyPair.id = `${did}#${publicKeyMultibase}`;
83
+ keyPair.controller = did;
84
+ const keySigner = keyPair.signer();
85
+ const signer = {
86
+ id: `${did}#${publicKeyMultibase}`,
87
+ type: 'Ed25519VerificationKey2020',
88
+ sign: keySigner.sign.bind(keySigner)
89
+ };
90
+ return {
91
+ id: did,
92
+ handle: 'ladder-vm',
93
+ getSigner: () => signer,
94
+ getVerificationKeyPair: () => ({
95
+ type: 'Ed25519VerificationKey2020',
96
+ controller: did,
97
+ publicKeyMultibase
98
+ })
99
+ };
100
+ }
101
+ //# sourceMappingURL=zcap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zcap.js","sourceRoot":"","sources":["../../src/clientAnnex/zcap.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;GAMG;AACH,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAA;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAE3C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE1C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,EACvC,UAAU,EACV,UAAU,EAIX;IACC,MAAM,OAAO,GAAG,MAAM,sBAAsB,CAAC,QAAQ,CAAC;QACpD,IAAI,EAAE,YAAY,CAAC,EAAE,UAAU,EAAE,CAAC;KACnC,CAAC,CAAA;IACF,MAAM,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAA;IACtC,mEAAmE;IACnE,mDAAmD;IACnD,OAAO,CAAC,EAAE,GAAG,GAAG,UAAU,IAAI,kBAAkB,EAAE,CAAA;IAClD,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,EAAE,CAAA;IAClC,MAAM,MAAM,GAAG;QACb,EAAE,EAAE,GAAG,UAAU,IAAI,kBAAkB,EAAE;QACzC,IAAI,EAAE,4BAA4B;QAClC,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAEV;KAC1B,CAAA;IACD,OAAO,IAAI,UAAU,CAAC;QACpB,UAAU,EAAE,oBAAoB;QAChC,gBAAgB,EAAE,MAAM;QACxB,gBAAgB,EAAE,MAAM;KACzB,CAAC,CAAA;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,EAClC,UAAU,EAGX;IACC,MAAM,OAAO,GAAG,MAAM,sBAAsB,CAAC,QAAQ,CAAC;QACpD,IAAI,EAAE,YAAY,CAAC,EAAE,UAAU,EAAE,CAAC;KACnC,CAAC,CAAA;IACF,MAAM,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAA;IACtC,MAAM,GAAG,GAAG,WAAW,kBAAkB,EAAE,CAAA;IAC3C,uEAAuE;IACvE,0EAA0E;IAC1E,OAAO,CAAC,EAAE,GAAG,GAAG,GAAG,IAAI,kBAAkB,EAAE,CAAA;IAC3C,OAAO,CAAC,UAAU,GAAG,GAAG,CAAA;IACxB,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,EAAE,CAAA;IAClC,MAAM,MAAM,GAAG;QACb,EAAE,EAAE,GAAG,GAAG,IAAI,kBAAkB,EAAE;QAClC,IAAI,EAAE,4BAA4B;QAClC,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAEV;KAC1B,CAAA;IACD,OAAO;QACL,EAAE,EAAE,GAAG;QACP,MAAM,EAAE,WAAW;QACnB,SAAS,EAAE,GAAG,EAAE,CAAC,MAAM;QACvB,sBAAsB,EAAE,GAAG,EAAE,CAAC,CAAC;YAC7B,IAAI,EAAE,4BAA4B;YAClC,UAAU,EAAE,GAAG;YACf,kBAAkB;SACnB,CAAC;KACH,CAAA;AACH,CAAC"}