@dxos/protocols 0.1.12 → 0.1.14

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 (172) hide show
  1. package/dist/src/codec.test.js +3 -2
  2. package/dist/src/codec.test.js.map +1 -1
  3. package/dist/src/proto/gen/dxos/bot.d.ts.map +1 -1
  4. package/dist/src/proto/gen/dxos/bot.js.map +1 -1
  5. package/dist/src/proto/gen/dxos/client/services.d.ts +19 -8
  6. package/dist/src/proto/gen/dxos/client/services.d.ts.map +1 -1
  7. package/dist/src/proto/gen/dxos/client/services.js +12 -0
  8. package/dist/src/proto/gen/dxos/client/services.js.map +1 -1
  9. package/dist/src/proto/gen/dxos/client.d.ts.map +1 -1
  10. package/dist/src/proto/gen/dxos/client.js.map +1 -1
  11. package/dist/src/proto/gen/dxos/config.d.ts.map +1 -1
  12. package/dist/src/proto/gen/dxos/config.js.map +1 -1
  13. package/dist/src/proto/gen/dxos/devtools/host.d.ts +2 -2
  14. package/dist/src/proto/gen/dxos/devtools/host.d.ts.map +1 -1
  15. package/dist/src/proto/gen/dxos/devtools/swarm.d.ts.map +1 -1
  16. package/dist/src/proto/gen/dxos/echo/feed.d.ts.map +1 -1
  17. package/dist/src/proto/gen/dxos/echo/feed.js.map +1 -1
  18. package/dist/src/proto/gen/dxos/echo/metadata.d.ts.map +1 -1
  19. package/dist/src/proto/gen/dxos/echo/model/messenger.d.ts.map +1 -1
  20. package/dist/src/proto/gen/dxos/echo/model/object.d.ts.map +1 -1
  21. package/dist/src/proto/gen/dxos/echo/model/object.js.map +1 -1
  22. package/dist/src/proto/gen/dxos/echo/model/text.d.ts.map +1 -1
  23. package/dist/src/proto/gen/dxos/echo/service.d.ts.map +1 -1
  24. package/dist/src/proto/gen/dxos/echo/snapshot.d.ts.map +1 -1
  25. package/dist/src/proto/gen/dxos/echo/timeframe.d.ts.map +1 -1
  26. package/dist/src/proto/gen/dxos/gravity.d.ts +84 -0
  27. package/dist/src/proto/gen/dxos/gravity.d.ts.map +1 -0
  28. package/dist/src/proto/gen/dxos/gravity.js +3 -0
  29. package/dist/src/proto/gen/dxos/gravity.js.map +1 -0
  30. package/dist/src/proto/gen/dxos/halo/credentials/auth.d.ts.map +1 -1
  31. package/dist/src/proto/gen/dxos/halo/credentials/greet.d.ts.map +1 -1
  32. package/dist/src/proto/gen/dxos/halo/credentials/greet.js.map +1 -1
  33. package/dist/src/proto/gen/dxos/halo/credentials/identity.d.ts.map +1 -1
  34. package/dist/src/proto/gen/dxos/halo/credentials.d.ts +4 -0
  35. package/dist/src/proto/gen/dxos/halo/credentials.d.ts.map +1 -1
  36. package/dist/src/proto/gen/dxos/halo/credentials.js.map +1 -1
  37. package/dist/src/proto/gen/dxos/halo/invitations.d.ts +39 -15
  38. package/dist/src/proto/gen/dxos/halo/invitations.d.ts.map +1 -1
  39. package/dist/src/proto/gen/dxos/halo/invitations.js +14 -0
  40. package/dist/src/proto/gen/dxos/halo/invitations.js.map +1 -1
  41. package/dist/src/proto/gen/dxos/halo/keyring.d.ts +5 -1
  42. package/dist/src/proto/gen/dxos/halo/keyring.d.ts.map +1 -1
  43. package/dist/src/proto/gen/dxos/halo/keys.d.ts.map +1 -1
  44. package/dist/src/proto/gen/dxos/halo/keys.js.map +1 -1
  45. package/dist/src/proto/gen/dxos/halo/signed.d.ts.map +1 -1
  46. package/dist/src/proto/gen/dxos/iframe.d.ts.map +1 -1
  47. package/dist/src/proto/gen/dxos/keys.d.ts.map +1 -1
  48. package/dist/src/proto/gen/dxos/mesh/bridge.d.ts.map +1 -1
  49. package/dist/src/proto/gen/dxos/mesh/bridge.js.map +1 -1
  50. package/dist/src/proto/gen/dxos/mesh/broadcast.d.ts.map +1 -1
  51. package/dist/src/proto/gen/dxos/mesh/messaging.d.ts.map +1 -1
  52. package/dist/src/proto/gen/dxos/mesh/muxer.d.ts +68 -0
  53. package/dist/src/proto/gen/dxos/mesh/muxer.d.ts.map +1 -0
  54. package/dist/src/proto/gen/dxos/mesh/muxer.js +3 -0
  55. package/dist/src/proto/gen/dxos/mesh/muxer.js.map +1 -0
  56. package/dist/src/proto/gen/dxos/mesh/presence.d.ts.map +1 -1
  57. package/dist/src/proto/gen/dxos/mesh/protocol.d.ts.map +1 -1
  58. package/dist/src/proto/gen/dxos/mesh/replicator.d.ts.map +1 -1
  59. package/dist/src/proto/gen/dxos/mesh/signal.d.ts.map +1 -1
  60. package/dist/src/proto/gen/dxos/mesh/swarm.d.ts +1 -1
  61. package/dist/src/proto/gen/dxos/mesh/swarm.d.ts.map +1 -1
  62. package/dist/src/proto/gen/dxos/mesh/teleport/control.d.ts +21 -0
  63. package/dist/src/proto/gen/dxos/mesh/teleport/control.d.ts.map +1 -0
  64. package/dist/src/proto/gen/dxos/mesh/teleport/control.js +3 -0
  65. package/dist/src/proto/gen/dxos/mesh/teleport/control.js.map +1 -0
  66. package/dist/src/proto/gen/dxos/mesh/teleport/presence.d.ts +25 -0
  67. package/dist/src/proto/gen/dxos/mesh/teleport/presence.d.ts.map +1 -0
  68. package/dist/src/proto/gen/dxos/mesh/teleport/presence.js +3 -0
  69. package/dist/src/proto/gen/dxos/mesh/teleport/presence.js.map +1 -0
  70. package/dist/src/proto/gen/dxos/mesh/teleport/replicator.d.ts +77 -0
  71. package/dist/src/proto/gen/dxos/mesh/teleport/replicator.d.ts.map +1 -0
  72. package/dist/src/proto/gen/dxos/mesh/teleport/replicator.js +3 -0
  73. package/dist/src/proto/gen/dxos/mesh/teleport/replicator.js.map +1 -0
  74. package/dist/src/proto/gen/dxos/registry.d.ts +2 -2
  75. package/dist/src/proto/gen/dxos/registry.d.ts.map +1 -1
  76. package/dist/src/proto/gen/dxos/rpc.d.ts.map +1 -1
  77. package/dist/src/proto/gen/dxos/rpc.js.map +1 -1
  78. package/dist/src/proto/gen/dxos/service/publisher.d.ts +11 -1
  79. package/dist/src/proto/gen/dxos/service/publisher.d.ts.map +1 -1
  80. package/dist/src/proto/gen/dxos/service/scheduler.d.ts.map +1 -1
  81. package/dist/src/proto/gen/dxos/service/scheduler.js.map +1 -1
  82. package/dist/src/proto/gen/dxos/type.d.ts +5 -4
  83. package/dist/src/proto/gen/dxos/type.d.ts.map +1 -1
  84. package/dist/src/proto/gen/example/testing/data.d.ts.map +1 -1
  85. package/dist/src/proto/gen/example/testing/rpc.d.ts.map +1 -1
  86. package/dist/src/proto/gen/google/protobuf.d.ts +18 -0
  87. package/dist/src/proto/gen/google/protobuf.d.ts.map +1 -1
  88. package/dist/src/proto/gen/google/protobuf.js +5 -0
  89. package/dist/src/proto/gen/google/protobuf.js.map +1 -1
  90. package/dist/src/proto/gen/index.d.ts +36 -2
  91. package/dist/src/proto/gen/index.d.ts.map +1 -1
  92. package/dist/src/proto/gen/index.js +1 -1
  93. package/dist/src/proto/gen/index.js.map +1 -1
  94. package/dist/src/proto/substitutions.d.ts +4 -0
  95. package/dist/src/proto/substitutions.d.ts.map +1 -1
  96. package/dist/src/proto/substitutions.js +1 -0
  97. package/dist/src/proto/substitutions.js.map +1 -1
  98. package/dist/src/types.d.ts +6 -6
  99. package/dist/src/types.d.ts.map +1 -1
  100. package/package.json +5 -11
  101. package/proto/dxos/gravity.d.ts +5 -0
  102. package/proto/dxos/gravity.js +5 -0
  103. package/proto/dxos/mesh/muxer.d.ts +5 -0
  104. package/proto/dxos/mesh/muxer.js +5 -0
  105. package/proto/dxos/mesh/teleport/control.d.ts +5 -0
  106. package/proto/dxos/mesh/teleport/control.js +5 -0
  107. package/proto/dxos/mesh/teleport/presence.d.ts +5 -0
  108. package/proto/dxos/mesh/teleport/presence.js +5 -0
  109. package/proto/dxos/mesh/teleport/replicator.d.ts +5 -0
  110. package/proto/dxos/mesh/teleport/replicator.js +5 -0
  111. package/src/codec.test.ts +4 -2
  112. package/src/proto/dxos/client/services.proto +16 -7
  113. package/src/proto/dxos/devtools/host.proto +2 -2
  114. package/src/proto/dxos/gravity.proto +55 -0
  115. package/src/proto/dxos/halo/credentials.proto +3 -0
  116. package/src/proto/dxos/halo/invitations.proto +25 -12
  117. package/src/proto/dxos/halo/keyring.proto +1 -1
  118. package/src/proto/dxos/mesh/muxer.proto +51 -0
  119. package/src/proto/dxos/mesh/swarm.proto +2 -1
  120. package/src/proto/dxos/mesh/teleport/control.proto +19 -0
  121. package/src/proto/dxos/mesh/teleport/presence.proto +23 -0
  122. package/src/proto/dxos/mesh/teleport/replicator.proto +60 -0
  123. package/src/proto/dxos/registry.proto +3 -2
  124. package/src/proto/dxos/service/publisher.proto +5 -1
  125. package/src/proto/dxos/type.proto +5 -4
  126. package/src/proto/gen/dxos/bot.ts +5 -0
  127. package/src/proto/gen/dxos/client/services.ts +24 -8
  128. package/src/proto/gen/dxos/client.ts +5 -0
  129. package/src/proto/gen/dxos/config.ts +5 -0
  130. package/src/proto/gen/dxos/devtools/host.ts +6 -1
  131. package/src/proto/gen/dxos/devtools/swarm.ts +5 -0
  132. package/src/proto/gen/dxos/echo/feed.ts +5 -0
  133. package/src/proto/gen/dxos/echo/metadata.ts +5 -0
  134. package/src/proto/gen/dxos/echo/model/messenger.ts +5 -0
  135. package/src/proto/gen/dxos/echo/model/object.ts +5 -0
  136. package/src/proto/gen/dxos/echo/model/text.ts +5 -0
  137. package/src/proto/gen/dxos/echo/service.ts +5 -0
  138. package/src/proto/gen/dxos/echo/snapshot.ts +5 -0
  139. package/src/proto/gen/dxos/echo/timeframe.ts +5 -0
  140. package/src/proto/gen/dxos/gravity.ts +128 -0
  141. package/src/proto/gen/dxos/halo/credentials/auth.ts +5 -0
  142. package/src/proto/gen/dxos/halo/credentials/greet.ts +5 -0
  143. package/src/proto/gen/dxos/halo/credentials/identity.ts +5 -0
  144. package/src/proto/gen/dxos/halo/credentials.ts +9 -0
  145. package/src/proto/gen/dxos/halo/invitations.ts +44 -15
  146. package/src/proto/gen/dxos/halo/keyring.ts +10 -1
  147. package/src/proto/gen/dxos/halo/keys.ts +5 -0
  148. package/src/proto/gen/dxos/halo/signed.ts +5 -0
  149. package/src/proto/gen/dxos/iframe.ts +5 -0
  150. package/src/proto/gen/dxos/keys.ts +5 -0
  151. package/src/proto/gen/dxos/mesh/bridge.ts +5 -0
  152. package/src/proto/gen/dxos/mesh/broadcast.ts +5 -0
  153. package/src/proto/gen/dxos/mesh/messaging.ts +5 -0
  154. package/src/proto/gen/dxos/mesh/muxer.ts +113 -0
  155. package/src/proto/gen/dxos/mesh/presence.ts +5 -0
  156. package/src/proto/gen/dxos/mesh/protocol.ts +5 -0
  157. package/src/proto/gen/dxos/mesh/replicator.ts +5 -0
  158. package/src/proto/gen/dxos/mesh/signal.ts +5 -0
  159. package/src/proto/gen/dxos/mesh/swarm.ts +6 -1
  160. package/src/proto/gen/dxos/mesh/teleport/control.ts +66 -0
  161. package/src/proto/gen/dxos/mesh/teleport/presence.ts +69 -0
  162. package/src/proto/gen/dxos/mesh/teleport/replicator.ts +121 -0
  163. package/src/proto/gen/dxos/registry.ts +7 -2
  164. package/src/proto/gen/dxos/rpc.ts +5 -0
  165. package/src/proto/gen/dxos/service/publisher.ts +16 -1
  166. package/src/proto/gen/dxos/service/scheduler.ts +5 -0
  167. package/src/proto/gen/dxos/type.ts +9 -4
  168. package/src/proto/gen/example/testing/data.ts +5 -0
  169. package/src/proto/gen/example/testing/rpc.ts +5 -0
  170. package/src/proto/gen/google/protobuf.ts +22 -0
  171. package/src/proto/gen/index.ts +37 -3
  172. package/src/proto/substitutions.ts +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/proto/gen/index.ts"],"names":[],"mappings":";;;;;;AAAA,yDAA8C;AAyC9C,qEAA6C;AAuWhC,QAAA,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,utjHAAutjH,CAAC,CAAC;AACjvjH,QAAA,MAAM,GAAG,uBAAM,CAAC,QAAQ,CAAkB,kBAAU,EAAE,uBAAa,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/proto/gen/index.ts"],"names":[],"mappings":";;;;;;AAAA,yDAA8C;AA8C9C,qEAA6C;AAoYhC,QAAA,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,2v1HAA2v1H,CAAC,CAAC;AACrx1H,QAAA,MAAM,GAAG,uBAAM,CAAC,QAAQ,CAAkB,kBAAU,EAAE,uBAAa,CAAC,CAAC"}
