@dxos/protocols 0.8.4-main.70d3990 → 0.8.4-main.74a063c4e0

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 (231) 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 +8 -2
  7. package/dist/src/FunctionProtocol.d.ts.map +1 -1
  8. package/dist/src/buf/proto/gen/dxos/client/queue_pb.d.ts +231 -0
  9. package/dist/src/buf/proto/gen/dxos/client/queue_pb.d.ts.map +1 -0
  10. package/dist/src/buf/proto/gen/dxos/client/queue_pb.js +44 -0
  11. package/dist/src/buf/proto/gen/dxos/client/queue_pb.js.map +1 -0
  12. package/dist/src/buf/proto/gen/dxos/client/services_pb.d.ts +33 -3
  13. package/dist/src/buf/proto/gen/dxos/client/services_pb.d.ts.map +1 -1
  14. package/dist/src/buf/proto/gen/dxos/client/services_pb.js +46 -37
  15. package/dist/src/buf/proto/gen/dxos/client/services_pb.js.map +1 -1
  16. package/dist/src/buf/proto/gen/dxos/echo/metadata_pb.d.ts +6 -0
  17. package/dist/src/buf/proto/gen/dxos/echo/metadata_pb.d.ts.map +1 -1
  18. package/dist/src/buf/proto/gen/dxos/echo/metadata_pb.js +1 -1
  19. package/dist/src/buf/proto/gen/dxos/echo/metadata_pb.js.map +1 -1
  20. package/dist/src/buf/proto/gen/dxos/echo/query_pb.d.ts +12 -2
  21. package/dist/src/buf/proto/gen/dxos/echo/query_pb.d.ts.map +1 -1
  22. package/dist/src/buf/proto/gen/dxos/echo/query_pb.js +1 -1
  23. package/dist/src/buf/proto/gen/dxos/echo/query_pb.js.map +1 -1
  24. package/dist/src/buf/proto/gen/dxos/echo/service_pb.d.ts +55 -9
  25. package/dist/src/buf/proto/gen/dxos/echo/service_pb.d.ts.map +1 -1
  26. package/dist/src/buf/proto/gen/dxos/echo/service_pb.js +15 -5
  27. package/dist/src/buf/proto/gen/dxos/echo/service_pb.js.map +1 -1
  28. package/dist/src/buf/proto/gen/dxos/edge/messenger_pb.d.ts +28 -0
  29. package/dist/src/buf/proto/gen/dxos/edge/messenger_pb.d.ts.map +1 -1
  30. package/dist/src/buf/proto/gen/dxos/edge/messenger_pb.js +10 -5
  31. package/dist/src/buf/proto/gen/dxos/edge/messenger_pb.js.map +1 -1
  32. package/dist/src/buf/proto/gen/dxos/google_pb.js +1 -1
  33. package/dist/src/buf/proto/gen/dxos/google_pb.js.map +1 -1
  34. package/dist/src/buf/proto/gen/dxos/halo/credentials_pb.d.ts +39 -0
  35. package/dist/src/buf/proto/gen/dxos/halo/credentials_pb.d.ts.map +1 -1
  36. package/dist/src/buf/proto/gen/dxos/halo/credentials_pb.js +27 -2
  37. package/dist/src/buf/proto/gen/dxos/halo/credentials_pb.js.map +1 -1
  38. package/dist/src/buf/proto/gen/dxos/iframe_pb.d.ts +1 -0
  39. package/dist/src/buf/proto/gen/dxos/iframe_pb.d.ts.map +1 -1
  40. package/dist/src/buf/proto/gen/dxos/iframe_pb.js.map +1 -1
  41. package/dist/src/buf/proto/gen/dxos/tracing_pb.js +1 -1
  42. package/dist/src/buf/proto/gen/dxos/tracing_pb.js.map +1 -1
  43. package/dist/src/codec.test.js +1 -1
  44. package/dist/src/edge/EdgeFunctionEnv.d.ts +39 -26
  45. package/dist/src/edge/EdgeFunctionEnv.d.ts.map +1 -1
  46. package/dist/src/edge/edge.d.ts +182 -13
  47. package/dist/src/edge/edge.d.ts.map +1 -1
  48. package/dist/src/edge/edge.js +28 -10
  49. package/dist/src/edge/edge.js.map +1 -1
  50. package/dist/src/edge/errors.d.ts +1 -1
  51. package/dist/src/edge/errors.js +1 -1
  52. package/dist/src/edge/index.d.ts +3 -3
  53. package/dist/src/edge/index.js +3 -3
  54. package/dist/src/errors/base-errors.d.ts +18 -24
  55. package/dist/src/errors/base-errors.d.ts.map +1 -1
  56. package/dist/src/errors/base-errors.js +3 -3
  57. package/dist/src/errors/base-errors.js.map +1 -1
  58. package/dist/src/errors/encoding.d.ts +1 -1
  59. package/dist/src/errors/encoding.d.ts.map +1 -1
  60. package/dist/src/errors/encoding.js +1 -1
  61. package/dist/src/errors/encoding.js.map +1 -1
  62. package/dist/src/errors/errors.d.ts +133 -177
  63. package/dist/src/errors/errors.d.ts.map +1 -1
  64. package/dist/src/errors/errors.js +45 -45
  65. package/dist/src/errors/errors.js.map +1 -1
  66. package/dist/src/errors/errors.test.js +1 -1
  67. package/dist/src/errors/helpers.d.ts +1 -1
  68. package/dist/src/errors/index.d.ts +5 -5
  69. package/dist/src/errors/index.js +5 -5
  70. package/dist/src/index.d.ts +12 -13
  71. package/dist/src/index.d.ts.map +1 -1
  72. package/dist/src/index.js +11 -13
  73. package/dist/src/index.js.map +1 -1
  74. package/dist/src/indexing.test.js +1 -1
  75. package/dist/src/proto/gen/dxos/client/services.d.ts +990 -852
  76. package/dist/src/proto/gen/dxos/client/services.d.ts.map +1 -1
  77. package/dist/src/proto/gen/dxos/client/services.js +95 -94
  78. package/dist/src/proto/gen/dxos/client/services.js.map +1 -1
  79. package/dist/src/proto/gen/dxos/devtools/host.d.ts +31 -31
  80. package/dist/src/proto/gen/dxos/devtools/host.d.ts.map +1 -1
  81. package/dist/src/proto/gen/dxos/echo/metadata.d.ts +4 -0
  82. package/dist/src/proto/gen/dxos/echo/metadata.d.ts.map +1 -1
  83. package/dist/src/proto/gen/dxos/echo/metadata.js.map +1 -1
  84. package/dist/src/proto/gen/dxos/echo/query.d.ts +17 -1
  85. package/dist/src/proto/gen/dxos/echo/query.d.ts.map +1 -1
  86. package/dist/src/proto/gen/dxos/echo/query.js.map +1 -1
  87. package/dist/src/proto/gen/dxos/echo/service.d.ts +34 -8
  88. package/dist/src/proto/gen/dxos/echo/service.d.ts.map +1 -1
  89. package/dist/src/proto/gen/dxos/edge/messenger.d.ts +24 -0
  90. package/dist/src/proto/gen/dxos/edge/messenger.d.ts.map +1 -1
  91. package/dist/src/proto/gen/dxos/edge/messenger.js.map +1 -1
  92. package/dist/src/proto/gen/dxos/halo/credentials.d.ts +15 -1
  93. package/dist/src/proto/gen/dxos/halo/credentials.d.ts.map +1 -1
  94. package/dist/src/proto/gen/dxos/halo/credentials.js +9 -0
  95. package/dist/src/proto/gen/dxos/halo/credentials.js.map +1 -1
  96. package/dist/src/proto/gen/google/protobuf.d.ts +326 -40
  97. package/dist/src/proto/gen/google/protobuf.d.ts.map +1 -1
  98. package/dist/src/proto/gen/google/protobuf.js +127 -1
  99. package/dist/src/proto/gen/google/protobuf.js.map +1 -1
  100. package/dist/src/proto/gen/index.d.ts +36 -0
  101. package/dist/src/proto/gen/index.d.ts.map +1 -1
  102. package/dist/src/proto/gen/index.js +1 -1
  103. package/dist/src/proto/gen/index.js.map +1 -1
  104. package/dist/src/proto/index.d.ts +2 -2
  105. package/dist/src/proto/index.js +1 -1
  106. package/dist/src/proto/types.d.ts +1 -1
  107. package/dist/src/space-archive.d.ts +60 -1
  108. package/dist/src/space-archive.d.ts.map +1 -1
  109. package/dist/src/space-archive.js +13 -1
  110. package/dist/src/space-archive.js.map +1 -1
  111. package/dist/src/types.d.ts +2 -2
  112. package/dist/tsconfig.tsbuildinfo +1 -1
  113. package/package.json +19 -15
  114. package/src/FeedProtocol.ts +320 -0
  115. package/src/FunctionProtocol.ts +8 -6
  116. package/src/buf/proto/gen/dxos/agent/dashboard_pb.ts +1 -1
  117. package/src/buf/proto/gen/dxos/agent/echo-proxy_pb.ts +1 -1
  118. package/src/buf/proto/gen/dxos/agent/epoch_pb.ts +1 -1
  119. package/src/buf/proto/gen/dxos/agent/functions_pb.ts +1 -1
  120. package/src/buf/proto/gen/dxos/bot_pb.ts +1 -1
  121. package/src/buf/proto/gen/dxos/client/invitation_pb.ts +1 -1
  122. package/src/buf/proto/gen/dxos/client/logging_pb.ts +1 -1
  123. package/src/buf/proto/gen/dxos/client/queue_pb.ts +280 -0
  124. package/src/buf/proto/gen/dxos/client/services_pb.ts +77 -40
  125. package/src/buf/proto/gen/dxos/config_pb.ts +1 -1
  126. package/src/buf/proto/gen/dxos/devtools/diagnostics_pb.ts +1 -1
  127. package/src/buf/proto/gen/dxos/devtools/host_pb.ts +1 -1
  128. package/src/buf/proto/gen/dxos/devtools/swarm_pb.ts +1 -1
  129. package/src/buf/proto/gen/dxos/echo/blob_pb.ts +1 -1
  130. package/src/buf/proto/gen/dxos/echo/feed_pb.ts +1 -1
  131. package/src/buf/proto/gen/dxos/echo/filter_pb.ts +1 -1
  132. package/src/buf/proto/gen/dxos/echo/indexing_pb.ts +1 -1
  133. package/src/buf/proto/gen/dxos/echo/metadata_pb.ts +9 -2
  134. package/src/buf/proto/gen/dxos/echo/model/document_pb.ts +1 -1
  135. package/src/buf/proto/gen/dxos/echo/model/messenger_pb.ts +1 -1
  136. package/src/buf/proto/gen/dxos/echo/model/text_pb.ts +1 -1
  137. package/src/buf/proto/gen/dxos/echo/object_pb.ts +1 -1
  138. package/src/buf/proto/gen/dxos/echo/query_pb.ts +16 -4
  139. package/src/buf/proto/gen/dxos/echo/service_pb.ts +68 -16
  140. package/src/buf/proto/gen/dxos/echo/snapshot_pb.ts +1 -1
  141. package/src/buf/proto/gen/dxos/echo/timeframe_pb.ts +1 -1
  142. package/src/buf/proto/gen/dxos/edge/calls_pb.ts +1 -1
  143. package/src/buf/proto/gen/dxos/edge/messenger_pb.ts +39 -6
  144. package/src/buf/proto/gen/dxos/edge/signal_pb.ts +1 -1
  145. package/src/buf/proto/gen/dxos/error_pb.ts +1 -1
  146. package/src/buf/proto/gen/dxos/field_options_pb.ts +1 -1
  147. package/src/buf/proto/gen/dxos/google_pb.ts +1 -1
  148. package/src/buf/proto/gen/dxos/gravity_pb.ts +1 -1
  149. package/src/buf/proto/gen/dxos/halo/credentials/auth_pb.ts +1 -1
  150. package/src/buf/proto/gen/dxos/halo/credentials/greet_pb.ts +1 -1
  151. package/src/buf/proto/gen/dxos/halo/credentials/identity_pb.ts +1 -1
  152. package/src/buf/proto/gen/dxos/halo/credentials_pb.ts +49 -3
  153. package/src/buf/proto/gen/dxos/halo/invitations_pb.ts +1 -1
  154. package/src/buf/proto/gen/dxos/halo/keyring_pb.ts +1 -1
  155. package/src/buf/proto/gen/dxos/halo/keys_pb.ts +1 -1
  156. package/src/buf/proto/gen/dxos/halo/signed_pb.ts +1 -1
  157. package/src/buf/proto/gen/dxos/iframe_pb.ts +2 -1
  158. package/src/buf/proto/gen/dxos/keys_pb.ts +1 -1
  159. package/src/buf/proto/gen/dxos/mesh/bridge_pb.ts +1 -1
  160. package/src/buf/proto/gen/dxos/mesh/broadcast_pb.ts +1 -1
  161. package/src/buf/proto/gen/dxos/mesh/messaging_pb.ts +1 -1
  162. package/src/buf/proto/gen/dxos/mesh/muxer_pb.ts +1 -1
  163. package/src/buf/proto/gen/dxos/mesh/presence_pb.ts +1 -1
  164. package/src/buf/proto/gen/dxos/mesh/protocol_pb.ts +1 -1
  165. package/src/buf/proto/gen/dxos/mesh/replicator_pb.ts +1 -1
  166. package/src/buf/proto/gen/dxos/mesh/signal_pb.ts +1 -1
  167. package/src/buf/proto/gen/dxos/mesh/swarm_pb.ts +1 -1
  168. package/src/buf/proto/gen/dxos/mesh/teleport/admission-discovery_pb.ts +1 -1
  169. package/src/buf/proto/gen/dxos/mesh/teleport/auth_pb.ts +1 -1
  170. package/src/buf/proto/gen/dxos/mesh/teleport/automerge_pb.ts +1 -1
  171. package/src/buf/proto/gen/dxos/mesh/teleport/blobsync_pb.ts +1 -1
  172. package/src/buf/proto/gen/dxos/mesh/teleport/control_pb.ts +1 -1
  173. package/src/buf/proto/gen/dxos/mesh/teleport/gossip_pb.ts +1 -1
  174. package/src/buf/proto/gen/dxos/mesh/teleport/notarization_pb.ts +1 -1
  175. package/src/buf/proto/gen/dxos/mesh/teleport/replicator_pb.ts +1 -1
  176. package/src/buf/proto/gen/dxos/registry_pb.ts +1 -1
  177. package/src/buf/proto/gen/dxos/rpc_pb.ts +1 -1
  178. package/src/buf/proto/gen/dxos/service/agentmanager_pb.ts +1 -1
  179. package/src/buf/proto/gen/dxos/service/publisher_pb.ts +1 -1
  180. package/src/buf/proto/gen/dxos/service/supervisor_pb.ts +1 -1
  181. package/src/buf/proto/gen/dxos/service/tunnel_pb.ts +1 -1
  182. package/src/buf/proto/gen/dxos/tracing_pb.ts +1 -1
  183. package/src/buf/proto/gen/dxos/type_pb.ts +1 -1
  184. package/src/buf/proto/gen/dxos/value_pb.ts +1 -1
  185. package/src/buf/proto/gen/example/testing/data_pb.ts +1 -1
  186. package/src/buf/proto/gen/example/testing/rpc_pb.ts +1 -1
  187. package/src/codec.test.ts +1 -1
  188. package/src/edge/EdgeFunctionEnv.ts +50 -28
  189. package/src/edge/edge.ts +138 -22
  190. package/src/edge/errors.ts +1 -1
  191. package/src/edge/index.ts +3 -3
  192. package/src/errors/base-errors.ts +3 -3
  193. package/src/errors/encoding.ts +2 -3
  194. package/src/errors/errors.test.ts +1 -1
  195. package/src/errors/errors.ts +46 -47
  196. package/src/errors/helpers.ts +1 -1
  197. package/src/errors/index.ts +5 -5
  198. package/src/index.ts +12 -15
  199. package/src/indexing.test.ts +1 -1
  200. package/src/proto/dxos/client/queue.proto +78 -0
  201. package/src/proto/dxos/client/services.proto +9 -1
  202. package/src/proto/dxos/config.proto +1 -1
  203. package/src/proto/dxos/echo/metadata.proto +3 -0
  204. package/src/proto/dxos/echo/query.proto +4 -1
  205. package/src/proto/dxos/echo/service.proto +27 -6
  206. package/src/proto/dxos/edge/messenger.proto +10 -0
  207. package/src/proto/dxos/halo/credentials.proto +15 -0
  208. package/src/proto/dxos/iframe.proto +1 -0
  209. package/src/proto/gen/dxos/client/services.ts +990 -852
  210. package/src/proto/gen/dxos/devtools/host.ts +31 -31
  211. package/src/proto/gen/dxos/echo/metadata.ts +4 -0
  212. package/src/proto/gen/dxos/echo/query.ts +17 -1
  213. package/src/proto/gen/dxos/echo/service.ts +33 -8
  214. package/src/proto/gen/dxos/edge/messenger.ts +24 -0
  215. package/src/proto/gen/dxos/halo/credentials.ts +15 -1
  216. package/src/proto/gen/google/protobuf.ts +326 -40
  217. package/src/proto/gen/index.ts +37 -1
  218. package/src/proto/index.ts +2 -2
  219. package/src/proto/types.ts +1 -1
  220. package/src/space-archive.ts +70 -1
  221. package/src/types.ts +2 -2
  222. package/dist/src/query.d.ts +0 -5
  223. package/dist/src/query.d.ts.map +0 -1
  224. package/dist/src/query.js +0 -8
  225. package/dist/src/query.js.map +0 -1
  226. package/dist/src/queue.d.ts +0 -37
  227. package/dist/src/queue.d.ts.map +0 -1
  228. package/dist/src/queue.js +0 -8
  229. package/dist/src/queue.js.map +0 -1
  230. package/src/query.ts +0 -8
  231. package/src/queue.ts +0 -51
