@dxos/protocols 0.8.4-main.5ea62a8 → 0.8.4-main.66e292d

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 (316) hide show
  1. package/dist/src/FunctionProtocol.d.ts +76 -0
  2. package/dist/src/FunctionProtocol.d.ts.map +1 -0
  3. package/dist/src/FunctionProtocol.js +4 -0
  4. package/dist/src/FunctionProtocol.js.map +1 -0
  5. package/dist/src/automerge.d.ts +8 -0
  6. package/dist/src/automerge.d.ts.map +1 -1
  7. package/dist/src/automerge.js.map +1 -1
  8. package/dist/src/buf/proto/gen/dxos/agent/dashboard_pb.d.ts +1 -1
  9. package/dist/src/buf/proto/gen/dxos/agent/dashboard_pb.js +1 -1
  10. package/dist/src/buf/proto/gen/dxos/agent/echo-proxy_pb.d.ts +1 -1
  11. package/dist/src/buf/proto/gen/dxos/agent/echo-proxy_pb.js +1 -1
  12. package/dist/src/buf/proto/gen/dxos/agent/epoch_pb.d.ts +1 -1
  13. package/dist/src/buf/proto/gen/dxos/agent/epoch_pb.js +1 -1
  14. package/dist/src/buf/proto/gen/dxos/agent/functions_pb.d.ts +1 -1
  15. package/dist/src/buf/proto/gen/dxos/agent/functions_pb.js +1 -1
  16. package/dist/src/buf/proto/gen/dxos/bot_pb.d.ts +1 -1
  17. package/dist/src/buf/proto/gen/dxos/bot_pb.js +1 -1
  18. package/dist/src/buf/proto/gen/dxos/client/invitation_pb.d.ts +1 -1
  19. package/dist/src/buf/proto/gen/dxos/client/invitation_pb.js +1 -1
  20. package/dist/src/buf/proto/gen/dxos/client/logging_pb.d.ts +1 -1
  21. package/dist/src/buf/proto/gen/dxos/client/logging_pb.js +1 -1
  22. package/dist/src/buf/proto/gen/dxos/client/services_pb.d.ts +65 -19
  23. package/dist/src/buf/proto/gen/dxos/client/services_pb.d.ts.map +1 -1
  24. package/dist/src/buf/proto/gen/dxos/client/services_pb.js +28 -23
  25. package/dist/src/buf/proto/gen/dxos/client/services_pb.js.map +1 -1
  26. package/dist/src/buf/proto/gen/dxos/config_pb.d.ts +1 -1
  27. package/dist/src/buf/proto/gen/dxos/config_pb.js +1 -1
  28. package/dist/src/buf/proto/gen/dxos/devtools/diagnostics_pb.d.ts +1 -1
  29. package/dist/src/buf/proto/gen/dxos/devtools/diagnostics_pb.js +1 -1
  30. package/dist/src/buf/proto/gen/dxos/devtools/host_pb.d.ts +1 -1
  31. package/dist/src/buf/proto/gen/dxos/devtools/host_pb.js +1 -1
  32. package/dist/src/buf/proto/gen/dxos/devtools/swarm_pb.d.ts +1 -1
  33. package/dist/src/buf/proto/gen/dxos/devtools/swarm_pb.js +1 -1
  34. package/dist/src/buf/proto/gen/dxos/echo/blob_pb.d.ts +1 -1
  35. package/dist/src/buf/proto/gen/dxos/echo/blob_pb.js +1 -1
  36. package/dist/src/buf/proto/gen/dxos/echo/feed_pb.d.ts +1 -1
  37. package/dist/src/buf/proto/gen/dxos/echo/feed_pb.js +1 -1
  38. package/dist/src/buf/proto/gen/dxos/echo/filter_pb.d.ts +1 -1
  39. package/dist/src/buf/proto/gen/dxos/echo/filter_pb.js +1 -1
  40. package/dist/src/buf/proto/gen/dxos/echo/indexing_pb.d.ts +1 -1
  41. package/dist/src/buf/proto/gen/dxos/echo/indexing_pb.js +1 -1
  42. package/dist/src/buf/proto/gen/dxos/echo/metadata_pb.d.ts +1 -1
  43. package/dist/src/buf/proto/gen/dxos/echo/metadata_pb.js +1 -1
  44. package/dist/src/buf/proto/gen/dxos/echo/model/document_pb.d.ts +1 -1
  45. package/dist/src/buf/proto/gen/dxos/echo/model/document_pb.js +1 -1
  46. package/dist/src/buf/proto/gen/dxos/echo/model/messenger_pb.d.ts +1 -1
  47. package/dist/src/buf/proto/gen/dxos/echo/model/messenger_pb.js +1 -1
  48. package/dist/src/buf/proto/gen/dxos/echo/model/text_pb.d.ts +1 -1
  49. package/dist/src/buf/proto/gen/dxos/echo/model/text_pb.js +1 -1
  50. package/dist/src/buf/proto/gen/dxos/echo/object_pb.d.ts +1 -1
  51. package/dist/src/buf/proto/gen/dxos/echo/object_pb.js +1 -1
  52. package/dist/src/buf/proto/gen/dxos/echo/query_pb.d.ts +1 -1
  53. package/dist/src/buf/proto/gen/dxos/echo/query_pb.js +1 -1
  54. package/dist/src/buf/proto/gen/dxos/echo/service_pb.d.ts +16 -1
  55. package/dist/src/buf/proto/gen/dxos/echo/service_pb.d.ts.map +1 -1
  56. package/dist/src/buf/proto/gen/dxos/echo/service_pb.js +2 -2
  57. package/dist/src/buf/proto/gen/dxos/echo/service_pb.js.map +1 -1
  58. package/dist/src/buf/proto/gen/dxos/echo/snapshot_pb.d.ts +1 -1
  59. package/dist/src/buf/proto/gen/dxos/echo/snapshot_pb.js +1 -1
  60. package/dist/src/buf/proto/gen/dxos/echo/timeframe_pb.d.ts +1 -1
  61. package/dist/src/buf/proto/gen/dxos/echo/timeframe_pb.js +1 -1
  62. package/dist/src/buf/proto/gen/dxos/edge/calls_pb.d.ts +1 -1
  63. package/dist/src/buf/proto/gen/dxos/edge/calls_pb.js +1 -1
  64. package/dist/src/buf/proto/gen/dxos/edge/messenger_pb.d.ts +1 -1
  65. package/dist/src/buf/proto/gen/dxos/edge/messenger_pb.js +1 -1
  66. package/dist/src/buf/proto/gen/dxos/edge/signal_pb.d.ts +1 -1
  67. package/dist/src/buf/proto/gen/dxos/edge/signal_pb.js +1 -1
  68. package/dist/src/buf/proto/gen/dxos/error_pb.d.ts +1 -1
  69. package/dist/src/buf/proto/gen/dxos/error_pb.js +1 -1
  70. package/dist/src/buf/proto/gen/dxos/field_options_pb.d.ts +1 -1
  71. package/dist/src/buf/proto/gen/dxos/field_options_pb.js +1 -1
  72. package/dist/src/buf/proto/gen/dxos/google_pb.d.ts +1 -1
  73. package/dist/src/buf/proto/gen/dxos/google_pb.js +2 -2
  74. package/dist/src/buf/proto/gen/dxos/gravity_pb.d.ts +1 -1
  75. package/dist/src/buf/proto/gen/dxos/gravity_pb.js +1 -1
  76. package/dist/src/buf/proto/gen/dxos/halo/credentials/auth_pb.d.ts +1 -1
  77. package/dist/src/buf/proto/gen/dxos/halo/credentials/auth_pb.js +1 -1
  78. package/dist/src/buf/proto/gen/dxos/halo/credentials/greet_pb.d.ts +1 -1
  79. package/dist/src/buf/proto/gen/dxos/halo/credentials/greet_pb.js +1 -1
  80. package/dist/src/buf/proto/gen/dxos/halo/credentials/identity_pb.d.ts +1 -1
  81. package/dist/src/buf/proto/gen/dxos/halo/credentials/identity_pb.js +1 -1
  82. package/dist/src/buf/proto/gen/dxos/halo/credentials_pb.d.ts +1 -1
  83. package/dist/src/buf/proto/gen/dxos/halo/credentials_pb.js +1 -1
  84. package/dist/src/buf/proto/gen/dxos/halo/invitations_pb.d.ts +1 -1
  85. package/dist/src/buf/proto/gen/dxos/halo/invitations_pb.js +1 -1
  86. package/dist/src/buf/proto/gen/dxos/halo/keyring_pb.d.ts +1 -1
  87. package/dist/src/buf/proto/gen/dxos/halo/keyring_pb.js +1 -1
  88. package/dist/src/buf/proto/gen/dxos/halo/keys_pb.d.ts +1 -1
  89. package/dist/src/buf/proto/gen/dxos/halo/keys_pb.js +1 -1
  90. package/dist/src/buf/proto/gen/dxos/halo/signed_pb.d.ts +1 -1
  91. package/dist/src/buf/proto/gen/dxos/halo/signed_pb.js +1 -1
  92. package/dist/src/buf/proto/gen/dxos/iframe_pb.d.ts +1 -1
  93. package/dist/src/buf/proto/gen/dxos/iframe_pb.js +1 -1
  94. package/dist/src/buf/proto/gen/dxos/keys_pb.d.ts +1 -1
  95. package/dist/src/buf/proto/gen/dxos/keys_pb.js +1 -1
  96. package/dist/src/buf/proto/gen/dxos/mesh/bridge_pb.d.ts +1 -1
  97. package/dist/src/buf/proto/gen/dxos/mesh/bridge_pb.js +1 -1
  98. package/dist/src/buf/proto/gen/dxos/mesh/broadcast_pb.d.ts +1 -1
  99. package/dist/src/buf/proto/gen/dxos/mesh/broadcast_pb.js +1 -1
  100. package/dist/src/buf/proto/gen/dxos/mesh/messaging_pb.d.ts +1 -1
  101. package/dist/src/buf/proto/gen/dxos/mesh/messaging_pb.js +1 -1
  102. package/dist/src/buf/proto/gen/dxos/mesh/muxer_pb.d.ts +1 -1
  103. package/dist/src/buf/proto/gen/dxos/mesh/muxer_pb.js +1 -1
  104. package/dist/src/buf/proto/gen/dxos/mesh/presence_pb.d.ts +1 -1
  105. package/dist/src/buf/proto/gen/dxos/mesh/presence_pb.js +1 -1
  106. package/dist/src/buf/proto/gen/dxos/mesh/protocol_pb.d.ts +1 -1
  107. package/dist/src/buf/proto/gen/dxos/mesh/protocol_pb.js +1 -1
  108. package/dist/src/buf/proto/gen/dxos/mesh/replicator_pb.d.ts +1 -1
  109. package/dist/src/buf/proto/gen/dxos/mesh/replicator_pb.js +1 -1
  110. package/dist/src/buf/proto/gen/dxos/mesh/signal_pb.d.ts +1 -1
  111. package/dist/src/buf/proto/gen/dxos/mesh/signal_pb.js +1 -1
  112. package/dist/src/buf/proto/gen/dxos/mesh/swarm_pb.d.ts +1 -1
  113. package/dist/src/buf/proto/gen/dxos/mesh/swarm_pb.js +1 -1
  114. package/dist/src/buf/proto/gen/dxos/mesh/teleport/admission-discovery_pb.d.ts +1 -1
  115. package/dist/src/buf/proto/gen/dxos/mesh/teleport/admission-discovery_pb.js +1 -1
  116. package/dist/src/buf/proto/gen/dxos/mesh/teleport/auth_pb.d.ts +1 -1
  117. package/dist/src/buf/proto/gen/dxos/mesh/teleport/auth_pb.js +1 -1
  118. package/dist/src/buf/proto/gen/dxos/mesh/teleport/automerge_pb.d.ts +1 -1
  119. package/dist/src/buf/proto/gen/dxos/mesh/teleport/automerge_pb.js +1 -1
  120. package/dist/src/buf/proto/gen/dxos/mesh/teleport/blobsync_pb.d.ts +1 -1
  121. package/dist/src/buf/proto/gen/dxos/mesh/teleport/blobsync_pb.js +1 -1
  122. package/dist/src/buf/proto/gen/dxos/mesh/teleport/control_pb.d.ts +1 -1
  123. package/dist/src/buf/proto/gen/dxos/mesh/teleport/control_pb.js +1 -1
  124. package/dist/src/buf/proto/gen/dxos/mesh/teleport/gossip_pb.d.ts +1 -1
  125. package/dist/src/buf/proto/gen/dxos/mesh/teleport/gossip_pb.js +1 -1
  126. package/dist/src/buf/proto/gen/dxos/mesh/teleport/notarization_pb.d.ts +1 -1
  127. package/dist/src/buf/proto/gen/dxos/mesh/teleport/notarization_pb.js +1 -1
  128. package/dist/src/buf/proto/gen/dxos/mesh/teleport/replicator_pb.d.ts +1 -1
  129. package/dist/src/buf/proto/gen/dxos/mesh/teleport/replicator_pb.js +1 -1
  130. package/dist/src/buf/proto/gen/dxos/registry_pb.d.ts +1 -1
  131. package/dist/src/buf/proto/gen/dxos/registry_pb.js +1 -1
  132. package/dist/src/buf/proto/gen/dxos/rpc_pb.d.ts +1 -1
  133. package/dist/src/buf/proto/gen/dxos/rpc_pb.js +1 -1
  134. package/dist/src/buf/proto/gen/dxos/service/agentmanager_pb.d.ts +1 -1
  135. package/dist/src/buf/proto/gen/dxos/service/agentmanager_pb.js +1 -1
  136. package/dist/src/buf/proto/gen/dxos/service/publisher_pb.d.ts +1 -1
  137. package/dist/src/buf/proto/gen/dxos/service/publisher_pb.js +1 -1
  138. package/dist/src/buf/proto/gen/dxos/service/supervisor_pb.d.ts +1 -1
  139. package/dist/src/buf/proto/gen/dxos/service/supervisor_pb.js +1 -1
  140. package/dist/src/buf/proto/gen/dxos/service/tunnel_pb.d.ts +1 -1
  141. package/dist/src/buf/proto/gen/dxos/service/tunnel_pb.js +1 -1
  142. package/dist/src/buf/proto/gen/dxos/tracing_pb.d.ts +1 -1
  143. package/dist/src/buf/proto/gen/dxos/tracing_pb.js +2 -2
  144. package/dist/src/buf/proto/gen/dxos/type_pb.d.ts +1 -1
  145. package/dist/src/buf/proto/gen/dxos/type_pb.js +1 -1
  146. package/dist/src/buf/proto/gen/dxos/value_pb.d.ts +1 -1
  147. package/dist/src/buf/proto/gen/dxos/value_pb.js +1 -1
  148. package/dist/src/buf/proto/gen/example/testing/data_pb.d.ts +1 -1
  149. package/dist/src/buf/proto/gen/example/testing/data_pb.js +1 -1
  150. package/dist/src/buf/proto/gen/example/testing/rpc_pb.d.ts +1 -1
  151. package/dist/src/buf/proto/gen/example/testing/rpc_pb.js +1 -1
  152. package/dist/src/edge/EdgeFunctionEnv.d.ts +95 -0
  153. package/dist/src/edge/EdgeFunctionEnv.d.ts.map +1 -0
  154. package/dist/src/edge/EdgeFunctionEnv.js +4 -0
  155. package/dist/src/edge/EdgeFunctionEnv.js.map +1 -0
  156. package/dist/src/{edge.d.ts → edge/edge.d.ts} +107 -11
  157. package/dist/src/edge/edge.d.ts.map +1 -0
  158. package/dist/src/edge/edge.js +155 -0
  159. package/dist/src/edge/edge.js.map +1 -0
  160. package/dist/src/edge/errors.d.ts +29 -0
  161. package/dist/src/edge/errors.d.ts.map +1 -0
  162. package/dist/src/edge/errors.js +69 -0
  163. package/dist/src/edge/errors.js.map +1 -0
  164. package/dist/src/edge/index.d.ts +4 -0
  165. package/dist/src/edge/index.d.ts.map +1 -0
  166. package/dist/src/edge/index.js +7 -0
  167. package/dist/src/edge/index.js.map +1 -0
  168. package/dist/src/errors/base-errors.d.ts +92 -8
  169. package/dist/src/errors/base-errors.d.ts.map +1 -1
  170. package/dist/src/errors/base-errors.js +4 -20
  171. package/dist/src/errors/base-errors.js.map +1 -1
  172. package/dist/src/errors/encoding.d.ts +1 -1
  173. package/dist/src/errors/encoding.d.ts.map +1 -1
  174. package/dist/src/errors/errors.d.ts +662 -41
  175. package/dist/src/errors/errors.d.ts.map +1 -1
  176. package/dist/src/errors/errors.js +29 -83
  177. package/dist/src/errors/errors.js.map +1 -1
  178. package/dist/src/errors/errors.test.js +1 -1
  179. package/dist/src/errors/errors.test.js.map +1 -1
  180. package/dist/src/errors/helpers.d.ts +8 -4
  181. package/dist/src/errors/helpers.d.ts.map +1 -1
  182. package/dist/src/errors/helpers.js +3 -3
  183. package/dist/src/errors/helpers.js.map +1 -1
  184. package/dist/src/feed-replication.d.ts.map +1 -1
  185. package/dist/src/index.d.ts +8 -7
  186. package/dist/src/index.d.ts.map +1 -1
  187. package/dist/src/index.js +9 -6
  188. package/dist/src/index.js.map +1 -1
  189. package/dist/src/indexing.d.ts +1 -1
  190. package/dist/src/indexing.d.ts.map +1 -1
  191. package/dist/src/indexing.js +1 -1
  192. package/dist/src/indexing.js.map +1 -1
  193. package/dist/src/invitation.d.ts +1 -1
  194. package/dist/src/invitation.d.ts.map +1 -1
  195. package/dist/src/invitation.js +1 -1
  196. package/dist/src/invitation.js.map +1 -1
  197. package/dist/src/messenger.d.ts +16 -0
  198. package/dist/src/messenger.d.ts.map +1 -0
  199. package/dist/src/messenger.js +4 -0
  200. package/dist/src/messenger.js.map +1 -0
  201. package/dist/src/proto/gen/dxos/client/services.d.ts +30 -3
  202. package/dist/src/proto/gen/dxos/client/services.d.ts.map +1 -1
  203. package/dist/src/proto/gen/dxos/client/services.js +9 -6
  204. package/dist/src/proto/gen/dxos/client/services.js.map +1 -1
  205. package/dist/src/proto/gen/dxos/echo/service.d.ts +9 -0
  206. package/dist/src/proto/gen/dxos/echo/service.d.ts.map +1 -1
  207. package/dist/src/proto/gen/index.d.ts +1 -0
  208. package/dist/src/proto/gen/index.d.ts.map +1 -1
  209. package/dist/src/proto/gen/index.js +1 -1
  210. package/dist/src/proto/gen/index.js.map +1 -1
  211. package/dist/src/queue.d.ts +13 -0
  212. package/dist/src/queue.d.ts.map +1 -1
  213. package/dist/src/queue.js +4 -0
  214. package/dist/src/queue.js.map +1 -1
  215. package/dist/tsconfig.tsbuildinfo +1 -1
  216. package/package.json +13 -16
  217. package/src/FunctionProtocol.ts +100 -0
  218. package/src/automerge.ts +8 -0
  219. package/src/buf/proto/gen/dxos/agent/dashboard_pb.ts +3 -3
  220. package/src/buf/proto/gen/dxos/agent/echo-proxy_pb.ts +3 -3
  221. package/src/buf/proto/gen/dxos/agent/epoch_pb.ts +3 -3
  222. package/src/buf/proto/gen/dxos/agent/functions_pb.ts +3 -3
  223. package/src/buf/proto/gen/dxos/bot_pb.ts +3 -3
  224. package/src/buf/proto/gen/dxos/client/invitation_pb.ts +3 -3
  225. package/src/buf/proto/gen/dxos/client/logging_pb.ts +3 -3
  226. package/src/buf/proto/gen/dxos/client/services_pb.ts +84 -29
  227. package/src/buf/proto/gen/dxos/config_pb.ts +3 -3
  228. package/src/buf/proto/gen/dxos/devtools/diagnostics_pb.ts +3 -3
  229. package/src/buf/proto/gen/dxos/devtools/host_pb.ts +3 -3
  230. package/src/buf/proto/gen/dxos/devtools/swarm_pb.ts +3 -3
  231. package/src/buf/proto/gen/dxos/echo/blob_pb.ts +3 -3
  232. package/src/buf/proto/gen/dxos/echo/feed_pb.ts +3 -3
  233. package/src/buf/proto/gen/dxos/echo/filter_pb.ts +3 -3
  234. package/src/buf/proto/gen/dxos/echo/indexing_pb.ts +3 -3
  235. package/src/buf/proto/gen/dxos/echo/metadata_pb.ts +3 -3
  236. package/src/buf/proto/gen/dxos/echo/model/document_pb.ts +3 -3
  237. package/src/buf/proto/gen/dxos/echo/model/messenger_pb.ts +3 -3
  238. package/src/buf/proto/gen/dxos/echo/model/text_pb.ts +3 -3
  239. package/src/buf/proto/gen/dxos/echo/object_pb.ts +3 -3
  240. package/src/buf/proto/gen/dxos/echo/query_pb.ts +3 -3
  241. package/src/buf/proto/gen/dxos/echo/service_pb.ts +21 -4
  242. package/src/buf/proto/gen/dxos/echo/snapshot_pb.ts +3 -3
  243. package/src/buf/proto/gen/dxos/echo/timeframe_pb.ts +3 -3
  244. package/src/buf/proto/gen/dxos/edge/calls_pb.ts +3 -3
  245. package/src/buf/proto/gen/dxos/edge/messenger_pb.ts +3 -3
  246. package/src/buf/proto/gen/dxos/edge/signal_pb.ts +3 -3
  247. package/src/buf/proto/gen/dxos/error_pb.ts +3 -3
  248. package/src/buf/proto/gen/dxos/field_options_pb.ts +3 -3
  249. package/src/buf/proto/gen/dxos/google_pb.ts +3 -3
  250. package/src/buf/proto/gen/dxos/gravity_pb.ts +3 -3
  251. package/src/buf/proto/gen/dxos/halo/credentials/auth_pb.ts +3 -3
  252. package/src/buf/proto/gen/dxos/halo/credentials/greet_pb.ts +3 -3
  253. package/src/buf/proto/gen/dxos/halo/credentials/identity_pb.ts +3 -3
  254. package/src/buf/proto/gen/dxos/halo/credentials_pb.ts +3 -3
  255. package/src/buf/proto/gen/dxos/halo/invitations_pb.ts +3 -3
  256. package/src/buf/proto/gen/dxos/halo/keyring_pb.ts +3 -3
  257. package/src/buf/proto/gen/dxos/halo/keys_pb.ts +3 -3
  258. package/src/buf/proto/gen/dxos/halo/signed_pb.ts +3 -3
  259. package/src/buf/proto/gen/dxos/iframe_pb.ts +3 -3
  260. package/src/buf/proto/gen/dxos/keys_pb.ts +3 -3
  261. package/src/buf/proto/gen/dxos/mesh/bridge_pb.ts +3 -3
  262. package/src/buf/proto/gen/dxos/mesh/broadcast_pb.ts +3 -3
  263. package/src/buf/proto/gen/dxos/mesh/messaging_pb.ts +3 -3
  264. package/src/buf/proto/gen/dxos/mesh/muxer_pb.ts +3 -3
  265. package/src/buf/proto/gen/dxos/mesh/presence_pb.ts +3 -3
  266. package/src/buf/proto/gen/dxos/mesh/protocol_pb.ts +3 -3
  267. package/src/buf/proto/gen/dxos/mesh/replicator_pb.ts +3 -3
  268. package/src/buf/proto/gen/dxos/mesh/signal_pb.ts +3 -3
  269. package/src/buf/proto/gen/dxos/mesh/swarm_pb.ts +3 -3
  270. package/src/buf/proto/gen/dxos/mesh/teleport/admission-discovery_pb.ts +3 -3
  271. package/src/buf/proto/gen/dxos/mesh/teleport/auth_pb.ts +3 -3
  272. package/src/buf/proto/gen/dxos/mesh/teleport/automerge_pb.ts +3 -3
  273. package/src/buf/proto/gen/dxos/mesh/teleport/blobsync_pb.ts +3 -3
  274. package/src/buf/proto/gen/dxos/mesh/teleport/control_pb.ts +3 -3
  275. package/src/buf/proto/gen/dxos/mesh/teleport/gossip_pb.ts +3 -3
  276. package/src/buf/proto/gen/dxos/mesh/teleport/notarization_pb.ts +3 -3
  277. package/src/buf/proto/gen/dxos/mesh/teleport/replicator_pb.ts +3 -3
  278. package/src/buf/proto/gen/dxos/registry_pb.ts +3 -3
  279. package/src/buf/proto/gen/dxos/rpc_pb.ts +3 -3
  280. package/src/buf/proto/gen/dxos/service/agentmanager_pb.ts +3 -3
  281. package/src/buf/proto/gen/dxos/service/publisher_pb.ts +3 -3
  282. package/src/buf/proto/gen/dxos/service/supervisor_pb.ts +3 -3
  283. package/src/buf/proto/gen/dxos/service/tunnel_pb.ts +3 -3
  284. package/src/buf/proto/gen/dxos/tracing_pb.ts +3 -3
  285. package/src/buf/proto/gen/dxos/type_pb.ts +3 -3
  286. package/src/buf/proto/gen/dxos/value_pb.ts +3 -3
  287. package/src/buf/proto/gen/example/testing/data_pb.ts +3 -3
  288. package/src/buf/proto/gen/example/testing/rpc_pb.ts +3 -3
  289. package/src/edge/EdgeFunctionEnv.ts +165 -0
  290. package/src/edge/edge.ts +488 -0
  291. package/src/edge/errors.ts +85 -0
  292. package/src/edge/index.ts +7 -0
  293. package/src/errors/base-errors.ts +4 -21
  294. package/src/errors/errors.test.ts +1 -1
  295. package/src/errors/errors.ts +35 -101
  296. package/src/errors/helpers.ts +5 -6
  297. package/src/feed-replication.ts +1 -0
  298. package/src/index.ts +10 -7
  299. package/src/indexing.ts +1 -1
  300. package/src/invitation.ts +1 -1
  301. package/src/messenger.ts +22 -0
  302. package/src/proto/dxos/client/services.proto +20 -3
  303. package/src/proto/dxos/echo/service.proto +11 -0
  304. package/src/proto/gen/dxos/client/services.ts +30 -3
  305. package/src/proto/gen/dxos/echo/service.ts +9 -0
  306. package/src/proto/gen/index.ts +2 -1
  307. package/src/queue.ts +18 -0
  308. package/dist/src/edge-error.d.ts +0 -26
  309. package/dist/src/edge-error.d.ts.map +0 -1
  310. package/dist/src/edge-error.js +0 -100
  311. package/dist/src/edge-error.js.map +0 -1
  312. package/dist/src/edge.d.ts.map +0 -1
  313. package/dist/src/edge.js +0 -49
  314. package/dist/src/edge.js.map +0 -1
  315. package/src/edge-error.ts +0 -130
  316. package/src/edge.ts +0 -279
