@dxos/protocols 0.4.10-main.99ef736 → 0.4.10-main.9b43650

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 (75) hide show
  1. package/dist/cjs/src/indexing.d.ts +4 -3
  2. package/dist/cjs/src/indexing.d.ts.map +1 -1
  3. package/dist/cjs/src/indexing.js.map +1 -1
  4. package/dist/cjs/src/proto/gen/dxos/client/services.d.ts +32 -4
  5. package/dist/cjs/src/proto/gen/dxos/client/services.d.ts.map +1 -1
  6. package/dist/cjs/src/proto/gen/dxos/client/services.js +3 -1
  7. package/dist/cjs/src/proto/gen/dxos/client/services.js.map +1 -1
  8. package/dist/cjs/src/proto/gen/dxos/config.d.ts +5 -5
  9. package/dist/cjs/src/proto/gen/dxos/config.d.ts.map +1 -1
  10. package/dist/cjs/src/proto/gen/dxos/config.js.map +1 -1
  11. package/dist/cjs/src/proto/gen/dxos/echo/model/document.d.ts +0 -1
  12. package/dist/cjs/src/proto/gen/dxos/echo/model/document.d.ts.map +1 -1
  13. package/dist/cjs/src/proto/gen/dxos/echo/model/document.js.map +1 -1
  14. package/dist/cjs/src/proto/gen/dxos/echo/service.d.ts +9 -1
  15. package/dist/cjs/src/proto/gen/dxos/echo/service.d.ts.map +1 -1
  16. package/dist/cjs/src/proto/gen/dxos/halo/invitations.d.ts +23 -2
  17. package/dist/cjs/src/proto/gen/dxos/halo/invitations.d.ts.map +1 -1
  18. package/dist/cjs/src/proto/gen/dxos/halo/invitations.js +1 -0
  19. package/dist/cjs/src/proto/gen/dxos/halo/invitations.js.map +1 -1
  20. package/dist/cjs/src/proto/gen/dxos/iframe.d.ts +7 -5
  21. package/dist/cjs/src/proto/gen/dxos/iframe.d.ts.map +1 -1
  22. package/dist/cjs/src/proto/gen/dxos/iframe.js +7 -5
  23. package/dist/cjs/src/proto/gen/dxos/iframe.js.map +1 -1
  24. package/dist/cjs/src/proto/gen/google/protobuf.d.ts +4 -4
  25. package/dist/cjs/src/proto/gen/google/protobuf.d.ts.map +1 -1
  26. package/dist/cjs/src/proto/gen/index.d.ts +1 -0
  27. package/dist/cjs/src/proto/gen/index.d.ts.map +1 -1
  28. package/dist/cjs/src/proto/gen/index.js +1 -1
  29. package/dist/cjs/src/proto/gen/index.js.map +1 -1
  30. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  31. package/dist/esm/src/indexing.d.ts +4 -3
  32. package/dist/esm/src/indexing.d.ts.map +1 -1
  33. package/dist/esm/src/indexing.js.map +1 -1
  34. package/dist/esm/src/proto/gen/dxos/client/services.d.ts +32 -4
  35. package/dist/esm/src/proto/gen/dxos/client/services.d.ts.map +1 -1
  36. package/dist/esm/src/proto/gen/dxos/client/services.js +3 -1
  37. package/dist/esm/src/proto/gen/dxos/client/services.js.map +1 -1
  38. package/dist/esm/src/proto/gen/dxos/config.d.ts +5 -5
  39. package/dist/esm/src/proto/gen/dxos/config.d.ts.map +1 -1
  40. package/dist/esm/src/proto/gen/dxos/config.js.map +1 -1
  41. package/dist/esm/src/proto/gen/dxos/echo/model/document.d.ts +0 -1
  42. package/dist/esm/src/proto/gen/dxos/echo/model/document.d.ts.map +1 -1
  43. package/dist/esm/src/proto/gen/dxos/echo/model/document.js.map +1 -1
  44. package/dist/esm/src/proto/gen/dxos/echo/service.d.ts +9 -1
  45. package/dist/esm/src/proto/gen/dxos/echo/service.d.ts.map +1 -1
  46. package/dist/esm/src/proto/gen/dxos/halo/invitations.d.ts +23 -2
  47. package/dist/esm/src/proto/gen/dxos/halo/invitations.d.ts.map +1 -1
  48. package/dist/esm/src/proto/gen/dxos/halo/invitations.js +1 -0
  49. package/dist/esm/src/proto/gen/dxos/halo/invitations.js.map +1 -1
  50. package/dist/esm/src/proto/gen/dxos/iframe.d.ts +7 -5
  51. package/dist/esm/src/proto/gen/dxos/iframe.d.ts.map +1 -1
  52. package/dist/esm/src/proto/gen/dxos/iframe.js +7 -5
  53. package/dist/esm/src/proto/gen/dxos/iframe.js.map +1 -1
  54. package/dist/esm/src/proto/gen/google/protobuf.d.ts +4 -4
  55. package/dist/esm/src/proto/gen/google/protobuf.d.ts.map +1 -1
  56. package/dist/esm/src/proto/gen/index.d.ts +1 -0
  57. package/dist/esm/src/proto/gen/index.d.ts.map +1 -1
  58. package/dist/esm/src/proto/gen/index.js +1 -1
  59. package/dist/esm/src/proto/gen/index.js.map +1 -1
  60. package/package.json +5 -5
  61. package/src/indexing.ts +5 -3
  62. package/src/proto/dxos/client/services.proto +25 -4
  63. package/src/proto/dxos/config.proto +8 -3
  64. package/src/proto/dxos/echo/model/document.proto +0 -3
  65. package/src/proto/dxos/echo/service.proto +5 -1
  66. package/src/proto/dxos/halo/invitations.proto +9 -1
  67. package/src/proto/dxos/iframe.proto +7 -5
  68. package/src/proto/gen/dxos/client/services.ts +32 -4
  69. package/src/proto/gen/dxos/config.ts +5 -5
  70. package/src/proto/gen/dxos/echo/model/document.ts +0 -1
  71. package/src/proto/gen/dxos/echo/service.ts +9 -1
  72. package/src/proto/gen/dxos/halo/invitations.ts +23 -2
  73. package/src/proto/gen/dxos/iframe.ts +7 -5
  74. package/src/proto/gen/google/protobuf.ts +4 -4
  75. package/src/proto/gen/index.ts +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/proto/gen/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AA8DhE,OAAO,aAAa,MAAM,kBAAkB,CAAC;AA4hB7C,MAAM,CAAC,MAAM,UAAU,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,m1rGAAm1rG,CAAC,CAAC,CAAC;AAC54rG,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAkB,UAAU,EAAE,aAAa,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/proto/gen/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AA8DhE,OAAO,aAAa,MAAM,kBAAkB,CAAC;AA6hB7C,MAAM,CAAC,MAAM,UAAU,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,6huGAA6huG,CAAC,CAAC,CAAC;AACtluG,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAkB,UAAU,EAAE,aAAa,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dxos/protocols",
