@dxos/network-manager 0.1.57-main.e87098f → 0.1.57

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 (95) hide show
  1. package/dist/lib/browser/{chunk-UAB4ONRL.mjs → chunk-UKMTAO4L.mjs} +553 -121
  2. package/dist/lib/browser/chunk-UKMTAO4L.mjs.map +7 -0
  3. package/dist/lib/browser/chunk-YERMWDRB.mjs +24 -0
  4. package/dist/lib/browser/chunk-YERMWDRB.mjs.map +7 -0
  5. package/dist/lib/browser/index.browser-O53CPVK3.mjs +14 -0
  6. package/dist/lib/browser/index.browser-O53CPVK3.mjs.map +7 -0
  7. package/dist/lib/browser/index.mjs +29 -13
  8. package/dist/lib/browser/meta.json +1 -1
  9. package/dist/lib/browser/testing/index.mjs +83 -38
  10. package/dist/lib/browser/testing/index.mjs.map +3 -3
  11. package/dist/lib/node/index.cjs +1048 -124
  12. package/dist/lib/node/index.cjs.map +4 -4
  13. package/dist/lib/node/meta.json +1 -1
  14. package/dist/lib/node/testing/index.cjs +1109 -151
  15. package/dist/lib/node/testing/index.cjs.map +4 -4
  16. package/dist/types/src/swarm/connection.d.ts +6 -0
  17. package/dist/types/src/swarm/connection.d.ts.map +1 -1
  18. package/dist/types/src/swarm/peer.d.ts.map +1 -1
  19. package/dist/types/src/testing/test-builder.d.ts +5 -2
  20. package/dist/types/src/testing/test-builder.d.ts.map +1 -1
  21. package/dist/types/src/transport/datachannel/index.browser.d.ts +15 -0
  22. package/dist/types/src/transport/datachannel/index.browser.d.ts.map +1 -0
  23. package/dist/types/src/transport/datachannel/index.d.ts +8 -0
  24. package/dist/types/src/transport/datachannel/index.d.ts.map +1 -0
  25. package/dist/types/src/transport/datachannel/rtc-data-channel.d.ts +29 -0
  26. package/dist/types/src/transport/datachannel/rtc-data-channel.d.ts.map +1 -0
  27. package/dist/types/src/transport/datachannel/rtc-events.d.ts +9 -0
  28. package/dist/types/src/transport/datachannel/rtc-events.d.ts.map +1 -0
  29. package/dist/types/src/transport/datachannel/rtc-ice-candidate.d.ts +22 -0
  30. package/dist/types/src/transport/datachannel/rtc-ice-candidate.d.ts.map +1 -0
  31. package/dist/types/src/transport/datachannel/rtc-peer-connection.d.ts +47 -0
  32. package/dist/types/src/transport/datachannel/rtc-peer-connection.d.ts.map +1 -0
  33. package/dist/types/src/transport/datachannel/rtc-peer-connection.test.d.ts +2 -0
  34. package/dist/types/src/transport/datachannel/rtc-peer-connection.test.d.ts.map +1 -0
  35. package/dist/types/src/transport/datachannel/rtc-session-description.d.ts +10 -0
  36. package/dist/types/src/transport/datachannel/rtc-session-description.d.ts.map +1 -0
  37. package/dist/types/src/transport/index.d.ts +5 -3
  38. package/dist/types/src/transport/index.d.ts.map +1 -1
  39. package/dist/types/src/transport/libdatachannel-transport.d.ts +35 -0
  40. package/dist/types/src/transport/libdatachannel-transport.d.ts.map +1 -0
  41. package/dist/types/src/transport/libdatachannel-transport.test.d.ts +2 -0
  42. package/dist/types/src/transport/libdatachannel-transport.test.d.ts.map +1 -0
  43. package/dist/types/src/transport/simplepeer-simple-peer.d.ts +2 -0
  44. package/dist/types/src/transport/simplepeer-simple-peer.d.ts.map +1 -0
  45. package/dist/types/src/transport/simplepeer-transport-proxy-test.d.ts +2 -0
  46. package/dist/types/src/transport/simplepeer-transport-proxy-test.d.ts.map +1 -0
  47. package/dist/types/src/transport/{webrtc-transport-proxy.d.ts → simplepeer-transport-proxy.d.ts} +5 -5
  48. package/dist/types/src/transport/simplepeer-transport-proxy.d.ts.map +1 -0
  49. package/dist/types/src/transport/{webrtc-transport-service.d.ts → simplepeer-transport-service.d.ts} +2 -2
  50. package/dist/types/src/transport/simplepeer-transport-service.d.ts.map +1 -0
  51. package/dist/types/src/transport/{webrtc-transport.d.ts → simplepeer-transport.d.ts} +8 -8
  52. package/dist/types/src/transport/simplepeer-transport.d.ts.map +1 -0
  53. package/dist/types/src/transport/simplepeer-transport.test.d.ts +2 -0
  54. package/dist/types/src/transport/simplepeer-transport.test.d.ts.map +1 -0
  55. package/dist/types/src/transport/transport.d.ts +6 -0
  56. package/dist/types/src/transport/transport.d.ts.map +1 -1
  57. package/dist/types/src/wire-protocol.d.ts +3 -2
  58. package/dist/types/src/wire-protocol.d.ts.map +1 -1
  59. package/package.json +25 -20
  60. package/src/connection-log.ts +1 -1
  61. package/src/swarm/connection.test.ts +8 -3
  62. package/src/swarm/connection.ts +58 -6
  63. package/src/swarm/peer.ts +4 -0
  64. package/src/swarm/swarm.test.ts +3 -2
  65. package/src/testing/test-builder.ts +72 -41
  66. package/src/transport/datachannel/README.md +2 -0
  67. package/src/transport/datachannel/index.browser.ts +8 -0
  68. package/src/transport/datachannel/index.ts +17 -0
  69. package/src/transport/datachannel/rtc-data-channel.ts +148 -0
  70. package/src/transport/datachannel/rtc-events.ts +23 -0
  71. package/src/transport/datachannel/rtc-ice-candidate.ts +54 -0
  72. package/src/transport/datachannel/rtc-peer-connection.test.ts +112 -0
  73. package/src/transport/datachannel/rtc-peer-connection.ts +347 -0
  74. package/src/transport/datachannel/rtc-session-description.ts +23 -0
  75. package/src/transport/index.ts +5 -3
  76. package/src/transport/libdatachannel-transport.test.ts +99 -0
  77. package/src/transport/libdatachannel-transport.ts +252 -0
  78. package/src/transport/{webrtc-transport-proxy.test.ts → simplepeer-transport-proxy-test.ts} +15 -15
  79. package/src/transport/{webrtc-transport-proxy.ts → simplepeer-transport-proxy.ts} +8 -8
  80. package/src/transport/{webrtc-transport-service.ts → simplepeer-transport-service.ts} +4 -4
  81. package/src/transport/{webrtc-transport.test.ts → simplepeer-transport.test.ts} +5 -5
  82. package/src/transport/{webrtc-transport.ts → simplepeer-transport.ts} +13 -27
  83. package/src/transport/transport.ts +7 -0
  84. package/src/wire-protocol.ts +8 -4
  85. package/dist/lib/browser/chunk-UAB4ONRL.mjs.map +0 -7
  86. package/dist/types/src/transport/webrtc-simple-peer.test.d.ts +0 -2
  87. package/dist/types/src/transport/webrtc-simple-peer.test.d.ts.map +0 -1
  88. package/dist/types/src/transport/webrtc-transport-proxy.d.ts.map +0 -1
  89. package/dist/types/src/transport/webrtc-transport-proxy.test.d.ts +0 -2
  90. package/dist/types/src/transport/webrtc-transport-proxy.test.d.ts.map +0 -1
  91. package/dist/types/src/transport/webrtc-transport-service.d.ts.map +0 -1
  92. package/dist/types/src/transport/webrtc-transport.d.ts.map +0 -1
  93. package/dist/types/src/transport/webrtc-transport.test.d.ts +0 -2
  94. package/dist/types/src/transport/webrtc-transport.test.d.ts.map +0 -1
  95. /package/src/transport/{webrtc-simple-peer.test.ts → simplepeer-simple-peer.ts} +0 -0
