@mdbase-dev/sdk 0.0.0-stage → 0.1.0-beta.149

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 (900) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +844 -2
  3. package/dist/account-key.d.ts +176 -0
  4. package/dist/account-key.js +409 -0
  5. package/dist/account-key.js.map +1 -0
  6. package/dist/account.d.ts +11 -0
  7. package/dist/account.js +9 -0
  8. package/dist/account.js.map +1 -0
  9. package/dist/app-grant/client.d.ts +209 -0
  10. package/dist/app-grant/client.js +930 -0
  11. package/dist/app-grant/client.js.map +1 -0
  12. package/dist/app-grant/grant-store.d.ts +77 -0
  13. package/dist/app-grant/grant-store.js +201 -0
  14. package/dist/app-grant/grant-store.js.map +1 -0
  15. package/dist/app-grant/index.d.ts +11 -0
  16. package/dist/app-grant/index.js +10 -0
  17. package/dist/app-grant/index.js.map +1 -0
  18. package/dist/app-grant/native-completion.d.ts +22 -0
  19. package/dist/app-grant/native-completion.js +63 -0
  20. package/dist/app-grant/native-completion.js.map +1 -0
  21. package/dist/app-grant/people.d.ts +10 -0
  22. package/dist/app-grant/people.js +84 -0
  23. package/dist/app-grant/people.js.map +1 -0
  24. package/dist/app-grant/setup-attempt.d.ts +12 -0
  25. package/dist/app-grant/setup-attempt.js +62 -0
  26. package/dist/app-grant/setup-attempt.js.map +1 -0
  27. package/dist/app-grant/setup-producer.d.ts +31 -0
  28. package/dist/app-grant/setup-producer.js +65 -0
  29. package/dist/app-grant/setup-producer.js.map +1 -0
  30. package/dist/app-grant/setup.d.ts +11 -0
  31. package/dist/app-grant/setup.js +222 -0
  32. package/dist/app-grant/setup.js.map +1 -0
  33. package/dist/app-host/app-environment.d.ts +27 -0
  34. package/dist/app-host/app-environment.js +48 -0
  35. package/dist/app-host/app-environment.js.map +1 -0
  36. package/dist/app-host/app-origin.d.ts +7 -0
  37. package/dist/app-host/app-origin.js +49 -0
  38. package/dist/app-host/app-origin.js.map +1 -0
  39. package/dist/app-host/bases-pages.d.ts +29 -0
  40. package/dist/app-host/bases-pages.js +42 -0
  41. package/dist/app-host/bases-pages.js.map +1 -0
  42. package/dist/app-host/bases-wire.d.ts +159 -0
  43. package/dist/app-host/bases-wire.js +376 -0
  44. package/dist/app-host/bases-wire.js.map +1 -0
  45. package/dist/app-host/browser-direct-access.d.ts +18 -0
  46. package/dist/app-host/browser-direct-access.js +17 -0
  47. package/dist/app-host/browser-direct-access.js.map +1 -0
  48. package/dist/app-host/cloud-copy-bootstrap.d.ts +127 -0
  49. package/dist/app-host/cloud-copy-bootstrap.js +608 -0
  50. package/dist/app-host/cloud-copy-bootstrap.js.map +1 -0
  51. package/dist/app-host/cloud-copy-host.d.ts +248 -0
  52. package/dist/app-host/cloud-copy-host.js +1028 -0
  53. package/dist/app-host/cloud-copy-host.js.map +1 -0
  54. package/dist/app-host/cloud-copy-persistence-idb.d.ts +33 -0
  55. package/dist/app-host/cloud-copy-persistence-idb.js +255 -0
  56. package/dist/app-host/cloud-copy-persistence-idb.js.map +1 -0
  57. package/dist/app-host/cloud-copy-persistence.d.ts +57 -0
  58. package/dist/app-host/cloud-copy-persistence.js +341 -0
  59. package/dist/app-host/cloud-copy-persistence.js.map +1 -0
  60. package/dist/app-host/collection-control.d.ts +111 -0
  61. package/dist/app-host/collection-control.js +604 -0
  62. package/dist/app-host/collection-control.js.map +1 -0
  63. package/dist/app-host/collection-delete.d.ts +7 -0
  64. package/dist/app-host/collection-delete.js +54 -0
  65. package/dist/app-host/collection-delete.js.map +1 -0
  66. package/dist/app-host/collection-display-name.d.ts +2 -0
  67. package/dist/app-host/collection-display-name.js +22 -0
  68. package/dist/app-host/collection-display-name.js.map +1 -0
  69. package/dist/app-host/collection-join-ledger.d.ts +52 -0
  70. package/dist/app-host/collection-join-ledger.js +208 -0
  71. package/dist/app-host/collection-join-ledger.js.map +1 -0
  72. package/dist/app-host/collection-people.d.ts +32 -0
  73. package/dist/app-host/collection-people.js +119 -0
  74. package/dist/app-host/collection-people.js.map +1 -0
  75. package/dist/app-host/collection-readiness.d.ts +119 -0
  76. package/dist/app-host/collection-readiness.js +649 -0
  77. package/dist/app-host/collection-readiness.js.map +1 -0
  78. package/dist/app-host/collection-setup-journal.d.ts +59 -0
  79. package/dist/app-host/collection-setup-journal.js +813 -0
  80. package/dist/app-host/collection-setup-journal.js.map +1 -0
  81. package/dist/app-host/collection-setup-types.d.ts +155 -0
  82. package/dist/app-host/collection-setup-types.js +10 -0
  83. package/dist/app-host/collection-setup-types.js.map +1 -0
  84. package/dist/app-host/cp-authority.d.ts +65 -0
  85. package/dist/app-host/cp-authority.js +243 -0
  86. package/dist/app-host/cp-authority.js.map +1 -0
  87. package/dist/app-host/cp-people.d.ts +23 -0
  88. package/dist/app-host/cp-people.js +145 -0
  89. package/dist/app-host/cp-people.js.map +1 -0
  90. package/dist/app-host/cp-problem.d.ts +34 -0
  91. package/dist/app-host/cp-problem.js +114 -0
  92. package/dist/app-host/cp-problem.js.map +1 -0
  93. package/dist/app-host/device-key-custody.d.ts +51 -0
  94. package/dist/app-host/device-key-custody.js +128 -0
  95. package/dist/app-host/device-key-custody.js.map +1 -0
  96. package/dist/app-host/device-key-idb.d.ts +31 -0
  97. package/dist/app-host/device-key-idb.js +176 -0
  98. package/dist/app-host/device-key-idb.js.map +1 -0
  99. package/dist/app-host/device-key-provider.d.ts +33 -0
  100. package/dist/app-host/device-key-provider.js +181 -0
  101. package/dist/app-host/device-key-provider.js.map +1 -0
  102. package/dist/app-host/device-registration.d.ts +51 -0
  103. package/dist/app-host/device-registration.js +180 -0
  104. package/dist/app-host/device-registration.js.map +1 -0
  105. package/dist/app-host/foreground-wake.d.ts +43 -0
  106. package/dist/app-host/foreground-wake.js +113 -0
  107. package/dist/app-host/foreground-wake.js.map +1 -0
  108. package/dist/app-host/handover.d.ts +27 -0
  109. package/dist/app-host/handover.js +82 -0
  110. package/dist/app-host/handover.js.map +1 -0
  111. package/dist/app-host/http-log.d.ts +96 -0
  112. package/dist/app-host/http-log.js +609 -0
  113. package/dist/app-host/http-log.js.map +1 -0
  114. package/dist/app-host/index.d.ts +63 -0
  115. package/dist/app-host/index.js +33 -0
  116. package/dist/app-host/index.js.map +1 -0
  117. package/dist/app-host/initial-sync.d.ts +22 -0
  118. package/dist/app-host/initial-sync.js +41 -0
  119. package/dist/app-host/initial-sync.js.map +1 -0
  120. package/dist/app-host/installation-sign-in.d.ts +319 -0
  121. package/dist/app-host/installation-sign-in.js +1231 -0
  122. package/dist/app-host/installation-sign-in.js.map +1 -0
  123. package/dist/app-host/installation-store.d.ts +56 -0
  124. package/dist/app-host/installation-store.js +285 -0
  125. package/dist/app-host/installation-store.js.map +1 -0
  126. package/dist/app-host/ledger-rows.d.ts +3 -0
  127. package/dist/app-host/ledger-rows.js +23 -0
  128. package/dist/app-host/ledger-rows.js.map +1 -0
  129. package/dist/app-host/local-facade.d.ts +24 -0
  130. package/dist/app-host/local-facade.js +361 -0
  131. package/dist/app-host/local-facade.js.map +1 -0
  132. package/dist/app-host/log-pump.d.ts +124 -0
  133. package/dist/app-host/log-pump.js +326 -0
  134. package/dist/app-host/log-pump.js.map +1 -0
  135. package/dist/app-host/log-push.d.ts +90 -0
  136. package/dist/app-host/log-push.js +377 -0
  137. package/dist/app-host/log-push.js.map +1 -0
  138. package/dist/app-host/log-token-cache.d.ts +28 -0
  139. package/dist/app-host/log-token-cache.js +104 -0
  140. package/dist/app-host/log-token-cache.js.map +1 -0
  141. package/dist/app-host/native-sign-in.d.ts +27 -0
  142. package/dist/app-host/native-sign-in.js +12 -0
  143. package/dist/app-host/native-sign-in.js.map +1 -0
  144. package/dist/app-host/noise-custody.d.ts +62 -0
  145. package/dist/app-host/noise-custody.js +238 -0
  146. package/dist/app-host/noise-custody.js.map +1 -0
  147. package/dist/app-host/noise-idb.d.ts +33 -0
  148. package/dist/app-host/noise-idb.js +199 -0
  149. package/dist/app-host/noise-idb.js.map +1 -0
  150. package/dist/app-host/open-wait.d.ts +3 -0
  151. package/dist/app-host/open-wait.js +17 -0
  152. package/dist/app-host/open-wait.js.map +1 -0
  153. package/dist/app-host/opening-progress.d.ts +3 -0
  154. package/dist/app-host/opening-progress.js +5 -0
  155. package/dist/app-host/opening-progress.js.map +1 -0
  156. package/dist/app-host/owner.d.ts +103 -0
  157. package/dist/app-host/owner.js +262 -0
  158. package/dist/app-host/owner.js.map +1 -0
  159. package/dist/app-host/private-bootstrap.d.ts +78 -0
  160. package/dist/app-host/private-bootstrap.js +230 -0
  161. package/dist/app-host/private-bootstrap.js.map +1 -0
  162. package/dist/app-host/private-persistence-idb.d.ts +32 -0
  163. package/dist/app-host/private-persistence-idb.js +188 -0
  164. package/dist/app-host/private-persistence-idb.js.map +1 -0
  165. package/dist/app-host/private-persistence.d.ts +55 -0
  166. package/dist/app-host/private-persistence.js +257 -0
  167. package/dist/app-host/private-persistence.js.map +1 -0
  168. package/dist/app-host/scoped-sign-in-session.d.ts +49 -0
  169. package/dist/app-host/scoped-sign-in-session.js +243 -0
  170. package/dist/app-host/scoped-sign-in-session.js.map +1 -0
  171. package/dist/app-host/setup-engine.d.ts +14 -0
  172. package/dist/app-host/setup-engine.js +73 -0
  173. package/dist/app-host/setup-engine.js.map +1 -0
  174. package/dist/app-host/sign-out-erase.d.ts +37 -0
  175. package/dist/app-host/sign-out-erase.js +139 -0
  176. package/dist/app-host/sign-out-erase.js.map +1 -0
  177. package/dist/app-host/status.d.ts +62 -0
  178. package/dist/app-host/status.js +43 -0
  179. package/dist/app-host/status.js.map +1 -0
  180. package/dist/app-host/storage-probe.d.ts +46 -0
  181. package/dist/app-host/storage-probe.js +63 -0
  182. package/dist/app-host/storage-probe.js.map +1 -0
  183. package/dist/app-host/timer-port.d.ts +29 -0
  184. package/dist/app-host/timer-port.js +483 -0
  185. package/dist/app-host/timer-port.js.map +1 -0
  186. package/dist/app-host/wasm-runtime.d.ts +302 -0
  187. package/dist/app-host/wasm-runtime.js +1050 -0
  188. package/dist/app-host/wasm-runtime.js.map +1 -0
  189. package/dist/app-host/web-collection.d.ts +78 -0
  190. package/dist/app-host/web-collection.js +671 -0
  191. package/dist/app-host/web-collection.js.map +1 -0
  192. package/dist/app-host/web-sign-in-problem.d.ts +17 -0
  193. package/dist/app-host/web-sign-in-problem.js +59 -0
  194. package/dist/app-host/web-sign-in-problem.js.map +1 -0
  195. package/dist/app-host/web-sign-in-session.d.ts +367 -0
  196. package/dist/app-host/web-sign-in-session.js +1258 -0
  197. package/dist/app-host/web-sign-in-session.js.map +1 -0
  198. package/dist/app-storage/app-binary-index.d.ts +33 -0
  199. package/dist/app-storage/app-binary-index.js +274 -0
  200. package/dist/app-storage/app-binary-index.js.map +1 -0
  201. package/dist/app-storage/app-sqlite-index.d.ts +40 -0
  202. package/dist/app-storage/app-sqlite-index.js +102 -0
  203. package/dist/app-storage/app-sqlite-index.js.map +1 -0
  204. package/dist/app-storage/collection-sql.d.ts +39 -0
  205. package/dist/app-storage/collection-sql.js +93 -0
  206. package/dist/app-storage/collection-sql.js.map +1 -0
  207. package/dist/app-storage/index.d.ts +10 -0
  208. package/dist/app-storage/index.js +7 -0
  209. package/dist/app-storage/index.js.map +1 -0
  210. package/dist/app-storage/sqlite-index.d.ts +95 -0
  211. package/dist/app-storage/sqlite-index.js +280 -0
  212. package/dist/app-storage/sqlite-index.js.map +1 -0
  213. package/dist/application/asset-loader.d.ts +22 -0
  214. package/dist/application/asset-loader.js +130 -0
  215. package/dist/application/asset-loader.js.map +1 -0
  216. package/dist/application/asset-pins.json +24 -0
  217. package/dist/application/browser-capabilities.d.ts +48 -0
  218. package/dist/application/browser-capabilities.js +87 -0
  219. package/dist/application/browser-capabilities.js.map +1 -0
  220. package/dist/application/browser-selection.d.ts +58 -0
  221. package/dist/application/browser-selection.js +160 -0
  222. package/dist/application/browser-selection.js.map +1 -0
  223. package/dist/application/capabilities.d.ts +20 -0
  224. package/dist/application/capabilities.js +22 -0
  225. package/dist/application/capabilities.js.map +1 -0
  226. package/dist/application/collection-selection.d.ts +147 -0
  227. package/dist/application/collection-selection.js +351 -0
  228. package/dist/application/collection-selection.js.map +1 -0
  229. package/dist/application/configuration.d.ts +52 -0
  230. package/dist/application/configuration.js +568 -0
  231. package/dist/application/configuration.js.map +1 -0
  232. package/dist/application/declaration.d.ts +51 -0
  233. package/dist/application/declaration.js +100 -0
  234. package/dist/application/declaration.js.map +1 -0
  235. package/dist/application/entry.d.ts +343 -0
  236. package/dist/application/entry.js +945 -0
  237. package/dist/application/entry.js.map +1 -0
  238. package/dist/application/file-access.d.ts +55 -0
  239. package/dist/application/file-access.js +93 -0
  240. package/dist/application/file-access.js.map +1 -0
  241. package/dist/application/file-readiness.d.ts +16 -0
  242. package/dist/application/file-readiness.js +53 -0
  243. package/dist/application/file-readiness.js.map +1 -0
  244. package/dist/application/forgotten.d.ts +15 -0
  245. package/dist/application/forgotten.js +70 -0
  246. package/dist/application/forgotten.js.map +1 -0
  247. package/dist/application/front-door.d.ts +68 -0
  248. package/dist/application/front-door.js +66 -0
  249. package/dist/application/front-door.js.map +1 -0
  250. package/dist/application/local-build.d.ts +5 -0
  251. package/dist/application/local-build.js +22 -0
  252. package/dist/application/local-build.js.map +1 -0
  253. package/dist/application/manifest.d.ts +16 -0
  254. package/dist/application/manifest.js +31 -0
  255. package/dist/application/manifest.js.map +1 -0
  256. package/dist/application/native-assets.d.ts +25 -0
  257. package/dist/application/native-assets.js +29 -0
  258. package/dist/application/native-assets.js.map +1 -0
  259. package/dist/application/native-authorization-rpc.d.ts +23 -0
  260. package/dist/application/native-authorization-rpc.js +54 -0
  261. package/dist/application/native-authorization-rpc.js.map +1 -0
  262. package/dist/application/notification-readiness.d.ts +33 -0
  263. package/dist/application/notification-readiness.js +222 -0
  264. package/dist/application/notification-readiness.js.map +1 -0
  265. package/dist/application/packaged-assets.d.ts +5 -0
  266. package/dist/application/packaged-assets.js +55 -0
  267. package/dist/application/packaged-assets.js.map +1 -0
  268. package/dist/application/packaged-trust.d.ts +5 -0
  269. package/dist/application/packaged-trust.js +10 -0
  270. package/dist/application/packaged-trust.js.map +1 -0
  271. package/dist/application/people-readiness.d.ts +23 -0
  272. package/dist/application/people-readiness.js +213 -0
  273. package/dist/application/people-readiness.js.map +1 -0
  274. package/dist/application/phase.d.ts +108 -0
  275. package/dist/application/phase.js +113 -0
  276. package/dist/application/phase.js.map +1 -0
  277. package/dist/application/portal-reservation.d.ts +38 -0
  278. package/dist/application/portal-reservation.js +183 -0
  279. package/dist/application/portal-reservation.js.map +1 -0
  280. package/dist/application/private-collections.d.ts +114 -0
  281. package/dist/application/private-collections.js +415 -0
  282. package/dist/application/private-collections.js.map +1 -0
  283. package/dist/application/readiness.d.ts +59 -0
  284. package/dist/application/readiness.js +223 -0
  285. package/dist/application/readiness.js.map +1 -0
  286. package/dist/application/registration-refusal.d.ts +16 -0
  287. package/dist/application/registration-refusal.js +41 -0
  288. package/dist/application/registration-refusal.js.map +1 -0
  289. package/dist/application/registration.d.ts +26 -0
  290. package/dist/application/registration.js +372 -0
  291. package/dist/application/registration.js.map +1 -0
  292. package/dist/application/return-url.d.ts +1 -0
  293. package/dist/application/return-url.js +41 -0
  294. package/dist/application/return-url.js.map +1 -0
  295. package/dist/application/runtime.d.ts +107 -0
  296. package/dist/application/runtime.js +379 -0
  297. package/dist/application/runtime.js.map +1 -0
  298. package/dist/application/scope.d.ts +34 -0
  299. package/dist/application/scope.js +164 -0
  300. package/dist/application/scope.js.map +1 -0
  301. package/dist/application/session-hint.d.ts +21 -0
  302. package/dist/application/session-hint.js +87 -0
  303. package/dist/application/session-hint.js.map +1 -0
  304. package/dist/application/setup.d.ts +105 -0
  305. package/dist/application/setup.js +137 -0
  306. package/dist/application/setup.js.map +1 -0
  307. package/dist/application/sign-out.d.ts +17 -0
  308. package/dist/application/sign-out.js +28 -0
  309. package/dist/application/sign-out.js.map +1 -0
  310. package/dist/application/storage-scope.d.ts +8 -0
  311. package/dist/application/storage-scope.js +15 -0
  312. package/dist/application/storage-scope.js.map +1 -0
  313. package/dist/application/tabs.d.ts +98 -0
  314. package/dist/application/tabs.js +407 -0
  315. package/dist/application/tabs.js.map +1 -0
  316. package/dist/application/timer-criteria.d.ts +5 -0
  317. package/dist/application/timer-criteria.js +15 -0
  318. package/dist/application/timer-criteria.js.map +1 -0
  319. package/dist/application/ui-connections.d.ts +35 -0
  320. package/dist/application/ui-connections.js +129 -0
  321. package/dist/application/ui-connections.js.map +1 -0
  322. package/dist/application/worker-client.d.ts +59 -0
  323. package/dist/application/worker-client.js +381 -0
  324. package/dist/application/worker-client.js.map +1 -0
  325. package/dist/application/worker-host.d.ts +84 -0
  326. package/dist/application/worker-host.js +547 -0
  327. package/dist/application/worker-host.js.map +1 -0
  328. package/dist/application/worker-protocol.d.ts +40 -0
  329. package/dist/application/worker-protocol.js +83 -0
  330. package/dist/application/worker-protocol.js.map +1 -0
  331. package/dist/application/worker-session.d.ts +45 -0
  332. package/dist/application/worker-session.js +37 -0
  333. package/dist/application/worker-session.js.map +1 -0
  334. package/dist/application/worker.d.ts +1 -0
  335. package/dist/application/worker.js +34826 -0
  336. package/dist/application/worker.js.map +1 -0
  337. package/dist/attachment-wire.d.ts +15 -0
  338. package/dist/attachment-wire.js +47 -0
  339. package/dist/attachment-wire.js.map +1 -0
  340. package/dist/browser/mdbase-sdk.js +49392 -0
  341. package/dist/browser/mdbase-sdk.min.js +130 -0
  342. package/dist/browser.d.ts +4 -0
  343. package/dist/browser.js +5 -0
  344. package/dist/browser.js.map +1 -0
  345. package/dist/cbor.d.ts +52 -0
  346. package/dist/cbor.js +480 -0
  347. package/dist/cbor.js.map +1 -0
  348. package/dist/client.d.ts +656 -0
  349. package/dist/client.js +1962 -0
  350. package/dist/client.js.map +1 -0
  351. package/dist/codec.d.ts +82 -0
  352. package/dist/codec.js +388 -0
  353. package/dist/codec.js.map +1 -0
  354. package/dist/collection-availability.d.ts +34 -0
  355. package/dist/collection-availability.js +63 -0
  356. package/dist/collection-availability.js.map +1 -0
  357. package/dist/contract-query.d.ts +31 -0
  358. package/dist/contract-query.js +13 -0
  359. package/dist/contract-query.js.map +1 -0
  360. package/dist/contract-records.d.ts +51 -0
  361. package/dist/contract-records.js +14 -0
  362. package/dist/contract-records.js.map +1 -0
  363. package/dist/describe-error.d.ts +61 -0
  364. package/dist/describe-error.js +452 -0
  365. package/dist/describe-error.js.map +1 -0
  366. package/dist/errors.d.ts +65 -0
  367. package/dist/errors.js +94 -0
  368. package/dist/errors.js.map +1 -0
  369. package/dist/files.d.ts +147 -0
  370. package/dist/files.js +537 -0
  371. package/dist/files.js.map +1 -0
  372. package/dist/holds.d.ts +74 -0
  373. package/dist/holds.js +118 -0
  374. package/dist/holds.js.map +1 -0
  375. package/dist/index.d.ts +36 -0
  376. package/dist/index.js +22 -0
  377. package/dist/index.js.map +1 -0
  378. package/dist/keys.d.ts +40 -0
  379. package/dist/keys.js +181 -0
  380. package/dist/keys.js.map +1 -0
  381. package/dist/live.d.ts +38 -0
  382. package/dist/live.js +82 -0
  383. package/dist/live.js.map +1 -0
  384. package/dist/local-build.d.ts +9 -0
  385. package/dist/local-build.js +33 -0
  386. package/dist/local-build.js.map +1 -0
  387. package/dist/native/provenance.json +23 -0
  388. package/dist/native/runtime.wasm +0 -0
  389. package/dist/native/sqlite3.d.ts +5 -0
  390. package/dist/native/sqlite3.js +17392 -0
  391. package/dist/native/sqlite3.js.map +1 -0
  392. package/dist/native/sqlite3.wasm +0 -0
  393. package/dist/node.d.ts +63 -0
  394. package/dist/node.js +255 -0
  395. package/dist/node.js.map +1 -0
  396. package/dist/notifications.d.ts +95 -0
  397. package/dist/notifications.js +226 -0
  398. package/dist/notifications.js.map +1 -0
  399. package/dist/offline-shell-build.d.ts +25 -0
  400. package/dist/offline-shell-build.js +78 -0
  401. package/dist/offline-shell-build.js.map +1 -0
  402. package/dist/offline-shell-worker.d.ts +46 -0
  403. package/dist/offline-shell-worker.js +115 -0
  404. package/dist/offline-shell-worker.js.map +1 -0
  405. package/dist/people.d.ts +82 -0
  406. package/dist/people.js +199 -0
  407. package/dist/people.js.map +1 -0
  408. package/dist/presence.d.ts +21 -0
  409. package/dist/presence.js +109 -0
  410. package/dist/presence.js.map +1 -0
  411. package/dist/private-account.d.ts +197 -0
  412. package/dist/private-account.js +510 -0
  413. package/dist/private-account.js.map +1 -0
  414. package/dist/private.d.ts +55 -0
  415. package/dist/private.js +69 -0
  416. package/dist/private.js.map +1 -0
  417. package/dist/read-helpers.d.ts +32 -0
  418. package/dist/read-helpers.js +181 -0
  419. package/dist/read-helpers.js.map +1 -0
  420. package/dist/records/session.d.ts +60 -0
  421. package/dist/records/session.js +534 -0
  422. package/dist/records/session.js.map +1 -0
  423. package/dist/records/types.d.ts +76 -0
  424. package/dist/records/types.js +2 -0
  425. package/dist/records/types.js.map +1 -0
  426. package/dist/records/witness.d.ts +19 -0
  427. package/dist/records/witness.js +64 -0
  428. package/dist/records/witness.js.map +1 -0
  429. package/dist/records.d.ts +23 -0
  430. package/dist/records.js +234 -0
  431. package/dist/records.js.map +1 -0
  432. package/dist/runtime/wasm.d.ts +69 -0
  433. package/dist/runtime/wasm.js +274 -0
  434. package/dist/runtime/wasm.js.map +1 -0
  435. package/dist/runtime-wire.d.ts +71 -0
  436. package/dist/runtime-wire.js +71 -0
  437. package/dist/runtime-wire.js.map +1 -0
  438. package/dist/saved-views.d.ts +29 -0
  439. package/dist/saved-views.js +171 -0
  440. package/dist/saved-views.js.map +1 -0
  441. package/dist/semver.d.ts +22 -0
  442. package/dist/semver.js +63 -0
  443. package/dist/semver.js.map +1 -0
  444. package/dist/session.d.ts +65 -0
  445. package/dist/session.js +332 -0
  446. package/dist/session.js.map +1 -0
  447. package/dist/status.d.ts +46 -0
  448. package/dist/status.js +59 -0
  449. package/dist/status.js.map +1 -0
  450. package/dist/strength.d.ts +12 -0
  451. package/dist/strength.js +194 -0
  452. package/dist/strength.js.map +1 -0
  453. package/dist/testing/application.d.ts +59 -0
  454. package/dist/testing/application.js +230 -0
  455. package/dist/testing/application.js.map +1 -0
  456. package/dist/testing/index.d.ts +10 -0
  457. package/dist/testing/index.js +6 -0
  458. package/dist/testing/index.js.map +1 -0
  459. package/dist/testing/memory-contracts.d.ts +40 -0
  460. package/dist/testing/memory-contracts.js +127 -0
  461. package/dist/testing/memory-contracts.js.map +1 -0
  462. package/dist/testing/memory-replica.d.ts +191 -0
  463. package/dist/testing/memory-replica.js +1465 -0
  464. package/dist/testing/memory-replica.js.map +1 -0
  465. package/dist/testing/noise-server.d.ts +11 -0
  466. package/dist/testing/noise-server.js +65 -0
  467. package/dist/testing/noise-server.js.map +1 -0
  468. package/dist/testing/test-app.d.ts +93 -0
  469. package/dist/testing/test-app.js +140 -0
  470. package/dist/testing/test-app.js.map +1 -0
  471. package/dist/thin-client.d.ts +67 -0
  472. package/dist/thin-client.js +42 -0
  473. package/dist/thin-client.js.map +1 -0
  474. package/dist/timers.d.ts +158 -0
  475. package/dist/timers.js +258 -0
  476. package/dist/timers.js.map +1 -0
  477. package/dist/transport/bases-rpc.d.ts +15 -0
  478. package/dist/transport/bases-rpc.js +61 -0
  479. package/dist/transport/bases-rpc.js.map +1 -0
  480. package/dist/transport/control-route.d.ts +34 -0
  481. package/dist/transport/control-route.js +84 -0
  482. package/dist/transport/control-route.js.map +1 -0
  483. package/dist/transport/inprocess.d.ts +13 -0
  484. package/dist/transport/inprocess.js +37 -0
  485. package/dist/transport/inprocess.js.map +1 -0
  486. package/dist/transport/local-link.d.ts +53 -0
  487. package/dist/transport/local-link.js +66 -0
  488. package/dist/transport/local-link.js.map +1 -0
  489. package/dist/transport/next-relay.d.ts +64 -0
  490. package/dist/transport/next-relay.js +222 -0
  491. package/dist/transport/next-relay.js.map +1 -0
  492. package/dist/transport/noise-session.d.ts +88 -0
  493. package/dist/transport/noise-session.js +264 -0
  494. package/dist/transport/noise-session.js.map +1 -0
  495. package/dist/transport/noise.d.ts +102 -0
  496. package/dist/transport/noise.js +307 -0
  497. package/dist/transport/noise.js.map +1 -0
  498. package/dist/transport/original-session.d.ts +6 -0
  499. package/dist/transport/original-session.js +6 -0
  500. package/dist/transport/original-session.js.map +1 -0
  501. package/dist/transport/port.d.ts +67 -0
  502. package/dist/transport/port.js +184 -0
  503. package/dist/transport/port.js.map +1 -0
  504. package/dist/transport/read-fence-policy.d.ts +3 -0
  505. package/dist/transport/read-fence-policy.js +11 -0
  506. package/dist/transport/read-fence-policy.js.map +1 -0
  507. package/dist/transport/relay-close.d.ts +31 -0
  508. package/dist/transport/relay-close.js +23 -0
  509. package/dist/transport/relay-close.js.map +1 -0
  510. package/dist/transport/relay-pipe.d.ts +15 -0
  511. package/dist/transport/relay-pipe.js +190 -0
  512. package/dist/transport/relay-pipe.js.map +1 -0
  513. package/dist/transport/relay.d.ts +36 -0
  514. package/dist/transport/relay.js +45 -0
  515. package/dist/transport/relay.js.map +1 -0
  516. package/dist/type-packs.d.ts +124 -0
  517. package/dist/type-packs.js +188 -0
  518. package/dist/type-packs.js.map +1 -0
  519. package/dist/validation.d.ts +30 -0
  520. package/dist/validation.js +125 -0
  521. package/dist/validation.js.map +1 -0
  522. package/dist/values.d.ts +37 -0
  523. package/dist/values.js +133 -0
  524. package/dist/values.js.map +1 -0
  525. package/dist/view-sources.d.ts +31 -0
  526. package/dist/view-sources.js +78 -0
  527. package/dist/view-sources.js.map +1 -0
  528. package/dist/wire.d.ts +856 -0
  529. package/dist/wire.js +914 -0
  530. package/dist/wire.js.map +1 -0
  531. package/dist/witness.d.ts +7 -0
  532. package/dist/witness.js +82 -0
  533. package/dist/witness.js.map +1 -0
  534. package/dist/write-ledger.d.ts +41 -0
  535. package/dist/write-ledger.js +184 -0
  536. package/dist/write-ledger.js.map +1 -0
  537. package/node_modules/@mdbase-dev/connect-protocol/dist/application-authorization.d.ts +32 -0
  538. package/node_modules/@mdbase-dev/connect-protocol/dist/application-authorization.js +207 -0
  539. package/node_modules/@mdbase-dev/connect-protocol/dist/application-contract.d.ts +23 -0
  540. package/node_modules/@mdbase-dev/connect-protocol/dist/application-contract.js +76 -0
  541. package/node_modules/@mdbase-dev/connect-protocol/dist/application-declaration.d.ts +120 -0
  542. package/node_modules/@mdbase-dev/connect-protocol/dist/application-declaration.js +1 -0
  543. package/node_modules/@mdbase-dev/connect-protocol/dist/authorization-errors.d.ts +34 -0
  544. package/node_modules/@mdbase-dev/connect-protocol/dist/authorization-errors.js +52 -0
  545. package/node_modules/@mdbase-dev/connect-protocol/dist/capabilities.d.ts +73 -0
  546. package/node_modules/@mdbase-dev/connect-protocol/dist/capabilities.js +92 -0
  547. package/node_modules/@mdbase-dev/connect-protocol/dist/change-events.generated.d.ts +48 -0
  548. package/node_modules/@mdbase-dev/connect-protocol/dist/change-events.generated.js +18 -0
  549. package/node_modules/@mdbase-dev/connect-protocol/dist/collection-setup.d.ts +93 -0
  550. package/node_modules/@mdbase-dev/connect-protocol/dist/collection-setup.js +7 -0
  551. package/node_modules/@mdbase-dev/connect-protocol/dist/compatibility.d.ts +37 -0
  552. package/node_modules/@mdbase-dev/connect-protocol/dist/compatibility.js +65 -0
  553. package/node_modules/@mdbase-dev/connect-protocol/dist/connect-problems.generated.d.ts +1533 -0
  554. package/node_modules/@mdbase-dev/connect-protocol/dist/connect-problems.generated.js +598 -0
  555. package/node_modules/@mdbase-dev/connect-protocol/dist/files.d.ts +288 -0
  556. package/node_modules/@mdbase-dev/connect-protocol/dist/files.js +426 -0
  557. package/node_modules/@mdbase-dev/connect-protocol/dist/index.d.ts +723 -0
  558. package/node_modules/@mdbase-dev/connect-protocol/dist/index.js +104 -0
  559. package/node_modules/@mdbase-dev/connect-protocol/dist/manifest-validators.generated.d.ts +13 -0
  560. package/node_modules/@mdbase-dev/connect-protocol/dist/manifest-validators.generated.js +7940 -0
  561. package/node_modules/@mdbase-dev/connect-protocol/dist/manifest.d.ts +72 -0
  562. package/node_modules/@mdbase-dev/connect-protocol/dist/manifest.js +643 -0
  563. package/node_modules/@mdbase-dev/connect-protocol/dist/mutation-fingerprint.d.ts +6 -0
  564. package/node_modules/@mdbase-dev/connect-protocol/dist/mutation-fingerprint.js +116 -0
  565. package/node_modules/@mdbase-dev/connect-protocol/dist/next-authorization.d.ts +30 -0
  566. package/node_modules/@mdbase-dev/connect-protocol/dist/next-authorization.js +90 -0
  567. package/node_modules/@mdbase-dev/connect-protocol/dist/operations.d.ts +15 -0
  568. package/node_modules/@mdbase-dev/connect-protocol/dist/operations.js +196 -0
  569. package/node_modules/@mdbase-dev/connect-protocol/dist/people.d.ts +33 -0
  570. package/node_modules/@mdbase-dev/connect-protocol/dist/people.js +26 -0
  571. package/node_modules/@mdbase-dev/connect-protocol/dist/records.d.ts +108 -0
  572. package/node_modules/@mdbase-dev/connect-protocol/dist/records.js +3 -0
  573. package/node_modules/@mdbase-dev/connect-protocol/dist/type-packs.d.ts +154 -0
  574. package/node_modules/@mdbase-dev/connect-protocol/dist/type-packs.js +30 -0
  575. package/node_modules/@mdbase-dev/connect-protocol/package.json +49 -0
  576. package/node_modules/@mdbase-dev/connect-protocol/schemas/application-capability-catalog.v1.json +40 -0
  577. package/node_modules/@mdbase-dev/connect-protocol/schemas/application-capability-catalog.v2.json +68 -0
  578. package/node_modules/@mdbase-dev/connect-protocol/schemas/catalog.json +17 -0
  579. package/node_modules/@mdbase-dev/connect-protocol/schemas/change-events.v1.json +48 -0
  580. package/node_modules/@mdbase-dev/connect-protocol/schemas/connect-problem.v1.schema.json +5665 -0
  581. package/node_modules/@mdbase-dev/connect-protocol/schemas/connect-problems.v1.catalog.json +373 -0
  582. package/node_modules/@mdbase-dev/connect-protocol/schemas/connect-protocol.v1.schema.json +901 -0
  583. package/node_modules/@mdbase-dev/connect-protocol/schemas/data-contract.schema.json +163 -0
  584. package/node_modules/@mdbase-dev/connect-protocol/schemas/encrypted-relay.v1.schema.json +63 -0
  585. package/node_modules/@mdbase-dev/connect-protocol/schemas/encrypted-relay.v2.schema.json +63 -0
  586. package/node_modules/@mdbase-dev/connect-protocol/schemas/encrypted-relay.v3.schema.json +64 -0
  587. package/node_modules/@mdbase-dev/connect-protocol/schemas/files.v1.schema.json +551 -0
  588. package/node_modules/@mdbase-dev/connect-protocol/schemas/interop/v0.1/action-cancellation.schema.json +6 -0
  589. package/node_modules/@mdbase-dev/connect-protocol/schemas/interop/v0.1/action-invocation.schema.json +6 -0
  590. package/node_modules/@mdbase-dev/connect-protocol/schemas/interop/v0.1/action-outcome.schema.json +6 -0
  591. package/node_modules/@mdbase-dev/connect-protocol/schemas/interop/v0.1/action-provider-declaration.schema.json +6 -0
  592. package/node_modules/@mdbase-dev/connect-protocol/schemas/interop/v0.1/action-request.schema.json +6 -0
  593. package/node_modules/@mdbase-dev/connect-protocol/schemas/interop/v0.1/conformance-claim.schema.json +6 -0
  594. package/node_modules/@mdbase-dev/connect-protocol/schemas/interop/v0.1/event-source-declaration.schema.json +6 -0
  595. package/node_modules/@mdbase-dev/connect-protocol/schemas/interop/v0.1/event.schema.json +6 -0
  596. package/node_modules/@mdbase-dev/connect-protocol/schemas/interop/v0.1/profile.schema.json +456 -0
  597. package/node_modules/@mdbase-dev/connect-protocol/schemas/mdbase-app.legacy-v1.schema.json +430 -0
  598. package/node_modules/@mdbase-dev/connect-protocol/schemas/mdbase-app.schema.json +437 -0
  599. package/node_modules/@mdbase-dev/connect-protocol/schemas/mdbase-query.v0.3.schema.json +176 -0
  600. package/node_modules/@mdbase-dev/connect-protocol/schemas/next-trust.v1.schema.json +54 -0
  601. package/node_modules/@mdbase-dev/connect-protocol/schemas/notification-webhook.v1.schema.json +56 -0
  602. package/node_modules/@mdbase-dev/connect-protocol/schemas/operation-catalog.v1.json +43 -0
  603. package/node_modules/@mdbase-dev/connect-protocol/schemas/operation-mutation-classification.v1.json +554 -0
  604. package/node_modules/@mdbase-dev/connect-protocol/schemas/sync.v1.schema.json +483 -0
  605. package/node_modules/@noble/hashes/LICENSE +21 -0
  606. package/node_modules/@noble/hashes/README.md +478 -0
  607. package/node_modules/@noble/hashes/_blake.d.ts +20 -0
  608. package/node_modules/@noble/hashes/_blake.js +59 -0
  609. package/node_modules/@noble/hashes/_md.d.ts +95 -0
  610. package/node_modules/@noble/hashes/_md.js +209 -0
  611. package/node_modules/@noble/hashes/_u64.d.ts +36 -0
  612. package/node_modules/@noble/hashes/_u64.js +77 -0
  613. package/node_modules/@noble/hashes/argon2.d.ts +148 -0
  614. package/node_modules/@noble/hashes/argon2.js +577 -0
  615. package/node_modules/@noble/hashes/blake1.d.ts +162 -0
  616. package/node_modules/@noble/hashes/blake1.js +630 -0
  617. package/node_modules/@noble/hashes/blake2.d.ts +203 -0
  618. package/node_modules/@noble/hashes/blake2.js +573 -0
  619. package/node_modules/@noble/hashes/blake3.d.ts +68 -0
  620. package/node_modules/@noble/hashes/blake3.js +310 -0
  621. package/node_modules/@noble/hashes/eskdf.d.ts +91 -0
  622. package/node_modules/@noble/hashes/eskdf.js +225 -0
  623. package/node_modules/@noble/hashes/hkdf.d.ts +70 -0
  624. package/node_modules/@noble/hashes/hkdf.js +152 -0
  625. package/node_modules/@noble/hashes/hmac.d.ts +50 -0
  626. package/node_modules/@noble/hashes/hmac.js +93 -0
  627. package/node_modules/@noble/hashes/index.d.ts +1 -0
  628. package/node_modules/@noble/hashes/index.js +34 -0
  629. package/node_modules/@noble/hashes/legacy.d.ts +107 -0
  630. package/node_modules/@noble/hashes/legacy.js +348 -0
  631. package/node_modules/@noble/hashes/package.json +91 -0
  632. package/node_modules/@noble/hashes/pbkdf2.d.ts +66 -0
  633. package/node_modules/@noble/hashes/pbkdf2.js +176 -0
  634. package/node_modules/@noble/hashes/scrypt.d.ts +98 -0
  635. package/node_modules/@noble/hashes/scrypt.js +304 -0
  636. package/node_modules/@noble/hashes/sha2.d.ts +176 -0
  637. package/node_modules/@noble/hashes/sha2.js +446 -0
  638. package/node_modules/@noble/hashes/sha3-addons.d.ts +533 -0
  639. package/node_modules/@noble/hashes/sha3-addons.js +973 -0
  640. package/node_modules/@noble/hashes/sha3.d.ts +208 -0
  641. package/node_modules/@noble/hashes/sha3.js +475 -0
  642. package/node_modules/@noble/hashes/src/_blake.ts +67 -0
  643. package/node_modules/@noble/hashes/src/_md.ts +227 -0
  644. package/node_modules/@noble/hashes/src/_u64.ts +111 -0
  645. package/node_modules/@noble/hashes/src/argon2.ts +693 -0
  646. package/node_modules/@noble/hashes/src/blake1.ts +677 -0
  647. package/node_modules/@noble/hashes/src/blake2.ts +648 -0
  648. package/node_modules/@noble/hashes/src/blake3.ts +344 -0
  649. package/node_modules/@noble/hashes/src/eskdf.ts +265 -0
  650. package/node_modules/@noble/hashes/src/hkdf.ts +161 -0
  651. package/node_modules/@noble/hashes/src/hmac.ts +130 -0
  652. package/node_modules/@noble/hashes/src/index.ts +33 -0
  653. package/node_modules/@noble/hashes/src/legacy.ts +361 -0
  654. package/node_modules/@noble/hashes/src/pbkdf2.ts +219 -0
  655. package/node_modules/@noble/hashes/src/scrypt.ts +375 -0
  656. package/node_modules/@noble/hashes/src/sha2.ts +486 -0
  657. package/node_modules/@noble/hashes/src/sha3-addons.ts +1157 -0
  658. package/node_modules/@noble/hashes/src/sha3.ts +525 -0
  659. package/node_modules/@noble/hashes/src/utils.ts +978 -0
  660. package/node_modules/@noble/hashes/src/webcrypto.ts +283 -0
  661. package/node_modules/@noble/hashes/utils.d.ts +560 -0
  662. package/node_modules/@noble/hashes/utils.js +687 -0
  663. package/node_modules/@noble/hashes/webcrypto.d.ts +121 -0
  664. package/node_modules/@noble/hashes/webcrypto.js +228 -0
  665. package/node_modules/yaml/LICENSE +13 -0
  666. package/node_modules/yaml/README.md +172 -0
  667. package/node_modules/yaml/bin.mjs +11 -0
  668. package/node_modules/yaml/browser/dist/compose/compose-collection.js +88 -0
  669. package/node_modules/yaml/browser/dist/compose/compose-doc.js +43 -0
  670. package/node_modules/yaml/browser/dist/compose/compose-node.js +109 -0
  671. package/node_modules/yaml/browser/dist/compose/compose-scalar.js +86 -0
  672. package/node_modules/yaml/browser/dist/compose/composer.js +219 -0
  673. package/node_modules/yaml/browser/dist/compose/resolve-block-map.js +115 -0
  674. package/node_modules/yaml/browser/dist/compose/resolve-block-scalar.js +198 -0
  675. package/node_modules/yaml/browser/dist/compose/resolve-block-seq.js +49 -0
  676. package/node_modules/yaml/browser/dist/compose/resolve-end.js +37 -0
  677. package/node_modules/yaml/browser/dist/compose/resolve-flow-collection.js +207 -0
  678. package/node_modules/yaml/browser/dist/compose/resolve-flow-scalar.js +226 -0
  679. package/node_modules/yaml/browser/dist/compose/resolve-props.js +146 -0
  680. package/node_modules/yaml/browser/dist/compose/util-contains-newline.js +34 -0
  681. package/node_modules/yaml/browser/dist/compose/util-empty-scalar-position.js +26 -0
  682. package/node_modules/yaml/browser/dist/compose/util-flow-indent-check.js +15 -0
  683. package/node_modules/yaml/browser/dist/compose/util-map-includes.js +13 -0
  684. package/node_modules/yaml/browser/dist/doc/Document.js +335 -0
  685. package/node_modules/yaml/browser/dist/doc/anchors.js +71 -0
  686. package/node_modules/yaml/browser/dist/doc/applyReviver.js +55 -0
  687. package/node_modules/yaml/browser/dist/doc/createNode.js +88 -0
  688. package/node_modules/yaml/browser/dist/doc/directives.js +176 -0
  689. package/node_modules/yaml/browser/dist/errors.js +57 -0
  690. package/node_modules/yaml/browser/dist/index.js +17 -0
  691. package/node_modules/yaml/browser/dist/log.js +11 -0
  692. package/node_modules/yaml/browser/dist/nodes/Alias.js +118 -0
  693. package/node_modules/yaml/browser/dist/nodes/Collection.js +147 -0
  694. package/node_modules/yaml/browser/dist/nodes/Node.js +38 -0
  695. package/node_modules/yaml/browser/dist/nodes/Pair.js +36 -0
  696. package/node_modules/yaml/browser/dist/nodes/Scalar.js +24 -0
  697. package/node_modules/yaml/browser/dist/nodes/YAMLMap.js +144 -0
  698. package/node_modules/yaml/browser/dist/nodes/YAMLSeq.js +113 -0
  699. package/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js +63 -0
  700. package/node_modules/yaml/browser/dist/nodes/identity.js +36 -0
  701. package/node_modules/yaml/browser/dist/nodes/toJS.js +37 -0
  702. package/node_modules/yaml/browser/dist/parse/cst-scalar.js +214 -0
  703. package/node_modules/yaml/browser/dist/parse/cst-stringify.js +61 -0
  704. package/node_modules/yaml/browser/dist/parse/cst-visit.js +97 -0
  705. package/node_modules/yaml/browser/dist/parse/cst.js +98 -0
  706. package/node_modules/yaml/browser/dist/parse/lexer.js +721 -0
  707. package/node_modules/yaml/browser/dist/parse/line-counter.js +39 -0
  708. package/node_modules/yaml/browser/dist/parse/parser.js +975 -0
  709. package/node_modules/yaml/browser/dist/public-api.js +102 -0
  710. package/node_modules/yaml/browser/dist/schema/Schema.js +37 -0
  711. package/node_modules/yaml/browser/dist/schema/common/map.js +17 -0
  712. package/node_modules/yaml/browser/dist/schema/common/null.js +15 -0
  713. package/node_modules/yaml/browser/dist/schema/common/seq.js +17 -0
  714. package/node_modules/yaml/browser/dist/schema/common/string.js +14 -0
  715. package/node_modules/yaml/browser/dist/schema/core/bool.js +19 -0
  716. package/node_modules/yaml/browser/dist/schema/core/float.js +43 -0
  717. package/node_modules/yaml/browser/dist/schema/core/int.js +38 -0
  718. package/node_modules/yaml/browser/dist/schema/core/schema.js +23 -0
  719. package/node_modules/yaml/browser/dist/schema/json/schema.js +62 -0
  720. package/node_modules/yaml/browser/dist/schema/tags.js +96 -0
  721. package/node_modules/yaml/browser/dist/schema/yaml-1.1/binary.js +58 -0
  722. package/node_modules/yaml/browser/dist/schema/yaml-1.1/bool.js +26 -0
  723. package/node_modules/yaml/browser/dist/schema/yaml-1.1/float.js +46 -0
  724. package/node_modules/yaml/browser/dist/schema/yaml-1.1/int.js +71 -0
  725. package/node_modules/yaml/browser/dist/schema/yaml-1.1/merge.js +67 -0
  726. package/node_modules/yaml/browser/dist/schema/yaml-1.1/omap.js +74 -0
  727. package/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js +78 -0
  728. package/node_modules/yaml/browser/dist/schema/yaml-1.1/schema.js +39 -0
  729. package/node_modules/yaml/browser/dist/schema/yaml-1.1/set.js +93 -0
  730. package/node_modules/yaml/browser/dist/schema/yaml-1.1/timestamp.js +101 -0
  731. package/node_modules/yaml/browser/dist/stringify/foldFlowLines.js +146 -0
  732. package/node_modules/yaml/browser/dist/stringify/stringify.js +129 -0
  733. package/node_modules/yaml/browser/dist/stringify/stringifyCollection.js +153 -0
  734. package/node_modules/yaml/browser/dist/stringify/stringifyComment.js +20 -0
  735. package/node_modules/yaml/browser/dist/stringify/stringifyDocument.js +85 -0
  736. package/node_modules/yaml/browser/dist/stringify/stringifyNumber.js +25 -0
  737. package/node_modules/yaml/browser/dist/stringify/stringifyPair.js +150 -0
  738. package/node_modules/yaml/browser/dist/stringify/stringifyString.js +336 -0
  739. package/node_modules/yaml/browser/dist/util.js +11 -0
  740. package/node_modules/yaml/browser/dist/visit.js +233 -0
  741. package/node_modules/yaml/browser/index.js +5 -0
  742. package/node_modules/yaml/browser/package.json +3 -0
  743. package/node_modules/yaml/dist/cli.d.ts +8 -0
  744. package/node_modules/yaml/dist/cli.mjs +201 -0
  745. package/node_modules/yaml/dist/compose/compose-collection.d.ts +11 -0
  746. package/node_modules/yaml/dist/compose/compose-collection.js +90 -0
  747. package/node_modules/yaml/dist/compose/compose-doc.d.ts +7 -0
  748. package/node_modules/yaml/dist/compose/compose-doc.js +45 -0
  749. package/node_modules/yaml/dist/compose/compose-node.d.ts +29 -0
  750. package/node_modules/yaml/dist/compose/compose-node.js +112 -0
  751. package/node_modules/yaml/dist/compose/compose-scalar.d.ts +5 -0
  752. package/node_modules/yaml/dist/compose/compose-scalar.js +88 -0
  753. package/node_modules/yaml/dist/compose/composer.d.ts +63 -0
  754. package/node_modules/yaml/dist/compose/composer.js +224 -0
  755. package/node_modules/yaml/dist/compose/resolve-block-map.d.ts +6 -0
  756. package/node_modules/yaml/dist/compose/resolve-block-map.js +117 -0
  757. package/node_modules/yaml/dist/compose/resolve-block-scalar.d.ts +11 -0
  758. package/node_modules/yaml/dist/compose/resolve-block-scalar.js +200 -0
  759. package/node_modules/yaml/dist/compose/resolve-block-seq.d.ts +6 -0
  760. package/node_modules/yaml/dist/compose/resolve-block-seq.js +51 -0
  761. package/node_modules/yaml/dist/compose/resolve-end.d.ts +6 -0
  762. package/node_modules/yaml/dist/compose/resolve-end.js +39 -0
  763. package/node_modules/yaml/dist/compose/resolve-flow-collection.d.ts +7 -0
  764. package/node_modules/yaml/dist/compose/resolve-flow-collection.js +209 -0
  765. package/node_modules/yaml/dist/compose/resolve-flow-scalar.d.ts +10 -0
  766. package/node_modules/yaml/dist/compose/resolve-flow-scalar.js +228 -0
  767. package/node_modules/yaml/dist/compose/resolve-props.d.ts +23 -0
  768. package/node_modules/yaml/dist/compose/resolve-props.js +148 -0
  769. package/node_modules/yaml/dist/compose/util-contains-newline.d.ts +2 -0
  770. package/node_modules/yaml/dist/compose/util-contains-newline.js +36 -0
  771. package/node_modules/yaml/dist/compose/util-empty-scalar-position.d.ts +2 -0
  772. package/node_modules/yaml/dist/compose/util-empty-scalar-position.js +28 -0
  773. package/node_modules/yaml/dist/compose/util-flow-indent-check.d.ts +3 -0
  774. package/node_modules/yaml/dist/compose/util-flow-indent-check.js +17 -0
  775. package/node_modules/yaml/dist/compose/util-map-includes.d.ts +4 -0
  776. package/node_modules/yaml/dist/compose/util-map-includes.js +15 -0
  777. package/node_modules/yaml/dist/doc/Document.d.ts +141 -0
  778. package/node_modules/yaml/dist/doc/Document.js +337 -0
  779. package/node_modules/yaml/dist/doc/anchors.d.ts +24 -0
  780. package/node_modules/yaml/dist/doc/anchors.js +76 -0
  781. package/node_modules/yaml/dist/doc/applyReviver.d.ts +9 -0
  782. package/node_modules/yaml/dist/doc/applyReviver.js +57 -0
  783. package/node_modules/yaml/dist/doc/createNode.d.ts +17 -0
  784. package/node_modules/yaml/dist/doc/createNode.js +90 -0
  785. package/node_modules/yaml/dist/doc/directives.d.ts +49 -0
  786. package/node_modules/yaml/dist/doc/directives.js +178 -0
  787. package/node_modules/yaml/dist/errors.d.ts +21 -0
  788. package/node_modules/yaml/dist/errors.js +62 -0
  789. package/node_modules/yaml/dist/index.d.ts +25 -0
  790. package/node_modules/yaml/dist/index.js +50 -0
  791. package/node_modules/yaml/dist/log.d.ts +3 -0
  792. package/node_modules/yaml/dist/log.js +19 -0
  793. package/node_modules/yaml/dist/nodes/Alias.d.ts +29 -0
  794. package/node_modules/yaml/dist/nodes/Alias.js +120 -0
  795. package/node_modules/yaml/dist/nodes/Collection.d.ts +73 -0
  796. package/node_modules/yaml/dist/nodes/Collection.js +151 -0
  797. package/node_modules/yaml/dist/nodes/Node.d.ts +53 -0
  798. package/node_modules/yaml/dist/nodes/Node.js +40 -0
  799. package/node_modules/yaml/dist/nodes/Pair.d.ts +22 -0
  800. package/node_modules/yaml/dist/nodes/Pair.js +39 -0
  801. package/node_modules/yaml/dist/nodes/Scalar.d.ts +47 -0
  802. package/node_modules/yaml/dist/nodes/Scalar.js +27 -0
  803. package/node_modules/yaml/dist/nodes/YAMLMap.d.ts +53 -0
  804. package/node_modules/yaml/dist/nodes/YAMLMap.js +147 -0
  805. package/node_modules/yaml/dist/nodes/YAMLSeq.d.ts +60 -0
  806. package/node_modules/yaml/dist/nodes/YAMLSeq.js +115 -0
  807. package/node_modules/yaml/dist/nodes/addPairToJSMap.d.ts +4 -0
  808. package/node_modules/yaml/dist/nodes/addPairToJSMap.js +65 -0
  809. package/node_modules/yaml/dist/nodes/identity.d.ts +23 -0
  810. package/node_modules/yaml/dist/nodes/identity.js +53 -0
  811. package/node_modules/yaml/dist/nodes/toJS.d.ts +29 -0
  812. package/node_modules/yaml/dist/nodes/toJS.js +39 -0
  813. package/node_modules/yaml/dist/options.d.ts +350 -0
  814. package/node_modules/yaml/dist/parse/cst-scalar.d.ts +64 -0
  815. package/node_modules/yaml/dist/parse/cst-scalar.js +218 -0
  816. package/node_modules/yaml/dist/parse/cst-stringify.d.ts +8 -0
  817. package/node_modules/yaml/dist/parse/cst-stringify.js +63 -0
  818. package/node_modules/yaml/dist/parse/cst-visit.d.ts +39 -0
  819. package/node_modules/yaml/dist/parse/cst-visit.js +99 -0
  820. package/node_modules/yaml/dist/parse/cst.d.ts +109 -0
  821. package/node_modules/yaml/dist/parse/cst.js +112 -0
  822. package/node_modules/yaml/dist/parse/lexer.d.ts +87 -0
  823. package/node_modules/yaml/dist/parse/lexer.js +723 -0
  824. package/node_modules/yaml/dist/parse/line-counter.d.ts +22 -0
  825. package/node_modules/yaml/dist/parse/line-counter.js +41 -0
  826. package/node_modules/yaml/dist/parse/parser.d.ts +84 -0
  827. package/node_modules/yaml/dist/parse/parser.js +980 -0
  828. package/node_modules/yaml/dist/public-api.d.ts +44 -0
  829. package/node_modules/yaml/dist/public-api.js +107 -0
  830. package/node_modules/yaml/dist/schema/Schema.d.ts +17 -0
  831. package/node_modules/yaml/dist/schema/Schema.js +39 -0
  832. package/node_modules/yaml/dist/schema/common/map.d.ts +2 -0
  833. package/node_modules/yaml/dist/schema/common/map.js +19 -0
  834. package/node_modules/yaml/dist/schema/common/null.d.ts +4 -0
  835. package/node_modules/yaml/dist/schema/common/null.js +17 -0
  836. package/node_modules/yaml/dist/schema/common/seq.d.ts +2 -0
  837. package/node_modules/yaml/dist/schema/common/seq.js +19 -0
  838. package/node_modules/yaml/dist/schema/common/string.d.ts +2 -0
  839. package/node_modules/yaml/dist/schema/common/string.js +16 -0
  840. package/node_modules/yaml/dist/schema/core/bool.d.ts +4 -0
  841. package/node_modules/yaml/dist/schema/core/bool.js +21 -0
  842. package/node_modules/yaml/dist/schema/core/float.d.ts +4 -0
  843. package/node_modules/yaml/dist/schema/core/float.js +47 -0
  844. package/node_modules/yaml/dist/schema/core/int.d.ts +4 -0
  845. package/node_modules/yaml/dist/schema/core/int.js +42 -0
  846. package/node_modules/yaml/dist/schema/core/schema.d.ts +1 -0
  847. package/node_modules/yaml/dist/schema/core/schema.js +25 -0
  848. package/node_modules/yaml/dist/schema/json/schema.d.ts +2 -0
  849. package/node_modules/yaml/dist/schema/json/schema.js +64 -0
  850. package/node_modules/yaml/dist/schema/json-schema.d.ts +69 -0
  851. package/node_modules/yaml/dist/schema/tags.d.ts +48 -0
  852. package/node_modules/yaml/dist/schema/tags.js +99 -0
  853. package/node_modules/yaml/dist/schema/types.d.ts +92 -0
  854. package/node_modules/yaml/dist/schema/yaml-1.1/binary.d.ts +2 -0
  855. package/node_modules/yaml/dist/schema/yaml-1.1/binary.js +70 -0
  856. package/node_modules/yaml/dist/schema/yaml-1.1/bool.d.ts +7 -0
  857. package/node_modules/yaml/dist/schema/yaml-1.1/bool.js +29 -0
  858. package/node_modules/yaml/dist/schema/yaml-1.1/float.d.ts +4 -0
  859. package/node_modules/yaml/dist/schema/yaml-1.1/float.js +50 -0
  860. package/node_modules/yaml/dist/schema/yaml-1.1/int.d.ts +5 -0
  861. package/node_modules/yaml/dist/schema/yaml-1.1/int.js +76 -0
  862. package/node_modules/yaml/dist/schema/yaml-1.1/merge.d.ts +9 -0
  863. package/node_modules/yaml/dist/schema/yaml-1.1/merge.js +71 -0
  864. package/node_modules/yaml/dist/schema/yaml-1.1/omap.d.ts +22 -0
  865. package/node_modules/yaml/dist/schema/yaml-1.1/omap.js +77 -0
  866. package/node_modules/yaml/dist/schema/yaml-1.1/pairs.d.ts +10 -0
  867. package/node_modules/yaml/dist/schema/yaml-1.1/pairs.js +82 -0
  868. package/node_modules/yaml/dist/schema/yaml-1.1/schema.d.ts +1 -0
  869. package/node_modules/yaml/dist/schema/yaml-1.1/schema.js +41 -0
  870. package/node_modules/yaml/dist/schema/yaml-1.1/set.d.ts +28 -0
  871. package/node_modules/yaml/dist/schema/yaml-1.1/set.js +96 -0
  872. package/node_modules/yaml/dist/schema/yaml-1.1/timestamp.d.ts +6 -0
  873. package/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js +105 -0
  874. package/node_modules/yaml/dist/stringify/foldFlowLines.d.ts +34 -0
  875. package/node_modules/yaml/dist/stringify/foldFlowLines.js +151 -0
  876. package/node_modules/yaml/dist/stringify/stringify.d.ts +21 -0
  877. package/node_modules/yaml/dist/stringify/stringify.js +132 -0
  878. package/node_modules/yaml/dist/stringify/stringifyCollection.d.ts +17 -0
  879. package/node_modules/yaml/dist/stringify/stringifyCollection.js +155 -0
  880. package/node_modules/yaml/dist/stringify/stringifyComment.d.ts +10 -0
  881. package/node_modules/yaml/dist/stringify/stringifyComment.js +24 -0
  882. package/node_modules/yaml/dist/stringify/stringifyDocument.d.ts +4 -0
  883. package/node_modules/yaml/dist/stringify/stringifyDocument.js +87 -0
  884. package/node_modules/yaml/dist/stringify/stringifyNumber.d.ts +2 -0
  885. package/node_modules/yaml/dist/stringify/stringifyNumber.js +27 -0
  886. package/node_modules/yaml/dist/stringify/stringifyPair.d.ts +3 -0
  887. package/node_modules/yaml/dist/stringify/stringifyPair.js +152 -0
  888. package/node_modules/yaml/dist/stringify/stringifyString.d.ts +9 -0
  889. package/node_modules/yaml/dist/stringify/stringifyString.js +338 -0
  890. package/node_modules/yaml/dist/test-events.d.ts +4 -0
  891. package/node_modules/yaml/dist/test-events.js +134 -0
  892. package/node_modules/yaml/dist/util.d.ts +16 -0
  893. package/node_modules/yaml/dist/util.js +28 -0
  894. package/node_modules/yaml/dist/visit.d.ts +102 -0
  895. package/node_modules/yaml/dist/visit.js +236 -0
  896. package/node_modules/yaml/package.json +97 -0
  897. package/node_modules/yaml/util.js +2 -0
  898. package/package.json +108 -4
  899. package/vendor/mdbase-connect-sdk-e6e66bcd172f.json +13 -0
  900. package/vendor/mdbase-dev-connect-protocol-0.1.0-beta.145-e6e66bcd172f.tgz +0 -0
