@dxos/protocols 0.8.4-main.f9ba587 → 0.8.4-main.fcfe5033a5

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 (429) hide show
  1. package/README.md +1 -1
  2. package/dist/src/FeedProtocol.d.ts +528 -0
  3. package/dist/src/FeedProtocol.d.ts.map +1 -0
  4. package/dist/src/FeedProtocol.js +237 -0
  5. package/dist/src/FeedProtocol.js.map +1 -0
  6. package/dist/src/FunctionProtocol.d.ts +82 -0
  7. package/dist/src/FunctionProtocol.d.ts.map +1 -0
  8. package/dist/src/FunctionProtocol.js +4 -0
  9. package/dist/src/FunctionProtocol.js.map +1 -0
  10. package/dist/src/automerge.d.ts +8 -0
  11. package/dist/src/automerge.d.ts.map +1 -1
  12. package/dist/src/automerge.js.map +1 -1
  13. package/dist/src/buf/proto/gen/dxos/agent/dashboard_pb.d.ts +1 -1
  14. package/dist/src/buf/proto/gen/dxos/agent/dashboard_pb.js +1 -1
  15. package/dist/src/buf/proto/gen/dxos/agent/echo-proxy_pb.d.ts +1 -1
  16. package/dist/src/buf/proto/gen/dxos/agent/echo-proxy_pb.js +1 -1
  17. package/dist/src/buf/proto/gen/dxos/agent/epoch_pb.d.ts +1 -1
  18. package/dist/src/buf/proto/gen/dxos/agent/epoch_pb.js +1 -1
  19. package/dist/src/buf/proto/gen/dxos/agent/functions_pb.d.ts +1 -1
  20. package/dist/src/buf/proto/gen/dxos/agent/functions_pb.js +1 -1
  21. package/dist/src/buf/proto/gen/dxos/bot_pb.d.ts +1 -1
  22. package/dist/src/buf/proto/gen/dxos/bot_pb.js +1 -1
  23. package/dist/src/buf/proto/gen/dxos/client/invitation_pb.d.ts +1 -1
  24. package/dist/src/buf/proto/gen/dxos/client/invitation_pb.js +1 -1
  25. package/dist/src/buf/proto/gen/dxos/client/logging_pb.d.ts +1 -1
  26. package/dist/src/buf/proto/gen/dxos/client/logging_pb.js +1 -1
  27. package/dist/src/buf/proto/gen/dxos/client/queue_pb.d.ts +231 -0
  28. package/dist/src/buf/proto/gen/dxos/client/queue_pb.d.ts.map +1 -0
  29. package/dist/src/buf/proto/gen/dxos/client/queue_pb.js +44 -0
  30. package/dist/src/buf/proto/gen/dxos/client/queue_pb.js.map +1 -0
  31. package/dist/src/buf/proto/gen/dxos/client/services_pb.d.ts +129 -22
  32. package/dist/src/buf/proto/gen/dxos/client/services_pb.d.ts.map +1 -1
  33. package/dist/src/buf/proto/gen/dxos/client/services_pb.js +90 -54
  34. package/dist/src/buf/proto/gen/dxos/client/services_pb.js.map +1 -1
  35. package/dist/src/buf/proto/gen/dxos/config_pb.d.ts +142 -7
  36. package/dist/src/buf/proto/gen/dxos/config_pb.d.ts.map +1 -1
  37. package/dist/src/buf/proto/gen/dxos/config_pb.js +78 -2
  38. package/dist/src/buf/proto/gen/dxos/config_pb.js.map +1 -1
  39. package/dist/src/buf/proto/gen/dxos/devtools/diagnostics_pb.d.ts +1 -1
  40. package/dist/src/buf/proto/gen/dxos/devtools/diagnostics_pb.js +1 -1
  41. package/dist/src/buf/proto/gen/dxos/devtools/host_pb.d.ts +1 -1
  42. package/dist/src/buf/proto/gen/dxos/devtools/host_pb.js +1 -1
  43. package/dist/src/buf/proto/gen/dxos/devtools/swarm_pb.d.ts +1 -1
  44. package/dist/src/buf/proto/gen/dxos/devtools/swarm_pb.js +1 -1
  45. package/dist/src/buf/proto/gen/dxos/echo/blob_pb.d.ts +1 -1
  46. package/dist/src/buf/proto/gen/dxos/echo/blob_pb.js +1 -1
  47. package/dist/src/buf/proto/gen/dxos/echo/feed_pb.d.ts +1 -1
  48. package/dist/src/buf/proto/gen/dxos/echo/feed_pb.js +1 -1
  49. package/dist/src/buf/proto/gen/dxos/echo/filter_pb.d.ts +1 -1
  50. package/dist/src/buf/proto/gen/dxos/echo/filter_pb.js +1 -1
  51. package/dist/src/buf/proto/gen/dxos/echo/indexing_pb.d.ts +1 -1
  52. package/dist/src/buf/proto/gen/dxos/echo/indexing_pb.js +1 -1
  53. package/dist/src/buf/proto/gen/dxos/echo/metadata_pb.d.ts +7 -1
  54. package/dist/src/buf/proto/gen/dxos/echo/metadata_pb.d.ts.map +1 -1
  55. package/dist/src/buf/proto/gen/dxos/echo/metadata_pb.js +2 -2
  56. package/dist/src/buf/proto/gen/dxos/echo/metadata_pb.js.map +1 -1
  57. package/dist/src/buf/proto/gen/dxos/echo/model/document_pb.d.ts +1 -1
  58. package/dist/src/buf/proto/gen/dxos/echo/model/document_pb.js +1 -1
  59. package/dist/src/buf/proto/gen/dxos/echo/model/messenger_pb.d.ts +1 -1
  60. package/dist/src/buf/proto/gen/dxos/echo/model/messenger_pb.js +1 -1
  61. package/dist/src/buf/proto/gen/dxos/echo/model/text_pb.d.ts +1 -1
  62. package/dist/src/buf/proto/gen/dxos/echo/model/text_pb.js +1 -1
  63. package/dist/src/buf/proto/gen/dxos/echo/object_pb.d.ts +1 -1
  64. package/dist/src/buf/proto/gen/dxos/echo/object_pb.js +1 -1
  65. package/dist/src/buf/proto/gen/dxos/echo/query_pb.d.ts +13 -3
  66. package/dist/src/buf/proto/gen/dxos/echo/query_pb.d.ts.map +1 -1
  67. package/dist/src/buf/proto/gen/dxos/echo/query_pb.js +2 -2
  68. package/dist/src/buf/proto/gen/dxos/echo/query_pb.js.map +1 -1
  69. package/dist/src/buf/proto/gen/dxos/echo/service_pb.d.ts +71 -10
  70. package/dist/src/buf/proto/gen/dxos/echo/service_pb.d.ts.map +1 -1
  71. package/dist/src/buf/proto/gen/dxos/echo/service_pb.js +16 -6
  72. package/dist/src/buf/proto/gen/dxos/echo/service_pb.js.map +1 -1
  73. package/dist/src/buf/proto/gen/dxos/echo/snapshot_pb.d.ts +1 -1
  74. package/dist/src/buf/proto/gen/dxos/echo/snapshot_pb.js +1 -1
  75. package/dist/src/buf/proto/gen/dxos/echo/timeframe_pb.d.ts +1 -1
  76. package/dist/src/buf/proto/gen/dxos/echo/timeframe_pb.js +1 -1
  77. package/dist/src/buf/proto/gen/dxos/edge/calls_pb.d.ts +1 -1
  78. package/dist/src/buf/proto/gen/dxos/edge/calls_pb.js +1 -1
  79. package/dist/src/buf/proto/gen/dxos/edge/messenger_pb.d.ts +29 -1
  80. package/dist/src/buf/proto/gen/dxos/edge/messenger_pb.d.ts.map +1 -1
  81. package/dist/src/buf/proto/gen/dxos/edge/messenger_pb.js +11 -6
  82. package/dist/src/buf/proto/gen/dxos/edge/messenger_pb.js.map +1 -1
  83. package/dist/src/buf/proto/gen/dxos/edge/signal_pb.d.ts +1 -1
  84. package/dist/src/buf/proto/gen/dxos/edge/signal_pb.js +1 -1
  85. package/dist/src/buf/proto/gen/dxos/error_pb.d.ts +1 -1
  86. package/dist/src/buf/proto/gen/dxos/error_pb.js +1 -1
  87. package/dist/src/buf/proto/gen/dxos/field_options_pb.d.ts +1 -1
  88. package/dist/src/buf/proto/gen/dxos/field_options_pb.js +1 -1
  89. package/dist/src/buf/proto/gen/dxos/google_pb.d.ts +1 -1
  90. package/dist/src/buf/proto/gen/dxos/google_pb.js +2 -2
  91. package/dist/src/buf/proto/gen/dxos/google_pb.js.map +1 -1
  92. package/dist/src/buf/proto/gen/dxos/gravity_pb.d.ts +1 -1
  93. package/dist/src/buf/proto/gen/dxos/gravity_pb.js +1 -1
  94. package/dist/src/buf/proto/gen/dxos/halo/credentials/auth_pb.d.ts +1 -1
  95. package/dist/src/buf/proto/gen/dxos/halo/credentials/auth_pb.js +1 -1
  96. package/dist/src/buf/proto/gen/dxos/halo/credentials/greet_pb.d.ts +1 -1
  97. package/dist/src/buf/proto/gen/dxos/halo/credentials/greet_pb.js +1 -1
  98. package/dist/src/buf/proto/gen/dxos/halo/credentials/identity_pb.d.ts +1 -1
  99. package/dist/src/buf/proto/gen/dxos/halo/credentials/identity_pb.js +1 -1
  100. package/dist/src/buf/proto/gen/dxos/halo/credentials_pb.d.ts +40 -1
  101. package/dist/src/buf/proto/gen/dxos/halo/credentials_pb.d.ts.map +1 -1
  102. package/dist/src/buf/proto/gen/dxos/halo/credentials_pb.js +28 -3
  103. package/dist/src/buf/proto/gen/dxos/halo/credentials_pb.js.map +1 -1
  104. package/dist/src/buf/proto/gen/dxos/halo/invitations_pb.d.ts +1 -1
  105. package/dist/src/buf/proto/gen/dxos/halo/invitations_pb.js +1 -1
  106. package/dist/src/buf/proto/gen/dxos/halo/keyring_pb.d.ts +1 -1
  107. package/dist/src/buf/proto/gen/dxos/halo/keyring_pb.js +1 -1
  108. package/dist/src/buf/proto/gen/dxos/halo/keys_pb.d.ts +1 -1
  109. package/dist/src/buf/proto/gen/dxos/halo/keys_pb.js +1 -1
  110. package/dist/src/buf/proto/gen/dxos/halo/signed_pb.d.ts +1 -1
  111. package/dist/src/buf/proto/gen/dxos/halo/signed_pb.js +1 -1
  112. package/dist/src/buf/proto/gen/dxos/iframe_pb.d.ts +2 -11
  113. package/dist/src/buf/proto/gen/dxos/iframe_pb.d.ts.map +1 -1
  114. package/dist/src/buf/proto/gen/dxos/iframe_pb.js +2 -2
  115. package/dist/src/buf/proto/gen/dxos/iframe_pb.js.map +1 -1
  116. package/dist/src/buf/proto/gen/dxos/keys_pb.d.ts +1 -1
  117. package/dist/src/buf/proto/gen/dxos/keys_pb.js +1 -1
  118. package/dist/src/buf/proto/gen/dxos/mesh/bridge_pb.d.ts +1 -1
  119. package/dist/src/buf/proto/gen/dxos/mesh/bridge_pb.js +1 -1
  120. package/dist/src/buf/proto/gen/dxos/mesh/broadcast_pb.d.ts +1 -1
  121. package/dist/src/buf/proto/gen/dxos/mesh/broadcast_pb.js +1 -1
  122. package/dist/src/buf/proto/gen/dxos/mesh/messaging_pb.d.ts +1 -1
  123. package/dist/src/buf/proto/gen/dxos/mesh/messaging_pb.js +1 -1
  124. package/dist/src/buf/proto/gen/dxos/mesh/muxer_pb.d.ts +1 -1
  125. package/dist/src/buf/proto/gen/dxos/mesh/muxer_pb.js +1 -1
  126. package/dist/src/buf/proto/gen/dxos/mesh/presence_pb.d.ts +1 -1
  127. package/dist/src/buf/proto/gen/dxos/mesh/presence_pb.js +1 -1
  128. package/dist/src/buf/proto/gen/dxos/mesh/protocol_pb.d.ts +1 -1
  129. package/dist/src/buf/proto/gen/dxos/mesh/protocol_pb.js +1 -1
  130. package/dist/src/buf/proto/gen/dxos/mesh/replicator_pb.d.ts +1 -1
  131. package/dist/src/buf/proto/gen/dxos/mesh/replicator_pb.js +1 -1
  132. package/dist/src/buf/proto/gen/dxos/mesh/signal_pb.d.ts +1 -1
  133. package/dist/src/buf/proto/gen/dxos/mesh/signal_pb.js +1 -1
  134. package/dist/src/buf/proto/gen/dxos/mesh/swarm_pb.d.ts +1 -1
  135. package/dist/src/buf/proto/gen/dxos/mesh/swarm_pb.js +1 -1
  136. package/dist/src/buf/proto/gen/dxos/mesh/teleport/admission-discovery_pb.d.ts +1 -1
  137. package/dist/src/buf/proto/gen/dxos/mesh/teleport/admission-discovery_pb.js +1 -1
  138. package/dist/src/buf/proto/gen/dxos/mesh/teleport/auth_pb.d.ts +1 -1
  139. package/dist/src/buf/proto/gen/dxos/mesh/teleport/auth_pb.js +1 -1
  140. package/dist/src/buf/proto/gen/dxos/mesh/teleport/automerge_pb.d.ts +1 -1
  141. package/dist/src/buf/proto/gen/dxos/mesh/teleport/automerge_pb.js +1 -1
  142. package/dist/src/buf/proto/gen/dxos/mesh/teleport/blobsync_pb.d.ts +1 -1
  143. package/dist/src/buf/proto/gen/dxos/mesh/teleport/blobsync_pb.js +1 -1
  144. package/dist/src/buf/proto/gen/dxos/mesh/teleport/control_pb.d.ts +1 -1
  145. package/dist/src/buf/proto/gen/dxos/mesh/teleport/control_pb.js +1 -1
  146. package/dist/src/buf/proto/gen/dxos/mesh/teleport/gossip_pb.d.ts +1 -1
  147. package/dist/src/buf/proto/gen/dxos/mesh/teleport/gossip_pb.js +1 -1
  148. package/dist/src/buf/proto/gen/dxos/mesh/teleport/notarization_pb.d.ts +1 -1
  149. package/dist/src/buf/proto/gen/dxos/mesh/teleport/notarization_pb.js +1 -1
  150. package/dist/src/buf/proto/gen/dxos/mesh/teleport/replicator_pb.d.ts +1 -1
  151. package/dist/src/buf/proto/gen/dxos/mesh/teleport/replicator_pb.js +1 -1
  152. package/dist/src/buf/proto/gen/dxos/registry_pb.d.ts +1 -1
  153. package/dist/src/buf/proto/gen/dxos/registry_pb.js +1 -1
  154. package/dist/src/buf/proto/gen/dxos/rpc_pb.d.ts +25 -1
  155. package/dist/src/buf/proto/gen/dxos/rpc_pb.d.ts.map +1 -1
  156. package/dist/src/buf/proto/gen/dxos/rpc_pb.js +13 -8
  157. package/dist/src/buf/proto/gen/dxos/rpc_pb.js.map +1 -1
  158. package/dist/src/buf/proto/gen/dxos/service/agentmanager_pb.d.ts +1 -1
  159. package/dist/src/buf/proto/gen/dxos/service/agentmanager_pb.js +1 -1
  160. package/dist/src/buf/proto/gen/dxos/service/publisher_pb.d.ts +1 -1
  161. package/dist/src/buf/proto/gen/dxos/service/publisher_pb.js +1 -1
  162. package/dist/src/buf/proto/gen/dxos/service/supervisor_pb.d.ts +1 -1
  163. package/dist/src/buf/proto/gen/dxos/service/supervisor_pb.js +1 -1
  164. package/dist/src/buf/proto/gen/dxos/service/tunnel_pb.d.ts +1 -1
  165. package/dist/src/buf/proto/gen/dxos/service/tunnel_pb.js +1 -1
  166. package/dist/src/buf/proto/gen/dxos/tracing_pb.d.ts +1 -139
  167. package/dist/src/buf/proto/gen/dxos/tracing_pb.d.ts.map +1 -1
  168. package/dist/src/buf/proto/gen/dxos/tracing_pb.js +11 -45
  169. package/dist/src/buf/proto/gen/dxos/tracing_pb.js.map +1 -1
  170. package/dist/src/buf/proto/gen/dxos/type_pb.d.ts +1 -1
  171. package/dist/src/buf/proto/gen/dxos/type_pb.js +1 -1
  172. package/dist/src/buf/proto/gen/dxos/value_pb.d.ts +1 -1
  173. package/dist/src/buf/proto/gen/dxos/value_pb.js +1 -1
  174. package/dist/src/buf/proto/gen/example/testing/data_pb.d.ts +1 -1
  175. package/dist/src/buf/proto/gen/example/testing/data_pb.js +1 -1
  176. package/dist/src/buf/proto/gen/example/testing/rpc_pb.d.ts +1 -1
  177. package/dist/src/buf/proto/gen/example/testing/rpc_pb.js +1 -1
  178. package/dist/src/codec.test.js +1 -1
  179. package/dist/src/edge/EdgeFunctionEnv.d.ts +108 -0
  180. package/dist/src/edge/EdgeFunctionEnv.d.ts.map +1 -0
  181. package/dist/src/edge/EdgeFunctionEnv.js +4 -0
  182. package/dist/src/edge/EdgeFunctionEnv.js.map +1 -0
  183. package/dist/src/edge/edge.d.ts +511 -0
  184. package/dist/src/edge/edge.d.ts.map +1 -0
  185. package/dist/src/edge/edge.js +173 -0
  186. package/dist/src/edge/edge.js.map +1 -0
  187. package/dist/src/edge/errors.d.ts +29 -0
  188. package/dist/src/edge/errors.d.ts.map +1 -0
  189. package/dist/src/edge/errors.js +69 -0
  190. package/dist/src/edge/errors.js.map +1 -0
  191. package/dist/src/edge/index.d.ts +5 -0
  192. package/dist/src/edge/index.d.ts.map +1 -0
  193. package/dist/src/edge/index.js +8 -0
  194. package/dist/src/edge/index.js.map +1 -0
  195. package/dist/src/edge/registry.d.ts +127 -0
  196. package/dist/src/edge/registry.d.ts.map +1 -0
  197. package/dist/src/edge/registry.js +79 -0
  198. package/dist/src/edge/registry.js.map +1 -0
  199. package/dist/src/errors/base-errors.d.ts +86 -8
  200. package/dist/src/errors/base-errors.d.ts.map +1 -1
  201. package/dist/src/errors/base-errors.js +4 -19
  202. package/dist/src/errors/base-errors.js.map +1 -1
  203. package/dist/src/errors/encoding.d.ts +2 -2
  204. package/dist/src/errors/encoding.d.ts.map +1 -1
  205. package/dist/src/errors/encoding.js +1 -1
  206. package/dist/src/errors/encoding.js.map +1 -1
  207. package/dist/src/errors/errors.d.ts +619 -42
  208. package/dist/src/errors/errors.d.ts.map +1 -1
  209. package/dist/src/errors/errors.js +50 -104
  210. package/dist/src/errors/errors.js.map +1 -1
  211. package/dist/src/errors/errors.test.js +2 -2
  212. package/dist/src/errors/errors.test.js.map +1 -1
  213. package/dist/src/errors/helpers.d.ts +9 -5
  214. package/dist/src/errors/helpers.d.ts.map +1 -1
  215. package/dist/src/errors/helpers.js +3 -3
  216. package/dist/src/errors/helpers.js.map +1 -1
  217. package/dist/src/errors/index.d.ts +5 -5
  218. package/dist/src/errors/index.js +5 -5
  219. package/dist/src/feed-replication.d.ts.map +1 -1
  220. package/dist/src/index.d.ts +12 -12
  221. package/dist/src/index.d.ts.map +1 -1
  222. package/dist/src/index.js +11 -12
  223. package/dist/src/index.js.map +1 -1
  224. package/dist/src/indexing.d.ts +1 -1
  225. package/dist/src/indexing.d.ts.map +1 -1
  226. package/dist/src/indexing.js +1 -1
  227. package/dist/src/indexing.js.map +1 -1
  228. package/dist/src/indexing.test.js +1 -1
  229. package/dist/src/invitation.d.ts +1 -1
  230. package/dist/src/invitation.d.ts.map +1 -1
  231. package/dist/src/invitation.js +1 -1
  232. package/dist/src/invitation.js.map +1 -1
  233. package/dist/src/messenger.d.ts +16 -0
  234. package/dist/src/messenger.d.ts.map +1 -0
  235. package/dist/src/messenger.js +4 -0
  236. package/dist/src/messenger.js.map +1 -0
  237. package/dist/src/proto/gen/dxos/client/services.d.ts +190 -5
  238. package/dist/src/proto/gen/dxos/client/services.d.ts.map +1 -1
  239. package/dist/src/proto/gen/dxos/client/services.js +22 -6
  240. package/dist/src/proto/gen/dxos/client/services.js.map +1 -1
  241. package/dist/src/proto/gen/dxos/config.d.ts +87 -2
  242. package/dist/src/proto/gen/dxos/config.d.ts.map +1 -1
  243. package/dist/src/proto/gen/dxos/config.js +26 -0
  244. package/dist/src/proto/gen/dxos/config.js.map +1 -1
  245. package/dist/src/proto/gen/dxos/devtools/host.d.ts +31 -31
  246. package/dist/src/proto/gen/dxos/devtools/host.d.ts.map +1 -1
  247. package/dist/src/proto/gen/dxos/echo/metadata.d.ts +4 -0
  248. package/dist/src/proto/gen/dxos/echo/metadata.d.ts.map +1 -1
  249. package/dist/src/proto/gen/dxos/echo/metadata.js.map +1 -1
  250. package/dist/src/proto/gen/dxos/echo/query.d.ts +17 -1
  251. package/dist/src/proto/gen/dxos/echo/query.d.ts.map +1 -1
  252. package/dist/src/proto/gen/dxos/echo/query.js.map +1 -1
  253. package/dist/src/proto/gen/dxos/echo/service.d.ts +43 -8
  254. package/dist/src/proto/gen/dxos/echo/service.d.ts.map +1 -1
  255. package/dist/src/proto/gen/dxos/edge/messenger.d.ts +24 -0
  256. package/dist/src/proto/gen/dxos/edge/messenger.d.ts.map +1 -1
  257. package/dist/src/proto/gen/dxos/edge/messenger.js.map +1 -1
  258. package/dist/src/proto/gen/dxos/halo/credentials.d.ts +15 -1
  259. package/dist/src/proto/gen/dxos/halo/credentials.d.ts.map +1 -1
  260. package/dist/src/proto/gen/dxos/halo/credentials.js +9 -0
  261. package/dist/src/proto/gen/dxos/halo/credentials.js.map +1 -1
  262. package/dist/src/proto/gen/dxos/iframe.d.ts +0 -10
  263. package/dist/src/proto/gen/dxos/iframe.d.ts.map +1 -1
  264. package/dist/src/proto/gen/dxos/iframe.js.map +1 -1
  265. package/dist/src/proto/gen/dxos/rpc.d.ts +19 -0
  266. package/dist/src/proto/gen/dxos/rpc.d.ts.map +1 -1
  267. package/dist/src/proto/gen/dxos/rpc.js.map +1 -1
  268. package/dist/src/proto/gen/dxos/tracing.d.ts +0 -79
  269. package/dist/src/proto/gen/dxos/tracing.d.ts.map +1 -1
  270. package/dist/src/proto/gen/google/protobuf.d.ts +326 -40
  271. package/dist/src/proto/gen/google/protobuf.d.ts.map +1 -1
  272. package/dist/src/proto/gen/google/protobuf.js +127 -1
  273. package/dist/src/proto/gen/google/protobuf.js.map +1 -1
  274. package/dist/src/proto/gen/index.d.ts +42 -7
  275. package/dist/src/proto/gen/index.d.ts.map +1 -1
  276. package/dist/src/proto/gen/index.js +1 -1
  277. package/dist/src/proto/gen/index.js.map +1 -1
  278. package/dist/src/proto/index.d.ts +2 -2
  279. package/dist/src/proto/index.d.ts.map +1 -1
  280. package/dist/src/proto/index.js +1 -2
  281. package/dist/src/proto/index.js.map +1 -1
  282. package/dist/src/proto/types.d.ts +1 -1
  283. package/dist/src/space-archive.d.ts +60 -1
  284. package/dist/src/space-archive.d.ts.map +1 -1
  285. package/dist/src/space-archive.js +13 -1
  286. package/dist/src/space-archive.js.map +1 -1
  287. package/dist/src/types.d.ts +2 -2
  288. package/dist/tsconfig.tsbuildinfo +1 -1
  289. package/package.json +19 -17
  290. package/src/FeedProtocol.ts +320 -0
  291. package/src/FunctionProtocol.ts +102 -0
  292. package/src/automerge.ts +8 -0
  293. package/src/buf/proto/gen/dxos/agent/dashboard_pb.ts +3 -3
  294. package/src/buf/proto/gen/dxos/agent/echo-proxy_pb.ts +3 -3
  295. package/src/buf/proto/gen/dxos/agent/epoch_pb.ts +3 -3
  296. package/src/buf/proto/gen/dxos/agent/functions_pb.ts +3 -3
  297. package/src/buf/proto/gen/dxos/bot_pb.ts +3 -3
  298. package/src/buf/proto/gen/dxos/client/invitation_pb.ts +3 -3
  299. package/src/buf/proto/gen/dxos/client/logging_pb.ts +3 -3
  300. package/src/buf/proto/gen/dxos/client/queue_pb.ts +280 -0
  301. package/src/buf/proto/gen/dxos/client/services_pb.ts +191 -62
  302. package/src/buf/proto/gen/dxos/config_pb.ts +166 -10
  303. package/src/buf/proto/gen/dxos/devtools/diagnostics_pb.ts +3 -3
  304. package/src/buf/proto/gen/dxos/devtools/host_pb.ts +3 -3
  305. package/src/buf/proto/gen/dxos/devtools/swarm_pb.ts +3 -3
  306. package/src/buf/proto/gen/dxos/echo/blob_pb.ts +3 -3
  307. package/src/buf/proto/gen/dxos/echo/feed_pb.ts +3 -3
  308. package/src/buf/proto/gen/dxos/echo/filter_pb.ts +3 -3
  309. package/src/buf/proto/gen/dxos/echo/indexing_pb.ts +3 -3
  310. package/src/buf/proto/gen/dxos/echo/metadata_pb.ts +11 -4
  311. package/src/buf/proto/gen/dxos/echo/model/document_pb.ts +3 -3
  312. package/src/buf/proto/gen/dxos/echo/model/messenger_pb.ts +3 -3
  313. package/src/buf/proto/gen/dxos/echo/model/text_pb.ts +3 -3
  314. package/src/buf/proto/gen/dxos/echo/object_pb.ts +3 -3
  315. package/src/buf/proto/gen/dxos/echo/query_pb.ts +18 -6
  316. package/src/buf/proto/gen/dxos/echo/service_pb.ts +87 -18
  317. package/src/buf/proto/gen/dxos/echo/snapshot_pb.ts +3 -3
  318. package/src/buf/proto/gen/dxos/echo/timeframe_pb.ts +3 -3
  319. package/src/buf/proto/gen/dxos/edge/calls_pb.ts +3 -3
  320. package/src/buf/proto/gen/dxos/edge/messenger_pb.ts +41 -8
  321. package/src/buf/proto/gen/dxos/edge/signal_pb.ts +3 -3
  322. package/src/buf/proto/gen/dxos/error_pb.ts +3 -3
  323. package/src/buf/proto/gen/dxos/field_options_pb.ts +3 -3
  324. package/src/buf/proto/gen/dxos/google_pb.ts +3 -3
  325. package/src/buf/proto/gen/dxos/gravity_pb.ts +3 -3
  326. package/src/buf/proto/gen/dxos/halo/credentials/auth_pb.ts +3 -3
  327. package/src/buf/proto/gen/dxos/halo/credentials/greet_pb.ts +3 -3
  328. package/src/buf/proto/gen/dxos/halo/credentials/identity_pb.ts +3 -3
  329. package/src/buf/proto/gen/dxos/halo/credentials_pb.ts +51 -5
  330. package/src/buf/proto/gen/dxos/halo/invitations_pb.ts +3 -3
  331. package/src/buf/proto/gen/dxos/halo/keyring_pb.ts +3 -3
  332. package/src/buf/proto/gen/dxos/halo/keys_pb.ts +3 -3
  333. package/src/buf/proto/gen/dxos/halo/signed_pb.ts +3 -3
  334. package/src/buf/proto/gen/dxos/iframe_pb.ts +5 -16
  335. package/src/buf/proto/gen/dxos/keys_pb.ts +3 -3
  336. package/src/buf/proto/gen/dxos/mesh/bridge_pb.ts +3 -3
  337. package/src/buf/proto/gen/dxos/mesh/broadcast_pb.ts +3 -3
  338. package/src/buf/proto/gen/dxos/mesh/messaging_pb.ts +3 -3
  339. package/src/buf/proto/gen/dxos/mesh/muxer_pb.ts +3 -3
  340. package/src/buf/proto/gen/dxos/mesh/presence_pb.ts +3 -3
  341. package/src/buf/proto/gen/dxos/mesh/protocol_pb.ts +3 -3
  342. package/src/buf/proto/gen/dxos/mesh/replicator_pb.ts +3 -3
  343. package/src/buf/proto/gen/dxos/mesh/signal_pb.ts +3 -3
  344. package/src/buf/proto/gen/dxos/mesh/swarm_pb.ts +3 -3
  345. package/src/buf/proto/gen/dxos/mesh/teleport/admission-discovery_pb.ts +3 -3
  346. package/src/buf/proto/gen/dxos/mesh/teleport/auth_pb.ts +3 -3
  347. package/src/buf/proto/gen/dxos/mesh/teleport/automerge_pb.ts +3 -3
  348. package/src/buf/proto/gen/dxos/mesh/teleport/blobsync_pb.ts +3 -3
  349. package/src/buf/proto/gen/dxos/mesh/teleport/control_pb.ts +3 -3
  350. package/src/buf/proto/gen/dxos/mesh/teleport/gossip_pb.ts +3 -3
  351. package/src/buf/proto/gen/dxos/mesh/teleport/notarization_pb.ts +3 -3
  352. package/src/buf/proto/gen/dxos/mesh/teleport/replicator_pb.ts +3 -3
  353. package/src/buf/proto/gen/dxos/registry_pb.ts +3 -3
  354. package/src/buf/proto/gen/dxos/rpc_pb.ts +39 -10
  355. package/src/buf/proto/gen/dxos/service/agentmanager_pb.ts +3 -3
  356. package/src/buf/proto/gen/dxos/service/publisher_pb.ts +3 -3
  357. package/src/buf/proto/gen/dxos/service/supervisor_pb.ts +3 -3
  358. package/src/buf/proto/gen/dxos/service/tunnel_pb.ts +3 -3
  359. package/src/buf/proto/gen/dxos/tracing_pb.ts +12 -179
  360. package/src/buf/proto/gen/dxos/type_pb.ts +3 -3
  361. package/src/buf/proto/gen/dxos/value_pb.ts +3 -3
  362. package/src/buf/proto/gen/example/testing/data_pb.ts +3 -3
  363. package/src/buf/proto/gen/example/testing/rpc_pb.ts +3 -3
  364. package/src/codec.test.ts +1 -1
  365. package/src/edge/EdgeFunctionEnv.ts +191 -0
  366. package/src/edge/edge.ts +604 -0
  367. package/src/edge/errors.ts +85 -0
  368. package/src/edge/index.ts +8 -0
  369. package/src/edge/registry.ts +96 -0
  370. package/src/errors/base-errors.ts +4 -20
  371. package/src/errors/encoding.ts +2 -2
  372. package/src/errors/errors.test.ts +2 -2
  373. package/src/errors/errors.ts +57 -123
  374. package/src/errors/helpers.ts +6 -6
  375. package/src/errors/index.ts +5 -5
  376. package/src/feed-replication.ts +1 -0
  377. package/src/index.ts +12 -12
  378. package/src/indexing.test.ts +1 -1
  379. package/src/indexing.ts +1 -1
  380. package/src/invitation.ts +1 -1
  381. package/src/messenger.ts +22 -0
  382. package/src/proto/dxos/client/queue.proto +78 -0
  383. package/src/proto/dxos/client/services.proto +39 -4
  384. package/src/proto/dxos/config.proto +83 -40
  385. package/src/proto/dxos/echo/metadata.proto +3 -0
  386. package/src/proto/dxos/echo/query.proto +4 -1
  387. package/src/proto/dxos/echo/service.proto +38 -6
  388. package/src/proto/dxos/edge/messenger.proto +10 -0
  389. package/src/proto/dxos/halo/credentials.proto +15 -0
  390. package/src/proto/dxos/iframe.proto +1 -3
  391. package/src/proto/dxos/rpc.proto +7 -0
  392. package/src/proto/dxos/tracing.proto +0 -40
  393. package/src/proto/gen/dxos/client/services.ts +190 -5
  394. package/src/proto/gen/dxos/config.ts +87 -2
  395. package/src/proto/gen/dxos/devtools/host.ts +31 -31
  396. package/src/proto/gen/dxos/echo/metadata.ts +4 -0
  397. package/src/proto/gen/dxos/echo/query.ts +17 -1
  398. package/src/proto/gen/dxos/echo/service.ts +42 -8
  399. package/src/proto/gen/dxos/edge/messenger.ts +24 -0
  400. package/src/proto/gen/dxos/halo/credentials.ts +15 -1
  401. package/src/proto/gen/dxos/iframe.ts +0 -10
  402. package/src/proto/gen/dxos/rpc.ts +19 -0
  403. package/src/proto/gen/dxos/tracing.ts +0 -76
  404. package/src/proto/gen/google/protobuf.ts +326 -40
  405. package/src/proto/gen/index.ts +43 -8
  406. package/src/proto/index.ts +2 -2
  407. package/src/proto/types.ts +1 -1
  408. package/src/space-archive.ts +70 -1
  409. package/src/types.ts +2 -2
  410. package/dist/src/edge-error.d.ts +0 -26
  411. package/dist/src/edge-error.d.ts.map +0 -1
  412. package/dist/src/edge-error.js +0 -62
  413. package/dist/src/edge-error.js.map +0 -1
  414. package/dist/src/edge.d.ts +0 -198
  415. package/dist/src/edge.d.ts.map +0 -1
  416. package/dist/src/edge.js +0 -43
  417. package/dist/src/edge.js.map +0 -1
  418. package/dist/src/query.d.ts +0 -5
  419. package/dist/src/query.d.ts.map +0 -1
  420. package/dist/src/query.js +0 -8
  421. package/dist/src/query.js.map +0 -1
  422. package/dist/src/queue.d.ts +0 -24
  423. package/dist/src/queue.d.ts.map +0 -1
  424. package/dist/src/queue.js +0 -4
  425. package/dist/src/queue.js.map +0 -1
  426. package/src/edge-error.ts +0 -79
  427. package/src/edge.ts +0 -222
  428. package/src/query.ts +0 -8
  429. package/src/queue.ts +0 -33
