tool-db 2.0.2 → 2.1.2

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.
Files changed (151) hide show
  1. package/bundle.js +1 -109743
  2. package/dist/chain/Block.d.ts +16 -8
  3. package/dist/chain/Block.js +81 -20
  4. package/dist/chain/Block.js.map +1 -1
  5. package/dist/chain/ToolChain.d.ts +18 -3
  6. package/dist/chain/ToolChain.js +191 -24
  7. package/dist/chain/ToolChain.js.map +1 -1
  8. package/dist/chain/Tx.d.ts +46 -30
  9. package/dist/chain/Tx.js +47 -104
  10. package/dist/chain/Tx.js.map +1 -1
  11. package/dist/chain/isValidChain.d.ts +1 -2
  12. package/dist/chain/isValidChain.js +24 -7
  13. package/dist/chain/isValidChain.js.map +1 -1
  14. package/dist/index.d.ts +4 -2
  15. package/dist/index.js +9 -5
  16. package/dist/index.js.map +1 -1
  17. package/{test-verify-a/000182.log → dist/infuraFilecoin.d.ts} +0 -0
  18. package/dist/infuraFilecoin.js +2 -0
  19. package/dist/infuraFilecoin.js.map +1 -0
  20. package/dist/makeTx.d.ts +1 -0
  21. package/dist/makeTx.js +27 -0
  22. package/dist/makeTx.js.map +1 -0
  23. package/dist/messageHandlers/handleCrdtGet.js +7 -12
  24. package/dist/messageHandlers/handleCrdtGet.js.map +1 -1
  25. package/dist/messageHandlers/handleCrdtPut.js +32 -16
  26. package/dist/messageHandlers/handleCrdtPut.js.map +1 -1
  27. package/dist/messageHandlers/handleGet.js +6 -12
  28. package/dist/messageHandlers/handleGet.js.map +1 -1
  29. package/dist/messageHandlers/handleJoin.js +1 -1
  30. package/dist/messageHandlers/handleJoin.js.map +1 -1
  31. package/dist/messageHandlers/handlePut.js +13 -22
  32. package/dist/messageHandlers/handlePut.js.map +1 -1
  33. package/dist/messageHandlers/handleServers.js +1 -1
  34. package/dist/messageHandlers/handleServers.js.map +1 -1
  35. package/dist/messageHandlers/handleSubscribe.js +14 -14
  36. package/dist/messageHandlers/handleSubscribe.js.map +1 -1
  37. package/dist/test.d.ts +1 -0
  38. package/dist/test.js +17 -0
  39. package/dist/test.js.map +1 -0
  40. package/dist/toolChainServer.d.ts +8 -0
  41. package/dist/toolChainServer.js +60 -0
  42. package/dist/toolChainServer.js.map +1 -0
  43. package/dist/toolDbAnonSignIn.js +1 -1
  44. package/dist/toolDbAnonSignIn.js.map +1 -1
  45. package/dist/toolDbClientOnMessage.js +3 -1
  46. package/dist/toolDbClientOnMessage.js.map +1 -1
  47. package/dist/toolDbCrdtGet.js +3 -1
  48. package/dist/toolDbCrdtGet.js.map +1 -1
  49. package/dist/toolDbCrdtPut.js +7 -12
  50. package/dist/toolDbCrdtPut.js.map +1 -1
  51. package/dist/toolDbGet.js +5 -2
  52. package/dist/toolDbGet.js.map +1 -1
  53. package/dist/toolDbKeysSignIn.js +1 -1
  54. package/dist/toolDbKeysSignIn.js.map +1 -1
  55. package/dist/toolDbNetwork.js +4 -4
  56. package/dist/toolDbNetwork.js.map +1 -1
  57. package/dist/toolDbPut.js +7 -12
  58. package/dist/toolDbPut.js.map +1 -1
  59. package/dist/toolDbSignIn.js +10 -16
  60. package/dist/toolDbSignIn.js.map +1 -1
  61. package/dist/toolDbSignUp.js +33 -52
  62. package/dist/toolDbSignUp.js.map +1 -1
  63. package/dist/toolDbVerificationWrapper.d.ts +2 -2
  64. package/dist/toolDbVerificationWrapper.js.map +1 -1
  65. package/dist/toolchain.d.ts +1 -0
  66. package/dist/toolchain.js +8 -0
  67. package/dist/toolchain.js.map +1 -0
  68. package/dist/tooldb.d.ts +14 -10
  69. package/dist/tooldb.js +24 -5
  70. package/dist/tooldb.js.map +1 -1
  71. package/dist/types/message.d.ts +8 -6
  72. package/dist/types/message.js.map +1 -1
  73. package/dist/types/tooldb.d.ts +0 -19
  74. package/dist/utils/verifyMessage.js +3 -2
  75. package/dist/utils/verifyMessage.js.map +1 -1
  76. package/dist/utils/verifyPeer.d.ts +2 -2
  77. package/dist/utils/verifyPeer.js +2 -2
  78. package/dist/utils/verifyPeer.js.map +1 -1
  79. package/package.json +5 -5
  80. package/test-alice/000425.ldb +0 -0
  81. package/test-alice/000427.ldb +0 -0
  82. package/test-alice/000430.ldb +0 -0
  83. package/test-alice/000431.log +0 -0
  84. package/test-alice/CURRENT +1 -1
  85. package/test-alice/LOG +5 -5
  86. package/test-alice/LOG.old +5 -5
  87. package/test-alice/MANIFEST-000429 +0 -0
  88. package/test-alice-speed/000236.log +0 -0
  89. package/test-alice-speed/000237.ldb +0 -0
  90. package/test-alice-speed/CURRENT +1 -1
  91. package/test-alice-speed/LOG +14 -5
  92. package/test-alice-speed/LOG.old +5 -14
  93. package/test-alice-speed/MANIFEST-000234 +0 -0
  94. package/test-bob/000425.ldb +0 -0
  95. package/test-bob/000427.ldb +0 -0
  96. package/test-bob/000430.ldb +0 -0
  97. package/test-bob/000431.log +0 -0
  98. package/test-bob/CURRENT +1 -1
  99. package/test-bob/LOG +5 -5
  100. package/test-bob/LOG.old +5 -5
  101. package/test-bob/MANIFEST-000429 +0 -0
  102. package/test-node-a/000425.ldb +0 -0
  103. package/test-node-a/000427.ldb +0 -0
  104. package/test-node-a/000430.ldb +0 -0
  105. package/test-node-a/000431.log +0 -0
  106. package/test-node-a/CURRENT +1 -1
  107. package/test-node-a/LOG +5 -5
  108. package/test-node-a/LOG.old +5 -5
  109. package/test-node-a/MANIFEST-000429 +0 -0
  110. package/test-node-b/000425.ldb +0 -0
  111. package/test-node-b/000427.ldb +0 -0
  112. package/test-node-b/000430.ldb +0 -0
  113. package/test-node-b/000431.log +0 -0
  114. package/test-node-b/CURRENT +1 -1
  115. package/test-node-b/LOG +5 -5
  116. package/test-node-b/LOG.old +5 -5
  117. package/test-node-b/MANIFEST-000429 +0 -0
  118. package/test-verify-a/000212.log +0 -0
  119. package/test-verify-a/CURRENT +1 -1
  120. package/test-verify-a/LOG +3 -3
  121. package/test-verify-a/LOG.old +3 -3
  122. package/test-verify-a/{MANIFEST-000181 → MANIFEST-000211} +0 -0
  123. package/pvutils-tests-replacement.js +0 -777
  124. package/test-alice/000269.ldb +0 -0
  125. package/test-alice/000271.ldb +0 -0
  126. package/test-alice/000274.ldb +0 -0
  127. package/test-alice/000277.ldb +0 -0
  128. package/test-alice/000278.log +0 -0
  129. package/test-alice/MANIFEST-000276 +0 -0
  130. package/test-alice-speed/000185.ldb +0 -0
  131. package/test-alice-speed/000187.ldb +0 -0
  132. package/test-alice-speed/000188.log +0 -0
  133. package/test-alice-speed/MANIFEST-000186 +0 -0
  134. package/test-bob/000269.ldb +0 -0
  135. package/test-bob/000271.ldb +0 -0
  136. package/test-bob/000274.ldb +0 -0
  137. package/test-bob/000277.ldb +0 -0
  138. package/test-bob/000278.log +0 -0
  139. package/test-bob/MANIFEST-000276 +0 -0
  140. package/test-node-a/000269.ldb +0 -0
  141. package/test-node-a/000271.ldb +0 -0
  142. package/test-node-a/000274.ldb +0 -0
  143. package/test-node-a/000277.ldb +0 -0
  144. package/test-node-a/000278.log +0 -0
  145. package/test-node-a/MANIFEST-000276 +0 -0
  146. package/test-node-b/000269.ldb +0 -0
  147. package/test-node-b/000271.ldb +0 -0
  148. package/test-node-b/000274.ldb +0 -0
  149. package/test-node-b/000277.ldb +0 -0
  150. package/test-node-b/000278.log +0 -0
  151. package/test-node-b/MANIFEST-000276 +0 -0
