@silvana-one/mina-utils 1.1.0 → 1.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.
- package/dist/node/index.cjs +24 -116
- package/dist/node/index.d.ts +0 -1
- package/dist/node/index.js +0 -1
- package/dist/node/index.js.map +1 -1
- package/dist/node/transactions/nonce.d.ts +2 -2
- package/dist/node/transactions/nonce.js +8 -4
- package/dist/node/transactions/nonce.js.map +1 -1
- package/dist/node/transactions/send.d.ts +3 -3
- package/dist/node/transactions/send.js +9 -5
- package/dist/node/transactions/send.js.map +1 -1
- package/dist/node/utils/mina.d.ts +8 -2
- package/dist/node/utils/mina.js +11 -11
- package/dist/node/utils/mina.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/tsconfig.web.tsbuildinfo +1 -1
- package/dist/web/index.d.ts +0 -1
- package/dist/web/index.js +0 -1
- package/dist/web/index.js.map +1 -1
- package/dist/web/transactions/nonce.d.ts +2 -2
- package/dist/web/transactions/nonce.js +8 -4
- package/dist/web/transactions/nonce.js.map +1 -1
- package/dist/web/transactions/send.d.ts +3 -3
- package/dist/web/transactions/send.js +9 -5
- package/dist/web/transactions/send.js.map +1 -1
- package/dist/web/utils/mina.d.ts +8 -2
- package/dist/web/utils/mina.js +11 -11
- package/dist/web/utils/mina.js.map +1 -1
- package/package.json +3 -2
- package/src/index.ts +0 -1
- package/src/transactions/nonce.ts +9 -6
- package/src/transactions/send.ts +14 -8
- package/src/utils/mina.ts +24 -20
- package/dist/node/networks.d.ts +0 -35
- package/dist/node/networks.js +0 -106
- package/dist/node/networks.js.map +0 -1
- package/dist/web/networks.d.ts +0 -35
- package/dist/web/networks.js +0 -106
- package/dist/web/networks.js.map +0 -1
- package/src/networks.ts +0 -174
package/dist/node/index.cjs
CHANGED
|
@@ -21,11 +21,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
21
21
|
var index_exports = {};
|
|
22
22
|
__export(index_exports, {
|
|
23
23
|
BLS_FR: () => BLS_FR,
|
|
24
|
-
Devnet: () => Devnet,
|
|
25
24
|
Fr: () => Fr,
|
|
26
|
-
Lightnet: () => Lightnet,
|
|
27
|
-
Local: () => Local,
|
|
28
|
-
Mainnet: () => Mainnet,
|
|
29
25
|
Memory: () => Memory,
|
|
30
26
|
R: () => R,
|
|
31
27
|
S: () => S,
|
|
@@ -40,8 +36,6 @@ __export(index_exports, {
|
|
|
40
36
|
WITNESSES1: () => WITNESSES1,
|
|
41
37
|
WITNESSES2: () => WITNESSES2,
|
|
42
38
|
Witness: () => Witness,
|
|
43
|
-
Zeko: () => Zeko,
|
|
44
|
-
ZekoAlphaNet: () => ZekoAlphaNet,
|
|
45
39
|
accountBalance: () => accountBalance,
|
|
46
40
|
accountBalanceMina: () => accountBalanceMina,
|
|
47
41
|
accountExists: () => accountExists,
|
|
@@ -70,7 +64,6 @@ __export(index_exports, {
|
|
|
70
64
|
formatTime: () => formatTime,
|
|
71
65
|
fromBase: () => fromBase,
|
|
72
66
|
getAccountNonce: () => getAccountNonce,
|
|
73
|
-
getCanonicalBlockchain: () => getCanonicalBlockchain,
|
|
74
67
|
getCurrentNetwork: () => getCurrentNetwork,
|
|
75
68
|
getDeployer: () => getDeployer,
|
|
76
69
|
getNetworkIdHash: () => getNetworkIdHash,
|
|
@@ -86,7 +79,6 @@ __export(index_exports, {
|
|
|
86
79
|
getZkAppTxsFromBlockBerry: () => getZkAppTxsFromBlockBerry,
|
|
87
80
|
initBlockchain: () => initBlockchain,
|
|
88
81
|
makeString: () => makeString,
|
|
89
|
-
networks: () => networks,
|
|
90
82
|
parseTransactionPayloads: () => parseTransactionPayloads,
|
|
91
83
|
pinJSON: () => pinJSON,
|
|
92
84
|
rScalarPow: () => rScalarPow,
|
|
@@ -372,86 +364,7 @@ async function fee() {
|
|
|
372
364
|
|
|
373
365
|
// dist/node/utils/mina.js
|
|
374
366
|
var import_o1js5 = require("o1js");
|
|
375
|
-
|
|
376
|
-
// dist/node/networks.js
|
|
377
|
-
function getCanonicalBlockchain(chain) {
|
|
378
|
-
switch (chain) {
|
|
379
|
-
case "local":
|
|
380
|
-
return "mina:local";
|
|
381
|
-
case "devnet":
|
|
382
|
-
return "mina:devnet";
|
|
383
|
-
case "lightnet":
|
|
384
|
-
return "mina:lightnet";
|
|
385
|
-
case "mainnet":
|
|
386
|
-
return "mina:mainnet";
|
|
387
|
-
case "zeko":
|
|
388
|
-
return "zeko:testnet";
|
|
389
|
-
default:
|
|
390
|
-
return chain;
|
|
391
|
-
}
|
|
392
|
-
}
|
|
393
|
-
var Mainnet = {
|
|
394
|
-
mina: [
|
|
395
|
-
//"https://proxy.devnet.minaexplorer.com/graphql",
|
|
396
|
-
"https://api.minascan.io/node/mainnet/v1/graphql"
|
|
397
|
-
],
|
|
398
|
-
archive: [
|
|
399
|
-
"https://api.minascan.io/archive/mainnet/v1/graphql"
|
|
400
|
-
//"https://archive.devnet.minaexplorer.com",
|
|
401
|
-
],
|
|
402
|
-
explorerAccountUrl: "https://minascan.io/mainnet/account/",
|
|
403
|
-
explorerTransactionUrl: "https://minascan.io/mainnet/tx/",
|
|
404
|
-
chainId: "mina:mainnet",
|
|
405
|
-
name: "Mainnet"
|
|
406
|
-
};
|
|
407
|
-
var Local = {
|
|
408
|
-
mina: [],
|
|
409
|
-
archive: [],
|
|
410
|
-
chainId: "mina:local"
|
|
411
|
-
};
|
|
412
|
-
var Devnet = {
|
|
413
|
-
mina: [
|
|
414
|
-
"https://api.minascan.io/node/devnet/v1/graphql"
|
|
415
|
-
//"https://proxy.devnet.minaexplorer.com/graphql",
|
|
416
|
-
],
|
|
417
|
-
archive: [
|
|
418
|
-
"https://api.minascan.io/archive/devnet/v1/graphql"
|
|
419
|
-
//"https://archive.devnet.minaexplorer.com",
|
|
420
|
-
],
|
|
421
|
-
explorerAccountUrl: "https://minascan.io/devnet/account/",
|
|
422
|
-
explorerTransactionUrl: "https://minascan.io/devnet/tx/",
|
|
423
|
-
chainId: "mina:devnet",
|
|
424
|
-
name: "Devnet",
|
|
425
|
-
faucet: "https://faucet.minaprotocol.com"
|
|
426
|
-
};
|
|
427
|
-
var Zeko = {
|
|
428
|
-
mina: ["https://devnet.zeko.io/graphql"],
|
|
429
|
-
archive: ["https://devnet.zeko.io/graphql"],
|
|
430
|
-
explorerAccountUrl: "https://zekoscan.io/devnet/account/",
|
|
431
|
-
explorerTransactionUrl: "https://zekoscan.io/devnet/tx/",
|
|
432
|
-
chainId: "zeko:testnet",
|
|
433
|
-
name: "Zeko",
|
|
434
|
-
faucet: "https://zeko.io/faucet"
|
|
435
|
-
};
|
|
436
|
-
var ZekoAlphaNet = {
|
|
437
|
-
mina: ["http://m1.zeko.io/graphql"],
|
|
438
|
-
archive: ["http://m1.zeko.io/graphql"],
|
|
439
|
-
explorerAccountUrl: "",
|
|
440
|
-
explorerTransactionUrl: "",
|
|
441
|
-
chainId: "zeko:alphanet",
|
|
442
|
-
name: "Zeko AlphaNet",
|
|
443
|
-
faucet: ""
|
|
444
|
-
};
|
|
445
|
-
var Lightnet = {
|
|
446
|
-
mina: ["http://localhost:8080/graphql"],
|
|
447
|
-
archive: ["http://localhost:8282"],
|
|
448
|
-
accountManager: "http://localhost:8181",
|
|
449
|
-
chainId: "mina:lightnet",
|
|
450
|
-
name: "Lightnet"
|
|
451
|
-
};
|
|
452
|
-
var networks = [Mainnet, Local, Devnet, Zeko, Lightnet];
|
|
453
|
-
|
|
454
|
-
// dist/node/utils/mina.js
|
|
367
|
+
var import_api = require("@silvana-one/api");
|
|
455
368
|
var currentNetwork = void 0;
|
|
456
369
|
function getNetworkIdHash() {
|
|
457
370
|
if (currentNetwork === void 0) {
|
|
@@ -473,17 +386,17 @@ function getDeployer() {
|
|
|
473
386
|
return void 0;
|
|
474
387
|
return currentNetwork.keys[0];
|
|
475
388
|
}
|
|
476
|
-
async function initBlockchain(
|
|
477
|
-
const
|
|
389
|
+
async function initBlockchain(params) {
|
|
390
|
+
const { chain, deployersNumber = 0, proofsEnabled = true, customMinaNodeUrl = void 0, customMinaArchiveNodeUrl = void 0 } = params;
|
|
478
391
|
if (currentNetwork !== void 0) {
|
|
479
|
-
if (currentNetwork?.network.chainId ===
|
|
392
|
+
if (currentNetwork?.network.chainId === chain) {
|
|
480
393
|
return currentNetwork;
|
|
481
394
|
} else {
|
|
482
|
-
throw new Error(`Network is already initialized to different chain ${currentNetwork.network.chainId}, cannot initialize to ${
|
|
395
|
+
throw new Error(`Network is already initialized to different chain ${currentNetwork.network.chainId}, cannot initialize to ${chain}`);
|
|
483
396
|
}
|
|
484
397
|
}
|
|
485
|
-
const networkIdHash = import_o1js5.CircuitString.fromString(
|
|
486
|
-
if (
|
|
398
|
+
const networkIdHash = import_o1js5.CircuitString.fromString(chain).hash();
|
|
399
|
+
if (chain === "mina:local") {
|
|
487
400
|
const local = await import_o1js5.Mina.LocalBlockchain({
|
|
488
401
|
proofsEnabled
|
|
489
402
|
});
|
|
@@ -492,12 +405,12 @@ async function initBlockchain(chain, deployersNumber = 0, proofsEnabled = true,
|
|
|
492
405
|
throw new Error("Not enough test accounts");
|
|
493
406
|
currentNetwork = {
|
|
494
407
|
keys: local.testAccounts,
|
|
495
|
-
network: Local,
|
|
408
|
+
network: import_api.Local,
|
|
496
409
|
networkIdHash
|
|
497
410
|
};
|
|
498
411
|
return currentNetwork;
|
|
499
412
|
}
|
|
500
|
-
const network = networks.find((n) => n.chainId ===
|
|
413
|
+
const network = import_api.networks.find((n) => n.chainId === chain);
|
|
501
414
|
if (network === void 0) {
|
|
502
415
|
throw new Error("Unknown network");
|
|
503
416
|
}
|
|
@@ -509,13 +422,13 @@ async function initBlockchain(chain, deployersNumber = 0, proofsEnabled = true,
|
|
|
509
422
|
mina,
|
|
510
423
|
archive,
|
|
511
424
|
lightnetAccountManager: network.accountManager,
|
|
512
|
-
networkId:
|
|
513
|
-
bypassTransactionLimits:
|
|
425
|
+
networkId: chain === "mina:mainnet" ? "mainnet" : "testnet",
|
|
426
|
+
bypassTransactionLimits: chain === "zeko:testnet" || chain === "zeko:alphanet"
|
|
514
427
|
});
|
|
515
428
|
import_o1js5.Mina.setActiveInstance(networkInstance);
|
|
516
429
|
const keys = [];
|
|
517
430
|
if (deployersNumber > 0) {
|
|
518
|
-
if (
|
|
431
|
+
if (chain === "mina:lightnet") {
|
|
519
432
|
for (let i = 0; i < deployersNumber; i++) {
|
|
520
433
|
const keyPair = await import_o1js5.Lightnet.acquireKeyPair();
|
|
521
434
|
const key = import_o1js5.Mina.TestPublicKey(keyPair.privateKey);
|
|
@@ -777,17 +690,18 @@ async function getNonce(params) {
|
|
|
777
690
|
}
|
|
778
691
|
async function getAccountNonce(params) {
|
|
779
692
|
const { account, chain = getCurrentNetwork().network.chainId, blockBerryApiKey, verbose = true } = params;
|
|
780
|
-
const canUseBlockBerry = blockBerryApiKey !== void 0 && (chain === "devnet" || chain === "mainnet");
|
|
781
|
-
if (chain === "zeko") {
|
|
693
|
+
const canUseBlockBerry = blockBerryApiKey !== void 0 && (chain === "mina:devnet" || chain === "mina:mainnet");
|
|
694
|
+
if (chain === "zeko:testnet") {
|
|
782
695
|
const publicKey = import_o1js6.PublicKey.fromBase58(account);
|
|
783
696
|
await fetchMinaAccount({ publicKey });
|
|
784
697
|
const nonce = Number(import_o1js6.Mina.getAccount(publicKey).nonce.toBigint());
|
|
785
698
|
return nonce;
|
|
786
|
-
} else {
|
|
699
|
+
} else if (chain === "mina:devnet" || chain === "mina:mainnet") {
|
|
700
|
+
const blockberryChain = chain === "mina:devnet" ? "devnet" : "mainnet";
|
|
787
701
|
const blockberryNoncePromise = canUseBlockBerry ? getNonce({
|
|
788
702
|
account,
|
|
789
703
|
blockBerryApiKey,
|
|
790
|
-
chain
|
|
704
|
+
chain: blockberryChain
|
|
791
705
|
}) : void 0;
|
|
792
706
|
const publicKey = import_o1js6.PublicKey.fromBase58(account);
|
|
793
707
|
await fetchMinaAccount({ publicKey });
|
|
@@ -797,6 +711,8 @@ async function getAccountNonce(params) {
|
|
|
797
711
|
if (verbose && nonce > senderNonce)
|
|
798
712
|
console.log(`Nonce changed from ${senderNonce} to ${nonce} for ${account}`);
|
|
799
713
|
return nonce;
|
|
714
|
+
} else {
|
|
715
|
+
throw new Error(`Unsupported chain: ${chain}`);
|
|
800
716
|
}
|
|
801
717
|
}
|
|
802
718
|
|
|
@@ -1047,7 +963,7 @@ var TinyContract = class extends import_o1js8.SmartContract {
|
|
|
1047
963
|
// dist/node/transactions/send.js
|
|
1048
964
|
var import_o1js9 = require("o1js");
|
|
1049
965
|
async function sendTx(params) {
|
|
1050
|
-
const { tx, description = "", verbose = true, wait = true, chain = getCurrentNetwork().network.chainId, delay = chain === "zeko" || chain === "lightnet" ? 5e3 : 6e4, retry = 30 } = params;
|
|
966
|
+
const { tx, description = "", verbose = true, wait = true, chain = getCurrentNetwork().network.chainId, delay = chain === "zeko:testnet" || chain === "mina:lightnet" ? 5e3 : 6e4, retry = 30 } = params;
|
|
1051
967
|
const accountUpdates = JSON.parse(tx.toJSON()).accountUpdates;
|
|
1052
968
|
const auCount = [];
|
|
1053
969
|
let proofAuthorizationCount = 0;
|
|
@@ -1083,7 +999,7 @@ async function sendTx(params) {
|
|
|
1083
999
|
sent = true;
|
|
1084
1000
|
if (verbose)
|
|
1085
1001
|
console.log(`${description ?? ""} tx sent: hash: ${txSent.hash} status: ${txSent.status}`);
|
|
1086
|
-
} else if (chain !== "local") {
|
|
1002
|
+
} else if (chain !== "mina:local") {
|
|
1087
1003
|
attempt++;
|
|
1088
1004
|
console.error(`${description} tx NOT sent: hash: ${txSent?.hash} status: ${txSent?.status}, errors: ${String(txSent.errors ?? "")}`);
|
|
1089
1005
|
if (verbose)
|
|
@@ -1097,7 +1013,7 @@ async function sendTx(params) {
|
|
|
1097
1013
|
if ((txSent.errors?.length ?? 0) > 0) {
|
|
1098
1014
|
console.error(`${description ?? ""} tx error: hash: ${txSent.hash} status: ${txSent.status} errors: ${String(txSent.errors ?? "")}`);
|
|
1099
1015
|
}
|
|
1100
|
-
if (txSent.status === "pending" && wait !== false && chain !== "zeko") {
|
|
1016
|
+
if (txSent.status === "pending" && wait !== false && chain !== "zeko:testnet") {
|
|
1101
1017
|
if (verbose)
|
|
1102
1018
|
console.log(`Waiting for tx inclusion...`);
|
|
1103
1019
|
let txIncluded = await txSent.safeWait();
|
|
@@ -1147,13 +1063,13 @@ async function sendTx(params) {
|
|
|
1147
1063
|
} else
|
|
1148
1064
|
return txSent;
|
|
1149
1065
|
} catch (error) {
|
|
1150
|
-
if (chain !== "zeko")
|
|
1066
|
+
if (chain !== "zeko:testnet")
|
|
1151
1067
|
console.error("Error sending tx", error);
|
|
1152
1068
|
}
|
|
1153
1069
|
}
|
|
1154
1070
|
async function getTxStatusFast(params) {
|
|
1155
1071
|
const { hash, chain = getCurrentNetwork().network.chainId } = params;
|
|
1156
|
-
if (chain === "local" || chain === "zeko")
|
|
1072
|
+
if (chain === "mina:local" || chain === "zeko:testnet")
|
|
1157
1073
|
return { success: true, result: true };
|
|
1158
1074
|
try {
|
|
1159
1075
|
const txStatus = await (0, import_o1js9.checkZkappTransaction)(hash);
|
|
@@ -13687,11 +13603,7 @@ function convertFieldToCanonicalElement(field) {
|
|
|
13687
13603
|
// Annotate the CommonJS export names for ESM import in node:
|
|
13688
13604
|
0 && (module.exports = {
|
|
13689
13605
|
BLS_FR,
|
|
13690
|
-
Devnet,
|
|
13691
13606
|
Fr,
|
|
13692
|
-
Lightnet,
|
|
13693
|
-
Local,
|
|
13694
|
-
Mainnet,
|
|
13695
13607
|
Memory,
|
|
13696
13608
|
R,
|
|
13697
13609
|
S,
|
|
@@ -13706,8 +13618,6 @@ function convertFieldToCanonicalElement(field) {
|
|
|
13706
13618
|
WITNESSES1,
|
|
13707
13619
|
WITNESSES2,
|
|
13708
13620
|
Witness,
|
|
13709
|
-
Zeko,
|
|
13710
|
-
ZekoAlphaNet,
|
|
13711
13621
|
accountBalance,
|
|
13712
13622
|
accountBalanceMina,
|
|
13713
13623
|
accountExists,
|
|
@@ -13736,7 +13646,6 @@ function convertFieldToCanonicalElement(field) {
|
|
|
13736
13646
|
formatTime,
|
|
13737
13647
|
fromBase,
|
|
13738
13648
|
getAccountNonce,
|
|
13739
|
-
getCanonicalBlockchain,
|
|
13740
13649
|
getCurrentNetwork,
|
|
13741
13650
|
getDeployer,
|
|
13742
13651
|
getNetworkIdHash,
|
|
@@ -13752,7 +13661,6 @@ function convertFieldToCanonicalElement(field) {
|
|
|
13752
13661
|
getZkAppTxsFromBlockBerry,
|
|
13753
13662
|
initBlockchain,
|
|
13754
13663
|
makeString,
|
|
13755
|
-
networks,
|
|
13756
13664
|
parseTransactionPayloads,
|
|
13757
13665
|
pinJSON,
|
|
13758
13666
|
rScalarPow,
|
package/dist/node/index.d.ts
CHANGED
package/dist/node/index.js
CHANGED
package/dist/node/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,uBAAuB,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BlockBerryChain } from "./chain.js";
|
|
2
|
-
import {
|
|
2
|
+
import { CanonicalBlockchain } from "@silvana-one/api";
|
|
3
3
|
export declare function getNonce(params: {
|
|
4
4
|
account: string;
|
|
5
5
|
chain: BlockBerryChain;
|
|
@@ -11,7 +11,7 @@ export declare function getNonce(params: {
|
|
|
11
11
|
}>;
|
|
12
12
|
export declare function getAccountNonce(params: {
|
|
13
13
|
account: string;
|
|
14
|
-
chain?:
|
|
14
|
+
chain?: CanonicalBlockchain;
|
|
15
15
|
blockBerryApiKey?: string;
|
|
16
16
|
verbose?: boolean;
|
|
17
17
|
}): Promise<number>;
|
|
@@ -61,19 +61,20 @@ export async function getNonce(params) {
|
|
|
61
61
|
export async function getAccountNonce(params) {
|
|
62
62
|
const { account, chain = getCurrentNetwork().network.chainId, blockBerryApiKey, verbose = true, } = params;
|
|
63
63
|
const canUseBlockBerry = blockBerryApiKey !== undefined &&
|
|
64
|
-
(chain === "devnet" || chain === "mainnet");
|
|
65
|
-
if (chain === "zeko") {
|
|
64
|
+
(chain === "mina:devnet" || chain === "mina:mainnet");
|
|
65
|
+
if (chain === "zeko:testnet") {
|
|
66
66
|
const publicKey = PublicKey.fromBase58(account);
|
|
67
67
|
await fetchMinaAccount({ publicKey });
|
|
68
68
|
const nonce = Number(Mina.getAccount(publicKey).nonce.toBigint());
|
|
69
69
|
return nonce;
|
|
70
70
|
}
|
|
71
|
-
else {
|
|
71
|
+
else if (chain === "mina:devnet" || chain === "mina:mainnet") {
|
|
72
|
+
const blockberryChain = chain === "mina:devnet" ? "devnet" : "mainnet";
|
|
72
73
|
const blockberryNoncePromise = canUseBlockBerry
|
|
73
74
|
? getNonce({
|
|
74
75
|
account,
|
|
75
76
|
blockBerryApiKey,
|
|
76
|
-
chain,
|
|
77
|
+
chain: blockberryChain,
|
|
77
78
|
})
|
|
78
79
|
: undefined;
|
|
79
80
|
const publicKey = PublicKey.fromBase58(account);
|
|
@@ -87,5 +88,8 @@ export async function getAccountNonce(params) {
|
|
|
87
88
|
console.log(`Nonce changed from ${senderNonce} to ${nonce} for ${account}`);
|
|
88
89
|
return nonce;
|
|
89
90
|
}
|
|
91
|
+
else {
|
|
92
|
+
throw new Error(`Unsupported chain: ${chain}`);
|
|
93
|
+
}
|
|
90
94
|
}
|
|
91
95
|
//# sourceMappingURL=nonce.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nonce.js","sourceRoot":"","sources":["../../../src/transactions/nonce.ts"],"names":[],"mappings":"AACA,OAAO,EACL,yBAAyB,EACzB,2BAA2B,GAC5B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAGvC,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,MAI9B;IAKC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,GAAG,MAAM,CAAC;IACpD,IAAI,CAAC;QACH,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;YAChE,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,CAAC,CAAC;gBACT,OAAO,EAAE,qBAAqB;aAC/B,CAAC;QACJ,CAAC;QAED,IACE,gBAAgB,KAAK,SAAS;YAC9B,gBAAgB,KAAK,IAAI;YACzB,gBAAgB,KAAK,EAAE,EACvB,CAAC;YACD,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,CAAC,CAAC;gBACT,OAAO,EAAE,8BAA8B;aACxC,CAAC;QACJ,CAAC;QACD,MAAM,eAAe,GAAG,yBAAyB,CAAC;YAChD,OAAO;YACP,KAAK;YACL,gBAAgB;SACjB,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,2BAA2B,CAAC;YAC7C,OAAO;YACP,KAAK;YACL,gBAAgB;SACjB,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,CAAC,MAAM,UAAU,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC;QAC9D,IAAI,OAAO,GAAG,CAAC,CAAC,CAAC;QACjB,IAAI,KAAK,GAAG,KAAK,CAAC;QAClB,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC;QACvC,MAAM,IAAI,GAAG,QAAQ,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,OAAO,CAAC,KAAK,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC;YAC1B,IAAI,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,aAAa,KAAK,OAAO,EAAE,CAAC;gBACjD,OAAO,GAAG,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;gBACnC,KAAK,GAAG,IAAI,CAAC;YACf,CAAC;YACD,CAAC,EAAE,CAAC;QACN,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QAE9C,OAAO;YACL,OAAO,EAAE,IAAI;YACb,KAAK;SACN,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,CAAC,CAAC;YACT,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC;SACvB,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,MAKrC;IACC,MAAM,EACJ,OAAO,EACP,KAAK,GAAG,iBAAiB,EAAE,CAAC,OAAO,CAAC,OAAO,EAC3C,gBAAgB,EAChB,OAAO,GAAG,IAAI,GACf,GAAG,MAAM,CAAC;IACX,MAAM,gBAAgB,GACpB,gBAAgB,KAAK,SAAS;QAC9B,CAAC,KAAK,KAAK,
|
|
1
|
+
{"version":3,"file":"nonce.js","sourceRoot":"","sources":["../../../src/transactions/nonce.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Mina } from "o1js";
|
|
2
|
-
import {
|
|
2
|
+
import { CanonicalBlockchain } from "@silvana-one/api";
|
|
3
3
|
/**
|
|
4
4
|
* The function `sendTx` sends a transaction, checks account updates, and waits for
|
|
5
5
|
* confirmation on the blockchain.
|
|
@@ -18,12 +18,12 @@ export declare function sendTx(params: {
|
|
|
18
18
|
retry?: number;
|
|
19
19
|
verbose?: boolean;
|
|
20
20
|
wait?: boolean;
|
|
21
|
-
chain?:
|
|
21
|
+
chain?: CanonicalBlockchain;
|
|
22
22
|
delay?: number;
|
|
23
23
|
}): Promise<Mina.IncludedTransaction | Mina.PendingTransaction | Mina.RejectedTransaction | undefined>;
|
|
24
24
|
export declare function getTxStatusFast(params: {
|
|
25
25
|
hash: string;
|
|
26
|
-
chain?:
|
|
26
|
+
chain?: CanonicalBlockchain;
|
|
27
27
|
}): Promise<{
|
|
28
28
|
success: boolean;
|
|
29
29
|
result?: boolean;
|
|
@@ -15,7 +15,9 @@ import { getCurrentNetwork } from "../utils/mina.js";
|
|
|
15
15
|
* `Mina.RejectedTransaction`, or `undefined` if there was an error during the process.
|
|
16
16
|
*/
|
|
17
17
|
export async function sendTx(params) {
|
|
18
|
-
const { tx, description = "", verbose = true, wait = true, chain = getCurrentNetwork().network.chainId, delay = chain === "zeko" || chain === "lightnet"
|
|
18
|
+
const { tx, description = "", verbose = true, wait = true, chain = getCurrentNetwork().network.chainId, delay = chain === "zeko:testnet" || chain === "mina:lightnet"
|
|
19
|
+
? 5000
|
|
20
|
+
: 60000, retry = 30, } = params;
|
|
19
21
|
// flatten accountUpdates
|
|
20
22
|
const accountUpdates = JSON.parse(tx.toJSON()).accountUpdates;
|
|
21
23
|
const auCount = [];
|
|
@@ -56,7 +58,7 @@ export async function sendTx(params) {
|
|
|
56
58
|
if (verbose)
|
|
57
59
|
console.log(`${description ?? ""} tx sent: hash: ${txSent.hash} status: ${txSent.status}`);
|
|
58
60
|
}
|
|
59
|
-
else if (chain !== "local") {
|
|
61
|
+
else if (chain !== "mina:local") {
|
|
60
62
|
attempt++;
|
|
61
63
|
console.error(`${description} tx NOT sent: hash: ${txSent?.hash} status: ${txSent?.status}, errors: ${String(txSent.errors ?? "")}`);
|
|
62
64
|
if (verbose)
|
|
@@ -71,7 +73,9 @@ export async function sendTx(params) {
|
|
|
71
73
|
if ((txSent.errors?.length ?? 0) > 0) {
|
|
72
74
|
console.error(`${description ?? ""} tx error: hash: ${txSent.hash} status: ${txSent.status} errors: ${String(txSent.errors ?? "")}`);
|
|
73
75
|
}
|
|
74
|
-
if (txSent.status === "pending" &&
|
|
76
|
+
if (txSent.status === "pending" &&
|
|
77
|
+
wait !== false &&
|
|
78
|
+
chain !== "zeko:testnet") {
|
|
75
79
|
if (verbose)
|
|
76
80
|
console.log(`Waiting for tx inclusion...`);
|
|
77
81
|
let txIncluded = await txSent.safeWait();
|
|
@@ -131,13 +135,13 @@ export async function sendTx(params) {
|
|
|
131
135
|
return txSent;
|
|
132
136
|
}
|
|
133
137
|
catch (error) {
|
|
134
|
-
if (chain !== "zeko")
|
|
138
|
+
if (chain !== "zeko:testnet")
|
|
135
139
|
console.error("Error sending tx", error);
|
|
136
140
|
}
|
|
137
141
|
}
|
|
138
142
|
export async function getTxStatusFast(params) {
|
|
139
143
|
const { hash, chain = getCurrentNetwork().network.chainId } = params;
|
|
140
|
-
if (chain === "local" || chain === "zeko")
|
|
144
|
+
if (chain === "mina:local" || chain === "zeko:testnet")
|
|
141
145
|
return { success: true, result: true };
|
|
142
146
|
try {
|
|
143
147
|
const txStatus = await checkZkappTransaction(hash);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send.js","sourceRoot":"","sources":["../../../src/transactions/send.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,MAAM,CAAC;AAG7C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,MAQ5B;IAMC,MAAM,EACJ,EAAE,EACF,WAAW,GAAG,EAAE,EAChB,OAAO,GAAG,IAAI,EACd,IAAI,GAAG,IAAI,EACX,KAAK,GAAG,iBAAiB,EAAE,CAAC,OAAO,CAAC,OAAO,EAC3C,KAAK,GAAG,KAAK,KAAK,
|
|
1
|
+
{"version":3,"file":"send.js","sourceRoot":"","sources":["../../../src/transactions/send.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { initBlockchain, accountBalance, accountBalanceMina, MinaNetworkInstance, currentNetwork, getNetworkIdHash, getCurrentNetwork, getDeployer, };
|
|
2
2
|
import { Mina, PublicKey, UInt64, Field } from "o1js";
|
|
3
|
-
import {
|
|
3
|
+
import { MinaNetwork, CanonicalBlockchain } from "@silvana-one/api";
|
|
4
4
|
/**
|
|
5
5
|
* MinaNetworkInstance is the data structure for a Mina network instance, keeping track of the keys, network, and network ID hash.
|
|
6
6
|
*/
|
|
@@ -24,7 +24,13 @@ declare function getDeployer(): Mina.TestPublicKey | undefined;
|
|
|
24
24
|
* @param deployersNumber the number of deployers to use for the network (only for local and lightnet networks)
|
|
25
25
|
* @returns the Mina network instance
|
|
26
26
|
*/
|
|
27
|
-
declare function initBlockchain(
|
|
27
|
+
declare function initBlockchain(params: {
|
|
28
|
+
chain: CanonicalBlockchain;
|
|
29
|
+
deployersNumber?: number;
|
|
30
|
+
proofsEnabled?: boolean;
|
|
31
|
+
customMinaNodeUrl?: string;
|
|
32
|
+
customMinaArchiveNodeUrl?: string;
|
|
33
|
+
}): Promise<MinaNetworkInstance>;
|
|
28
34
|
/**
|
|
29
35
|
* Fetches the account balance for a given public key
|
|
30
36
|
* @param address the public key
|
package/dist/node/utils/mina.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { initBlockchain, accountBalance, accountBalanceMina, currentNetwork, getNetworkIdHash, getCurrentNetwork, getDeployer, };
|
|
2
2
|
import { Mina, PrivateKey, UInt64, fetchAccount, Lightnet, CircuitString, } from "o1js";
|
|
3
|
-
import { networks, Local,
|
|
3
|
+
import { networks, Local, } from "@silvana-one/api";
|
|
4
4
|
let currentNetwork = undefined;
|
|
5
5
|
function getNetworkIdHash() {
|
|
6
6
|
if (currentNetwork === undefined) {
|
|
@@ -30,19 +30,19 @@ function getDeployer() {
|
|
|
30
30
|
* @param deployersNumber the number of deployers to use for the network (only for local and lightnet networks)
|
|
31
31
|
* @returns the Mina network instance
|
|
32
32
|
*/
|
|
33
|
-
async function initBlockchain(
|
|
34
|
-
const
|
|
33
|
+
async function initBlockchain(params) {
|
|
34
|
+
const { chain, deployersNumber = 0, proofsEnabled = true, customMinaNodeUrl = undefined, customMinaArchiveNodeUrl = undefined, } = params;
|
|
35
35
|
if (currentNetwork !== undefined) {
|
|
36
|
-
if (currentNetwork?.network.chainId ===
|
|
36
|
+
if (currentNetwork?.network.chainId === chain) {
|
|
37
37
|
return currentNetwork;
|
|
38
38
|
}
|
|
39
39
|
else {
|
|
40
|
-
throw new Error(`Network is already initialized to different chain ${currentNetwork.network.chainId}, cannot initialize to ${
|
|
40
|
+
throw new Error(`Network is already initialized to different chain ${currentNetwork.network.chainId}, cannot initialize to ${chain}`);
|
|
41
41
|
}
|
|
42
42
|
}
|
|
43
|
-
const networkIdHash = CircuitString.fromString(
|
|
43
|
+
const networkIdHash = CircuitString.fromString(chain).hash();
|
|
44
44
|
// await used for compatibility with future versions of o1js
|
|
45
|
-
if (
|
|
45
|
+
if (chain === "mina:local") {
|
|
46
46
|
const local = await Mina.LocalBlockchain({
|
|
47
47
|
proofsEnabled,
|
|
48
48
|
});
|
|
@@ -56,7 +56,7 @@ async function initBlockchain(chain, deployersNumber = 0, proofsEnabled = true,
|
|
|
56
56
|
};
|
|
57
57
|
return currentNetwork;
|
|
58
58
|
}
|
|
59
|
-
const network = networks.find((n) => n.chainId ===
|
|
59
|
+
const network = networks.find((n) => n.chainId === chain);
|
|
60
60
|
if (network === undefined) {
|
|
61
61
|
throw new Error("Unknown network");
|
|
62
62
|
}
|
|
@@ -74,13 +74,13 @@ async function initBlockchain(chain, deployersNumber = 0, proofsEnabled = true,
|
|
|
74
74
|
mina,
|
|
75
75
|
archive,
|
|
76
76
|
lightnetAccountManager: network.accountManager,
|
|
77
|
-
networkId:
|
|
78
|
-
bypassTransactionLimits:
|
|
77
|
+
networkId: chain === "mina:mainnet" ? "mainnet" : "testnet",
|
|
78
|
+
bypassTransactionLimits: chain === "zeko:testnet" || chain === "zeko:alphanet",
|
|
79
79
|
});
|
|
80
80
|
Mina.setActiveInstance(networkInstance);
|
|
81
81
|
const keys = [];
|
|
82
82
|
if (deployersNumber > 0) {
|
|
83
|
-
if (
|
|
83
|
+
if (chain === "mina:lightnet") {
|
|
84
84
|
for (let i = 0; i < deployersNumber; i++) {
|
|
85
85
|
const keyPair = await Lightnet.acquireKeyPair();
|
|
86
86
|
const key = Mina.TestPublicKey(keyPair.privateKey);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mina.js","sourceRoot":"","sources":["../../../src/utils/mina.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,cAAc,EACd,kBAAkB,EAElB,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,GACZ,CAAC;AAEF,OAAO,EACL,IAAI,EAEJ,UAAU,EACV,MAAM,EACN,YAAY,EAEZ,QAAQ,EACR,aAAa,GACd,MAAM,MAAM,CAAC;AACd,OAAO,EACL,QAAQ,
|
|
1
|
+
{"version":3,"file":"mina.js","sourceRoot":"","sources":["../../../src/utils/mina.ts"],"names":[],"mappings":"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"}
|