@@ -0,0 +1,96 @@
1
+ //
2
+ // Copyright 2026 DXOS.org
3
+ //
4
+
5
+ import * as Schema from 'effect/Schema';
6
+
7
+ /**
8
+ * Hydrated plugin metadata, mirroring the @dxos/app-framework `Plugin.Meta` shape.
9
+ *
10
+ * Defined locally rather than imported from @dxos/app-framework to keep the protocols
11
+ * package free of UI/runtime dependencies. Consumers can treat decoded values as
12
+ * `Plugin.Meta` directly.
13
+ */
14
+ export const PluginMetaSchema = Schema.Struct({
15
+ id: Schema.String.pipe(Schema.nonEmptyString()),
16
+ name: Schema.String.pipe(Schema.nonEmptyString()),
17
+ description: Schema.optional(Schema.String),
18
+ homePage: Schema.optional(Schema.String),
19
+ source: Schema.optional(Schema.String),
20
+ screenshots: Schema.optional(Schema.Array(Schema.String)),
21
+ tags: Schema.optional(Schema.Array(Schema.String)),
22
+ icon: Schema.optional(Schema.String),
23
+ iconHue: Schema.optional(Schema.String),
24
+ });
25
+ export type PluginMeta = Schema.Schema.Type<typeof PluginMetaSchema>;
26
+
27
+ /**
28
+ * Health signal the registry service attaches to a hydrated entry when a refresh fails.
29
+ * Clients surface the appropriate badge or filter entries based on this field.
30
+ */
31
+ export const PluginHealthSchema = Schema.Literal('ok', 'release-missing', 'manifest-invalid', 'repo-unavailable');
32
+ export type PluginHealth = Schema.Schema.Type<typeof PluginHealthSchema>;
33
+
34
+ /**
35
+ * Shape of the manifest-asset JSON the registry service fetches from each plugin's latest release.
36
+ * Extends {@link PluginMetaSchema} with an optional override for the module bundle filename
37
+ * (defaults to `plugin.mjs`).
38
+ */
39
+ export const PluginManifestSchema = Schema.Struct({
40
+ ...PluginMetaSchema.fields,
41
+ moduleFile: Schema.optional(Schema.String),
42
+ });
43
+ export type PluginManifest = Schema.Schema.Type<typeof PluginManifestSchema>;
44
+
45
+ /**
46
+ * Single hydrated plugin entry returned by the registry service.
47
+ */
48
+ export const PluginEntrySchema = Schema.Struct({
49
+ /** GitHub repository in `owner/name` form. */
50
+ repo: Schema.String.pipe(Schema.nonEmptyString()),
51
+ /** Plugin metadata from the repo's latest-release `manifest.json`. */
52
+ meta: PluginMetaSchema,
53
+ /**
54
+ * URL from which Composer can dynamic-import the plugin module. The registry service is
55
+ * responsible for returning a URL that is CORS-safe for browser `import()` (e.g. served or
56
+ * proxied by the service itself); clients pass this value directly to the URL loader.
57
+ */
58
+ moduleUrl: Schema.String,
59
+ /** Release tag the entry was resolved from (e.g. `v0.1.0`). */
60
+ releaseTag: Schema.String,
61
+ /** Health signal set by the service when an entry fails to refresh. */
62
+ health: PluginHealthSchema,
63
+ /** Unix ms when this entry was last successfully hydrated. */
64
+ hydratedAt: Schema.Number,
65
+ });
66
+ export type PluginEntry = Schema.Schema.Type<typeof PluginEntrySchema>;
67
+
68
+ /**
69
+ * Response body of `GET /registry/plugins`.
70
+ */
71
+ export const GetPluginsResponseBodySchema = Schema.Struct({
72
+ /** Wire-format schema version, pinned to 1. */
73
+ version: Schema.Literal(1),
74
+ /** Hydrated entries. Order matches the order in the upstream catalog manifest. */
75
+ plugins: Schema.Array(PluginEntrySchema),
76
+ /** Unix ms timestamp of the most recent successful refresh cycle. */
77
+ refreshedAt: Schema.Number,
78
+ });
79
+ export type GetPluginsResponseBody = Schema.Schema.Type<typeof GetPluginsResponseBodySchema>;
80
+
81
+ /**
82
+ * Shape of the catalog manifest published in the upstream community-plugins repo.
83
+ * Extra keys (e.g. `$schema`) are permitted.
84
+ */
85
+ export const RegistryManifestSchema = Schema.Struct(
86
+ {
87
+ version: Schema.Literal(1),
88
+ plugins: Schema.Array(
89
+ Schema.Struct({
90
+ repo: Schema.String,
91
+ }),
92
+ ),
93
+ },
94
+ Schema.Record({ key: Schema.String, value: Schema.Unknown }),
95
+ );
96
+ export type RegistryManifest = Schema.Schema.Type<typeof RegistryManifestSchema>;
@@ -6,37 +6,21 @@
6
6
  * NOTE: Messages should be sentences (Start with a capital letter and end with a period).
