@leofcoin/peernet 1.1.99 → 1.1.100
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/exports/browser/{client-BfWOZz0W.js → client-DgmVTCEc.js} +14 -13
- package/exports/browser/messages/file-link.d.ts +10 -0
- package/exports/browser/messages-Bx4w-Pqo.js +206 -0
- package/exports/browser/peer-info.d.ts +4 -0
- package/exports/browser/{peernet-BQUef8u4.js → peernet-CP4375lb.js} +146 -147
- package/exports/browser/peernet.js +1 -1
- package/exports/browser/prompts/password/browser.d.ts +2 -0
- package/exports/browser/prompts/password/node.d.ts +2 -0
- package/exports/browser/proto/file-link.proto.d.ts +6 -0
- package/exports/messages-CsDqTaBh.js +204 -0
- package/exports/peernet.js +145 -146
- package/exports/types/messages/file-link.d.ts +10 -0
- package/exports/types/peer-info.d.ts +4 -0
- package/exports/types/prompts/password/browser.d.ts +2 -0
- package/exports/types/prompts/password/node.d.ts +2 -0
- package/exports/types/proto/file-link.proto.d.ts +6 -0
- package/package.json +3 -3
- package/exports/browser/messages-B2WVXv2a.js +0 -216
- package/exports/messages-BmpgEM4y.js +0 -214
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
import { FormatInterface } from '@leofcoin/codec-format-interface';
|
|
2
|
+
|
|
3
|
+
var proto$b = {
|
|
4
|
+
data: new Uint8Array(),
|
|
5
|
+
signature: new Uint8Array(),
|
|
6
|
+
'from?': String(),
|
|
7
|
+
'to?': String(),
|
|
8
|
+
'id?': String()
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
class PeernetMessage extends FormatInterface {
|
|
12
|
+
get messageName() {
|
|
13
|
+
return 'PeernetMessage';
|
|
14
|
+
}
|
|
15
|
+
constructor(buffer) {
|
|
16
|
+
const name = 'peernet-message';
|
|
17
|
+
super(buffer, proto$b, { name });
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
var proto$a = {
|
|
22
|
+
hash: String(),
|
|
23
|
+
'store?': String()
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* @example `
|
|
28
|
+
new DHTMessage(hash, store)
|
|
29
|
+
// store = optional if not set, peernet checks every store
|
|
30
|
+
let message = new DHTMessage('hashmvbs124xcfd...', 'transaction')
|
|
31
|
+
message = new DHTMessage('hashmvbs124xcfd...', 'block')
|
|
32
|
+
`
|
|
33
|
+
*/
|
|
34
|
+
class DHTMessage extends FormatInterface {
|
|
35
|
+
get messageName() {
|
|
36
|
+
return 'PeernetDHTMessage';
|
|
37
|
+
}
|
|
38
|
+
constructor(data) {
|
|
39
|
+
const name = 'peernet-dht';
|
|
40
|
+
super(data, proto$a, { name });
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
var proto$9 = {
|
|
45
|
+
hash: String(),
|
|
46
|
+
has: Boolean()
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
class DHTMessageResponse extends FormatInterface {
|
|
50
|
+
get messageName() {
|
|
51
|
+
return 'PeernetDHTMessageResponse';
|
|
52
|
+
}
|
|
53
|
+
constructor(data) {
|
|
54
|
+
const name = 'peernet-dht-response';
|
|
55
|
+
super(data, proto$9, { name });
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
var proto$8 = {
|
|
60
|
+
hash: String(),
|
|
61
|
+
'store?': String()
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* @extends {CodecFormat}
|
|
66
|
+
*/
|
|
67
|
+
class DataMessage extends FormatInterface {
|
|
68
|
+
get messageName() {
|
|
69
|
+
return 'PeernetDataMessage';
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* @param {Buffer|String|Object|DataMessage} data - The data needed to create the DataMessage
|
|
73
|
+
*/
|
|
74
|
+
constructor(data) {
|
|
75
|
+
super(data, proto$8, { name: 'peernet-data' });
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
var proto$7 = {
|
|
80
|
+
data: new Uint8Array(),
|
|
81
|
+
topic: new Uint8Array()
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
class PsMessage extends FormatInterface {
|
|
85
|
+
get messageName() {
|
|
86
|
+
return 'PsMessage';
|
|
87
|
+
}
|
|
88
|
+
constructor(buffer) {
|
|
89
|
+
const name = 'peernet-ps';
|
|
90
|
+
super(buffer, proto$7, { name });
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
var proto$6 = {
|
|
95
|
+
id: String()
|
|
96
|
+
};
|
|
97
|
+
|
|
98
|
+
class PeerMessage extends FormatInterface {
|
|
99
|
+
get messageName() {
|
|
100
|
+
return 'PeernetPeerMessage';
|
|
101
|
+
}
|
|
102
|
+
constructor(data) {
|
|
103
|
+
const name = 'peernet-peer';
|
|
104
|
+
super(data, proto$6, { name });
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
var proto$5 = {
|
|
109
|
+
request: String(),
|
|
110
|
+
'requested?': new Uint8Array()
|
|
111
|
+
};
|
|
112
|
+
|
|
113
|
+
class RequestMessage extends FormatInterface {
|
|
114
|
+
get messageName() {
|
|
115
|
+
return 'PeernetRequestMessage';
|
|
116
|
+
}
|
|
117
|
+
constructor(data) {
|
|
118
|
+
const name = 'peernet-request';
|
|
119
|
+
super(data, proto$5, { name });
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
var proto$4 = {
|
|
124
|
+
response: {}
|
|
125
|
+
};
|
|
126
|
+
|
|
127
|
+
class ResponseMessage extends FormatInterface {
|
|
128
|
+
get messageName() {
|
|
129
|
+
return 'PeernetResponseMessage';
|
|
130
|
+
}
|
|
131
|
+
constructor(data) {
|
|
132
|
+
const name = 'peernet-response';
|
|
133
|
+
super(data, proto$4, { name });
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
var proto$3 = {
|
|
138
|
+
id: String()
|
|
139
|
+
};
|
|
140
|
+
|
|
141
|
+
class PeerMessageResponse extends FormatInterface {
|
|
142
|
+
get messageName() {
|
|
143
|
+
return 'PeernetPeerMessageResponse';
|
|
144
|
+
}
|
|
145
|
+
constructor(data) {
|
|
146
|
+
const name = 'peernet-peer-response';
|
|
147
|
+
super(data, proto$3, { name });
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
var proto$2 = {
|
|
152
|
+
hash: String(),
|
|
153
|
+
data: new Uint8Array()
|
|
154
|
+
};
|
|
155
|
+
|
|
156
|
+
class DataMessageResponse extends FormatInterface {
|
|
157
|
+
get messageName() {
|
|
158
|
+
return 'PeernetDataMessageResponse';
|
|
159
|
+
}
|
|
160
|
+
constructor(data) {
|
|
161
|
+
const name = 'peernet-data-response';
|
|
162
|
+
super(data, proto$2, { name });
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
var proto$1 = {
|
|
167
|
+
value: String(),
|
|
168
|
+
author: String(),
|
|
169
|
+
timestamp: Number(),
|
|
170
|
+
files: [String()]
|
|
171
|
+
};
|
|
172
|
+
|
|
173
|
+
class ChatMessage extends FormatInterface {
|
|
174
|
+
get messageName() {
|
|
175
|
+
return 'ChatMessage';
|
|
176
|
+
}
|
|
177
|
+
constructor(buffer) {
|
|
178
|
+
const name = 'chat-message';
|
|
179
|
+
super(buffer, proto$1, { name });
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
var proto = {
|
|
184
|
+
path: String(),
|
|
185
|
+
'content?': '',
|
|
186
|
+
'links?': []
|
|
187
|
+
};
|
|
188
|
+
|
|
189
|
+
/**
|
|
190
|
+
* @extends {CodecFormat}
|
|
191
|
+
*/
|
|
192
|
+
class PeernetFile extends FormatInterface {
|
|
193
|
+
get messageName() {
|
|
194
|
+
return 'PeernetFile';
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* @param {Buffer|String|Object|DataMessage} data - The data needed to create the DataMessage
|
|
198
|
+
*/
|
|
199
|
+
constructor(data) {
|
|
200
|
+
super(data, proto, { name: 'peernet-file' });
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
export { ChatMessage, DHTMessage, DHTMessageResponse, DataMessage, DataMessageResponse, PeerMessage, PeerMessageResponse, PeernetFile, PeernetMessage, PsMessage, RequestMessage, ResponseMessage };
|
package/exports/peernet.js
CHANGED
|
@@ -11,54 +11,55 @@ import 'qr-scanner';
|
|
|
11
11
|
import 'qrcode';
|
|
12
12
|
|
|
13
13
|
const BufferToUint8Array = (data) => {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
14
|
+
if (data.type === 'Buffer') {
|
|
15
|
+
data = new Uint8Array(data.data);
|
|
16
|
+
}
|
|
17
|
+
return data;
|
|
18
18
|
};
|
|
19
|
-
|
|
20
19
|
const protoFor = (message) => {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
20
|
+
const codec = new Codec(message);
|
|
21
|
+
if (!codec.name)
|
|
22
|
+
throw new Error(`proto not found ${message}`);
|
|
23
|
+
const Proto = globalThis.peernet.protos[codec.name];
|
|
24
|
+
if (!Proto)
|
|
25
|
+
throw new Error(`No proto defined for ${codec.name}`);
|
|
26
|
+
return new Proto(message);
|
|
26
27
|
};
|
|
27
|
-
|
|
28
28
|
/**
|
|
29
29
|
* wether or not a peernet daemon is active
|
|
30
30
|
* @return {Boolean}
|
|
31
31
|
*/
|
|
32
32
|
const hasDaemon = async () => {
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
33
|
+
try {
|
|
34
|
+
let response = await fetch('http://127.0.0.1:1000/api/version');
|
|
35
|
+
response = await response.json();
|
|
36
|
+
return Boolean(response.client === '@peernet/api/http');
|
|
37
|
+
}
|
|
38
|
+
catch (e) {
|
|
39
|
+
return false;
|
|
40
|
+
}
|
|
40
41
|
};
|
|
41
|
-
|
|
42
42
|
const https = () => {
|
|
43
|
-
|
|
44
|
-
|
|
43
|
+
if (!globalThis.location)
|
|
44
|
+
return false;
|
|
45
|
+
return Boolean(globalThis.location.protocol === 'https:');
|
|
45
46
|
};
|
|
46
|
-
|
|
47
47
|
/**
|
|
48
48
|
* Get current environment
|
|
49
49
|
* @return {String} current environment [node, electron, browser]
|
|
50
50
|
*/
|
|
51
51
|
const environment = () => {
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
52
|
+
const _navigator = globalThis.navigator;
|
|
53
|
+
if (!_navigator) {
|
|
54
|
+
return 'node';
|
|
55
|
+
}
|
|
56
|
+
else if (_navigator && /electron/i.test(_navigator.userAgent)) {
|
|
57
|
+
return 'electron';
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
return 'browser';
|
|
61
|
+
}
|
|
60
62
|
};
|
|
61
|
-
|
|
62
63
|
/**
|
|
63
64
|
* * Get current environment
|
|
64
65
|
* @return {Object} result
|
|
@@ -66,84 +67,84 @@ const environment = () => {
|
|
|
66
67
|
* @property {Boolean} reult.environment Current environment
|
|
67
68
|
*/
|
|
68
69
|
const target = async () => {
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
70
|
+
let daemon = false;
|
|
71
|
+
if (!https())
|
|
72
|
+
daemon = await hasDaemon();
|
|
73
|
+
return { daemon, environment: environment() };
|
|
73
74
|
};
|
|
74
75
|
|
|
75
76
|
class PeerDiscovery {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
_getPeerId(id) {
|
|
81
|
-
if (!peernet.peerMap || (peernet.peerMap && peernet.peerMap.size === 0)) return false
|
|
82
|
-
|
|
83
|
-
for (const entry of [...peernet.peerMap.entries()]) {
|
|
84
|
-
for (const _id of entry[1]) {
|
|
85
|
-
if (_id === id) return entry[0]
|
|
86
|
-
}
|
|
77
|
+
constructor(id) {
|
|
78
|
+
this.id = id;
|
|
87
79
|
}
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
response = await protoFor(response);
|
|
98
|
-
response = await new peernet.protos['peernet-peer-response'](response.decoded.data);
|
|
99
|
-
|
|
100
|
-
id = response.decoded.id;
|
|
101
|
-
if (id === this.id) return
|
|
102
|
-
|
|
103
|
-
if (!peernet.peerMap.has(id)) peernet.peerMap.set(id, [peer.id]);
|
|
104
|
-
else {
|
|
105
|
-
const connections = peernet.peerMap.get(id);
|
|
106
|
-
if (connections.indexOf(peer.id) === -1) {
|
|
107
|
-
connections.push(peer.id);
|
|
108
|
-
peernet.peerMap.set(peer.id, connections);
|
|
109
|
-
}
|
|
80
|
+
_getPeerId(id) {
|
|
81
|
+
if (!peernet.peerMap || (peernet.peerMap && peernet.peerMap.size === 0))
|
|
82
|
+
return false;
|
|
83
|
+
for (const entry of [...peernet.peerMap.entries()]) {
|
|
84
|
+
for (const _id of entry[1]) {
|
|
85
|
+
if (_id === id)
|
|
86
|
+
return entry[0];
|
|
87
|
+
}
|
|
88
|
+
}
|
|
110
89
|
}
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
90
|
+
async discover(peer) {
|
|
91
|
+
let id = this._getPeerId(peer.id);
|
|
92
|
+
if (id)
|
|
93
|
+
return id;
|
|
94
|
+
const data = await new peernet.protos['peernet-peer']({ id: this.id });
|
|
95
|
+
const node = await peernet.prepareMessage(peer.id, data.encoded);
|
|
96
|
+
let response = await peer.request(node.encoded);
|
|
97
|
+
response = await protoFor(response);
|
|
98
|
+
response = await new peernet.protos['peernet-peer-response'](response.decoded.data);
|
|
99
|
+
id = response.decoded.id;
|
|
100
|
+
if (id === this.id)
|
|
101
|
+
return;
|
|
102
|
+
if (!peernet.peerMap.has(id))
|
|
103
|
+
peernet.peerMap.set(id, [peer.id]);
|
|
104
|
+
else {
|
|
105
|
+
const connections = peernet.peerMap.get(id);
|
|
106
|
+
if (connections.indexOf(peer.id) === -1) {
|
|
107
|
+
connections.push(peer.id);
|
|
108
|
+
peernet.peerMap.set(peer.id, connections);
|
|
109
|
+
}
|
|
127
110
|
}
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
111
|
+
return id;
|
|
112
|
+
}
|
|
113
|
+
async discoverHandler(message, peer) {
|
|
114
|
+
const { id, proto } = message;
|
|
115
|
+
// if (typeof message.data === 'string') message.data = Buffer.from(message.data)
|
|
116
|
+
if (proto.name === 'peernet-peer') {
|
|
117
|
+
const from = proto.decoded.id;
|
|
118
|
+
if (from === this.id)
|
|
119
|
+
return;
|
|
120
|
+
if (!peernet.peerMap.has(from))
|
|
121
|
+
peernet.peerMap.set(from, [peer.id]);
|
|
122
|
+
else {
|
|
123
|
+
const connections = peernet.peerMap.get(from);
|
|
124
|
+
if (connections.indexOf(peer.id) === -1) {
|
|
125
|
+
connections.push(peer.id);
|
|
126
|
+
peernet.peerMap.set(from, connections);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
const data = await new peernet.protos['peernet-peer-response']({ id: this.id });
|
|
130
|
+
const node = await peernet.prepareMessage(from, data.encoded);
|
|
131
|
+
peer.write(Buffer.from(JSON.stringify({ id, data: node.encoded })));
|
|
132
|
+
}
|
|
133
|
+
else if (proto.name === 'peernet-peer-response') {
|
|
134
|
+
const from = proto.decoded.id;
|
|
135
|
+
if (from === this.id)
|
|
136
|
+
return;
|
|
137
|
+
if (!peernet.peerMap.has(from))
|
|
138
|
+
peernet.peerMap.set(from, [peer.id]);
|
|
139
|
+
else {
|
|
140
|
+
const connections = peernet.peerMap.get(from);
|
|
141
|
+
if (connections.indexOf(peer.id) === -1) {
|
|
142
|
+
connections.push(peer.id);
|
|
143
|
+
peernet.peerMap.set(from, connections);
|
|
144
|
+
}
|
|
145
|
+
}
|
|
143
146
|
}
|
|
144
|
-
}
|
|
145
147
|
}
|
|
146
|
-
}
|
|
147
148
|
}
|
|
148
149
|
|
|
149
150
|
/**
|
|
@@ -245,59 +246,57 @@ class DhtEarth {
|
|
|
245
246
|
}
|
|
246
247
|
|
|
247
248
|
class MessageHandler {
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
249
|
+
constructor(network) {
|
|
250
|
+
this.network = network;
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* hash and sign message
|
|
254
|
+
*
|
|
255
|
+
* @param {object} message
|
|
256
|
+
* @param {Buffer} message.from peer id
|
|
257
|
+
* @param {Buffer} message.to peer id
|
|
258
|
+
* @param {string} message.data Peernet message
|
|
259
|
+
* (PeernetMessage excluded) encoded as a string
|
|
260
|
+
* @return message
|
|
261
|
+
*/
|
|
262
|
+
async hashAndSignMessage(message) {
|
|
263
|
+
const hash = await message.peernetHash;
|
|
264
|
+
message.decoded.signature = globalThis.identity.sign(hash.buffer);
|
|
265
|
+
return message;
|
|
266
|
+
}
|
|
267
|
+
/**
|
|
268
|
+
* @param {String} from - peer id
|
|
269
|
+
* @param {String} to - peer id
|
|
270
|
+
* @param {String|PeernetMessage} data - data encoded message string
|
|
271
|
+
* or the messageNode itself
|
|
272
|
+
*/
|
|
273
|
+
async prepareMessage(message) {
|
|
274
|
+
if (message.keys.includes('signature')) {
|
|
275
|
+
message = await this.hashAndSignMessage(message);
|
|
276
|
+
}
|
|
277
|
+
return message;
|
|
276
278
|
}
|
|
277
|
-
|
|
278
|
-
return message
|
|
279
|
-
}
|
|
280
279
|
}
|
|
281
280
|
|
|
282
281
|
const dataHandler = async (message) => {
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
282
|
+
if (!message)
|
|
283
|
+
return;
|
|
284
|
+
try {
|
|
285
|
+
const { data, id, from, peer } = message;
|
|
286
|
+
const proto = await protoFor(data);
|
|
287
|
+
peernet._protoHandler({ id, proto }, peernet.connections[from] || peer, from);
|
|
288
|
+
}
|
|
289
|
+
catch (error) {
|
|
290
|
+
console.error(error);
|
|
291
|
+
}
|
|
292
292
|
};
|
|
293
293
|
|
|
294
294
|
const dhtError = (proto) => {
|
|
295
|
-
|
|
296
|
-
|
|
295
|
+
const text = `Received proto ${proto.name} expected peernet-dht-response`;
|
|
296
|
+
return new Error(`Routing error: ${text}`);
|
|
297
297
|
};
|
|
298
|
-
|
|
299
298
|
const nothingFoundError = (hash) => {
|
|
300
|
-
|
|
299
|
+
return new Error(`nothing found for ${hash}`);
|
|
301
300
|
};
|
|
302
301
|
|
|
303
302
|
globalThis.LeofcoinStorage = Storage;
|
|
@@ -448,7 +447,7 @@ class Peernet {
|
|
|
448
447
|
this.root = options.root;
|
|
449
448
|
const { RequestMessage, ResponseMessage, PeerMessage, PeerMessageResponse, PeernetMessage, DHTMessage, DHTMessageResponse, DataMessage, DataMessageResponse, PsMessage, ChatMessage, PeernetFile
|
|
450
449
|
// FolderMessageResponse
|
|
451
|
-
} = await import(/* webpackChunkName: "messages" */ './messages-
|
|
450
|
+
} = await import(/* webpackChunkName: "messages" */ './messages-CsDqTaBh.js');
|
|
452
451
|
/**
|
|
453
452
|
* proto Object containing protos
|
|
454
453
|
* @type {Object}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @extends {CodecFormat}
|
|
3
|
+
*/
|
|
4
|
+
export default class PeernetFileLink {
|
|
5
|
+
/**
|
|
6
|
+
* @param {Buffer|String|Object|DataMessage} data - The data needed to create the DataMessage
|
|
7
|
+
*/
|
|
8
|
+
constructor(data: Buffer | string | any | DataMessage);
|
|
9
|
+
get messageName(): string;
|
|
10
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@leofcoin/peernet",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.100",
|
|
4
4
|
"description": "",
|
|
5
5
|
"browser": "./exports/browser/peernet.js",
|
|
6
6
|
"exports": {
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
"@leofcoin/identity-utils": "^1.0.2",
|
|
38
38
|
"@leofcoin/multi-wallet": "^3.1.8",
|
|
39
39
|
"@leofcoin/storage": "^3.5.38",
|
|
40
|
-
"@netpeer/swarm": "^0.8.
|
|
40
|
+
"@netpeer/swarm": "^0.8.30",
|
|
41
41
|
"@vandeurenglenn/base32": "^1.2.4",
|
|
42
42
|
"@vandeurenglenn/base58": "^1.1.9",
|
|
43
43
|
"@vandeurenglenn/debug": "^1.2.6",
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
"@rollup/plugin-commonjs": "^28.0.8",
|
|
56
56
|
"@rollup/plugin-json": "^6.1.0",
|
|
57
57
|
"@rollup/plugin-node-resolve": "^16.0.3",
|
|
58
|
-
"@rollup/plugin-typescript": "^12.
|
|
58
|
+
"@rollup/plugin-typescript": "^12.2.0",
|
|
59
59
|
"@rollup/plugin-wasm": "^6.2.2",
|
|
60
60
|
"@types/bs58check": "^3.0.1",
|
|
61
61
|
"@types/node": "^24.9.1",
|