3
- "version": "0.4.10-main.99ef736",
3
+ "version": "0.4.10-main.9b43650",
4
4
  "description": "Protobuf definitions for DXOS protocols.",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
@@ -33,10 +33,10 @@
33
33
  "src"
34
34
  ],
35
35
  "dependencies": {
36
- "@dxos/codec-protobuf": "0.4.10-main.99ef736",
37
- "@dxos/keys": "0.4.10-main.99ef736",
38
- "@dxos/timeframe": "0.4.10-main.99ef736",
39
- "@dxos/invariant": "0.4.10-main.99ef736"
36
+ "@dxos/invariant": "0.4.10-main.9b43650",
37
+ "@dxos/keys": "0.4.10-main.9b43650",
38
+ "@dxos/timeframe": "0.4.10-main.9b43650",
39
+ "@dxos/codec-protobuf": "0.4.10-main.9b43650"
40
40
  },
41
41
  "devDependencies": {
42
42
  "glob": "~7.1.6"
package/src/indexing.ts CHANGED
@@ -2,14 +2,16 @@
2
2
  // Copyright 2024 DXOS.org
3
3
  //
4
4
 
5
- export type IdDecoded = {
5
+ export type ObjectPointerDecoded = {
6
6
  documentId: string;
7
7
  objectId: string;
8
8
  };
9
9
 
10
+ export type ObjectPointerEncoded = string;
11
+
10
12
  export const idCodec = {
11
- encode: ({ documentId, objectId }: IdDecoded) => `${documentId}|${objectId}`,
12
- decode: (id: string): IdDecoded => {
13
+ encode: ({ documentId, objectId }: ObjectPointerDecoded): ObjectPointerEncoded => `${documentId}|${objectId}`,
14
+ decode: (id: ObjectPointerEncoded): ObjectPointerDecoded => {
13
15
  const [documentId, objectId] = id.split('|');
14
16
  return { documentId, objectId };
15
17
  },
@@ -356,6 +356,9 @@ message CreateEpochRequest {
356
356
 
357
357
  /// Init new automerge root by clonning the current space root. History is pruned.
358
358
  PRUNE_AUTOMERGE_ROOT_HISTORY = 2;
359
+
360
+ /// Create a new space root and move objects from the current space root to separate automerge documents and.
361
+ FRAGMENT_AUTOMERGE_ROOT = 3;
359
362
  }
360
363
 
361
364
  dxos.keys.PublicKey space_key = 1;
@@ -387,7 +390,8 @@ service SpacesService {
387
390
 
388
391
  service IndexService {
389
392
  rpc SetConfig(dxos.echo.indexing.IndexConfig) returns (google.protobuf.Empty);
390
- rpc Find(dxos.agent.query.QueryRequest) returns (dxos.agent.query.QueryResponse);
393
+ rpc Find(dxos.agent.query.QueryRequest) returns (stream dxos.agent.query.QueryResponse);
394
+
391
395
  }
392
396
 
393
397
  //
@@ -401,9 +405,12 @@ message Invitation {
401
405
  enum Type {
402
406
  /// Requires both to be online to complete key exchange.
403
407
  INTERACTIVE = 0;
404
- /// Guest's identity key is known; invitation can be accepted by any valid peer.
405
- OFFLINE = 1;
406
- /// Multiple-use interactive invitation.
408
+ /// Invitation can be accepted by any valid peer.
409
+ DELEGATED = 1;
410
+ /**
411
+ * Multi-use interactive invitations.
412
+ * @deprecated use multiUse flag with type=interactive instead.
413
+ */
407
414
  MULTIUSE = 2;
408
415
  }
409
416
 
@@ -418,6 +425,9 @@ message Invitation {
418
425
 
419
426
  /// Guest should call `Authenticate` with the shared secret.
420
427
  SHARED_SECRET = 1;
428
+
429
+ /// Guest should prove they possess a private key corresponding to the known public key recorded in an invitation.
430
+ KNOWN_PUBLIC_KEY = 2;
421
431
  }
422
432
 
423
433
  enum State {
@@ -476,6 +486,17 @@ message Invitation {
476
486
  // TODO(nf): some feedback mechanism or GC for immortal invitations?
477
487
  // TODO(nf): should the creator have a way to make an invitation last as long as the client? this was the previous behavior.
478
488
  optional int32 lifetime = 14;
489
+
490
+ /// Whether an invitation can be used multiple times.
491
+ optional bool multi_use = 15;
492
+
493
+ /// Guest's keypair required for AuthMethod.KNOWN_PUBLIC_KEY.
494
+ optional AdmissionKeypair guest_keypair = 16;
495
+ }
496
+
497
+ message AdmissionKeypair {
498
+ dxos.keys.PublicKey public_key = 1;
499
+ optional dxos.keys.PrivateKey private_key = 2;
479
500
  }
480
501
 
481
502
  message AcceptInvitationRequest {
@@ -103,6 +103,10 @@ message Runtime {
103
103
  optional StorageDriver key_store = 2;
104
104
  optional StorageDriver data_store = 3;
105
105
  optional string data_root = 4;
106
+
107
+ /**
108
+ * @deprecated
109
+ */
106
110
  optional bool space_fragmentation = 5;
107
111
  }
108
112
 
@@ -127,12 +131,13 @@ message Runtime {
127
131
  /// Location of the remote client host.
128
132
  // TODO(burdon): Rename vault_endpoint (generalize http/ws; drop vault.html).
129
133
  optional string remote_source = 6;
130
-
134
+
135
+ // Authenticate via `Sec-WebSocket-Protocol` header hack.
136
+ optional string remote_source_authentication_token = 8;
137
+
131
138
  /// Connect to and serve client services to a remote proxy.
132
139
  optional string devtools_proxy = 7;
133
140
 
134
- /// Enable E.object api
135
- optional bool use_reactive_object_api = 8;
136
141
  }
137
142
 
138
143
  message App {
@@ -32,9 +32,6 @@ message Value {
32
32
  Array array = 21;
33
33
 
34
34
  Reference reference = 30;
35
-
36
- // YJS state snapshot.
37
- YJS yjs = 40;
38
35
  }
39
36
  }
40
37
 
@@ -47,7 +47,11 @@ message MutationReceipt {
47
47
  }
48
48
 
49
49
  message FlushRequest {
50
- dxos.keys.PublicKey space_key = 1;
50
+ optional dxos.keys.PublicKey space_key = 1;
51
+ /**
52
+ * Automerge specific document ids to wait to flush.
53
+ */
54
+ repeated string document_ids = 2;
51
55
  }
52
56
 
53
57
  // Automerge specific.
@@ -33,12 +33,19 @@ message IntroductionRequest {
33
33
  message IntroductionResponse {
34
34
  dxos.client.services.Invitation.AuthMethod auth_method = 1;
35
35
 
36
+ /// Present when auth_method is KNOWN_PUBLIC_KEY.
37
+ optional bytes challenge = 2;
38
+
36
39
  /// Only present for testing invitation types.
37
40
  optional dxos.keys.PublicKey space_key = 100;
38
41
  }
39
42
 
40
43
  message AuthenticationRequest {
41
- string auth_code = 1;
44
+ /// Present when auth_method is SHARED_SECRET.
45
+ optional string auth_code = 1;
46
+
47
+ /// Present when auth_method is KNOWN_PUBLIC_KEY.
48
+ optional bytes signed_challenge = 2;
42
49
  }
43
50
 
44
51
  message AuthenticationResponse {
@@ -47,6 +54,7 @@ message AuthenticationResponse {
47
54
  INVALID_OTP = 1;
48
55
  INVALID_OPT_ATTEMPTS = 2;
49
56
  INTERNAL_ERROR = 3;
57
+ INVALID_SIGNATURE = 4;
50
58
  }
51
59
 
52
60
  optional Status status = 1;
@@ -55,11 +55,13 @@ service AppService {
55
55
  enum ShellLayout {
56
56
  DEFAULT = 0;
57
57
  INITIALIZE_IDENTITY = 1;
58
- IDENTITY = 2;
59
- SHARE_IDENTITY = 3;
60
- EDIT_PROFILE = 4;
61
- SPACE = 5;
62
- JOIN_SPACE = 6;
58
+ INITIALIZE_IDENTITY_FROM_INVITATION = 2;
59
+ IDENTITY = 3;
60
+ SHARE_IDENTITY = 4;
61
+ EDIT_PROFILE = 5;
62
+ SPACE = 6;
63
+ JOIN_SPACE = 7;
64
+ STATUS = 8;
63
65
  }
64
66
 
65
67
  message LayoutRequest {
@@ -804,7 +804,8 @@ export namespace CreateEpochRequest {
804
804
  export enum Migration {
805
805
  NONE = 0,
806
806
  INIT_AUTOMERGE = 1,
807
- PRUNE_AUTOMERGE_ROOT_HISTORY = 2
807
+ PRUNE_AUTOMERGE_ROOT_HISTORY = 2,
808
+ FRAGMENT_AUTOMERGE_ROOT = 3
808
809
  }
809
810
  }
810
811
  /**
@@ -839,7 +840,7 @@ export interface SpacesService {
839
840
  */
840
841
  export interface IndexService {
841
842
  setConfig: (request: dxos_echo_indexing.IndexConfig, options?: RequestOptions) => Promise<void>;
842
- find: (request: dxos_agent_query.QueryRequest, options?: RequestOptions) => Promise<dxos_agent_query.QueryResponse>;
843
+ find: (request: dxos_agent_query.QueryRequest, options?: RequestOptions) => Stream<dxos_agent_query.QueryResponse>;
843
844
  }
844
845
  /**
845
846
  * Represents the invitation state passed between client and service.
@@ -924,6 +925,20 @@ export interface Invitation {
924
925
  * - proto3_optional = true
925
926
  */
926
927
  lifetime?: number;
928
+ /**
929
+ * Whether an invitation can be used multiple times.
930
+ *
931
+ * Options:
932
+ * - proto3_optional = true
933
+ */
934
+ multiUse?: boolean;
935
+ /**
936
+ * Guest's keypair required for AuthMethod.KNOWN_PUBLIC_KEY.
937
+ *
938
+ * Options:
939
+ * - proto3_optional = true
940
+ */
941
+ guestKeypair?: AdmissionKeypair;
927
942
  }
928
943
  export namespace Invitation {
929
944
  /**
@@ -932,7 +947,7 @@ export namespace Invitation {
932
947
  */
933
948
  export enum Type {
934
949
  INTERACTIVE = 0,
935
- OFFLINE = 1,
950
+ DELEGATED = 1,
936
951
  MULTIUSE = 2
937
952
  }
938
953
  /**
@@ -949,7 +964,8 @@ export namespace Invitation {
949
964
  */
950
965
  export enum AuthMethod {
951
966
  NONE = 0,
952
- SHARED_SECRET = 1
967
+ SHARED_SECRET = 1,
968
+ KNOWN_PUBLIC_KEY = 2
953
969
  }
954
970
  /**
955
971
  * Defined in:
@@ -968,6 +984,18 @@ export namespace Invitation {
968
984
  EXPIRED = 9
969
985
  }
970
986
  }
987
+ /**
988
+ * Defined in:
989
+ * {@link file://./../../../dxos/client/services.proto}
990
+ */
991
+ export interface AdmissionKeypair {
992
+ publicKey: ReturnType<(typeof substitutions)["dxos.keys.PublicKey"]["decode"]>;
993
+ /**
994
+ * Options:
995
+ * - proto3_optional = true
996
+ */
997
+ privateKey?: ReturnType<(typeof substitutions)["dxos.keys.PrivateKey"]["decode"]>;
998
+ }
971
999
  /**
972
1000
  * Defined in:
973
1001
  * {@link file://./../../../dxos/client/services.proto}
@@ -292,19 +292,17 @@ export namespace Runtime {
292
292
  */
293
293
  remoteSource?: string;
294
294
  /**
295
- * Connect to and serve client services to a remote proxy.
296
- *
297
295
  * Options:
298
296
  * - proto3_optional = true
299
297
  */
300
- devtoolsProxy?: string;
298
+ remoteSourceAuthenticationToken?: string;
301
299
  /**
302
- * Enable E.object api
300
+ * Connect to and serve client services to a remote proxy.
303
301
  *
304
302
  * Options:
305
303
  * - proto3_optional = true
306
304
  */
307
- useReactiveObjectApi?: boolean;
305
+ devtoolsProxy?: string;
308
306
  }
309
307
  export namespace Client {
310
308
  /**
@@ -333,6 +331,8 @@ export namespace Runtime {
333
331
  */
334
332
  dataRoot?: string;
335
333
  /**
334
+ * @deprecated
335
+ *
336
336
  * Options:
337
337
  * - proto3_optional = true
338
338
  */
@@ -78,7 +78,6 @@ export interface Value {
78
78
  object?: KeyValueObject;
79
79
  array?: Array;
80
80
  reference?: Reference;
81
- yjs?: YJS;
82
81
  }
83
82
  /**
84
83
  * Ordered collection of values.
@@ -135,7 +135,15 @@ export interface MutationReceipt {
135
135
  * {@link file://./../../../dxos/echo/service.proto}
136
136
  */
137
137
  export interface FlushRequest {
138
- spaceKey: ReturnType<(typeof substitutions)["dxos.keys.PublicKey"]["decode"]>;
138
+ /**
139
+ * Options:
140
+ * - proto3_optional = true
141
+ */
142
+ spaceKey?: ReturnType<(typeof substitutions)["dxos.keys.PublicKey"]["decode"]>;
143
+ /**
144
+ * Automerge specific document ids to wait to flush.
145
+ */
146
+ documentIds?: string[];
139
147
  }
140
148
  /**
141
149
  * Defined in:
@@ -104,6 +104,13 @@ export interface IntroductionRequest {
104
104
  */
105
105
  export interface IntroductionResponse {
106
106
  authMethod: dxos_client_services.Invitation.AuthMethod;
107
+ /**
108
+ * Present when auth_method is KNOWN_PUBLIC_KEY.
109
+ *
110
+ * Options:
111
+ * - proto3_optional = true
112
+ */
113
+ challenge?: Uint8Array;
107
114
  /**
108
115
  * Only present for testing invitation types.
109
116
  *
@@ -117,7 +124,20 @@ export interface IntroductionResponse {
117
124
  * {@link file://./../../../dxos/halo/invitations.proto}
118
125
  */
119
126
  export interface AuthenticationRequest {
120
- authCode: string;
127
+ /**
128
+ * Present when auth_method is SHARED_SECRET.
129
+ *
130
+ * Options:
131
+ * - proto3_optional = true
132
+ */
133
+ authCode?: string;
134
+ /**
135
+ * Present when auth_method is KNOWN_PUBLIC_KEY.
136
+ *
137
+ * Options:
138
+ * - proto3_optional = true
139
+ */
140
+ signedChallenge?: Uint8Array;
121
141
  }
122
142
  /**
123
143
  * Defined in:
@@ -139,7 +159,8 @@ export namespace AuthenticationResponse {
139
159
  OK = 0,
140
160
  INVALID_OTP = 1,
141
161
  INVALID_OPT_ATTEMPTS = 2,
142
- INTERNAL_ERROR = 3
162
+ INTERNAL_ERROR = 3,
163
+ INVALID_SIGNATURE = 4
143
164
  }
144
165
  }
145
166
  /**
@@ -152,11 +152,13 @@ export interface AppService {
152
152
  export enum ShellLayout {
153
153
  DEFAULT = 0,
154
154
  INITIALIZE_IDENTITY = 1,
155
- IDENTITY = 2,
156
- SHARE_IDENTITY = 3,
157
- EDIT_PROFILE = 4,
158
- SPACE = 5,
159
- JOIN_SPACE = 6
155
+ INITIALIZE_IDENTITY_FROM_INVITATION = 2,
156
+ IDENTITY = 3,
157
+ SHARE_IDENTITY = 4,
158
+ EDIT_PROFILE = 5,
159
+ SPACE = 6,
160
+ JOIN_SPACE = 7,
161
+ STATUS = 8
160
162
  }
161
163
  /**
162
164
  * Defined in:
@@ -79,14 +79,14 @@ export enum NullValue {
79
79
  export interface ListValue {
80
80
  values?: Value[];
81
81
  }
82
- export interface Any {
83
- type_url: string;
84
- value: Uint8Array;
85
- }
86
82
  export interface Timestamp {
87
83
  seconds: string;
88
84
  nanos: number;
89
85
  }
86
+ export interface Any {
87
+ type_url: string;
88
+ value: Uint8Array;
89
+ }
90
90
  export interface FileDescriptorSet {
91
91
  file?: FileDescriptorProto[];
92
92
  }