7
7
  * Errors can optionally include a JSON context object.
8
8
  */
9
- export class BaseError extends Error {
10
- constructor(
11
- readonly code: string,
12
- message?: string,
13
- readonly context?: Record<string, any>,
14
- ) {
15
- // TODO(dmaretskyi): Error.cause.
16
- super(message ?? code);
17
- this.name = code;
18
- // NOTE: Restores prototype chain (https://stackoverflow.com/a/48342359).
19
- Object.setPrototypeOf(this, new.target.prototype);
20
- }
21
- }
22
-
23
- // TODO(dmaretskyi): Consider common error classes with error codes:
24
- // throw new SystemError(ERROR_CODE_OUT_OF_MEMORY, 'Out of memory', { a: 1, b: 2 });
9
+ import { BaseError } from '@dxos/errors';
25
10
 
26
11
  /**
27
12
  * User facing API Errors.
28
13
  * E.g., something was misconfigured.
29
14
  */
30
- export class ApiError extends BaseError {}
15
+ export class ApiError extends BaseError.extend('ApiError') {}
31
16
 
32
17
  /**
33
18
  * Internal system errors.
34
19
  * E.g., unexpected/unrecoverable runtime error.
35
20
  */
36
- export class SystemError extends BaseError {}
21
+ export class SystemError extends BaseError.extend('SystemError') {}
37
22
 