package/dist/chain/Tx.js CHANGED
@@ -3,109 +3,52 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- var __1 = require("..");
7
- var getTimestamp_1 = __importDefault(require("../utils/getTimestamp"));
8
- var Tx = /** @class */ (function () {
9
- function Tx(from, to, data, ammount) {
10
- this._timestamp = (0, getTimestamp_1.default)();
11
- this._data = "";
12
- this._timestamp = (0, getTimestamp_1.default)();
13
- this._nonce = 1;
14
- this._datahash = (0, __1.sha256)(data);
15
- this._txid = (0, __1.sha256)("" + from + to + this._datahash + this._nonce);
16
- this._sender = from.address;
17
- this._receiver = to;
18
- this._ammount = ammount;
19
- this._data = data;
20
- this._signature = from.sign(this._txid).signature;
6
+ exports.validateTransactionData = exports.validateNewTransaction = void 0;
7
+ var web3_1 = __importDefault(require("web3"));
8
+ var sha256_1 = __importDefault(require("../utils/sha256"));
9
+ var web3 = new web3_1.default(web3_1.default.givenProvider);
10
+ /**
11
+ * Validate a new transaction against the latest state of the chain
12
+ */
13
+ function validateNewTransaction(tx, chain) {
14
+ if (tx.fee > chain.balances[tx.adress] || 0)
15
+ return -1;
16
+ if (tx.nonce <= chain.nonces[tx.adress] || -1)
17
+ return -2;
18
+ if (tx.type === "tx") {
19
+ if (tx.fee + tx.amount > chain.balances[tx.adress] || 0)
20
+ return -3;
21
21
  }
22
- Object.defineProperty(Tx.prototype, "timestamp", {
23
- get: function () {
24
- return this._timestamp;
25
- },
26
- enumerable: false,
27
- configurable: true
28
- });
29
- Object.defineProperty(Tx.prototype, "ammount", {
30
- get: function () {
31
- return this._ammount;
32
- },
33
- enumerable: false,
34
- configurable: true
35
- });
36
- Object.defineProperty(Tx.prototype, "data", {
37
- get: function () {
38
- return this._data;
39
- },
40
- enumerable: false,
41
- configurable: true
42
- });
43
- Object.defineProperty(Tx.prototype, "sender", {
44
- get: function () {
45
- return this._sender;
46
- },
47
- enumerable: false,
48
- configurable: true
49
- });
50
- Object.defineProperty(Tx.prototype, "receiver", {
51
- get: function () {
52
- return this._receiver;
53
- },
54
- enumerable: false,
55
- configurable: true
56
- });
57
- Object.defineProperty(Tx.prototype, "verify", {
58
- get: function () {
59
- return this._receiver;
60
- },
61
- enumerable: false,
62
- configurable: true
63
- });
64
- Object.defineProperty(Tx.prototype, "txid", {
65
- get: function () {
66
- return this._txid;
67
- },
68
- enumerable: false,
69
- configurable: true
70
- });
71
- Tx.prototype.toJson = function () {
72
- return {
73
- from: this._sender,
74
- to: this._receiver,
75
- amount: this._ammount,
76
- timestamp: this._timestamp,
77
- nonce: this._nonce,
78
- datahash: this._datahash,
79
- txid: this._txid,
80
- sig: this._signature,
81
- };
82
- };
83
- Tx.sortTx = function (a, b) {
84
- if (a.timestamp < b.timestamp)
85
- return -1;
86
- if (a.timestamp > b.timestamp)
87
- return 1;
88
- if (a.txid < b.txid)
89
- return -1;
90
- if (a.txid > b.txid)
91
- return 1;
92
- return 0;
93
- };
94
- Tx.sortTxJson = function (a, b) {
95
- if (a.timestamp < b.timestamp)
96
- return -1;
97
- if (a.timestamp > b.timestamp)
98
- return 1;
99
- if (a.txid < b.txid)
100
- return -1;
101
- if (a.txid > b.txid)
102
- return 1;
103
- return 0;
104
- };
105
- Tx.fn = function () {
106
- return "";
107
- };
108
- return Tx;
109
- }());
110
- exports.default = Tx;
22
+ return validateTransactionData(tx);
23
+ }
24
+ exports.validateNewTransaction = validateNewTransaction;
25
+ /**
26
+ * Validate a transaction's data, regardless of the chain state
27
+ */
28
+ function validateTransactionData(tx) {
29
+ var hash = (0, sha256_1.default)(tx.adress + tx.timestamp + tx.type);
30
+ if (hash !== tx.id)
31
+ return -4;
32
+ var verify = web3.eth.accounts.recover(tx.adress, tx.sig);
33
+ if (!verify)
34
+ return -5;
35
+ if (tx.type === "put") {
36
+ if (tx.key.length > 128)
37
+ return -6;
38
+ var s = "";
39
+ try {
40
+ s = JSON.stringify(tx.data);
41
+ }
42
+ catch (e) {
43
+ return -7;
44
+ }
45
+ if (s.length > 2048)
46
+ return -8;
47
+ }
48
+ if (tx.type === "name") {
49
+ if (tx.name.length > 64)
50
+ return -9;
51
+ }
52
+ }
53
+ exports.validateTransactionData = validateTransactionData;
111
54
  //# sourceMappingURL=Tx.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Tx.js","sourceRoot":"","sources":["../../src/chain/Tx.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Tx.js","sourceRoot":"","sources":["../../src/chain/Tx.ts"],"names":[],"mappings":";;;;;;AAIA,8CAAsB;AACtB,2DAAqC;AA8CrC,IAAM,IAAI,GAAG,IAAI,cAAE,CAAC,cAAE,CAAC,aAAa,CAAC,CAAC;AAEtC;;GAEG;AACH,SAAgB,sBAAsB,CAAC,EAAgB,EAAE,KAAgB;IACvE,IAAI,EAAE,CAAC,GAAG,GAAG,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;QAAE,OAAO,CAAC,CAAC,CAAC;IAEvD,IAAI,EAAE,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAAE,OAAO,CAAC,CAAC,CAAC;IAEzD,IAAI,EAAE,CAAC,IAAI,KAAK,IAAI,EAAE;QACpB,IAAI,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC,CAAC;KACpE;IAED,OAAO,uBAAuB,CAAC,EAAE,CAAC,CAAC;AACrC,CAAC;AAVD,wDAUC;AAED;;GAEG;AACH,SAAgB,uBAAuB,CAAC,EAAgB;IACtD,IAAM,IAAI,GAAG,IAAA,gBAAM,EAAC,EAAE,CAAC,MAAM,GAAG,EAAE,CAAC,SAAS,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACxD,IAAI,IAAI,KAAK,EAAE,CAAC,EAAE;QAAE,OAAO,CAAC,CAAC,CAAC;IAE9B,IAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IAC5D,IAAI,CAAC,MAAM;QAAE,OAAO,CAAC,CAAC,CAAC;IAEvB,IAAI,EAAE,CAAC,IAAI,KAAK,KAAK,EAAE;QACrB,IAAI,EAAE,CAAC,GAAG,CAAC,MAAM,GAAG,GAAG;YAAE,OAAO,CAAC,CAAC,CAAC;QAEnC,IAAI,CAAC,GAAG,EAAE,CAAC;QACX,IAAI;YACF,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;SAC7B;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,CAAC,CAAC,CAAC;SACX;QAED,IAAI,CAAC,CAAC,MAAM,GAAG,IAAI;YAAE,OAAO,CAAC,CAAC,CAAC;KAChC;IAED,IAAI,EAAE,CAAC,IAAI,KAAK,MAAM,EAAE;QACtB,IAAI,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,EAAE;YAAE,OAAO,CAAC,CAAC,CAAC;KACpC;AACH,CAAC;AAvBD,0DAuBC"}
@@ -1,2 +1 @@
1
- import Block from "./Block";
2
- export default function isValidChain(chain: Block[]): boolean;
1
+ export default function isValidChain(chain: string[]): boolean;
@@ -1,18 +1,35 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
4
20
  };
