@interop/wallet-core 0.107.1 → 0.109.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 (208) hide show
  1. package/README.md +26 -24
  2. package/dist/clientAnnex/credentialAnchoredGenesis.d.ts +3 -3
  3. package/dist/clientAnnex/credentialAnchoredGenesis.d.ts.map +1 -1
  4. package/dist/clientAnnex/credentialAnchoredGenesis.js +3 -3
  5. package/dist/clientAnnex/credentialAnchoredGenesis.js.map +1 -1
  6. package/dist/clientAnnex/establish.d.ts +10 -9
  7. package/dist/clientAnnex/establish.d.ts.map +1 -1
  8. package/dist/clientAnnex/establish.js +23 -19
  9. package/dist/clientAnnex/establish.js.map +1 -1
  10. package/dist/clientAnnex/forget.d.ts +5 -5
  11. package/dist/clientAnnex/forget.d.ts.map +1 -1
  12. package/dist/clientAnnex/forget.js +1 -1
  13. package/dist/clientAnnex/forget.js.map +1 -1
  14. package/dist/clientAnnex/forgetLast.d.ts +10 -10
  15. package/dist/clientAnnex/forgetLast.d.ts.map +1 -1
  16. package/dist/clientAnnex/forgetLast.js +4 -4
  17. package/dist/clientAnnex/forgetLast.js.map +1 -1
  18. package/dist/clientAnnex/gc.d.ts +6 -6
  19. package/dist/clientAnnex/gc.d.ts.map +1 -1
  20. package/dist/clientAnnex/gc.js +13 -10
  21. package/dist/clientAnnex/gc.js.map +1 -1
  22. package/dist/clientAnnex/heal.d.ts +21 -19
  23. package/dist/clientAnnex/heal.d.ts.map +1 -1
  24. package/dist/clientAnnex/heal.js +25 -22
  25. package/dist/clientAnnex/heal.js.map +1 -1
  26. package/dist/clientAnnex/ladderAnchored.d.ts +40 -32
  27. package/dist/clientAnnex/ladderAnchored.d.ts.map +1 -1
  28. package/dist/clientAnnex/ladderAnchored.js +33 -44
  29. package/dist/clientAnnex/ladderAnchored.js.map +1 -1
  30. package/dist/clientAnnex/log.d.ts +62 -61
  31. package/dist/clientAnnex/log.d.ts.map +1 -1
  32. package/dist/clientAnnex/log.js +68 -67
  33. package/dist/clientAnnex/log.js.map +1 -1
  34. package/dist/clientAnnex/mend.d.ts.map +1 -1
  35. package/dist/clientAnnex/mend.js +22 -16
  36. package/dist/clientAnnex/mend.js.map +1 -1
  37. package/dist/clientAnnex/recoveryLadderAnchored.d.ts +4 -3
  38. package/dist/clientAnnex/recoveryLadderAnchored.d.ts.map +1 -1
  39. package/dist/clientAnnex/recoveryLadderAnchored.js +1 -1
  40. package/dist/clientAnnex/selfEnroll.d.ts +3 -3
  41. package/dist/clientAnnex/selfEnroll.d.ts.map +1 -1
  42. package/dist/clientAnnex/selfEnroll.js +6 -7
  43. package/dist/clientAnnex/selfEnroll.js.map +1 -1
  44. package/dist/clientAnnex/spaceCapability.d.ts +6 -6
  45. package/dist/clientAnnex/spaceCapability.d.ts.map +1 -1
  46. package/dist/clientAnnex/spaceCapability.js +9 -12
  47. package/dist/clientAnnex/spaceCapability.js.map +1 -1
  48. package/dist/clients/index.d.ts +1 -1
  49. package/dist/clients/index.d.ts.map +1 -1
  50. package/dist/clients/index.js.map +1 -1
  51. package/dist/clients/listing.d.ts +12 -18
  52. package/dist/clients/listing.d.ts.map +1 -1
  53. package/dist/clients/listing.js +17 -13
  54. package/dist/clients/listing.js.map +1 -1
  55. package/dist/clients/revocation.d.ts +2 -2
  56. package/dist/clients/revocation.d.ts.map +1 -1
  57. package/dist/clients/revocation.js.map +1 -1
  58. package/dist/clients/rosterPolicy.d.ts +4 -4
  59. package/dist/clients/rosterPolicy.d.ts.map +1 -1
  60. package/dist/clients/rosterPolicy.js +5 -4
  61. package/dist/clients/rosterPolicy.js.map +1 -1
  62. package/dist/connections/entry.d.ts +100 -9
  63. package/dist/connections/entry.d.ts.map +1 -1
  64. package/dist/connections/entry.js +104 -12
  65. package/dist/connections/entry.js.map +1 -1
  66. package/dist/connections/grantProof.d.ts.map +1 -1
  67. package/dist/connections/grantProof.js +4 -5
  68. package/dist/connections/grantProof.js.map +1 -1
  69. package/dist/connections/grants.d.ts.map +1 -1
  70. package/dist/connections/grants.js +3 -5
  71. package/dist/connections/grants.js.map +1 -1
  72. package/dist/connections/index.d.ts +9 -5
  73. package/dist/connections/index.d.ts.map +1 -1
  74. package/dist/connections/index.js +7 -4
  75. package/dist/connections/index.js.map +1 -1
  76. package/dist/connections/replicas.d.ts +227 -0
  77. package/dist/connections/replicas.d.ts.map +1 -0
  78. package/dist/connections/replicas.js +539 -0
  79. package/dist/connections/replicas.js.map +1 -0
  80. package/dist/connections/upsert.d.ts +75 -1
  81. package/dist/connections/upsert.d.ts.map +1 -1
  82. package/dist/connections/upsert.js +62 -34
  83. package/dist/connections/upsert.js.map +1 -1
  84. package/dist/enrollment/enrollment.d.ts.map +1 -1
  85. package/dist/enrollment/enrollment.js +4 -5
  86. package/dist/enrollment/enrollment.js.map +1 -1
  87. package/dist/genesis/accountGenesis.d.ts +4 -4
  88. package/dist/genesis/accountGenesis.d.ts.map +1 -1
  89. package/dist/genesis/accountGenesis.js +4 -4
  90. package/dist/genesis/accountGenesis.js.map +1 -1
  91. package/dist/keyring/fetch.d.ts +3 -3
  92. package/dist/keyring/fetch.d.ts.map +1 -1
  93. package/dist/keyring/fetch.js +3 -3
  94. package/dist/keyring/fetch.js.map +1 -1
  95. package/dist/keyring/record.d.ts.map +1 -1
  96. package/dist/keyring/record.js +1 -2
  97. package/dist/keyring/record.js.map +1 -1
  98. package/dist/keyring/recordEnvelope.d.ts +8 -6
  99. package/dist/keyring/recordEnvelope.d.ts.map +1 -1
  100. package/dist/keyring/recordEnvelope.js +12 -6
  101. package/dist/keyring/recordEnvelope.js.map +1 -1
  102. package/dist/keyring/unlockSpace.d.ts +15 -15
  103. package/dist/keyring/unlockSpace.d.ts.map +1 -1
  104. package/dist/keyring/unlockSpace.js +18 -19
  105. package/dist/keyring/unlockSpace.js.map +1 -1
  106. package/dist/keys/collectionLogStore.d.ts +3 -3
  107. package/dist/keys/collectionLogStore.d.ts.map +1 -1
  108. package/dist/keys/collectionLogStore.js +5 -7
  109. package/dist/keys/collectionLogStore.js.map +1 -1
  110. package/dist/keys/rosterStore.d.ts +3 -3
  111. package/dist/keys/rosterStore.d.ts.map +1 -1
  112. package/dist/keys/rosterStore.js +3 -4
  113. package/dist/keys/rosterStore.js.map +1 -1
  114. package/dist/recovery/continuation.d.ts +3 -9
  115. package/dist/recovery/continuation.d.ts.map +1 -1
  116. package/dist/recovery/continuation.js +1 -3
  117. package/dist/recovery/continuation.js.map +1 -1
  118. package/dist/recovery/index.d.ts +2 -1
  119. package/dist/recovery/index.d.ts.map +1 -1
  120. package/dist/recovery/recoveryDelegation.d.ts.map +1 -1
  121. package/dist/recovery/recoveryDelegation.js +2 -21
  122. package/dist/recovery/recoveryDelegation.js.map +1 -1
  123. package/dist/recovery/recoveryWebvh.d.ts +21 -15
  124. package/dist/recovery/recoveryWebvh.d.ts.map +1 -1
  125. package/dist/recovery/recoveryWebvh.js +12 -7
  126. package/dist/recovery/recoveryWebvh.js.map +1 -1
  127. package/dist/space/collections.d.ts +2 -2
  128. package/dist/space/collections.js +2 -2
  129. package/dist/space/deleteSpace.d.ts +3 -3
  130. package/dist/space/deleteSpace.d.ts.map +1 -1
  131. package/dist/space/deleteSpace.js +3 -4
  132. package/dist/space/deleteSpace.js.map +1 -1
  133. package/dist/space/errors.d.ts +1 -1
  134. package/dist/space/errors.js +1 -1
  135. package/dist/space/index.d.ts +4 -4
  136. package/dist/space/index.js +3 -3
  137. package/dist/space/provisioning.d.ts.map +1 -1
  138. package/dist/space/provisioning.js +6 -5
  139. package/dist/space/provisioning.js.map +1 -1
  140. package/dist/space/publicLink.d.ts +4 -4
  141. package/dist/space/publicLink.d.ts.map +1 -1
  142. package/dist/space/publicLink.js +9 -8
  143. package/dist/space/publicLink.js.map +1 -1
  144. package/dist/space/pwsLink.d.ts +58 -0
  145. package/dist/space/pwsLink.d.ts.map +1 -0
  146. package/dist/space/{wasLink.js → pwsLink.js} +42 -37
  147. package/dist/space/pwsLink.js.map +1 -0
  148. package/dist/testing/accountBuilder.d.ts +19 -19
  149. package/dist/testing/accountBuilder.d.ts.map +1 -1
  150. package/dist/testing/accountBuilder.js +45 -43
  151. package/dist/testing/accountBuilder.js.map +1 -1
  152. package/dist/unlock/index.d.ts +2 -1
  153. package/dist/unlock/index.d.ts.map +1 -1
  154. package/dist/unlock/retire.d.ts +7 -5
  155. package/dist/unlock/retire.d.ts.map +1 -1
  156. package/dist/unlock/retire.js +5 -4
  157. package/dist/unlock/retire.js.map +1 -1
  158. package/dist/unlock/standingWebvh.d.ts +24 -15
  159. package/dist/unlock/standingWebvh.d.ts.map +1 -1
  160. package/dist/unlock/standingWebvh.js +32 -19
  161. package/dist/unlock/standingWebvh.js.map +1 -1
  162. package/dist/unlock/unlockRecord.d.ts.map +1 -1
  163. package/dist/unlock/unlockRecord.js +7 -7
  164. package/dist/unlock/unlockRecord.js.map +1 -1
  165. package/dist/webvh/accountEntry.d.ts +39 -50
  166. package/dist/webvh/accountEntry.d.ts.map +1 -1
  167. package/dist/webvh/accountEntry.js +133 -55
  168. package/dist/webvh/accountEntry.js.map +1 -1
  169. package/dist/webvh/clientAnnexDid.d.ts +21 -14
  170. package/dist/webvh/clientAnnexDid.d.ts.map +1 -1
  171. package/dist/webvh/clientAnnexDid.js +19 -14
  172. package/dist/webvh/clientAnnexDid.js.map +1 -1
  173. package/dist/webvh/delegatedLogStore.d.ts +7 -14
  174. package/dist/webvh/delegatedLogStore.d.ts.map +1 -1
  175. package/dist/webvh/delegatedLogStore.js +10 -9
  176. package/dist/webvh/delegatedLogStore.js.map +1 -1
  177. package/dist/webvh/didWebProjection.d.ts +30 -49
  178. package/dist/webvh/didWebProjection.d.ts.map +1 -1
  179. package/dist/webvh/didWebProjection.js +9 -56
  180. package/dist/webvh/didWebProjection.js.map +1 -1
  181. package/dist/webvh/didWebvh.d.ts +19 -33
  182. package/dist/webvh/didWebvh.d.ts.map +1 -1
  183. package/dist/webvh/didWebvh.js +30 -41
  184. package/dist/webvh/didWebvh.js.map +1 -1
  185. package/dist/webvh/enrollClient.d.ts +5 -3
  186. package/dist/webvh/enrollClient.d.ts.map +1 -1
  187. package/dist/webvh/enrollClient.js +12 -10
  188. package/dist/webvh/enrollClient.js.map +1 -1
  189. package/dist/webvh/index.d.ts +2 -2
  190. package/dist/webvh/index.d.ts.map +1 -1
  191. package/dist/webvh/index.js +1 -1
  192. package/dist/webvh/index.js.map +1 -1
  193. package/dist/webvh/logLocation.d.ts +75 -0
  194. package/dist/webvh/logLocation.d.ts.map +1 -0
  195. package/dist/webvh/logLocation.js +102 -0
  196. package/dist/webvh/logLocation.js.map +1 -0
  197. package/dist/webvh/revokeClient.d.ts +10 -4
  198. package/dist/webvh/revokeClient.d.ts.map +1 -1
  199. package/dist/webvh/revokeClient.js +22 -22
  200. package/dist/webvh/revokeClient.js.map +1 -1
  201. package/dist/webvh/verifyLog.d.ts +9 -18
  202. package/dist/webvh/verifyLog.d.ts.map +1 -1
  203. package/dist/webvh/verifyLog.js +43 -50
  204. package/dist/webvh/verifyLog.js.map +1 -1
  205. package/package.json +7 -7
  206. package/dist/space/wasLink.d.ts +0 -57
  207. package/dist/space/wasLink.d.ts.map +0 -1
  208. package/dist/space/wasLink.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"listing.d.ts","sourceRoot":"","sources":["../../src/clients/listing.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,OAAO,EAIL,gBAAgB,EAChB,KAAK,mBAAmB,EACzB,MAAM,mBAAmB,CAAA;AAE1B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAEnE;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;CACb;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,kBAAkB,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC,CAAA;AAE7E;;;;;;;;GAQG;AACH,MAAM,WAAW,iBAAkB,SAAQ,mBAAmB;IAC5D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,OAAO,CAAA;CACnB;AAsFD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,kBAAkB,CAAC,EACvC,OAAO,EACP,oBAAoB,EACpB,sBAAsB,EACtB,WAAW,EACX,kBAAkB,EACnB,EAAE;IACD,OAAO,EAAE,iBAAiB,CAAA;IAC1B,oBAAoB,CAAC,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC,CAAA;IACpE,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAC/B,WAAW,CAAC,EAAE,kBAAkB,CAAA;IAChC,kBAAkB,CAAC,EAAE,mBAAmB,CAAA;CACzC,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAiB/B;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,yBAAyB,CAAC,EAC9C,OAAO,EACP,WAAW,EACX,kBAAkB,EACnB,EAAE;IACD,OAAO,EAAE,iBAAiB,CAAA;IAC1B,WAAW,CAAC,EAAE,kBAAkB,CAAA;IAChC,kBAAkB,CAAC,EAAE,mBAAmB,CAAA;CACzC,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAOvB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAsB,2BAA2B,CAAC,EAChD,OAAO,EACP,WAAW,EACX,kBAAkB,EACnB,EAAE;IACD,OAAO,EAAE,iBAAiB,CAAA;IAC1B,WAAW,CAAC,EAAE,kBAAkB,CAAA;IAChC,kBAAkB,CAAC,EAAE,mBAAmB,CAAA;CACzC,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAcvB"}