38
23
  /**
39
24
  * Database errors.
40
25
  */
41
- // TODO(wittjosiah): Same as ApiError?
42
- export class DatabaseError extends BaseError {}
26
+ export class DatabaseError extends BaseError.extend('DatabaseError') {}
@@ -2,8 +2,8 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- import { reconstructError } from './helpers.js';
6
- import { type Error as SerializedErrorProto } from '../proto/gen/dxos/error.js';
5
+ import { type Error as SerializedErrorProto } from '../proto/gen/dxos/error.ts';
6
+ import { reconstructError } from './helpers.ts';
7
7
 
8
8
  export const encodeError = (err: any): SerializedErrorProto => {
9
9
  if (typeof err === 'object' && err?.message) {
@@ -4,12 +4,12 @@
4
4
 
5
5
  import { describe, expect, test } from 'vitest';
6
6
 
7
- import { ApiError } from './base-errors.js';
7
+ import { ApiError } from './base-errors.ts';
8
8
 
9
9
  describe('Errors', () => {
10
10
  test('test', async () => {
11
11
  const runTest = async () => {
12
- throw new ApiError('Test error');
12
+ throw new ApiError({ message: 'Test error' });
13
13
  };
14
14
 
15
15
  await expect(runTest()).rejects.toThrowError('Test error');
@@ -2,207 +2,141 @@
2
2
  // Copyright 2021 DXOS.org
3
3
  //
4
4
 
5
+ import { BaseError } from '@dxos/errors';
5
6
  import { PublicKey } from '@dxos/keys';
6
7
 
7
- import { ApiError, BaseError, DatabaseError, SystemError } from './base-errors.js';
8
- import { registerError, registerErrorMessageContext, registerErrorNoArgs } from './helpers.js';
9
- import type { ObjectId } from '../types.js';
8
+ import type { ObjectId } from '../types.ts';
9
+ import { registerError, registerErrorMessageContext, registerErrorNoArgs } from './helpers.ts';
10
10
 
11
11
  /**
12
12
  * Thrown when request was terminated because the RPC endpoint has been closed.
13
13
  */
14
- export class RpcClosedError extends SystemError {
15
- constructor() {
16
- super('RPC_CLOSED', 'Request was terminated because the RPC endpoint is closed.');
17
- }
18
- }
14
+ export class RpcClosedError extends BaseError.extend(
15
+ 'RpcClosedError',
16
+ 'Request was terminated because the RPC endpoint is closed.',
17
+ ) {}
19
18
 
20
- registerErrorNoArgs('RPC_CLOSED', RpcClosedError);
19
+ registerErrorNoArgs('RpcClosedError', RpcClosedError);
21
20
 
22
21
  /**
23
22
  * Thrown when `request` is called when RPC has not been opened.
24
23
  */
25
- export class RpcNotOpenError extends SystemError {
26
- constructor() {
27
- super('RPC_NOT_OPEN', 'RPC has not been opened.');
28
- }
29
- }
24
+ export class RpcNotOpenError extends BaseError.extend('RpcNotOpenError', 'RPC has not been opened.') {}
30
25
 
31
- registerErrorNoArgs('RPC_NOT_OPEN', RpcNotOpenError);
26
+ registerErrorNoArgs('RpcNotOpenError', RpcNotOpenError);
32
27
 
33
- export class CancelledError extends SystemError {
34
- constructor(message?: string, context?: Record<string, any>) {
35
- super('CANCELLED', message, context);
36
- }
37
- }
28
+ export class CancelledError extends BaseError.extend('CancelledError') {}
38
29
 
39
- registerErrorMessageContext('CANCELLED', CancelledError);
30
+ registerErrorMessageContext('CancelledError', CancelledError);
40
31
 
41
- export class InvalidConfigError extends ApiError {
42
- constructor(message?: string, context?: Record<string, any>) {
43
- super('INVALID_CONFIG', message, context);
44
- }
45
- }
32
+ export class InvalidConfigError extends BaseError.extend('InvalidConfigError') {}
46
33
 
47
- registerErrorMessageContext('INVALID_CONFIG', InvalidConfigError);
34
+ registerErrorMessageContext('InvalidConfigError', InvalidConfigError);
48
35
 
49
36
  /**
50
37
  * Explicit failure to connect with remote client services.
51
38
  */
52
- export class RemoteServiceConnectionError extends ApiError {
53
- constructor(message?: string, context?: Record<string, any>) {
54
- super('REMOTE_SERVICE_CONNECTION_ERROR', message, context);
55
- }
56
- }
39
+ export class RemoteServiceConnectionError extends BaseError.extend('RemoteServiceConnectionError') {}
57
40
 
58
- registerErrorMessageContext('REMOTE_SERVICE_CONNECTION_ERROR', RemoteServiceConnectionError);
41
+ registerErrorMessageContext('RemoteServiceConnectionError', RemoteServiceConnectionError);
59
42
 
60
43
  /**
61
44
  * Failed to open a connection to remote client services.
62
45
  */
63
- export class RemoteServiceConnectionTimeout extends ApiError {
64
- constructor(message?: string, context?: Record<string, any>) {
65
- super('REMOTE_SERVICE_CONNECTION_TIMEOUT', message, context);
66
- }
67
- }
46
+ export class RemoteServiceConnectionTimeout extends BaseError.extend('RemoteServiceConnectionTimeout') {}
68
47
 
69
- registerErrorMessageContext('REMOTE_SERVICE_CONNECTION_TIMEOUT', RemoteServiceConnectionTimeout);
48
+ registerErrorMessageContext('RemoteServiceConnectionTimeout', RemoteServiceConnectionTimeout);
70
49
 
71
- export class DataCorruptionError extends SystemError {
72
- constructor(message?: string, context?: Record<string, any>) {
73
- super('DATA_CORRUPTION', message, context);
74
- }
75
- }
50
+ export class DataCorruptionError extends BaseError.extend('DataCorruptionError') {}
76
51
 
77
- registerErrorMessageContext('DATA_CORRUPTION', DataCorruptionError);
52
+ registerErrorMessageContext('DataCorruptionError', DataCorruptionError);
78
53
 
79
- export class InvalidInvitationExtensionRoleError extends SystemError {
80
- constructor(message?: string, context?: Record<string, any>) {
81
- super('INVALID_INVITATION_EXTENSION_ROLE', message, context);
82
- }
83
- }
54
+ export class InvalidInvitationExtensionRoleError extends BaseError.extend('InvalidInvitationExtensionRoleError') {}
84
55
 
85
- registerErrorMessageContext('INVALID_INVITATION_EXTENSION_ROLE', InvalidInvitationExtensionRoleError);
56
+ registerErrorMessageContext('InvalidInvitationExtensionRoleError', InvalidInvitationExtensionRoleError);
86
57
 
87
- export class IdentityNotInitializedError extends DatabaseError {
88
- constructor(message?: string, context?: Record<string, any>) {
89
- super('IDENTITY_NOT_INITIALIZED', message, context);
90
- }
91
- }
58
+ export class IdentityNotInitializedError extends BaseError.extend('IdentityNotInitializedError') {}
92
59
 
93
- registerErrorMessageContext('IDENTITY_NOT_INITIALIZED', IdentityNotInitializedError);
60
+ registerErrorMessageContext('IdentityNotInitializedError', IdentityNotInitializedError);
94
61
 
95
- export class InvalidInvitationError extends DatabaseError {
96
- constructor(message?: string, context?: Record<string, any>) {
97
- super('INVALID_INVITATION', message, context);
98
- }
99
- }
62
+ export class InvalidInvitationError extends BaseError.extend('InvalidInvitationError') {}
100
63
 
101
- registerErrorMessageContext('INVALID_INVITATION', InvalidInvitationError);
64
+ registerErrorMessageContext('InvalidInvitationError', InvalidInvitationError);
102
65
 
103
- export class AlreadyJoinedError extends DatabaseError {
104
- constructor(message?: string, context?: Record<string, any>) {
105
- super('ALREADY_JOINED', message, context);
106
- }
107
- }
66
+ export class AlreadyJoinedError extends BaseError.extend('AlreadyJoinedError') {}
108
67
 
109
- registerErrorMessageContext('ALREADY_JOINED', AlreadyJoinedError);
68
+ registerErrorMessageContext('AlreadyJoinedError', AlreadyJoinedError);
110
69
 
111
- export class ConnectionResetError extends BaseError {
112
- constructor(message?: string, context?: any) {
113
- super('CONNECTION_RESET', message, context);
114
- }
115
- }
70
+ export class ConnectionResetError extends BaseError.extend('ConnectionResetError') {}
116
71
 
117
- registerErrorMessageContext('CONNECTION_RESET', ConnectionResetError);
72
+ registerErrorMessageContext('ConnectionResetError', ConnectionResetError);
118
73
 
119
- export class TimeoutError extends BaseError {
120
- constructor(message?: string, context?: any) {
121
- super('TIMEOUT', message, context);
122
- }
123
- }
74
+ export class TimeoutError extends BaseError.extend('TimeoutError') {}
124
75
 
125
- registerErrorMessageContext('TIMEOUT', TimeoutError);
76
+ registerErrorMessageContext('TimeoutError', TimeoutError);
126
77
 
127
78
  // General protocol error.
128
- export class ProtocolError extends BaseError {
129
- constructor(message?: string, context?: any) {
130
- super('PROTOCOL_ERROR', message, context);
131
- }
132
- }
79
+ export class ProtocolError extends BaseError.extend('ProtocolError') {}
133
80
 
134
- registerErrorMessageContext('PROTOCOL_ERROR', ProtocolError);
81
+ registerErrorMessageContext(ProtocolError.name, ProtocolError);
135
82
 
136
83
  // General connectivity errors.
137
- export class ConnectivityError extends BaseError {
138
- constructor(message?: string, context?: any) {
139
- super('CONNECTIVITY_ERROR', message, context);
140
- }
141
- }
84
+ export class ConnectivityError extends BaseError.extend('ConnectivityError') {}
142
85
 
143
- registerErrorMessageContext('CONNECTIVITY_ERROR', ConnectivityError);
86
+ registerErrorMessageContext('ConnectivityError', ConnectivityError);
144
87
 
145
- export class RateLimitExceededError extends BaseError {
146
- constructor(message?: string, context?: any) {
147
- super('RATE_LIMIT_EXCEEDED', message, context);
148
- }
149
- }
88
+ export class RateLimitExceededError extends BaseError.extend('RateLimitExceededError') {}
150
89
 
151
- registerErrorMessageContext('RATE_LIMIT_EXCEEDED', RateLimitExceededError);
90
+ registerErrorMessageContext('RateLimitExceededError', RateLimitExceededError);
152
91
 
153
92
  // TODO(nf): Rename? the protocol isn't what's unknown...
154
- export class UnknownProtocolError extends BaseError {
155
- constructor(message?: string, innerError?: Error) {
156
- super('UNKNOWN_PROTOCOL_ERROR', message, innerError);
157
- }
158
- }
93
+ export class UnknownProtocolError extends BaseError.extend('UnknownProtocolError') {}
159
94
 
160
- registerErrorMessageContext('UNKNOWN_PROTOCOL_ERROR', UnknownProtocolError);
95
+ registerError(UnknownProtocolError.name, (message, context) => new UnknownProtocolError({ message, context }));
161
96
 
162
- export class InvalidStorageVersionError extends DatabaseError {
97
+ export class InvalidStorageVersionError extends BaseError.extend(
98
+ 'InvalidStorageVersionError',
99
+ 'Invalid storage version.',
100
+ ) {
163
101
  constructor(expected: number, actual: number) {
164
- super('INVALID_STORAGE_VERSION', 'Invalid storage version.', { expected, actual });
102
+ super({ context: { expected, actual } });
165
103
  }
166
104
  }
167
105
 
168
- registerError('INVALID_STORAGE_VERSION', (_, context) => {
106
+ registerError('InvalidStorageVersionError', (_, context) => {
169
107
  return new InvalidStorageVersionError(context.expected ?? NaN, context.actual ?? NaN);
170
108
  });
171
109
 
172
- export class SpaceNotFoundError extends DatabaseError {
110
+ export class SpaceNotFoundError extends BaseError.extend('SpaceNotFoundError', 'Space not found.') {
173
111
  constructor(spaceKey: PublicKey) {
174
- super('SPACE_NOT_FOUND', 'Space not found.', { spaceKey });
112
+ super({ context: { spaceKey } });
175
113
  }
176
114
  }
177
115
 
178
- registerError('SPACE_NOT_FOUND', (_, context) => {
116
+ registerError('SpaceNotFoundError', (_, context) => {
179
117
  return new SpaceNotFoundError(PublicKey.safeFrom(context.spaceKey) ?? PublicKey.from('00'));
180
118
  });
181
119
 
182
- export class EntityNotFoundError extends DatabaseError {
120
+ export class EntityNotFoundError extends BaseError.extend('EntityNotFoundError', 'Item not found.') {
183
121
  constructor(entityId: ObjectId) {
184
- super('ITEM_NOT_FOUND', 'Item not found.', { entityId });
122
+ super({ context: { entityId } });
185
123
  }
186
124
  }
187
125
 
188
- registerError('ITEM_NOT_FOUND', (_, context) => {
126
+ registerError('EntityNotFoundError', (_, context) => {
189
127
  return new EntityNotFoundError(context.entityId);
190
128
  });
191
129
 
192
- export class UnknownModelError extends DatabaseError {
130
+ export class UnknownModelError extends BaseError.extend('UnknownModelError', 'Unknown model.') {
193
131
  constructor(model: string) {
194
- super('UNKNOWN_MODEL', 'Unknown model.', { model });
132
+ super({ context: { model } });
195
133
  }
196
134
  }
197
135
 
198
- registerError('UNKNOWN_MODEL', (_, context) => {
136
+ registerError('UnknownModelError', (_, context) => {
199
137
  return new UnknownModelError(context.model);
200
138
  });
201
139
 
202
- export class AuthorizationError extends ApiError {
203
- constructor(message?: string, context?: any) {
204
- super('AUTHORIZATION_ERROR', message, context);
205
- }
206
- }
140
+ export class AuthorizationError extends BaseError.extend('AuthorizationError') {}
207
141
 
208
- registerErrorMessageContext('AUTHORIZATION_ERROR', AuthorizationError);
142
+ registerErrorMessageContext('AuthorizationError', AuthorizationError);
@@ -2,10 +2,10 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
+ import { BaseError } from '@dxos/errors';
5
6
  import { invariant } from '@dxos/invariant';
6
7
 
7
- import { SystemError } from './base-errors.js';
8
- import { type Error as SerializedErrorProto } from '../proto/gen/dxos/error.js';
8
+ import { type Error as SerializedErrorProto } from '../proto/gen/dxos/error.ts';
9
9
 
10
10
  export const reconstructError = (error: SerializedErrorProto) => {
11
11
  const { name, message, context } = error;
@@ -19,21 +19,21 @@ export const registerError = (code: string, make: (message?: string, context?: a
19
19
  errorRegistry.set(code, make);
20
20
  };
21
21
 
22
- export const registerErrorNoArgs = (code: string, Constructor: { new (): Error }) => {
22
+ export const registerErrorNoArgs = (code: string, Constructor: { new (options?: any): Error }) => {
23
23
  registerError(code, () => new Constructor());
24
24
  };
25
25
 
26
26
  export const registerErrorMessageContext = (
27
27
  code: string,
28
- Constructor: { new (message?: string, context?: any): Error },
28
+ Constructor: { new (options?: { message?: string; context?: any }): Error },
29
29
  ) => {
30
- registerError(code, (message?: string, context?: string) => new Constructor(message, context));
30
+ registerError(code, (message?: string, context?: any) => new Constructor({ message, context }));
31
31
  };
32
32
 
33
33
  export const errorFromCode = (code?: string, message?: string, context?: any) => {
34
34
  if (code && errorRegistry.has(code)) {
35
35
  return errorRegistry.get(code)!(message, context);
36
36
  } else {
37
- return new SystemError(code ?? 'Error', message, context);
37
+ return new BaseError(code ?? 'Error', { message, context });
38
38
  }
39
39
  };
@@ -2,8 +2,8 @@
2
2
  // Copyright 2022 DXOS.org
3
3
  //
4
4
 
5
- export * from './encoding.js';
6
- export * from './errors.js';
7
- export * from './helpers.js';
8
- export * from './base-errors.js';
9
- export * from './parameter.js';
5
+ export * from './encoding.ts';
6
+ export * from './errors.ts';
7
+ export * from './helpers.ts';
8
+ export * from './base-errors.ts';
9
+ export * from './parameter.ts';
@@ -12,6 +12,7 @@ export type FeedBlock = {
12
12
  }[];
13
13
  signature: Uint8Array;
14
14
  };
15
+
15
16
  export type GetMetadataProtocolMessage = {
16
17
  type: 'get-metadata';
17
18
  feedKey: string;
package/src/index.ts CHANGED
@@ -2,15 +2,15 @@
2
2
  // Copyright 2021 DXOS.org
3
3
  //
4
4
 
5
- export * from './errors/index.js';
6
- export * from './indexing.js';
7
- export * from './storage.js';
8
- export * from './tracing.js';
9
- export * from './types.js';
10
- export * from './query.js';
11
- export * from './profile-archive.js';
12
- export * from './automerge.js';
13
- export * from './edge.js';
14
- export * from './queue.js';
15
- export * from './space-archive.js';
16
- export * from './edge-error.js';
5
+ export * from './automerge.ts';
6
+ export * from './edge/index.ts';
7
+ export * from './errors/index.ts';
8
+ export * from './indexing.ts';
9
+ export * from './messenger.ts';
10
+ export * from './profile-archive.ts';
11
+ export * from './space-archive.ts';
12
+ export * from './storage.ts';
13
+ export * from './tracing.ts';
14
+ export type * from './types.ts';
15
+ export * as FunctionProtocol from './FunctionProtocol.ts';
16
+ export * as FeedProtocol from './FeedProtocol.ts';
@@ -4,7 +4,7 @@
4
4
 
5
5
  import { describe, expect, test } from 'vitest';
6
6
 
7
- import { ObjectPointerVersion, objectPointerCodec } from './indexing.js';
7
+ import { ObjectPointerVersion, objectPointerCodec } from './indexing.ts';
8
8
 
9
9
  describe('Indexing object pointer codec', () => {
10
10
  test('getVersion', async () => {
package/src/indexing.ts CHANGED
@@ -2,7 +2,7 @@
2
2
  // Copyright 2024 DXOS.org
3
3
  //
4
4
 
5
- import { Schema } from 'effect';
5
+ import * as Schema from 'effect/Schema';
6
6
 
7
7
  export type ObjectPointerDecoded = {
8
8
  spaceKey: string | undefined;
package/src/invitation.ts CHANGED
@@ -2,7 +2,7 @@
2
2
  // Copyright 2024 DXOS.org
3
3
  //
4
4
 
5
- import { Schema } from 'effect';
5
+ import * as Schema from 'effect/Schema';
6
6
 
7
7
  import { ParamKeyAnnotation } from '@dxos/effect';
8
8
 
@@ -0,0 +1,22 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import { type CleanupFn } from '@dxos/async';
6
+
7
+ import { type GossipMessage } from './proto/gen/dxos/mesh/teleport/gossip';
8
+
9
+ /**
10
+ * Message passing abstraction.
11
+ */
12
+ export interface Messenger {
13
+ /**
14
+ * Register channel listener.
15
+ */
16
+ listen: (channel: string, callback: (message: GossipMessage) => void) => CleanupFn;
17
+
18
+ /**
19
+ * Send message to channel.
20
+ */
21
+ postMessage: (channel: string, message: any) => Promise<void>;
22
+ }
@@ -0,0 +1,78 @@
1
+ syntax = "proto3";
2
+
3
+ package dxos.client.services;
4
+
5
+ import "google/protobuf/struct.proto";
6
+ import "google/protobuf/empty.proto";
7
+
8
+
9
+ message QueueQuery {
10
+ string space_id = 1;
11
+
12
+ optional string queues_namespace = 2;
13
+
14
+ /// Queries the whole space if missing.
15
+ repeated string queue_ids = 3;
16
+
17
+ /// Filter items after this cursor. Exclusive.
18
+ optional string after = 4;
19
+
20
+ /// Filter items before this cursor. Exclusive.
21
+ optional string before = 5;
22
+
23
+ /// Filter items after this position. Inclusive.
24
+ optional int64 begin_position = 6;
25
+
26
+ /// Filter items before this position. Exclusive.
27
+ optional int64 end_position = 7;
28
+
29
+ optional int32 limit = 8;
30
+ optional bool reverse = 9;
31
+
32
+ // TODO(dmaretskyi): Remove this field -- raw queues dont index object IDs anymore.
33
+ repeated string object_ids = 100;
34
+ }
35
+
36
+ message QueueQueryResult {
37
+ repeated google.protobuf.Struct objects = 1;
38
+
39
+ /// Cursor to query the next items. Can be passed to `after` in query to keep querying.
40
+ string next_cursor = 2;
41
+
42
+ string prev_cursor = 3;
43
+ }
44
+
45
+ message QueryQueueRequest {
46
+ QueueQuery query = 1;
47
+ }
48
+
49
+ message InsertIntoQueueRequest {
50
+ string subspace_tag = 1;
51
+ string space_id = 2;
52
+ string queue_id = 3;
53
+ repeated google.protobuf.Struct objects = 4;
54
+ }
55
+
56
+ message DeleteFromQueueRequest {
57
+ string subspace_tag = 1;
58
+ string space_id = 2;
59
+ string queue_id = 3;
60
+ repeated string object_ids = 4;
61
+ }
62
+
63
+ message SyncQueueRequest {
64
+ string subspace_tag = 1;
65
+ string space_id = 2;
66
+ string queue_id = 3;
67
+ /// Whether to push local changes to the server. Defaults to true.
68
+ optional bool should_push = 4;
69
+ /// Whether to pull remote changes from the server. Defaults to true.
70
+ optional bool should_pull = 5;
71
+ }
72
+
73
+ service QueueService {
74
+ rpc QueryQueue(QueryQueueRequest) returns (QueueQueryResult);
75
+ rpc InsertIntoQueue(InsertIntoQueueRequest) returns (google.protobuf.Empty);
76
+ rpc DeleteFromQueue(DeleteFromQueueRequest) returns (google.protobuf.Empty);
77
+ rpc SyncQueue(SyncQueueRequest) returns (google.protobuf.Empty);
78
+ }