@leofcoin/chain 1.4.52 → 1.4.54

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 { c as commonjsGlobal, g as getDefaultExportFromCjs } from './node-browser-63d44d8e.js';
1
+ import { c as commonjsGlobal, g as getDefaultExportFromCjs } from './node-browser-5484753a.js';
2
2
  import './index-640d9f36.js';
3
3
 
4
4
  function commonjsRequire(path) {
@@ -41036,31 +41036,37 @@ class P2PTClient extends P2PT {
41036
41036
  this.peerId = peerId;
41037
41037
 
41038
41038
  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)
41039
+ const peers = await this.requestMorePeers();
41040
+ let promises = Object.entries(peers).map(async ([id, peer]) => {
41041
+ const hasPeer = this.#discovered[id];
41042
+ if (!hasPeer) this.#discovered[id] = await new P2PTPeer(peer, this);
41043
+ if (this.#discovered[id].connected) pubsub.publish('peer:discovered', this.#discovered[id]);
41044
+ });
41045
+ promises = await Promise.allSettled(promises);
41046
41046
  pubsub.publish('star:connected', tracker);
41047
41047
  });
41048
41048
 
41049
41049
  this.on('peerconnect', async (peer) => {
41050
41050
  this.#discovered[peer.id] = await new P2PTPeer(peer, this);
41051
- pubsub.publish('peer:discovered', this.#discovered[peer.id]);
41051
+ if (this.#discovered[peer.id].connected) pubsub.publish('peer:discovered', this.#discovered[peer.id]);
41052
41052
  });
41053
41053
 
41054
41054
  this.on('peerclose', async (peer) => {
41055
- pubsub.publish('peer:left', this.#discovered[peer.id]);
41055
+ if (this.#discovered[peer.id]) {
41056
+ pubsub.publish('peer:left', this.#discovered[peer.id]);
41057
+ delete this.#discovered[peer.id];
41058
+ }
41056
41059
  });
41057
41060
 
41058
41061
  this.on('msg', async (peer, data, id, from) => {
41059
41062
  const hasPeer = this.#discovered[peer.id];
41060
41063
  if (!hasPeer) this.#discovered[peer.id] = await new P2PTPeer(peer, this);
41061
41064
 
41062
- this.#discovered[peer.id]?._handleMessage(new Uint8Array(Object.values(data)), id, from);
41063
- this.bw.down += data.length || data.byteLength;
41065
+ if (this.#discovered[peer.id].connected) {
41066
+ this.#discovered[peer.id]?._handleMessage(new Uint8Array(Object.values(data)), id, from);
41067
+ this.bw.down += data.length || data.byteLength;
41068
+ }
41069
+
41064
41070
  });
41065
41071
 
41066
41072
  this.on('data', async (peer, data) => {
@@ -1,4 +1,4 @@
1
- import { M as MultiWallet, e as encrypt, b as base58$1 } from './node-browser-63d44d8e.js';
1
+ import { M as MultiWallet, e as encrypt, b as base58$1 } from './node-browser-5484753a.js';
2
2
  import './index-640d9f36.js';
3
3
 
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { F as FormatInterface } from './node-browser-63d44d8e.js';
1
+ import { F as FormatInterface } from './node-browser-5484753a.js';
2
2
  import './index-640d9f36.js';
3
3
 
4
4
  var proto$b = {
@@ -5500,188 +5500,195 @@ new Mutex();
5500
5500
 
5501
5501
  new Mutex();
5502
5502
 
5503
- const blockchainCodecs = [
5504
- {
5505
- name: 'leofcoin-block',
5506
- codec: '0x6c62',
5507
- hashAlg: 'dbl-keccak-512',
5508
- },
5509
- {
5510
- name: 'leofcoin-tx',
5511
- codec: '0x6c74',
5512
- hashAlg: 'dbl-keccak-512',
5513
- },
5514
- {
5515
- name: 'leofcoin-itx',
5516
- codec: '0x6c69',
5517
- hashAlg: 'keccak-512',
5518
- },
5519
- {
5520
- name: 'leofcoin-pr',
5521
- codec: '0x6c70',
5522
- hashAlg: 'keccak-256',
5523
- },
5524
- {
5525
- name: 'contract-message',
5526
- codec: '0x63636d',
5527
- hashAlg: 'keccak-256'
5528
- },
5529
- {
5530
- name: 'transaction-message',
5531
- codec: '0x746d',
5532
- hashAlg: 'keccak-256'
5533
- },
5534
- {
5535
- name: 'block-message',
5536
- codec: '0x626d',
5537
- hashAlg: 'keccak-256'
5538
- },
5539
- {
5540
- name: 'bw-message',
5541
- codec: '0x62776d',
5542
- hashAlg: 'keccak-256'
5543
- },
5544
- {
5545
- name: 'bw-request-message',
5546
- codec: '0x6277726d',
5547
- hashAlg: 'keccak-256'
5548
- },
5549
- {
5550
- name: 'validator-message',
5551
- codec: '0x766d',
5552
- hashAlg: 'keccak-256'
5553
- }
5503
+ const blockchainCodecs = [
5504
+ {
5505
+ name: 'leofcoin-block',
5506
+ codec: '0x6c62',
5507
+ hashAlg: 'dbl-keccak-512',
5508
+ },
5509
+ {
5510
+ name: 'leofcoin-tx',
5511
+ codec: '0x6c74',
5512
+ hashAlg: 'dbl-keccak-512',
5513
+ },
5514
+ {
5515
+ name: 'leofcoin-itx',
5516
+ codec: '0x6c69',
5517
+ hashAlg: 'keccak-512',
5518
+ },
5519
+ {
5520
+ name: 'leofcoin-pr',
5521
+ codec: '0x6c70',
5522
+ hashAlg: 'keccak-256',
5523
+ },
5524
+ {
5525
+ name: 'contract-message',
5526
+ codec: '0x63636d',
5527
+ hashAlg: 'keccak-256'
5528
+ },
5529
+ {
5530
+ name: 'transaction-message',
5531
+ codec: '0x746d',
5532
+ hashAlg: 'keccak-256'
5533
+ },
5534
+ {
5535
+ name: 'raw-transaction-message',
5536
+ codec: '0x772746d',
5537
+ hashAlg: 'keccak-256'
5538
+ },
5539
+ {
5540
+ name: 'block-message',
5541
+ codec: '0x626d',
5542
+ hashAlg: 'keccak-256'
5543
+ },
5544
+ {
5545
+ name: 'bw-message',
5546
+ codec: '0x62776d',
5547
+ hashAlg: 'keccak-256'
5548
+ },
5549
+ {
5550
+ name: 'bw-request-message',
5551
+ codec: '0x6277726d',
5552
+ hashAlg: 'keccak-256'
5553
+ },
5554
+ {
5555
+ name: 'validator-message',
5556
+ codec: '0x766d',
5557
+ hashAlg: 'keccak-256'
5558
+ }
5554
5559
  ];
5555
5560
 
5556
- const internalCodecs = [
5557
- {
5558
- name: 'disco-hash',
5559
- codec: '0x30',
5560
- hashAlg: 'dbl-keccak-256',
5561
- },
5562
- {
5563
- name: 'peernet-peer-response',
5564
- codec: '0x707072',
5565
- hashAlg: 'keccak-256',
5566
- },
5567
- {
5568
- name: 'peernet-peer',
5569
- codec: '0x7070',
5570
- hashAlg: 'keccak-256',
5571
- },
5572
- {
5573
- name: 'peernet-dht',
5574
- codec: '0x706468',
5575
- hashAlg: 'keccak-256',
5576
- },
5577
- {
5578
- name: 'peernet-dht-response',
5579
- codec: '0x706472',
5580
- hashAlg: 'keccak-256',
5581
- },
5582
- {
5583
- name: 'peernet-data',
5584
- codec: '0x706461',
5585
- hashAlg: 'keccak-256',
5586
- },
5587
- {
5588
- name: 'peernet-data-response',
5589
- codec: '0x70646172',
5590
- hashAlg: 'keccak-256',
5591
- },
5592
- {
5593
- name: 'peernet-message',
5594
- codec: '0x706d65',
5595
- hashAlg: 'keccak-256',
5596
- },
5597
- {
5598
- name: 'peernet-ps',
5599
- codec: '707073',
5600
- hashAlg: 'keccak-256',
5601
- },
5602
- {
5603
- name: 'peernet-response',
5604
- codec: '0x7072',
5605
- hashAlg: 'keccak-256',
5606
- },
5607
- {
5608
- name: 'peernet-request',
5609
- codec: '0x707271',
5610
- hashAlg: 'keccak-256',
5611
- },
5612
- {
5613
- name: 'peernet-file',
5614
- codec: '0x7066',
5615
- hashAlg: 'keccak-256',
5616
- },
5617
- {
5618
- name: 'peernet-file-response',
5619
- codec: '0x706672',
5620
- hashAlg: 'keccak-256',
5621
- }
5561
+ const internalCodecs = [
5562
+ {
5563
+ name: 'disco-hash',
5564
+ codec: '0x30',
5565
+ hashAlg: 'dbl-keccak-256',
5566
+ },
5567
+ {
5568
+ name: 'peernet-peer-response',
5569
+ codec: '0x707072',
5570
+ hashAlg: 'keccak-256',
5571
+ },
5572
+ {
5573
+ name: 'peernet-peer',
5574
+ codec: '0x7070',
5575
+ hashAlg: 'keccak-256',
5576
+ },
5577
+ {
5578
+ name: 'peernet-dht',
5579
+ codec: '0x706468',
5580
+ hashAlg: 'keccak-256',
5581
+ },
5582
+ {
5583
+ name: 'peernet-dht-response',
5584
+ codec: '0x706472',
5585
+ hashAlg: 'keccak-256',
5586
+ },
5587
+ {
5588
+ name: 'peernet-data',
5589
+ codec: '0x706461',
5590
+ hashAlg: 'keccak-256',
5591
+ },
5592
+ {
5593
+ name: 'peernet-data-response',
5594
+ codec: '0x70646172',
5595
+ hashAlg: 'keccak-256',
5596
+ },
5597
+ {
5598
+ name: 'peernet-message',
5599
+ codec: '0x706d65',
5600
+ hashAlg: 'keccak-256',
5601
+ },
5602
+ {
5603
+ name: 'peernet-ps',
5604
+ codec: '707073',
5605
+ hashAlg: 'keccak-256',
5606
+ },
5607
+ {
5608
+ name: 'peernet-response',
5609
+ codec: '0x7072',
5610
+ hashAlg: 'keccak-256',
5611
+ },
5612
+ {
5613
+ name: 'peernet-request',
5614
+ codec: '0x707271',
5615
+ hashAlg: 'keccak-256',
5616
+ },
5617
+ {
5618
+ name: 'peernet-file',
5619
+ codec: '0x7066',
5620
+ hashAlg: 'keccak-256',
5621
+ },
5622
+ {
5623
+ name: 'peernet-file-response',
5624
+ codec: '0x706672',
5625
+ hashAlg: 'keccak-256',
5626
+ }
5622
5627
  ];
5623
5628
 
5624
- const codecs = [
5625
- ...internalCodecs,
5626
- ...blockchainCodecs,
5627
- {
5628
- name: 'chat-message',
5629
- codec: '0x70636d',
5630
- hashAlg: 'dbl-keccak-256',
5631
- }
5629
+ var social = [{
5630
+ name: 'chat-message',
5631
+ codec: '0x70636d',
5632
+ hashAlg: 'dbl-keccak-256',
5633
+ }];
5634
+
5635
+ const codecs = [
5636
+ ...internalCodecs,
5637
+ ...blockchainCodecs,
5638
+ ...social
5632
5639
  ];
5633
5640
 
5634
- globalThis.peernetCodecs = globalThis.peernetCodecs || {};
5635
- const addCodec = (codecInput) => {
5636
- let { hashAlg, codec, name } = codecInput;
5637
- if (!globalThis.peernetCodecs[name])
5638
- globalThis.peernetCodecs[name] = {
5639
- hashAlg,
5640
- codec: typeof codec === 'string' ? parseInt(codec, 16) : codec
5641
- };
5642
- };
5643
- const getCodec = (name) => {
5644
- if (typeof name === 'number')
5645
- return name;
5646
- return getCodecByName(name).codec;
5647
- };
5648
- const getCodecName = (codec) => {
5649
- return Object.keys(globalThis.peernetCodecs).reduce((p, c) => {
5650
- const item = globalThis.peernetCodecs[c];
5651
- if (item.codec === codec)
5652
- return c;
5653
- else
5654
- return p;
5655
- }, undefined);
5656
- };
5657
- const getCodecByName = (name) => globalThis.peernetCodecs[name];
5658
- const getHashAlg = (name) => {
5659
- if (typeof name === 'number')
5660
- return getCodecByName(getCodecName(name)).hashAlg;
5661
- return getCodecByName(name).hashAlg;
5662
- };
5663
- const isCodec = (codec) => {
5664
- if (codec.codec !== undefined && codec.hashAlg)
5665
- return true;
5666
- return false;
5667
- };
5668
- const validateCodec = (codec) => {
5669
- if (codec.codec === undefined ||
5670
- codec.hashAlg === undefined ||
5671
- codec.name === undefined)
5672
- throw new Error(`invalid codecInput: ${codec}`);
5673
- };
5674
- for (const codec of codecs) {
5675
- addCodec(codec);
5676
- }
5677
- var utils$p = {
5678
- isCodec,
5679
- addCodec,
5680
- getCodec,
5681
- getHashAlg,
5682
- getCodecName,
5683
- validateCodec,
5684
- codecs: globalThis.peernetCodecs
5641
+ globalThis.peernetCodecs = globalThis.peernetCodecs || {};
5642
+ const addCodec = (codecInput) => {
5643
+ let { hashAlg, codec, name } = codecInput;
5644
+ if (!globalThis.peernetCodecs[name])
5645
+ globalThis.peernetCodecs[name] = {
5646
+ hashAlg,
5647
+ codec: typeof codec === 'string' ? parseInt(codec, 16) : codec
5648
+ };
5649
+ };
5650
+ const getCodec = (name) => {
5651
+ if (typeof name === 'number')
5652
+ return name;
5653
+ return getCodecByName(name).codec;
5654
+ };
5655
+ const getCodecName = (codec) => {
5656
+ return Object.keys(globalThis.peernetCodecs).reduce((p, c) => {
5657
+ const item = globalThis.peernetCodecs[c];
5658
+ if (item.codec === codec)
5659
+ return c;
5660
+ else
5661
+ return p;
5662
+ }, undefined);
5663
+ };
5664
+ const getCodecByName = (name) => globalThis.peernetCodecs[name];
5665
+ const getHashAlg = (name) => {
5666
+ if (typeof name === 'number')
5667
+ return getCodecByName(getCodecName(name)).hashAlg;
5668
+ return getCodecByName(name).hashAlg;
5669
+ };
5670
+ const isCodec = (codec) => {
5671
+ if (codec.codec !== undefined && codec.hashAlg)
5672
+ return true;
5673
+ return false;
5674
+ };
5675
+ const validateCodec = (codec) => {
5676
+ if (codec.codec === undefined ||
5677
+ codec.hashAlg === undefined ||
5678
+ codec.name === undefined)
5679
+ throw new Error(`invalid codecInput: ${codec}`);
5680
+ };
5681
+ for (const codec of codecs) {
5682
+ addCodec(codec);
5683
+ }
5684
+ var utils$p = {
5685
+ isCodec,
5686
+ addCodec,
5687
+ getCodec,
5688
+ getHashAlg,
5689
+ getCodecName,
5690
+ validateCodec,
5691
+ codecs: globalThis.peernetCodecs
5685
5692
  };
5686
5693
 
5687
5694
  /**
@@ -5713,11 +5720,11 @@ let BasicInterface$1 = class BasicInterface {
5713
5720
  // get Codec(): Codec {}
5714
5721
  protoEncode(data) {
5715
5722
  // check schema
5716
- return index$1.encode(this.proto, data);
5723
+ return index$1.encode(this.proto, data, false);
5717
5724
  }
5718
5725
  protoDecode(data) {
5719
5726
  // check schema
5720
- return index$1.decode(this.proto, data);
5727
+ return index$1.decode(this.proto, data, false);
5721
5728
  }
5722
5729
  isHex(string) {
5723
5730
  return isHex(string);
@@ -6114,14 +6121,7 @@ let FormatInterface$1 = class FormatInterface extends BasicInterface$1 {
6114
6121
  const decoded = {};
6115
6122
  if (this.keys?.length > 0) {
6116
6123
  for (const key of this.keys) {
6117
- Object.defineProperties(decoded, {
6118
- [key]: {
6119
- enumerable: true,
6120
- configurable: true,
6121
- set: (value) => data[key],
6122
- get: () => data[key]
6123
- }
6124
- });
6124
+ decoded[key] = data[key];
6125
6125
  }
6126
6126
  this.decoded = decoded;
6127
6127
  return this.encode(decoded);
@@ -20267,7 +20267,7 @@ class Identity {
20267
20267
  globalThis.peernet.selectedAccount = new TextDecoder().decode(selected);
20268
20268
  }
20269
20269
  else {
20270
- const importee = await import(/* webpackChunkName: "generate-account" */ './index-5ed49438-165d8320.js');
20270
+ const importee = await import(/* webpackChunkName: "generate-account" */ './index-437bf7cd-47a5a0fb.js');
20271
20271
  const { identity, accounts } = await importee.default(password, this.network);
20272
20272
  await globalThis.accountStore.put('public', JSON.stringify({ walletId: identity.walletId }));
20273
20273
  await globalThis.walletStore.put('version', String(1));
@@ -20438,7 +20438,7 @@ class Peernet {
20438
20438
  this.root = options.root;
20439
20439
  const { RequestMessage, ResponseMessage, PeerMessage, PeerMessageResponse, PeernetMessage, DHTMessage, DHTMessageResponse, DataMessage, DataMessageResponse, PsMessage, ChatMessage, PeernetFile
20440
20440
  // FolderMessageResponse
20441
- } = await import(/* webpackChunkName: "messages" */ './messages-c26f8e97-1e0a262e.js');
20441
+ } = await import(/* webpackChunkName: "messages" */ './messages-ccc03e41-b2b7bce7.js');
20442
20442
  /**
20443
20443
  * proto Object containing protos
20444
20444
  * @type {Object}
@@ -20517,7 +20517,7 @@ class Peernet {
20517
20517
  if (this.#starting || this.#started)
20518
20518
  return;
20519
20519
  this.#starting = true;
20520
- const importee = await import('./client-345f1d43-54202b18.js');
20520
+ const importee = await import('./client-a56e0aac-0ade57cc.js');
20521
20521
  /**
20522
20522
  * @access public
20523
20523
  * @type {PeernetClient}
@@ -20528,7 +20528,7 @@ class Peernet {
20528
20528
  }
20529
20529
  #peerLeft(peer) {
20530
20530
  for (const [id, _peer] of Object.entries(this.#connections)) {
20531
- if (_peer.id === peer.id) {
20531
+ if (_peer.id === peer.id && this.#connections[id] && !this.#connections[id].connected) {
20532
20532
  delete this.#connections[id];
20533
20533
  this.removePeer(_peer);
20534
20534
  }
@@ -1,2 +1,2 @@
1
- export { N as default } from './node-browser-63d44d8e.js';
1
+ export { N as default } from './node-browser-5484753a.js';
2
2
  import './index-640d9f36.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@leofcoin/chain",
3
- "version": "1.4.52",
3
+ "version": "1.4.54",
4
4
  "description": "Official javascript implementation",
5
5
  "exports": {
6
6
  "./node": "./exports/node.js",