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

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 +48 -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 +606 -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 +608 -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 +376 -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 +40 -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 +34835 -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 +49398 -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 +658 -0
  349. package/dist/client.js +1966 -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 +13 -0
  385. package/dist/local-build.js +47 -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 +857 -0
  529. package/dist/wire.js +915 -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,274 @@
1
+ /**
2
+ * The JS side of `runtime.wasm`'s ABI (`crates/wasm/src/lib.rs`): instantiate it,
3
+ * open a replica, and hand out in-process ports (`replica-client-api.md` §12.1).
4
+ *
5
+ * Packaging (embedding as base64, the table-driven decoder, the process-wide registry
6
+ * and the version-skew rule) lives in `packages/obsidian-runtime`. This module takes
7
+ * the decoded bytes, so web apps that host a replica and Obsidian share it.
8
+ */
9
+ import { decode, encode, encodeSecret } from "../cbor.js";
10
+ import { mdbaseError } from "../errors.js";
11
+ import { uuidToBytes } from "../codec.js";
12
+ /** A `runtime.wasm` instance hosting one collection. */
13
+ export class WasmRuntime {
14
+ instance;
15
+ ports = new Map();
16
+ timer = null;
17
+ opened = false;
18
+ constructor(instance) {
19
+ this.instance = instance;
20
+ }
21
+ get x() {
22
+ if (!this.instance)
23
+ throw mdbaseError("unavailable", "runtime instance was discarded after an ABI failure");
24
+ return this.instance;
25
+ }
26
+ discard() {
27
+ // A trap may bypass Rust's input wipe. Ownership has crossed the ABI, so do
28
+ // not guess whether the pointer is still allocated. Fail-stop and release
29
+ // the instance instead of serving or reopening it with uncertain key state.
30
+ this.instance = null;
31
+ if (this.timer)
32
+ clearInterval(this.timer);
33
+ this.timer = null;
34
+ for (const port of [...this.ports.values()])
35
+ port.end();
36
+ this.ports.clear();
37
+ }
38
+ /** Instantiate from the module's bytes (decoded by the embedding loader). */
39
+ static async instantiate(bytes) {
40
+ return new WasmRuntime(await this.load(bytes));
41
+ }
42
+ /** @internal App subclass installs bounded same-Worker imports, never app RPCs. */
43
+ static async load(bytes, extra) {
44
+ let memory = null;
45
+ let exports = null;
46
+ const extraEnv = extra?.(() => {
47
+ if (!exports)
48
+ throw mdbaseError("unavailable", "runtime imports called before initialization");
49
+ return exports;
50
+ }) ?? {};
51
+ const utf8 = new TextDecoder();
52
+ const env = {
53
+ // The optional app host overrides this with same-Worker SQL. A legacy
54
+ // runtime cannot activate app storage or silently fall back to MemStore.
55
+ host_app_sql: (_ptr, _len) => 0n,
56
+ host_now_ms: () => Date.now(),
57
+ host_local_date: (ms, tzPtr, tzLen, out) => {
58
+ try {
59
+ const tz = utf8.decode(new Uint8Array(memory.buffer, tzPtr, tzLen));
60
+ // en-CA formats as YYYY-MM-DD.
61
+ const d = new Intl.DateTimeFormat("en-CA", { timeZone: tz, year: "numeric", month: "2-digit", day: "2-digit" }).format(ms);
62
+ if (!/^\d{4}-\d{2}-\d{2}$/.test(d))
63
+ return 0;
64
+ new Uint8Array(memory.buffer, out, 10).set(new TextEncoder().encode(d));
65
+ return 10;
66
+ }
67
+ catch {
68
+ return 0; // unknown zone
69
+ }
70
+ },
71
+ host_default_zone: (out, cap) => {
72
+ const b = new TextEncoder().encode(Intl.DateTimeFormat().resolvedOptions().timeZone || "UTC");
73
+ const n = Math.min(b.length, cap);
74
+ new Uint8Array(memory.buffer, out, n).set(b.subarray(0, n));
75
+ return n;
76
+ },
77
+ host_random: (ptr, len) => {
78
+ // Fill in chunks: getRandomValues takes at most 65536 bytes.
79
+ const view = new Uint8Array(memory.buffer, ptr, len);
80
+ for (let o = 0; o < len; o += 65536)
81
+ globalThis.crypto.getRandomValues(view.subarray(o, o + 65536));
82
+ },
83
+ };
84
+ const { instance } = await WebAssembly.instantiate(bytes, { env: { ...env, ...extraEnv } });
85
+ const x = instance.exports;
86
+ exports = x;
87
+ memory = x.memory;
88
+ return x;
89
+ }
90
+ put(b) {
91
+ if (b.length === 0)
92
+ return [0, 0];
93
+ const p = this.x.alloc(b.length);
94
+ new Uint8Array(this.x.memory.buffer, p, b.length).set(b);
95
+ return [p, b.length];
96
+ }
97
+ takeOut(packed) {
98
+ const ptr = Number(packed >> 32n);
99
+ const len = Number(packed & 0xffffffffn);
100
+ if (len === 0)
101
+ return new Uint8Array(0);
102
+ const out = new Uint8Array(this.x.memory.buffer, ptr, len).slice();
103
+ this.x.dealloc(ptr, len);
104
+ return out;
105
+ }
106
+ info() {
107
+ const m = decode(this.takeOut(this.x.rt_info()));
108
+ const pair = (v) => {
109
+ const [major, minor] = v;
110
+ return { major: major, minor: minor };
111
+ };
112
+ return {
113
+ abiMajor: m.get(0),
114
+ runtimeVersion: m.get(1),
115
+ sem: pair(m.get(2)),
116
+ serves: m.get(3).map(pair),
117
+ };
118
+ }
119
+ /** Open the replica. */
120
+ open(c) {
121
+ const x = this.x;
122
+ if (this.opened)
123
+ throw mdbaseError("unavailable", "runtime is already open");
124
+ const profile = c.queryExecutionProfile;
125
+ let tag;
126
+ if (profile !== undefined) {
127
+ if (profile !== "memory_constrained" && profile !== "desktop") {
128
+ throw mdbaseError("invalid_request", "unknown query execution profile");
129
+ }
130
+ if (typeof x.rt_open_profile !== "function") {
131
+ throw mdbaseError("unavailable", "runtime does not support explicit query profile initialization");
132
+ }
133
+ tag = profile === "memory_constrained" ? 0 : 1;
134
+ }
135
+ const cfg = encodeSecret(new Map([
136
+ [0, uuidToBytes(c.collection)],
137
+ [1, uuidToBytes(c.replicaId)],
138
+ [2, uuidToBytes(c.deviceId)],
139
+ [3, c.mode === "local_only" ? 0 : 1],
140
+ [4, c.signSecretKey],
141
+ [5, c.kemSecretKey],
142
+ [6, c.e2e ?? false],
143
+ ]));
144
+ let err;
145
+ try {
146
+ // rt_open consumes and wipes the linear-memory input. This JS encoding is
147
+ // a separate secret-bearing copy: clear it on success, refusal or a trap.
148
+ const input = this.put(cfg);
149
+ err = this.takeOut(tag === undefined ? x.rt_open(...input) : x.rt_open_profile(...input, tag));
150
+ }
151
+ catch (error) {
152
+ this.discard();
153
+ throw error;
154
+ }
155
+ finally {
156
+ cfg.fill(0);
157
+ }
158
+ if (err.length)
159
+ throw mdbaseError("unavailable", `runtime failed to open: ${new TextDecoder().decode(err)}`);
160
+ this.markOpened();
161
+ }
162
+ /** @internal Start the shared frame/timer driver only after a successful open. */
163
+ markOpened() {
164
+ this.opened = true;
165
+ this.timer ??= setInterval(() => this.tick(), 1000);
166
+ this.timer.unref?.();
167
+ }
168
+ /** Run timers now. */
169
+ tick() {
170
+ this.x.rt_tick(Date.now());
171
+ this.flush();
172
+ }
173
+ /** An in-process port. The first frame sent must be `hello`. */
174
+ connect(o = {}) {
175
+ let session = null;
176
+ let closed = false;
177
+ const queue = [];
178
+ const port = {
179
+ onframe: null,
180
+ onclose: null,
181
+ send: (frame) => {
182
+ if (closed)
183
+ throw mdbaseError("unavailable", "port closed");
184
+ const bytes = encode(frame);
185
+ if (session === null) {
186
+ const grant = o.grant && o.clientKey ? new Uint8Array([...uuidToBytes(o.grant), ...o.clientKey]) : new Uint8Array(0);
187
+ const out = decode(this.takeOut(this.x.rt_hello(...this.put(grant), ...this.put(bytes))));
188
+ const s = BigInt(out[0]);
189
+ const resp = decode(out[1]);
190
+ queueMicrotask(() => {
191
+ port.onframe?.(resp);
192
+ if (s === 0n)
193
+ port.end();
194
+ });
195
+ if (s !== 0n) {
196
+ session = s;
197
+ this.ports.set(s, port);
198
+ this.flush();
199
+ }
200
+ return;
201
+ }
202
+ this.x.rt_frame(session, ...this.put(bytes));
203
+ this.flush();
204
+ },
205
+ close: () => {
206
+ if (closed)
207
+ return;
208
+ closed = true;
209
+ if (session !== null) {
210
+ this.ports.delete(session);
211
+ this.x.rt_close(session);
212
+ }
213
+ port.onclose?.();
214
+ },
215
+ deliver: (f) => (port.onframe ? port.onframe(f) : queue.push(f)),
216
+ end: () => {
217
+ if (closed)
218
+ return;
219
+ closed = true;
220
+ if (session !== null)
221
+ this.ports.delete(session);
222
+ port.onclose?.();
223
+ },
224
+ };
225
+ return port;
226
+ }
227
+ /** @internal Privileged app subclass: current local session, never a caller
228
+ * guessed ID. Closed/foreign/uninitialized ports have no authority. */
229
+ sessionForPort(port) {
230
+ for (const [id, current] of this.ports)
231
+ if (current === port)
232
+ return id;
233
+ return null;
234
+ }
235
+ flush() {
236
+ const out = this.takeOut(this.x.rt_poll());
237
+ if (!out.length)
238
+ return;
239
+ const items = decode(out);
240
+ const ending = new Set(items.filter(item => item[1] === null)
241
+ .map(item => BigInt(item[0])));
242
+ for (const item of items) {
243
+ const [s, f] = item;
244
+ const port = this.ports.get(BigInt(s));
245
+ if (!port)
246
+ continue;
247
+ if (f === null)
248
+ port.end();
249
+ else {
250
+ const frame = decode(f);
251
+ if (ending.has(BigInt(s))) {
252
+ // Native closes retain only their terminal problem. Deliver that
253
+ // diagnostic BEFORE the facade ends; a queued microtask would lose
254
+ // it behind the synchronous close and report only "fenced". Do not
255
+ // let closing a session flush any other queued plaintext.
256
+ if (frame instanceof Map) {
257
+ const fields = frame;
258
+ if (fields.get(0) === 2 && fields.get(1) === "closed")
259
+ port.deliver(frame);
260
+ }
261
+ }
262
+ else
263
+ queueMicrotask(() => port.deliver(frame));
264
+ }
265
+ }
266
+ }
267
+ dispose() {
268
+ if (this.timer)
269
+ clearInterval(this.timer);
270
+ for (const p of [...this.ports.values()])
271
+ p.close();
272
+ }
273
+ }
274
+ //# sourceMappingURL=wasm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wasm.js","sourceRoot":"","sources":["../../src/runtime/wasm.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,71 @@
1
+ import { type Codec } from "./codec.js";
2
+ import { type BlobRef, type Hash, type Mutation, type Op, type Uuid } from "./wire.js";
3
+ import { type AttachmentContentV1 } from "./attachment-wire.js";
4
+ export { attachmentContentV1, attachmentRefV1 } from "./attachment-wire.js";
5
+ export type { AttachmentContentV1, AttachmentRefV1 } from "./attachment-wire.js";
6
+ export type FileAttach = {
7
+ kind: "file_attach";
8
+ id: Uuid;
9
+ path: string;
10
+ content: AttachmentContentV1;
11
+ ifRevision?: Hash;
12
+ base?: Hash;
13
+ };
14
+ export type FileContent = {
15
+ form: "blob";
16
+ blob: BlobRef;
17
+ } | {
18
+ form: "attachment";
19
+ content: AttachmentContentV1;
20
+ };
21
+ /** Closed content union; unknown envelopes never become BlobRefs. */
22
+ export declare const fileContent: Codec<FileContent>;
23
+ export interface UnindexedMarkdownPayloadV1 {
24
+ content: FileContent;
25
+ }
26
+ /** Structural declaration only; neither UTF8 nor plaintext/authority proof. */
27
+ export declare const unindexedMarkdownPayloadV1: Codec<UnindexedMarkdownPayloadV1>;
28
+ export type RuntimeText = string | number;
29
+ export type UnindexedMarkdownPut = {
30
+ kind: "unindexed_markdown_put";
31
+ id: Uuid;
32
+ path: string;
33
+ payload: UnindexedMarkdownPayloadV1;
34
+ expected?: UnindexedMarkdownPayloadV1;
35
+ };
36
+ export type RecordToUnindexedMarkdown = {
37
+ kind: "record_to_unindexed_markdown";
38
+ id: Uuid;
39
+ path: string;
40
+ payload: UnindexedMarkdownPayloadV1;
41
+ priorRevision: Hash;
42
+ };
43
+ export type UnindexedMarkdownToRecord = {
44
+ kind: "unindexed_markdown_to_record";
45
+ id: Uuid;
46
+ path: string;
47
+ doc: RuntimeText;
48
+ prior: UnindexedMarkdownPayloadV1;
49
+ };
50
+ export type OrdinaryFileToRecord = {
51
+ kind: "ordinary_file_to_record";
52
+ id: Uuid;
53
+ path: string;
54
+ doc: RuntimeText;
55
+ prior: FileContent;
56
+ };
57
+ export type OrdinaryAttachmentContinuation = {
58
+ kind: "ordinary_attachment_continuation";
59
+ id: Uuid;
60
+ path: string;
61
+ content: AttachmentContentV1;
62
+ prior: FileContent;
63
+ };
64
+ type ExtendedOp = OrdinaryAttachmentContinuation | FileAttach | UnindexedMarkdownPut | RecordToUnindexedMarkdown | UnindexedMarkdownToRecord | OrdinaryFileToRecord;
65
+ export type RuntimeOp = Op | ExtendedOp;
66
+ export declare const runtimeOp: Codec<RuntimeOp>;
67
+ export type RuntimeMutation = Omit<Mutation, "ops"> & {
68
+ ops: RuntimeOp[];
69
+ };
70
+ /** Canonical parent keys unchanged; only the explicit operation family differs. */
71
+ export declare const runtimeMutation: Codec<RuntimeMutation>;
@@ -0,0 +1,71 @@
1
+ import { SchemaError, b16, b32, either, enumOf, hash, list, struct, tstr, uint, union, uuid } from "./codec.js";
2
+ import { blobRef, conflictMode, op, opClock } from "./wire.js";
3
+ import { attachmentContentV1 } from "./attachment-wire.js";
4
+ export { attachmentContentV1, attachmentRefV1 } from "./attachment-wire.js";
5
+ /** Closed content union; unknown envelopes never become BlobRefs. */
6
+ export const fileContent = {
7
+ name: "file-content",
8
+ enc: v => v.form === "blob" ? blobRef.enc(v.blob) : attachmentContentV1.enc(v.content),
9
+ dec: c => Array.isArray(c) ? { form: "attachment", content: attachmentContentV1.dec(c) }
10
+ : { form: "blob", blob: blobRef.dec(c) },
11
+ };
12
+ function payloadSize(v) {
13
+ return v.content.form === "blob" ? v.content.blob.size : v.content.content.totalPlainBytes;
14
+ }
15
+ /** Structural declaration only; neither UTF8 nor plaintext/authority proof. */
16
+ export const unindexedMarkdownPayloadV1 = {
17
+ name: "unindexed-markdown-payload-v1",
18
+ enc: v => {
19
+ if (payloadSize(v) <= 1_048_576)
20
+ throw new SchemaError("unindexed-markdown-payload-v1", "declared size must exceed record cap");
21
+ return [2, 1, 1, fileContent.enc(v.content)];
22
+ },
23
+ dec: c => {
24
+ const name = "unindexed-markdown-payload-v1";
25
+ if (!Array.isArray(c) || c.length !== 4)
26
+ throw new SchemaError(name, "must have exactly four elements");
27
+ if (uint.dec(c[0]) !== 2 || uint.dec(c[1]) !== 1 || uint.dec(c[2]) !== 1)
28
+ throw new SchemaError(name, "unknown discriminator/profile/kind", true);
29
+ const v = { content: fileContent.dec(c[3]) };
30
+ if (payloadSize(v) <= 1_048_576)
31
+ throw new SchemaError(name, "declared size must exceed record cap");
32
+ return v;
33
+ },
34
+ };
35
+ const runtimeText = either("text", tstr, (v) => typeof v === "string", c => typeof c === "string", uint);
36
+ const extendedOp = union("extended-runtime-op", [
37
+ [13, "file_attach", [[1, "id", uuid], [2, "path", tstr], [3, "content", attachmentContentV1], [4, "ifRevision", hash, "opt"], [5, "base", hash, "opt"]]],
38
+ [14, "unindexed_markdown_put", [[1, "id", uuid], [2, "path", tstr], [3, "payload", unindexedMarkdownPayloadV1], [4, "expected", unindexedMarkdownPayloadV1, "opt"]]],
39
+ [15, "record_to_unindexed_markdown", [[1, "id", uuid], [2, "path", tstr], [3, "payload", unindexedMarkdownPayloadV1], [4, "priorRevision", hash]]],
40
+ [16, "unindexed_markdown_to_record", [[1, "id", uuid], [2, "path", tstr], [3, "doc", runtimeText], [4, "prior", unindexedMarkdownPayloadV1]]],
41
+ [18, "ordinary_attachment_continuation", [[1, "id", uuid], [2, "path", tstr], [3, "content", attachmentContentV1], [4, "prior", fileContent]]],
42
+ [17, "ordinary_file_to_record", [[1, "id", uuid], [2, "path", tstr], [3, "doc", runtimeText], [4, "prior", fileContent]]],
43
+ ]);
44
+ function extended(v) {
45
+ return v.kind === "ordinary_attachment_continuation" || v.kind === "file_attach" || v.kind === "unindexed_markdown_put" || v.kind === "record_to_unindexed_markdown"
46
+ || v.kind === "unindexed_markdown_to_record" || v.kind === "ordinary_file_to_record";
47
+ }
48
+ export const runtimeOp = {
49
+ name: "runtime-v1-op",
50
+ enc: v => extended(v) ? extendedOp.enc(v) : op.enc(v),
51
+ dec: c => {
52
+ const tag = c instanceof Map ? uint.dec(c.get(0)) : undefined;
53
+ return tag !== undefined && tag >= 13 && tag <= 18 ? extendedOp.dec(c) : op.dec(c);
54
+ },
55
+ };
56
+ // The legacy wire exports the pending-evidence codec, which delegates to this
57
+ // family. Delay its value references so either module may be imported first.
58
+ function deferred(name, codec) {
59
+ return { name, enc: v => codec().enc(v), dec: c => codec().dec(c) };
60
+ }
61
+ /** Canonical parent keys unchanged; only the explicit operation family differs. */
62
+ export const runtimeMutation = struct("runtime-v1-mutation", [
63
+ [0, "id", uuid], [1, "origin", uuid], [2, "baseSeq", uint],
64
+ [3, "clock", deferred("op-clock", () => opClock)],
65
+ [4, "seed", b32], [5, "source", enumOf("source", ["api", "external"])],
66
+ [6, "ops", list(runtimeOp, { nonEmpty: true }), "req1"],
67
+ [7, "onBehalf", uuid, "opt"], [8, "conflictMode", deferred("conflict-mode", () => conflictMode), "opt"],
68
+ [9, "validatedAt", enumOf("level", ["off", "warn", "error"]), "opt"],
69
+ [10, "room", struct("room-checkpoint", [[0, "stream", b16], [1, "state", hash]]), "opt"],
70
+ ]);
71
+ //# sourceMappingURL=runtime-wire.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-wire.js","sourceRoot":"","sources":["../src/runtime-wire.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import type { MdbaseClient, RecordRef } from "./client.js";
2
+ import type { Include, Issue, QueryResult, ViewSource, ViewSourceDocument } from "./wire.js";
3
+ export declare const SAVED_VIEW_CONTRACT: Readonly<{
4
+ id: "mdbase.view";
5
+ version: "1.0.0";
6
+ }>;
7
+ export interface ListViewsResult {
8
+ sources: ViewSource[];
9
+ diagnostics: Issue[];
10
+ complete: boolean;
11
+ }
12
+ export interface ExecuteViewOptions {
13
+ context?: RecordRef;
14
+ limit?: number;
15
+ offset?: number;
16
+ timezone?: string;
17
+ include?: Include;
18
+ signal?: AbortSignal;
19
+ }
20
+ type Client = Pick<MdbaseClient, "queryContract" | "getContract" | "get" | "query">;
21
+ /** Every `mdbase.view` source, ascending by path, then source-defined view order.
22
+ * A collection without the contract has no saved views. Invalid sources become
23
+ * warnings, never a partial descriptor. */
24
+ export declare function listSavedViews(client: Client, folder?: string, signal?: AbortSignal): Promise<ListViewsResult>;
25
+ /** Spec 11 named-view resolution, then one ordinary native query page. */
26
+ export declare function executeSavedView(client: Client, source: RecordRef, viewId: string, o?: ExecuteViewOptions): Promise<QueryResult>;
27
+ /** The complete current source document of one `mdbase.view` record. */
28
+ export declare function readSavedViewSource(client: Client, source: RecordRef, signal?: AbortSignal): Promise<ViewSourceDocument>;
29
+ export {};
@@ -0,0 +1,171 @@
1
+ import { isMdbaseError, mdbaseError } from "./errors.js";
2
+ export const SAVED_VIEW_CONTRACT = Object.freeze({ id: "mdbase.view", version: "1.0.0" });
3
+ const map = (v) => v instanceof Map ? v : undefined;
4
+ const text = (v) => typeof v === "string" ? v : undefined;
5
+ const warning = (code, message, path) => ({ code, severity: "warning", message, details: new Map([["path", path]]) });
6
+ const notFound = (e, path) => {
7
+ if (isMdbaseError(e, "not_found"))
8
+ throw mdbaseError("not_found", `saved view source '${path}' was not found`, "view_not_found");
9
+ throw e;
10
+ };
11
+ const refPath = (ref) => typeof ref === "string" ? ref : ref.path;
12
+ function properties(record, view) {
13
+ const metadata = map(record.get("properties"));
14
+ const out = [];
15
+ const select = Array.isArray(view.get("select")) ? view.get("select") : [];
16
+ for (const selection of select) {
17
+ const object = map(selection);
18
+ const selector = text(selection);
19
+ const key = object ? text(object.get("name")) : selector?.slice(selector.lastIndexOf(".") + 1);
20
+ if (!key)
21
+ continue;
22
+ const meta = map(metadata?.get(object || !selector ? key : selector)) ?? map(metadata?.get(key));
23
+ const property = { key };
24
+ const label = text(object?.get("label")) ?? text(meta?.get("label"));
25
+ const description = text(object?.get("description")) ?? text(meta?.get("description"));
26
+ const format = text(meta?.get("format")), hidden = meta?.get("hidden");
27
+ if (label !== undefined)
28
+ property.label = label;
29
+ if (description !== undefined)
30
+ property.description = description;
31
+ if (format !== undefined)
32
+ property.format = format;
33
+ if (typeof hidden === "boolean")
34
+ property.hidden = hidden;
35
+ out.push(property);
36
+ }
37
+ return out;
38
+ }
39
+ /** Every `mdbase.view` source, ascending by path, then source-defined view order.
40
+ * A collection without the contract has no saved views. Invalid sources become
41
+ * warnings, never a partial descriptor. */
42
+ export async function listSavedViews(client, folder, signal) {
43
+ const sources = [], diagnostics = [];
44
+ const prefix = folder ? folder.replace(/\/?$/, "/") : "";
45
+ let cursor, complete = true;
46
+ do {
47
+ let page;
48
+ try {
49
+ page = await client.queryContract(SAVED_VIEW_CONTRACT, { ...(cursor ? { cursor } : {}), ...(signal ? { signal } : {}) });
50
+ }
51
+ catch (e) {
52
+ if (isMdbaseError(e, "not_found") && e.reason === "data_contract_not_found")
53
+ return { sources, diagnostics, complete: true };
54
+ throw e;
55
+ }
56
+ complete &&= page.page.complete;
57
+ page.records.forEach((contract, i) => {
58
+ const record = page.page.records[i];
59
+ if (!record.path.startsWith(prefix))
60
+ return;
61
+ const projection = contract.implementations[0];
62
+ const invalid = projection?.issues.find(issue => issue.severity === "error");
63
+ if (!projection || invalid) {
64
+ diagnostics.push(warning("invalid_view", invalid?.message ?? "View record does not implement mdbase.view.", record.path));
65
+ return;
66
+ }
67
+ const fields = projection.fields, views = [], ids = new Set();
68
+ for (const item of Array.isArray(fields.get("views")) ? fields.get("views") : []) {
69
+ const view = map(item), id = text(view?.get("id")), name = text(view?.get("name"));
70
+ if (!view || !id || !name)
71
+ continue;
72
+ if (ids.has(id)) {
73
+ diagnostics.push(warning("invalid_view", "View record contains duplicate named-view IDs.", record.path));
74
+ return;
75
+ }
76
+ ids.add(id);
77
+ const descriptor = { id, name, properties: properties(fields, view) };
78
+ if (view.has("presentation"))
79
+ descriptor.presentation = view.get("presentation");
80
+ views.push(descriptor);
81
+ }
82
+ sources.push({
83
+ record: record.id,
84
+ id: text(fields.get("id")) ?? record.path,
85
+ name: text(fields.get("name")) ?? record.path,
86
+ source: { path: record.path, format: SAVED_VIEW_CONTRACT.id, revision: record.revision, writable: true },
87
+ views,
88
+ });
89
+ });
90
+ cursor = page.page.cursor;
91
+ } while (cursor);
92
+ sources.sort((a, b) => a.source.path < b.source.path ? -1 : a.source.path > b.source.path ? 1 : 0);
93
+ return { sources, diagnostics, complete };
94
+ }
95
+ /** Spec 11 named-view resolution, then one ordinary native query page. */
96
+ export async function executeSavedView(client, source, viewId, o = {}) {
97
+ const signal = o.signal;
98
+ const record = await client.getContract(source, SAVED_VIEW_CONTRACT, signal).catch(e => notFound(e, refPath(source)));
99
+ const fields = record.fields, path = record.path;
100
+ const views = Array.isArray(fields.get("views")) ? fields.get("views").map(map) : [];
101
+ const ids = views.map(view => text(view?.get("id")));
102
+ if (new Set(ids).size !== ids.length)
103
+ throw mdbaseError("invalid_request", "View record contains duplicate named-view IDs.", "invalid_view");
104
+ const view = views[ids.indexOf(viewId)];
105
+ if (!view)
106
+ throw mdbaseError("not_found", `named view '${viewId}' was not found`, "view_not_found");
107
+ const shared = map(fields.get("query")) ?? new Map();
108
+ const query = new Map();
109
+ const types = view.get("types") ?? shared.get("types");
110
+ if (types !== undefined)
111
+ query.set("types", types);
112
+ const wheres = [text(shared.get("where")), text(view.get("where"))].filter((w) => !!w);
113
+ if (wheres.length)
114
+ query.set("where", wheres.length === 2 ? `(${wheres[0]}) && (${wheres[1]})` : wheres[0]);
115
+ const projections = new Map(map(shared.get("projections")));
116
+ for (const [name, definition] of map(view.get("projections")) ?? []) {
117
+ const existing = projections.get(name);
118
+ if (existing !== undefined && canonical(existing) !== canonical(definition))
119
+ throw mdbaseError("invalid_request", `Projection '${name}' has conflicting definitions.`, "invalid_view");
120
+ projections.set(name, definition);
121
+ }
122
+ if (projections.size)
123
+ query.set("projections", projections);
124
+ for (const key of ["select", "order_by", "group_by", "summaries", "limit", "offset", "include_body", "frontmatter_mode"])
125
+ if (view.has(key))
126
+ query.set(key, view.get(key));
127
+ if (fields.has("summary_functions"))
128
+ query.set("summary_functions", fields.get("summary_functions"));
129
+ if (o.limit !== undefined)
130
+ query.set("limit", o.limit);
131
+ if (o.offset !== undefined)
132
+ query.set("offset", o.offset);
133
+ if (o.timezone !== undefined)
134
+ query.set("timezone", o.timezone);
135
+ const declaration = map(map(view.get("context") ?? shared.get("context"))?.get("this"));
136
+ const onMissing = text(declaration?.get("on_missing")) ?? "view";
137
+ let context = o.context;
138
+ if (context === undefined && onMissing === "error")
139
+ throw mdbaseError("invalid_request", "This named view requires an invocation context.", "context_required");
140
+ if (context === undefined && onMissing === "view")
141
+ context = { path };
142
+ if (context !== undefined) {
143
+ const required = Array.isArray(declaration?.get("types")) ? declaration.get("types").filter((t) => typeof t === "string") : [];
144
+ let contextPath = typeof context === "string" ? undefined : context.path;
145
+ if (required.length || contextPath === undefined) {
146
+ const bound = await client.get(context, undefined, signal);
147
+ contextPath = bound.path;
148
+ if (required.length && !bound.types.some(t => required.some(r => r.toLowerCase() === t.toLowerCase())))
149
+ throw mdbaseError("invalid_request", "The invocation context does not match an allowed context type.", "context_type_mismatch");
150
+ }
151
+ query.set("context", new Map([["this", new Map([["path", contextPath]])]]));
152
+ }
153
+ const result = await client.query(query, o.include, signal);
154
+ return { ...result, view: { path, view: viewId } };
155
+ }
156
+ /** The complete current source document of one `mdbase.view` record. */
157
+ export async function readSavedViewSource(client, source, signal) {
158
+ const contract = await client.getContract(source, SAVED_VIEW_CONTRACT, signal).catch(e => notFound(e, refPath(source)));
159
+ const record = await client.get(contract.id, { document: true }, signal);
160
+ if (record.revision !== contract.revision || typeof record.document !== "string")
161
+ throw mdbaseError("unavailable", "saved view source changed while it was read", "view_source_changed");
162
+ return { path: record.path, format: SAVED_VIEW_CONTRACT.id, revision: record.revision, document: record.document, record: record.id };
163
+ }
164
+ function canonical(v) {
165
+ if (v instanceof Map)
166
+ return `{${[...v].map(([k, x]) => [JSON.stringify(String(k)), canonical(x)]).sort((a, b) => a[0] < b[0] ? -1 : 1).map(([k, x]) => `${k}:${x}`).join(",")}}`;
167
+ if (Array.isArray(v))
168
+ return `[${v.map(canonical).join(",")}]`;
169
+ return typeof v === "bigint" ? `${v}n` : JSON.stringify(v instanceof Uint8Array ? [...v] : v);
170
+ }
171
+ //# sourceMappingURL=saved-views.js.map