@@ -0,0 +1,176 @@
1
+ /** Why an account-key operation failed. Never carries secret material. */
2
+ export type AccountKeyErrorCode =
3
+ /** The password is too short, too long, or (in the facade) too weak. */
4
+ "weak_password"
5
+ /** Wrong password or recovery key (authentication failed after the KDF), or a recovery key for another account key. */
6
+ | "wrong_secret"
7
+ /** A typed recovery key is not well formed (prefix, length, character or check). */
8
+ | "invalid_recovery_key"
9
+ /** KDF parameters outside the bounds a client will run. */
10
+ | "params"
11
+ /** Not a well-formed, canonical v1 bundle. */
12
+ | "encoding"
13
+ /** The control plane limited this account's fetches or writes. */
14
+ | "rate_limited"
15
+ /** The account is in strict mode: no account key exists. */
16
+ | "strict_mode"
17
+ /** The account has no account key yet. */
18
+ | "no_account_key"
19
+ /** The caller's signal aborted. */
20
+ | "cancelled"
21
+ /** The account key changed underneath this operation (version conflict); fetch and retry. */
22
+ | "conflict"
23
+ /** This account key is already set up (setup refused). */
24
+ | "already_set_up"
25
+ /** The operation needs the key unlocked on this device first. */
26
+ | "locked"
27
+ /** The control plane or replica refused or was unreachable; the local state is unchanged. */
28
+ | "unavailable"
29
+ /** An invalid response or an SDK bug. */
30
+ | "internal";
31
+ export declare class AccountKeyError extends Error {
32
+ readonly code: AccountKeyErrorCode;
33
+ /** A machine-readable detail: `too_short`, `too_long`, `strength`, `wrong_prefix`, `checksum`, …, or a control-plane error code. */
34
+ readonly reason?: string;
35
+ readonly retryAfterMs?: number;
36
+ constructor(code: AccountKeyErrorCode, message: string, extra?: {
37
+ reason?: string;
38
+ retryAfterMs?: number;
39
+ });
40
+ }
41
+ /** `H(tag, m) = SHA-256(u8(len(tag)) ‖ tag ‖ m)` (`00-overview.md` §4). */
42
+ export declare function domainHash(tag: string, m: Uint8Array): Uint8Array;
43
+ /** Wipe a secret buffer (best effort). */
44
+ export declare function wipe(...buffers: Uint8Array[]): void;
45
+ /** Random bytes from the platform CSPRNG. Hosts may inject their own in tests. */
46
+ export type Entropy = (n: number) => Uint8Array;
47
+ export declare const platformEntropy: Entropy;
48
+ export declare function uuidBytes(id: string): Uint8Array;
49
+ /** A fresh account secret `R`. */
50
+ export declare function generateRecoveryKey(entropy?: Entropy): Uint8Array;
51
+ /**
52
+ * The text to show once and have the user write down:
53
+ * `MDB1-XXXXX-…` (Crockford base32 of `R ‖ check`, 55 characters in groups of five).
54
+ */
55
+ export declare function formatRecoveryKey(secret: Uint8Array): string;
56
+ /**
57
+ * Parse what the user typed or pasted. Case, spaces and dashes don't matter, and the
58
+ * Crockford look-alikes `O`→`0`, `I`/`L`→`1` are accepted. The check catches typos
59
+ * only; it is not a secret.
60
+ */
61
+ export declare function parseRecoveryKey(input: string): Uint8Array;
62
+ /** The recovery device a recovery key derives for one collection (`sealed-envelope.md` §5.4). */
63
+ export interface RecoveryDevice {
64
+ /** `first 16 bytes of H("mdbase/v1/recovery-id", collection ‖ sign_pk)`, as a UUID. */
65
+ device: string;
66
+ /** Ed25519 seed (secret). */
67
+ signSeed: Uint8Array;
68
+ signPk: Uint8Array;
69
+ /** X25519 private key (secret). */
70
+ kemSk: Uint8Array;
71
+ kemPk: Uint8Array;
72
+ /** The recovery device has no Noise key: 32 zero bytes. */
73
+ noisePk: Uint8Array;
74
+ }
75
+ /**
76
+ * Derive this collection's recovery device from `R`:
77
+ * `seed = HKDF-SHA256(ikm = R, salt = collection, info = "mdbase/v1/recovery-sign" | "-kem")`.
78
+ */
79
+ export declare function deriveRecoveryDevice(secret: Uint8Array, collection: string): RecoveryDevice;
80
+ /** Sign with the recovery device (the proof of possession for enrolment, AK1 §5.3). */
81
+ export declare function recoverySign(d: RecoveryDevice, message: Uint8Array): Uint8Array;
82
+ /** Wipe a derived recovery device's secrets. */
83
+ export declare function wipeRecoveryDevice(d: RecoveryDevice): void;
84
+ /**
85
+ * The account key's proof signer: `seed = HKDF-SHA256(ikm = R, salt = account, info =
86
+ * "mdbase/v1/account-key-proof")`, an Ed25519 key registered with the bundle. Replacing
87
+ * a bundle (change password, recover) must be signed by it, so a signed-in device alone
88
+ * cannot overwrite the bundle with junk.
89
+ */
90
+ export interface AccountKeyProof {
91
+ /** Ed25519 seed (secret). */
92
+ seed: Uint8Array;
93
+ pk: Uint8Array;
94
+ }
95
+ export declare function deriveAccountKeyProof(secret: Uint8Array, account: string): AccountKeyProof;
96
+ /** `H("mdbase/v1/account-key-rewrap", cbor[account, sha256(bundle), expected_version])`, signed by the proof key. */
97
+ export declare function accountKeyRewrapDigest(account: string, bundleBytes: Uint8Array, expectedVersion: number): Uint8Array;
98
+ export declare function signAccountKeyRewrap(proof: AccountKeyProof, account: string, bundleBytes: Uint8Array, expectedVersion: number): Uint8Array;
99
+ export declare const BUNDLE_VERSION = 1;
100
+ export declare const KDF_ARGON2ID = 1;
101
+ export declare const MAX_BUNDLE_BYTES = 512;
102
+ /** Minimum password length, in Unicode scalar values after NFKC. */
103
+ export declare const MIN_PASSWORD_CHARS = 12;
104
+ /** Maximum password length, in UTF-8 bytes before and after NFKC. */
105
+ export declare const MAX_PASSWORD_BYTES = 1024;
106
+ /** v1 defaults: within the 32 MiB mobile/webview budget. */
107
+ export declare const DEFAULT_KDF: {
108
+ readonly mKib: 19456;
109
+ readonly t: 3;
110
+ readonly p: 1;
111
+ };
112
+ export interface KdfParams {
113
+ /** Memory in KiB. */
114
+ mKib: number;
115
+ /** Passes. */
116
+ t: number;
117
+ /** Lanes. */
118
+ p: number;
119
+ /** 16 random bytes. */
120
+ salt: Uint8Array;
121
+ }
122
+ export interface Bundle {
123
+ kdf: KdfParams;
124
+ /** 24 bytes. */
125
+ nonce: Uint8Array;
126
+ /** `R` sealed: 32 + 16 bytes. */
127
+ ct: Uint8Array;
128
+ /** `keyId(R)`. */
129
+ keyId: Uint8Array;
130
+ }
131
+ /** The public id of an account key: which `R` a bundle wraps. */
132
+ export declare function keyId(secret: Uint8Array): Uint8Array;
133
+ export declare function checkKdfParams(k: KdfParams): void;
134
+ /** Canonical encoding. */
135
+ export declare function encodeBundle(b: Bundle): Uint8Array;
136
+ /** Strict decoding: canonical bytes only, bounded size, exact shape. */
137
+ export declare function decodeBundle(bytes: Uint8Array): Bundle;
138
+ /** NFKC, bounded before and after normalisation; at least 12 scalar values. */
139
+ export declare function normalizePassword(password: string): Uint8Array;
140
+ /** Length policy only (the strength meter is `passwordStrength`). */
141
+ export declare function checkPassword(password: string): void;
142
+ /**
143
+ * Runs Argon2id. Hosts replace the default to move the work off the UI thread (a
144
+ * Worker, or native code); the result must equal RFC 9106 Argon2id v1.3 with the
145
+ * given cost and a 32-byte output. Parameters are already bounded when called.
146
+ */
147
+ export type Argon2idRunner = (password: Uint8Array, salt: Uint8Array, params: {
148
+ mKib: number;
149
+ t: number;
150
+ p: number;
151
+ }, signal?: AbortSignal) => Promise<Uint8Array>;
152
+ /**
153
+ * The default runner: noble's asynchronous Argon2id on the calling thread, yielding to
154
+ * the event loop and cancelling at the next progress tick after `signal` aborts. It
155
+ * blocks UI frames between ticks; browser and native hosts should supply a Worker.
156
+ */
157
+ export declare const inlineArgon2id: Argon2idRunner;
158
+ export interface SealOptions {
159
+ /** Default: the v1 cost with a fresh salt. */
160
+ kdf?: KdfParams;
161
+ /** Default: 24 random bytes. */
162
+ nonce?: Uint8Array;
163
+ entropy?: Entropy;
164
+ argon2id?: Argon2idRunner;
165
+ signal?: AbortSignal;
166
+ }
167
+ /** Seal `secret` under `password` for `account`. */
168
+ export declare function sealBundle(secret: Uint8Array, password: string, account: string, options?: SealOptions): Promise<Bundle>;
169
+ export interface OpenOptions {
170
+ argon2id?: Argon2idRunner;
171
+ signal?: AbortSignal;
172
+ }
173
+ /** Open a bundle with `password` for `account`; checks the key id of what it opens. */
174
+ export declare function openBundle(b: Bundle, password: string, account: string, options?: OpenOptions): Promise<Uint8Array>;
175
+ /** Accept a typed recovery key as the account key of `bundle` (forgotten password). */
176
+ export declare function checkRecoveryKey(secret: Uint8Array, b: Bundle): void;
@@ -0,0 +1,409 @@
1
+ /**
2
+ * The account key (AK1, account-key bundle design):
3
+ * the user's account secret `R` (their recovery key), sealed under their encryption
4
+ * password for the control plane to store and hand back to a signed-in device.
5
+ *
6
+ * Byte-for-byte the Rust `mdbn-replica` `crypto::account_key` and `crypto::recovery`
7
+ * modules; `conformance/crypto/account-key/` and `conformance/crypto/recovery-key/`
8
+ * pin both.
9
+ *
10
+ * ```text
11
+ * key_id = H("mdbase/v1/account-key-id", R)
12
+ * kek = Argon2id(NFKC(password), salt, m_kib, t, p, out = 32)
13
+ * aad = H("mdbase/v1/account-key-bundle", cbor[1, account, key_id, kdf])
14
+ * ct = XChaCha20-Poly1305(kek, nonce, R, aad)
15
+ * bundle = cbor{0: 1, 1: kdf, 2: nonce, 3: ct, 4: key_id}
16
+ * kdf = [1 (Argon2id v1.3), m_kib, t, p, salt(16)]
17
+ * ```
18
+ *
19
+ * The control plane never sees `R` or the password. KDF parameters come from the
20
+ * (untrusted) bundle, so they are bounded both ways before any memory is allocated.
21
+ * Secrets are `Uint8Array`s wiped after use (best effort; JS strings cannot be wiped).
22
+ */
23
+ import { xchacha20poly1305 } from "@noble/ciphers/chacha.js";
24
+ import { ed25519, x25519 } from "@noble/curves/ed25519.js";
25
+ import { argon2idAsync } from "@noble/hashes/argon2.js";
26
+ import { hkdf } from "@noble/hashes/hkdf.js";
27
+ import { sha256 } from "@noble/hashes/sha2.js";
28
+ import { bytesEqual, decode, encode, structMap } from "./cbor.js";
29
+ export class AccountKeyError extends Error {
30
+ code;
31
+ /** A machine-readable detail: `too_short`, `too_long`, `strength`, `wrong_prefix`, `checksum`, …, or a control-plane error code. */
32
+ reason;
33
+ retryAfterMs;
34
+ constructor(code, message, extra = {}) {
35
+ super(message);
36
+ this.name = "AccountKeyError";
37
+ this.code = code;
38
+ if (extra.reason !== undefined)
39
+ this.reason = extra.reason;
40
+ if (extra.retryAfterMs !== undefined)
41
+ this.retryAfterMs = extra.retryAfterMs;
42
+ }
43
+ }
44
+ const err = (code, message, reason) => new AccountKeyError(code, message, reason === undefined ? {} : { reason });
45
+ // ------------------------------------------------------------------ hashing
46
+ const utf8 = new TextEncoder();
47
+ /** `H(tag, m) = SHA-256(u8(len(tag)) ‖ tag ‖ m)` (`00-overview.md` §4). */
48
+ export function domainHash(tag, m) {
49
+ const t = utf8.encode(tag);
50
+ if (t.length > 255)
51
+ throw err("internal", "domain tag longer than 255 bytes");
52
+ return sha256(concat(Uint8Array.of(t.length), t, m));
53
+ }
54
+ function concat(...parts) {
55
+ let n = 0;
56
+ for (const p of parts)
57
+ n += p.length;
58
+ const out = new Uint8Array(n);
59
+ let o = 0;
60
+ for (const p of parts) {
61
+ out.set(p, o);
62
+ o += p.length;
63
+ }
64
+ return out;
65
+ }
66
+ /** Constant-time equality for short secrets. */
67
+ function ctEq(a, b) {
68
+ if (a.length !== b.length)
69
+ return false;
70
+ let d = 0;
71
+ for (let i = 0; i < a.length; i++)
72
+ d |= a[i] ^ b[i];
73
+ return d === 0;
74
+ }
75
+ /** Wipe a secret buffer (best effort). */
76
+ export function wipe(...buffers) {
77
+ for (const b of buffers)
78
+ b.fill(0);
79
+ }
80
+ export const platformEntropy = (n) => crypto.getRandomValues(new Uint8Array(n));
81
+ // ------------------------------------------------------------------ UUIDs
82
+ const UUID = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
83
+ export function uuidBytes(id) {
84
+ if (!UUID.test(id))
85
+ throw err("internal", "not a UUID");
86
+ const hex = id.replace(/-/g, "").toLowerCase();
87
+ const out = new Uint8Array(16);
88
+ for (let i = 0; i < 16; i++)
89
+ out[i] = parseInt(hex.slice(i * 2, i * 2 + 2), 16);
90
+ return out;
91
+ }
92
+ function uuidText(b) {
93
+ let h = "";
94
+ for (const x of b)
95
+ h += x.toString(16).padStart(2, "0");
96
+ return `${h.slice(0, 8)}-${h.slice(8, 12)}-${h.slice(12, 16)}-${h.slice(16, 20)}-${h.slice(20)}`;
97
+ }
98
+ // ------------------------------------------------------------------ recovery key
99
+ const ALPHABET = "0123456789ABCDEFGHJKMNPQRSTVWXYZ"; // Crockford: no I, L, O, U
100
+ const PREFIX = "MDB1";
101
+ const SECRET_LEN = 32;
102
+ const CHECK_LEN = 2;
103
+ const BODY_CHARS = 55; // ceil(34 * 8 / 5)
104
+ /** A fresh account secret `R`. */
105
+ export function generateRecoveryKey(entropy = platformEntropy) {
106
+ const r = entropy(SECRET_LEN);
107
+ if (r.length !== SECRET_LEN)
108
+ throw err("internal", "entropy returned the wrong length");
109
+ return r;
110
+ }
111
+ function check(secret) {
112
+ return domainHash("mdbase/v1/recovery-key-check", secret).subarray(0, CHECK_LEN);
113
+ }
114
+ /**
115
+ * The text to show once and have the user write down:
116
+ * `MDB1-XXXXX-…` (Crockford base32 of `R ‖ check`, 55 characters in groups of five).
117
+ */
118
+ export function formatRecoveryKey(secret) {
119
+ if (secret.length !== SECRET_LEN)
120
+ throw err("internal", "recovery secret is 32 bytes");
121
+ const raw = concat(secret, check(secret));
122
+ let body = "";
123
+ let acc = 0;
124
+ let bits = 0;
125
+ for (const b of raw) {
126
+ acc = (acc << 8) | b;
127
+ bits += 8;
128
+ while (bits >= 5) {
129
+ body += ALPHABET[(acc >>> (bits - 5)) & 31];
130
+ bits -= 5;
131
+ }
132
+ acc &= (1 << bits) - 1;
133
+ }
134
+ if (bits > 0)
135
+ body += ALPHABET[(acc << (5 - bits)) & 31];
136
+ wipe(raw);
137
+ return [PREFIX, ...body.match(/.{1,5}/g)].join("-");
138
+ }
139
+ /**
140
+ * Parse what the user typed or pasted. Case, spaces and dashes don't matter, and the
141
+ * Crockford look-alikes `O`→`0`, `I`/`L`→`1` are accepted. The check catches typos
142
+ * only; it is not a secret.
143
+ */
144
+ export function parseRecoveryKey(input) {
145
+ if (typeof input !== "string" || input.length > 4096)
146
+ throw err("invalid_recovery_key", "Not a recovery key.", "wrong_length");
147
+ let s = input.toUpperCase().replace(/[\s-]/g, "").replace(/O/g, "0").replace(/[IL]/g, "1");
148
+ if (!s.startsWith(PREFIX))
149
+ throw err("invalid_recovery_key", "A recovery key starts with MDB1.", "wrong_prefix");
150
+ s = s.slice(PREFIX.length);
151
+ if (s.length !== BODY_CHARS)
152
+ throw err("invalid_recovery_key", "A recovery key has 55 characters after MDB1.", "wrong_length");
153
+ const raw = new Uint8Array(SECRET_LEN + CHECK_LEN);
154
+ let acc = 0;
155
+ let bits = 0;
156
+ let o = 0;
157
+ for (const ch of s) {
158
+ const v = ALPHABET.indexOf(ch);
159
+ if (v < 0)
160
+ throw err("invalid_recovery_key", "A recovery key uses only Crockford base32 characters.", "bad_character");
161
+ acc = (acc << 5) | v;
162
+ bits += 5;
163
+ if (bits >= 8) {
164
+ if (o < raw.length)
165
+ raw[o++] = (acc >>> (bits - 8)) & 0xff;
166
+ bits -= 8;
167
+ }
168
+ acc &= (1 << bits) - 1;
169
+ }
170
+ // 55 × 5 = 275 bits: 272 data bits and 3 zero padding bits (one spelling per key).
171
+ if (o !== raw.length || acc !== 0)
172
+ throw err("invalid_recovery_key", "Not a recovery key.", "bad_character");
173
+ const secret = raw.slice(0, SECRET_LEN);
174
+ const ok = ctEq(check(secret), raw.subarray(SECRET_LEN));
175
+ wipe(raw);
176
+ if (!ok) {
177
+ wipe(secret);
178
+ throw err("invalid_recovery_key", "The recovery key has a typo (check failed).", "checksum");
179
+ }
180
+ return secret;
181
+ }
182
+ /**
183
+ * Derive this collection's recovery device from `R`:
184
+ * `seed = HKDF-SHA256(ikm = R, salt = collection, info = "mdbase/v1/recovery-sign" | "-kem")`.
185
+ */
186
+ export function deriveRecoveryDevice(secret, collection) {
187
+ if (secret.length !== SECRET_LEN)
188
+ throw err("internal", "recovery secret is 32 bytes");
189
+ const c = uuidBytes(collection);
190
+ const signSeed = hkdf(sha256, secret, c, utf8.encode("mdbase/v1/recovery-sign"), 32);
191
+ const kemSk = hkdf(sha256, secret, c, utf8.encode("mdbase/v1/recovery-kem"), 32);
192
+ const signPk = ed25519.getPublicKey(signSeed);
193
+ const kemPk = x25519.getPublicKey(kemSk);
194
+ const device = uuidText(domainHash("mdbase/v1/recovery-id", concat(c, signPk)).subarray(0, 16));
195
+ return { device, signSeed, signPk, kemSk, kemPk, noisePk: new Uint8Array(32) };
196
+ }
197
+ /** Sign with the recovery device (the proof of possession for enrolment, AK1 §5.3). */
198
+ export function recoverySign(d, message) {
199
+ return ed25519.sign(message, d.signSeed);
200
+ }
201
+ /** Wipe a derived recovery device's secrets. */
202
+ export function wipeRecoveryDevice(d) {
203
+ wipe(d.signSeed, d.kemSk);
204
+ }
205
+ export function deriveAccountKeyProof(secret, account) {
206
+ if (secret.length !== SECRET_LEN)
207
+ throw err("internal", "recovery secret is 32 bytes");
208
+ const seed = hkdf(sha256, secret, uuidBytes(account), utf8.encode("mdbase/v1/account-key-proof"), 32);
209
+ return { seed, pk: ed25519.getPublicKey(seed) };
210
+ }
211
+ /** `H("mdbase/v1/account-key-rewrap", cbor[account, sha256(bundle), expected_version])`, signed by the proof key. */
212
+ export function accountKeyRewrapDigest(account, bundleBytes, expectedVersion) {
213
+ if (!Number.isSafeInteger(expectedVersion) || expectedVersion < 0)
214
+ throw err("internal", "expected_version");
215
+ return domainHash("mdbase/v1/account-key-rewrap", encode([uuidBytes(account), sha256(bundleBytes), expectedVersion]));
216
+ }
217
+ export function signAccountKeyRewrap(proof, account, bundleBytes, expectedVersion) {
218
+ return ed25519.sign(accountKeyRewrapDigest(account, bundleBytes, expectedVersion), proof.seed);
219
+ }
220
+ // ------------------------------------------------------------------ bundle
221
+ export const BUNDLE_VERSION = 1;
222
+ export const KDF_ARGON2ID = 1;
223
+ export const MAX_BUNDLE_BYTES = 512;
224
+ /** Minimum password length, in Unicode scalar values after NFKC. */
225
+ export const MIN_PASSWORD_CHARS = 12;
226
+ /** Maximum password length, in UTF-8 bytes before and after NFKC. */
227
+ export const MAX_PASSWORD_BYTES = 1024;
228
+ /** v1 defaults: within the 32 MiB mobile/webview budget. */
229
+ export const DEFAULT_KDF = { mKib: 19_456, t: 3, p: 1 };
230
+ /** Parameters a client will run, whatever a bundle says (checked before allocating). */
231
+ const MIN_M_KIB = 19_456;
232
+ const MAX_M_KIB = 24_576;
233
+ const MIN_T = 2;
234
+ const MAX_T = 10;
235
+ const MAX_P = 4;
236
+ /** The public id of an account key: which `R` a bundle wraps. */
237
+ export function keyId(secret) {
238
+ return domainHash("mdbase/v1/account-key-id", secret);
239
+ }
240
+ const uint = (v) => typeof v === "number" && Number.isSafeInteger(v) && v >= 0;
241
+ export function checkKdfParams(k) {
242
+ const ok = uint(k.mKib) && uint(k.t) && uint(k.p)
243
+ && k.mKib >= MIN_M_KIB && k.mKib <= MAX_M_KIB && k.t >= MIN_T && k.t <= MAX_T && k.p >= 1 && k.p <= MAX_P
244
+ && k.mKib >= 8 * k.p && k.salt instanceof Uint8Array && k.salt.length === 16;
245
+ if (!ok)
246
+ throw err("params", "Unsupported key derivation parameters.");
247
+ }
248
+ function kdfCbor(k) {
249
+ return [KDF_ARGON2ID, k.mKib, k.t, k.p, k.salt];
250
+ }
251
+ function kdfFromCbor(v) {
252
+ if (!Array.isArray(v) || v.length !== 5)
253
+ throw err("encoding", "Not an account key bundle.");
254
+ const [alg, m, t, p, salt] = v;
255
+ if (!uint(alg) || !uint(m) || !uint(t) || !uint(p) || !(salt instanceof Uint8Array) || salt.length !== 16) {
256
+ throw err("encoding", "Not an account key bundle.");
257
+ }
258
+ if (alg !== KDF_ARGON2ID || m > 0xffff_ffff || t > 0xffff_ffff || p > 0xffff_ffff)
259
+ throw err("params", "Unsupported key derivation parameters.");
260
+ return { mKib: m, t, p, salt };
261
+ }
262
+ /** Canonical encoding. */
263
+ export function encodeBundle(b) {
264
+ return encode(structMap([
265
+ [0, BUNDLE_VERSION],
266
+ [1, kdfCbor(b.kdf)],
267
+ [2, b.nonce],
268
+ [3, b.ct],
269
+ [4, b.keyId],
270
+ ]));
271
+ }
272
+ /** Strict decoding: canonical bytes only, bounded size, exact shape. */
273
+ export function decodeBundle(bytes) {
274
+ if (!(bytes instanceof Uint8Array) || bytes.length > MAX_BUNDLE_BYTES)
275
+ throw err("encoding", "Not an account key bundle.");
276
+ let v;
277
+ try {
278
+ v = decode(bytes);
279
+ }
280
+ catch {
281
+ throw err("encoding", "Not an account key bundle.");
282
+ }
283
+ if (!(v instanceof Map) || v.size !== 5 || [...v.keys()].join() !== "0,1,2,3,4")
284
+ throw err("encoding", "Not an account key bundle.");
285
+ const m = v;
286
+ const nonce = m.get(2);
287
+ const ct = m.get(3);
288
+ const id = m.get(4);
289
+ if (m.get(0) !== BUNDLE_VERSION || !(nonce instanceof Uint8Array) || nonce.length !== 24
290
+ || !(ct instanceof Uint8Array) || ct.length !== 48 || !(id instanceof Uint8Array) || id.length !== 32) {
291
+ throw err("encoding", "Not an account key bundle.");
292
+ }
293
+ const b = { kdf: kdfFromCbor(m.get(1)), nonce, ct, keyId: id };
294
+ if (!bytesEqual(encodeBundle(b), bytes))
295
+ throw err("encoding", "Not an account key bundle.");
296
+ return b;
297
+ }
298
+ // ------------------------------------------------------------------ password
299
+ /** NFKC, bounded before and after normalisation; at least 12 scalar values. */
300
+ export function normalizePassword(password) {
301
+ if (typeof password !== "string")
302
+ throw err("weak_password", "The password is required.", "too_short");
303
+ if (utf8.encode(password).length > MAX_PASSWORD_BYTES)
304
+ throw err("weak_password", "The password is too long.", "too_long");
305
+ const n = password.normalize("NFKC");
306
+ const bytes = utf8.encode(n);
307
+ if (bytes.length > MAX_PASSWORD_BYTES)
308
+ throw err("weak_password", "The password is too long.", "too_long");
309
+ if ([...n].length < MIN_PASSWORD_CHARS) {
310
+ wipe(bytes);
311
+ throw err("weak_password", `The password needs at least ${MIN_PASSWORD_CHARS} characters.`, "too_short");
312
+ }
313
+ return bytes;
314
+ }
315
+ /** Length policy only (the strength meter is `passwordStrength`). */
316
+ export function checkPassword(password) {
317
+ wipe(normalizePassword(password));
318
+ }
319
+ /**
320
+ * The default runner: noble's asynchronous Argon2id on the calling thread, yielding to
321
+ * the event loop and cancelling at the next progress tick after `signal` aborts. It
322
+ * blocks UI frames between ticks; browser and native hosts should supply a Worker.
323
+ */
324
+ export const inlineArgon2id = async (password, salt, params, signal) => {
325
+ const aborted = () => err("cancelled", "Key derivation cancelled.");
326
+ if (signal?.aborted)
327
+ throw aborted();
328
+ try {
329
+ return await argon2idAsync(password, salt, {
330
+ t: params.t,
331
+ m: params.mKib,
332
+ p: params.p,
333
+ dkLen: 32,
334
+ version: 0x13,
335
+ maxmem: MAX_M_KIB * 1024 + (1 << 20),
336
+ asyncTick: 20,
337
+ onProgress: () => {
338
+ if (signal?.aborted)
339
+ throw aborted();
340
+ },
341
+ });
342
+ }
343
+ catch (e) {
344
+ if (e instanceof AccountKeyError)
345
+ throw e;
346
+ throw err("params", "Key derivation failed.");
347
+ }
348
+ };
349
+ async function kek(password, kdf, run, signal) {
350
+ checkKdfParams(kdf);
351
+ const pw = normalizePassword(password);
352
+ try {
353
+ const out = await run(pw, kdf.salt, { mKib: kdf.mKib, t: kdf.t, p: kdf.p }, signal);
354
+ if (!(out instanceof Uint8Array) || out.length !== 32)
355
+ throw err("internal", "The KDF runner returned the wrong length.");
356
+ return out;
357
+ }
358
+ finally {
359
+ wipe(pw);
360
+ }
361
+ }
362
+ function aad(account, id, kdf) {
363
+ return domainHash("mdbase/v1/account-key-bundle", encode([BUNDLE_VERSION, uuidBytes(account), id, kdfCbor(kdf)]));
364
+ }
365
+ /** Seal `secret` under `password` for `account`. */
366
+ export async function sealBundle(secret, password, account, options = {}) {
367
+ if (secret.length !== SECRET_LEN)
368
+ throw err("internal", "recovery secret is 32 bytes");
369
+ checkPassword(password);
370
+ const entropy = options.entropy ?? platformEntropy;
371
+ const kdf = options.kdf ?? { ...DEFAULT_KDF, salt: entropy(16) };
372
+ const nonce = options.nonce ?? entropy(24);
373
+ if (nonce.length !== 24)
374
+ throw err("internal", "nonce is 24 bytes");
375
+ const id = keyId(secret);
376
+ const k = await kek(password, kdf, options.argon2id ?? inlineArgon2id, options.signal);
377
+ try {
378
+ const ct = xchacha20poly1305(k, nonce, aad(account, id, kdf)).encrypt(secret);
379
+ return { kdf, nonce, ct, keyId: id };
380
+ }
381
+ finally {
382
+ wipe(k);
383
+ }
384
+ }
385
+ /** Open a bundle with `password` for `account`; checks the key id of what it opens. */
386
+ export async function openBundle(b, password, account, options = {}) {
387
+ const k = await kek(password, b.kdf, options.argon2id ?? inlineArgon2id, options.signal);
388
+ let plain;
389
+ try {
390
+ plain = xchacha20poly1305(k, b.nonce, aad(account, b.keyId, b.kdf)).decrypt(b.ct);
391
+ }
392
+ catch {
393
+ throw err("wrong_secret", "Wrong password.");
394
+ }
395
+ finally {
396
+ wipe(k);
397
+ }
398
+ if (plain.length !== SECRET_LEN || !ctEq(keyId(plain), b.keyId)) {
399
+ wipe(plain);
400
+ throw err("wrong_secret", "Wrong password.");
401
+ }
402
+ return plain;
403
+ }
404
+ /** Accept a typed recovery key as the account key of `bundle` (forgotten password). */
405
+ export function checkRecoveryKey(secret, b) {
406
+ if (secret.length !== SECRET_LEN || !ctEq(keyId(secret), b.keyId))
407
+ throw err("wrong_secret", "This recovery key belongs to a different account key.");
408
+ }
409
+ //# sourceMappingURL=account-key.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"account-key.js","sourceRoot":"","sources":["../src/account-key.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * `@mdbase-dev/sdk/account`: the private (E2E) multi-device enrolment surface (AK1 §7).
3
+ * Separate from the root entry because it carries Argon2id, Ed25519 and the strength
4
+ * meter, which the thin client never loads.
5
+ */
6
+ export { AccountKeyError, BUNDLE_VERSION, DEFAULT_KDF, MAX_BUNDLE_BYTES, MAX_PASSWORD_BYTES, MIN_PASSWORD_CHARS, checkKdfParams, accountKeyRewrapDigest, checkPassword, checkRecoveryKey, decodeBundle, deriveAccountKeyProof, deriveRecoveryDevice, domainHash, encodeBundle, formatRecoveryKey, generateRecoveryKey, inlineArgon2id, keyId, normalizePassword, openBundle, parseRecoveryKey, recoverySign, sealBundle, signAccountKeyRewrap, wipe, wipeRecoveryDevice, } from "./account-key.js";
7
+ export type { AccountKeyErrorCode, AccountKeyProof, Argon2idRunner, Bundle, Entropy, KdfParams, OpenOptions, RecoveryDevice, SealOptions, } from "./account-key.js";
8
+ export { PrivateAccount, memorySecretStore } from "./private-account.js";
9
+ export type { AccountKeyControlPort, AccountKeyMode, AccountKeyReplicaPort, AccountSecretStore, PrivateAccountPorts, PrivateAccountRequestOptions, PrivateAccountStatus, SetupResult, StrictPendingTarget, StrictResult, UnlockResult, } from "./private-account.js";
10
+ export { passwordStrength } from "./strength.js";
11
+ export type { Strength } from "./strength.js";
@@ -0,0 +1,9 @@
1
+ /**
2
+ * `@mdbase-dev/sdk/account`: the private (E2E) multi-device enrolment surface (AK1 §7).
3
+ * Separate from the root entry because it carries Argon2id, Ed25519 and the strength
4
+ * meter, which the thin client never loads.
5
+ */
6
+ export { AccountKeyError, BUNDLE_VERSION, DEFAULT_KDF, MAX_BUNDLE_BYTES, MAX_PASSWORD_BYTES, MIN_PASSWORD_CHARS, checkKdfParams, accountKeyRewrapDigest, checkPassword, checkRecoveryKey, decodeBundle, deriveAccountKeyProof, deriveRecoveryDevice, domainHash, encodeBundle, formatRecoveryKey, generateRecoveryKey, inlineArgon2id, keyId, normalizePassword, openBundle, parseRecoveryKey, recoverySign, sealBundle, signAccountKeyRewrap, wipe, wipeRecoveryDevice, } from "./account-key.js";
7
+ export { PrivateAccount, memorySecretStore } from "./private-account.js";
8
+ export { passwordStrength } from "./strength.js";
9
+ //# sourceMappingURL=account.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"account.js","sourceRoot":"","sources":["../src/account.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EACL,eAAe,EAAE,cAAc,EAAE,WAAW,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,cAAc,EACtH,sBAAsB,EAAE,aAAa,EAAE,gBAAgB,EAAE,YAAY,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,UAAU,EAAE,YAAY,EAAE,iBAAiB,EAC/J,mBAAmB,EAAE,cAAc,EAAE,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,EAAE,UAAU,EAAE,oBAAoB,EAC3I,IAAI,EAAE,kBAAkB,GACzB,MAAM,kBAAkB,CAAC;AAI1B,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAKzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC"}