@leofcoin/peernet 0.11.23 → 0.11.26
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/browser/peernet.js +12339 -5515
- package/dist/commonjs/dht-response.js +2 -9
- package/dist/commonjs/dht.js +2 -9
- package/dist/commonjs/{http-547d8100.js → http-997ec597.js} +1 -1
- package/dist/commonjs/peernet-message.js +2 -9
- package/dist/commonjs/peernet.js +32 -23
- package/dist/commonjs/request.js +2 -9
- package/dist/commonjs/response.js +2 -9
- package/dist/module/peernet.js +22 -545
- package/package.json +3 -2
- package/rollup.config.js +2 -2
- package/src/handlers/message.js +1 -1
- package/src/messages/chat-message.js +2 -2
- package/src/messages/data-response.js +2 -2
- package/src/messages/data.js +2 -2
- package/src/messages/dht-response.js +2 -2
- package/src/messages/dht.js +2 -2
- package/src/messages/peer-response.js +2 -2
- package/src/messages/peer.js +2 -2
- package/src/messages/peernet-message.js +2 -2
- package/src/messages/ps.js +2 -2
- package/src/messages/request.js +2 -2
- package/src/messages/response.js +2 -2
- package/src/peernet.js +1 -2
- package/src/utils/utils.js +2 -1
- package/dist/commonjs/codec-45796010.js +0 -215
- package/dist/commonjs/codec-format-interface.js +0 -206
- package/dist/commonjs/codec.js +0 -11
- package/dist/commonjs/hash.js +0 -164
- package/src/codec/codec-format-interface.js +0 -194
- package/src/codec/codec.js +0 -124
- package/src/codec/codecs.js +0 -79
- package/src/hash/hash.js +0 -152
|
@@ -1,14 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var protons = require('protons');
|
|
4
|
-
var codecFormatInterface = require('
|
|
5
|
-
require('@vandeurenglenn/base32');
|
|
6
|
-
require('@vandeurenglenn/base58');
|
|
7
|
-
require('@vandeurenglenn/is-hex');
|
|
8
|
-
require('./codec-45796010.js');
|
|
9
|
-
require('varint');
|
|
10
|
-
require('./hash.js');
|
|
11
|
-
require('keccak');
|
|
4
|
+
var codecFormatInterface = require('@leofcoin/codec-format-interface');
|
|
12
5
|
|
|
13
6
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
14
7
|
|
|
@@ -22,7 +15,7 @@ message PeernetDHTMessageResponse {
|
|
|
22
15
|
}
|
|
23
16
|
`;
|
|
24
17
|
|
|
25
|
-
class DHTMessageResponse extends codecFormatInterface {
|
|
18
|
+
class DHTMessageResponse extends codecFormatInterface.FormatInterface {
|
|
26
19
|
get keys() {
|
|
27
20
|
return ['hash', 'has']
|
|
28
21
|
}
|
package/dist/commonjs/dht.js
CHANGED
|
@@ -1,14 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var protons = require('protons');
|
|
4
|
-
var codecFormatInterface = require('
|
|
5
|
-
require('@vandeurenglenn/base32');
|
|
6
|
-
require('@vandeurenglenn/base58');
|
|
7
|
-
require('@vandeurenglenn/is-hex');
|
|
8
|
-
require('./codec-45796010.js');
|
|
9
|
-
require('varint');
|
|
10
|
-
require('./hash.js');
|
|
11
|
-
require('keccak');
|
|
4
|
+
var codecFormatInterface = require('@leofcoin/codec-format-interface');
|
|
12
5
|
|
|
13
6
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
14
7
|
|
|
@@ -30,7 +23,7 @@ message PeernetDHTMessage {
|
|
|
30
23
|
message = new DHTMessage('hashmvbs124xcfd...', 'block')
|
|
31
24
|
`
|
|
32
25
|
*/
|
|
33
|
-
class DHTMessage extends codecFormatInterface {
|
|
26
|
+
class DHTMessage extends codecFormatInterface.FormatInterface {
|
|
34
27
|
/**
|
|
35
28
|
*
|
|
36
29
|
*/
|
|
@@ -10,7 +10,7 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
|
|
|
10
10
|
var PubSub__default = /*#__PURE__*/_interopDefaultLegacy(PubSub);
|
|
11
11
|
var Koa__default = /*#__PURE__*/_interopDefaultLegacy(Koa);
|
|
12
12
|
|
|
13
|
-
var version = "0.11.
|
|
13
|
+
var version = "0.11.25";
|
|
14
14
|
|
|
15
15
|
var api$1 = {
|
|
16
16
|
version: ({send}) => send({client: '@peernet/api/http', version}),
|
|
@@ -1,14 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var protons = require('protons');
|
|
4
|
-
var codecFormatInterface = require('
|
|
5
|
-
require('@vandeurenglenn/base32');
|
|
6
|
-
require('@vandeurenglenn/base58');
|
|
7
|
-
require('@vandeurenglenn/is-hex');
|
|
8
|
-
require('./codec-45796010.js');
|
|
9
|
-
require('varint');
|
|
10
|
-
require('./hash.js');
|
|
11
|
-
require('keccak');
|
|
4
|
+
var codecFormatInterface = require('@leofcoin/codec-format-interface');
|
|
12
5
|
|
|
13
6
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
14
7
|
|
|
@@ -24,7 +17,7 @@ message PeernetMessage {
|
|
|
24
17
|
optional string id = 5;
|
|
25
18
|
}`;
|
|
26
19
|
|
|
27
|
-
class PeernetMessage extends codecFormatInterface {
|
|
20
|
+
class PeernetMessage extends codecFormatInterface.FormatInterface {
|
|
28
21
|
get keys() {
|
|
29
22
|
return ['data', 'signature', 'from', 'to', 'id']
|
|
30
23
|
}
|
package/dist/commonjs/peernet.js
CHANGED
|
@@ -1,17 +1,16 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
require('@vandeurenglenn/debug');
|
|
4
|
+
var pako = require('pako');
|
|
4
5
|
var LeofcoinStorage = require('@leofcoin/storage');
|
|
5
6
|
var peernetMessage = require('./peernet-message.js');
|
|
6
7
|
var dht = require('./dht.js');
|
|
7
8
|
var dhtResponse = require('./dht-response.js');
|
|
8
9
|
var protons = require('protons');
|
|
9
|
-
var codecFormatInterface = require('
|
|
10
|
+
var codecFormatInterface = require('@leofcoin/codec-format-interface');
|
|
10
11
|
var request = require('./request.js');
|
|
11
12
|
var response = require('./response.js');
|
|
12
13
|
var fetch = require('node-fetch');
|
|
13
|
-
var codec = require('./codec-45796010.js');
|
|
14
|
-
var hash = require('./hash.js');
|
|
15
14
|
var MultiWallet$1 = require('@leofcoin/multi-wallet');
|
|
16
15
|
var bs58check = require('bs58check');
|
|
17
16
|
var bip32 = require('bip32');
|
|
@@ -21,9 +20,6 @@ var Mnemonic = require('@leofcoin/mnemonic');
|
|
|
21
20
|
var MultiSignature = require('multi-signature');
|
|
22
21
|
var varint = require('varint');
|
|
23
22
|
var randombytes = require('randombytes');
|
|
24
|
-
require('@vandeurenglenn/base32');
|
|
25
|
-
require('@vandeurenglenn/base58');
|
|
26
|
-
require('@vandeurenglenn/is-hex');
|
|
27
23
|
|
|
28
24
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
29
25
|
|
|
@@ -45,6 +41,7 @@ function _interopNamespace(e) {
|
|
|
45
41
|
return Object.freeze(n);
|
|
46
42
|
}
|
|
47
43
|
|
|
44
|
+
var pako__default = /*#__PURE__*/_interopDefaultLegacy(pako);
|
|
48
45
|
var LeofcoinStorage__default = /*#__PURE__*/_interopDefaultLegacy(LeofcoinStorage);
|
|
49
46
|
var protons__default = /*#__PURE__*/_interopDefaultLegacy(protons);
|
|
50
47
|
var fetch__default = /*#__PURE__*/_interopDefaultLegacy(fetch);
|
|
@@ -360,6 +357,7 @@ class Peer {
|
|
|
360
357
|
|
|
361
358
|
splitMessage(message) {
|
|
362
359
|
const chunks = [];
|
|
360
|
+
message = pako__default["default"].deflate(message);
|
|
363
361
|
const size = message.byteLength || message.length;
|
|
364
362
|
let offset = 0;
|
|
365
363
|
return new Promise((resolve, reject) => {
|
|
@@ -449,10 +447,20 @@ class Peer {
|
|
|
449
447
|
async #init() {
|
|
450
448
|
try {
|
|
451
449
|
const iceServers = [{
|
|
452
|
-
|
|
450
|
+
urls: 'stun:stun.l.google.com:19302' // Google's public STUN server
|
|
451
|
+
}, {
|
|
452
|
+
urls: "stun:openrelay.metered.ca:80",
|
|
453
|
+
}, {
|
|
454
|
+
urls: "turn:openrelay.metered.ca:443",
|
|
455
|
+
username: "openrelayproject",
|
|
456
|
+
credential: "openrelayproject",
|
|
457
|
+
}, {
|
|
458
|
+
urls: "turn:openrelay.metered.ca:443?transport=tcp",
|
|
459
|
+
username: "openrelayproject",
|
|
460
|
+
credential: "openrelayproject",
|
|
453
461
|
}];
|
|
454
462
|
|
|
455
|
-
this.#connection = new wrtc.RTCPeerConnection();
|
|
463
|
+
this.#connection = new wrtc.RTCPeerConnection({iceServers});
|
|
456
464
|
|
|
457
465
|
this.#connection.onicecandidate = ({ candidate }) => {
|
|
458
466
|
if (candidate) {
|
|
@@ -518,8 +526,9 @@ class Peer {
|
|
|
518
526
|
}
|
|
519
527
|
|
|
520
528
|
if (message.size === this.#chunksQue[id].length) {
|
|
521
|
-
|
|
529
|
+
let data = new Uint8Array(Object.values(this.#chunksQue[id]));
|
|
522
530
|
delete this.#chunksQue[id];
|
|
531
|
+
data = pako__default["default"].inflate(data);
|
|
523
532
|
pubsub.publish('peer:data', { id, data });
|
|
524
533
|
}
|
|
525
534
|
this.bw.down += message.byteLength || message.length;
|
|
@@ -766,7 +775,7 @@ message PeernetDataMessage {
|
|
|
766
775
|
/**
|
|
767
776
|
* @extends {CodecFormat}
|
|
768
777
|
*/
|
|
769
|
-
class DataMessage extends codecFormatInterface {
|
|
778
|
+
class DataMessage extends codecFormatInterface.FormatInterface {
|
|
770
779
|
get keys() {
|
|
771
780
|
return ['hash', 'store']
|
|
772
781
|
}
|
|
@@ -785,7 +794,7 @@ message PsMessage {
|
|
|
785
794
|
required bytes topic = 2;
|
|
786
795
|
}`;
|
|
787
796
|
|
|
788
|
-
class PsMessage extends codecFormatInterface {
|
|
797
|
+
class PsMessage extends codecFormatInterface.FormatInterface {
|
|
789
798
|
get keys() {
|
|
790
799
|
return ['data', 'topic']
|
|
791
800
|
}
|
|
@@ -803,7 +812,7 @@ message PeernetPeerMessage {
|
|
|
803
812
|
}
|
|
804
813
|
`;
|
|
805
814
|
|
|
806
|
-
class PeerMessage extends codecFormatInterface {
|
|
815
|
+
class PeerMessage extends codecFormatInterface.FormatInterface {
|
|
807
816
|
get keys() {
|
|
808
817
|
return ['id']
|
|
809
818
|
}
|
|
@@ -821,7 +830,7 @@ message PeernetPeerMessageResponse {
|
|
|
821
830
|
}
|
|
822
831
|
`;
|
|
823
832
|
|
|
824
|
-
class PeerMessageResponse extends codecFormatInterface {
|
|
833
|
+
class PeerMessageResponse extends codecFormatInterface.FormatInterface {
|
|
825
834
|
get keys() {
|
|
826
835
|
return ['id']
|
|
827
836
|
}
|
|
@@ -840,7 +849,7 @@ message PeernetDataMessageResponse {
|
|
|
840
849
|
}
|
|
841
850
|
`;
|
|
842
851
|
|
|
843
|
-
class DataMessageResponse extends codecFormatInterface {
|
|
852
|
+
class DataMessageResponse extends codecFormatInterface.FormatInterface {
|
|
844
853
|
get keys() {
|
|
845
854
|
return ['hash', 'data']
|
|
846
855
|
}
|
|
@@ -859,7 +868,7 @@ message ChatMessage {
|
|
|
859
868
|
repeated string files = 4;
|
|
860
869
|
}`;
|
|
861
870
|
|
|
862
|
-
class ChatMessage extends codecFormatInterface {
|
|
871
|
+
class ChatMessage extends codecFormatInterface.FormatInterface {
|
|
863
872
|
get keys() {
|
|
864
873
|
return ['author', 'value', 'timestamp', 'files']
|
|
865
874
|
}
|
|
@@ -872,10 +881,10 @@ class ChatMessage extends codecFormatInterface {
|
|
|
872
881
|
|
|
873
882
|
const protoFor = (data) => {
|
|
874
883
|
if (!Buffer.isBuffer(data)) data = Buffer.from(data);
|
|
875
|
-
const codec
|
|
876
|
-
if (!codec
|
|
877
|
-
const Proto = globalThis.peernet.protos[codec
|
|
878
|
-
if (!Proto) throw (new Error(`No proto defined for ${codec
|
|
884
|
+
const codec = new codecFormatInterface.Codec(data);
|
|
885
|
+
if (!codec.name) throw new Error('proto not found')
|
|
886
|
+
const Proto = globalThis.peernet.protos[codec.name];
|
|
887
|
+
if (!Proto) throw (new Error(`No proto defined for ${codec.name}`))
|
|
879
888
|
return new Proto(data)
|
|
880
889
|
};
|
|
881
890
|
|
|
@@ -1657,7 +1666,7 @@ class MessageHandler {
|
|
|
1657
1666
|
* @return signature
|
|
1658
1667
|
*/
|
|
1659
1668
|
async hashAndSignMessage(message) {
|
|
1660
|
-
const hasher = new
|
|
1669
|
+
const hasher = new codecFormatInterface.CodecHash(message, {name: 'peernet-message'});
|
|
1661
1670
|
let identity = await walletStore.get('identity');
|
|
1662
1671
|
identity = JSON.parse(new TextDecoder().decode(identity));
|
|
1663
1672
|
const wallet = new MultiWallet(this.network);
|
|
@@ -1866,7 +1875,7 @@ class Peernet {
|
|
|
1866
1875
|
};
|
|
1867
1876
|
|
|
1868
1877
|
this.protos = globalThis.peernet.protos;
|
|
1869
|
-
this.codecs =
|
|
1878
|
+
this.codecs = codecFormatInterface.codecs;
|
|
1870
1879
|
|
|
1871
1880
|
this._messageHandler = new MessageHandler(this.network);
|
|
1872
1881
|
|
|
@@ -1879,7 +1888,7 @@ class Peernet {
|
|
|
1879
1888
|
protocol: 'peernet-v0.1.0', host: '127.0.0.1', port: options.port
|
|
1880
1889
|
});
|
|
1881
1890
|
} else {
|
|
1882
|
-
const http = await Promise.resolve().then(function () { return require('./http-
|
|
1891
|
+
const http = await Promise.resolve().then(function () { return require('./http-997ec597.js'); });
|
|
1883
1892
|
if (environment !== 'browser') http.default(options);
|
|
1884
1893
|
}
|
|
1885
1894
|
|
|
@@ -2275,7 +2284,7 @@ class Peernet {
|
|
|
2275
2284
|
}
|
|
2276
2285
|
|
|
2277
2286
|
createHash(data, name) {
|
|
2278
|
-
return new
|
|
2287
|
+
return new codecFormatInterface.CodecHash(data, {name})
|
|
2279
2288
|
}
|
|
2280
2289
|
|
|
2281
2290
|
/**
|
package/dist/commonjs/request.js
CHANGED
|
@@ -1,14 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var protons = require('protons');
|
|
4
|
-
var codecFormatInterface = require('
|
|
5
|
-
require('@vandeurenglenn/base32');
|
|
6
|
-
require('@vandeurenglenn/base58');
|
|
7
|
-
require('@vandeurenglenn/is-hex');
|
|
8
|
-
require('./codec-45796010.js');
|
|
9
|
-
require('varint');
|
|
10
|
-
require('./hash.js');
|
|
11
|
-
require('keccak');
|
|
4
|
+
var codecFormatInterface = require('@leofcoin/codec-format-interface');
|
|
12
5
|
|
|
13
6
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
14
7
|
|
|
@@ -21,7 +14,7 @@ message PeernetRequestMessage {
|
|
|
21
14
|
}
|
|
22
15
|
`;
|
|
23
16
|
|
|
24
|
-
class RequestMessage extends codecFormatInterface {
|
|
17
|
+
class RequestMessage extends codecFormatInterface.FormatInterface {
|
|
25
18
|
get keys() {
|
|
26
19
|
return ['request']
|
|
27
20
|
}
|
|
@@ -1,14 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var protons = require('protons');
|
|
4
|
-
var codecFormatInterface = require('
|
|
5
|
-
require('@vandeurenglenn/base32');
|
|
6
|
-
require('@vandeurenglenn/base58');
|
|
7
|
-
require('@vandeurenglenn/is-hex');
|
|
8
|
-
require('./codec-45796010.js');
|
|
9
|
-
require('varint');
|
|
10
|
-
require('./hash.js');
|
|
11
|
-
require('keccak');
|
|
4
|
+
var codecFormatInterface = require('@leofcoin/codec-format-interface');
|
|
12
5
|
|
|
13
6
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
14
7
|
|
|
@@ -21,7 +14,7 @@ message PeernetResponseMessage {
|
|
|
21
14
|
}
|
|
22
15
|
`;
|
|
23
16
|
|
|
24
|
-
class ResponseMessage extends codecFormatInterface {
|
|
17
|
+
class ResponseMessage extends codecFormatInterface.FormatInterface {
|
|
25
18
|
get keys() {
|
|
26
19
|
return ['response']
|
|
27
20
|
}
|