@leofcoin/chain 1.1.9 → 1.1.11

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 (67) hide show
  1. package/demo/865.browser.js +10 -0
  2. package/demo/865.machine-worker.js +10 -0
  3. package/demo/chain.browser.js +51312 -6162
  4. package/demo/chain.js +1209 -0
  5. package/demo/generate-account.browser.js +50 -0
  6. package/demo/index.html +8 -1
  7. package/demo/machine-worker.js +17624 -0
  8. package/demo/messages.browser.js +328 -0
  9. package/demo/{911.browser.js → multi-wallet.browser.js} +1 -11010
  10. package/demo/node.browser.js +2458 -3954
  11. package/demo/node.js +1 -0
  12. package/demo/peernet-swarm.browser.js +832 -0
  13. package/demo/storage.browser.js +3724 -0
  14. package/demo/workers/865.js +10 -0
  15. package/demo/workers/block-worker.js +13200 -0
  16. package/demo/workers/machine-worker.js +2912 -1526
  17. package/demo/workers/pool-worker.js +8504 -0
  18. package/demo/{main.browser.js → workers/transaction-worker.js} +1456 -1123
  19. package/demo/workers/workers/865.js +10 -0
  20. package/demo/workers/workers/block-worker.js +13200 -0
  21. package/demo/workers/workers/machine-worker.js +13904 -0
  22. package/demo/workers/workers/pool-worker.js +8504 -0
  23. package/demo/workers/workers/transaction-worker.js +8496 -0
  24. package/dist/865.browser.js +10 -0
  25. package/dist/browser/workers/865.js +10 -0
  26. package/dist/browser/workers/block-worker.js +13200 -0
  27. package/dist/browser/workers/machine-worker.js +13930 -0
  28. package/dist/browser/workers/pool-worker.js +8504 -0
  29. package/{demo/427.browser.js → dist/browser/workers/transaction-worker.js} +1533 -1129
  30. package/dist/chain.browser.js +59742 -0
  31. package/dist/chain.js +207 -187
  32. package/dist/generate-account.browser.js +50 -0
  33. package/dist/messages.browser.js +328 -0
  34. package/dist/module/chain.js +206 -187
  35. package/dist/module/node.js +203 -1
  36. package/dist/module/workers/block-worker.js +93 -0
  37. package/dist/module/workers/machine-worker.js +67 -331
  38. package/dist/module/workers/pool-worker.js +55 -0
  39. package/dist/module/workers/transaction-worker.js +47 -0
  40. package/{demo/peernet-worker.browser.js → dist/multi-wallet.browser.js} +2 -11317
  41. package/dist/node.browser.js +9839 -0
  42. package/dist/node.js +209 -1
  43. package/dist/pako.browser.js +6731 -0
  44. package/dist/peernet-swarm.browser.js +832 -0
  45. package/dist/storage.browser.js +3724 -0
  46. package/dist/workers/block-worker.js +1 -1
  47. package/dist/workers/machine-worker.js +1 -1
  48. package/dist/workers/pool-worker.js +1 -1
  49. package/dist/workers/transaction-worker.js +1 -1
  50. package/dist/wrtc.browser.js +28 -0
  51. package/package.json +9 -4
  52. package/rollup.config.js +41 -11
  53. package/src/chain.js +46 -16
  54. package/src/machine.js +25 -28
  55. package/test/chain.js +1 -1
  56. package/webpack.config.js +17 -4
  57. package/demo/151.browser.js +0 -271
  58. package/demo/205.browser.js +0 -215
  59. package/demo/560.browser.js +0 -3
  60. package/src/workers/block-worker.js +0 -70
  61. package/src/workers/machine-worker.js +0 -174
  62. package/src/workers/pool-worker.js +0 -37
  63. package/src/workers/transaction-worker.js +0 -26
  64. package/workers/block-worker.js +0 -1
  65. package/workers/machine-worker.js +0 -1
  66. package/workers/pool-worker.js +0 -1
  67. package/workers/transaction-worker.js +0 -1
