@leofcoin/chain 1.5.10 → 1.5.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/exports/browser/browser-store.js +4 -3
- package/exports/browser/chain.js +55 -45
- package/exports/browser/{index-9c85cd32-ab3cf058.js → index-329e0324-67daaccb.js} +2 -2
- package/exports/browser/{index-b32f624f.js → index-e8f03811.js} +155 -144
- package/exports/browser/{messages-b66f5393-8ba2fe1a.js → messages-000b7f84-fd07a3bf.js} +2 -2
- package/exports/browser/{node-browser-3364f1f2.js → node-browser-505084de.js} +230 -252
- package/exports/browser/node-browser.js +2 -2
- package/exports/browser/workers/block-worker.js +159 -148
- package/exports/browser/workers/machine-worker.js +159 -148
- package/exports/chain.d.ts +72 -0
- package/exports/chain.js +41 -28
- package/exports/contract.d.ts +45 -0
- package/exports/{types/machine.d.ts → machine.d.ts} +3 -3
- package/exports/node.js +1 -0
- package/exports/{types/state.d.ts → state.d.ts} +2 -2
- package/exports/{types/transaction.d.ts → transaction.d.ts} +2 -1
- package/exports/{types/typer.d.ts → typer.d.ts} +1 -1
- package/exports/workers/block-worker.js +159 -148
- package/exports/workers/machine-worker.js +159 -148
- package/package.json +18 -3
- package/exports/types/contract.d.ts +0 -31
- /package/exports/{types/config → config}/config.d.ts +0 -0
- /package/exports/{types/config → config}/main.d.ts +0 -0
- /package/exports/{types/config → config}/protocol.d.ts +0 -0
- /package/exports/{types/consensus → consensus}/consensus.d.ts +0 -0
- /package/exports/{types/consensus → consensus}/helpers/sort-transactions.d.ts +0 -0
- /package/exports/{types/fee → fee}/config.d.ts +0 -0
- /package/exports/{types/jobs → jobs}/jobber.d.ts +0 -0
- /package/exports/{types/machine-state.d.ts → machine-state.d.ts} +0 -0
- /package/exports/{types/node-browser.d.ts → node-browser.d.ts} +0 -0
- /package/exports/{types/node.d.ts → node.d.ts} +0 -0
- /package/exports/{types/protocol.d.ts → protocol.d.ts} +0 -0
- /package/exports/{types/sync-controller.d.ts → sync-controller.d.ts} +0 -0
- /package/exports/{types/types.d.ts → types.d.ts} +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { C as ContractMessage, T as TransactionMessage, c as BlockMessage, d as BWMessage, e as BWRequestMessage, V as ValidatorMessage } from './index-
|
|
1
|
+
import { C as ContractMessage, T as TransactionMessage, c as BlockMessage, d as BWMessage, e as BWRequestMessage, V as ValidatorMessage } from './index-e8f03811.js';
|
|
2
2
|
|
|
3
3
|
var nodeConfig = async (config = {
|
|
4
4
|
network: 'leofcoin:peach',
|
|
@@ -20,12 +20,12 @@ var nodeConfig = async (config = {
|
|
|
20
20
|
await globalThis.peernet.addStore('transactionPool', 'lfc', name, false);
|
|
21
21
|
};
|
|
22
22
|
|
|
23
|
-
const encode$
|
|
23
|
+
const encode$9 = (string) => {
|
|
24
24
|
if (typeof string === 'string')
|
|
25
25
|
return new TextEncoder().encode(string);
|
|
26
26
|
throw Error(`expected typeof String instead got ${string}`);
|
|
27
27
|
};
|
|
28
|
-
const decode$
|
|
28
|
+
const decode$a = (uint8Array) => {
|
|
29
29
|
if (uint8Array instanceof Uint8Array)
|
|
30
30
|
return new TextDecoder().decode(uint8Array);
|
|
31
31
|
throw Error(`expected typeof uint8Array instead got ${uint8Array}`);
|
|
@@ -36,7 +36,7 @@ class KeyPath {
|
|
|
36
36
|
uint8Array;
|
|
37
37
|
constructor(input) {
|
|
38
38
|
if (typeof input === 'string') {
|
|
39
|
-
this.uint8Array = encode$
|
|
39
|
+
this.uint8Array = encode$9(input);
|
|
40
40
|
}
|
|
41
41
|
else if (input instanceof Uint8Array) {
|
|
42
42
|
this.uint8Array = input;
|
|
@@ -52,7 +52,7 @@ class KeyPath {
|
|
|
52
52
|
return true;
|
|
53
53
|
}
|
|
54
54
|
toString() {
|
|
55
|
-
return decode$
|
|
55
|
+
return decode$a(this.uint8Array);
|
|
56
56
|
}
|
|
57
57
|
/**
|
|
58
58
|
* Returns the `list` representation of this path.
|
|
@@ -72,7 +72,7 @@ class KeyValue {
|
|
|
72
72
|
uint8Array;
|
|
73
73
|
constructor(input) {
|
|
74
74
|
if (typeof input === 'string') {
|
|
75
|
-
this.uint8Array = encode$
|
|
75
|
+
this.uint8Array = encode$9(input);
|
|
76
76
|
}
|
|
77
77
|
else if (input instanceof Uint8Array) {
|
|
78
78
|
this.uint8Array = input;
|
|
@@ -88,7 +88,7 @@ class KeyValue {
|
|
|
88
88
|
return true;
|
|
89
89
|
}
|
|
90
90
|
toString() {
|
|
91
|
-
return decode$
|
|
91
|
+
return decode$a(this.uint8Array);
|
|
92
92
|
}
|
|
93
93
|
}
|
|
94
94
|
|
|
@@ -301,16 +301,16 @@ const ALPHABET$3 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567';
|
|
|
301
301
|
const ALPHABET_HEX$1 = '0123456789ABCDEFGHIJKLMNOPQRSTUV';
|
|
302
302
|
const base32 = base$1(ALPHABET$3);
|
|
303
303
|
const base32Hex = base$1(ALPHABET_HEX$1);
|
|
304
|
-
const decode$
|
|
305
|
-
const decodeHex$
|
|
306
|
-
const encode$
|
|
307
|
-
const encodeHex$
|
|
304
|
+
const decode$9 = base32.decode;
|
|
305
|
+
const decodeHex$2 = base32Hex.decode;
|
|
306
|
+
const encode$8 = base32.encode;
|
|
307
|
+
const encodeHex$2 = base32Hex.encode;
|
|
308
308
|
const isBase32 = (string, hex = false) => {
|
|
309
309
|
try {
|
|
310
310
|
if (hex)
|
|
311
|
-
decodeHex$
|
|
311
|
+
decodeHex$2(string);
|
|
312
312
|
else
|
|
313
|
-
decode$
|
|
313
|
+
decode$9(string);
|
|
314
314
|
return true;
|
|
315
315
|
}
|
|
316
316
|
catch (e) {
|
|
@@ -321,10 +321,10 @@ const isBase32Hex = (string) => {
|
|
|
321
321
|
return isBase32(string, true);
|
|
322
322
|
};
|
|
323
323
|
var index$9 = {
|
|
324
|
-
encode: encode$
|
|
325
|
-
decode: decode$
|
|
326
|
-
encodeHex: encodeHex$
|
|
327
|
-
decodeHex: decodeHex$
|
|
324
|
+
encode: encode$8,
|
|
325
|
+
decode: decode$9,
|
|
326
|
+
encodeHex: encodeHex$2,
|
|
327
|
+
decodeHex: decodeHex$2,
|
|
328
328
|
isBase32,
|
|
329
329
|
isBase32Hex
|
|
330
330
|
};
|
|
@@ -333,13 +333,13 @@ var ALPHABET$2 = '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz';
|
|
|
333
333
|
var ALPHABET_HEX = '0123456789ABCDEFGHJKLMNPQRSTUVabcdefghijklmnopqrstuv';
|
|
334
334
|
var base58 = base$1(ALPHABET$2);
|
|
335
335
|
var base58Hex = base$1(ALPHABET_HEX);
|
|
336
|
-
var encode$
|
|
337
|
-
var decode$
|
|
338
|
-
var encodeHex$
|
|
339
|
-
var decodeHex$
|
|
336
|
+
var encode$7 = base58.encode;
|
|
337
|
+
var decode$8 = base58.decode;
|
|
338
|
+
var encodeHex$1 = base58Hex.encode;
|
|
339
|
+
var decodeHex$1 = base58Hex.decode;
|
|
340
340
|
var isBase58 = function (string) {
|
|
341
341
|
try {
|
|
342
|
-
decode$
|
|
342
|
+
decode$8(string);
|
|
343
343
|
return true;
|
|
344
344
|
}
|
|
345
345
|
catch (e) {
|
|
@@ -348,7 +348,7 @@ var isBase58 = function (string) {
|
|
|
348
348
|
};
|
|
349
349
|
var isBase58Hex = function (string) {
|
|
350
350
|
try {
|
|
351
|
-
decodeHex$
|
|
351
|
+
decodeHex$1(string);
|
|
352
352
|
return true;
|
|
353
353
|
}
|
|
354
354
|
catch (e) {
|
|
@@ -357,12 +357,12 @@ var isBase58Hex = function (string) {
|
|
|
357
357
|
};
|
|
358
358
|
var whatType = function (string) {
|
|
359
359
|
try {
|
|
360
|
-
decode$
|
|
360
|
+
decode$8(string);
|
|
361
361
|
return 'base58';
|
|
362
362
|
}
|
|
363
363
|
catch (e) {
|
|
364
364
|
try {
|
|
365
|
-
decodeHex$
|
|
365
|
+
decodeHex$1(string);
|
|
366
366
|
return 'base58Hex';
|
|
367
367
|
}
|
|
368
368
|
catch (_a) {
|
|
@@ -370,15 +370,21 @@ var whatType = function (string) {
|
|
|
370
370
|
}
|
|
371
371
|
}
|
|
372
372
|
};
|
|
373
|
-
var base58$1 = { encode: encode$
|
|
373
|
+
var base58$1 = { encode: encode$7, decode: decode$8, isBase58: isBase58, isBase58Hex: isBase58Hex, encodeHex: encodeHex$1, decodeHex: decodeHex$1, whatType: whatType };
|
|
374
|
+
|
|
375
|
+
var isHex = string => /^[A-F0-9]+$/i.test(
|
|
376
|
+
string.startsWith('0x') ?
|
|
377
|
+
string.slice(2) :
|
|
378
|
+
string
|
|
379
|
+
);
|
|
374
380
|
|
|
375
381
|
const MSB$3 = 0x80;
|
|
376
382
|
const REST$3 = 0x7F;
|
|
377
383
|
const MSBALL$1 = ~REST$3;
|
|
378
384
|
const INT$1 = Math.pow(2, 31);
|
|
379
|
-
const encode$
|
|
385
|
+
const encode$6 = (num, out, offset) => {
|
|
380
386
|
if (Number.MAX_SAFE_INTEGER && num > Number.MAX_SAFE_INTEGER) {
|
|
381
|
-
encode$
|
|
387
|
+
encode$6.bytes = 0;
|
|
382
388
|
throw new RangeError('Could not encode varint');
|
|
383
389
|
}
|
|
384
390
|
out = out || [];
|
|
@@ -393,13 +399,13 @@ const encode$7 = (num, out, offset) => {
|
|
|
393
399
|
num >>>= 7;
|
|
394
400
|
}
|
|
395
401
|
out[offset] = num | 0;
|
|
396
|
-
encode$
|
|
402
|
+
encode$6.bytes = offset - oldOffset + 1;
|
|
397
403
|
return out;
|
|
398
404
|
};
|
|
399
405
|
|
|
400
406
|
const MSB$2 = 0x80;
|
|
401
407
|
const REST$2 = 0x7F;
|
|
402
|
-
const decode$
|
|
408
|
+
const decode$7 = (buf, offset) => {
|
|
403
409
|
offset = offset || 0;
|
|
404
410
|
const l = buf.length;
|
|
405
411
|
let counter = offset;
|
|
@@ -408,7 +414,7 @@ const decode$8 = (buf, offset) => {
|
|
|
408
414
|
let b;
|
|
409
415
|
do {
|
|
410
416
|
if (counter >= l || shift > 49) {
|
|
411
|
-
decode$
|
|
417
|
+
decode$7.bytes = 0;
|
|
412
418
|
throw new RangeError('Could not decode varint');
|
|
413
419
|
}
|
|
414
420
|
b = buf[counter++];
|
|
@@ -417,7 +423,7 @@ const decode$8 = (buf, offset) => {
|
|
|
417
423
|
: (b & REST$2) * Math.pow(2, shift);
|
|
418
424
|
shift += 7;
|
|
419
425
|
} while (b >= MSB$2);
|
|
420
|
-
decode$
|
|
426
|
+
decode$7.bytes = counter - offset;
|
|
421
427
|
return result;
|
|
422
428
|
};
|
|
423
429
|
|
|
@@ -442,8 +448,8 @@ var encodingLength$1 = (value) => (value < N1$1 ? 1
|
|
|
442
448
|
: 10);
|
|
443
449
|
|
|
444
450
|
var index$8 = {
|
|
445
|
-
encode: encode$
|
|
446
|
-
decode: decode$
|
|
451
|
+
encode: encode$6,
|
|
452
|
+
decode: decode$7,
|
|
447
453
|
encodingLength: encodingLength$1
|
|
448
454
|
};
|
|
449
455
|
|
|
@@ -493,11 +499,11 @@ var index$6 = (typedArray, prefix) => {
|
|
|
493
499
|
|
|
494
500
|
const ALPHABET$1 = '0123456789ABCDEF';
|
|
495
501
|
const base16 = base$1(ALPHABET$1);
|
|
496
|
-
const decode$
|
|
497
|
-
const encode$
|
|
502
|
+
const decode$6 = base16.decode;
|
|
503
|
+
const encode$5 = base16.encode;
|
|
498
504
|
const isBase16 = (string) => {
|
|
499
505
|
try {
|
|
500
|
-
decode$
|
|
506
|
+
decode$6(string);
|
|
501
507
|
return true;
|
|
502
508
|
}
|
|
503
509
|
catch (e) {
|
|
@@ -505,18 +511,18 @@ const isBase16 = (string) => {
|
|
|
505
511
|
}
|
|
506
512
|
};
|
|
507
513
|
var index$5 = {
|
|
508
|
-
encode: encode$
|
|
509
|
-
decode: decode$
|
|
514
|
+
encode: encode$5,
|
|
515
|
+
decode: decode$6,
|
|
510
516
|
isBase16
|
|
511
517
|
};
|
|
512
518
|
|
|
513
519
|
const ALPHABET = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_';
|
|
514
520
|
const base64 = base$1(ALPHABET);
|
|
515
|
-
const decode$
|
|
516
|
-
const encode$
|
|
521
|
+
const decode$5 = base64.decode;
|
|
522
|
+
const encode$4 = base64.encode;
|
|
517
523
|
const isBase64 = (string) => {
|
|
518
524
|
try {
|
|
519
|
-
decode$
|
|
525
|
+
decode$5(string);
|
|
520
526
|
return true;
|
|
521
527
|
}
|
|
522
528
|
catch (e) {
|
|
@@ -524,8 +530,8 @@ const isBase64 = (string) => {
|
|
|
524
530
|
}
|
|
525
531
|
};
|
|
526
532
|
var index$4 = {
|
|
527
|
-
encode: encode$
|
|
528
|
-
decode: decode$
|
|
533
|
+
encode: encode$4,
|
|
534
|
+
decode: decode$5,
|
|
529
535
|
isBase64
|
|
530
536
|
};
|
|
531
537
|
|
|
@@ -4899,7 +4905,7 @@ const toType = (data) => {
|
|
|
4899
4905
|
return new TextEncoder().encode(data.toString());
|
|
4900
4906
|
throw new Error(`unsuported type ${typeof data || data}`);
|
|
4901
4907
|
};
|
|
4902
|
-
const encode$
|
|
4908
|
+
const encode$3 = (proto, input, compress) => {
|
|
4903
4909
|
const keys = Object.keys(proto);
|
|
4904
4910
|
const values = Object.values(proto);
|
|
4905
4911
|
const set = [];
|
|
@@ -4916,7 +4922,7 @@ const encode$4 = (proto, input, compress) => {
|
|
|
4916
4922
|
}
|
|
4917
4923
|
return index$7(set);
|
|
4918
4924
|
};
|
|
4919
|
-
const decode$
|
|
4925
|
+
const decode$4 = (proto, uint8Array, compressed) => {
|
|
4920
4926
|
let deconcated = index$6(uint8Array);
|
|
4921
4927
|
const output = {};
|
|
4922
4928
|
const keys = Object.keys(proto);
|
|
@@ -4947,17 +4953,111 @@ const decode$5 = (proto, uint8Array, compressed) => {
|
|
|
4947
4953
|
return output;
|
|
4948
4954
|
};
|
|
4949
4955
|
var index$2 = {
|
|
4950
|
-
encode: encode$
|
|
4951
|
-
decode: decode$
|
|
4956
|
+
encode: encode$3,
|
|
4957
|
+
decode: decode$4
|
|
4952
4958
|
};
|
|
4953
4959
|
|
|
4960
|
+
class BasicInterface {
|
|
4961
|
+
encoded;
|
|
4962
|
+
decoded;
|
|
4963
|
+
keys;
|
|
4964
|
+
name;
|
|
4965
|
+
#proto;
|
|
4966
|
+
set proto(value) {
|
|
4967
|
+
this.#proto = value;
|
|
4968
|
+
this.keys = Object.keys(value);
|
|
4969
|
+
}
|
|
4970
|
+
get proto() {
|
|
4971
|
+
return this.#proto;
|
|
4972
|
+
}
|
|
4973
|
+
decode(encoded) {
|
|
4974
|
+
encoded = encoded || this.encoded;
|
|
4975
|
+
return new Object();
|
|
4976
|
+
}
|
|
4977
|
+
encode(decoded) {
|
|
4978
|
+
decoded = decoded || this.decoded;
|
|
4979
|
+
return new Uint8Array();
|
|
4980
|
+
}
|
|
4981
|
+
// get Codec(): Codec {}
|
|
4982
|
+
protoEncode(data) {
|
|
4983
|
+
// check schema
|
|
4984
|
+
return index$2.encode(this.proto, data, false);
|
|
4985
|
+
}
|
|
4986
|
+
protoDecode(data) {
|
|
4987
|
+
// check schema
|
|
4988
|
+
return index$2.decode(this.proto, data, false);
|
|
4989
|
+
}
|
|
4990
|
+
isHex(string) {
|
|
4991
|
+
return isHex(string);
|
|
4992
|
+
}
|
|
4993
|
+
isBase32(string) {
|
|
4994
|
+
return index$9.isBase32(string);
|
|
4995
|
+
}
|
|
4996
|
+
isBase58(string) {
|
|
4997
|
+
return base58$1.isBase58(string);
|
|
4998
|
+
}
|
|
4999
|
+
fromBs32(encoded) {
|
|
5000
|
+
return this.decode(index$9.decode(encoded));
|
|
5001
|
+
}
|
|
5002
|
+
fromBs58(encoded) {
|
|
5003
|
+
return this.decode(fromBase58(encoded));
|
|
5004
|
+
}
|
|
5005
|
+
async toArray() {
|
|
5006
|
+
const array = [];
|
|
5007
|
+
for await (const value of this.encoded.values()) {
|
|
5008
|
+
array.push(value);
|
|
5009
|
+
}
|
|
5010
|
+
return array;
|
|
5011
|
+
}
|
|
5012
|
+
fromString(string) {
|
|
5013
|
+
const array = string.split(',');
|
|
5014
|
+
const arrayLike = array.map(string => Number(string));
|
|
5015
|
+
return this.decode(Uint8Array.from(arrayLike));
|
|
5016
|
+
}
|
|
5017
|
+
fromHex(string) {
|
|
5018
|
+
return this.decode(fromHex(string));
|
|
5019
|
+
}
|
|
5020
|
+
fromArray(array) {
|
|
5021
|
+
return this.decode(Uint8Array.from([...array]));
|
|
5022
|
+
}
|
|
5023
|
+
fromEncoded(encoded) {
|
|
5024
|
+
return this.decode(encoded);
|
|
5025
|
+
}
|
|
5026
|
+
toString() {
|
|
5027
|
+
if (!this.encoded)
|
|
5028
|
+
this.encode();
|
|
5029
|
+
return this.encoded.toString();
|
|
5030
|
+
}
|
|
5031
|
+
toHex() {
|
|
5032
|
+
if (!this.encoded)
|
|
5033
|
+
this.encode();
|
|
5034
|
+
return toHex$2(this.encoded);
|
|
5035
|
+
}
|
|
5036
|
+
/**
|
|
5037
|
+
* @return {String} encoded
|
|
5038
|
+
*/
|
|
5039
|
+
toBs32() {
|
|
5040
|
+
if (!this.encoded)
|
|
5041
|
+
this.encode();
|
|
5042
|
+
return toBase32(this.encoded);
|
|
5043
|
+
}
|
|
5044
|
+
/**
|
|
5045
|
+
* @return {String} encoded
|
|
5046
|
+
*/
|
|
5047
|
+
toBs58() {
|
|
5048
|
+
if (!this.encoded)
|
|
5049
|
+
this.encode();
|
|
5050
|
+
return toBase58(this.encoded);
|
|
5051
|
+
}
|
|
5052
|
+
}
|
|
5053
|
+
|
|
4954
5054
|
/*!
|
|
4955
5055
|
* hash-wasm (https://www.npmjs.com/package/hash-wasm)
|
|
4956
5056
|
* (c) Dani Biro
|
|
4957
5057
|
* @license MIT
|
|
4958
5058
|
*/
|
|
4959
5059
|
|
|
4960
|
-
|
|
5060
|
+
/******************************************************************************
|
|
4961
5061
|
Copyright (c) Microsoft Corporation.
|
|
4962
5062
|
|
|
4963
5063
|
Permission to use, copy, modify, and/or distribute this software for any
|
|
@@ -4971,6 +5071,8 @@ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
|
4971
5071
|
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
4972
5072
|
PERFORMANCE OF THIS SOFTWARE.
|
|
4973
5073
|
***************************************************************************** */
|
|
5074
|
+
/* global Reflect, Promise, SuppressedError, Symbol */
|
|
5075
|
+
|
|
4974
5076
|
|
|
4975
5077
|
function __awaiter(thisArg, _arguments, P, generator) {
|
|
4976
5078
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
@@ -4980,7 +5082,12 @@ function __awaiter(thisArg, _arguments, P, generator) {
|
|
|
4980
5082
|
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
4981
5083
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
4982
5084
|
});
|
|
4983
|
-
}
|
|
5085
|
+
}
|
|
5086
|
+
|
|
5087
|
+
typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
|
|
5088
|
+
var e = new Error(message);
|
|
5089
|
+
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
5090
|
+
};
|
|
4984
5091
|
|
|
4985
5092
|
class Mutex {
|
|
4986
5093
|
constructor() {
|
|
@@ -5318,8 +5425,8 @@ new Mutex();
|
|
|
5318
5425
|
new Mutex();
|
|
5319
5426
|
|
|
5320
5427
|
var name$b = "sha3";
|
|
5321
|
-
var data$b = "
|
|
5322
|
-
var hash$b = "
|
|
5428
|
+
var data$b = "AGFzbQEAAAABFARgAAF/YAF/AGACf38AYAN/f38AAwgHAAEBAgEAAwUEAQECAgYOAn8BQZCNBQt/AEGACAsHcAgGbWVtb3J5AgAOSGFzaF9HZXRCdWZmZXIAAAlIYXNoX0luaXQAAQtIYXNoX1VwZGF0ZQACCkhhc2hfRmluYWwABA1IYXNoX0dldFN0YXRlAAUOSGFzaF9DYWxjdWxhdGUABgpTVEFURV9TSVpFAwEKqBwHBQBBgAoL1wMAQQBCADcDgI0BQQBCADcD+IwBQQBCADcD8IwBQQBCADcD6IwBQQBCADcD4IwBQQBCADcD2IwBQQBCADcD0IwBQQBCADcDyIwBQQBCADcDwIwBQQBCADcDuIwBQQBCADcDsIwBQQBCADcDqIwBQQBCADcDoIwBQQBCADcDmIwBQQBCADcDkIwBQQBCADcDiIwBQQBCADcDgIwBQQBCADcD+IsBQQBCADcD8IsBQQBCADcD6IsBQQBCADcD4IsBQQBCADcD2IsBQQBCADcD0IsBQQBCADcDyIsBQQBCADcDwIsBQQBCADcDuIsBQQBCADcDsIsBQQBCADcDqIsBQQBCADcDoIsBQQBCADcDmIsBQQBCADcDkIsBQQBCADcDiIsBQQBCADcDgIsBQQBCADcD+IoBQQBCADcD8IoBQQBCADcD6IoBQQBCADcD4IoBQQBCADcD2IoBQQBCADcD0IoBQQBCADcDyIoBQQBCADcDwIoBQQBCADcDuIoBQQBCADcDsIoBQQBCADcDqIoBQQBCADcDoIoBQQBCADcDmIoBQQBCADcDkIoBQQBCADcDiIoBQQBCADcDgIoBQQBBwAwgAEEBdGtBA3Y2AoyNAUEAQQA2AoiNAQuMAwEIfwJAQQAoAoiNASIBQQBIDQBBACABIABqQQAoAoyNASICcDYCiI0BAkACQCABDQBBgAohAwwBCwJAIAIgAWsiBCAAIAQgAEkbIgNFDQAgA0EDcSEFQQAhBgJAIANBBEkNACABQYCKAWohByADQXxxIQhBACEGA0AgByAGaiIDQcgBaiAGQYAKai0AADoAACADQckBaiAGQYEKai0AADoAACADQcoBaiAGQYIKai0AADoAACADQcsBaiAGQYMKai0AADoAACAIIAZBBGoiBkcNAAsLIAVFDQAgAUHIiwFqIQMDQCADIAZqIAZBgApqLQAAOgAAIAZBAWohBiAFQX9qIgUNAAsLIAQgAEsNAUHIiwEgAhADIAAgBGshACAEQYAKaiEDCwJAIAAgAkkNAANAIAMgAhADIAMgAmohAyAAIAJrIgAgAk8NAAsLIABFDQBBACECQcgBIQYDQCAGQYCKAWogAyAGakG4fmotAAA6AAAgBkEBaiEGIAAgAkEBaiICQf8BcUsNAAsLC+QLAS1+IAApA0AhAkEAKQPAigEhAyAAKQM4IQRBACkDuIoBIQUgACkDMCEGQQApA7CKASEHIAApAyghCEEAKQOoigEhCSAAKQMgIQpBACkDoIoBIQsgACkDGCEMQQApA5iKASENIAApAxAhDkEAKQOQigEhDyAAKQMIIRBBACkDiIoBIREgACkDACESQQApA4CKASETQQApA8iKASEUAkACQCABQcgASw0AQQApA9CKASEVQQApA+CKASEWQQApA9iKASEXDAELQQApA+CKASAAKQNghSEWQQApA9iKASAAKQNYhSEXQQApA9CKASAAKQNQhSEVIBQgACkDSIUhFCABQekASQ0AQQBBACkD6IoBIAApA2iFNwPoigFBAEEAKQPwigEgACkDcIU3A/CKAUEAQQApA/iKASAAKQN4hTcD+IoBQQBBACkDgIsBIAApA4ABhTcDgIsBIAFBiQFJDQBBAEEAKQOIiwEgACkDiAGFNwOIiwELIAMgAoUhGCAFIASFIRkgByAGhSEHIAkgCIUhCCALIAqFIRogDSAMhSEJIA8gDoUhCiARIBCFIQsgEyAShSEMQQApA7iLASESQQApA5CLASETQQApA+iKASEbQQApA6CLASEcQQApA/iKASENQQApA7CLASEdQQApA4iLASEOQQApA8CLASEPQQApA5iLASEeQQApA/CKASEQQQApA6iLASERQQApA4CLASEfQcB+IQADQCAaIAcgC4UgF4UgH4UgEYVCAYmFIBSFIBCFIB6FIA+FIQIgDCAZIAqFIBaFIA6FIB2FQgGJhSAIhSAVhSANhSAchSIDIAeFISAgCSAIIAyFIBWFIA2FIByFQgGJhSAYhSAbhSAThSAShSIEIA+FISEgGCAKIBQgGoUgEIUgHoUgD4VCAYmFIBmFIBaFIA6FIB2FIgWFQjeJIiIgCyAYIAmFIBuFIBOFIBKFQgGJhSAHhSAXhSAfhSARhSIGIAqFQj6JIiNCf4WDIAMgEYVCAokiJIUhDyANIAKFQimJIiUgBCAQhUIniSImQn+FgyAihSERIBIgBYVCOIkiEiAGIA6FQg+JIidCf4WDIAMgF4VCCokiKIUhDiAEIBqFQhuJIikgKCAIIAKFQiSJIipCf4WDhSENIAYgGYVCBokiKyADIAuFQgGJIixCf4WDIBwgAoVCEokiLYUhECArIAQgHoVCCIkiLiAbIAWFQhmJIhtCf4WDhSEXIAYgHYVCPYkiGSAEIBSFQhSJIgQgCSAFhUIciSIIQn+Fg4UhFCAIIBlCf4WDIAMgH4VCLYkiA4UhGCAZIANCf4WDIBUgAoVCA4kiCYUhGSAEIAMgCUJ/hYOFIQcgCSAEQn+FgyAIhSEIIAwgAoUiAiAhQg6JIgNCf4WDIBMgBYVCFYkiBIUhCSAGIBaFQiuJIgUgAyAEQn+Fg4UhCiAEIAVCf4WDICBCLIkiBIUhCyAAQdAJaikDACAFIARCf4WDhSAChSEMICcgKEJ/hYMgKoUiBSEfIAMgBCACQn+Fg4UiAiEaICogKUJ/hYMgEoUiAyEeIC0gLkJ/hYMgG4UiBCEWICYgJCAlQn+Fg4UiBiEdIBsgK0J/hYMgLIUiKCEVICMgJiAiQn+Fg4UiIiEcIC4gLCAtQn+Fg4UiJiEbICcgKSASQn+Fg4UiJyETICMgJEJ/hYMgJYUiIyESIABBCGoiAA0AC0EAIBE3A6iLAUEAIAU3A4CLAUEAIBc3A9iKAUEAIAc3A7CKAUEAIAs3A4iKAUEAIA83A8CLAUEAIAM3A5iLAUEAIBA3A/CKAUEAIBQ3A8iKAUEAIAI3A6CKAUEAIAY3A7CLAUEAIA43A4iLAUEAIAQ3A+CKAUEAIBk3A7iKAUEAIAo3A5CKAUEAICI3A6CLAUEAIA03A/iKAUEAICg3A9CKAUEAIAg3A6iKAUEAIAw3A4CKAUEAICM3A7iLAUEAICc3A5CLAUEAICY3A+iKAUEAIBg3A8CKAUEAIAk3A5iKAQv4AgEFf0HkAEEAKAKMjQEiAUEBdmshAgJAQQAoAoiNASIDQQBIDQAgASEEAkAgASADRg0AIANByIsBaiEFQQAhAwNAIAUgA2pBADoAACADQQFqIgMgAUEAKAKIjQEiBGtJDQALCyAEQciLAWoiAyADLQAAIAByOgAAIAFBx4sBaiIDIAMtAABBgAFyOgAAQciLASABEANBAEGAgICAeDYCiI0BCwJAIAJBBEkNACACQQJ2IgNBA3EhBUEAIQQCQCADQX9qQQNJDQAgA0H8////A3EhAUEAIQNBACEEA0AgA0GACmogA0GAigFqKAIANgIAIANBhApqIANBhIoBaigCADYCACADQYgKaiADQYiKAWooAgA2AgAgA0GMCmogA0GMigFqKAIANgIAIANBEGohAyABIARBBGoiBEcNAAsLIAVFDQAgBUECdCEBIARBAnQhAwNAIANBgApqIANBgIoBaigCADYCACADQQRqIQMgAUF8aiIBDQALCwsGAEGAigEL0QYBA39BAEIANwOAjQFBAEIANwP4jAFBAEIANwPwjAFBAEIANwPojAFBAEIANwPgjAFBAEIANwPYjAFBAEIANwPQjAFBAEIANwPIjAFBAEIANwPAjAFBAEIANwO4jAFBAEIANwOwjAFBAEIANwOojAFBAEIANwOgjAFBAEIANwOYjAFBAEIANwOQjAFBAEIANwOIjAFBAEIANwOAjAFBAEIANwP4iwFBAEIANwPwiwFBAEIANwPoiwFBAEIANwPgiwFBAEIANwPYiwFBAEIANwPQiwFBAEIANwPIiwFBAEIANwPAiwFBAEIANwO4iwFBAEIANwOwiwFBAEIANwOoiwFBAEIANwOgiwFBAEIANwOYiwFBAEIANwOQiwFBAEIANwOIiwFBAEIANwOAiwFBAEIANwP4igFBAEIANwPwigFBAEIANwPoigFBAEIANwPgigFBAEIANwPYigFBAEIANwPQigFBAEIANwPIigFBAEIANwPAigFBAEIANwO4igFBAEIANwOwigFBAEIANwOoigFBAEIANwOgigFBAEIANwOYigFBAEIANwOQigFBAEIANwOIigFBAEIANwOAigFBAEHADCABQQF0a0EDdjYCjI0BQQBBADYCiI0BIAAQAkHkAEEAKAKMjQEiAEEBdmshAwJAQQAoAoiNASIBQQBIDQAgACEEAkAgACABRg0AIAFByIsBaiEFQQAhAQNAIAUgAWpBADoAACABQQFqIgEgAEEAKAKIjQEiBGtJDQALCyAEQciLAWoiASABLQAAIAJyOgAAIABBx4sBaiIBIAEtAABBgAFyOgAAQciLASAAEANBAEGAgICAeDYCiI0BCwJAIANBBEkNACADQQJ2IgFBA3EhBUEAIQQCQCABQX9qQQNJDQAgAUH8////A3EhAEEAIQFBACEEA0AgAUGACmogAUGAigFqKAIANgIAIAFBhApqIAFBhIoBaigCADYCACABQYgKaiABQYiKAWooAgA2AgAgAUGMCmogAUGMigFqKAIANgIAIAFBEGohASAAIARBBGoiBEcNAAsLIAVFDQAgBUECdCEAIARBAnQhAQNAIAFBgApqIAFBgIoBaigCADYCACABQQRqIQEgAEF8aiIADQALCwsL2AEBAEGACAvQAZABAAAAAAAAAAAAAAAAAAABAAAAAAAAAIKAAAAAAAAAioAAAAAAAIAAgACAAAAAgIuAAAAAAAAAAQAAgAAAAACBgACAAAAAgAmAAAAAAACAigAAAAAAAACIAAAAAAAAAAmAAIAAAAAACgAAgAAAAACLgACAAAAAAIsAAAAAAACAiYAAAAAAAIADgAAAAAAAgAKAAAAAAACAgAAAAAAAAIAKgAAAAAAAAAoAAIAAAACAgYAAgAAAAICAgAAAAAAAgAEAAIAAAAAACIAAgAAAAIA=";
|
|
5429
|
+
var hash$b = "f2f6f5b2";
|
|
5323
5430
|
var wasmJson$b = {
|
|
5324
5431
|
name: name$b,
|
|
5325
5432
|
data: data$b,
|
|
@@ -5364,8 +5471,8 @@ new Mutex();
|
|
|
5364
5471
|
new Mutex();
|
|
5365
5472
|
|
|
5366
5473
|
var name$9 = "sha512";
|
|
5367
|
-
var data$9 = "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";
|
|
5368
|
-
var hash$9 = "
|
|
5474
|
+
var data$9 = "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";
|
|
5475
|
+
var hash$9 = "cdd57f6a";
|
|
5369
5476
|
var wasmJson$9 = {
|
|
5370
5477
|
name: name$9,
|
|
5371
5478
|
data: data$9,
|
|
@@ -5403,8 +5510,8 @@ new Mutex();
|
|
|
5403
5510
|
new Mutex();
|
|
5404
5511
|
|
|
5405
5512
|
var name$4 = "ripemd160";
|
|
5406
|
-
var data$4 = "AGFzbQEAAAABEQRgAAF/YAAAYAF/
|
|
5407
|
-
var hash$4 = "
|
|
5513
|
+
var data$4 = "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";
|
|
5514
|
+
var hash$4 = "c089a7ca";
|
|
5408
5515
|
var wasmJson$4 = {
|
|
5409
5516
|
name: name$4,
|
|
5410
5517
|
data: data$4,
|
|
@@ -5690,106 +5797,7 @@ var utils$p = {
|
|
|
5690
5797
|
codecs: globalThis.peernetCodecs
|
|
5691
5798
|
};
|
|
5692
5799
|
|
|
5693
|
-
|
|
5694
|
-
* @param {string}
|
|
5695
|
-
*/
|
|
5696
|
-
var isHex = (function (string) { return /^[A-F0-9]+$/i.test(string); });
|
|
5697
|
-
|
|
5698
|
-
let BasicInterface$1 = class BasicInterface {
|
|
5699
|
-
encoded;
|
|
5700
|
-
decoded;
|
|
5701
|
-
keys;
|
|
5702
|
-
name;
|
|
5703
|
-
#proto;
|
|
5704
|
-
set proto(value) {
|
|
5705
|
-
this.#proto = value;
|
|
5706
|
-
this.keys = Object.keys(value);
|
|
5707
|
-
}
|
|
5708
|
-
get proto() {
|
|
5709
|
-
return this.#proto;
|
|
5710
|
-
}
|
|
5711
|
-
decode(encoded) {
|
|
5712
|
-
encoded = encoded || this.encoded;
|
|
5713
|
-
return new Object();
|
|
5714
|
-
}
|
|
5715
|
-
encode(decoded) {
|
|
5716
|
-
decoded = decoded || this.decoded;
|
|
5717
|
-
return new Uint8Array();
|
|
5718
|
-
}
|
|
5719
|
-
// get Codec(): Codec {}
|
|
5720
|
-
protoEncode(data) {
|
|
5721
|
-
// check schema
|
|
5722
|
-
return index$2.encode(this.proto, data, false);
|
|
5723
|
-
}
|
|
5724
|
-
protoDecode(data) {
|
|
5725
|
-
// check schema
|
|
5726
|
-
return index$2.decode(this.proto, data, false);
|
|
5727
|
-
}
|
|
5728
|
-
isHex(string) {
|
|
5729
|
-
return isHex(string);
|
|
5730
|
-
}
|
|
5731
|
-
isBase32(string) {
|
|
5732
|
-
return index$9.isBase32(string);
|
|
5733
|
-
}
|
|
5734
|
-
isBase58(string) {
|
|
5735
|
-
return base58$1.isBase58(string);
|
|
5736
|
-
}
|
|
5737
|
-
fromBs32(encoded) {
|
|
5738
|
-
return this.decode(index$9.decode(encoded));
|
|
5739
|
-
}
|
|
5740
|
-
fromBs58(encoded) {
|
|
5741
|
-
return this.decode(fromBase58(encoded));
|
|
5742
|
-
}
|
|
5743
|
-
async toArray() {
|
|
5744
|
-
const array = [];
|
|
5745
|
-
for await (const value of this.encoded.values()) {
|
|
5746
|
-
array.push(value);
|
|
5747
|
-
}
|
|
5748
|
-
return array;
|
|
5749
|
-
}
|
|
5750
|
-
fromString(string) {
|
|
5751
|
-
const array = string.split(',');
|
|
5752
|
-
const arrayLike = array.map(string => Number(string));
|
|
5753
|
-
return this.decode(Uint8Array.from(arrayLike));
|
|
5754
|
-
}
|
|
5755
|
-
fromHex(string) {
|
|
5756
|
-
return this.decode(fromHex(string));
|
|
5757
|
-
}
|
|
5758
|
-
fromArray(array) {
|
|
5759
|
-
return this.decode(Uint8Array.from([...array]));
|
|
5760
|
-
}
|
|
5761
|
-
fromEncoded(encoded) {
|
|
5762
|
-
return this.decode(encoded);
|
|
5763
|
-
}
|
|
5764
|
-
toString() {
|
|
5765
|
-
if (!this.encoded)
|
|
5766
|
-
this.encode();
|
|
5767
|
-
return this.encoded.toString();
|
|
5768
|
-
}
|
|
5769
|
-
toHex() {
|
|
5770
|
-
if (!this.encoded)
|
|
5771
|
-
this.encode();
|
|
5772
|
-
return toHex$2(this.encoded.toString().split(',').map(number => Number(number)));
|
|
5773
|
-
}
|
|
5774
|
-
/**
|
|
5775
|
-
* @return {String} encoded
|
|
5776
|
-
*/
|
|
5777
|
-
toBs32() {
|
|
5778
|
-
if (!this.encoded)
|
|
5779
|
-
this.encode();
|
|
5780
|
-
return toBase32(this.encoded);
|
|
5781
|
-
}
|
|
5782
|
-
/**
|
|
5783
|
-
* @return {String} encoded
|
|
5784
|
-
*/
|
|
5785
|
-
toBs58() {
|
|
5786
|
-
if (!this.encoded)
|
|
5787
|
-
this.encode();
|
|
5788
|
-
return toBase58(this.encoded);
|
|
5789
|
-
}
|
|
5790
|
-
};
|
|
5791
|
-
|
|
5792
|
-
let Codec$1 = class Codec extends BasicInterface$1 {
|
|
5800
|
+
let Codec$1 = class Codec extends BasicInterface {
|
|
5793
5801
|
codecBuffer;
|
|
5794
5802
|
codec;
|
|
5795
5803
|
hashAlg;
|
|
@@ -5878,7 +5886,7 @@ let Codec$1 = class Codec extends BasicInterface$1 {
|
|
|
5878
5886
|
}
|
|
5879
5887
|
};
|
|
5880
5888
|
|
|
5881
|
-
|
|
5889
|
+
class CodecHash extends BasicInterface {
|
|
5882
5890
|
codec;
|
|
5883
5891
|
codecs;
|
|
5884
5892
|
digest;
|
|
@@ -5891,6 +5899,7 @@ let CodecHash$1 = class CodecHash extends BasicInterface$1 {
|
|
|
5891
5899
|
this.name = 'disco-hash';
|
|
5892
5900
|
if (options.codecs)
|
|
5893
5901
|
this.codecs = options.codecs;
|
|
5902
|
+
// @ts-ignore
|
|
5894
5903
|
return this.init(buffer);
|
|
5895
5904
|
}
|
|
5896
5905
|
async init(uint8Array) {
|
|
@@ -5986,14 +5995,14 @@ let CodecHash$1 = class CodecHash extends BasicInterface$1 {
|
|
|
5986
5995
|
if (typeof buffer === 'object')
|
|
5987
5996
|
this.fromJSON(buffer);
|
|
5988
5997
|
}
|
|
5989
|
-
decode(
|
|
5990
|
-
this.encoded =
|
|
5991
|
-
const codec = index$8.decode(
|
|
5998
|
+
decode(encoded) {
|
|
5999
|
+
this.encoded = encoded;
|
|
6000
|
+
const codec = index$8.decode(encoded);
|
|
5992
6001
|
this.codec = new Codec$1(codec);
|
|
5993
6002
|
// TODO: validate codec
|
|
5994
|
-
|
|
5995
|
-
this.size = index$8.decode(
|
|
5996
|
-
this.digest =
|
|
6003
|
+
encoded = encoded.slice(index$8.decode.bytes);
|
|
6004
|
+
this.size = index$8.decode(encoded);
|
|
6005
|
+
this.digest = encoded.slice(index$8.decode.bytes);
|
|
5997
6006
|
if (this.digest.length !== this.size) {
|
|
5998
6007
|
throw new Error(`hash length inconsistent: ${this.encoded.toString()}`);
|
|
5999
6008
|
}
|
|
@@ -6008,9 +6017,9 @@ let CodecHash$1 = class CodecHash extends BasicInterface$1 {
|
|
|
6008
6017
|
digest: this.digest,
|
|
6009
6018
|
};
|
|
6010
6019
|
}
|
|
6011
|
-
}
|
|
6020
|
+
}
|
|
6012
6021
|
|
|
6013
|
-
let FormatInterface$1 = class FormatInterface extends BasicInterface
|
|
6022
|
+
let FormatInterface$1 = class FormatInterface extends BasicInterface {
|
|
6014
6023
|
hashFormat;
|
|
6015
6024
|
init(buffer) {
|
|
6016
6025
|
if (buffer instanceof Uint8Array)
|
|
@@ -6095,7 +6104,7 @@ let FormatInterface$1 = class FormatInterface extends BasicInterface$1 {
|
|
|
6095
6104
|
* @return {PeernetHash}
|
|
6096
6105
|
*/
|
|
6097
6106
|
get peernetHash() {
|
|
6098
|
-
return new CodecHash
|
|
6107
|
+
return new CodecHash(this.decoded, { name: this.name });
|
|
6099
6108
|
}
|
|
6100
6109
|
/**
|
|
6101
6110
|
* @return {peernetHash}
|
|
@@ -6127,6 +6136,7 @@ let FormatInterface$1 = class FormatInterface extends BasicInterface$1 {
|
|
|
6127
6136
|
}
|
|
6128
6137
|
}
|
|
6129
6138
|
};
|
|
6139
|
+
|
|
6130
6140
|
const FormatInterface = FormatInterface$1;
|
|
6131
6141
|
const Codec = Codec$1;
|
|
6132
6142
|
|
|
@@ -6489,6 +6499,7 @@ let LeofcoinStorage$1 = class LeofcoinStorage {
|
|
|
6489
6499
|
let size = 0;
|
|
6490
6500
|
const query = await this.db.iterate();
|
|
6491
6501
|
for await (const item of query) {
|
|
6502
|
+
// @ts-ignore
|
|
6492
6503
|
size += item.value ? item.value.length : item[1].length;
|
|
6493
6504
|
}
|
|
6494
6505
|
return size;
|
|
@@ -6578,15 +6589,15 @@ var typedArrayConcat = (input, options = {length: undefined, seperator: undefine
|
|
|
6578
6589
|
return typedArray
|
|
6579
6590
|
};
|
|
6580
6591
|
|
|
6581
|
-
const concatAndDoubleHash
|
|
6592
|
+
const concatAndDoubleHash = async (input) => {
|
|
6582
6593
|
return new Uint8Array(await createDoubleHash(typedArrayConcat(input), 'SHA-256'));
|
|
6583
6594
|
};
|
|
6584
6595
|
|
|
6585
|
-
const encode$
|
|
6596
|
+
const encode$2 = async (source, prefix = new TextEncoder().encode('00'), hex) => {
|
|
6586
6597
|
if (!(source instanceof Uint8Array) || !(prefix instanceof Uint8Array)) {
|
|
6587
6598
|
throw new TypeError('Expected Uint8Array');
|
|
6588
6599
|
}
|
|
6589
|
-
const hash = await concatAndDoubleHash
|
|
6600
|
+
const hash = await concatAndDoubleHash([
|
|
6590
6601
|
prefix,
|
|
6591
6602
|
source
|
|
6592
6603
|
]);
|
|
@@ -6599,11 +6610,11 @@ const encode$3 = async (source, prefix = new TextEncoder().encode('00'), hex) =>
|
|
|
6599
6610
|
return base58$1.encodeHex(uint8Array);
|
|
6600
6611
|
return base58$1.encode(uint8Array);
|
|
6601
6612
|
};
|
|
6602
|
-
const decode$
|
|
6613
|
+
const decode$3 = async (string, hex) => {
|
|
6603
6614
|
let uint8Array = hex ? base58$1.decodeHex(string) : base58$1.decode(string);
|
|
6604
6615
|
const prefix = uint8Array.subarray(0, 2);
|
|
6605
6616
|
const source = uint8Array.subarray(2, -4);
|
|
6606
|
-
const hash = await concatAndDoubleHash
|
|
6617
|
+
const hash = await concatAndDoubleHash([
|
|
6607
6618
|
prefix,
|
|
6608
6619
|
source
|
|
6609
6620
|
]);
|
|
@@ -6617,21 +6628,21 @@ const decode$4 = async (string, hex) => {
|
|
|
6617
6628
|
}
|
|
6618
6629
|
return { prefix, data: source };
|
|
6619
6630
|
};
|
|
6620
|
-
const isBase58check
|
|
6631
|
+
const isBase58check = (string, hex) => {
|
|
6621
6632
|
try {
|
|
6622
|
-
hex ? decode$
|
|
6633
|
+
hex ? decode$3(string, true) : decode$3(string);
|
|
6623
6634
|
return true;
|
|
6624
6635
|
}
|
|
6625
6636
|
catch (e) {
|
|
6626
6637
|
return false;
|
|
6627
6638
|
}
|
|
6628
6639
|
};
|
|
6629
|
-
const encodeHex
|
|
6630
|
-
const decodeHex
|
|
6631
|
-
const isBase58checkHex
|
|
6632
|
-
var base58check
|
|
6640
|
+
const encodeHex = (uint8Array, prefix = new TextEncoder().encode('00')) => encode$2(uint8Array, prefix, true);
|
|
6641
|
+
const decodeHex = (string) => decode$3(string, true);
|
|
6642
|
+
const isBase58checkHex = (string) => isBase58check(string, true);
|
|
6643
|
+
var base58check = { encode: encode$2, decode: decode$3, encodeHex, decodeHex, isBase58check, isBase58checkHex };
|
|
6633
6644
|
|
|
6634
|
-
const decode$
|
|
6645
|
+
const decode$2 = (multiWif, expectedVersion, expectedCodec) => {
|
|
6635
6646
|
const decoded = base58$1.decode(multiWif);
|
|
6636
6647
|
let [version, codec, privateKey] = index$6(decoded);
|
|
6637
6648
|
version = Number(new TextDecoder().decode(version));
|
|
@@ -6650,10 +6661,10 @@ var index$1 = {
|
|
|
6650
6661
|
privateKey
|
|
6651
6662
|
]));
|
|
6652
6663
|
},
|
|
6653
|
-
decode: decode$
|
|
6664
|
+
decode: decode$2,
|
|
6654
6665
|
isMultiWif: (multiWif) => {
|
|
6655
6666
|
try {
|
|
6656
|
-
const { version, codec, privateKey } = decode$
|
|
6667
|
+
const { version, codec, privateKey } = decode$2(multiWif);
|
|
6657
6668
|
if (version === undefined)
|
|
6658
6669
|
return false;
|
|
6659
6670
|
if (codec === undefined)
|
|
@@ -16419,59 +16430,6 @@ var networks$1 = {
|
|
|
16419
16430
|
ethereum
|
|
16420
16431
|
};
|
|
16421
16432
|
|
|
16422
|
-
const concatAndDoubleHash = async (input) => {
|
|
16423
|
-
return new Uint8Array(await createDoubleHash(typedArrayConcat(input), 'SHA-256'));
|
|
16424
|
-
};
|
|
16425
|
-
|
|
16426
|
-
const encode$2 = async (source, prefix = new TextEncoder().encode('00'), hex) => {
|
|
16427
|
-
if (!(source instanceof Uint8Array) || !(prefix instanceof Uint8Array)) {
|
|
16428
|
-
throw new TypeError('Expected Uint8Array');
|
|
16429
|
-
}
|
|
16430
|
-
const hash = await concatAndDoubleHash([
|
|
16431
|
-
prefix,
|
|
16432
|
-
source
|
|
16433
|
-
]);
|
|
16434
|
-
const uint8Array = typedArrayConcat([
|
|
16435
|
-
prefix,
|
|
16436
|
-
source,
|
|
16437
|
-
hash.subarray(0, 4)
|
|
16438
|
-
]);
|
|
16439
|
-
if (hex)
|
|
16440
|
-
return base58$1.encodeHex(uint8Array);
|
|
16441
|
-
return base58$1.encode(uint8Array);
|
|
16442
|
-
};
|
|
16443
|
-
const decode$2 = async (string, hex) => {
|
|
16444
|
-
let uint8Array = hex ? base58$1.decodeHex(string) : base58$1.decode(string);
|
|
16445
|
-
const prefix = uint8Array.subarray(0, 2);
|
|
16446
|
-
const source = uint8Array.subarray(2, -4);
|
|
16447
|
-
const hash = await concatAndDoubleHash([
|
|
16448
|
-
prefix,
|
|
16449
|
-
source
|
|
16450
|
-
]);
|
|
16451
|
-
let index = 0;
|
|
16452
|
-
const slice = uint8Array.subarray(-4);
|
|
16453
|
-
for (const check of slice) {
|
|
16454
|
-
if (check !== hash[index]) {
|
|
16455
|
-
throw new Error('Invalid checksum');
|
|
16456
|
-
}
|
|
16457
|
-
index++;
|
|
16458
|
-
}
|
|
16459
|
-
return { prefix, data: source };
|
|
16460
|
-
};
|
|
16461
|
-
const isBase58check = (string, hex) => {
|
|
16462
|
-
try {
|
|
16463
|
-
hex ? decode$2(string, true) : decode$2(string);
|
|
16464
|
-
return true;
|
|
16465
|
-
}
|
|
16466
|
-
catch (e) {
|
|
16467
|
-
return false;
|
|
16468
|
-
}
|
|
16469
|
-
};
|
|
16470
|
-
const encodeHex = (uint8Array, prefix = new TextEncoder().encode('00')) => encode$2(uint8Array, prefix, true);
|
|
16471
|
-
const decodeHex = (string) => decode$2(string, true);
|
|
16472
|
-
const isBase58checkHex = (string) => isBase58check(string, true);
|
|
16473
|
-
var base58check = { encode: encode$2, decode: decode$2, encodeHex, decodeHex, isBase58check, isBase58checkHex };
|
|
16474
|
-
|
|
16475
16433
|
const encode$1 = (version, privateKey, compressed) => {
|
|
16476
16434
|
if (privateKey.length !== 32)
|
|
16477
16435
|
throw new TypeError(`Invalid privateKey length: expected 32 got ${privateKey.length}`);
|
|
@@ -16517,6 +16475,7 @@ class HdNode {
|
|
|
16517
16475
|
this.#privateKey = privateKey;
|
|
16518
16476
|
this.#publicKey = publicKey;
|
|
16519
16477
|
this.#chainCode = chainCode;
|
|
16478
|
+
// @ts-ignore
|
|
16520
16479
|
this.#network = network || networks$1.leofcoin;
|
|
16521
16480
|
this.#depth = depth;
|
|
16522
16481
|
this.#index = index;
|
|
@@ -16591,7 +16550,7 @@ class HdNode {
|
|
|
16591
16550
|
else {
|
|
16592
16551
|
set.push(new Uint8Array(this.publicKey));
|
|
16593
16552
|
}
|
|
16594
|
-
return base58check
|
|
16553
|
+
return base58check.encode(index$7(set));
|
|
16595
16554
|
}
|
|
16596
16555
|
toWIF() {
|
|
16597
16556
|
if (!this.#privateKey)
|
|
@@ -16665,24 +16624,31 @@ class HdNode {
|
|
|
16665
16624
|
let index;
|
|
16666
16625
|
if (indexString.slice(-1) === `'`) {
|
|
16667
16626
|
index = parseInt(indexString.slice(0, -1), 10);
|
|
16627
|
+
// @ts-ignore
|
|
16668
16628
|
prevHd = await prevHd.deriveHardened(index);
|
|
16669
16629
|
}
|
|
16670
16630
|
else {
|
|
16671
16631
|
index = parseInt(indexString, 10);
|
|
16632
|
+
// @ts-ignore
|
|
16672
16633
|
prevHd = await prevHd.derive(index);
|
|
16673
16634
|
}
|
|
16674
16635
|
}
|
|
16675
16636
|
return prevHd;
|
|
16676
16637
|
}
|
|
16677
16638
|
async fromBase58(string, network) {
|
|
16678
|
-
let buffer = (await base58check
|
|
16639
|
+
let buffer = (await base58check.decode(string)).data;
|
|
16640
|
+
// @ts-ignore
|
|
16679
16641
|
network = network || networks$1.leofcoin;
|
|
16680
|
-
// 4 bytes: version bytes
|
|
16681
16642
|
let [version, depth, parentFingerprint, index, chainCode, k, privateKey] = index$6(buffer);
|
|
16643
|
+
// @ts-ignore
|
|
16682
16644
|
version = Number(new TextDecoder().decode(version));
|
|
16645
|
+
// @ts-ignore
|
|
16683
16646
|
depth = Number(new TextDecoder().decode(depth));
|
|
16647
|
+
// @ts-ignore
|
|
16684
16648
|
parentFingerprint = Number(new TextDecoder().decode(parentFingerprint));
|
|
16649
|
+
// @ts-ignore
|
|
16685
16650
|
index = Number(new TextDecoder().decode(index));
|
|
16651
|
+
// @ts-ignore
|
|
16686
16652
|
k = privateKey ? 0 : k;
|
|
16687
16653
|
if (version !== network.bip32.private && version !== network.bip32.public)
|
|
16688
16654
|
throw new TypeError('Invalid network version');
|
|
@@ -16786,7 +16752,7 @@ class HDWallet {
|
|
|
16786
16752
|
return address;
|
|
16787
16753
|
}
|
|
16788
16754
|
leofcoinAddress() {
|
|
16789
|
-
return base58check
|
|
16755
|
+
return base58check.encode(this.publicKey);
|
|
16790
16756
|
}
|
|
16791
16757
|
get address() {
|
|
16792
16758
|
return this.getAddressForCoin();
|
|
@@ -16808,7 +16774,7 @@ class HDWallet {
|
|
|
16808
16774
|
// if (coin_type === 0) return this.bitcoinAddress()
|
|
16809
16775
|
}
|
|
16810
16776
|
get accountAddress() {
|
|
16811
|
-
return this.ifNotLocked(async () => base58check
|
|
16777
|
+
return this.ifNotLocked(async () => base58check.encode(this.hdnode.publicKey));
|
|
16812
16778
|
}
|
|
16813
16779
|
get isTestnet() {
|
|
16814
16780
|
return this.network.coin_type === 1;
|
|
@@ -16874,7 +16840,7 @@ class HDWallet {
|
|
|
16874
16840
|
}
|
|
16875
16841
|
async fromAddress(address, chainCode, network) {
|
|
16876
16842
|
network = this.validateNetwork(network);
|
|
16877
|
-
address = (await base58check
|
|
16843
|
+
address = (await base58check.decode(address)).data;
|
|
16878
16844
|
if (!chainCode || chainCode && !Buffer.isBuffer(chainCode))
|
|
16879
16845
|
chainCode = address.slice(1);
|
|
16880
16846
|
await this.defineHDNode(await (new HdNode()).fromPublicKey(address, chainCode, network));
|
|
@@ -17133,7 +17099,7 @@ class MultiHDNode extends HDWallet {
|
|
|
17133
17099
|
super(network, hdnode);
|
|
17134
17100
|
}
|
|
17135
17101
|
get id() {
|
|
17136
|
-
return base58check
|
|
17102
|
+
return base58check.encode(index$7([
|
|
17137
17103
|
new TextEncoder().encode(this.version.toString()),
|
|
17138
17104
|
this.account(0).hdnode.neutered.publicKey
|
|
17139
17105
|
]));
|
|
@@ -17142,18 +17108,18 @@ class MultiHDNode extends HDWallet {
|
|
|
17142
17108
|
return this.toMultiWif();
|
|
17143
17109
|
}
|
|
17144
17110
|
async fromId(id) {
|
|
17145
|
-
let buffer = (await base58check
|
|
17111
|
+
let buffer = (await base58check.decode(id)).data;
|
|
17146
17112
|
index.decode(buffer);
|
|
17147
17113
|
buffer = buffer.slice(index.decode.bytes);
|
|
17148
17114
|
this.fromPublicKey(buffer, null, this.networkName);
|
|
17149
17115
|
}
|
|
17150
17116
|
async import(password, encrypted) {
|
|
17151
|
-
const { prefix, data } = await base58check
|
|
17117
|
+
const { prefix, data } = await base58check.decode(encrypted);
|
|
17152
17118
|
const decrypted = await decrypt(password, data);
|
|
17153
17119
|
await this.fromMultiWif(decrypted);
|
|
17154
17120
|
}
|
|
17155
17121
|
async export(password) {
|
|
17156
|
-
return base58check
|
|
17122
|
+
return base58check.encode(await encrypt(password, await this.toMultiWif()));
|
|
17157
17123
|
}
|
|
17158
17124
|
async lock(password) {
|
|
17159
17125
|
// todo redefine hdnode
|
|
@@ -17161,7 +17127,7 @@ class MultiHDNode extends HDWallet {
|
|
|
17161
17127
|
this.locked = true;
|
|
17162
17128
|
}
|
|
17163
17129
|
async unlock(password) {
|
|
17164
|
-
const { prefix, data } = await base58check
|
|
17130
|
+
const { prefix, data } = await base58check.decode(this.#encrypted);
|
|
17165
17131
|
await decrypt(password, data);
|
|
17166
17132
|
this.locked = false;
|
|
17167
17133
|
}
|
|
@@ -17224,7 +17190,7 @@ class MultiWallet extends MultiHDNode {
|
|
|
17224
17190
|
super(network, hdnode);
|
|
17225
17191
|
}
|
|
17226
17192
|
get id() {
|
|
17227
|
-
return base58check
|
|
17193
|
+
return base58check.encode(index$7([
|
|
17228
17194
|
new TextEncoder().encode(this.version.toString()),
|
|
17229
17195
|
this.account(0).hdnode.neutered.publicKey
|
|
17230
17196
|
]));
|
|
@@ -20215,6 +20181,7 @@ class Identity {
|
|
|
20215
20181
|
#wallet;
|
|
20216
20182
|
network;
|
|
20217
20183
|
id;
|
|
20184
|
+
selectedAccount;
|
|
20218
20185
|
constructor(network) {
|
|
20219
20186
|
this.network = network;
|
|
20220
20187
|
}
|
|
@@ -20237,6 +20204,7 @@ class Identity {
|
|
|
20237
20204
|
}
|
|
20238
20205
|
}
|
|
20239
20206
|
if (!password) {
|
|
20207
|
+
// @ts-ignore
|
|
20240
20208
|
const importee = await import('./password-4357020e.js');
|
|
20241
20209
|
password = await importee.default();
|
|
20242
20210
|
}
|
|
@@ -20245,17 +20213,17 @@ class Identity {
|
|
|
20245
20213
|
const pub = await globalThis.accountStore.get('public');
|
|
20246
20214
|
this.id = JSON.parse(new TextDecoder().decode(pub)).walletId;
|
|
20247
20215
|
const selected = await globalThis.walletStore.get('selected-account');
|
|
20248
|
-
|
|
20216
|
+
this.selectedAccount = new TextDecoder().decode(selected);
|
|
20249
20217
|
}
|
|
20250
20218
|
else {
|
|
20251
|
-
const importee = await import(/* webpackChunkName: "generate-account" */ './index-
|
|
20219
|
+
const importee = await import(/* webpackChunkName: "generate-account" */ './index-329e0324-67daaccb.js');
|
|
20252
20220
|
const { identity, accounts } = await importee.default(password, this.network);
|
|
20253
20221
|
await globalThis.accountStore.put('public', JSON.stringify({ walletId: identity.walletId }));
|
|
20254
20222
|
await globalThis.walletStore.put('version', String(1));
|
|
20255
20223
|
await globalThis.walletStore.put('accounts', JSON.stringify(accounts));
|
|
20256
20224
|
await globalThis.walletStore.put('selected-account', accounts[0][1]);
|
|
20257
20225
|
await globalThis.walletStore.put('identity', JSON.stringify(identity));
|
|
20258
|
-
|
|
20226
|
+
this.selectedAccount = accounts[0][1];
|
|
20259
20227
|
this.id = identity.walletId;
|
|
20260
20228
|
}
|
|
20261
20229
|
const identity = JSON.parse(new TextDecoder().decode(await globalThis.walletStore.get('identity')));
|
|
@@ -20263,6 +20231,10 @@ class Identity {
|
|
|
20263
20231
|
const multiWIF = await decrypt(password, base58$1.decode(identity.multiWIF));
|
|
20264
20232
|
await this.#wallet.fromMultiWif(multiWIF);
|
|
20265
20233
|
}
|
|
20234
|
+
selectAccount(account) {
|
|
20235
|
+
this.selectedAccount = account;
|
|
20236
|
+
return walletStore.put('selected-account', account);
|
|
20237
|
+
}
|
|
20266
20238
|
sign(hash) {
|
|
20267
20239
|
return this.#wallet.sign(hash.subarray(0, 32));
|
|
20268
20240
|
}
|
|
@@ -20283,7 +20255,7 @@ class Identity {
|
|
|
20283
20255
|
return globalThis.navigator ? await browser.toDataURL(exported) : await browser.toString(exported, { type: 'terminal' });
|
|
20284
20256
|
}
|
|
20285
20257
|
async importQR(image, password) {
|
|
20286
|
-
const multiWIF = e.scanImage(image);
|
|
20258
|
+
const multiWIF = await e.default.scanImage(image);
|
|
20287
20259
|
return this.import(password, multiWIF);
|
|
20288
20260
|
}
|
|
20289
20261
|
}
|
|
@@ -20363,12 +20335,18 @@ class Peernet {
|
|
|
20363
20335
|
get id() {
|
|
20364
20336
|
return this.identity.id;
|
|
20365
20337
|
}
|
|
20338
|
+
get selectedAccount() {
|
|
20339
|
+
return this.identity.selectedAccount;
|
|
20340
|
+
}
|
|
20366
20341
|
get accounts() {
|
|
20367
20342
|
return this.identity.accounts;
|
|
20368
20343
|
}
|
|
20369
20344
|
get defaultStores() {
|
|
20370
20345
|
return ['account', 'wallet', 'block', 'transaction', 'chain', 'data', 'message'];
|
|
20371
20346
|
}
|
|
20347
|
+
selectAccount(account) {
|
|
20348
|
+
return this.identity.selectAccount(account);
|
|
20349
|
+
}
|
|
20372
20350
|
addProto(name, proto) {
|
|
20373
20351
|
if (!globalThis.peernet.protos[name])
|
|
20374
20352
|
globalThis.peernet.protos[name] = proto;
|
|
@@ -20414,7 +20392,7 @@ class Peernet {
|
|
|
20414
20392
|
* @return {String} id - peerId
|
|
20415
20393
|
*/
|
|
20416
20394
|
getConnection(id) {
|
|
20417
|
-
return this.
|
|
20395
|
+
return this.connections[id];
|
|
20418
20396
|
}
|
|
20419
20397
|
/**
|
|
20420
20398
|
* @private
|
|
@@ -20429,7 +20407,7 @@ class Peernet {
|
|
|
20429
20407
|
this.root = options.root;
|
|
20430
20408
|
const { RequestMessage, ResponseMessage, PeerMessage, PeerMessageResponse, PeernetMessage, DHTMessage, DHTMessageResponse, DataMessage, DataMessageResponse, PsMessage, ChatMessage, PeernetFile
|
|
20431
20409
|
// FolderMessageResponse
|
|
20432
|
-
} = await import(/* webpackChunkName: "messages" */ './messages-
|
|
20410
|
+
} = await import(/* webpackChunkName: "messages" */ './messages-000b7f84-fd07a3bf.js');
|
|
20433
20411
|
/**
|
|
20434
20412
|
* proto Object containing protos
|
|
20435
20413
|
* @type {Object}
|
|
@@ -20666,7 +20644,7 @@ class Peernet {
|
|
|
20666
20644
|
return;
|
|
20667
20645
|
return await blockStore.put(hash, data);
|
|
20668
20646
|
},
|
|
20669
|
-
has: async (hash) => await blockStore.has(hash
|
|
20647
|
+
has: async (hash) => await blockStore.has(hash),
|
|
20670
20648
|
};
|
|
20671
20649
|
}
|
|
20672
20650
|
get transaction() {
|