package/src/queue.ts CHANGED
@@ -2,6 +2,8 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
+ import type { SpaceId } from '@dxos/keys';
6
+
5
7
  import type { ObjectId } from './types.js';
6
8
 
7
9
  export type QueueCursor = string & { __QueueCursor: never };
@@ -31,3 +33,19 @@ export type QueryResult = {
31
33
  */
32
34
  prevCursor: QueueCursor | null;
33
35
  };
36
+
37
+ /**
38
+ * Position of an object in the queue that it is in.
39
+ */
40
+ export const KEY_QUEUE_POSITION = 'dxos.org/key/queue-position';
41
+
42
+ /**
43
+ * Service for managing queues.
44
+ */
45
+ export interface QueueService {
46
+ queryQueue(subspaceTag: string, spaceId: SpaceId, query: QueueQuery): Promise<QueryResult>;
47
+
48
+ insertIntoQueue(subspaceTag: string, spaceId: SpaceId, queueId: ObjectId, objects: unknown[]): Promise<void>;
49
+
50
+ deleteFromQueue(subspaceTag: string, spaceId: SpaceId, queueId: ObjectId, objectIds: ObjectId[]): Promise<void>;
51
+ }
@@ -1,26 +0,0 @@
1
- import { type EdgeErrorData, type EdgeHttpFailure } from './edge';
2
- export declare class EdgeCallFailedError extends Error {
3
- static fromProcessingFailureCause(cause: Error): EdgeCallFailedError;
4
- static fromHttpFailure(response: Response): Promise<EdgeCallFailedError>;
5
- static fromUnsuccessfulResponse(response: Response, body: EdgeHttpFailure): EdgeCallFailedError;
6
- readonly reason: string;
7
- readonly errorData?: EdgeErrorData;
8
- readonly isRetryable?: boolean;
9
- readonly retryAfterMs?: number;
10
- constructor(args: {
11
- reason: string;
12
- isRetryable?: boolean;
13
- errorData?: EdgeErrorData;
14
- retryAfterMs?: number;
15
- cause?: Error;
16
- });
17
- }
18
- export declare class EdgeAuthChallengeError extends EdgeCallFailedError {
19
- readonly challenge: string;
20
- constructor(challenge: string, errorData: EdgeErrorData);
21
- }
22
- export declare const createRetryableHttpFailure: (args: {
23
- reason: any;
24
- retryAfterSeconds: number;
25
- }) => Response;
26
- //# sourceMappingURL=edge-error.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"edge-error.d.ts","sourceRoot":"","sources":["../../src/edge-error.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,eAAe,EAAE,MAAM,QAAQ,CAAC;AAElE,qBAAa,mBAAoB,SAAQ,KAAK;WAC9B,0BAA0B,CAAC,KAAK,EAAE,KAAK,GAAG,mBAAmB;WAQvD,eAAe,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,mBAAmB,CAAC;WASvE,wBAAwB,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,eAAe,GAAG,mBAAmB;IAStG,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,aAAa,CAAC;IACnC,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;gBAEnB,IAAI,EAAE;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,SAAS,CAAC,EAAE,aAAa,CAAC;QAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,KAAK,CAAC,EAAE,KAAK,CAAC;KACf;CAOF;AAED,qBAAa,sBAAuB,SAAQ,mBAAmB;aAE3C,SAAS,EAAE,MAAM;gBAAjB,SAAS,EAAE,MAAM,EACjC,SAAS,EAAE,aAAa;CAI3B;AAOD,eAAO,MAAM,0BAA0B,GAAI,MAAM;IAAE,MAAM,EAAE,GAAG,CAAC;IAAC,iBAAiB,EAAE,MAAM,CAAA;CAAE,aAI1F,CAAC"}
@@ -1,100 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
- import { BaseError } from '@dxos/errors';
5
- export class EdgeCallFailedError extends Error {
6
- static fromProcessingFailureCause(cause) {
7
- return new EdgeCallFailedError({
8
- reason: 'Error processing request.',
9
- isRetryable: true,
10
- cause,
11
- });
12
- }
13
- static async fromHttpFailure(response) {
14
- return new EdgeCallFailedError({
15
- reason: `HTTP code ${response.status}: ${response.statusText}.`,
16
- isRetryable: isRetryableCode(response.status),
17
- retryAfterMs: getRetryAfterMillis(response),
18
- cause: await parseErrorBody(response),
19
- });
20
- }
21
- static fromUnsuccessfulResponse(response, body) {
22
- return new EdgeCallFailedError({
23
- reason: body.reason,
24
- errorData: body.errorData,
25
- isRetryable: body.errorData == null && response.headers.has('Retry-After'),
26
- retryAfterMs: getRetryAfterMillis(response),
27
- });
28
- }
29
- reason;
30
- errorData;
31
- isRetryable;
32
- retryAfterMs;
33
- constructor(args) {
34
- super(args.reason, { cause: args.cause });
35
- this.reason = args.reason;
36
- this.errorData = args.errorData;
37
- this.retryAfterMs = args.retryAfterMs;
38
- this.isRetryable = Boolean(args.isRetryable);
39
- }
40
- }
41
- export class EdgeAuthChallengeError extends EdgeCallFailedError {
42
- challenge;
43
- constructor(challenge, errorData) {
44
- super({ reason: 'Auth challenge.', errorData, isRetryable: false });
45
- this.challenge = challenge;
46
- }
47
- }
48
- const getRetryAfterMillis = (response) => {
49
- const retryAfter = Number(response.headers.get('Retry-After'));
50
- return Number.isNaN(retryAfter) || retryAfter === 0 ? undefined : retryAfter * 1000;
51
- };
52
- export const createRetryableHttpFailure = (args) => {
53
- return new Response(JSON.stringify({ success: false, reason: args.reason }), {
54
- headers: { 'Retry-After': String(args.retryAfterSeconds) },
55
- });
56
- };
57
- const isRetryableCode = (status) => {
58
- if (status === 501) {
59
- // Not Implemented
60
- return false;
61
- }
62
- return !(status >= 400 && status < 500);
63
- };
64
- const parseErrorBody = async (response) => {
65
- if (response.headers.get('Content-Type') !== 'application/json') {
66
- const body = await response.text();
67
- return new Error(body.slice(0, 256));
68
- }
69
- const body = await response.json();
70
- if (!('error' in body)) {
71
- return undefined;
72
- }
73
- return parseSerializedError(body.error);
74
- };
75
- const parseSerializedError = (serializedError) => {
76
- let err;
77
- if (typeof serializedError.code === 'string') {
78
- err = new BaseError(serializedError.code, serializedError.message ?? 'Unknown error', {
79
- cause: serializedError.cause ? parseSerializedError(serializedError.cause) : undefined,
80
- context: serializedError.context,
81
- });
82
- if (serializedError.stack) {
83
- Object.defineProperty(err, 'stack', {
84
- value: serializedError.stack,
85
- });
86
- }
87
- }
88
- else {
89
- err = new Error(serializedError.message ?? 'Unknown error', {
90
- cause: serializedError.cause ? parseSerializedError(serializedError.cause) : undefined,
91
- });
92
- if (serializedError.stack) {
93
- Object.defineProperty(err, 'stack', {
94
- value: serializedError.stack,
95
- });
96
- }
97
- }
98
- return err;
99
- };
100
- //# sourceMappingURL=edge-error.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"edge-error.js","sourceRoot":"","sources":["../../src/edge-error.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"edge.d.ts","sourceRoot":"","sources":["../../src/edge.ts"],"names":[],"mappings":"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"}
package/dist/src/edge.js DELETED
@@ -1,49 +0,0 @@
1
- //
2
- // Copyright 2024 DXOS.org
3
- //
4
- import { Schema } from 'effect';
5
- import { SpaceId } from '@dxos/keys';
6
- // TODO(burdon): Rename EdgerRouterEndpoint.
7
- // If we would rename it, we need to be careful to not break composer production.
8
- export var EdgeService;
9
- (function (EdgeService) {
10
- EdgeService["AUTOMERGE_REPLICATOR"] = "automerge-replicator";
11
- EdgeService["FEED_REPLICATOR"] = "feed-replicator";
12
- EdgeService["SWARM"] = "swarm";
13
- EdgeService["SIGNAL"] = "signal";
14
- EdgeService["STATUS"] = "status";
15
- })(EdgeService || (EdgeService = {}));
16
- export var EdgeAgentStatus;
17
- (function (EdgeAgentStatus) {
18
- EdgeAgentStatus["ACTIVE"] = "active";
19
- EdgeAgentStatus["INACTIVE"] = "inactive";
20
- EdgeAgentStatus["NOT_FOUND"] = "not_found";
21
- })(EdgeAgentStatus || (EdgeAgentStatus = {}));
22
- export var OAuthProvider;
23
- (function (OAuthProvider) {
24
- OAuthProvider["GOOGLE"] = "google";
25
- OAuthProvider["BLUESKY"] = "bluesky";
26
- })(OAuthProvider || (OAuthProvider = {}));
27
- export const InitiateOAuthFlowRequestSchema = Schema.Struct({
28
- provider: Schema.Enums(OAuthProvider),
29
- spaceId: Schema.String.pipe(Schema.filter(SpaceId.isValid)), // TODO(burdon): Use SpaceId.
30
- accessTokenId: Schema.String,
31
- scopes: Schema.mutable(Schema.Array(Schema.String)),
32
- // Set to true if we don't want periodic token refreshes in background, for cases like account connect
33
- noRefresh: Schema.optional(Schema.Boolean),
34
- // Provider-specific (user handle or did for bluesky) hint for auth server resolution
35
- loginHint: Schema.optional(Schema.String),
36
- });
37
- export var EdgeWebsocketProtocol;
38
- (function (EdgeWebsocketProtocol) {
39
- EdgeWebsocketProtocol["V0"] = "edge-ws-v0";
40
- /**
41
- * Enables message framing and muxing by service-id.
42
- */
43
- EdgeWebsocketProtocol["V1"] = "edge-ws-v1";
44
- })(EdgeWebsocketProtocol || (EdgeWebsocketProtocol = {}));
45
- export const DocumentCodec = {
46
- encode: (doc) => Buffer.from(doc).toString('base64'),
47
- decode: (doc) => new Uint8Array(Buffer.from(doc, 'base64')),
48
- };
49
- //# sourceMappingURL=edge.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"edge.js","sourceRoot":"","sources":["../../src/edge.ts"],"names":[],"mappings":"AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;AAEF,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC,4CAA4C;AAC5C,iFAAiF;AACjF,MAAM,CAAN,IAAY,WAMX;AAND,WAAY,WAAW;IACrB,4DAA6C,CAAA;IAC7C,kDAAmC,CAAA;IACnC,8BAAe,CAAA;IACf,gCAAiB,CAAA;IACjB,gCAAiB,CAAA;AACnB,CAAC,EANW,WAAW,KAAX,WAAW,QAMtB;AAgJD,MAAM,CAAN,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,oCAAiB,CAAA;IACjB,wCAAqB,CAAA;IACrB,0CAAuB,CAAA;AACzB,CAAC,EAJW,eAAe,KAAf,eAAe,QAI1B;AAOD,MAAM,CAAN,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,kCAAiB,CAAA;IACjB,oCAAmB,CAAA;AACrB,CAAC,EAHW,aAAa,KAAb,aAAa,QAGxB;AAED,MAAM,CAAC,MAAM,8BAA8B,GAAG,MAAM,CAAC,MAAM,CAAC;IAC1D,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC;IACrC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,6BAA6B;IAC1F,aAAa,EAAE,MAAM,CAAC,MAAM;IAC5B,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACnD,sGAAsG;IACtG,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC;IAC1C,qFAAqF;IACrF,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC;CAC1C,CAAC,CAAC;AAWH,MAAM,CAAN,IAAY,qBAMX;AAND,WAAY,qBAAqB;IAC/B,0CAAiB,CAAA;IACjB;;OAEG;IACH,0CAAiB,CAAA;AACnB,CAAC,EANW,qBAAqB,KAArB,qBAAqB,QAMhC;AAyED,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,MAAM,EAAE,CAAC,GAAe,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;IAChE,MAAM,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;CACpE,CAAC"}
package/src/edge-error.ts DELETED
@@ -1,130 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { BaseError } from '@dxos/errors';
6
-
7
- import { type EdgeErrorData, type EdgeHttpFailure } from './edge';
8
-
9
- export class EdgeCallFailedError extends Error {
10
- public static fromProcessingFailureCause(cause: Error): EdgeCallFailedError {
11
- return new EdgeCallFailedError({
12
- reason: 'Error processing request.',
13
- isRetryable: true,
14
- cause,
15
- });
16
- }
17
-
18
- public static async fromHttpFailure(response: Response): Promise<EdgeCallFailedError> {
19
- return new EdgeCallFailedError({
20
- reason: `HTTP code ${response.status}: ${response.statusText}.`,
21
- isRetryable: isRetryableCode(response.status),
22
- retryAfterMs: getRetryAfterMillis(response),
23
- cause: await parseErrorBody(response),
24
- });
25
- }
26
-
27
- public static fromUnsuccessfulResponse(response: Response, body: EdgeHttpFailure): EdgeCallFailedError {
28
- return new EdgeCallFailedError({
29
- reason: body.reason,
30
- errorData: body.errorData,
31
- isRetryable: body.errorData == null && response.headers.has('Retry-After'),
32
- retryAfterMs: getRetryAfterMillis(response),
33
- });
34
- }
35
-
36
- readonly reason: string;
37
- readonly errorData?: EdgeErrorData;
38
- readonly isRetryable?: boolean;
39
- readonly retryAfterMs?: number;
40
-
41
- constructor(args: {
42
- reason: string;
43
- isRetryable?: boolean;
44
- errorData?: EdgeErrorData;
45
- retryAfterMs?: number;
46
- cause?: Error;
47
- }) {
48
- super(args.reason, { cause: args.cause });
49
- this.reason = args.reason;
50
- this.errorData = args.errorData;
51
- this.retryAfterMs = args.retryAfterMs;
52
- this.isRetryable = Boolean(args.isRetryable);
53
- }
54
- }
55
-
56
- export class EdgeAuthChallengeError extends EdgeCallFailedError {
57
- constructor(
58
- public readonly challenge: string,
59
- errorData: EdgeErrorData,
60
- ) {
61
- super({ reason: 'Auth challenge.', errorData, isRetryable: false });
62
- }
63
- }
64
-
65
- const getRetryAfterMillis = (response: Response) => {
66
- const retryAfter = Number(response.headers.get('Retry-After'));
67
- return Number.isNaN(retryAfter) || retryAfter === 0 ? undefined : retryAfter * 1000;
68
- };
69
-
70
- export const createRetryableHttpFailure = (args: { reason: any; retryAfterSeconds: number }) => {
71
- return new Response(JSON.stringify({ success: false, reason: args.reason }), {
72
- headers: { 'Retry-After': String(args.retryAfterSeconds) },
73
- });
74
- };
75
-
76
- const isRetryableCode = (status: number) => {
77
- if (status === 501) {
78
- // Not Implemented
79
- return false;
80
- }
81
- return !(status >= 400 && status < 500);
82
- };
83
-
84
- const parseErrorBody = async (response: Response): Promise<Error | undefined> => {
85
- if (response.headers.get('Content-Type') !== 'application/json') {
86
- const body = await response.text();
87
- return new Error(body.slice(0, 256));
88
- }
89
-
90
- const body = await response.json();
91
- if (!('error' in body)) {
92
- return undefined;
93
- }
94
-
95
- return parseSerializedError(body.error);
96
- };
97
-
98
- type SerializedError = {
99
- code?: string;
100
- message?: string;
101
- context?: Record<string, unknown>;
102
- stack?: string;
103
- cause?: SerializedError;
104
- };
105
-
106
- const parseSerializedError = (serializedError: SerializedError): Error => {
107
- let err: Error;
108
- if (typeof serializedError.code === 'string') {
109
- err = new BaseError(serializedError.code, serializedError.message ?? 'Unknown error', {
110
- cause: serializedError.cause ? parseSerializedError(serializedError.cause) : undefined,
111
- context: serializedError.context,
112
- });
113
- if (serializedError.stack) {
114
- Object.defineProperty(err, 'stack', {
115
- value: serializedError.stack,
116
- });
117
- }
118
- } else {
119
- err = new Error(serializedError.message ?? 'Unknown error', {
120
- cause: serializedError.cause ? parseSerializedError(serializedError.cause) : undefined,
121
- });
122
- if (serializedError.stack) {
123
- Object.defineProperty(err, 'stack', {
124
- value: serializedError.stack,
125
- });
126
- }
127
- }
128
-
129
- return err;
130
- };
package/src/edge.ts DELETED
@@ -1,279 +0,0 @@
1
- //
2
- // Copyright 2024 DXOS.org
3
- //
4
-
5
- import { Schema } from 'effect';
6
-
7
- import { SpaceId } from '@dxos/keys';
8
-
9
- // TODO(burdon): Rename EdgerRouterEndpoint.
10
- // If we would rename it, we need to be careful to not break composer production.
11
- export enum EdgeService {
12
- AUTOMERGE_REPLICATOR = 'automerge-replicator',
13
- FEED_REPLICATOR = 'feed-replicator',
14
- SWARM = 'swarm',
15
- SIGNAL = 'signal',
16
- STATUS = 'status',
17
- }
18
-
19
- export type EdgeHttpSuccess<T> = {
20
- success: true;
21
- data: T;
22
- };
23
-
24
- export type EdgeErrorData = { type: string } & Record<string, any>;
25
-
26
- export type EdgeHttpFailure = {
27
- // TODO(burdon): Why is this required?
28
- success: false;
29
- /**
30
- * An explanation of why the call failed. Used mostly for logging and monitoring.
31
- */
32
- reason: string;
33
- /**
34
- * Information that can be used to retry the request such that it will succeed, for example:
35
- * 1. { type: 'auth_required', challenge: string }
36
- * Requires retrying the request with challenge signature included.
37
- * 2. { type: 'user_confirmation_required', dialog: { title: string, message: string, confirmation_payload: string } }
38
- * Requires showing a confirmation dialog to a user and retrying the request with confirmation_payload included
39
- * if the user confirms.
40
- * When errorData is returned simply retrying the request won't have any effect.
41
- * EdgeHttpClient should parse well-known errorData into Error types and throw.
42
- */
43
- errorData?: EdgeErrorData;
44
- };
45
-
46
- export type EdgeHttpResponse<T> = EdgeHttpSuccess<T> | EdgeHttpFailure;
47
-
48
- export type GetNotarizationResponseBody = {
49
- awaitingNotarization: { credentials: string[] };
50
- };
51
-
52
- export type ExecuteWorkflowResponseBody = {
53
- success: boolean;
54
- reason?: string;
55
- output?: any;
56
- };
57
-
58
- export type PostNotarizationRequestBody = {
59
- credentials: string[];
60
- };
61
-
62
- export type JoinSpaceRequest = {
63
- invitationId: string;
64
- identityKey: string;
65
- /**
66
- * Base64 encoded signed challenge.
67
- * Used to verify the IdentityKey in case of `invitation.authMethod === Invitation.AuthMethod.KNOWN_PUBLIC_KEY`
68
- */
69
- signature?: string;
70
- };
71
-
72
- export type JoinSpaceResponseBody = {
73
- spaceMemberCredential: string;
74
- spaceGenesisFeedKey: string;
75
- };
76
-
77
- export type RecoverIdentitySignature =
78
- | string
79
- // This is the format of the signature from the WebAuthn authenticator.
80
- | {
81
- signature: string;
82
- clientDataJson: string;
83
- authenticatorData: string;
84
- };
85
-
86
- export type RecoverIdentityRequest = {
87
- deviceKey: string;
88
- controlFeedKey: string;
89
- lookupKey?: string;
90
- signature?: RecoverIdentitySignature;
91
- token?: string;
92
- };
93
-
94
- export type RecoverIdentityResponseBody = {
95
- identityKey: string;
96
- haloSpaceKey: string;
97
- genesisFeedKey: string;
98
- deviceAuthCredential: string;
99
- };
100
-
101
- export type CreateAgentRequestBody = {
102
- identityKey: string;
103
- haloSpaceId: SpaceId;
104
- haloSpaceKey: string;
105
- };
106
-
107
- export type CreateAgentResponseBody = {
108
- deviceKey: string;
109
- feedKey: string;
110
- };
111
-
112
- export type GetAgentStatusResponseBody = {
113
- agent: {
114
- deviceKey?: string;
115
- status: EdgeAgentStatus;
116
- };
117
- };
118
-
119
- export type UploadFunctionRequest = {
120
- name?: string;
121
- version: string;
122
- ownerPublicKey: string;
123
- entryPoint: string;
124
- assets: Record<string, Uint8Array>;
125
- };
126
-
127
- export type UploadFunctionResponseBody = {
128
- functionId: string;
129
- version: string;
130
- meta: {
131
- key?: string;
132
- name?: string;
133
- description?: string;
134
- /**
135
- * JSON Schema for the input of the function.
136
- */
137
- inputSchema?: object;
138
- /**
139
- * JSON Schema for the output of the function.
140
- */
141
- outputSchema?: object;
142
- };
143
- };
144
-
145
- export type CreateSpaceRequest = {
146
- /**
147
- * HEX encoded public key of the agent.
148
- */
149
- agentKey: string;
150
- };
151
-
152
- export type CreateSpaceResponseBody = {
153
- /**
154
- * HEX encoded public key of the space.
155
- */
156
- spaceKey: string;
157
- spaceId: SpaceId;
158
- automergeRoot: string;
159
- };
160
-
161
- export enum EdgeAgentStatus {
162
- ACTIVE = 'active',
163
- INACTIVE = 'inactive',
164
- NOT_FOUND = 'not_found',
165
- }
166
-
167
- export type EdgeAuthChallenge = {
168
- type: 'auth_challenge';
169
- challenge: string;
170
- };
171
-
172
- export enum OAuthProvider {
173
- GOOGLE = 'google',
174
- BLUESKY = 'bluesky',
175
- }
176
-
177
- export const InitiateOAuthFlowRequestSchema = Schema.Struct({
178
- provider: Schema.Enums(OAuthProvider),
179
- spaceId: Schema.String.pipe(Schema.filter(SpaceId.isValid)), // TODO(burdon): Use SpaceId.
180
- accessTokenId: Schema.String,
181
- scopes: Schema.mutable(Schema.Array(Schema.String)),
182
- // Set to true if we don't want periodic token refreshes in background, for cases like account connect
183
- noRefresh: Schema.optional(Schema.Boolean),
184
- // Provider-specific (user handle or did for bluesky) hint for auth server resolution
185
- loginHint: Schema.optional(Schema.String),
186
- });
187
- export type InitiateOAuthFlowRequest = Schema.Schema.Type<typeof InitiateOAuthFlowRequestSchema>;
188
-
189
- export type InitiateOAuthFlowResponse = {
190
- authUrl: string;
191
- };
192
-
193
- export type OAuthFlowResult =
194
- | { success: true; accessToken: string; accessTokenId: string }
195
- | { success: false; reason: string };
196
-
197
- export enum EdgeWebsocketProtocol {
198
- V0 = 'edge-ws-v0',
199
- /**
200
- * Enables message framing and muxing by service-id.
201
- */
202
- V1 = 'edge-ws-v1',
203
- }
204
-
205
- // TODO(mykola): Reconcile with type in EDGE repo.
206
- export type EdgeStatus = {
207
- problems: string[];
208
- agent: {
209
- agentStatus?: string;
210
- agentKey?: string;
211
- haloSpaceId?: SpaceId;
212
- fetchError?: string;
213
- };
214
- router: {
215
- connectedDevices?: {
216
- peerKey: string;
217
- topics: string[];
218
- }[];
219
- metrics?: {
220
- sentMessages: number;
221
- receivedMessages: number;
222
- sentBytes: number;
223
- receivedBytes: number;
224
- failedMessages: number;
225
- failedBytes: number;
226
- };
227
- fetchError?: string;
228
- };
229
- spaces: {
230
- data: Record<SpaceId, { diagnostics?: any & { redFlags: string[] }; fetchError?: string }>;
231
- fetchError?: string;
232
- };
233
- };
234
-
235
- //
236
- // Space import/export.
237
- //
238
-
239
- export type ImportBundleRequest = {
240
- bundle: {
241
- /**
242
- * DocumentId.
243
- */
244
- documentId: string;
245
- /**
246
- * Encoded mutation.
247
- */
248
- mutation: string;
249
- /**
250
- * Heads of the document.
251
- */
252
- heads: string[];
253
- }[];
254
- };
255
-
256
- export type ExportBundleRequest = {
257
- /**
258
- * DocumentId -> Heads (decoded heads since which we want to export).
259
- */
260
- docHeads: Record<string, string[]>;
261
- };
262
-
263
- export type ExportBundleResponse = {
264
- bundle: {
265
- /**
266
- * DocumentId.
267
- */
268
- documentId: string;
269
- /**
270
- * Encoded mutation.
271
- */
272
- mutation: string;
273
- }[];
274
- };
275
-
276
- export const DocumentCodec = {
277
- encode: (doc: Uint8Array) => Buffer.from(doc).toString('base64'),
278
- decode: (doc: string) => new Uint8Array(Buffer.from(doc, 'base64')),
279
- };