@@ -49,6 +49,10 @@ declare const _default: {
49
49
  };
50
50
  decode: (vector: any) => Timeframe;
51
51
  };
52
+ 'google.protobuf.Struct': {
53
+ encode: (value: import("@dxos/codec-protobuf").Struct) => any;
54
+ decode: (value: any) => import("@dxos/codec-protobuf").Struct;
55
+ };
52
56
  'google.protobuf.Any': {
53
57
  encode: (value: {
54
58
  '@type': string;
@@ -1 +1 @@
1
- {"version":3,"file":"substitutions.d.ts","sourceRoot":"","sources":["../../../src/proto/substitutions.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,eAAO,MAAM,aAAa;;wBAEN,SAAS;;;wBACT,GAAG;;;wBAKH,MAAM;;;wBACN,GAAG;;;4BAIC,SAAS;;;;;;yBAIZ,GAAG;;CAOvB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEF,wBAIE"}
1
+ {"version":3,"file":"substitutions.d.ts","sourceRoot":"","sources":["../../../src/proto/substitutions.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,eAAO,MAAM,aAAa;;wBAEN,SAAS;;;wBACT,GAAG;;;wBAKH,MAAM;;;wBACN,GAAG;;;4BAIC,SAAS;;;;;;yBAIZ,GAAG;;CAOvB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEF,wBAKE"}
@@ -31,6 +31,7 @@ exports.substitutions = {
31
31
  };
32
32
  exports.default = {
33
33
  ...codec_protobuf_1.anySubstitutions,
34
+ ...codec_protobuf_1.structSubstitutions,
34
35
  ...exports.substitutions,
35
36
  ...codec_protobuf_1.timestampSubstitutions
36
37
  };
@@ -1 +1 @@
1
- {"version":3,"file":"substitutions.js","sourceRoot":"","sources":["../../../src/proto/substitutions.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;AAEF,yDAAgF;AAChF,qCAAuC;AACvC,+CAA4C;AAE/B,QAAA,aAAa,GAAG;IAC3B,qBAAqB,EAAE;QACrB,MAAM,EAAE,CAAC,KAAgB,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,YAAY,EAAE,EAAE,CAAC;QAC9D,MAAM,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,gBAAS,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;KACnE;IAED,2DAA2D;IAC3D,sBAAsB,EAAE;QACtB,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5D,MAAM,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,gBAAS,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE;KAC9E;IAED,qCAAqC,EAAE;QACrC,MAAM,EAAE,CAAC,SAAoB,EAAE,EAAE,CAAC,CAAC;YACjC,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,YAAY,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;SAC/F,CAAC;QAEF,MAAM,EAAE,CAAC,MAAW,EAAE,EAAE;;YACtB,OAAA,IAAI,qBAAS,CACX,CAAC,MAAA,MAAM,CAAC,MAAM,mCAAI,EAAE,CAAC;iBAClB,MAAM,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,IAAI,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC;iBAClE,GAAG,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,CAAC,gBAAS,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CACnF,CAAA;SAAA;KACJ;CACF,CAAC;AAEF,kBAAe;IACb,GAAG,iCAAgB;IACnB,GAAG,qBAAa;IAChB,GAAG,uCAAsB;CAC1B,CAAC"}
1
+ {"version":3,"file":"substitutions.js","sourceRoot":"","sources":["../../../src/proto/substitutions.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;AAEF,yDAAqG;AACrG,qCAAuC;AACvC,+CAA4C;AAE/B,QAAA,aAAa,GAAG;IAC3B,qBAAqB,EAAE;QACrB,MAAM,EAAE,CAAC,KAAgB,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,YAAY,EAAE,EAAE,CAAC;QAC9D,MAAM,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,gBAAS,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;KACnE;IAED,2DAA2D;IAC3D,sBAAsB,EAAE;QACtB,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5D,MAAM,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,gBAAS,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE;KAC9E;IAED,qCAAqC,EAAE;QACrC,MAAM,EAAE,CAAC,SAAoB,EAAE,EAAE,CAAC,CAAC;YACjC,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,YAAY,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;SAC/F,CAAC;QAEF,MAAM,EAAE,CAAC,MAAW,EAAE,EAAE;;YACtB,OAAA,IAAI,qBAAS,CACX,CAAC,MAAA,MAAM,CAAC,MAAM,mCAAI,EAAE,CAAC;iBAClB,MAAM,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,IAAI,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC;iBAClE,GAAG,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,CAAC,gBAAS,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CACnF,CAAA;SAAA;KACJ;CACF,CAAC;AAEF,kBAAe;IACb,GAAG,iCAAgB;IACnB,GAAG,oCAAmB;IACtB,GAAG,qBAAa;IAChB,GAAG,uCAAsB;CAC1B,CAAC"}
@@ -3,17 +3,17 @@ import { PublicKey } from '@dxos/keys';
3
3
  import { Timeframe } from '@dxos/timeframe';
4
4
  import { TYPES } from './proto';
5
5
  import { EchoEnvelope, FeedMessage, CredentialsMessage } from './proto/gen/dxos/echo/feed';
6
- export type TypedMessage = TypedProtoMessage<TYPES>;
7
- export type FeedMeta = {
6
+ export declare type TypedMessage = TypedProtoMessage<TYPES>;
7
+ export declare type FeedMeta = {
8
8
  feedKey: PublicKey;
9
9
  seq: number;
10
10
  };
11
- export type FeedBlock<T> = {
11
+ export declare type FeedBlock<T> = {
12
12
  feedKey: PublicKey;
13
13
  seq: number;
14
14
  data: T;
15
15
  };
16
- export type FeedMessageBlock = FeedBlock<FeedMessage>;
16
+ export declare type FeedMessageBlock = FeedBlock<FeedMessage>;
17
17
  export interface MutationMeta extends FeedMeta {
18
18
  memberKey: PublicKey;
19
19
  }
@@ -28,6 +28,6 @@ export interface IEchoStream {
28
28
  meta: MutationMetaWithTimeframe;
29
29
  data: EchoEnvelope;
30
30
  }
31
- export type ItemID = string;
32
- export type ItemType = string;
31
+ export declare type ItemID = string;
32
+ export declare type ItemType = string;
33
33
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAG3F,MAAM,MAAM,YAAY,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;AAGpD,MAAM,MAAM,QAAQ,GAAG;IACrB,OAAO,EAAE,SAAS,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI;IACzB,OAAO,EAAE,SAAS,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,CAAC,CAAC;CACT,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;AAEtD,MAAM,WAAW,YAAa,SAAQ,QAAQ;IAC5C,SAAS,EAAE,SAAS,CAAC;CACtB;AAED,MAAM,WAAW,yBAA0B,SAAQ,YAAY;IAC7D,SAAS,EAAE,SAAS,CAAC;CACtB;AAGD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,kBAAkB,CAAC;CAC1B;AAGD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,yBAAyB,CAAC;IAChC,IAAI,EAAE,YAAY,CAAC;CACpB;AAGD,MAAM,MAAM,MAAM,GAAG,MAAM,CAAC;AAC5B,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAG3F,oBAAY,YAAY,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;AAGpD,oBAAY,QAAQ,GAAG;IACrB,OAAO,EAAE,SAAS,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,oBAAY,SAAS,CAAC,CAAC,IAAI;IACzB,OAAO,EAAE,SAAS,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,CAAC,CAAC;CACT,CAAC;AAEF,oBAAY,gBAAgB,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;AAEtD,MAAM,WAAW,YAAa,SAAQ,QAAQ;IAC5C,SAAS,EAAE,SAAS,CAAC;CACtB;AAED,MAAM,WAAW,yBAA0B,SAAQ,YAAY;IAC7D,SAAS,EAAE,SAAS,CAAC;CACtB;AAGD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,kBAAkB,CAAC;CAC1B;AAGD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,yBAAyB,CAAC;IAChC,IAAI,EAAE,YAAY,CAAC;CACpB;AAGD,oBAAY,MAAM,GAAG,MAAM,CAAC;AAC5B,oBAAY,QAAQ,GAAG,MAAM,CAAC"}
package/package.json CHANGED
@@ -1,16 +1,12 @@
1
1
  {
2
2
  "name": "@dxos/protocols",
3
- "version": "0.1.12",
3
+ "version": "0.1.14",
4
4
  "description": "Protobuf definitions for DXOS protocols.",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
7
7
  "license": "MIT",
8
8
  "author": "info@dxos.org",
9
9
  "main": "dist/src/index.js",
10
- "browser": {
11
- "node:assert": "assert",
12
- "node:util": "util"
13
- },
14
10
  "types": "dist/src/index.d.ts",
15
11
  "files": [
16
12
  "dist",
@@ -18,12 +14,10 @@
18
14
  "src"
19
15
  ],
20
16
  "dependencies": {
21
- "assert": "^2.0.0",
22
- "util": "^0.12.4",
23
- "@dxos/codec-protobuf": "0.1.12",
24
- "@dxos/hypercore": "0.1.12",
25
- "@dxos/keys": "0.1.12",
26
- "@dxos/timeframe": "0.1.12"
17
+ "@dxos/codec-protobuf": "0.1.14",
18
+ "@dxos/hypercore": "0.1.14",
19
+ "@dxos/keys": "0.1.14",
20
+ "@dxos/timeframe": "0.1.14"
27
21
  },
28
22
  "devDependencies": {
29
23
  "@types/debug": "^4.1.7",
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @generated
3
+ */
4
+
5
+ export * from '../../dist/src/proto/gen/dxos/gravity';
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @generated
3
+ */
4
+
5
+ module.exports = require('../../dist/src/proto/gen/dxos/gravity');
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @generated
3
+ */
4
+
5
+ export * from '../../../dist/src/proto/gen/dxos/mesh/muxer';
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @generated
3
+ */
4
+
5
+ module.exports = require('../../../dist/src/proto/gen/dxos/mesh/muxer');
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @generated
3
+ */
4
+
5
+ export * from '../../../../dist/src/proto/gen/dxos/mesh/teleport/control';
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @generated
3
+ */
4
+
5
+ module.exports = require('../../../../dist/src/proto/gen/dxos/mesh/teleport/control');
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @generated
3
+ */
4
+
5
+ export * from '../../../../dist/src/proto/gen/dxos/mesh/teleport/presence';
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @generated
3
+ */
4
+
5
+ module.exports = require('../../../../dist/src/proto/gen/dxos/mesh/teleport/presence');
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @generated
3
+ */
4
+
5
+ export * from '../../../../dist/src/proto/gen/dxos/mesh/teleport/replicator';
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @generated
3
+ */
4
+
5
+ module.exports = require('../../../../dist/src/proto/gen/dxos/mesh/teleport/replicator');
package/src/codec.test.ts CHANGED
@@ -4,10 +4,12 @@
4
4
 
5
5
  import { expect } from 'chai';
6
6
 
7
+ import { describe, test } from '@dxos/test';
8
+
7
9
  import { schema } from './proto';
8
10
 
9
- describe('Codec', function () {
10
- it('encodes and decodes messages', async function () {
11
+ describe('Codec', () => {
12
+ test('encodes and decodes messages', async () => {
11
13
  const codec = schema.getCodecForType('example.testing.data.TestItemMutation');
12
14
 
13
15
  // TODO(burdon): Test substitutions.
@@ -154,6 +154,14 @@ message Invitation {
154
154
  ERROR = 7;
155
155
  }
156
156
 
157
+ enum Error {
158
+ OK = 0;
159
+ TIMEOUT = 1;
160
+ INVALID_OTP = 2;
161
+ INVALID_OPT_ATTEMPTS = 3;
162
+ INVALID_CREDENTIALS = 4;
163
+ }
164
+
157
165
  /// Local identifier.
158
166
  optional string invitation_id = 1;
159
167
 
@@ -163,8 +171,8 @@ message Invitation {
163
171
  /// Local state.
164
172
  optional State state = 3;
165
173
 
166
- /// Local error code.
167
- optional int32 error_code = 4;
174
+ /// Error.
175
+ optional Error error = 4;
168
176
 
169
177
  /// Swarm rendezvous (random).
170
178
  optional dxos.keys.PublicKey swarm_key = 5;
@@ -172,14 +180,14 @@ message Invitation {
172
180
  /// Guest's identity (only present if OFFLINE).
173
181
  optional dxos.keys.PublicKey identity_key = 6;
174
182
 
183
+ /// Space to join.
184
+ optional dxos.keys.PublicKey space_key = 7;
185
+
175
186
  /// Authentication code created by host.
176
- optional string authentication_code = 7;
187
+ optional string authentication_code = 8;
177
188
 
178
189
  /// Timeout (ms).
179
- optional int32 timeout = 8;
180
-
181
- /// Space key (if data invitation).
182
- optional dxos.keys.PublicKey space_key = 9;
190
+ optional int32 timeout = 9;
183
191
  }
184
192
 
185
193
  message AuthenticationRequest {
@@ -192,6 +200,7 @@ message CancelInvitationRequest {
192
200
  }
193
201
 
194
202
  // Common TS interface.
203
+ // TODO(burdon): Reconcile with halo/invitations.proto (e.g., common defs like error vs superset of services?)
195
204
 
196
205
  service HaloInvitationsService {
197
206
  rpc CreateInvitation(Invitation) returns (stream Invitation);
@@ -9,7 +9,7 @@ import "google/protobuf/empty.proto";
9
9
 
10
10
  import "dxos/echo/feed.proto";
11
11
  import "dxos/echo/snapshot.proto";
12
- import "dxos/halo/keys.proto";
12
+ import "dxos/halo/keyring.proto";
13
13
  import "dxos/halo/signed.proto";
14
14
  import "dxos/keys.proto";
15
15
  import "dxos/rpc.proto";
@@ -106,7 +106,7 @@ message DisableDebugLoggingResponse {
106
106
  message SubscribeToKeyringKeysRequest {}
107
107
 
108
108
  message SubscribeToKeyringKeysResponse {
109
- repeated dxos.halo.keys.KeyRecord keys = 1;
109
+ repeated dxos.halo.keyring.KeyRecord keys = 1;
110
110
  }
111
111
 
112
112
  // SubscribeToCredential
@@ -0,0 +1,55 @@
1
+ //
2
+ // Copyright 2021 DXOS.org
3
+ //
4
+
5
+ syntax = "proto3";
6
+
7
+ import "google/protobuf/any.proto";
8
+
9
+ import "dxos/keys.proto";
10
+
11
+ package dxos.gravity;
12
+
13
+ /// Root specification for Agent.
14
+ message AgentSpec {
15
+ optional int32 version = 1;
16
+ optional string state_machine = 2;
17
+ optional CommandSequence start_sequence = 3;
18
+ optional CommandSequence stop_sequence = 4;
19
+ repeated CommandSequence test_sequences = 5;
20
+ }
21
+
22
+ /// Commands that must be run sequentially.
23
+ message CommandSequence {
24
+ repeated Command commands = 1;
25
+ }
26
+
27
+ /// Atomic async command.
28
+ message Command {
29
+ // TODO(burdon): oneof vs. any?
30
+ oneof Cmd {
31
+ CreateProfileCommand create_profile = 1;
32
+ CreateSpaceCommand create_space = 2;
33
+ CreateSpaceInvitationCommand create_space_invitation = 3;
34
+ AcceptSpaceInvitationCommand accept_space_invitation = 4;
35
+ }
36
+ }
37
+
38
+ //
39
+ // Commands.
40
+ //
41
+
42
+ message CreateProfileCommand {}
43
+
44
+ message CreateSpaceCommand {
45
+ optional string id = 1;
46
+ }
47
+
48
+ message CreateSpaceInvitationCommand {
49
+ string id = 1;
50
+ dxos.keys.PublicKey swarm_key = 2;
51
+ }
52
+
53
+ message AcceptSpaceInvitationCommand {
54
+ dxos.keys.PublicKey swarm_key = 1;
55
+ }
@@ -54,6 +54,9 @@ message SpaceMember {
54
54
 
55
55
  // TODO: Move elsewhere.
56
56
  optional ProfileDocument profile = 3;
57
+
58
+ /// Genesis feed of the space. Needed so that the admitted member can start replicating the space based on this credential alone.
59
+ dxos.keys.PublicKey genesis_feed_key = 4;
57
60
  }
58
61
 
59
62
  // [ASSERTION]: Device is authorized to sign messages for a given Agent (Identity).
@@ -6,14 +6,27 @@ syntax = "proto3";
6
6
 
7
7
  import "google/protobuf/empty.proto";
8
8
 
9
+ import "dxos/halo/credentials.proto";
9
10
  import "dxos/keys.proto";
10
11
 
11
12
  package dxos.halo.invitations;
12
13
 
14
+ // TODO(burdon): Reconcile with client.services.Invitation. Merge files.
15
+
13
16
  message AuthenticationRequest {
14
17
  string authentication_code = 1;
15
18
  }
16
19
 
20
+ message AuthenticationResponse {
21
+ enum Status {
22
+ OK = 0;
23
+ INVALID_OTP = 1;
24
+ INVALID_OPT_ATTEMPTS = 2;
25
+ }
26
+
27
+ optional Status status = 1;
28
+ }
29
+
17
30
  //
18
31
  // HALO device invitations.
19
32
  //
@@ -35,7 +48,7 @@ service HaloHostService {
35
48
  rpc RequestAdmission(google.protobuf.Empty) returns (HaloAdmissionOffer);
36
49
 
37
50
  /// Authenticate request.
38
- rpc Authenticate(AuthenticationRequest) returns (google.protobuf.Empty);
51
+ rpc Authenticate(AuthenticationRequest) returns (AuthenticationResponse);
39
52
 
40
53
  /// Process admission request from guest.
41
54
  rpc PresentAdmissionCredentials(HaloAdmissionCredentials) returns (google.protobuf.Empty);
@@ -45,30 +58,30 @@ service HaloHostService {
45
58
  // Space agent invitations.
46
59
  //
47
60
 
48
- message SpaceAdmissionOffer {
49
- dxos.keys.PublicKey space_key = 1;
50
- dxos.keys.PublicKey genesis_feed_key = 3;
61
+ message Introduction {
62
+ /// Guest's profile.
63
+ optional halo.credentials.ProfileDocument profile = 1;
51
64
  }
52
65
 
53
- message SpaceAdmissionCredentials {
66
+ message SpaceAdmissionRequest {
54
67
  dxos.keys.PublicKey identity_key = 1;
55
68
  dxos.keys.PublicKey device_key = 2;
56
69
  dxos.keys.PublicKey control_feed_key = 3;
57
70
  dxos.keys.PublicKey data_feed_key = 4;
58
71
  }
59
72
 
60
- message AdmissionParameters {
61
- /// Guest's profile.
62
- optional ProfileDocument profile = 1;
73
+ message SpaceAdmissionCredentials {
74
+ /// Credential of type `SpaceMember` that grants Guest's identity access to the space.
75
+ dxos.halo.credentials.Credential credential = 1;
63
76
  }
64
77
 
65
78
  service SpaceHostService {
66
- /// Process admission request.
67
- rpc RequestAdmission(AdmissionParameters) returns (SpaceAdmissionOffer);
79
+ /// Introduce Guest to the host.
80
+ rpc Introduce(Introduction) returns (google.protobuf.Empty);
68
81
 
69
82
  /// Authenticate request.
70
- rpc Authenticate(AuthenticationRequest) returns (google.protobuf.Empty);
83
+ rpc Authenticate(AuthenticationRequest) returns (AuthenticationResponse);
71
84
 
72
85
  /// Process admission credentials.
73
- rpc PresentAdmissionCredentials(SpaceAdmissionCredentials) returns (google.protobuf.Empty);
86
+ rpc RequestAdmission(SpaceAdmissionRequest) returns (SpaceAdmissionCredentials);
74
87
  }
@@ -9,5 +9,5 @@ package dxos.halo.keyring;
9
9
  // TODO(burdon): Conflicts with keyring.proto
10
10
  message KeyRecord {
11
11
  bytes public_key = 1;
12
- bytes private_key = 2;
12
+ optional bytes private_key = 2;
13
13
  }
@@ -0,0 +1,51 @@
1
+ //
2
+ // Copyright 2020 DXOS.org
3
+ //
4
+
5
+ syntax = "proto3";
6
+
7
+ package dxos.mesh.muxer;
8
+
9
+ /// Root type for messages sent over the stream.
10
+ message Command {
11
+ oneof payload {
12
+ OpenChannel open_channel = 1;
13
+ Data data = 2;
14
+ Destroy destroy = 3;
15
+ }
16
+ }
17
+
18
+ /**
19
+ * Notify the remote peer that we are opening a channel.
20
+ *
21
+ * Means that we are ready to receive data on the channel.
22
+ * The remote peer could now send data messages with this channel id that will be atributed to this channel.
23
+ *
24
+ * The local peer must buffer any data messages until the remote peer replies with OpenChannel for this tag.
25
+ */
26
+ message OpenChannel {
27
+ /// Session-specific ID for the channel.
28
+ int32 id = 1;
29
+
30
+ /// Stable identifier for the channel that is agreed upon by both peers.
31
+ string tag = 2;
32
+
33
+ /// Optional Mime-type or URL describing the protocol that is hosted ober this stream. Used for introspection.
34
+ optional string content_type = 3;
35
+ }
36
+
37
+ message Data {
38
+ /**
39
+ * Identifier for the channel as assigned by the remote peer.
40
+ * NOTE: An OpenChannel message must received before any data is sent on a channel.
41
+ * Any data messages sent before that, should be ignored.
42
+ */
43
+ int32 channel_id = 1;
44
+ bytes data = 2;
45
+ }
46
+
47
+ /// Terminate the connection. The other peer can expect the connection to be closed.
48
+ message Destroy {
49
+ /// Error that caused the termination.
50
+ optional string error = 1;
51
+ }
@@ -4,6 +4,7 @@
4
4
 
5
5
  syntax = "proto3";
6
6
 
7
+ import "google/protobuf/struct.proto";
7
8
  import "dxos/keys.proto";
8
9
 
9
10
  package dxos.mesh.swarm;
@@ -37,5 +38,5 @@ message Answer {
37
38
  }
38
39
 
39
40
  message Signal {
40
- string json = 1;
41
+ google.protobuf.Struct payload = 1;
41
42
  }
@@ -0,0 +1,19 @@
1
+ //
2
+ // Copyright 2022 DXOS.org
3
+ //
4
+
5
+ syntax = "proto3";
6
+
7
+ package dxos.mesh.teleport.control;
8
+
9
+ message RegisterExtensionRequest {
10
+ /// Must not contain slashes: /[\w_.]+/. Example: `dxos.mesh.teleport.control`.
11
+ string name = 1;
12
+ }
13
+
14
+ /// Controls the lifycycle of the teleport session and its exentsions.
15
+ service ControlService {
16
+ rpc RegisterExtension (RegisterExtensionRequest) returns (google.protobuf.Empty);
17
+
18
+ rpc Heartbeat(google.protobuf.Empty) returns (google.protobuf.Empty);
19
+ }
@@ -0,0 +1,23 @@
1
+ //
2
+ // Copyright 2022 DXOS.org
3
+ //
4
+
5
+ syntax = "proto3";
6
+
7
+ import "google/protobuf/empty.proto";
8
+ import "dxos/keys.proto";
9
+
10
+ package dxos.mesh.teleport.presence;
11
+
12
+ message PeerState {
13
+ dxos.keys.PublicKey peerId = 1;
14
+ /// Will be used to build network graph
15
+ repeated dxos.keys.PublicKey connections = 2;
16
+ /// Peer tracks what had been sent by message id
17
+ dxos.keys.PublicKey messageId = 3;
18
+ google.protobuf.Timestamp timestamp = 4;
19
+ }
20
+
21
+ service PresenceService {
22
+ rpc Announce(PeerState) returns (google.protobuf.Empty);
23
+ }
@@ -0,0 +1,60 @@
1
+ //
2
+ // Copyright 2022 DXOS.org
3
+ //
4
+
5
+ syntax = "proto3";
6
+
7
+ import "google/protobuf/empty.proto";
8
+ import "dxos/keys.proto";
9
+
10
+ package dxos.mesh.teleport.replicator;
11
+
12
+ message FeedInfo {
13
+ dxos.keys.PublicKey feed_key = 1;
14
+
15
+ /// set if the peer whishes to download the data from the feed.
16
+ bool download = 2;
17
+
18
+ /// set if the peer whishes to updload the data from the feed.
19
+ bool upload = 3;
20
+ }
21
+
22
+ message UpdateFeedsRequest {
23
+ // All feeds that the peer is interesed in.
24
+ repeated FeedInfo feeds = 1;
25
+ }
26
+
27
+ message StartReplicationRequest {
28
+ FeedInfo info = 1;
29
+ }
30
+
31
+ message StartReplicationResponse {
32
+ /**
33
+ * Tag of the stream the peers will use for the replication.
34
+ * Set to null or "" (empty string) of the peer does not wish to replicate the feed.
35
+ *
36
+ * A new stream must be open with unique tag to start replicating. Existing streams cannot be reused.
37
+ */
38
+ optional string stream_tag = 1;
39
+ }
40
+
41
+ message StopReplicationRequest {
42
+ FeedInfo info = 1;
43
+ }
44
+
45
+ /**
46
+ * RPC verbs for replication teleport extension.
47
+ * Assumes one peer is designated an initiator.
48
+ * The initiator will start and stop replication streams.
49
+ * The other peer will send updates using the UpdateFeeds method.
50
+ */
51
+ service ReplicatorService {
52
+ /// Notify about available feeds.
53
+ rpc UpdateFeeds (UpdateFeedsRequest) returns (google.protobuf.Empty);
54
+
55
+ /// Start replicating feed. If this feed is already being replicated, the existing replication session must be stopped.
56
+ rpc StartReplication(StartReplicationRequest) returns (StartReplicationResponse);
57
+
58
+ /// Stop replicating feed.
59
+ rpc StopReplication(StopReplicationRequest) returns (google.protobuf.Empty);
60
+ }
@@ -5,6 +5,7 @@
5
5
  syntax = "proto3";
6
6
 
7
7
  import "google/protobuf/timestamp.proto";
8
+ import "google/protobuf/struct.proto";
8
9
 
9
10
  // TODO(burdon): Rename `dxos.registry.record`.
10
11
  package dxos.registry;
@@ -16,8 +17,8 @@ message Record {
16
17
  message Type {
17
18
  /// FQ protobuf message name.
18
19
  string message_name = 1;
19
- /// Set of protobuf messages encoded in JSON.
20
- string protobuf_defs = 2;
20
+ /// Set of protobuf messages encoded.
21
+ google.protobuf.Struct protobuf_defs = 2;
21
22
  /// CID of protobuf source file.
22
23
  optional string protobuf_ipfs_cid = 3;
23
24
  }
@@ -18,7 +18,11 @@ message PublishRequest {
18
18
  }
19
19
 
20
20
  message PublishResponse {
21
- dxos.config.Package package = 1;
21
+ message PublishedModule {
22
+ dxos.config.Module module = 1;
23
+ repeated string urls = 2;
24
+ }
25
+ repeated PublishedModule modules = 1;
22
26
  }
23
27
 
24
28
  message ListResponse {
@@ -4,6 +4,7 @@
4
4
 
5
5
  syntax = "proto3";
6
6
 
7
+ import "google/protobuf/struct.proto";
7
8
  import "dxos/registry.proto";
8
9
 
9
10
  // TODO(burdon): Rename `dxos.registry.type`.
@@ -80,11 +81,11 @@ message Bot {
80
81
  // Registered as `type.state-machine`.
81
82
  //
82
83
  message StateMachine {
83
- /// Set of protobuf messages encoded in JSON.
84
- string mutation_protobuf_defs = 1;
84
+ /// Set of protobuf messages.
85
+ google.protobuf.Struct mutation_protobuf_defs = 1;
85
86
 
86
- /// Set of protobuf messages encoded in JSON.
87
- string snapshot_protobuf_defs = 2;
87
+ /// Set of protobuf messages.
88
+ google.protobuf.Struct snapshot_protobuf_defs = 2;
88
89
 
89
90
  bytes code_ipfs_cid = 3;
90
91
  }