5
21
  Object.defineProperty(exports, "__esModule", { value: true });
6
- var Block_1 = __importDefault(require("./Block"));
22
+ var Block_1 = __importStar(require("./Block"));
7
23
  function isValidChain(chain) {
8
- if (JSON.stringify(chain[0]) !== JSON.stringify(Block_1.default.genesis()))
24
+ if ((0, Block_1.decodeBlock)(chain[0]).height !== 0)
9
25
  return false;
10
26
  for (var i = 1; i < chain.length; i++) {
11
- var block = chain[i];
12
- var lastBlock = chain[i - 1];
27
+ var block = (0, Block_1.decodeBlock)(chain[i]);
28
+ var lastBlock = (0, Block_1.decodeBlock)(chain[i - 1]);
13
29
  if (block.lastHash !== lastBlock.hash ||
14
- block.hash !== Block_1.default.blockHash(block))
30
+ block.hash !== Block_1.default.blockHash(block)) {
15
31
  return false;
32
+ }
16
33
  }
17
34
  return true;
18
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"isValidChain.js","sourceRoot":"","sources":["../../src/chain/isValidChain.ts"],"names":[],"mappings":";;;;;AAAA,kDAA4B;AAE5B,SAAwB,YAAY,CAAC,KAAc;IACjD,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,eAAK,CAAC,OAAO,EAAE,CAAC;QAC9D,OAAO,KAAK,CAAC;IAEf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACrC,IAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACvB,IAAM,SAAS,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC/B,IACE,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,IAAI;YACjC,KAAK,CAAC,IAAI,KAAK,eAAK,CAAC,SAAS,CAAC,KAAK,CAAC;YAErC,OAAO,KAAK,CAAC;KAChB;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAfD,+BAeC"}
1
+ {"version":3,"file":"isValidChain.js","sourceRoot":"","sources":["../../src/chain/isValidChain.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,+CAA6C;AAE7C,SAAwB,YAAY,CAAC,KAAe;IAClD,IAAI,IAAA,mBAAW,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAErD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACrC,IAAM,KAAK,GAAG,IAAA,mBAAW,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACpC,IAAM,SAAS,GAAG,IAAA,mBAAW,EAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAE5C,IACE,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,IAAI;YACjC,KAAK,CAAC,IAAI,KAAK,eAAK,CAAC,SAAS,CAAC,KAAK,CAAC,EACrC;YACA,OAAO,KAAK,CAAC;SACd;KACF;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAhBD,+BAgBC"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,9 @@
1
1
  export * from "./types/tooldb";
2
2
  export * from "./types/message";
3
+ export { default as BaseCrdt } from "./crdt/baseCrdt";
4
+ export { default as CounterCrdt } from "./crdt/counterCrdt";
5
+ export { default as ListCrdt } from "./crdt/listCrdt";
6
+ export { default as MapCrdt } from "./crdt/mapCrdt";
3
7
  export { default as proofOfWork } from "./utils/proofOfWork";
4
8
  export { default as sha1 } from "./utils/sha1";
5
9
  export { default as sha256 } from "./utils/sha256";
@@ -14,8 +18,6 @@ export { default as arrayBufferToHex } from "./utils/encoding/arrayBufferToHex";
14
18
  export { default as hexToArrayBuffer } from "./utils/encoding/hexToArrayBuffer";
15
19
  export { default as hexToString } from "./utils/encoding/hexToString";
16
20
  export { default as hexToUint8 } from "./utils/encoding/hexToUint8";
17
- export { default as BaseCrdt } from "./crdt/baseCrdt";
18
- export { default as MapCrdt } from "./crdt/mapCrdt";
19
21
  export { default as decryptWithPass } from "./utils/crypto/decryptWithPass";
20
22
  export { default as encryptWithPass } from "./utils/crypto/encryptWithPass";
21
23
  export { default as generateKeyFromPassword } from "./utils/crypto/generateKeyFromPassword";
package/dist/index.js CHANGED
@@ -15,13 +15,21 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
15
15
  return (mod && mod.__esModule) ? mod : { "default": mod };
16
16
  };
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.ToolDb = exports.handleSubscribe = exports.handleQuery = exports.handlePut = exports.handlePong = exports.handlePing = exports.handleGet = exports.handleCrdtPut = exports.handleCrdtGet = exports.toolDbWebrtc = exports.toolDbNetwork = exports.generateKeyFromPassword = exports.encryptWithPass = exports.decryptWithPass = exports.MapCrdt = exports.BaseCrdt = exports.hexToUint8 = exports.hexToString = exports.hexToArrayBuffer = exports.arrayBufferToHex = exports.arrayBufferToString = exports.verifyPeer = exports.verifyMessage = exports.stringToArrayBuffer = exports.textRandom = exports.randomAnimal = exports.generateIv = exports.sha256 = exports.sha1 = exports.proofOfWork = void 0;
18
+ exports.ToolDb = exports.handleSubscribe = exports.handleQuery = exports.handlePut = exports.handlePong = exports.handlePing = exports.handleGet = exports.handleCrdtPut = exports.handleCrdtGet = exports.toolDbWebrtc = exports.toolDbNetwork = exports.generateKeyFromPassword = exports.encryptWithPass = exports.decryptWithPass = exports.hexToUint8 = exports.hexToString = exports.hexToArrayBuffer = exports.arrayBufferToHex = exports.arrayBufferToString = exports.verifyPeer = exports.verifyMessage = exports.stringToArrayBuffer = exports.textRandom = exports.randomAnimal = exports.generateIv = exports.sha256 = exports.sha1 = exports.proofOfWork = exports.MapCrdt = exports.ListCrdt = exports.CounterCrdt = exports.BaseCrdt = void 0;
19
19
  __exportStar(require("./types/tooldb"), exports);
20
20
  __exportStar(require("./types/message"), exports);
21
21
  global.Buffer = global.Buffer || require("buffer").Buffer;
22
22
  if (typeof window === "undefined") {
23
23
  global.crypto = require("crypto").webcrypto;
24
24
  }
25
+ var baseCrdt_1 = require("./crdt/baseCrdt");
26
+ Object.defineProperty(exports, "BaseCrdt", { enumerable: true, get: function () { return __importDefault(baseCrdt_1).default; } });
27
+ var counterCrdt_1 = require("./crdt/counterCrdt");
28
+ Object.defineProperty(exports, "CounterCrdt", { enumerable: true, get: function () { return __importDefault(counterCrdt_1).default; } });
29
+ var listCrdt_1 = require("./crdt/listCrdt");
30
+ Object.defineProperty(exports, "ListCrdt", { enumerable: true, get: function () { return __importDefault(listCrdt_1).default; } });
31
+ var mapCrdt_1 = require("./crdt/mapCrdt");
32
+ Object.defineProperty(exports, "MapCrdt", { enumerable: true, get: function () { return __importDefault(mapCrdt_1).default; } });
25
33
  var proofOfWork_1 = require("./utils/proofOfWork");
26
34
  Object.defineProperty(exports, "proofOfWork", { enumerable: true, get: function () { return __importDefault(proofOfWork_1).default; } });
27
35
  var sha1_1 = require("./utils/sha1");
@@ -50,10 +58,6 @@ var hexToString_1 = require("./utils/encoding/hexToString");
50
58
  Object.defineProperty(exports, "hexToString", { enumerable: true, get: function () { return __importDefault(hexToString_1).default; } });
51
59
  var hexToUint8_1 = require("./utils/encoding/hexToUint8");
52
60
  Object.defineProperty(exports, "hexToUint8", { enumerable: true, get: function () { return __importDefault(hexToUint8_1).default; } });
53
- var baseCrdt_1 = require("./crdt/baseCrdt");
54
- Object.defineProperty(exports, "BaseCrdt", { enumerable: true, get: function () { return __importDefault(baseCrdt_1).default; } });
55
- var mapCrdt_1 = require("./crdt/mapCrdt");
56
- Object.defineProperty(exports, "MapCrdt", { enumerable: true, get: function () { return __importDefault(mapCrdt_1).default; } });
57
61
  var decryptWithPass_1 = require("./utils/crypto/decryptWithPass");
58
62
  Object.defineProperty(exports, "decryptWithPass", { enumerable: true, get: function () { return __importDefault(decryptWithPass_1).default; } });
59
63
  var encryptWithPass_1 = require("./utils/crypto/encryptWithPass");
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,6BAA6B;AAC7B,mCAAmC;;;;;;;;;;;;;;;;AAEnC,iDAA+B;AAC/B,kDAAgC;AAEhC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC;AAE1D,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;IACjC,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC;CAC7C;AAED,mDAA6D;AAApD,2HAAA,OAAO,OAAe;AAC/B,qCAA+C;AAAtC,6GAAA,OAAO,OAAQ;AACxB,yCAAmD;AAA1C,iHAAA,OAAO,OAAU;AAE1B,iDAA2D;AAAlD,yHAAA,OAAO,OAAc;AAC9B,qDAA+D;AAAtD,6HAAA,OAAO,OAAgB;AAChC,iDAA2D;AAAlD,yHAAA,OAAO,OAAc;AAC9B,4EAAsF;AAA7E,2IAAA,OAAO,OAAuB;AACvC,uDAAiE;AAAxD,+HAAA,OAAO,OAAiB;AACjC,iDAA2D;AAAlD,yHAAA,OAAO,OAAc;AAE9B,4EAAsF;AAA7E,2IAAA,OAAO,OAAuB;AACvC,sEAAgF;AAAvE,qIAAA,OAAO,OAAoB;AACpC,sEAAgF;AAAvE,qIAAA,OAAO,OAAoB;AACpC,4DAAsE;AAA7D,2HAAA,OAAO,OAAe;AAC/B,0DAAoE;AAA3D,yHAAA,OAAO,OAAc;AAE9B,4CAAsD;AAA7C,qHAAA,OAAO,OAAY;AAC5B,0CAAoD;AAA3C,mHAAA,OAAO,OAAW;AAE3B,kEAA4E;AAAnE,mIAAA,OAAO,OAAmB;AACnC,kEAA4E;AAAnE,mIAAA,OAAO,OAAmB;AACnC,kFAA4F;AAAnF,mJAAA,OAAO,OAA2B;AAE3C,iDAA2D;AAAlD,+HAAA,OAAO,OAAiB;AACjC,+CAAyD;AAAhD,6HAAA,OAAO,OAAgB;AAEhC,iEAA2E;AAAlE,+HAAA,OAAO,OAAiB;AACjC,iEAA2E;AAAlE,+HAAA,OAAO,OAAiB;AACjC,yDAAmE;AAA1D,uHAAA,OAAO,OAAa;AAC7B,2DAAqE;AAA5D,yHAAA,OAAO,OAAc;AAC9B,2DAAqE;AAA5D,yHAAA,OAAO,OAAc;AAC9B,yDAAmE;AAA1D,uHAAA,OAAO,OAAa;AAC7B,6DAAuE;AAA9D,2HAAA,OAAO,OAAe;AAC/B,qEAA+E;AAAtE,mIAAA,OAAO,OAAmB;AAEnC,mCAA6C;AAApC,iHAAA,OAAO,OAAU"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,6BAA6B;AAC7B,mCAAmC;;;;;;;;;;;;;;;;AAEnC,iDAA+B;AAC/B,kDAAgC;AAEhC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC;AAE1D,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;IACjC,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC;CAC7C;AAED,4CAAsD;AAA7C,qHAAA,OAAO,OAAY;AAC5B,kDAA4D;AAAnD,2HAAA,OAAO,OAAe;AAC/B,4CAAsD;AAA7C,qHAAA,OAAO,OAAY;AAC5B,0CAAoD;AAA3C,mHAAA,OAAO,OAAW;AAE3B,mDAA6D;AAApD,2HAAA,OAAO,OAAe;AAC/B,qCAA+C;AAAtC,6GAAA,OAAO,OAAQ;AACxB,yCAAmD;AAA1C,iHAAA,OAAO,OAAU;AAE1B,iDAA2D;AAAlD,yHAAA,OAAO,OAAc;AAC9B,qDAA+D;AAAtD,6HAAA,OAAO,OAAgB;AAChC,iDAA2D;AAAlD,yHAAA,OAAO,OAAc;AAC9B,4EAAsF;AAA7E,2IAAA,OAAO,OAAuB;AACvC,uDAAiE;AAAxD,+HAAA,OAAO,OAAiB;AACjC,iDAA2D;AAAlD,yHAAA,OAAO,OAAc;AAE9B,4EAAsF;AAA7E,2IAAA,OAAO,OAAuB;AACvC,sEAAgF;AAAvE,qIAAA,OAAO,OAAoB;AACpC,sEAAgF;AAAvE,qIAAA,OAAO,OAAoB;AACpC,4DAAsE;AAA7D,2HAAA,OAAO,OAAe;AAC/B,0DAAoE;AAA3D,yHAAA,OAAO,OAAc;AAE9B,kEAA4E;AAAnE,mIAAA,OAAO,OAAmB;AACnC,kEAA4E;AAAnE,mIAAA,OAAO,OAAmB;AACnC,kFAA4F;AAAnF,mJAAA,OAAO,OAA2B;AAE3C,iDAA2D;AAAlD,+HAAA,OAAO,OAAiB;AACjC,+CAAyD;AAAhD,6HAAA,OAAO,OAAgB;AAEhC,iEAA2E;AAAlE,+HAAA,OAAO,OAAiB;AACjC,iEAA2E;AAAlE,+HAAA,OAAO,OAAiB;AACjC,yDAAmE;AAA1D,uHAAA,OAAO,OAAa;AAC7B,2DAAqE;AAA5D,yHAAA,OAAO,OAAc;AAC9B,2DAAqE;AAA5D,yHAAA,OAAO,OAAc;AAC9B,yDAAmE;AAA1D,uHAAA,OAAO,OAAa;AAC7B,6DAAuE;AAA9D,2HAAA,OAAO,OAAe;AAC/B,qEAA+E;AAAtE,mIAAA,OAAO,OAAmB;AAEnC,mCAA6C;AAApC,iHAAA,OAAO,OAAU"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=infuraFilecoin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"infuraFilecoin.js","sourceRoot":"","sources":["../src/infuraFilecoin.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export {};
package/dist/makeTx.js ADDED
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var web3_1 = __importDefault(require("web3"));
7
+ var getTimestamp_1 = __importDefault(require("./utils/getTimestamp"));
8
+ var sha256_1 = __importDefault(require("./utils/sha256"));
9
+ var web3 = new web3_1.default(web3_1.default.givenProvider);
10
+ var account = web3.eth.accounts.create();
11
+ var timestamp = (0, getTimestamp_1.default)();
12
+ var txid = (0, sha256_1.default)(account.address + timestamp + "put");
13
+ var tx = {
14
+ adress: account.address,
15
+ id: txid,
16
+ timestamp: timestamp,
17
+ sig: account.sign(txid).signature,
18
+ type: "put",
19
+ key: "testkey",
20
+ nonce: 0,
21
+ fee: 0,
22
+ data: {
23
+ message: "hello world",
24
+ },
25
+ };
26
+ console.log(tx);
27
+ //# sourceMappingURL=makeTx.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"makeTx.js","sourceRoot":"","sources":["../src/makeTx.ts"],"names":[],"mappings":";;;;;AAAA,8CAAsB;AAEtB,sEAAgD;AAChD,0DAAoC;AAEpC,IAAM,IAAI,GAAG,IAAI,cAAE,CAAC,cAAE,CAAC,aAAa,CAAC,CAAC;AAEtC,IAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;AAE3C,IAAM,SAAS,GAAG,IAAA,sBAAY,GAAE,CAAC;AACjC,IAAM,IAAI,GAAG,IAAA,gBAAM,EAAC,OAAO,CAAC,OAAO,GAAG,SAAS,GAAG,KAAK,CAAC,CAAC;AAEzD,IAAM,EAAE,GAAiB;IACvB,MAAM,EAAE,OAAO,CAAC,OAAO;IACvB,EAAE,EAAE,IAAI;IACR,SAAS,WAAA;IACT,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,SAAS;IACjC,IAAI,EAAE,KAAK;IACX,GAAG,EAAE,SAAS;IACd,KAAK,EAAE,CAAC;IACR,GAAG,EAAE,CAAC;IACN,IAAI,EAAE;QACJ,OAAO,EAAE,aAAa;KACvB;CACF,CAAC;AAEF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC"}
@@ -1,23 +1,18 @@
1
1
  "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
2
  Object.defineProperty(exports, "__esModule", { value: true });
14
3
  function handleCrdtGet(message, remotePeerId) {
15
4
  var _this = this;
5
+ this.emit("crdtget", message);
16
6
  this.store.get(message.key, function (err, data) {
17
7
  if (data) {
18
8
  try {
19
9
  // Use the id of the get so the other client knows we are replying
20
- var oldData = __assign(__assign({ type: "putCrdt" }, JSON.parse(data)), { to: [], id: message.id });
10
+ var oldData = {
11
+ type: "crdtPut",
12
+ data: JSON.parse(data),
13
+ to: [],
14
+ id: message.id,
15
+ };
21
16
  _this.network.sendToClientId(remotePeerId, oldData);
22
17
  }
23
18
  catch (e) {
@@ -1 +1 @@
1
- {"version":3,"file":"handleCrdtGet.js","sourceRoot":"","sources":["../../src/messageHandlers/handleCrdtGet.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAGA,SAAwB,aAAa,CAEnC,OAAuB,EACvB,YAAoB;IAHtB,iBA2BC;IAtBC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,UAAC,GAAG,EAAE,IAAI;QACpC,IAAI,IAAI,EAAE;YACR,IAAI;gBACF,kEAAkE;gBAClE,IAAM,OAAO,GAAG,oBACd,IAAI,EAAE,SAAS,IACZ,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KACnB,EAAE,EAAE,EAAE,EACN,EAAE,EAAE,OAAO,CAAC,EAAE,GACG,CAAC;gBACpB,KAAI,CAAC,OAAO,CAAC,cAAc,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;aACpD;YAAC,OAAO,CAAC,EAAE;gBACV,qBAAqB;gBACrB,aAAa;aACd;SACF;aAAM;YACL,IAAI,KAAI,CAAC,OAAO,CAAC,KAAK,EAAE;gBACtB,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;aACpE;YACD,KAAI,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;SAC9C;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AA3BD,gCA2BC"}
1
+ {"version":3,"file":"handleCrdtGet.js","sourceRoot":"","sources":["../../src/messageHandlers/handleCrdtGet.ts"],"names":[],"mappings":";;AAGA,SAAwB,aAAa,CAEnC,OAAuB,EACvB,YAAoB;IAHtB,iBA4BC;IAvBC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC9B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,UAAC,GAAG,EAAE,IAAI;QACpC,IAAI,IAAI,EAAE;YACR,IAAI;gBACF,kEAAkE;gBAClE,IAAM,OAAO,GAAG;oBACd,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;oBACtB,EAAE,EAAE,EAAE;oBACN,EAAE,EAAE,OAAO,CAAC,EAAE;iBACG,CAAC;gBACpB,KAAI,CAAC,OAAO,CAAC,cAAc,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;aACpD;YAAC,OAAO,CAAC,EAAE;gBACV,qBAAqB;gBACrB,aAAa;aACd;SACF;aAAM;YACL,IAAI,KAAI,CAAC,OAAO,CAAC,KAAK,EAAE;gBACtB,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;aACpE;YACD,KAAI,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;SAC9C;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AA5BD,gCA4BC"}
@@ -17,35 +17,51 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  var message_1 = require("../types/message");
18
18
  var toolDbVerificationWrapper_1 = __importDefault(require("../toolDbVerificationWrapper"));
19
19
  var mapCrdt_1 = __importDefault(require("../crdt/mapCrdt"));
20
+ var baseCrdt_1 = require("../crdt/baseCrdt");
21
+ var listCrdt_1 = __importDefault(require("../crdt/listCrdt"));
22
+ var counterCrdt_1 = __importDefault(require("../crdt/counterCrdt"));
20
23
  function handleCrdtPut(message, remotePeerId) {
21
24
  var _this = this;
22
- toolDbVerificationWrapper_1.default.call(this, message).then(function (value) {
25
+ toolDbVerificationWrapper_1.default.call(this, message.data).then(function (value) {
23
26
  // console.log("Verification wrapper result: ", value, message.k);
24
27
  if (value === message_1.VerifyResult.Verified) {
28
+ _this.emit("crdtput", message);
29
+ _this.emit("data", message.data);
25
30
  _this.emit("verified", message);
26
31
  // relay to other servers !!!
27
32
  _this.network.sendToAll(message, true);
28
- _this.store.get(message.k, function (err, oldData) {
33
+ _this.store.get(message.data.k, function (err, oldData) {
29
34
  if (oldData) {
30
- var parsedOldData = __assign({ type: "crdtPut" }, JSON.parse(oldData));
35
+ var parsedOldData = JSON.parse(oldData);
31
36
  var newMessage = message;
32
37
  // Merge old document with new data incoming and save it
33
38
  // Add handles for all kinds of CRDT we add
34
- if (parsedOldData.crdt === "MAP") {
35
- var oldDoc = new mapCrdt_1.default(_this.getAddress() || "", parsedOldData.v);
36
- oldDoc.mergeChanges(message.v);
37
- var changesMerged = oldDoc.getChanges();
38
- newMessage = __assign(__assign({}, message), { v: changesMerged });
39
+ var oldDoc = void 0;
40
+ if (parsedOldData.c === baseCrdt_1.CRDT_MAP) {
41
+ oldDoc = new mapCrdt_1.default(_this.getAddress() || "", parsedOldData.v);
39
42
  }
40
- if (parsedOldData.t < message.t) {
41
- var key = newMessage.k;
42
- _this.triggerKeyListener(key, newMessage);
43
- _this.store.put(newMessage.k, JSON.stringify(newMessage), function (err, data) {
43
+ if (parsedOldData.c === baseCrdt_1.CRDT_LIST) {
44
+ oldDoc = new listCrdt_1.default(_this.getAddress() || "", parsedOldData.v);
45
+ }
46
+ if (parsedOldData.c === baseCrdt_1.CRDT_COUNTER) {
47
+ oldDoc = new counterCrdt_1.default(_this.getAddress() || "", parsedOldData.v);
48
+ }
49
+ var changesMerged = [];
50
+ if (oldDoc) {
51
+ oldDoc.mergeChanges(message.data.v);
52
+ changesMerged = oldDoc.getChanges();
53
+ }
54
+ newMessage = __assign({}, message);
55
+ newMessage.data.v = changesMerged;
56
+ if (parsedOldData.t < message.data.t) {
57
+ var key = newMessage.data.k;
58
+ _this.triggerKeyListener(key, newMessage.data);
59
+ _this.store.put(newMessage.data.k, JSON.stringify(newMessage.data), function (err, data) {
44
60
  //
45
61
  });
46
62
  }
47
63
  else {
48
- var key = message.k;
64
+ var key = message.data.k;
49
65
  _this.triggerKeyListener(key, parsedOldData);
50
66
  }
51
67
  // } else if (this.options.debug) {
@@ -55,9 +71,9 @@ function handleCrdtPut(message, remotePeerId) {
55
71
  // }
56
72
  }
57
73
  else {
58
- var key = message.k;
59
- _this.triggerKeyListener(key, message);
60
- _this.store.put(message.k, JSON.stringify(message), function (err, data) {
74
+ var key = message.data.k;
75
+ _this.triggerKeyListener(key, message.data);
76
+ _this.store.put(message.data.k, JSON.stringify(message.data), function (err, data) {
61
77
  //
62
78
  });
63
79
  }
@@ -1 +1 @@
1
- {"version":3,"file":"handleCrdtPut.js","sourceRoot":"","sources":["../../src/messageHandlers/handleCrdtPut.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,4CAAgE;AAChE,2FAAqE;AACrE,4DAAsC;AAEtC,SAAwB,aAAa,CAEnC,OAAuB,EACvB,YAAoB;IAHtB,iBAmEC;IA9DC,mCAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,UAAC,KAAK;QACvD,kEAAkE;QAClE,IAAI,KAAK,KAAK,sBAAY,CAAC,QAAQ,EAAE;YACnC,KAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAC/B,6BAA6B;YAC7B,KAAI,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAEtC,KAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,UAAC,GAAG,EAAE,OAAgB;gBAC9C,IAAI,OAAO,EAAE;oBACX,IAAM,aAAa,cACjB,IAAI,EAAE,SAAS,IACZ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CACvB,CAAC;oBAEF,IAAI,UAAU,GAAG,OAAO,CAAC;oBAEzB,wDAAwD;oBACxD,2CAA2C;oBAC3C,IAAI,aAAa,CAAC,IAAI,KAAK,KAAK,EAAE;wBAChC,IAAM,MAAM,GAAG,IAAI,iBAAO,CACxB,KAAI,CAAC,UAAU,EAAE,IAAI,EAAE,EACvB,aAAa,CAAC,CAAC,CAChB,CAAC;wBACF,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;wBAC/B,IAAM,aAAa,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;wBAC1C,UAAU,yBACL,OAAO,KACV,CAAC,EAAE,aAAa,GACjB,CAAC;qBACH;oBAED,IAAI,aAAa,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE;wBAC/B,IAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC;wBACzB,KAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;wBACzC,KAAI,CAAC,KAAK,CAAC,GAAG,CACZ,UAAU,CAAC,CAAC,EACZ,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAC1B,UAAC,GAAG,EAAE,IAAI;4BACR,EAAE;wBACJ,CAAC,CACF,CAAC;qBACH;yBAAM;wBACL,IAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;wBACtB,KAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;qBAC7C;oBACD,mCAAmC;oBACnC,iBAAiB;oBACjB,4FAA4F;oBAC5F,OAAO;oBACP,IAAI;iBACL;qBAAM;oBACL,IAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;oBACtB,KAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;oBACtC,KAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,UAAC,GAAG,EAAE,IAAI;wBAC3D,EAAE;oBACJ,CAAC,CAAC,CAAC;iBACJ;YACH,CAAC,CAAC,CAAC;SACJ;aAAM;YACL,OAAO,CAAC,IAAI,CAAC,sBAAsB,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;SACtD;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAnED,gCAmEC"}
1
+ {"version":3,"file":"handleCrdtPut.js","sourceRoot":"","sources":["../../src/messageHandlers/handleCrdtPut.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,4 @@
1
1
  "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
2
  Object.defineProperty(exports, "__esModule", { value: true });
14
3
  function handleGet(message, remotePeerId) {
15
4
  var _this = this;
@@ -17,7 +6,12 @@ function handleGet(message, remotePeerId) {
17
6
  if (data) {
18
7
  try {
19
8
  // Use the id of the get so the other client knows we are replying
20
- var oldData = __assign(__assign({ type: "put" }, JSON.parse(data)), { to: [], id: message.id });
9
+ var oldData = {
10
+ type: "put",
11
+ data: JSON.parse(data),
12
+ to: [],
13
+ id: message.id,
14
+ };
21
15
  _this.network.sendToClientId(remotePeerId, oldData);
22
16
  }
23
17
  catch (e) {
@@ -1 +1 @@
1
- {"version":3,"file":"handleGet.js","sourceRoot":"","sources":["../../src/messageHandlers/handleGet.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAGA,SAAwB,SAAS,CAE/B,OAAmB,EACnB,YAAoB;IAHtB,iBA2BC;IAtBC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,UAAC,GAAG,EAAE,IAAI;QACpC,IAAI,IAAI,EAAE;YACR,IAAI;gBACF,kEAAkE;gBAClE,IAAM,OAAO,GAAG,oBACd,IAAI,EAAE,KAAK,IACR,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KACnB,EAAE,EAAE,EAAE,EACN,EAAE,EAAE,OAAO,CAAC,EAAE,GACD,CAAC;gBAChB,KAAI,CAAC,OAAO,CAAC,cAAc,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;aACpD;YAAC,OAAO,CAAC,EAAE;gBACV,qBAAqB;gBACrB,aAAa;aACd;SACF;aAAM;YACL,IAAI,KAAI,CAAC,OAAO,CAAC,KAAK,EAAE;gBACtB,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;aACpE;YACD,KAAI,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;SAC9C;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AA3BD,4BA2BC"}
1
+ {"version":3,"file":"handleGet.js","sourceRoot":"","sources":["../../src/messageHandlers/handleGet.ts"],"names":[],"mappings":";;AAGA,SAAwB,SAAS,CAE/B,OAAmB,EACnB,YAAoB;IAHtB,iBA2BC;IAtBC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,UAAC,GAAG,EAAE,IAAI;QACpC,IAAI,IAAI,EAAE;YACR,IAAI;gBACF,kEAAkE;gBAClE,IAAM,OAAO,GAAG;oBACd,IAAI,EAAE,KAAK;oBACX,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;oBACtB,EAAE,EAAE,EAAE;oBACN,EAAE,EAAE,OAAO,CAAC,EAAE;iBACD,CAAC;gBAChB,KAAI,CAAC,OAAO,CAAC,cAAc,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;aACpD;YAAC,OAAO,CAAC,EAAE;gBACV,qBAAqB;gBACrB,aAAa;aACd;SACF;aAAM;YACL,IAAI,KAAI,CAAC,OAAO,CAAC,KAAK,EAAE;gBACtB,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;aACpE;YACD,KAAI,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;SAC9C;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AA3BD,4BA2BC"}
@@ -5,7 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  var verifyPeer_1 = __importDefault(require("../utils/verifyPeer"));
7
7
  function handleJoin(message, remotePeerId) {
8
- var verified = (0, verifyPeer_1.default)(this.web3, message.peer);
8
+ var verified = (0, verifyPeer_1.default)(this, message.peer);
9
9
  // Add this peer to our list of peers
10
10
  if (verified) {
11
11
  var filteredPeers = this.peers.filter(function (p) { return p.adress !== message.peer.adress; });
@@ -1 +1 @@
1
- {"version":3,"file":"handleJoin.js","sourceRoot":"","sources":["../../src/messageHandlers/handleJoin.ts"],"names":[],"mappings":";;;;;AAEA,mEAA6C;AAE7C,SAAwB,UAAU,CAEhC,OAAoB,EACpB,YAAoB;IAEpB,IAAM,QAAQ,GAAG,IAAA,oBAAU,EAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,qCAAqC;IACrC,IAAI,QAAQ,EAAE;QACZ,IAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CACrC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,MAAM,EAAhC,CAAgC,CACxC,CAAC;QACF,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE;YACxE,4BAA4B;YAC5B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC9B,8BAA8B;YAC9B,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,YAAY,EAAE;gBACxC,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,KAAK,EAA9B,CAA8B,CAAC;gBACjE,EAAE,EAAE,OAAO,CAAC,EAAE;aACG,CAAC,CAAC;YAErB,yDAAyD;YACzD,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;gBACvB,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;aACvC;SACF;KACF;SAAM;QACL,OAAO,CAAC,IAAI,CAAC,sCAAsC,EAAE,OAAO,CAAC,CAAC;KAC/D;AACH,CAAC;AA7BD,6BA6BC"}
1
+ {"version":3,"file":"handleJoin.js","sourceRoot":"","sources":["../../src/messageHandlers/handleJoin.ts"],"names":[],"mappings":";;;;;AAEA,mEAA6C;AAE7C,SAAwB,UAAU,CAEhC,OAAoB,EACpB,YAAoB;IAEpB,IAAM,QAAQ,GAAG,IAAA,oBAAU,EAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,qCAAqC;IACrC,IAAI,QAAQ,EAAE;QACZ,IAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CACrC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,MAAM,EAAhC,CAAgC,CACxC,CAAC;QACF,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE;YACxE,4BAA4B;YAC5B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC9B,8BAA8B;YAC9B,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,YAAY,EAAE;gBACxC,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,KAAK,EAA9B,CAA8B,CAAC;gBACjE,EAAE,EAAE,OAAO,CAAC,EAAE;aACG,CAAC,CAAC;YAErB,yDAAyD;YACzD,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;gBACvB,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;aACvC;SACF;KACF;SAAM;QACL,OAAO,CAAC,IAAI,CAAC,sCAAsC,EAAE,OAAO,CAAC,CAAC;KAC/D;AACH,CAAC;AA7BD,6BA6BC"}
@@ -1,15 +1,4 @@
1
1
  "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
14
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
15
4
  };
@@ -18,24 +7,26 @@ var toolDbVerificationWrapper_1 = __importDefault(require("../toolDbVerification
18
7
  var message_1 = require("../types/message");
19
8
  function handlePut(message, remotePeerId) {
20
9
  var _this = this;
21
- toolDbVerificationWrapper_1.default.call(this, message).then(function (value) {
10
+ toolDbVerificationWrapper_1.default.call(this, message.data).then(function (value) {
22
11
  // console.log("Verification wrapper result: ", value, message.k);
23
12
  if (value === message_1.VerifyResult.Verified) {
13
+ _this.emit("put", message);
14
+ _this.emit("data", message.data);
24
15
  _this.emit("verified", message);
25
16
  // relay to other servers !!!
26
17
  _this.network.sendToAll(message, true);
27
- _this.store.get(message.k, function (err, oldData) {
18
+ _this.store.get(message.data.k, function (err, oldData) {
28
19
  if (oldData) {
29
- var parsedOldData = __assign({ type: "put" }, JSON.parse(oldData));
30
- if (parsedOldData.t < message.t) {
31
- var key = message.k;
32
- _this.triggerKeyListener(key, message);
33
- _this.store.put(message.k, JSON.stringify(message), function (err, data) {
20
+ var parsedOldData = JSON.parse(oldData);
21
+ if (parsedOldData.t < message.data.t) {
22
+ var key = message.data.k;
23
+ _this.triggerKeyListener(key, message.data);
24
+ _this.store.put(message.data.k, JSON.stringify(message.data), function (err, data) {
34
25
  //
35
26
  });
36
27
  }
37
28
  else {
38
- var key = message.k;
29
+ var key = message.data.k;
39
30
  _this.triggerKeyListener(key, parsedOldData);
40
31
  }
41
32
  // } else if (this.options.debug) {
@@ -45,9 +36,9 @@ function handlePut(message, remotePeerId) {
45
36
  // }
46
37
  }
47
38
  else {
48
- var key = message.k;
49
- _this.triggerKeyListener(key, message);
50
- _this.store.put(message.k, JSON.stringify(message), function (err, data) {
39
+ var key = message.data.k;
40
+ _this.triggerKeyListener(key, message.data);
41
+ _this.store.put(message.data.k, JSON.stringify(message.data), function (err, data) {
51
42
  //
52
43
  });
53
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"handlePut.js","sourceRoot":"","sources":["../../src/messageHandlers/handlePut.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,2FAAqE;AACrE,4CAA4D;AAE5D,SAAwB,SAAS,CAE/B,OAAmB,EACnB,YAAoB;IAHtB,iBA6CC;IAxCC,mCAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,UAAC,KAAK;QACvD,kEAAkE;QAClE,IAAI,KAAK,KAAK,sBAAY,CAAC,QAAQ,EAAE;YACnC,KAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAC/B,6BAA6B;YAC7B,KAAI,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAEtC,KAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,UAAC,GAAG,EAAE,OAAgB;gBAC9C,IAAI,OAAO,EAAE;oBACX,IAAM,aAAa,cACjB,IAAI,EAAE,KAAK,IACR,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CACvB,CAAC;oBACF,IAAI,aAAa,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE;wBAC/B,IAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;wBACtB,KAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;wBACtC,KAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,UAAC,GAAG,EAAE,IAAI;4BAC3D,EAAE;wBACJ,CAAC,CAAC,CAAC;qBACJ;yBAAM;wBACL,IAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;wBACtB,KAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;qBAC7C;oBACD,mCAAmC;oBACnC,iBAAiB;oBACjB,4FAA4F;oBAC5F,OAAO;oBACP,IAAI;iBACL;qBAAM;oBACL,IAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;oBACtB,KAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;oBACtC,KAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,UAAC,GAAG,EAAE,IAAI;wBAC3D,EAAE;oBACJ,CAAC,CAAC,CAAC;iBACJ;YACH,CAAC,CAAC,CAAC;SACJ;aAAM;YACL,OAAO,CAAC,IAAI,CAAC,sBAAsB,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;SACtD;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AA7CD,4BA6CC"}
1
+ {"version":3,"file":"handlePut.js","sourceRoot":"","sources":["../../src/messageHandlers/handlePut.ts"],"names":[],"mappings":";;;;;AACA,2FAAqE;AACrE,4CAA4D;AAE5D,SAAwB,SAAS,CAE/B,OAAmB,EACnB,YAAoB;IAHtB,iBAoDC;IA/CC,mCAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAC,KAAK;QAC5D,kEAAkE;QAClE,IAAI,KAAK,KAAK,sBAAY,CAAC,QAAQ,EAAE;YACnC,KAAI,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAC1B,KAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;YAChC,KAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAC/B,6BAA6B;YAC7B,KAAI,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAEtC,KAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,UAAC,GAAG,EAAE,OAAgB;gBACnD,IAAI,OAAO,EAAE;oBACX,IAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBAC1C,IAAI,aAAa,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE;wBACpC,IAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;wBAC3B,KAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;wBAC3C,KAAI,CAAC,KAAK,CAAC,GAAG,CACZ,OAAO,CAAC,IAAI,CAAC,CAAC,EACd,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAC5B,UAAC,GAAG,EAAE,IAAI;4BACR,EAAE;wBACJ,CAAC,CACF,CAAC;qBACH;yBAAM;wBACL,IAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;wBAC3B,KAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;qBAC7C;oBACD,mCAAmC;oBACnC,iBAAiB;oBACjB,4FAA4F;oBAC5F,OAAO;oBACP,IAAI;iBACL;qBAAM;oBACL,IAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;oBAC3B,KAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;oBAC3C,KAAI,CAAC,KAAK,CAAC,GAAG,CACZ,OAAO,CAAC,IAAI,CAAC,CAAC,EACd,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAC5B,UAAC,GAAG,EAAE,IAAI;wBACR,EAAE;oBACJ,CAAC,CACF,CAAC;iBACH;YACH,CAAC,CAAC,CAAC;SACJ;aAAM;YACL,OAAO,CAAC,IAAI,CAAC,sBAAsB,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;SACtD;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AApDD,4BAoDC"}
@@ -7,7 +7,7 @@ var verifyPeer_1 = __importDefault(require("../utils/verifyPeer"));
7
7
  function handleServers(message, remotePeerId) {
8
8
  var _this = this;
9
9
  message.servers.forEach(function (peer) {
10
- var verified = (0, verifyPeer_1.default)(_this.web3, peer);
10
+ var verified = (0, verifyPeer_1.default)(_this, peer);
11
11
  // Add this peer to our list of peers
12
12
  if (verified) {
13
13
  var filteredPeers = _this.peers.findIndex(function (p) { return p.adress === peer.adress; });