@dxos/messaging 0.6.5 → 0.6.6-main.e1a6e1f
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.
- package/dist/lib/browser/index.mjs +52 -48
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/node/index.cjs +52 -48
- package/dist/lib/node/index.cjs.map +3 -3
- package/dist/lib/node/meta.json +1 -1
- package/dist/types/src/signal-client/signal-client.d.ts +6 -9
- package/dist/types/src/signal-client/signal-client.d.ts.map +1 -1
- package/dist/types/src/signal-manager/edge-signal-manager.d.ts +39 -0
- package/dist/types/src/signal-manager/edge-signal-manager.d.ts.map +1 -0
- package/dist/types/src/signal-manager/edge-signal-manager.test.d.ts +2 -0
- package/dist/types/src/signal-manager/edge-signal-manager.test.d.ts.map +1 -0
- package/dist/types/src/signal-manager/signal-manager.d.ts +1 -8
- package/dist/types/src/signal-manager/signal-manager.d.ts.map +1 -1
- package/dist/types/src/signal-manager/websocket-signal-manager.d.ts.map +1 -1
- package/dist/types/src/signal-methods.d.ts +13 -1
- package/dist/types/src/signal-methods.d.ts.map +1 -1
- package/dist/types/src/testing.d.ts +10 -1
- package/dist/types/src/testing.d.ts.map +1 -1
- package/package.json +14 -13
- package/src/signal-client/signal-client.test.ts +13 -14
- package/src/signal-client/signal-client.ts +10 -7
- package/src/signal-manager/edge-signal-manager.test.ts +71 -0
- package/src/signal-manager/edge-signal-manager.ts +127 -0
- package/src/signal-manager/signal-manager.ts +1 -5
- package/src/signal-manager/websocket-signal-manager.test.ts +1 -15
- package/src/signal-manager/websocket-signal-manager.ts +3 -6
- package/src/signal-methods.ts +12 -1
- package/src/testing.ts +22 -1
|
@@ -941,7 +941,7 @@ var SignalClient = class extends Resource {
|
|
|
941
941
|
* @param onSwarmEvent called when a new swarm event is received.
|
|
942
942
|
* @param _getMetadata signal-message metadata provider, called for every message.
|
|
943
943
|
*/
|
|
944
|
-
constructor(_host,
|
|
944
|
+
constructor(_host, _getMetadata) {
|
|
945
945
|
super();
|
|
946
946
|
this._host = _host;
|
|
947
947
|
this._getMetadata = _getMetadata;
|
|
@@ -952,20 +952,22 @@ var SignalClient = class extends Resource {
|
|
|
952
952
|
this._reconnectAfter = DEFAULT_RECONNECT_TIMEOUT;
|
|
953
953
|
this._instanceId = PublicKey4.random().toHex();
|
|
954
954
|
this.statusChanged = new Event2();
|
|
955
|
+
this.onMessage = new Event2();
|
|
956
|
+
this.swarmEvent = new Event2();
|
|
955
957
|
if (!this._host.startsWith("wss://") && !this._host.startsWith("ws://")) {
|
|
956
958
|
throw new Error(`Signal server requires a websocket URL. Provided: ${this._host}`);
|
|
957
959
|
}
|
|
958
|
-
this.localState = new SignalLocalState((message) => {
|
|
960
|
+
this.localState = new SignalLocalState(async (message) => {
|
|
959
961
|
this._monitor.recordMessageReceived(message);
|
|
960
|
-
|
|
961
|
-
},
|
|
962
|
+
this.onMessage.emit(message);
|
|
963
|
+
}, async (event) => this.swarmEvent.emit(event));
|
|
962
964
|
}
|
|
963
965
|
async _open() {
|
|
964
966
|
log4.trace("dxos.mesh.signal-client.open", trace6.begin({
|
|
965
967
|
id: this._instanceId
|
|
966
968
|
}), {
|
|
967
969
|
F: __dxlog_file4,
|
|
968
|
-
L:
|
|
970
|
+
L: 86,
|
|
969
971
|
S: this,
|
|
970
972
|
C: (f, a) => f(...a)
|
|
971
973
|
});
|
|
@@ -983,7 +985,7 @@ var SignalClient = class extends Resource {
|
|
|
983
985
|
}));
|
|
984
986
|
invariant3(this._state === SignalState.CONNECTED, "Not connected to Signal Server", {
|
|
985
987
|
F: __dxlog_file4,
|
|
986
|
-
L:
|
|
988
|
+
L: 96,
|
|
987
989
|
S: this,
|
|
988
990
|
A: [
|
|
989
991
|
"this._state === SignalState.CONNECTED",
|
|
@@ -1026,7 +1028,7 @@ var SignalClient = class extends Resource {
|
|
|
1026
1028
|
id: this._instanceId
|
|
1027
1029
|
}), {
|
|
1028
1030
|
F: __dxlog_file4,
|
|
1029
|
-
L:
|
|
1031
|
+
L: 129,
|
|
1030
1032
|
S: this,
|
|
1031
1033
|
C: (f, a) => f(...a)
|
|
1032
1034
|
});
|
|
@@ -1038,7 +1040,7 @@ var SignalClient = class extends Resource {
|
|
|
1038
1040
|
if (this._state === SignalState.CONNECTED && !this._lastReconciliationFailed) {
|
|
1039
1041
|
log4.warn("SignalClient error:", err, {
|
|
1040
1042
|
F: __dxlog_file4,
|
|
1041
|
-
L:
|
|
1043
|
+
L: 138,
|
|
1042
1044
|
S: this,
|
|
1043
1045
|
C: (f, a) => f(...a)
|
|
1044
1046
|
});
|
|
@@ -1048,7 +1050,7 @@ var SignalClient = class extends Resource {
|
|
|
1048
1050
|
async _close() {
|
|
1049
1051
|
log4("closing...", void 0, {
|
|
1050
1052
|
F: __dxlog_file4,
|
|
1051
|
-
L:
|
|
1053
|
+
L: 144,
|
|
1052
1054
|
S: this,
|
|
1053
1055
|
C: (f, a) => f(...a)
|
|
1054
1056
|
});
|
|
@@ -1061,7 +1063,7 @@ var SignalClient = class extends Resource {
|
|
|
1061
1063
|
await this._safeResetClient();
|
|
1062
1064
|
log4("closed", void 0, {
|
|
1063
1065
|
F: __dxlog_file4,
|
|
1064
|
-
L:
|
|
1066
|
+
L: 152,
|
|
1065
1067
|
S: this,
|
|
1066
1068
|
C: (f, a) => f(...a)
|
|
1067
1069
|
});
|
|
@@ -1081,7 +1083,7 @@ var SignalClient = class extends Resource {
|
|
|
1081
1083
|
peerId: args.peerId
|
|
1082
1084
|
}, {
|
|
1083
1085
|
F: __dxlog_file4,
|
|
1084
|
-
L:
|
|
1086
|
+
L: 166,
|
|
1085
1087
|
S: this,
|
|
1086
1088
|
C: (f, a) => f(...a)
|
|
1087
1089
|
});
|
|
@@ -1095,7 +1097,7 @@ var SignalClient = class extends Resource {
|
|
|
1095
1097
|
peerId: args.peerId
|
|
1096
1098
|
}, {
|
|
1097
1099
|
F: __dxlog_file4,
|
|
1098
|
-
L:
|
|
1100
|
+
L: 173,
|
|
1099
1101
|
S: this,
|
|
1100
1102
|
C: (f, a) => f(...a)
|
|
1101
1103
|
});
|
|
@@ -1107,7 +1109,7 @@ var SignalClient = class extends Resource {
|
|
|
1107
1109
|
await this._clientReady.wait();
|
|
1108
1110
|
invariant3(this._state === SignalState.CONNECTED, "Not connected to Signal Server", {
|
|
1109
1111
|
F: __dxlog_file4,
|
|
1110
|
-
L:
|
|
1112
|
+
L: 181,
|
|
1111
1113
|
S: this,
|
|
1112
1114
|
A: [
|
|
1113
1115
|
"this._state === SignalState.CONNECTED",
|
|
@@ -1122,7 +1124,7 @@ var SignalClient = class extends Resource {
|
|
|
1122
1124
|
peerId
|
|
1123
1125
|
}, {
|
|
1124
1126
|
F: __dxlog_file4,
|
|
1125
|
-
L:
|
|
1127
|
+
L: 187,
|
|
1126
1128
|
S: this,
|
|
1127
1129
|
C: (f, a) => f(...a)
|
|
1128
1130
|
});
|
|
@@ -1134,7 +1136,7 @@ var SignalClient = class extends Resource {
|
|
|
1134
1136
|
peerId
|
|
1135
1137
|
}, {
|
|
1136
1138
|
F: __dxlog_file4,
|
|
1137
|
-
L:
|
|
1139
|
+
L: 193,
|
|
1138
1140
|
S: this,
|
|
1139
1141
|
C: (f, a) => f(...a)
|
|
1140
1142
|
});
|
|
@@ -1149,13 +1151,13 @@ var SignalClient = class extends Resource {
|
|
|
1149
1151
|
state: this._state
|
|
1150
1152
|
}, {
|
|
1151
1153
|
F: __dxlog_file4,
|
|
1152
|
-
L:
|
|
1154
|
+
L: 202,
|
|
1153
1155
|
S: this,
|
|
1154
1156
|
C: (f, a) => f(...a)
|
|
1155
1157
|
});
|
|
1156
1158
|
invariant3(!this._client, "Client already created", {
|
|
1157
1159
|
F: __dxlog_file4,
|
|
1158
|
-
L:
|
|
1160
|
+
L: 203,
|
|
1159
1161
|
S: this,
|
|
1160
1162
|
A: [
|
|
1161
1163
|
"!this._client",
|
|
@@ -1167,7 +1169,7 @@ var SignalClient = class extends Resource {
|
|
|
1167
1169
|
this._connectionCtx.onDispose(async () => {
|
|
1168
1170
|
log4("connection context disposed", void 0, {
|
|
1169
1171
|
F: __dxlog_file4,
|
|
1170
|
-
L:
|
|
1172
|
+
L: 210,
|
|
1171
1173
|
S: this,
|
|
1172
1174
|
C: (f, a) => f(...a)
|
|
1173
1175
|
});
|
|
@@ -1182,7 +1184,7 @@ var SignalClient = class extends Resource {
|
|
|
1182
1184
|
if (client === this._client) {
|
|
1183
1185
|
log4("socket connected", void 0, {
|
|
1184
1186
|
F: __dxlog_file4,
|
|
1185
|
-
L:
|
|
1187
|
+
L: 221,
|
|
1186
1188
|
S: this,
|
|
1187
1189
|
C: (f, a) => f(...a)
|
|
1188
1190
|
});
|
|
@@ -1197,7 +1199,7 @@ var SignalClient = class extends Resource {
|
|
|
1197
1199
|
state: this._state
|
|
1198
1200
|
}, {
|
|
1199
1201
|
F: __dxlog_file4,
|
|
1200
|
-
L:
|
|
1202
|
+
L: 230,
|
|
1201
1203
|
S: this,
|
|
1202
1204
|
C: (f, a) => f(...a)
|
|
1203
1205
|
});
|
|
@@ -1214,7 +1216,7 @@ var SignalClient = class extends Resource {
|
|
|
1214
1216
|
state: this._state
|
|
1215
1217
|
}, {
|
|
1216
1218
|
F: __dxlog_file4,
|
|
1217
|
-
L:
|
|
1219
|
+
L: 242,
|
|
1218
1220
|
S: this,
|
|
1219
1221
|
C: (f, a) => f(...a)
|
|
1220
1222
|
});
|
|
@@ -1239,14 +1241,14 @@ var SignalClient = class extends Resource {
|
|
|
1239
1241
|
state: this._state
|
|
1240
1242
|
}, {
|
|
1241
1243
|
F: __dxlog_file4,
|
|
1242
|
-
L:
|
|
1244
|
+
L: 257,
|
|
1243
1245
|
S: this,
|
|
1244
1246
|
C: (f, a) => f(...a)
|
|
1245
1247
|
});
|
|
1246
1248
|
if (this._state === SignalState.RECONNECTING) {
|
|
1247
1249
|
log4.info("Signal api already reconnecting.", void 0, {
|
|
1248
1250
|
F: __dxlog_file4,
|
|
1249
|
-
L:
|
|
1251
|
+
L: 260,
|
|
1250
1252
|
S: this,
|
|
1251
1253
|
C: (f, a) => f(...a)
|
|
1252
1254
|
});
|
|
@@ -1288,7 +1290,7 @@ var SignalClient = class extends Resource {
|
|
|
1288
1290
|
status: this.getStatus()
|
|
1289
1291
|
}, {
|
|
1290
1292
|
F: __dxlog_file4,
|
|
1291
|
-
L:
|
|
1293
|
+
L: 301,
|
|
1292
1294
|
S: this,
|
|
1293
1295
|
C: (f, a) => f(...a)
|
|
1294
1296
|
});
|
|
@@ -1641,7 +1643,9 @@ var WebsocketSignalManager = class {
|
|
|
1641
1643
|
if (this._servers.has(host.server)) {
|
|
1642
1644
|
continue;
|
|
1643
1645
|
}
|
|
1644
|
-
const server = new SignalClient(host.server,
|
|
1646
|
+
const server = new SignalClient(host.server, this._getMetadata);
|
|
1647
|
+
server.swarmEvent.on((data) => this.swarmEvent.emit(data));
|
|
1648
|
+
server.onMessage.on((data) => this.onMessage.emit(data));
|
|
1645
1649
|
server.statusChanged.on(() => this.statusChanged.emit(this.getStatus()));
|
|
1646
1650
|
this._servers.set(host.server, server);
|
|
1647
1651
|
this.failureCount.set(host.server, 0);
|
|
@@ -1656,7 +1660,7 @@ var WebsocketSignalManager = class {
|
|
|
1656
1660
|
hosts: this._hosts
|
|
1657
1661
|
}, {
|
|
1658
1662
|
F: __dxlog_file6,
|
|
1659
|
-
L:
|
|
1663
|
+
L: 82,
|
|
1660
1664
|
S: this,
|
|
1661
1665
|
C: (f, a) => f(...a)
|
|
1662
1666
|
});
|
|
@@ -1664,7 +1668,7 @@ var WebsocketSignalManager = class {
|
|
|
1664
1668
|
id: this._instanceId
|
|
1665
1669
|
}), {
|
|
1666
1670
|
F: __dxlog_file6,
|
|
1667
|
-
L:
|
|
1671
|
+
L: 83,
|
|
1668
1672
|
S: this,
|
|
1669
1673
|
C: (f, a) => f(...a)
|
|
1670
1674
|
});
|
|
@@ -1675,7 +1679,7 @@ var WebsocketSignalManager = class {
|
|
|
1675
1679
|
id: this._instanceId
|
|
1676
1680
|
}), {
|
|
1677
1681
|
F: __dxlog_file6,
|
|
1678
|
-
L:
|
|
1682
|
+
L: 90,
|
|
1679
1683
|
S: this,
|
|
1680
1684
|
C: (f, a) => f(...a)
|
|
1681
1685
|
});
|
|
@@ -1693,13 +1697,13 @@ var WebsocketSignalManager = class {
|
|
|
1693
1697
|
serverName
|
|
1694
1698
|
}, {
|
|
1695
1699
|
F: __dxlog_file6,
|
|
1696
|
-
L:
|
|
1700
|
+
L: 104,
|
|
1697
1701
|
S: this,
|
|
1698
1702
|
C: (f, a) => f(...a)
|
|
1699
1703
|
});
|
|
1700
1704
|
invariant5(this._opened, "server already closed", {
|
|
1701
1705
|
F: __dxlog_file6,
|
|
1702
|
-
L:
|
|
1706
|
+
L: 105,
|
|
1703
1707
|
S: this,
|
|
1704
1708
|
A: [
|
|
1705
1709
|
"this._opened",
|
|
@@ -1709,7 +1713,7 @@ var WebsocketSignalManager = class {
|
|
|
1709
1713
|
const server = this._servers.get(serverName);
|
|
1710
1714
|
invariant5(server, "server not found", {
|
|
1711
1715
|
F: __dxlog_file6,
|
|
1712
|
-
L:
|
|
1716
|
+
L: 108,
|
|
1713
1717
|
S: this,
|
|
1714
1718
|
A: [
|
|
1715
1719
|
"server",
|
|
@@ -1729,13 +1733,13 @@ var WebsocketSignalManager = class {
|
|
|
1729
1733
|
peerId
|
|
1730
1734
|
}, {
|
|
1731
1735
|
F: __dxlog_file6,
|
|
1732
|
-
L:
|
|
1736
|
+
L: 121,
|
|
1733
1737
|
S: this,
|
|
1734
1738
|
C: (f, a) => f(...a)
|
|
1735
1739
|
});
|
|
1736
1740
|
invariant5(this._opened, "Closed", {
|
|
1737
1741
|
F: __dxlog_file6,
|
|
1738
|
-
L:
|
|
1742
|
+
L: 122,
|
|
1739
1743
|
S: this,
|
|
1740
1744
|
A: [
|
|
1741
1745
|
"this._opened",
|
|
@@ -1753,13 +1757,13 @@ var WebsocketSignalManager = class {
|
|
|
1753
1757
|
peerId
|
|
1754
1758
|
}, {
|
|
1755
1759
|
F: __dxlog_file6,
|
|
1756
|
-
L:
|
|
1760
|
+
L: 128,
|
|
1757
1761
|
S: this,
|
|
1758
1762
|
C: (f, a) => f(...a)
|
|
1759
1763
|
});
|
|
1760
1764
|
invariant5(this._opened, "Closed", {
|
|
1761
1765
|
F: __dxlog_file6,
|
|
1762
|
-
L:
|
|
1766
|
+
L: 129,
|
|
1763
1767
|
S: this,
|
|
1764
1768
|
A: [
|
|
1765
1769
|
"this._opened",
|
|
@@ -1776,13 +1780,13 @@ var WebsocketSignalManager = class {
|
|
|
1776
1780
|
recipient
|
|
1777
1781
|
}, {
|
|
1778
1782
|
F: __dxlog_file6,
|
|
1779
|
-
L:
|
|
1783
|
+
L: 142,
|
|
1780
1784
|
S: this,
|
|
1781
1785
|
C: (f, a) => f(...a)
|
|
1782
1786
|
});
|
|
1783
1787
|
invariant5(this._opened, "Closed", {
|
|
1784
1788
|
F: __dxlog_file6,
|
|
1785
|
-
L:
|
|
1789
|
+
L: 143,
|
|
1786
1790
|
S: this,
|
|
1787
1791
|
A: [
|
|
1788
1792
|
"this._opened",
|
|
@@ -1800,7 +1804,7 @@ var WebsocketSignalManager = class {
|
|
|
1800
1804
|
err
|
|
1801
1805
|
}, {
|
|
1802
1806
|
F: __dxlog_file6,
|
|
1803
|
-
L:
|
|
1807
|
+
L: 151,
|
|
1804
1808
|
S: this,
|
|
1805
1809
|
C: (f, a) => f(...a)
|
|
1806
1810
|
});
|
|
@@ -1810,7 +1814,7 @@ var WebsocketSignalManager = class {
|
|
|
1810
1814
|
err
|
|
1811
1815
|
}, {
|
|
1812
1816
|
F: __dxlog_file6,
|
|
1813
|
-
L:
|
|
1817
|
+
L: 154,
|
|
1814
1818
|
S: this,
|
|
1815
1819
|
C: (f, a) => f(...a)
|
|
1816
1820
|
});
|
|
@@ -1820,7 +1824,7 @@ var WebsocketSignalManager = class {
|
|
|
1820
1824
|
err
|
|
1821
1825
|
}, {
|
|
1822
1826
|
F: __dxlog_file6,
|
|
1823
|
-
L:
|
|
1827
|
+
L: 157,
|
|
1824
1828
|
S: this,
|
|
1825
1829
|
C: (f, a) => f(...a)
|
|
1826
1830
|
});
|
|
@@ -1843,7 +1847,7 @@ var WebsocketSignalManager = class {
|
|
|
1843
1847
|
failureCount
|
|
1844
1848
|
}, {
|
|
1845
1849
|
F: __dxlog_file6,
|
|
1846
|
-
L:
|
|
1850
|
+
L: 171,
|
|
1847
1851
|
S: this,
|
|
1848
1852
|
C: (f, a) => f(...a)
|
|
1849
1853
|
});
|
|
@@ -1861,7 +1865,7 @@ var WebsocketSignalManager = class {
|
|
|
1861
1865
|
serverName
|
|
1862
1866
|
}, {
|
|
1863
1867
|
F: __dxlog_file6,
|
|
1864
|
-
L:
|
|
1868
|
+
L: 184,
|
|
1865
1869
|
S: this,
|
|
1866
1870
|
C: (f, a) => f(...a)
|
|
1867
1871
|
});
|
|
@@ -1874,13 +1878,13 @@ var WebsocketSignalManager = class {
|
|
|
1874
1878
|
peerId
|
|
1875
1879
|
}, {
|
|
1876
1880
|
F: __dxlog_file6,
|
|
1877
|
-
L:
|
|
1881
|
+
L: 191,
|
|
1878
1882
|
S: this,
|
|
1879
1883
|
C: (f, a) => f(...a)
|
|
1880
1884
|
});
|
|
1881
1885
|
invariant5(this._opened, "Closed", {
|
|
1882
1886
|
F: __dxlog_file6,
|
|
1883
|
-
L:
|
|
1887
|
+
L: 192,
|
|
1884
1888
|
S: this,
|
|
1885
1889
|
A: [
|
|
1886
1890
|
"this._opened",
|
|
@@ -1894,13 +1898,13 @@ var WebsocketSignalManager = class {
|
|
|
1894
1898
|
peerId
|
|
1895
1899
|
}, {
|
|
1896
1900
|
F: __dxlog_file6,
|
|
1897
|
-
L:
|
|
1901
|
+
L: 198,
|
|
1898
1902
|
S: this,
|
|
1899
1903
|
C: (f, a) => f(...a)
|
|
1900
1904
|
});
|
|
1901
1905
|
invariant5(this._opened, "Closed", {
|
|
1902
1906
|
F: __dxlog_file6,
|
|
1903
|
-
L:
|
|
1907
|
+
L: 199,
|
|
1904
1908
|
S: this,
|
|
1905
1909
|
A: [
|
|
1906
1910
|
"this._opened",
|
|
@@ -1913,13 +1917,13 @@ var WebsocketSignalManager = class {
|
|
|
1913
1917
|
this._ctx = new Context4({
|
|
1914
1918
|
onError: (err) => log6.catch(err, void 0, {
|
|
1915
1919
|
F: __dxlog_file6,
|
|
1916
|
-
L:
|
|
1920
|
+
L: 206,
|
|
1917
1921
|
S: this,
|
|
1918
1922
|
C: (f, a) => f(...a)
|
|
1919
1923
|
})
|
|
1920
1924
|
}, {
|
|
1921
1925
|
F: __dxlog_file6,
|
|
1922
|
-
L:
|
|
1926
|
+
L: 205
|
|
1923
1927
|
});
|
|
1924
1928
|
}
|
|
1925
1929
|
async _forEachServer(fn) {
|