package/dist/node.js CHANGED
@@ -1 +1,209 @@
1
- "use strict";var e=require("@leofcoin/peernet"),r=require("@leofcoin/codec-format-interface");function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var t=a(e);class ContractMessage extends r.FormatInterface{get keys(){return["creator","contract","constructorParameters"]}get messageName(){return"ContractMessage"}constructor(e){super(e,"\nmessage ContractMessage {\n required string creator = 1;\n required bytes contract = 2;\n repeated string constructorParameters = 3;\n}\n",{name:"contract-message"})}}class TransactionMessage extends r.FormatInterface{get keys(){return["timestamp","from","to","nonce","method","params","signature"]}get messageName(){return"TransactionMessage"}constructor(e){super(e,"\n\nmessage TransactionMessage {\n required uint64 timestamp = 1;\n required string from = 2;\n required string to = 3;\n required uint64 nonce = 4;\n required string method = 5;\n repeated string params = 6;\n required string signature = 7;\n}\n",{name:"transaction-message"})}}class BlockMessage extends r.FormatInterface{get keys(){return["index","previousHash","timestamp","reward","fees","transactions","validators"]}get messageName(){return"BlockMessage"}constructor(e){super(e,"\nmessage ValidatorMessage {\n required string address = 1;\n required string reward = 2;\n}\n\nmessage Transaction {\n required string hash = 1;\n required uint64 timestamp = 2;\n required string from = 3;\n required string to = 4;\n required uint64 nonce = 5;\n required string method = 6;\n repeated string params = 7;\n}\n\nmessage BlockMessage {\n required uint64 index = 1;\n required string previousHash = 3;\n required uint64 timestamp = 4;\n required uint64 reward = 5;\n required string fees = 6;\n repeated Transaction transactions = 7;\n repeated ValidatorMessage validators = 8;\n}\n",{name:"block-message"})}}class BWMessage extends r.FormatInterface{get keys(){return["up","down"]}get messageName(){return"BWMessage"}constructor(e){super(e,"\n\nmessage BWMessage {\n required uint64 up = 1;\n required uint64 down = 2;\n}\n",{name:"bw-message"})}}class BWRequestMessage extends r.FormatInterface{get keys(){return[]}get messageName(){return"BWRequestMessage"}constructor(e){super(e,"\n\nmessage BWRequestMessage {\n}\n",{name:"bw-request-message"})}}module.exports=class Node{constructor(){return this._init()}async _init(e={network:"leofcoin:mandarine",networkName:"leofcoin:mandarine",networkVersion:"v0.1.0"}){return globalThis.Peernet?await new globalThis.Peernet(e):await new t.default(e),await(async(e={network:"leofcoin:mandarine",networkName:"leofcoin:mandarine",networkVersion:"v0.1.0"})=>{await peernet.addProto("contract-message",ContractMessage),await peernet.addProto("transaction-message",TransactionMessage),await peernet.addProto("block-message",BlockMessage),await peernet.addProto("bw-message",BWMessage),await peernet.addProto("bw-request-message",BWRequestMessage),await peernet.addCodec("contract-message",{codec:parseInt("63636d",16),hashAlg:"keccak-256"}),await peernet.addCodec("transaction-message",{codec:parseInt("746d",16),hashAlg:"keccak-256"}),await peernet.addCodec("block-message",{codec:parseInt("626d",16),hashAlg:"keccak-256"}),await peernet.addCodec("bw-message",{codec:parseInt("62776d",16),hashAlg:"keccak-256"}),await peernet.addCodec("bw-request-message",{codec:parseInt("6277726d",16),hashAlg:"keccak-256"});let r=`.${e.network}`;const a=e.network.split(":");a[1]&&(r=`.${a[0]}/${a[1]}`),await peernet.addStore("contract","lfc",r,!1),await peernet.addStore("accounts","lfc",r,!1),await peernet.addStore("transactionPool","lfc",r,!1)})(),this}};
1
+ 'use strict';
2
+
3
+ var Peernet = require('@leofcoin/peernet');
4
+ var codecFormatInterface = require('@leofcoin/codec-format-interface');
5
+
6
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
7
+
8
+ var Peernet__default = /*#__PURE__*/_interopDefaultLegacy(Peernet);
9
+
10
+ var proto$4 = `
11
+ message ContractMessage {
12
+ required string creator = 1;
13
+ required bytes contract = 2;
14
+ repeated string constructorParameters = 3;
15
+ }
16
+ `;
17
+
18
+ class ContractMessage extends codecFormatInterface.FormatInterface {
19
+ get keys() {
20
+ return ['creator', 'contract', 'constructorParameters']
21
+ }
22
+
23
+ get messageName() {
24
+ return 'ContractMessage'
25
+ }
26
+
27
+ constructor(buffer) {
28
+ super(buffer, proto$4, {name: 'contract-message'});
29
+ }
30
+ }
31
+
32
+ var proto$3 = `
33
+
34
+ message TransactionMessage {
35
+ required uint64 timestamp = 1;
36
+ required string from = 2;
37
+ required string to = 3;
38
+ required uint64 nonce = 4;
39
+ required string method = 5;
40
+ repeated string params = 6;
41
+ required string signature = 7;
42
+ }
43
+ `;
44
+
45
+ class TransactionMessage extends codecFormatInterface.FormatInterface {
46
+ get keys() {
47
+ return ['timestamp', 'from', 'to', 'nonce', 'method', 'params', 'signature']
48
+ }
49
+
50
+ get messageName() {
51
+ return 'TransactionMessage'
52
+ }
53
+
54
+ constructor(buffer) {
55
+ const name = 'transaction-message';
56
+ super(buffer, proto$3, {name});
57
+ }
58
+ }
59
+
60
+ var proto$2 = `
61
+ message ValidatorMessage {
62
+ required string address = 1;
63
+ required string reward = 2;
64
+ }
65
+
66
+ message Transaction {
67
+ required string hash = 1;
68
+ required uint64 timestamp = 2;
69
+ required string from = 3;
70
+ required string to = 4;
71
+ required uint64 nonce = 5;
72
+ required string method = 6;
73
+ repeated string params = 7;
74
+ }
75
+
76
+ message BlockMessage {
77
+ required uint64 index = 1;
78
+ required string previousHash = 3;
79
+ required uint64 timestamp = 4;
80
+ required uint64 reward = 5;
81
+ required string fees = 6;
82
+ repeated Transaction transactions = 7;
83
+ repeated ValidatorMessage validators = 8;
84
+ }
85
+ `;
86
+
87
+ class BlockMessage extends codecFormatInterface.FormatInterface {
88
+ get keys() {
89
+ return ['index', 'previousHash', 'timestamp', 'reward', 'fees', 'transactions', 'validators']
90
+ }
91
+
92
+ get messageName() {
93
+ return 'BlockMessage'
94
+ }
95
+
96
+ constructor(buffer) {
97
+ const name = 'block-message';
98
+ super(buffer, proto$2, {name});
99
+ }
100
+ }
101
+
102
+ var proto$1 = `
103
+
104
+ message BWMessage {
105
+ required uint64 up = 1;
106
+ required uint64 down = 2;
107
+ }
108
+ `;
109
+
110
+ class BWMessage extends codecFormatInterface.FormatInterface {
111
+ get keys() {
112
+ return ['up', 'down']
113
+ }
114
+
115
+ get messageName() {
116
+ return 'BWMessage'
117
+ }
118
+
119
+ constructor(buffer) {
120
+ const name = 'bw-message';
121
+ super(buffer, proto$1, {name});
122
+ }
123
+ }
124
+
125
+ var proto = `
126
+
127
+ message BWRequestMessage {
128
+ }
129
+ `;
130
+
131
+ class BWRequestMessage extends codecFormatInterface.FormatInterface {
132
+ get keys() {
133
+ return []
134
+ }
135
+
136
+ get messageName() {
137
+ return 'BWRequestMessage'
138
+ }
139
+
140
+ constructor(buffer) {
141
+ const name = 'bw-request-message';
142
+ super(buffer, proto, {name});
143
+ }
144
+ }
145
+
146
+ var nodeConfig = async (config = {
147
+ network: 'leofcoin:mandarine',
148
+ networkName: 'leofcoin:mandarine',
149
+ networkVersion: 'v0.1.0'
150
+ }) => {
151
+ await peernet.addProto('contract-message', ContractMessage);
152
+ await peernet.addProto('transaction-message', TransactionMessage);
153
+ await peernet.addProto('block-message', BlockMessage);
154
+ await peernet.addProto('bw-message', BWMessage);
155
+ await peernet.addProto('bw-request-message', BWRequestMessage);
156
+
157
+ await peernet.addCodec('contract-message', {
158
+ codec: parseInt('63636d', 16),
159
+ hashAlg: 'keccak-256'
160
+ });
161
+ await peernet.addCodec('transaction-message', {
162
+ codec: parseInt('746d', 16),
163
+ hashAlg: 'keccak-256'
164
+ });
165
+
166
+ await peernet.addCodec('block-message', {
167
+ codec: parseInt('626d', 16),
168
+ hashAlg: 'keccak-256'
169
+ });
170
+
171
+ await peernet.addCodec('bw-message', {
172
+ codec: parseInt('62776d', 16),
173
+ hashAlg: 'keccak-256'
174
+ });
175
+
176
+ await peernet.addCodec('bw-request-message', {
177
+ codec: parseInt('6277726d', 16),
178
+ hashAlg: 'keccak-256'
179
+ });
180
+ let name = `.${config.network}`;
181
+ const parts = config.network.split(':');
182
+ if (parts[1]) name = `.${parts[0]}/${parts[1]}`;
183
+ await peernet.addStore('contract', 'lfc', name, false);
184
+ await peernet.addStore('accounts', 'lfc', name, false);
185
+ await peernet.addStore('transactionPool', 'lfc', name, false);
186
+ };
187
+
188
+ // import config from './config/config'
189
+
190
+ class Node {
191
+ constructor() {
192
+ return this._init()
193
+ }
194
+
195
+ async _init(config = {
196
+ network: 'leofcoin:mandarine',
197
+ networkName: 'leofcoin:mandarine',
198
+ networkVersion: 'v0.1.0'
199
+ }) {
200
+ globalThis.Peernet ? await new globalThis.Peernet(config) : await new Peernet__default["default"](config);
201
+ await nodeConfig();
202
+
203
+ return this
204
+ // this.config = await config()
205
+ }
206
+
207
+ }
208
+
209
+ module.exports = Node;