@leofcoin/peernet 1.1.29 → 1.1.31

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.
@@ -1,4 +1,4 @@
1
- import { g as getDefaultExportFromCjs, c as commonjsGlobal } from './peernet-c9f2ef1e.js';
1
+ import { g as getDefaultExportFromCjs, c as commonjsGlobal } from './peernet-ad3ca002.js';
2
2
  import './value-157ab062.js';
3
3
 
4
4
  function commonjsRequire(path) {
@@ -40901,6 +40901,8 @@ var P2PT = /*@__PURE__*/getDefaultExportFromCjs(p2pt_umdExports);
40901
40901
 
40902
40902
  class P2PTPeer {
40903
40903
  id;
40904
+ remotePeerId;
40905
+ localPeerId;
40904
40906
  #peerId;
40905
40907
  #channelName
40906
40908
  initiator = false
@@ -40926,8 +40928,10 @@ class P2PTPeer {
40926
40928
  constructor(peer, p2pt, options = {}) {
40927
40929
  this.#connection = peer;
40928
40930
  this.p2pt = p2pt;
40929
- this.id = options.id;
40930
- this.to = options.to;
40931
+
40932
+ this.id = options.id || peer.id;
40933
+ this.localPeerId = this.p2pt.peerId;
40934
+
40931
40935
  this.bw = {
40932
40936
  up: 0,
40933
40937
  down: 0
@@ -41036,31 +41040,37 @@ class P2PTClient extends P2PT {
41036
41040
  this.peerId = peerId;
41037
41041
 
41038
41042
  this.on('trackerconnect', async (tracker, stats) => {
41039
- // const peers = await this.requestMorePeers()
41040
- // let promises = Object.entries(peers).map(async ([id, peer]) => {
41041
- // const hasPeer = this.#discovered[peer.id];
41042
- // if (!hasPeer) this.#discovered[peer.id] = await new P2PTPeer(peer, this);
41043
- // pubsub.publish('peer:discovered', this.#discovered[id]);
41044
- // })
41045
- // promises = await Promise.allSettled(promises)
41043
+ const peers = await this.requestMorePeers();
41044
+ let promises = Object.entries(peers).map(async ([id, peer]) => {
41045
+ const hasPeer = this.#discovered[id];
41046
+ if (!hasPeer) this.#discovered[id] = await new P2PTPeer(peer, this);
41047
+ if (this.#discovered[id].connected) pubsub.publish('peer:discovered', this.#discovered[id]);
41048
+ });
41049
+ promises = await Promise.allSettled(promises);
41046
41050
  pubsub.publish('star:connected', tracker);
41047
41051
  });
41048
41052
 
41049
41053
  this.on('peerconnect', async (peer) => {
41050
41054
  this.#discovered[peer.id] = await new P2PTPeer(peer, this);
41051
- pubsub.publish('peer:discovered', this.#discovered[peer.id]);
41055
+ if (this.#discovered[peer.id].connected) pubsub.publish('peer:discovered', this.#discovered[peer.id]);
41052
41056
  });
41053
41057
 
41054
41058
  this.on('peerclose', async (peer) => {
41055
- pubsub.publish('peer:left', this.#discovered[peer.id]);
41059
+ if (this.#discovered[peer.id]) {
41060
+ pubsub.publish('peer:left', this.#discovered[peer.id]);
41061
+ delete this.#discovered[peer.id];
41062
+ }
41056
41063
  });
41057
41064
 
41058
41065
  this.on('msg', async (peer, data, id, from) => {
41059
41066
  const hasPeer = this.#discovered[peer.id];
41060
41067
  if (!hasPeer) this.#discovered[peer.id] = await new P2PTPeer(peer, this);
41061
41068
 
41062
- this.#discovered[peer.id]?._handleMessage(new Uint8Array(Object.values(data)), id, from);
41063
- this.bw.down += data.length || data.byteLength;
41069
+ if (this.#discovered[peer.id].connected) {
41070
+ this.#discovered[peer.id]?._handleMessage(new Uint8Array(Object.values(data)), id, from);
41071
+ this.bw.down += data.length || data.byteLength;
41072
+ }
41073
+
41064
41074
  });
41065
41075
 
41066
41076
  this.on('data', async (peer, data) => {
@@ -1,4 +1,4 @@
1
- import { M as MultiWallet, e as encrypt, b as base58$1 } from './peernet-c9f2ef1e.js';
1
+ import { M as MultiWallet, e as encrypt, b as base58$1 } from './peernet-ad3ca002.js';
2
2
  import './value-157ab062.js';
3
3
 
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { F as FormatInterface } from './peernet-c9f2ef1e.js';
1
+ import { F as FormatInterface } from './peernet-ad3ca002.js';
2
2
  import './value-157ab062.js';
3
3
 
4
4
  var proto$b = {
@@ -5417,188 +5417,195 @@ new Mutex();
5417
5417
 
5418
5418
  new Mutex();
5419
5419
 
5420
- const blockchainCodecs = [
5421
- {
5422
- name: 'leofcoin-block',
5423
- codec: '0x6c62',
5424
- hashAlg: 'dbl-keccak-512',
5425
- },
5426
- {
5427
- name: 'leofcoin-tx',
5428
- codec: '0x6c74',
5429
- hashAlg: 'dbl-keccak-512',
5430
- },
5431
- {
5432
- name: 'leofcoin-itx',
5433
- codec: '0x6c69',
5434
- hashAlg: 'keccak-512',
5435
- },
5436
- {
5437
- name: 'leofcoin-pr',
5438
- codec: '0x6c70',
5439
- hashAlg: 'keccak-256',
5440
- },
5441
- {
5442
- name: 'contract-message',
5443
- codec: '0x63636d',
5444
- hashAlg: 'keccak-256'
5445
- },
5446
- {
5447
- name: 'transaction-message',
5448
- codec: '0x746d',
5449
- hashAlg: 'keccak-256'
5450
- },
5451
- {
5452
- name: 'block-message',
5453
- codec: '0x626d',
5454
- hashAlg: 'keccak-256'
5455
- },
5456
- {
5457
- name: 'bw-message',
5458
- codec: '0x62776d',
5459
- hashAlg: 'keccak-256'
5460
- },
5461
- {
5462
- name: 'bw-request-message',
5463
- codec: '0x6277726d',
5464
- hashAlg: 'keccak-256'
5465
- },
5466
- {
5467
- name: 'validator-message',
5468
- codec: '0x766d',
5469
- hashAlg: 'keccak-256'
5470
- }
5420
+ const blockchainCodecs = [
5421
+ {
5422
+ name: 'leofcoin-block',
5423
+ codec: '0x6c62',
5424
+ hashAlg: 'dbl-keccak-512',
5425
+ },
5426
+ {
5427
+ name: 'leofcoin-tx',
5428
+ codec: '0x6c74',
5429
+ hashAlg: 'dbl-keccak-512',
5430
+ },
5431
+ {
5432
+ name: 'leofcoin-itx',
5433
+ codec: '0x6c69',
5434
+ hashAlg: 'keccak-512',
5435
+ },
5436
+ {
5437
+ name: 'leofcoin-pr',
5438
+ codec: '0x6c70',
5439
+ hashAlg: 'keccak-256',
5440
+ },
5441
+ {
5442
+ name: 'contract-message',
5443
+ codec: '0x63636d',
5444
+ hashAlg: 'keccak-256'
5445
+ },
5446
+ {
5447
+ name: 'transaction-message',
5448
+ codec: '0x746d',
5449
+ hashAlg: 'keccak-256'
5450
+ },
5451
+ {
5452
+ name: 'raw-transaction-message',
5453
+ codec: '0x772746d',
5454
+ hashAlg: 'keccak-256'
5455
+ },
5456
+ {
5457
+ name: 'block-message',
5458
+ codec: '0x626d',
5459
+ hashAlg: 'keccak-256'
5460
+ },
5461
+ {
5462
+ name: 'bw-message',
5463
+ codec: '0x62776d',
5464
+ hashAlg: 'keccak-256'
5465
+ },
5466
+ {
5467
+ name: 'bw-request-message',
5468
+ codec: '0x6277726d',
5469
+ hashAlg: 'keccak-256'
5470
+ },
5471
+ {
5472
+ name: 'validator-message',
5473
+ codec: '0x766d',
5474
+ hashAlg: 'keccak-256'
5475
+ }
5471
5476
  ];
5472
5477
 
5473
- const internalCodecs = [
5474
- {
5475
- name: 'disco-hash',
5476
- codec: '0x30',
5477
- hashAlg: 'dbl-keccak-256',
5478
- },
5479
- {
5480
- name: 'peernet-peer-response',
5481
- codec: '0x707072',
5482
- hashAlg: 'keccak-256',
5483
- },
5484
- {
5485
- name: 'peernet-peer',
5486
- codec: '0x7070',
5487
- hashAlg: 'keccak-256',
5488
- },
5489
- {
5490
- name: 'peernet-dht',
5491
- codec: '0x706468',
5492
- hashAlg: 'keccak-256',
5493
- },
5494
- {
5495
- name: 'peernet-dht-response',
5496
- codec: '0x706472',
5497
- hashAlg: 'keccak-256',
5498
- },
5499
- {
5500
- name: 'peernet-data',
5501
- codec: '0x706461',
5502
- hashAlg: 'keccak-256',
5503
- },
5504
- {
5505
- name: 'peernet-data-response',
5506
- codec: '0x70646172',
5507
- hashAlg: 'keccak-256',
5508
- },
5509
- {
5510
- name: 'peernet-message',
5511
- codec: '0x706d65',
5512
- hashAlg: 'keccak-256',
5513
- },
5514
- {
5515
- name: 'peernet-ps',
5516
- codec: '707073',
5517
- hashAlg: 'keccak-256',
5518
- },
5519
- {
5520
- name: 'peernet-response',
5521
- codec: '0x7072',
5522
- hashAlg: 'keccak-256',
5523
- },
5524
- {
5525
- name: 'peernet-request',
5526
- codec: '0x707271',
5527
- hashAlg: 'keccak-256',
5528
- },
5529
- {
5530
- name: 'peernet-file',
5531
- codec: '0x7066',
5532
- hashAlg: 'keccak-256',
5533
- },
5534
- {
5535
- name: 'peernet-file-response',
5536
- codec: '0x706672',
5537
- hashAlg: 'keccak-256',
5538
- }
5478
+ const internalCodecs = [
5479
+ {
5480
+ name: 'disco-hash',
5481
+ codec: '0x30',
5482
+ hashAlg: 'dbl-keccak-256',
5483
+ },
5484
+ {
5485
+ name: 'peernet-peer-response',
5486
+ codec: '0x707072',
5487
+ hashAlg: 'keccak-256',
5488
+ },
5489
+ {
5490
+ name: 'peernet-peer',
5491
+ codec: '0x7070',
5492
+ hashAlg: 'keccak-256',
5493
+ },
5494
+ {
5495
+ name: 'peernet-dht',
5496
+ codec: '0x706468',
5497
+ hashAlg: 'keccak-256',
5498
+ },
5499
+ {
5500
+ name: 'peernet-dht-response',
5501
+ codec: '0x706472',
5502
+ hashAlg: 'keccak-256',
5503
+ },
5504
+ {
5505
+ name: 'peernet-data',
5506
+ codec: '0x706461',
5507
+ hashAlg: 'keccak-256',
5508
+ },
5509
+ {
5510
+ name: 'peernet-data-response',
5511
+ codec: '0x70646172',
5512
+ hashAlg: 'keccak-256',
5513
+ },
5514
+ {
5515
+ name: 'peernet-message',
5516
+ codec: '0x706d65',
5517
+ hashAlg: 'keccak-256',
5518
+ },
5519
+ {
5520
+ name: 'peernet-ps',
5521
+ codec: '707073',
5522
+ hashAlg: 'keccak-256',
5523
+ },
5524
+ {
5525
+ name: 'peernet-response',
5526
+ codec: '0x7072',
5527
+ hashAlg: 'keccak-256',
5528
+ },
5529
+ {
5530
+ name: 'peernet-request',
5531
+ codec: '0x707271',
5532
+ hashAlg: 'keccak-256',
5533
+ },
5534
+ {
5535
+ name: 'peernet-file',
5536
+ codec: '0x7066',
5537
+ hashAlg: 'keccak-256',
5538
+ },
5539
+ {
5540
+ name: 'peernet-file-response',
5541
+ codec: '0x706672',
5542
+ hashAlg: 'keccak-256',
5543
+ }
5539
5544
  ];
5540
5545
 
5541
- const codecs = [
5542
- ...internalCodecs,
5543
- ...blockchainCodecs,
5544
- {
5545
- name: 'chat-message',
5546
- codec: '0x70636d',
5547
- hashAlg: 'dbl-keccak-256',
5548
- }
5546
+ var social = [{
5547
+ name: 'chat-message',
5548
+ codec: '0x70636d',
5549
+ hashAlg: 'dbl-keccak-256',
5550
+ }];
5551
+
5552
+ const codecs = [
5553
+ ...internalCodecs,
5554
+ ...blockchainCodecs,
5555
+ ...social
5549
5556
  ];
5550
5557
 
5551
- globalThis.peernetCodecs = globalThis.peernetCodecs || {};
5552
- const addCodec = (codecInput) => {
5553
- let { hashAlg, codec, name } = codecInput;
5554
- if (!globalThis.peernetCodecs[name])
5555
- globalThis.peernetCodecs[name] = {
5556
- hashAlg,
5557
- codec: typeof codec === 'string' ? parseInt(codec, 16) : codec
5558
- };
5559
- };
5560
- const getCodec = (name) => {
5561
- if (typeof name === 'number')
5562
- return name;
5563
- return getCodecByName(name).codec;
5564
- };
5565
- const getCodecName = (codec) => {
5566
- return Object.keys(globalThis.peernetCodecs).reduce((p, c) => {
5567
- const item = globalThis.peernetCodecs[c];
5568
- if (item.codec === codec)
5569
- return c;
5570
- else
5571
- return p;
5572
- }, undefined);
5573
- };
5574
- const getCodecByName = (name) => globalThis.peernetCodecs[name];
5575
- const getHashAlg = (name) => {
5576
- if (typeof name === 'number')
5577
- return getCodecByName(getCodecName(name)).hashAlg;
5578
- return getCodecByName(name).hashAlg;
5579
- };
5580
- const isCodec = (codec) => {
5581
- if (codec.codec !== undefined && codec.hashAlg)
5582
- return true;
5583
- return false;
5584
- };
5585
- const validateCodec = (codec) => {
5586
- if (codec.codec === undefined ||
5587
- codec.hashAlg === undefined ||
5588
- codec.name === undefined)
5589
- throw new Error(`invalid codecInput: ${codec}`);
5590
- };
5591
- for (const codec of codecs) {
5592
- addCodec(codec);
5593
- }
5594
- var utils$p = {
5595
- isCodec,
5596
- addCodec,
5597
- getCodec,
5598
- getHashAlg,
5599
- getCodecName,
5600
- validateCodec,
5601
- codecs: globalThis.peernetCodecs
5558
+ globalThis.peernetCodecs = globalThis.peernetCodecs || {};
5559
+ const addCodec = (codecInput) => {
5560
+ let { hashAlg, codec, name } = codecInput;
5561
+ if (!globalThis.peernetCodecs[name])
5562
+ globalThis.peernetCodecs[name] = {
5563
+ hashAlg,
5564
+ codec: typeof codec === 'string' ? parseInt(codec, 16) : codec
5565
+ };
5566
+ };
5567
+ const getCodec = (name) => {
5568
+ if (typeof name === 'number')
5569
+ return name;
5570
+ return getCodecByName(name).codec;
5571
+ };
5572
+ const getCodecName = (codec) => {
5573
+ return Object.keys(globalThis.peernetCodecs).reduce((p, c) => {
5574
+ const item = globalThis.peernetCodecs[c];
5575
+ if (item.codec === codec)
5576
+ return c;
5577
+ else
5578
+ return p;
5579
+ }, undefined);
5580
+ };
5581
+ const getCodecByName = (name) => globalThis.peernetCodecs[name];
5582
+ const getHashAlg = (name) => {
5583
+ if (typeof name === 'number')
5584
+ return getCodecByName(getCodecName(name)).hashAlg;
5585
+ return getCodecByName(name).hashAlg;
5586
+ };
5587
+ const isCodec = (codec) => {
5588
+ if (codec.codec !== undefined && codec.hashAlg)
5589
+ return true;
5590
+ return false;
5591
+ };
5592
+ const validateCodec = (codec) => {
5593
+ if (codec.codec === undefined ||
5594
+ codec.hashAlg === undefined ||
5595
+ codec.name === undefined)
5596
+ throw new Error(`invalid codecInput: ${codec}`);
5597
+ };
5598
+ for (const codec of codecs) {
5599
+ addCodec(codec);
5600
+ }
5601
+ var utils$p = {
5602
+ isCodec,
5603
+ addCodec,
5604
+ getCodec,
5605
+ getHashAlg,
5606
+ getCodecName,
5607
+ validateCodec,
5608
+ codecs: globalThis.peernetCodecs
5602
5609
  };
5603
5610
 
5604
5611
  /**
@@ -5630,11 +5637,11 @@ let BasicInterface$1 = class BasicInterface {
5630
5637
  // get Codec(): Codec {}
5631
5638
  protoEncode(data) {
5632
5639
  // check schema
5633
- return index$1.encode(this.proto, data);
5640
+ return index$1.encode(this.proto, data, false);
5634
5641
  }
5635
5642
  protoDecode(data) {
5636
5643
  // check schema
5637
- return index$1.decode(this.proto, data);
5644
+ return index$1.decode(this.proto, data, false);
5638
5645
  }
5639
5646
  isHex(string) {
5640
5647
  return isHex(string);
@@ -6031,14 +6038,7 @@ let FormatInterface$1 = class FormatInterface extends BasicInterface$1 {
6031
6038
  const decoded = {};
6032
6039
  if (this.keys?.length > 0) {
6033
6040
  for (const key of this.keys) {
6034
- Object.defineProperties(decoded, {
6035
- [key]: {
6036
- enumerable: true,
6037
- configurable: true,
6038
- set: (value) => data[key],
6039
- get: () => data[key]
6040
- }
6041
- });
6041
+ decoded[key] = data[key];
6042
6042
  }
6043
6043
  this.decoded = decoded;
6044
6044
  return this.encode(decoded);
@@ -20184,7 +20184,7 @@ class Identity {
20184
20184
  globalThis.peernet.selectedAccount = new TextDecoder().decode(selected);
20185
20185
  }
20186
20186
  else {
20187
- const importee = await import(/* webpackChunkName: "generate-account" */ './index-ff3a61f6.js');
20187
+ const importee = await import(/* webpackChunkName: "generate-account" */ './index-904b9f85.js');
20188
20188
  const { identity, accounts } = await importee.default(password, this.network);
20189
20189
  await globalThis.accountStore.put('public', JSON.stringify({ walletId: identity.walletId }));
20190
20190
  await globalThis.walletStore.put('version', String(1));
@@ -20355,7 +20355,7 @@ class Peernet {
20355
20355
  this.root = options.root;
20356
20356
  const { RequestMessage, ResponseMessage, PeerMessage, PeerMessageResponse, PeernetMessage, DHTMessage, DHTMessageResponse, DataMessage, DataMessageResponse, PsMessage, ChatMessage, PeernetFile
20357
20357
  // FolderMessageResponse
20358
- } = await import(/* webpackChunkName: "messages" */ './messages-8b773ecf.js');
20358
+ } = await import(/* webpackChunkName: "messages" */ './messages-de2c5670.js');
20359
20359
  /**
20360
20360
  * proto Object containing protos
20361
20361
  * @type {Object}
@@ -20434,7 +20434,7 @@ class Peernet {
20434
20434
  if (this.#starting || this.#started)
20435
20435
  return;
20436
20436
  this.#starting = true;
20437
- const importee = await import('./client-0ebd5821.js');
20437
+ const importee = await import('./client-d1c29e20.js');
20438
20438
  /**
20439
20439
  * @access public
20440
20440
  * @type {PeernetClient}
@@ -1,2 +1,2 @@
1
- export { P as default } from './peernet-c9f2ef1e.js';
1
+ export { P as default } from './peernet-ad3ca002.js';
2
2
  import './value-157ab062.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@leofcoin/peernet",
3
- "version": "1.1.29",
3
+ "version": "1.1.31",
4
4
  "description": "",
5
5
  "main": "src/peernet.js",
6
6
  "exports": {
package/test.js CHANGED
@@ -6,17 +6,21 @@ import Client from './exports/peernet.js'
6
6
  network: 'leofcoin:peach', networkVersion: 'peach', stars: ['wss://peach.leofcoin.org']
7
7
  })
8
8
  console.log(pubsub.subscribers);
9
- pubsub.subscribe('peer:connected', (data) => {
10
- console.log(data);
9
+ pubsub.subscribe('peer:discovered', (data) => {
10
+ // console.log(data);
11
+ console.log(`discovered: ${Object.keys(peernet.client.discovered).length}`);
12
+ console.log(Object.keys(peernet.client.discovered));
11
13
  })
12
- pubsub.subscribe('peer:data', (data) => {
13
- console.log(data);
14
+ pubsub.subscribe('peer:connected', (data) => {
15
+ // console.log(data);
16
+ console.log(`connections: ${peernet.connections.length}`);
14
17
  })
15
-
16
- setInterval(() => {
18
+ pubsub.subscribe('peer:left', (data) => {
17
19
  console.log(`connections: ${peernet.connections.length}`);
18
20
  console.log(`discovered: ${Object.keys(peernet.client.discovered).length}`);
19
- }, 3000)
21
+ // console.log(data);
22
+ })
23
+
20
24
  // peernet.addFolder([{
21
25
  // path: 'assets/asset.png',
22
26
  // content: Buffer.from('png')