1
+ {"version":3,"file":"listing.d.ts","sourceRoot":"","sources":["../../src/clients/listing.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,OAAO,EAIL,gBAAgB,EAChB,KAAK,mBAAmB,EACzB,MAAM,mBAAmB,CAAA;AAE1B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAEnE;;;;;;;GAOG;AACH,MAAM,MAAM,kBAAkB,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC,CAAA;AAE7E;;;;;;;;GAQG;AACH,MAAM,WAAW,iBAAkB,SAAQ,mBAAmB;IAC5D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,OAAO,CAAA;CACnB;AAuFD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,kBAAkB,CAAC,EACvC,GAAG,EACH,oBAAoB,EACpB,sBAAsB,EACtB,WAAW,EACX,kBAAkB,EACnB,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;IACX,oBAAoB,CAAC,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC,CAAA;IACpE,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAC/B,WAAW,CAAC,EAAE,kBAAkB,CAAA;IAChC,kBAAkB,CAAC,EAAE,mBAAmB,CAAA;CACzC,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAiB/B;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,yBAAyB,CAAC,EAC9C,GAAG,EACH,WAAW,EACX,kBAAkB,EACnB,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;IACX,WAAW,CAAC,EAAE,kBAAkB,CAAA;IAChC,kBAAkB,CAAC,EAAE,mBAAmB,CAAA;CACzC,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAOvB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,2BAA2B,CAAC,EAChD,GAAG,EACH,WAAW,EACX,kBAAkB,EACnB,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;IACX,WAAW,CAAC,EAAE,kBAAkB,CAAA;IAChC,kBAAkB,CAAC,EAAE,mBAAmB,CAAA;CACzC,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAcvB"}
@@ -60,17 +60,18 @@ function walletClientEntriesByKey({ entries }) {
60
60
  * the caller keeps pins.
61
61
  *
62
62
  * @param options {object}
63
- * @param options.pointer {AccountLogPointer} where the account log lives
63
+ * @param options.did {string} the account's did:webvh, which locates its
64
+ * own log
64
65
  * @param [options.verifiedLog] {VerifiedAccountLog} an already-verified log
65
66
  * to read instead of fetching and verifying one
66
67
  * @param [options.accountLogPinStore] {ResourceLogPinStore} this client's
67
68
  * chain-head pin for the account log, checked when the log is fetched here
68
69
  * @returns {Promise<VerifiedAccountLog>}
69
70
  */
70
- async function resolveVerifiedAccountLog({ pointer, verifiedLog, accountLogPinStore }) {
71
+ async function resolveVerifiedAccountLog({ did, verifiedLog, accountLogPinStore }) {
71
72
  return (verifiedLog ??
72
73
  (await verifyAccountLog({
73
- ...pointer,
74
+ did,
74
75
  ...(accountLogPinStore ? { pinStore: accountLogPinStore } : {})
75
76
  })));
76
77
  }
@@ -100,7 +101,8 @@ async function directoryNames({ readDirectoryEntries }) {
100
101
  * client marked.
101
102
  *
102
103
  * @param options {object}
103
- * @param options.pointer {AccountLogPointer} where the account log lives
104
+ * @param options.did {string} the account's did:webvh, which locates its
105
+ * own log
104
106
  * @param [options.readDirectoryEntries] {Function} reads the `connections`
105
107
  * directory's entries; its `wallet-client` entries name the rows. Omitted,
106
108
  * or throwing, every row is unlabeled
@@ -112,11 +114,11 @@ async function directoryNames({ readDirectoryEntries }) {
112
114
  * chain-head pin for the account log, checked when the log is fetched here
113
115
  * @returns {Promise<AccountClientView[]>}
114
116
  */
115
- export async function listAccountClients({ pointer, readDirectoryEntries, ownSigningKeyMultibase, verifiedLog, accountLogPinStore }) {
117
+ export async function listAccountClients({ did, readDirectoryEntries, ownSigningKeyMultibase, verifiedLog, accountLogPinStore }) {
116
118
  // The log read and the directory read are independent, so they run
117
119
  // together. A failed directory read leaves every row unlabeled.
118
120
  const [{ log }, named] = await Promise.all([
119
- resolveVerifiedAccountLog({ pointer, verifiedLog, accountLogPinStore }),
121
+ resolveVerifiedAccountLog({ did, verifiedLog, accountLogPinStore }),
120
122
  directoryNames({ readDirectoryEntries })
121
123
  ]);
122
124
  const clients = listEnrolledWebvhClients({ log });
@@ -144,16 +146,17 @@ export async function listAccountClients({ pointer, readDirectoryEntries, ownSig
144
146
  * its page.
145
147
  *
146
148
  * @param options {object}
147
- * @param options.pointer {AccountLogPointer}
149
+ * @param options.did {string} the account's did:webvh, which locates its
150
+ * own log
148
151
  * @param [options.verifiedLog] {VerifiedAccountLog} an already-verified log
149
152
  * to read instead of fetching and verifying one
150
153
  * @param [options.accountLogPinStore] {ResourceLogPinStore} this client's
151
154
  * chain-head pin for the account log, checked when the log is fetched here
152
155
  * @returns {Promise<Set<string>>}
153
156
  */
154
- export async function currentAccountSigningKeys({ pointer, verifiedLog, accountLogPinStore }) {
157
+ export async function currentAccountSigningKeys({ did, verifiedLog, accountLogPinStore }) {
155
158
  const { doc } = await resolveVerifiedAccountLog({
156
- pointer,
159
+ did,
157
160
  verifiedLog,
158
161
  accountLogPinStore
159
162
  });
@@ -178,21 +181,22 @@ export async function currentAccountSigningKeys({ pointer, verifiedLog, accountL
178
181
  * members through `delegationSignerKey`, and this set plays no part in it.
179
182
  *
180
183
  * @param options {object}
181
- * @param options.pointer {AccountLogPointer}
184
+ * @param options.did {string} the account's did:webvh, which locates its
185
+ * own log
182
186
  * @param [options.verifiedLog] {VerifiedAccountLog} an already-verified log
183
187
  * to read instead of fetching and verifying one
184
188
  * @param [options.accountLogPinStore] {ResourceLogPinStore} this client's
185
189
  * chain-head pin for the account log, checked when the log is fetched here
186
190
  * @returns {Promise<Set<string>>} public key multibases
187
191
  */
188
- export async function currentAccountRecordSigners({ pointer, verifiedLog, accountLogPinStore }) {
192
+ export async function currentAccountRecordSigners({ did, verifiedLog, accountLogPinStore }) {
189
193
  const verified = await resolveVerifiedAccountLog({
190
- pointer,
194
+ did,
191
195
  verifiedLog,
192
196
  accountLogPinStore
193
197
  });
194
198
  const keys = await currentAccountSigningKeys({
195
- pointer,
199
+ did,
196
200
  verifiedLog: verified
197
201
  });
198
202
  for (const key of ladderVmKeyMultibases({ doc: verified.doc })) {
@@ -1 +1 @@
1
- {"version":3,"file":"listing.js","sourceRoot":"","sources":["../../src/clients/listing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"listing.js","sourceRoot":"","sources":["../../src/clients/listing.ts"],"names":[],"mappings":"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"}
@@ -74,7 +74,7 @@
74
74
  import type { IKeyAgreementKey } from '@interop/data-integrity-core';
75
75
  import type { CollectionEncryption } from '@interop/was-client';
76
76
  import type { EncryptionDescriptorStore } from '@interop/was-client/edv/core';
77
- import { type AccountLogSigner, type PublishedKeyDocument, type RevokedClientKeys, type WebvhIdStore } from '../webvh/index.js';
77
+ import { type AccountLogSigner, type PublishedKeyDocument, type RevokedClientKeys, type WebvhIdStore, type DidWebProjectionStore } from '../webvh/index.js';
78
78
  import { type CascadeCollections, type RosterSealReport, type UserKey, type UserKeyCascadeResult } from '../keys/index.js';
79
79
  import { type CeremonyEmitter } from '../ceremonyEvents.js';
80
80
  export type { CascadeCollections, RosterSealReport };
@@ -188,7 +188,7 @@ export declare function revokeAccountClient(options: Omit<Parameters<typeof runC
188
188
  declare function runClientRevocation({ idStore, signer, projectionStore, revokedClient, knownLatentHashes, expectedDid, rosterStore, userKey, clientKeyAgreementKey, pinnedEpochId, onUserKeyAdopted, collections, remintGenerationDelegation, onRotationAdopted, events }: {
189
189
  idStore: WebvhIdStore;
190
190
  signer: AccountLogSigner;
191
- projectionStore?: Pick<WebvhIdStore, 'getIdResourceRaw' | 'putIdResource'>;
191
+ projectionStore?: DidWebProjectionStore;
192
192
  revokedClient: RevokedClientKeys;
193
193
  knownLatentHashes?: string[];
194
194
  expectedDid?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"revocation.d.ts","sourceRoot":"","sources":["../../src/clients/revocation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"revocation.d.ts","sourceRoot":"","sources":["../../src/clients/revocation.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"revocation.js","sourceRoot":"","sources":["../../src/clients/revocation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"revocation.js","sourceRoot":"","sources":["../../src/clients/revocation.ts"],"names":[],"mappings":"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"}
@@ -60,7 +60,6 @@ import type { CollectionEncryption } from '@interop/was-client';
60
60
  import type { EncryptionDescriptorStore } from '@interop/was-client/edv/core';
61
61
  import { type UserKey, type UserKeyRosterReadResult } from '../keys/index.js';
62
62
  import type { ResourceLogPinStore } from '@interop/vh-resource-log';
63
- import type { AccountLogPointer } from './listing.js';
64
63
  /**
65
64
  * What an adopted user key carries: the key itself, the roster epoch to
66
65
  * pin as latest-seen, and the descriptor it was read from.
@@ -132,7 +131,8 @@ export declare function checkUserKeyRosterAtLogin({ store, userKey, clientKeyAgr
132
131
  * rollback carve-out.
133
132
  *
134
133
  * @param options {object}
135
- * @param options.pointer {AccountLogPointer} where the account log lives
134
+ * @param options.did {string} the account's did:webvh, which locates its
135
+ * own log
136
136
  * @param options.store {EncryptionDescriptorStore} the roster's descriptor
137
137
  * store
138
138
  * @param options.userKey {UserKey} the start's current user key
@@ -156,8 +156,8 @@ export declare function checkUserKeyRosterAtLogin({ store, userKey, clientKeyAgr
156
156
  * kids found, the kids escrowed by the mirror direction, and the key +
157
157
  * descriptor to fan out with
158
158
  */
159
- export declare function convergeUserKeyRosterToAccount({ pointer, store, userKey, descriptor, etag, clientKeyAgreementKey, pinnedEpochId, accountLogPinStore, onUserKeyAdopted }: {
160
- pointer: AccountLogPointer;
159
+ export declare function convergeUserKeyRosterToAccount({ did, store, userKey, descriptor, etag, clientKeyAgreementKey, pinnedEpochId, accountLogPinStore, onUserKeyAdopted }: {
160
+ did: string;
161
161
  store: EncryptionDescriptorStore;
162
162
  userKey: UserKey;
163
163
  descriptor: CollectionEncryption;
@@ -1 +1 @@
1
- {"version":3,"file":"rosterPolicy.d.ts","sourceRoot":"","sources":["../../src/clients/rosterPolicy.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAC/D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAA;AAC7E,OAAO,EAGL,KAAK,OAAO,EACZ,KAAK,uBAAuB,EAC7B,MAAM,kBAAkB,CAAA;AAEzB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAInE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAErD;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAA;IAChB,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE,oBAAoB,CAAA;CACjC;AAuCD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAsB,yBAAyB,CAAC,EAC9C,KAAK,EACL,OAAO,EACP,qBAAqB,EACrB,aAAa,EACb,YAAY,EACb,EAAE;IACD,KAAK,EAAE,yBAAyB,CAAA;IAChC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,qBAAqB,EAAE,gBAAgB,CAAA;IACvC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CAC1D,GAAG,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC,CAqC1C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,wBAAsB,8BAA8B,CAAC,EACnD,OAAO,EACP,KAAK,EACL,OAAO,EACP,UAAU,EACV,IAAI,EACJ,qBAAqB,EACrB,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EACjB,EAAE;IACD,OAAO,EAAE,iBAAiB,CAAA;IAC1B,KAAK,EAAE,yBAAyB,CAAA;IAChC,OAAO,EAAE,OAAO,CAAA;IAChB,UAAU,EAAE,oBAAoB,CAAA;IAChC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,qBAAqB,EAAE,gBAAgB,CAAA;IACvC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,kBAAkB,CAAC,EAAE,mBAAmB,CAAA;IACxC,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CAC9D,GAAG,OAAO,CAAC;IACV,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,OAAO,CAAA;IACf,iBAAiB,EAAE,MAAM,EAAE,CAAA;IAC3B,oBAAoB,EAAE,MAAM,EAAE,CAAA;IAC9B,OAAO,EAAE,OAAO,CAAA;IAChB,UAAU,EAAE,oBAAoB,CAAA;CACjC,CAAC,CAgHD"}
1
+ {"version":3,"file":"rosterPolicy.d.ts","sourceRoot":"","sources":["../../src/clients/rosterPolicy.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAC/D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAA;AAC7E,OAAO,EAGL,KAAK,OAAO,EACZ,KAAK,uBAAuB,EAC7B,MAAM,kBAAkB,CAAA;AAEzB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAKnE;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAA;IAChB,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE,oBAAoB,CAAA;CACjC;AAuCD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAsB,yBAAyB,CAAC,EAC9C,KAAK,EACL,OAAO,EACP,qBAAqB,EACrB,aAAa,EACb,YAAY,EACb,EAAE;IACD,KAAK,EAAE,yBAAyB,CAAA;IAChC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,qBAAqB,EAAE,gBAAgB,CAAA;IACvC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CAC1D,GAAG,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC,CAqC1C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,wBAAsB,8BAA8B,CAAC,EACnD,GAAG,EACH,KAAK,EACL,OAAO,EACP,UAAU,EACV,IAAI,EACJ,qBAAqB,EACrB,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EACjB,EAAE;IACD,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,yBAAyB,CAAA;IAChC,OAAO,EAAE,OAAO,CAAA;IAChB,UAAU,EAAE,oBAAoB,CAAA;IAChC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,qBAAqB,EAAE,gBAAgB,CAAA;IACvC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,kBAAkB,CAAC,EAAE,mBAAmB,CAAA;IACxC,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CAC9D,GAAG,OAAO,CAAC;IACV,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,OAAO,CAAA;IACf,iBAAiB,EAAE,MAAM,EAAE,CAAA;IAC3B,oBAAoB,EAAE,MAAM,EAAE,CAAA;IAC9B,OAAO,EAAE,OAAO,CAAA;IAChB,UAAU,EAAE,oBAAoB,CAAA;CACjC,CAAC,CAgHD"}
@@ -128,7 +128,8 @@ export async function checkUserKeyRosterAtLogin({ store, userKey, clientKeyAgree
128
128
  * rollback carve-out.
129
129
  *
130
130
  * @param options {object}
131
- * @param options.pointer {AccountLogPointer} where the account log lives
131
+ * @param options.did {string} the account's did:webvh, which locates its
132
+ * own log
132
133
  * @param options.store {EncryptionDescriptorStore} the roster's descriptor
133
134
  * store
134
135
  * @param options.userKey {UserKey} the start's current user key
@@ -152,7 +153,7 @@ export async function checkUserKeyRosterAtLogin({ store, userKey, clientKeyAgree
152
153
  * kids found, the kids escrowed by the mirror direction, and the key +
153
154
  * descriptor to fan out with
154
155
  */
155
- export async function convergeUserKeyRosterToAccount({ pointer, store, userKey, descriptor, etag, clientKeyAgreementKey, pinnedEpochId, accountLogPinStore, onUserKeyAdopted }) {
156
+ export async function convergeUserKeyRosterToAccount({ did, store, userKey, descriptor, etag, clientKeyAgreementKey, pinnedEpochId, accountLogPinStore, onUserKeyAdopted }) {
156
157
  const unchanged = {
157
158
  rotated: false,
158
159
  sealed: false,
@@ -167,13 +168,13 @@ export async function convergeUserKeyRosterToAccount({ pointer, store, userKey,
167
168
  let converged;
168
169
  try {
169
170
  const { doc } = await verifyAccountLog({
170
- ...pointer,
171
+ did,
171
172
  ...(accountLogPinStore ? { pinStore: accountLogPinStore } : {})
172
173
  });
173
174
  const result = await convergeUserKeyRosterToDocument({
174
175
  store,
175
176
  document: doc,
176
- did: pointer.did,
177
+ did,
177
178
  descriptor,
178
179
  ...(etag !== undefined ? { etag } : {}),
179
180
  // The escrow direction needs a key that unwraps every epoch, and the
@@ -1 +1 @@
1
- {"version":3,"file":"rosterPolicy.js","sourceRoot":"","sources":["../../src/clients/rosterPolicy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rosterPolicy.js","sourceRoot":"","sources":["../../src/clients/rosterPolicy.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,11 @@ export declare const CONNECTION_ENTRY_VERSION = 1;
6
6
  * The `kind` vocabulary: what the party says it is. An entry carrying any
7
7
  * other value reads as an unclassified party.
8
8
  */
9
- export declare const CONNECTION_KINDS: readonly ["app", "agent", "wallet-client", "contact"];
9
+ export declare const CONNECTION_KINDS: readonly ["app", "agent", "wallet-client", "contact", "replica-server"];
10
+ /**
11
+ * The one kind whose entry carries a non-empty `replicas` list.
12
+ */
13
+ export declare const REPLICA_SERVER_KIND: "replica-server";
10
14
  /**
11
15
  * One value of {@link CONNECTION_KINDS}.
12
16
  */
@@ -99,6 +103,56 @@ export type ConnectionOutboxItem = {
99
103
  createdAt: string;
100
104
  [member: string]: unknown;
101
105
  };
106
+ /**
107
+ * One member of a `replica-server` entry's `replicas`: one replica Space on
108
+ * that replica server, with its source Space, its registration ids, and the
109
+ * user's outstanding intents toward it. Each marker is written by one intent
110
+ * and cleared by its completion; no unset marker reads as an intent.
111
+ */
112
+ export type ConnectionReplica = {
113
+ /**
114
+ * The source Space's container URL, with its trailing slash, as the
115
+ * registration body carries it.
116
+ */
117
+ fromSpace: string;
118
+ /**
119
+ * The replica Space's id on the replica server: 32 random bytes, base64url
120
+ * with no padding, distinct from the source Space's id.
121
+ */
122
+ spaceId: string;
123
+ /**
124
+ * The id of the item's registration, present once its first registration
125
+ * landed. An in-place replacement of the registration's capability keeps
126
+ * it.
127
+ */
128
+ registrationId?: string;
129
+ /**
130
+ * A first registration's id, present between its mint and the landing of
131
+ * its POST, then moved to `registrationId`.
132
+ */
133
+ pendingRegistrationId?: string;
134
+ /**
135
+ * The registration's collection list, not empty when present. Absent when
136
+ * the replica server copies every live Collection.
137
+ */
138
+ collections?: string[];
139
+ /**
140
+ * ISO 8601 UTC time of the user's Stop. Marks a stopped snapshot until a
141
+ * completed re-start clears it.
142
+ */
143
+ stoppedAt?: string;
144
+ /**
145
+ * ISO 8601 UTC time of the user's re-start, written first and cleared
146
+ * last.
147
+ */
148
+ restartedAt?: string;
149
+ /**
150
+ * ISO 8601 UTC time the replica Space read absent under the account's own
151
+ * authority.
152
+ */
153
+ lostAt?: string;
154
+ [member: string]: unknown;
155
+ };
102
156
  /**
103
157
  * One member of an entry's `writers`: a `writerId` the party has written
104
158
  * under, with the platform label it registered with and its liveness state.
@@ -146,7 +200,8 @@ export type ConnectionEntry = {
146
200
  */
147
201
  origin?: string;
148
202
  /**
149
- * The canonical app URL, for an App Connect app.
203
+ * The canonical app URL, for an App Connect app, or the base URL of a
204
+ * replica server.
150
205
  */
151
206
  url?: string;
152
207
  /**
@@ -188,6 +243,12 @@ export type ConnectionEntry = {
188
243
  */
189
244
  outbox: ConnectionOutboxItem[];
190
245
  writers: ConnectionWriter[];
246
+ /**
247
+ * The replica Spaces on a `replica-server` entry's server. Empty on every
248
+ * other kind, where a non-empty list fails the codec, and absent on a body
249
+ * an older build wrote, which reads as empty.
250
+ */
251
+ replicas: ConnectionReplica[];
191
252
  };
192
253
  /**
193
254
  * The writer policy every wallet that sweeps must share, or two sweepers
@@ -281,6 +342,34 @@ export declare function parseConnectionZcap(value: unknown): ConnectionZcap | un
281
342
  * @returns {Uint8Array | undefined}
282
343
  */
283
344
  export declare function decodeConnectionSeed(value: unknown): Uint8Array | undefined;
345
+ /**
346
+ * Whether a value is a Space's container URL: an absolute URL ending with a
347
+ * slash. The one rule the codec, the replica-server helpers, and the grant
348
+ * target check share.
349
+ *
350
+ * @param value {unknown}
351
+ * @returns {boolean}
352
+ */
353
+ export declare function isSpaceContainerUrl(value: unknown): value is string;
354
+ /**
355
+ * A Space's container URL in the one form the directory stores and compares
356
+ * it in: URL-parsed and re-serialized, so a default port or an upper-case
357
+ * host names the same Space as its plain form. Refuses a value that is not
358
+ * a container URL ({@link isSpaceContainerUrl}) with a `TypeError`.
359
+ *
360
+ * @param value {string}
361
+ * @returns {string}
362
+ */
363
+ export declare function spaceContainerUrl(value: string): string;
364
+ /**
365
+ * Whether a value is a fresh id as the directory stores one: 43 characters
366
+ * of base64url with no padding decoding to 32 bytes (a replica Space id, a
367
+ * registration id).
368
+ *
369
+ * @param value {unknown}
370
+ * @returns {boolean}
371
+ */
372
+ export declare function isConnectionFreshId(value: unknown): value is string;
284
373
  /**
285
374
  * Reads a stored body as a directory entry, or `undefined` when it is not
286
375
  * one. A body fails when any member this build knows has the wrong shape:
@@ -288,13 +377,15 @@ export declare function decodeConnectionSeed(value: unknown): Uint8Array | undef
288
377
  * is not a DID, a `name`, `label`, or writer `label` outside the display-name
289
378
  * rule (1 to 64 code points once the control and bidi characters are stripped
290
379
  * and the result trimmed), a timestamp `Date.parse` cannot read, a malformed
291
- * grant wrapper, received-grant wrapper, outbox item, or writer member, a
292
- * `seed` or `seedTag` that is not 43 characters of base64url decoding to 32
293
- * bytes, a `seed` with no `seedTag` (or the reverse), or no `id` beside
294
- * anything but exactly one writer. Every display string a view renders is
295
- * held to that one rule. An absent `grantsReceived` or `outbox` (a body an
296
- * older build wrote) reads as empty. Unknown members are ignored. A body with a `version` above this build's
297
- * that passes every check is returned for display;
380
+ * grant wrapper, received-grant wrapper, outbox item, replica item, or writer
381
+ * member, a non-empty `replicas` list on an entry whose `kind` is not
382
+ * `'replica-server'`, a `seed` or `seedTag` that is not 43 characters of
383
+ * base64url decoding to 32 bytes, a `seed` with no `seedTag` (or the
384
+ * reverse), or no `id` beside anything but exactly one writer. Every display string a view renders is
385
+ * held to that one rule. An absent `grantsReceived`, `outbox`, or `replicas`
386
+ * (a body an older build wrote, or an entry of a kind that carries none)
387
+ * reads as empty. Unknown members are ignored. A body with a `version` above
388
+ * this build's that passes every check is returned for display;
298
389
  * {@link isWritableConnectionEntry} says it cannot be written.
299
390
  *
300
391
  * Where the body sits is not checked here. A reader also checks that the
@@ -1 +1 @@
1
- {"version":3,"file":"entry.d.ts","sourceRoot":"","sources":["../../src/connections/entry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entry.d.ts","sourceRoot":"","sources":["../../src/connections/entry.ts"],"names":[],"mappings":"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"}
@@ -34,8 +34,13 @@ export const CONNECTION_KINDS = [
34
34
  'app',
35
35
  'agent',
36
36
  'wallet-client',
37
- 'contact'
37
+ 'contact',
38
+ 'replica-server'
38
39
  ];
40
+ /**
41
+ * The one kind whose entry carries a non-empty `replicas` list.
42
+ */
43
+ export const REPLICA_SERVER_KIND = 'replica-server';
39
44
  /**
40
45
  * The `grantKind` vocabulary: `'share'` marks a grant the
41
46
  * shared-wallet-collection flow wrote, and `'grant'` is every other delegated
@@ -254,6 +259,85 @@ export function decodeConnectionSeed(value) {
254
259
  }
255
260
  return bytes.length === CONNECTION_SEED_BYTES ? bytes : undefined;
256
261
  }
262
+ /**
263
+ * Whether a value is a Space's container URL: an absolute URL ending with a
264
+ * slash. The one rule the codec, the replica-server helpers, and the grant
265
+ * target check share.
266
+ *
267
+ * @param value {unknown}
268
+ * @returns {boolean}
269
+ */
270
+ export function isSpaceContainerUrl(value) {
271
+ if (typeof value !== 'string' || !value.endsWith('/')) {
272
+ return false;
273
+ }
274
+ try {
275
+ new URL(value);
276
+ return true;
277
+ }
278
+ catch {
279
+ return false;
280
+ }
281
+ }
282
+ /**
283
+ * A Space's container URL in the one form the directory stores and compares
284
+ * it in: URL-parsed and re-serialized, so a default port or an upper-case
285
+ * host names the same Space as its plain form. Refuses a value that is not
286
+ * a container URL ({@link isSpaceContainerUrl}) with a `TypeError`.
287
+ *
288
+ * @param value {string}
289
+ * @returns {string}
290
+ */
291
+ export function spaceContainerUrl(value) {
292
+ if (!isSpaceContainerUrl(value)) {
293
+ throw new TypeError(`A Space container URL is an absolute URL ending with a slash; got ` +
294
+ `"${value}".`);
295
+ }
296
+ return new URL(value).href;
297
+ }
298
+ /**
299
+ * Whether a value is a fresh id as the directory stores one: 43 characters
300
+ * of base64url with no padding decoding to 32 bytes (a replica Space id, a
301
+ * registration id).
302
+ *
303
+ * @param value {unknown}
304
+ * @returns {boolean}
305
+ */
306
+ export function isConnectionFreshId(value) {
307
+ return decodeConnectionSeed(value) !== undefined;
308
+ }
309
+ /**
310
+ * Reads one stored replica item, or `undefined` when a known member has the
311
+ * wrong shape: `fromSpace` must be a container URL, `spaceId` and each
312
+ * registration id a fresh id, `collections` a non-empty list of non-empty
313
+ * strings (an absent list means every live Collection, so an empty one has
314
+ * no reading), and each marker a timestamp. The item is returned verbatim, unknown members
315
+ * included.
316
+ *
317
+ * @param value {unknown}
318
+ * @returns {ConnectionReplica | undefined}
319
+ */
320
+ function parseReplica(value) {
321
+ if (!isJsonObject(value)) {
322
+ return undefined;
323
+ }
324
+ const { fromSpace, spaceId, registrationId, pendingRegistrationId, collections, stoppedAt, restartedAt, lostAt } = value;
325
+ if (!isSpaceContainerUrl(fromSpace) ||
326
+ !isConnectionFreshId(spaceId) ||
327
+ (registrationId !== undefined && !isConnectionFreshId(registrationId)) ||
328
+ (pendingRegistrationId !== undefined &&
329
+ !isConnectionFreshId(pendingRegistrationId)) ||
330
+ (collections !== undefined &&
331
+ !(Array.isArray(collections) &&
332
+ collections.length > 0 &&
333
+ collections.every(collection => typeof collection === 'string' && collection !== ''))) ||
334
+ (stoppedAt !== undefined && !isTimestamp(stoppedAt)) ||
335
+ (restartedAt !== undefined && !isTimestamp(restartedAt)) ||
336
+ (lostAt !== undefined && !isTimestamp(lostAt))) {
337
+ return undefined;
338
+ }
339
+ return value;
340
+ }
257
341
  /**
258
342
  * Reads one stored writer member, or `undefined` when a known member has the
259
343
  * wrong shape. The member is returned verbatim, unknown members included.
@@ -285,13 +369,15 @@ function parseWriter(value) {
285
369
  * is not a DID, a `name`, `label`, or writer `label` outside the display-name
286
370
  * rule (1 to 64 code points once the control and bidi characters are stripped
287
371
  * and the result trimmed), a timestamp `Date.parse` cannot read, a malformed
288
- * grant wrapper, received-grant wrapper, outbox item, or writer member, a
289
- * `seed` or `seedTag` that is not 43 characters of base64url decoding to 32
290
- * bytes, a `seed` with no `seedTag` (or the reverse), or no `id` beside
291
- * anything but exactly one writer. Every display string a view renders is
292
- * held to that one rule. An absent `grantsReceived` or `outbox` (a body an
293
- * older build wrote) reads as empty. Unknown members are ignored. A body with a `version` above this build's
294
- * that passes every check is returned for display;
372
+ * grant wrapper, received-grant wrapper, outbox item, replica item, or writer
373
+ * member, a non-empty `replicas` list on an entry whose `kind` is not
374
+ * `'replica-server'`, a `seed` or `seedTag` that is not 43 characters of
375
+ * base64url decoding to 32 bytes, a `seed` with no `seedTag` (or the
376
+ * reverse), or no `id` beside anything but exactly one writer. Every display string a view renders is
377
+ * held to that one rule. An absent `grantsReceived`, `outbox`, or `replicas`
378
+ * (a body an older build wrote, or an entry of a kind that carries none)
379
+ * reads as empty. Unknown members are ignored. A body with a `version` above
380
+ * this build's that passes every check is returned for display;
295
381
  * {@link isWritableConnectionEntry} says it cannot be written.
296
382
  *
297
383
  * Where the body sits is not checked here. A reader also checks that the
@@ -305,7 +391,7 @@ export function parseConnectionEntry(body) {
305
391
  if (!isJsonObject(body)) {
306
392
  return undefined;
307
393
  }
308
- const { version, kind, id, name, label, origin, url, appKey, firstSeen, lastSeen, retired, declined, seed, seedTag, grants, grantsReceived, outbox, writers } = body;
394
+ const { version, kind, id, name, label, origin, url, appKey, firstSeen, lastSeen, retired, declined, seed, seedTag, grants, grantsReceived, outbox, writers, replicas } = body;
309
395
  if (typeof version !== 'number' ||
310
396
  !Number.isInteger(version) ||
311
397
  version < 1 ||
@@ -327,7 +413,10 @@ export function parseConnectionEntry(body) {
327
413
  !Array.isArray(grants) ||
328
414
  (grantsReceived !== undefined && !Array.isArray(grantsReceived)) ||
329
415
  (outbox !== undefined && !Array.isArray(outbox)) ||
330
- !Array.isArray(writers)) {
416
+ !Array.isArray(writers) ||
417
+ (replicas !== undefined &&
418
+ (!Array.isArray(replicas) ||
419
+ (replicas.length > 0 && kind !== REPLICA_SERVER_KIND)))) {
331
420
  return undefined;
332
421
  }
333
422
  const normalizedName = name === undefined ? undefined : normalizeDisplayName({ value: name });
@@ -340,10 +429,12 @@ export function parseConnectionEntry(body) {
340
429
  const parsedReceived = (grantsReceived ?? []).map(parseReceivedGrantRecord);
341
430
  const parsedOutbox = (outbox ?? []).map(parseOutboxItem);
342
431
  const parsedWriters = writers.map(parseWriter);
432
+ const parsedReplicas = (replicas ?? []).map(parseReplica);
343
433
  if (parsedGrants.some(grant => grant === undefined) ||
344
434
  parsedReceived.some(grant => grant === undefined) ||
345
435
  parsedOutbox.some(item => item === undefined) ||
346
- parsedWriters.some(writer => writer === undefined)) {
436
+ parsedWriters.some(writer => writer === undefined) ||
437
+ parsedReplicas.some(item => item === undefined)) {
347
438
  return undefined;
348
439
  }
349
440
  if (id === undefined && parsedWriters.length !== 1) {
@@ -367,7 +458,8 @@ export function parseConnectionEntry(body) {
367
458
  grants: parsedGrants,
368
459
  grantsReceived: parsedReceived,
369
460
  outbox: parsedOutbox,
370
- writers: parsedWriters
461
+ writers: parsedWriters,
462
+ replicas: parsedReplicas
371
463
  };
372
464
  }
373
465
  //# sourceMappingURL=entry.js.map