@@ -4,7 +4,7 @@
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 () => {
@@ -5,98 +5,97 @@
5
5
  import { BaseError } from '@dxos/errors';
6
6
  import { PublicKey } from '@dxos/keys';
7
7
 
8
- import type { ObjectId } from '../types.js';
9
-
10
- import { registerError, registerErrorMessageContext, registerErrorNoArgs } from './helpers.js';
8
+ import type { ObjectId } from '../types.ts';
9
+ import { registerError, registerErrorMessageContext, registerErrorNoArgs } from './helpers.ts';
11
10
 
12
11
  /**
13
12
  * Thrown when request was terminated because the RPC endpoint has been closed.
14
13
  */
15
14
  export class RpcClosedError extends BaseError.extend(
16
- 'RPC_CLOSED',
15
+ 'RpcClosedError',
17
16
  'Request was terminated because the RPC endpoint is closed.',
18
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 BaseError.extend('RPC_NOT_OPEN', 'RPC has not been opened.') {}
24
+ export class RpcNotOpenError extends BaseError.extend('RpcNotOpenError', 'RPC has not been opened.') {}
26
25
 
27
- registerErrorNoArgs('RPC_NOT_OPEN', RpcNotOpenError);
26
+ registerErrorNoArgs('RpcNotOpenError', RpcNotOpenError);
28
27
 
29
- export class CancelledError extends BaseError.extend('CANCELLED') {}
28
+ export class CancelledError extends BaseError.extend('CancelledError') {}
30
29
 
31
- registerErrorMessageContext('CANCELLED', CancelledError);
30
+ registerErrorMessageContext('CancelledError', CancelledError);
32
31
 
33
- export class InvalidConfigError extends BaseError.extend('INVALID_CONFIG') {}
32
+ export class InvalidConfigError extends BaseError.extend('InvalidConfigError') {}
34
33
 
35
- registerErrorMessageContext('INVALID_CONFIG', InvalidConfigError);
34
+ registerErrorMessageContext('InvalidConfigError', InvalidConfigError);
36
35
 
37
36
  /**
38
37
  * Explicit failure to connect with remote client services.
39
38
  */
40
- export class RemoteServiceConnectionError extends BaseError.extend('REMOTE_SERVICE_CONNECTION_ERROR') {}
39
+ export class RemoteServiceConnectionError extends BaseError.extend('RemoteServiceConnectionError') {}
41
40
 
42
- registerErrorMessageContext('REMOTE_SERVICE_CONNECTION_ERROR', RemoteServiceConnectionError);
41
+ registerErrorMessageContext('RemoteServiceConnectionError', RemoteServiceConnectionError);
43
42
 
44
43
  /**
45
44
  * Failed to open a connection to remote client services.
46
45
  */
47
- export class RemoteServiceConnectionTimeout extends BaseError.extend('REMOTE_SERVICE_CONNECTION_TIMEOUT') {}
46
+ export class RemoteServiceConnectionTimeout extends BaseError.extend('RemoteServiceConnectionTimeout') {}
48
47
 
49
- registerErrorMessageContext('REMOTE_SERVICE_CONNECTION_TIMEOUT', RemoteServiceConnectionTimeout);
48
+ registerErrorMessageContext('RemoteServiceConnectionTimeout', RemoteServiceConnectionTimeout);
50
49
 
51
- export class DataCorruptionError extends BaseError.extend('DATA_CORRUPTION') {}
50
+ export class DataCorruptionError extends BaseError.extend('DataCorruptionError') {}
52
51
 
53
- registerErrorMessageContext('DATA_CORRUPTION', DataCorruptionError);
52
+ registerErrorMessageContext('DataCorruptionError', DataCorruptionError);
54
53
 
55
- export class InvalidInvitationExtensionRoleError extends BaseError.extend('INVALID_INVITATION_EXTENSION_ROLE') {}
54
+ export class InvalidInvitationExtensionRoleError extends BaseError.extend('InvalidInvitationExtensionRoleError') {}
56
55
 
57
- registerErrorMessageContext('INVALID_INVITATION_EXTENSION_ROLE', InvalidInvitationExtensionRoleError);
56
+ registerErrorMessageContext('InvalidInvitationExtensionRoleError', InvalidInvitationExtensionRoleError);
58
57
 
59
- export class IdentityNotInitializedError extends BaseError.extend('IDENTITY_NOT_INITIALIZED') {}
58
+ export class IdentityNotInitializedError extends BaseError.extend('IdentityNotInitializedError') {}
60
59
 
61
- registerErrorMessageContext('IDENTITY_NOT_INITIALIZED', IdentityNotInitializedError);
60
+ registerErrorMessageContext('IdentityNotInitializedError', IdentityNotInitializedError);
62
61
 
63
- export class InvalidInvitationError extends BaseError.extend('INVALID_INVITATION') {}
62
+ export class InvalidInvitationError extends BaseError.extend('InvalidInvitationError') {}
64
63
 
65
- registerErrorMessageContext('INVALID_INVITATION', InvalidInvitationError);
64
+ registerErrorMessageContext('InvalidInvitationError', InvalidInvitationError);
66
65
 
67
- export class AlreadyJoinedError extends BaseError.extend('ALREADY_JOINED') {}
66
+ export class AlreadyJoinedError extends BaseError.extend('AlreadyJoinedError') {}
68
67
 
69
- registerErrorMessageContext('ALREADY_JOINED', AlreadyJoinedError);
68
+ registerErrorMessageContext('AlreadyJoinedError', AlreadyJoinedError);
70
69
 
71
- export class ConnectionResetError extends BaseError.extend('CONNECTION_RESET') {}
70
+ export class ConnectionResetError extends BaseError.extend('ConnectionResetError') {}
72
71
 
73
- registerErrorMessageContext('CONNECTION_RESET', ConnectionResetError);
72
+ registerErrorMessageContext('ConnectionResetError', ConnectionResetError);
74
73
 
75
- export class TimeoutError extends BaseError.extend('TIMEOUT') {}
74
+ export class TimeoutError extends BaseError.extend('TimeoutError') {}
76
75
 
77
- registerErrorMessageContext('TIMEOUT', TimeoutError);
76
+ registerErrorMessageContext('TimeoutError', TimeoutError);
78
77
 
79
78
  // General protocol error.
80
- export class ProtocolError extends BaseError.extend('PROTOCOL_ERROR') {}
79
+ export class ProtocolError extends BaseError.extend('ProtocolError') {}
81
80
 
82
- registerErrorMessageContext(ProtocolError.code, ProtocolError);
81
+ registerErrorMessageContext(ProtocolError.name, ProtocolError);
83
82
 
84
83
  // General connectivity errors.
85
- export class ConnectivityError extends BaseError.extend('CONNECTIVITY_ERROR') {}
84
+ export class ConnectivityError extends BaseError.extend('ConnectivityError') {}
86
85
 
87
- registerErrorMessageContext('CONNECTIVITY_ERROR', ConnectivityError);
86
+ registerErrorMessageContext('ConnectivityError', ConnectivityError);
88
87
 
89
- export class RateLimitExceededError extends BaseError.extend('RATE_LIMIT_EXCEEDED') {}
88
+ export class RateLimitExceededError extends BaseError.extend('RateLimitExceededError') {}
90
89
 
91
- registerErrorMessageContext('RATE_LIMIT_EXCEEDED', RateLimitExceededError);
90
+ registerErrorMessageContext('RateLimitExceededError', RateLimitExceededError);
92
91
 
93
92
  // TODO(nf): Rename? the protocol isn't what's unknown...
94
- export class UnknownProtocolError extends BaseError.extend('UNKNOWN_PROTOCOL_ERROR') {}
93
+ export class UnknownProtocolError extends BaseError.extend('UnknownProtocolError') {}
95
94
 
96
- registerError(UnknownProtocolError.code, (message, context) => new UnknownProtocolError({ message, context }));
95
+ registerError(UnknownProtocolError.name, (message, context) => new UnknownProtocolError({ message, context }));
97
96
 
98
97
  export class InvalidStorageVersionError extends BaseError.extend(
99
- 'INVALID_STORAGE_VERSION',
98
+ 'InvalidStorageVersionError',
100
99
  'Invalid storage version.',
101
100
  ) {
102
101
  constructor(expected: number, actual: number) {
@@ -104,40 +103,40 @@ export class InvalidStorageVersionError extends BaseError.extend(
104
103
  }
105
104
  }
106
105
 
107
- registerError('INVALID_STORAGE_VERSION', (_, context) => {
106
+ registerError('InvalidStorageVersionError', (_, context) => {
108
107
  return new InvalidStorageVersionError(context.expected ?? NaN, context.actual ?? NaN);
109
108
  });
110
109
 
111
- export class SpaceNotFoundError extends BaseError.extend('SPACE_NOT_FOUND', 'Space not found.') {
110
+ export class SpaceNotFoundError extends BaseError.extend('SpaceNotFoundError', 'Space not found.') {
112
111
  constructor(spaceKey: PublicKey) {
113
112
  super({ context: { spaceKey } });
114
113
  }
115
114
  }
116
115
 
117
- registerError('SPACE_NOT_FOUND', (_, context) => {
116
+ registerError('SpaceNotFoundError', (_, context) => {
118
117
  return new SpaceNotFoundError(PublicKey.safeFrom(context.spaceKey) ?? PublicKey.from('00'));
119
118
  });
120
119
 
121
- export class EntityNotFoundError extends BaseError.extend('ITEM_NOT_FOUND', 'Item not found.') {
120
+ export class EntityNotFoundError extends BaseError.extend('EntityNotFoundError', 'Item not found.') {
122
121
  constructor(entityId: ObjectId) {
123
122
  super({ context: { entityId } });
124
123
  }
125
124
  }
126
125
 
127
- registerError('ITEM_NOT_FOUND', (_, context) => {
126
+ registerError('EntityNotFoundError', (_, context) => {
128
127
  return new EntityNotFoundError(context.entityId);
129
128
  });
130
129
 
131
- export class UnknownModelError extends BaseError.extend('UNKNOWN_MODEL', 'Unknown model.') {
130
+ export class UnknownModelError extends BaseError.extend('UnknownModelError', 'Unknown model.') {
132
131
  constructor(model: string) {
133
132
  super({ context: { model } });
134
133
  }
135
134
  }
136
135
 
137
- registerError('UNKNOWN_MODEL', (_, context) => {
136
+ registerError('UnknownModelError', (_, context) => {
138
137
  return new UnknownModelError(context.model);
139
138
  });
140
139
 
141
- export class AuthorizationError extends BaseError.extend('AUTHORIZATION_ERROR') {}
140
+ export class AuthorizationError extends BaseError.extend('AuthorizationError') {}
142
141
 
143
- registerErrorMessageContext('AUTHORIZATION_ERROR', AuthorizationError);
142
+ registerErrorMessageContext('AuthorizationError', AuthorizationError);
@@ -5,7 +5,7 @@
5
5
  import { BaseError } from '@dxos/errors';
6
6
  import { invariant } from '@dxos/invariant';
7
7
 
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;
@@ -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';
package/src/index.ts CHANGED
@@ -2,18 +2,15 @@
2
2
  // Copyright 2021 DXOS.org
3
3
  //
4
4
 
5
- // TODO(burdon): Why export .js?
6
-
7
- export * from './automerge.js';
8
- export * from './edge/index.js';
9
- export * from './errors/index.js';
10
- export * from './indexing.js';
11
- export * from './messenger.js';
12
- export * from './profile-archive.js';
13
- export * from './query.js';
14
- export * from './queue.js';
15
- export * from './space-archive.js';
16
- export * from './storage.js';
17
- export * from './tracing.js';
18
- export type * from './types.js';
19
- export * as FunctionProtocol from './FunctionProtocol.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 () => {
@@ -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
+ }
@@ -72,6 +72,7 @@ message Platform {
72
72
  BROWSER = 0;
73
73
  SHARED_WORKER = 1;
74
74
  NODE = 2;
75
+ DEDICATED_WORKER = 3;
75
76
  }
76
77
 
77
78
  PLATFORM_TYPE type = 1;
@@ -331,6 +332,8 @@ message Space {
331
332
  optional PipelineState pipeline = 3;
332
333
  optional dxos.error.Error error = 4;
333
334
  optional dxos.echo.metadata.EdgeReplicationSetting edge_replication = 6;
335
+ repeated string tags = 7;
336
+ dxos.halo.credentials.MembershipPolicy membership_policy = 8;
334
337
 
335
338
  repeated SpaceMember members = 10;
336
339
  optional dxos.keys.PublicKey creator = 11;
@@ -341,6 +344,11 @@ message Space {
341
344
 
342
345
  // TODO(burdon): Create type for epoch?
343
346
 
347
+ message CreateSpaceRequest {
348
+ repeated string tags = 1;
349
+ dxos.halo.credentials.MembershipPolicy membership_policy = 2;
350
+ }
351
+
344
352
  message UpdateSpaceRequest {
345
353
  dxos.keys.PublicKey space_key = 1;
346
354
 
@@ -457,7 +465,7 @@ message ImportSpaceResponse {
457
465
  }
458
466
 
459
467
  service SpacesService {
460
- rpc CreateSpace(google.protobuf.Empty) returns (Space);
468
+ rpc CreateSpace(CreateSpaceRequest) returns (Space);
461
469
  rpc UpdateSpace(UpdateSpaceRequest) returns (google.protobuf.Empty);
462
470
  rpc QuerySpaces(google.protobuf.Empty) returns (stream QuerySpacesResponse);
463
471
 
@@ -59,7 +59,7 @@ message Module {
59
59
  optional string id = 8; // TODO(burdon): Ensured FQ (e.g., 'dxos.app.xxx')
60
60
  optional string name = 1; // TODO(burdon): Replace with id (or key?)
61
61
  optional string type = 2; // TODO(burdon): Define namespace (e.g.,
62
- // 'dxos.org/type/frame' vs. 'dxos.type.frame')
62
+ // 'org.dxos.type.frame')
63
63
 
64
64
  // TODO(burdon): Developer info message.
65
65
 
@@ -54,6 +54,9 @@ message SpaceMetadata {
54
54
  /// Space key.
55
55
  dxos.keys.PublicKey key = 1;
56
56
 
57
+ /// Immutable tags assigned at space creation time.
58
+ repeated string tags = 12;
59
+
57
60
  /// ACTIVE, INACTIVE, etc.
58
61
  optional dxos.client.services.SpaceState state = 10;
59
62
 
@@ -36,9 +36,12 @@ message Heads {
36
36
  message QueryResult {
37
37
  string id = 1;
38
38
  string spaceId = 4;
39
- string documentId = 5;
39
+ optional string documentId = 5;
40
+ optional string queueId = 6;
41
+ optional string queueNamespace = 7;
40
42
  float rank = 3;
41
43
 
44
+ /// In the ECHO Json object format.
42
45
  optional string document_json = 10;
43
46
  optional bytes document_automerge = 11;
44
47
 
@@ -6,6 +6,7 @@ syntax = "proto3";
6
6
 
7
7
  import "dxos/keys.proto";
8
8
  import "google/protobuf/empty.proto";
9
+ import "google/protobuf/struct.proto";
9
10
 
10
11
  package dxos.echo.service;
11
12
 
@@ -61,12 +62,6 @@ message DocumentUpdate {
61
62
  * Value returned by `Automerge.saveSince()`.
62
63
  */
63
64
  bytes mutation = 2;
64
-
65
- /**
66
- * Set to true for init mutation of document.
67
- * default: undefined.
68
- */
69
- optional bool is_new = 3;
70
65
  }
71
66
 
72
67
  message DocHeadsList {
@@ -94,6 +89,26 @@ message ReIndexHeadsRequest {
94
89
  repeated string document_ids = 1;
95
90
  }
96
91
 
92
+ message CreateDocumentRequest {
93
+ /**
94
+ * Space id where the document will be created.
95
+ */
96
+ string space_id = 1;
97
+
98
+ /**
99
+ * Automerge encoded initial document value.
100
+ * Optional - if not provided, an empty document will be created.
101
+ */
102
+ optional google.protobuf.Struct initial_value = 2;
103
+ }
104
+
105
+ message CreateDocumentResponse {
106
+ /**
107
+ * The generated document id.
108
+ */
109
+ string document_id = 1;
110
+ }
111
+
97
112
  message GetSpaceSyncStateRequest {
98
113
  string space_id = 1;
99
114
  }
@@ -157,6 +172,12 @@ service DataService {
157
172
  */
158
173
  rpc UpdateSubscription(UpdateSubscriptionRequest) returns (google.protobuf.Empty);
159
174
 
175
+ /**
176
+ * Create a new automerge document.
177
+ * Returns the generated document id which is controlled by the host.
178
+ */
179
+ rpc CreateDocument(CreateDocumentRequest) returns (CreateDocumentResponse);
180
+
160
181
  /**
161
182
  * Write incremental updates to multiple automerge documents.
162
183
  * Used to propagate changes from client to services.
@@ -76,9 +76,19 @@ message Message {
76
76
  /// Maybe be used to address a service at EDGE, but also to address components inside the client.
77
77
  optional string service_id = 20;
78
78
 
79
+ optional TraceContext trace_context = 21;
80
+
79
81
  optional google.protobuf.Any payload = 100;
80
82
  }
81
83
 
84
+ /// W3C Trace Context propagation (https://www.w3.org/TR/trace-context/).
85
+ message TraceContext {
86
+ /// W3C `traceparent` header value (e.g. "00-<trace-id>-<parent-id>-<trace-flags>").
87
+ string traceparent = 1;
88
+ /// W3C `tracestate` header value; vendor-specific key-value pairs.
89
+ optional string tracestate = 2;
90
+ }
91
+
82
92
  //
83
93
  // Swarms are used to publish and subscribe to messages based on a topic.
84
94
  //
@@ -28,9 +28,18 @@ import "dxos/keys.proto";
28
28
  // First message written to initial Feed in a new Space.
29
29
  //
30
30
 
31
+ enum MembershipPolicy {
32
+ /// Members can be invited by admins/owners.
33
+ INVITE = 0;
34
+ /// No new members can be added after genesis.
35
+ LOCKED = 1;
36
+ }
37
+
31
38
  // [ASSERTION]
32
39
  message SpaceGenesis {
33
40
  dxos.keys.PublicKey space_key = 1; // Feeds belong to Spaces.
41
+ repeated string tags = 2;
42
+ MembershipPolicy membership_policy = 3;
34
43
  }
35
44
 
36
45
  //
@@ -60,6 +69,9 @@ message SpaceMember {
60
69
  dxos.keys.PublicKey space_key = 1;
61
70
  Role role = 2;
62
71
 
72
+ /// Immutable tags assigned at space creation time.
73
+ repeated string tags = 6;
74
+
63
75
  // TODO(burdon): Identity key?
64
76
  optional ProfileDocument profile = 3;
65
77
 
@@ -163,6 +175,8 @@ enum DeviceType {
163
175
  UNKNOWN = 0;
164
176
  BROWSER = 1;
165
177
  NATIVE = 2;
178
+ // TODO(wittjosiah): Rename "agent" to avoid naming collision with AI agents.
179
+ // TODO(wittjosiah): Unknown, Browser, CLI, Desktop, Mobile, Custodian?
166
180
  AGENT = 3;
167
181
  AGENT_MANAGED = 4;
168
182
  MOBILE = 5;
@@ -188,6 +202,7 @@ message DeviceProfile {
188
202
  }
189
203
 
190
204
  /// [ASSERTION]: Sets default space for identity.
205
+ /// @deprecated Default space is no longer managed by the SDK. Existing credentials are ignored.
191
206
  message DefaultSpace {
192
207
  string space_id = 1;
193
208
  }
@@ -39,6 +39,7 @@ message AppContextRequest {
39
39
  /// The key of the joined space.
40
40
  optional dxos.keys.PublicKey space_key = 2;
41
41
 
42
+ // TODO(wittjosiah): Make the generated type be `SpaceId`.
42
43
  /// The id of the joined space.
43
44
  optional string space_id = 5;
44
45