@@ -18,6 +18,10 @@ interface ConnectionCallbacks {
18
18
  * State machine for each connection.
19
19
  */
20
20
  export declare enum ConnectionState {
21
+ /**
22
+ * Connection is created, but not yet passed through the connection limiter.
23
+ */
24
+ CREATED = "CREATED",
21
25
  /**
22
26
  * Initial state. Connection is registered but no attempt to connect to the remote peer has been performed.
23
27
  * Might mean that we are waiting for the answer signal from the remote peer.
@@ -74,6 +78,7 @@ export declare class Connection {
74
78
  * Create an underlying transport and prepares it for the connection.
75
79
  */
76
80
  openConnection(): Promise<void>;
81
+ abort(err?: Error): Promise<void>;
77
82
  close(err?: Error): Promise<void>;
78
83
  private _sendSignal;
79
84
  private _flushSignalBuffer;
@@ -81,6 +86,7 @@ export declare class Connection {
81
86
  * Receive a signal from the remote peer.
82
87
  */
83
88
  signal(msg: SignalMessage): Promise<void>;
89
+ initiate(): void;
84
90
  private _changeState;
85
91
  }
86
92
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../../../src/swarm/connection.ts"],"names":[],"mappings":"AAIA,OAAO,EAAgB,KAAK,EAAuB,MAAM,aAAa,CAAC;AAEvE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG1C,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAKvC,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAahD,UAAU,mBAAmB;IAC3B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IAEzB;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;CAClC;AAED;;GAEG;AACH,oBAAY,eAAe;IACzB;;;OAGG;IACH,OAAO,YAAY;IAEnB;;OAEG;IACH,UAAU,eAAe;IAEzB;;OAEG;IACH,SAAS,cAAc;IAEvB;;OAEG;IACH,OAAO,YAAY;IAEnB;;OAEG;IACH,MAAM,WAAW;CAClB;AAED;;;GAGG;AACH,qBAAa,UAAU;aAsBH,KAAK,EAAE,SAAS;aAChB,KAAK,EAAE,SAAS;aAChB,QAAQ,EAAE,SAAS;aACnB,SAAS,EAAE,SAAS;aACpB,SAAS,EAAE,OAAO;IAClC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;IA7B9B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAiB;IAEtC,OAAO,CAAC,MAAM,CAA4C;IAC1D,OAAO,CAAC,UAAU,CAAwB;IAC1C,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,OAAO,CAAC,qBAAqB,CAAgB;IAC7C,OAAO,CAAC,qBAAqB,CAAgB;IAE7C,QAAQ,CAAC,YAAY,yBAAgC;IACrD,QAAQ,CAAC,MAAM,cAAqB;IAE7B,WAAW,SAA8B;IAEhD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAE7B;IAEH,OAAO,CAAC,gBAAgB,CAA6B;gBAGnC,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,SAAS,EAAE,wBAAwB;IAC1C,QAAQ,EAAE,SAAS,EACnB,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,OAAO,EACjB,gBAAgB,EAAE,eAAe,EACjC,SAAS,EAAE,YAAY,EACvB,iBAAiB,EAAE,gBAAgB,EACnC,UAAU,CAAC,iCAAqB;IAWnD,IAAI,KAAK,oBAER;IAED,IAAI,SAAS,0BAEZ;IAED,IAAI,QAAQ,iBAEX;IAED;;OAEG;IACG,cAAc;IA6Dd,KAAK,CAAC,GAAG,CAAC,EAAE,KAAK;IAgCvB,OAAO,CAAC,WAAW;YAKL,kBAAkB;IAgChC;;OAEG;IACG,MAAM,CAAC,GAAG,EAAE,aAAa;IA2B/B,OAAO,CAAC,YAAY;CAMrB"}
1
+ {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../../../src/swarm/connection.ts"],"names":[],"mappings":"AAIA,OAAO,EAAgB,KAAK,EAAuB,MAAM,aAAa,CAAC;AAEvE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG1C,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAKvC,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAahD,UAAU,mBAAmB;IAC3B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IAEzB;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;CAClC;AAED;;GAEG;AACH,oBAAY,eAAe;IACzB;;OAEG;IACH,OAAO,YAAY;IAEnB;;;OAGG;IACH,OAAO,YAAY;IAEnB;;OAEG;IACH,UAAU,eAAe;IAEzB;;OAEG;IACH,SAAS,cAAc;IAEvB;;OAEG;IACH,OAAO,YAAY;IAEnB;;OAEG;IACH,MAAM,WAAW;CAClB;AAED;;;GAGG;AACH,qBAAa,UAAU;aAsBH,KAAK,EAAE,SAAS;aAChB,KAAK,EAAE,SAAS;aAChB,QAAQ,EAAE,SAAS;aACnB,SAAS,EAAE,SAAS;aACpB,SAAS,EAAE,OAAO;IAClC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;IA7B9B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAiB;IAEtC,OAAO,CAAC,MAAM,CAA4C;IAC1D,OAAO,CAAC,UAAU,CAAwB;IAC1C,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,OAAO,CAAC,qBAAqB,CAAgB;IAC7C,OAAO,CAAC,qBAAqB,CAAgB;IAE7C,QAAQ,CAAC,YAAY,yBAAgC;IACrD,QAAQ,CAAC,MAAM,cAAqB;IAE7B,WAAW,SAA8B;IAEhD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAE7B;IAEH,OAAO,CAAC,gBAAgB,CAA6B;gBAGnC,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,SAAS,EAAE,wBAAwB;IAC1C,QAAQ,EAAE,SAAS,EACnB,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,OAAO,EACjB,gBAAgB,EAAE,eAAe,EACjC,SAAS,EAAE,YAAY,EACvB,iBAAiB,EAAE,gBAAgB,EACnC,UAAU,CAAC,iCAAqB;IAWnD,IAAI,KAAK,oBAER;IAED,IAAI,SAAS,0BAEZ;IAED,IAAI,QAAQ,iBAEX;IAED;;OAEG;IACG,cAAc;IAsEd,KAAK,CAAC,GAAG,CAAC,EAAE,KAAK;IAkCjB,KAAK,CAAC,GAAG,CAAC,EAAE,KAAK;IAgCvB,OAAO,CAAC,WAAW;YAKL,kBAAkB;IAgChC;;OAEG;IACG,MAAM,CAAC,GAAG,EAAE,aAAa;IA2B/B,QAAQ;IAIR,OAAO,CAAC,YAAY;CAMrB"}
@@ -1 +1 @@
1
- {"version":3,"file":"peer.d.ts","sourceRoot":"","sources":["../../../../src/swarm/peer.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAA8B,MAAM,aAAa,CAAC;AAEhE,OAAO,EAAkB,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3D,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAE/D,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAmB,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,qBAAa,wBAAyB,SAAQ,WAAW;;CAIxD;AAED,UAAU,aAAa;IACrB;;OAEG;IACH,WAAW,EAAE,CAAC,UAAU,EAAE,UAAU,KAAK,IAAI,CAAC;IAE9C;;OAEG;IACH,WAAW,EAAE,MAAM,IAAI,CAAC;IAExB;;OAEG;IACH,cAAc,EAAE,MAAM,IAAI,CAAC;IAE3B;;OAEG;IACH,UAAU,EAAE,MAAM,IAAI,CAAC;IAEvB;;OAEG;IACH,UAAU,EAAE,MAAM,IAAI,CAAC;IAEvB;;OAEG;IACH,OAAO,EAAE,CAAC,QAAQ,EAAE,SAAS,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAEnD;;OAEG;IACH,eAAe,EAAE,MAAM,IAAI,CAAC;CAC7B;AAOD;;;GAGG;AACH,qBAAa,IAAI;aAwBG,EAAE,EAAE,SAAS;aACb,KAAK,EAAE,SAAS;aAChB,WAAW,EAAE,SAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU;IA9B7B;;OAEG;IACH,OAAO,CAAC,eAAe,CAAK;IACrB,kBAAkB,UAAQ;IACjC,OAAO,CAAC,mBAAmB,CAAC,CAAS;IAErC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAiB;IACtC,OAAO,CAAC,cAAc,CAAC,CAAU;IAE1B,UAAU,CAAC,EAAE,UAAU,CAAC;IAE/B;;OAEG;IACI,WAAW,UAAS;IAEpB,UAAU,UAAS;IAE1B,SAAgB,mBAAmB,oBAA2B;gBAI5C,EAAE,EAAE,SAAS,EACb,KAAK,EAAE,SAAS,EAChB,WAAW,EAAE,SAAS,EACrB,gBAAgB,EAAE,eAAe,EACjC,iBAAiB,EAAE,oBAAoB,EACvC,iBAAiB,EAAE,gBAAgB,EACnC,kBAAkB,EAAE,iBAAiB,EACrC,UAAU,EAAE,aAAa;IAG5C;;OAEG;IACG,OAAO,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IAiDrD;;OAEG;IACG,kBAAkB;IAyCxB;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAsGnB,eAAe,CAAC,GAAG,CAAC,EAAE,KAAK;IAgB3B,QAAQ,CAAC,OAAO,EAAE,aAAa;IAU/B,OAAO;CAOd"}
1
+ {"version":3,"file":"peer.d.ts","sourceRoot":"","sources":["../../../../src/swarm/peer.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAA8B,MAAM,aAAa,CAAC;AAEhE,OAAO,EAAkB,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3D,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAE/D,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAmB,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,qBAAa,wBAAyB,SAAQ,WAAW;;CAIxD;AAED,UAAU,aAAa;IACrB;;OAEG;IACH,WAAW,EAAE,CAAC,UAAU,EAAE,UAAU,KAAK,IAAI,CAAC;IAE9C;;OAEG;IACH,WAAW,EAAE,MAAM,IAAI,CAAC;IAExB;;OAEG;IACH,cAAc,EAAE,MAAM,IAAI,CAAC;IAE3B;;OAEG;IACH,UAAU,EAAE,MAAM,IAAI,CAAC;IAEvB;;OAEG;IACH,UAAU,EAAE,MAAM,IAAI,CAAC;IAEvB;;OAEG;IACH,OAAO,EAAE,CAAC,QAAQ,EAAE,SAAS,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAEnD;;OAEG;IACH,eAAe,EAAE,MAAM,IAAI,CAAC;CAC7B;AAOD;;;GAGG;AACH,qBAAa,IAAI;aAwBG,EAAE,EAAE,SAAS;aACb,KAAK,EAAE,SAAS;aAChB,WAAW,EAAE,SAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU;IA9B7B;;OAEG;IACH,OAAO,CAAC,eAAe,CAAK;IACrB,kBAAkB,UAAQ;IACjC,OAAO,CAAC,mBAAmB,CAAC,CAAS;IAErC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAiB;IACtC,OAAO,CAAC,cAAc,CAAC,CAAU;IAE1B,UAAU,CAAC,EAAE,UAAU,CAAC;IAE/B;;OAEG;IACI,WAAW,UAAS;IAEpB,UAAU,UAAS;IAE1B,SAAgB,mBAAmB,oBAA2B;gBAI5C,EAAE,EAAE,SAAS,EACb,KAAK,EAAE,SAAS,EAChB,WAAW,EAAE,SAAS,EACrB,gBAAgB,EAAE,eAAe,EACjC,iBAAiB,EAAE,oBAAoB,EACvC,iBAAiB,EAAE,gBAAgB,EACnC,kBAAkB,EAAE,iBAAiB,EACrC,UAAU,EAAE,aAAa;IAG5C;;OAEG;IACG,OAAO,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IAoDrD;;OAEG;IACG,kBAAkB;IA0CxB;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAsGnB,eAAe,CAAC,GAAG,CAAC,EAAE,KAAK;IAgB3B,QAAQ,CAAC,OAAO,EAAE,aAAa;IAU/B,OAAO;CAOd"}
@@ -3,11 +3,13 @@ import { MemorySignalManager, WebsocketSignalManager } from '@dxos/messaging';
3
3
  import { Runtime } from '@dxos/protocols/proto/dxos/config';
4
4
  import { NetworkManager } from '../network-manager';
5
5
  import { FullyConnectedTopology } from '../topology';
6
+ import { TransportKind } from '../transport';
6
7
  import { TestWireProtocol, type TestTeleportExtensionFactory } from './test-wire-protocol';
7
8
  export declare const TEST_SIGNAL_HOSTS: Runtime.Services.Signal[];
8
9
  export type TestBuilderOptions = {
9
10
  signalHosts?: Runtime.Services.Signal[];
10
11
  bridge?: boolean;
12
+ transport?: TransportKind;
11
13
  };
12
14
  /**
13
15
  * Builder used to construct networks and peers.
@@ -25,11 +27,12 @@ export declare class TestBuilder {
25
27
  export declare class TestPeer {
26
28
  private readonly testBuilder;
27
29
  readonly peerId: PublicKey;
30
+ readonly transport?: TransportKind | undefined;
28
31
  private readonly _swarms;
29
32
  private _proxy?;
30
33
  private _service?;
31
- constructor(testBuilder: TestBuilder, peerId: PublicKey);
32
- createNetworkManager(): NetworkManager;
34
+ constructor(testBuilder: TestBuilder, peerId: PublicKey, transport?: TransportKind | undefined);
35
+ createNetworkManager(transport: TransportKind): NetworkManager;
33
36
  open(): Promise<void>;
34
37
  close(): Promise<void>;
35
38
  getSwarm(topic: PublicKey): TestSwarmConnection;
@@ -1 +1 @@
1
- {"version":3,"file":"test-builder.d.ts","sourceRoot":"","sources":["../../../../src/testing/test-builder.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EACL,mBAAmB,EAGnB,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAC;AAI5D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAQrD,OAAO,EAAE,gBAAgB,EAAE,KAAK,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AAI3F,eAAO,MAAM,iBAAiB,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM,EAEtD,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,WAAW,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;IACxC,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF;;GAEG;AACH,qBAAa,WAAW;aAGM,OAAO,EAAE,kBAAkB;IAFvD,OAAO,CAAC,cAAc,CAAoC;gBAE9B,OAAO,GAAE,kBAAuB;IAE5D,mBAAmB;IAQnB,UAAU,CAAC,MAAM,GAAE,SAA8B;CAGlD;AAED;;GAEG;AACH,qBAAa,QAAQ;IAgBP,OAAO,CAAC,QAAQ,CAAC,WAAW;aAA+B,MAAM,EAAE,SAAS;IAfxF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkE;IAY1F,OAAO,CAAC,MAAM,CAAC,CAAoB;IACnC,OAAO,CAAC,QAAQ,CAAC,CAAoB;gBAER,WAAW,EAAE,WAAW,EAAkB,MAAM,EAAE,SAAS;IAMxF,oBAAoB;IA6Cd,IAAI;IAMJ,KAAK;IASX,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,mBAAmB;IAS/C,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,gBAAgB,GAAE,4BAAuC,GAAG,mBAAmB;IAWvG,SAAS;IAIT,QAAQ;CAGf;AAGD,qBAAa,mBAAmB;IAI5B,QAAQ,CAAC,IAAI,EAAE,QAAQ;IACvB,QAAQ,CAAC,KAAK,EAAE,SAAS;IACzB,QAAQ,CAAC,gBAAgB,EAAE,4BAA4B;IALzD,QAAQ,EAAE,gBAAgB,CAAC;gBAGhB,IAAI,EAAE,QAAQ,EACd,KAAK,EAAE,SAAS,EAChB,gBAAgB,EAAE,4BAA4B;IASnD,IAAI,CAAC,QAAQ,yBAA+B;IAW5C,KAAK;CAIZ"}
1
+ {"version":3,"file":"test-builder.d.ts","sourceRoot":"","sources":["../../../../src/testing/test-builder.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,EACL,mBAAmB,EAGnB,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAC;AAI5D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAOL,aAAa,EACd,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,gBAAgB,EAAE,KAAK,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AAI3F,eAAO,MAAM,iBAAiB,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM,EAEtD,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,WAAW,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;IACxC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,aAAa,CAAC;CAC3B,CAAC;AAEF;;GAEG;AACH,qBAAa,WAAW;aAGM,OAAO,EAAE,kBAAkB;IAFvD,OAAO,CAAC,cAAc,CAAoC;gBAE9B,OAAO,GAAE,kBAAuB;IAE5D,mBAAmB;IAQnB,UAAU,CAAC,MAAM,GAAE,SAA8B;CAGlD;AAED;;GAEG;AACH,qBAAa,QAAQ;IAiBjB,OAAO,CAAC,QAAQ,CAAC,WAAW;aACZ,MAAM,EAAE,SAAS;aACjB,SAAS,CAAC;IAlB5B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkE;IAY1F,OAAO,CAAC,MAAM,CAAC,CAAoB;IACnC,OAAO,CAAC,QAAQ,CAAC,CAAoB;gBAGlB,WAAW,EAAE,WAAW,EACzB,MAAM,EAAE,SAAS,EACjB,SAAS,CAAC,2BAAe;IAc3C,oBAAoB,CAAC,SAAS,EAAE,aAAa;IA6DvC,IAAI;IAMJ,KAAK;IASX,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,mBAAmB;IAS/C,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,gBAAgB,GAAE,4BAAuC,GAAG,mBAAmB;IAWvG,SAAS;IAIT,QAAQ;CAGf;AAGD,qBAAa,mBAAmB;IAI5B,QAAQ,CAAC,IAAI,EAAE,QAAQ;IACvB,QAAQ,CAAC,KAAK,EAAE,SAAS;IACzB,QAAQ,CAAC,gBAAgB,EAAE,4BAA4B;IALzD,QAAQ,EAAE,gBAAgB,CAAC;gBAGhB,IAAI,EAAE,QAAQ,EACd,KAAK,EAAE,SAAS,EAChB,gBAAgB,EAAE,4BAA4B;IASnD,IAAI,CAAC,QAAQ,yBAA+B;IAW5C,KAAK;CAIZ"}
@@ -0,0 +1,15 @@
1
+ export declare const RTCPeerConnection: {
2
+ new (configuration?: RTCConfiguration | undefined): RTCPeerConnection;
3
+ prototype: RTCPeerConnection;
4
+ generateCertificate(keygenAlgorithm: AlgorithmIdentifier): Promise<RTCCertificate>;
5
+ };
6
+ export declare const RTCSessionDescription: {
7
+ new (descriptionInitDict: RTCSessionDescriptionInit): RTCSessionDescription;
8
+ prototype: RTCSessionDescription;
9
+ };
10
+ export declare const RTCIceCandidate: {
11
+ new (candidateInitDict?: RTCIceCandidateInit | undefined): RTCIceCandidate;
12
+ prototype: RTCIceCandidate;
13
+ };
14
+ export declare const cleanup: () => void;
15
+ //# sourceMappingURL=index.browser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.browser.d.ts","sourceRoot":"","sources":["../../../../../src/transport/datachannel/index.browser.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,iBAAiB;;;;CAA+B,CAAC;AAC9D,eAAO,MAAM,qBAAqB;;;CAAmC,CAAC;AACtE,eAAO,MAAM,eAAe;;;CAA6B,CAAC;AAC1D,eAAO,MAAM,OAAO,QAAO,IAAU,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { IceCandidate } from './rtc-ice-candidate';
2
+ import { PeerConnection } from './rtc-peer-connection';
3
+ import { SessionDescription } from './rtc-session-description';
4
+ export { SessionDescription as RTCSessionDescription };
5
+ export { IceCandidate as RTCIceCandidate };
6
+ export { PeerConnection as RTCPeerConnection };
7
+ export declare const cleanup: () => void;
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/transport/datachannel/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAE/D,OAAO,EAAE,kBAAkB,IAAI,qBAAqB,EAAE,CAAC;AACvD,OAAO,EAAE,YAAY,IAAI,eAAe,EAAE,CAAC;AAC3C,OAAO,EAAE,cAAc,IAAI,iBAAiB,EAAE,CAAC;AAE/C,eAAO,MAAM,OAAO,QAAO,IAE1B,CAAC"}
@@ -0,0 +1,29 @@
1
+ import type node from 'node-datachannel';
2
+ export declare class DataChannel extends EventTarget implements RTCDataChannel {
3
+ #private;
4
+ binaryType: BinaryType;
5
+ readonly maxPacketLifeTime: number | null;
6
+ readonly maxRetransmits: number | null;
7
+ readonly negotiated: boolean;
8
+ readonly ordered: boolean;
9
+ onbufferedamountlow: ((this: RTCDataChannel, ev: Event) => any) | null;
10
+ onclose: ((this: RTCDataChannel, ev: Event) => any) | null;
11
+ onclosing: ((this: RTCDataChannel, ev: Event) => any) | null;
12
+ onerror: ((this: RTCDataChannel, ev: Event) => any) | null;
13
+ onmessage: ((this: RTCDataChannel, ev: MessageEvent) => any) | null;
14
+ onopen: ((this: RTCDataChannel, ev: Event) => any) | null;
15
+ constructor(dataChannel: node.DataChannel, dataChannelDict?: RTCDataChannelInit);
16
+ get id(): number;
17
+ get label(): string;
18
+ get protocol(): string;
19
+ get bufferedAmount(): number;
20
+ set bufferedAmountLowThreshold(threshold: number);
21
+ get bufferedAmountLowThreshold(): number;
22
+ get readyState(): RTCDataChannelState;
23
+ close(): void;
24
+ send(data: string): void;
25
+ send(data: Blob): void;
26
+ send(data: ArrayBuffer): void;
27
+ send(data: ArrayBufferView): void;
28
+ }
29
+ //# sourceMappingURL=rtc-data-channel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rtc-data-channel.d.ts","sourceRoot":"","sources":["../../../../../src/transport/datachannel/rtc-data-channel.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,IAAI,MAAM,kBAAkB,CAAC;AAEzC,qBAAa,WAAY,SAAQ,WAAY,YAAW,cAAc;;IACpE,UAAU,EAAE,UAAU,CAAC;IAEvB,QAAQ,CAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAE1B,mBAAmB,EAAE,CAAC,CAAC,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,KAAK,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC;IACvE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,KAAK,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC;IAC3D,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,KAAK,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC;IAC7D,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,KAAK,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC;IAC3D,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,YAAY,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC;IACpE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,KAAK,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC;gBAM9C,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,eAAe,GAAE,kBAAuB;IA0EnF,IAAI,EAAE,IAAI,MAAM,CAEf;IAED,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,IAAI,cAAc,IAAI,MAAM,CAE3B;IAED,IAAI,0BAA0B,CAAC,SAAS,EAAE,MAAM,EAG/C;IAED,IAAI,0BAA0B,IAAI,MAAM,CAEvC;IAED,IAAI,UAAU,IAAI,mBAAmB,CAEpC;IAED,KAAK,IAAI,IAAI;IAOb,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IACxB,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IACtB,IAAI,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI;IAC7B,IAAI,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI;CASlC"}
@@ -0,0 +1,9 @@
1
+ export declare class PeerConnectionIceEvent extends Event implements RTCPeerConnectionIceEvent {
2
+ readonly candidate: RTCIceCandidate | null;
3
+ constructor(candidate: RTCIceCandidate);
4
+ }
5
+ export declare class DataChannelEvent extends Event implements RTCDataChannelEvent {
6
+ readonly channel: RTCDataChannel;
7
+ constructor(channel: RTCDataChannel);
8
+ }
9
+ //# sourceMappingURL=rtc-events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rtc-events.d.ts","sourceRoot":"","sources":["../../../../../src/transport/datachannel/rtc-events.ts"],"names":[],"mappings":"AAIA,qBAAa,sBAAuB,SAAQ,KAAM,YAAW,yBAAyB;IACpF,QAAQ,CAAC,SAAS,EAAE,eAAe,GAAG,IAAI,CAAC;gBAE/B,SAAS,EAAE,eAAe;CAKvC;AAED,qBAAa,gBAAiB,SAAQ,KAAM,YAAW,mBAAmB;IACxE,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;gBAErB,OAAO,EAAE,cAAc;CAKpC"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * @see https://developer.mozilla.org/docs/Web/API/RTCIceCandidate
3
+ */
4
+ export declare class IceCandidate implements RTCIceCandidate {
5
+ readonly address: string | null;
6
+ readonly candidate: string;
7
+ readonly component: RTCIceComponent | null;
8
+ readonly foundation: string | null;
9
+ readonly port: number | null;
10
+ readonly priority: number | null;
11
+ readonly protocol: RTCIceProtocol | null;
12
+ readonly relatedAddress: string | null;
13
+ readonly relatedPort: number | null;
14
+ readonly sdpMLineIndex: number | null;
15
+ readonly sdpMid: string | null;
16
+ readonly tcpType: RTCIceTcpCandidateType | null;
17
+ readonly type: RTCIceCandidateType | null;
18
+ readonly usernameFragment: string | null;
19
+ constructor(init: RTCIceCandidateInit);
20
+ toJSON(): RTCIceCandidateInit;
21
+ }
22
+ //# sourceMappingURL=rtc-ice-candidate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rtc-ice-candidate.d.ts","sourceRoot":"","sources":["../../../../../src/transport/datachannel/rtc-ice-candidate.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,qBAAa,YAAa,YAAW,eAAe;IAClD,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,eAAe,GAAG,IAAI,CAAC;IAC3C,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI,CAAC;IACzC,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAChD,QAAQ,CAAC,IAAI,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAC1C,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;gBAE7B,IAAI,EAAE,mBAAmB;IAsBrC,MAAM,IAAI,mBAAmB;CAQ9B"}
@@ -0,0 +1,47 @@
1
+ export declare class PeerConnection extends EventTarget implements RTCPeerConnection {
2
+ #private;
3
+ static generateCertificate(keygenAlgorithm: AlgorithmIdentifier): Promise<RTCCertificate>;
4
+ canTrickleIceCandidates: boolean | null;
5
+ sctp: RTCSctpTransport | null;
6
+ onconnectionstatechange: ((this: RTCPeerConnection, ev: Event) => any) | null;
7
+ ondatachannel: ((this: RTCPeerConnection, ev: RTCDataChannelEvent) => any) | null;
8
+ onicecandidate: ((this: RTCPeerConnection, ev: RTCPeerConnectionIceEvent) => any) | null;
9
+ onicecandidateerror: ((this: RTCPeerConnection, ev: Event) => any) | null;
10
+ oniceconnectionstatechange: ((this: RTCPeerConnection, ev: Event) => any) | null;
11
+ onicegatheringstatechange: ((this: RTCPeerConnection, ev: Event) => any) | null;
12
+ onnegotiationneeded: ((this: RTCPeerConnection, ev: Event) => any) | null;
13
+ onsignalingstatechange: ((this: RTCPeerConnection, ev: Event) => any) | null;
14
+ ontrack: ((this: RTCPeerConnection, ev: RTCTrackEvent) => any) | null;
15
+ constructor(init?: RTCConfiguration);
16
+ get connectionState(): RTCPeerConnectionState;
17
+ get iceConnectionState(): RTCIceConnectionState;
18
+ get iceGatheringState(): RTCIceGatheringState;
19
+ get signalingState(): RTCSignalingState;
20
+ get currentLocalDescription(): RTCSessionDescription | null;
21
+ get localDescription(): RTCSessionDescription | null;
22
+ get pendingLocalDescription(): RTCSessionDescription | null;
23
+ get currentRemoteDescription(): RTCSessionDescription | null;
24
+ get pendingRemoteDescription(): RTCSessionDescription | null;
25
+ get remoteDescription(): RTCSessionDescription | null;
26
+ addIceCandidate(candidate?: RTCIceCandidateInit): Promise<void>;
27
+ addTrack(track: MediaStreamTrack, ...streams: MediaStream[]): RTCRtpSender;
28
+ addTransceiver(trackOrKind: MediaStreamTrack | string, init?: RTCRtpTransceiverInit): RTCRtpTransceiver;
29
+ close(): void;
30
+ createDataChannel(label: string, dataChannelDict?: RTCDataChannelInit): RTCDataChannel;
31
+ createOffer(options?: RTCOfferOptions): Promise<RTCSessionDescriptionInit>;
32
+ createOffer(successCallback: RTCSessionDescriptionCallback, failureCallback: RTCPeerConnectionErrorCallback, options?: RTCOfferOptions): Promise<void>;
33
+ createAnswer(options?: RTCAnswerOptions): Promise<RTCSessionDescriptionInit>;
34
+ createAnswer(successCallback: RTCSessionDescriptionCallback, failureCallback: RTCPeerConnectionErrorCallback): Promise<void>;
35
+ getConfiguration(): RTCConfiguration;
36
+ getReceivers(): RTCRtpReceiver[];
37
+ getSenders(): RTCRtpSender[];
38
+ getStats(selector?: MediaStreamTrack | null): Promise<RTCStatsReport>;
39
+ getTransceivers(): RTCRtpTransceiver[];
40
+ removeTrack(sender: RTCRtpSender): void;
41
+ restartIce(): void;
42
+ setConfiguration(configuration?: RTCConfiguration): void;
43
+ setLocalDescription(description?: RTCLocalSessionDescriptionInit): Promise<void>;
44
+ setRemoteDescription(description: RTCSessionDescriptionInit): Promise<void>;
45
+ }
46
+ export { PeerConnection as RTCPeerConnection };
47
+ //# sourceMappingURL=rtc-peer-connection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rtc-peer-connection.d.ts","sourceRoot":"","sources":["../../../../../src/transport/datachannel/rtc-peer-connection.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=rtc-peer-connection.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rtc-peer-connection.test.d.ts","sourceRoot":"","sources":["../../../../../src/transport/datachannel/rtc-peer-connection.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @see https://developer.mozilla.org/docs/Web/API/RTCSessionDescription
3
+ */
4
+ export declare class SessionDescription implements RTCSessionDescription {
5
+ readonly sdp: string;
6
+ readonly type: RTCSdpType;
7
+ constructor(init: RTCSessionDescriptionInit);
8
+ toJSON(): RTCSessionDescriptionInit;
9
+ }
10
+ //# sourceMappingURL=rtc-session-description.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rtc-session-description.d.ts","sourceRoot":"","sources":["../../../../../src/transport/datachannel/rtc-session-description.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,qBAAa,kBAAmB,YAAW,qBAAqB;IAC9D,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;gBAEd,IAAI,EAAE,yBAAyB;IAK3C,MAAM,IAAI,yBAAyB;CAMpC"}
@@ -1,6 +1,8 @@
1
1
  export * from './memory-transport';
2
2
  export * from './transport';
3
- export * from './webrtc-transport';
4
- export * from './webrtc-transport-service';
5
- export * from './webrtc-transport-proxy';
3
+ export * from './simplepeer-transport';
4
+ export * from './simplepeer-transport-service';
5
+ export * from './simplepeer-transport-proxy';
6
+ export * from './datachannel';
7
+ export * from './libdatachannel-transport';
6
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/transport/index.ts"],"names":[],"mappings":"AAIA,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/transport/index.ts"],"names":[],"mappings":"AAIA,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,cAAc,wBAAwB,CAAC;AACvC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,eAAe,CAAC;AAC9B,cAAc,4BAA4B,CAAC"}
@@ -0,0 +1,35 @@
1
+ /// <reference types="node" />
2
+ import { Event } from '@dxos/async';
3
+ import { ErrorStream } from '@dxos/debug';
4
+ import { Signal } from '@dxos/protocols/proto/dxos/mesh/swarm';
5
+ import { Transport, TransportFactory } from './transport';
6
+ export type LibDataChannelTransportParams = {
7
+ initiator: boolean;
8
+ stream: NodeJS.ReadWriteStream;
9
+ webrtcConfig?: RTCConfiguration;
10
+ sendSignal: (signal: Signal) => Promise<void>;
11
+ };
12
+ /**
13
+ * Transport
14
+ */
15
+ export declare class LibDataChannelTransport implements Transport {
16
+ private readonly params;
17
+ private _closed;
18
+ readonly closed: Event<void>;
19
+ private _connected;
20
+ readonly connected: Event<void>;
21
+ readonly errors: ErrorStream;
22
+ private readonly _peer;
23
+ private _channel;
24
+ private _stream;
25
+ private readonly _readyForCandidates;
26
+ private _writeCallback;
27
+ constructor(params: LibDataChannelTransportParams);
28
+ private handleChannel;
29
+ private _close;
30
+ signal(signal: Signal): void;
31
+ destroy(): Promise<void>;
32
+ private _disconnectStreams;
33
+ }
34
+ export declare const createLibDataChannelTransportFactory: (webrtcConfig?: any) => TransportFactory;
35
+ //# sourceMappingURL=libdatachannel-transport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"libdatachannel-transport.d.ts","sourceRoot":"","sources":["../../../../src/transport/libdatachannel-transport.ts"],"names":[],"mappings":";AAMA,OAAO,EAAE,KAAK,EAAyB,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAG/D,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE1D,MAAM,MAAM,6BAA6B,GAAG;IAC1C,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC,eAAe,CAAC;IAC/B,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/C,CAAC;AAQF;;GAEG;AACH,qBAAa,uBAAwB,YAAW,SAAS;IAa3C,OAAO,CAAC,QAAQ,CAAC,MAAM;IAZnC,OAAO,CAAC,OAAO,CAAS;IACxB,QAAQ,CAAC,MAAM,cAAe;IAC9B,OAAO,CAAC,UAAU,CAAS;IAC3B,QAAQ,CAAC,SAAS,cAAe;IACjC,QAAQ,CAAC,MAAM,cAAqB;IACpC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA0B;IAChD,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,OAAO,CAAU;IAEzB,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAiB;IACrD,OAAO,CAAC,cAAc,CAA6B;gBAEtB,MAAM,EAAE,6BAA6B;IA+ElE,OAAO,CAAC,aAAa;YAuDP,MAAM;IASpB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAkDtB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;YAIhB,kBAAkB;CAGjC;AAED,eAAO,MAAM,oCAAoC,kBAAmB,GAAG,KAAG,gBAMxE,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=libdatachannel-transport.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"libdatachannel-transport.test.d.ts","sourceRoot":"","sources":["../../../../src/transport/libdatachannel-transport.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=simplepeer-simple-peer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simplepeer-simple-peer.d.ts","sourceRoot":"","sources":["../../../../src/transport/simplepeer-simple-peer.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=simplepeer-transport-proxy-test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simplepeer-transport-proxy-test.d.ts","sourceRoot":"","sources":["../../../../src/transport/simplepeer-transport-proxy-test.ts"],"names":[],"mappings":""}
@@ -4,13 +4,13 @@ import { ErrorStream } from '@dxos/debug';
4
4
  import { BridgeService } from '@dxos/protocols/proto/dxos/mesh/bridge';
5
5
  import { Signal } from '@dxos/protocols/proto/dxos/mesh/swarm';
6
6
  import { Transport, TransportFactory, TransportOptions } from './transport';
7
- export type WebRTCTransportProxyParams = {
7
+ export type SimplePeerTransportProxyParams = {
8
8
  initiator: boolean;
9
9
  stream: NodeJS.ReadWriteStream;
10
10
  bridgeService: BridgeService;
11
11
  sendSignal: (signal: Signal) => Promise<void>;
12
12
  };
13
- export declare class WebRTCTransportProxy implements Transport {
13
+ export declare class SimplePeerTransportProxy implements Transport {
14
14
  private readonly _params;
15
15
  private readonly _proxyId;
16
16
  private readonly _ctx;
@@ -19,7 +19,7 @@ export declare class WebRTCTransportProxy implements Transport {
19
19
  readonly errors: ErrorStream;
20
20
  private _closed;
21
21
  private _serviceStream;
22
- constructor(_params: WebRTCTransportProxyParams);
22
+ constructor(_params: SimplePeerTransportProxyParams);
23
23
  private _handleConnection;
24
24
  private _handleData;
25
25
  private _handleSignal;
@@ -30,7 +30,7 @@ export declare class WebRTCTransportProxy implements Transport {
30
30
  */
31
31
  forceClose(): void;
32
32
  }
33
- export declare class WebRTCTransportProxyFactory implements TransportFactory {
33
+ export declare class SimplePeerTransportProxyFactory implements TransportFactory {
34
34
  private _bridgeService;
35
35
  private _connections;
36
36
  /**
@@ -40,4 +40,4 @@ export declare class WebRTCTransportProxyFactory implements TransportFactory {
40
40
  setBridgeService(bridgeService: BridgeService | undefined): this;
41
41
  createTransport(options: TransportOptions): Transport;
42
42
  }
43
- //# sourceMappingURL=webrtc-transport-proxy.d.ts.map
43
+ //# sourceMappingURL=simplepeer-transport-proxy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simplepeer-transport-proxy.d.ts","sourceRoot":"","sources":["../../../../src/transport/simplepeer-transport-proxy.ts"],"names":[],"mappings":";AAMA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGpC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAI1C,OAAO,EAAgC,aAAa,EAAE,MAAM,wCAAwC,CAAC;AACrG,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAG/D,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE5E,MAAM,MAAM,8BAA8B,GAAG;IAC3C,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC,eAAe,CAAC;IAC/B,aAAa,EAAE,aAAa,CAAC;IAE7B,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/C,CAAC;AAEF,qBAAa,wBAAyB,YAAW,SAAS;IAatD,OAAO,CAAC,QAAQ,CAAC,OAAO;IAZ1B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAsB;IAC/C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAiB;IAEtC,QAAQ,CAAC,MAAM,cAAe;IAC9B,QAAQ,CAAC,SAAS,cAAe;IACjC,QAAQ,CAAC,MAAM,cAAqB;IAEpC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,cAAc,CAAuB;gBAI1B,OAAO,EAAE,8BAA8B;YAsC5C,iBAAiB;IAiB/B,OAAO,CAAC,WAAW;YAKL,aAAa;IAI3B,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAUtB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAkB9B;;OAEG;IAEH,UAAU;CAKX;AAGD,qBAAa,+BAAgC,YAAW,gBAAgB;IACtE,OAAO,CAAC,cAAc,CAA4B;IAClD,OAAO,CAAC,YAAY,CAAuC;IAE3D;;;OAGG;IACH,gBAAgB,CAAC,aAAa,EAAE,aAAa,GAAG,SAAS,GAAG,IAAI;IAShE,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,SAAS;CAatD"}
@@ -1,6 +1,6 @@
1
1
  import { Stream } from '@dxos/codec-protobuf';
2
2
  import { BridgeService, ConnectionRequest, SignalRequest, DataRequest, BridgeEvent, CloseRequest } from '@dxos/protocols/proto/dxos/mesh/bridge';
3
- export declare class WebRTCTransportService implements BridgeService {
3
+ export declare class SimplePeerTransportService implements BridgeService {
4
4
  private readonly _webrtcConfig?;
5
5
  private readonly transports;
6
6
  constructor(_webrtcConfig?: any);
@@ -9,4 +9,4 @@ export declare class WebRTCTransportService implements BridgeService {
9
9
  sendData({ proxyId, payload }: DataRequest): Promise<void>;
10
10
  close({ proxyId }: CloseRequest): Promise<void>;
11
11
  }
12
- //# sourceMappingURL=webrtc-transport-service.d.ts.map
12
+ //# sourceMappingURL=simplepeer-transport-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simplepeer-transport-service.d.ts","sourceRoot":"","sources":["../../../../src/transport/simplepeer-transport-service.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAI9C,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,aAAa,EACb,WAAW,EACX,WAAW,EAEX,YAAY,EACb,MAAM,wCAAwC,CAAC;AAWhD,qBAAa,0BAA2B,YAAW,aAAa;IAK5D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;IAJjC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA6D;gBAIrE,aAAa,CAAC,KAAK;IAGtC,IAAI,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM,CAAC,WAAW,CAAC;IA0E/C,UAAU,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAK7D,QAAQ,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAW1D,KAAK,CAAC,EAAE,OAAO,EAAE,EAAE,YAAY;CAMtC"}
@@ -3,27 +3,27 @@ import { Event } from '@dxos/async';
3
3
  import { ErrorStream } from '@dxos/debug';
4
4
  import { Signal } from '@dxos/protocols/proto/dxos/mesh/swarm';
5
5
  import { Transport, TransportFactory } from './transport';
6
- export type WebRTCTransportParams = {
6
+ export type SimplePeerTransportParams = {
7
7
  initiator: boolean;
8
- webrtcConfig?: any;
9
8
  stream: NodeJS.ReadWriteStream;
9
+ webrtcConfig?: any;
10
10
  sendSignal: (signal: Signal) => Promise<void>;
11
11
  };
12
12
  /**
13
- * Implements WebRTC transport using simple-peer (used by WebTorrent).
13
+ * Implements Transport for WebRTC. Uses simple-peer under the hood.
14
14
  */
15
- export declare class WebRTCTransport implements Transport {
15
+ export declare class SimplePeerTransport implements Transport {
16
16
  private readonly params;
17
- private readonly _instanceId;
18
17
  private readonly _peer;
19
18
  private _closed;
20
19
  readonly closed: Event<void>;
21
20
  readonly connected: Event<void>;
22
21
  readonly errors: ErrorStream;
23
- constructor(params: WebRTCTransportParams);
22
+ private readonly _instanceId;
23
+ constructor(params: SimplePeerTransportParams);
24
24
  destroy(): Promise<void>;
25
25
  signal(signal: Signal): void;
26
26
  private _disconnectStreams;
27
27
  }
28
- export declare const createWebRTCTransportFactory: (webrtcConfig?: any) => TransportFactory;
29
- //# sourceMappingURL=webrtc-transport.d.ts.map
28
+ export declare const createSimplePeerTransportFactory: (webrtcConfig?: any) => TransportFactory;
29
+ //# sourceMappingURL=simplepeer-transport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simplepeer-transport.d.ts","sourceRoot":"","sources":["../../../../src/transport/simplepeer-transport.ts"],"names":[],"mappings":";AAOA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,WAAW,EAAS,MAAM,aAAa,CAAC;AAIjD,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAE/D,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAG1D,MAAM,MAAM,yBAAyB,GAAG;IACtC,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC,eAAe,CAAC;IAC/B,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/C,CAAC;AAEF;;GAEG;AACH,qBAAa,mBAAoB,YAAW,SAAS;IAUvC,OAAO,CAAC,QAAQ,CAAC,MAAM;IATnC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IACnC,OAAO,CAAC,OAAO,CAAS;IAExB,QAAQ,CAAC,MAAM,cAAe;IAC9B,QAAQ,CAAC,SAAS,cAAe;IACjC,QAAQ,CAAC,MAAM,cAAqB;IAEpC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA8B;gBAE7B,MAAM,EAAE,yBAAyB;IA+CxD,OAAO;IASb,MAAM,CAAC,MAAM,EAAE,MAAM;YASP,kBAAkB;CAIjC;AAED,eAAO,MAAM,gCAAgC,kBAAmB,GAAG,KAAG,gBAMpE,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=simplepeer-transport.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simplepeer-transport.test.d.ts","sourceRoot":"","sources":["../../../../src/transport/simplepeer-transport.test.ts"],"names":[],"mappings":""}
@@ -2,6 +2,12 @@
2
2
  import { Event } from '@dxos/async';
3
3
  import { ErrorStream } from '@dxos/debug';
4
4
  import { Signal } from '@dxos/protocols/proto/dxos/mesh/swarm';
5
+ export declare enum TransportKind {
6
+ SIMPLE_PEER = "SIMPLE_PEER",
7
+ LIBDATACHANNEL = "LIBDATACHANNEL",
8
+ SIMPLE_PEER_PROXY = "SIMPLE_PEER_PROXY",
9
+ MEMORY = "MEMORY"
10
+ }
5
11
  /**
6
12
  * Abstraction over a P2P connection transport. Currently either WebRTC or in-memory.
7
13
  */
@@ -1 +1 @@
1
- {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../../src/transport/transport.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAE/D;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,KAAK,CAAC;IACd,SAAS,EAAE,KAAK,CAAC;IACjB,MAAM,EAAE,WAAW,CAAC;IAEpB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B;;OAEG;IACH,SAAS,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC,eAAe,CAAC;IAE/B;;OAEG;IACH,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9C,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,SAAS,CAAC;CACvD"}
1
+ {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../../src/transport/transport.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAE/D,oBAAY,aAAa;IACvB,WAAW,gBAAgB;IAC3B,cAAc,mBAAmB;IACjC,iBAAiB,sBAAsB;IACvC,MAAM,WAAW;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,KAAK,CAAC;IACd,SAAS,EAAE,KAAK,CAAC;IACjB,MAAM,EAAE,WAAW,CAAC;IAEpB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B;;OAEG;IACH,SAAS,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC,eAAe,CAAC;IAE/B;;OAEG;IACH,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9C,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,SAAS,CAAC;CACvD"}
@@ -15,8 +15,9 @@ export type WireProtocolProvider = (params: WireProtocolParams) => WireProtocol;
15
15
  */
16
16
  export interface WireProtocol {
17
17
  stream: Duplex;
18
- initialize(): Promise<void>;
19
- destroy(): Promise<void>;
18
+ open(): Promise<void>;
19
+ close(): Promise<void>;
20
+ abort(): Promise<void>;
20
21
  }
21
22
  /**
22
23
  * Create a wire-protocol provider backed by a teleport instance.
@@ -1 +1 @@
1
- {"version":3,"file":"wire-protocol.d.ts","sourceRoot":"","sources":["../../../src/wire-protocol.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,MAAM,MAAM,kBAAkB,GAAG;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,SAAS,CAAC;IACvB,YAAY,EAAE,SAAS,CAAC;IACxB,KAAK,EAAE,SAAS,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,CAAC,MAAM,EAAE,kBAAkB,KAAK,YAAY,CAAC;AAEhF;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IAEf,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B;AAED;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,4BACf,QAAQ,KAAK,QAAQ,IAAI,CAAC,KAClD,oBAcF,CAAC"}
1
+ {"version":3,"file":"wire-protocol.d.ts","sourceRoot":"","sources":["../../../src/wire-protocol.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,MAAM,MAAM,kBAAkB,GAAG;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,SAAS,CAAC;IACvB,YAAY,EAAE,SAAS,CAAC;IACxB,KAAK,EAAE,SAAS,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,CAAC,MAAM,EAAE,kBAAkB,KAAK,YAAY,CAAC;AAEhF;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IAEf,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,4BACf,QAAQ,KAAK,QAAQ,IAAI,CAAC,KAClD,oBAiBF,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dxos/network-manager",
3
- "version": "0.1.57-main.e87098f",
3
+ "version": "0.1.57",
4
4
  "description": "Network Manager",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
@@ -9,7 +9,8 @@
9
9
  "main": "dist/lib/node/index.cjs",
10
10
  "browser": {
11
11
  "./dist/lib/node/index.cjs": "./dist/lib/browser/index.mjs",
12
- "./dist/lib/node/testing/index.cjs": "./dist/lib/browser/testing/index.mjs"
12
+ "./dist/lib/node/testing/index.cjs": "./dist/lib/browser/testing/index.mjs",
13
+ "./src/transport/datachannel/index.ts": "./src/transport/datachannel/index.browser.ts"
13
14
  },
14
15
  "types": "dist/types/src/index.d.ts",
15
16
  "files": [
@@ -22,25 +23,29 @@
22
23
  "@koush/wrtc": "^0.5.3",
23
24
  "isomorphic-ws": "^4.0.1",
24
25
  "nanomessage-rpc": "^3.0.0",
26
+ "node-datachannel": "^0.4.3",
27
+ "p-defer": "^3.0.0",
25
28
  "simple-peer": "9.11.1",
29
+ "stream": "^0.0.2",
30
+ "tiny-invariant": "^1.3.1",
26
31
  "ws": "^7.4.4",
27
32
  "xor-distance": "^2.0.0",
28
- "@dxos/async": "0.1.57-main.e87098f",
29
- "@dxos/codec-protobuf": "0.1.57-main.e87098f",
30
- "@dxos/context": "0.1.57-main.e87098f",
31
- "@dxos/credentials": "0.1.57-main.e87098f",
32
- "@dxos/crypto": "0.1.57-main.e87098f",
33
- "@dxos/debug": "0.1.57-main.e87098f",
34
- "@dxos/errors": "0.1.57-main.e87098f",
35
- "@dxos/invariant": "0.1.57-main.e87098f",
36
- "@dxos/keys": "0.1.57-main.e87098f",
37
- "@dxos/log": "0.1.57-main.e87098f",
38
- "@dxos/messaging": "0.1.57-main.e87098f",
39
- "@dxos/node-std": "0.1.57-main.e87098f",
40
- "@dxos/protocols": "0.1.57-main.e87098f",
41
- "@dxos/rpc": "0.1.57-main.e87098f",
42
- "@dxos/teleport": "0.1.57-main.e87098f",
43
- "@dxos/util": "0.1.57-main.e87098f"
33
+ "@dxos/async": "0.1.57",
34
+ "@dxos/codec-protobuf": "0.1.57",
35
+ "@dxos/context": "0.1.57",
36
+ "@dxos/credentials": "0.1.57",
37
+ "@dxos/crypto": "0.1.57",
38
+ "@dxos/errors": "0.1.57",
39
+ "@dxos/invariant": "0.1.57",
40
+ "@dxos/keys": "0.1.57",
41
+ "@dxos/log": "0.1.57",
42
+ "@dxos/messaging": "0.1.57",
43
+ "@dxos/node-std": "0.1.57",
44
+ "@dxos/protocols": "0.1.57",
45
+ "@dxos/rpc": "0.1.57",
46
+ "@dxos/teleport": "0.1.57",
47
+ "@dxos/util": "0.1.57",
48
+ "@dxos/debug": "0.1.57"
44
49
  },
45
50
  "devDependencies": {
46
51
  "@swc-node/register": "1.5.4",
@@ -49,8 +54,8 @@
49
54
  "@types/ws": "^7.4.0",
50
55
  "earljs": "~0.1.10",
51
56
  "fast-check": "~3.3.0",
52
- "typescript": "^5.0.4",
53
- "@dxos/signal": "0.1.57-main.e87098f"
57
+ "typescript": "^5.2.2",
58
+ "@dxos/signal": "0.1.57"
54
59
  },
55
60
  "publishConfig": {
56
61
  "access": "public"
@@ -50,7 +50,7 @@ export class ConnectionLog {
50
50
 
51
51
  swarm.connectionAdded.on((connection) => {
52
52
  const connectionInfo: ConnectionInfo = {
53
- state: ConnectionState.INITIAL,
53
+ state: ConnectionState.CREATED,
54
54
  closeReason: connection.closeReason,
55
55
  remotePeerId: connection.remoteId,
56
56
  sessionId: connection.sessionId,