@suzaku-network/suzaku-cli 1.0.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/LICENSE +96 -0
- package/README.md +1080 -0
- package/bin/cli.js +3 -0
- package/defaults/.env.anvil +4 -0
- package/defaults/.env.dexalot +7 -0
- package/defaults/.env.fuji +4 -0
- package/defaults/.env.kiteai +2 -0
- package/defaults/.env.mainnet +4 -0
- package/defaults/.env.template +10 -0
- package/dist/abis/AccessControl.d.ts +176 -0
- package/dist/abis/AccessControl.js +230 -0
- package/dist/abis/AccessControl.js.map +1 -0
- package/dist/abis/BalancerValidatorManager.d.ts +1121 -0
- package/dist/abis/BalancerValidatorManager.js +1469 -0
- package/dist/abis/BalancerValidatorManager.js.map +1 -0
- package/dist/abis/DefaultCollateral.d.ts +620 -0
- package/dist/abis/DefaultCollateral.js +811 -0
- package/dist/abis/DefaultCollateral.js.map +1 -0
- package/dist/abis/ERC20.d.ts +635 -0
- package/dist/abis/ERC20.js +831 -0
- package/dist/abis/ERC20.js.map +1 -0
- package/dist/abis/IWarpMessenger.d.ts +104 -0
- package/dist/abis/IWarpMessenger.js +139 -0
- package/dist/abis/IWarpMessenger.js.map +1 -0
- package/dist/abis/KiteStakingManager.d.ts +1459 -0
- package/dist/abis/KiteStakingManager.js +1886 -0
- package/dist/abis/KiteStakingManager.js.map +1 -0
- package/dist/abis/L1Middleware.d.ts +1712 -0
- package/dist/abis/L1Middleware.js +2242 -0
- package/dist/abis/L1Middleware.js.map +1 -0
- package/dist/abis/L1Registry.d.ts +415 -0
- package/dist/abis/L1Registry.js +544 -0
- package/dist/abis/L1Registry.js.map +1 -0
- package/dist/abis/L1RestakeDelegator.d.ts +865 -0
- package/dist/abis/L1RestakeDelegator.js +1118 -0
- package/dist/abis/L1RestakeDelegator.js.map +1 -0
- package/dist/abis/OperatorL1OptInService.d.ts +288 -0
- package/dist/abis/OperatorL1OptInService.js +374 -0
- package/dist/abis/OperatorL1OptInService.js.map +1 -0
- package/dist/abis/OperatorRegistry.d.ts +125 -0
- package/dist/abis/OperatorRegistry.js +166 -0
- package/dist/abis/OperatorRegistry.js.map +1 -0
- package/dist/abis/OperatorVaultOptInService.d.ts +288 -0
- package/dist/abis/OperatorVaultOptInService.js +374 -0
- package/dist/abis/OperatorVaultOptInService.js.map +1 -0
- package/dist/abis/Ownable.d.ts +59 -0
- package/dist/abis/Ownable.js +79 -0
- package/dist/abis/Ownable.js.map +1 -0
- package/dist/abis/PoASecurityModule.d.ts +225 -0
- package/dist/abis/PoASecurityModule.js +299 -0
- package/dist/abis/PoASecurityModule.js.map +1 -0
- package/dist/abis/RewardsNativeToken.d.ts +1334 -0
- package/dist/abis/RewardsNativeToken.js +1749 -0
- package/dist/abis/RewardsNativeToken.js.map +1 -0
- package/dist/abis/StakingVault.d.ts +2913 -0
- package/dist/abis/StakingVault.js +3780 -0
- package/dist/abis/StakingVault.js.map +1 -0
- package/dist/abis/StakingVaultOperations.d.ts +980 -0
- package/dist/abis/StakingVaultOperations.js +1270 -0
- package/dist/abis/StakingVaultOperations.js.map +1 -0
- package/dist/abis/UptimeTracker.d.ts +300 -0
- package/dist/abis/UptimeTracker.js +397 -0
- package/dist/abis/UptimeTracker.js.map +1 -0
- package/dist/abis/ValidatorManager.d.ts +842 -0
- package/dist/abis/ValidatorManager.js +1101 -0
- package/dist/abis/ValidatorManager.js.map +1 -0
- package/dist/abis/VaultFactory.d.ts +288 -0
- package/dist/abis/VaultFactory.js +378 -0
- package/dist/abis/VaultFactory.js.map +1 -0
- package/dist/abis/VaultManager.d.ts +519 -0
- package/dist/abis/VaultManager.js +678 -0
- package/dist/abis/VaultManager.js.map +1 -0
- package/dist/abis/VaultTokenized.d.ts +1626 -0
- package/dist/abis/VaultTokenized.js +2114 -0
- package/dist/abis/VaultTokenized.js.map +1 -0
- package/dist/abis/abi-selectors.json +700 -0
- package/dist/abis/index.d.ts +18356 -0
- package/dist/abis/index.js +58 -0
- package/dist/abis/index.js.map +1 -0
- package/dist/accessControl.d.ts +15 -0
- package/dist/accessControl.js +36 -0
- package/dist/accessControl.js.map +1 -0
- package/dist/balancer.d.ts +25 -0
- package/dist/balancer.js +42 -0
- package/dist/balancer.js.map +1 -0
- package/dist/cli.d.mts +1 -0
- package/dist/cli.d.ts +2 -0
- package/dist/cli.js +3183 -0
- package/dist/cli.js.map +1 -0
- package/dist/cli.mjs +31343 -0
- package/dist/cli.mjs.map +1 -0
- package/dist/client.d.ts +34 -0
- package/dist/client.js +76 -0
- package/dist/client.js.map +1 -0
- package/dist/config.d.ts +10 -0
- package/dist/config.js +63 -0
- package/dist/config.js.map +1 -0
- package/dist/delegator.d.ts +4 -0
- package/dist/delegator.js +16 -0
- package/dist/delegator.js.map +1 -0
- package/dist/index.d.mts +19770 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.js +24 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +27451 -0
- package/dist/index.mjs.map +1 -0
- package/dist/keyStore.d.ts +3 -0
- package/dist/keyStore.js +105 -0
- package/dist/keyStore.js.map +1 -0
- package/dist/kiteStaking.d.ts +91 -0
- package/dist/kiteStaking.js +731 -0
- package/dist/kiteStaking.js.map +1 -0
- package/dist/l1.d.ts +5 -0
- package/dist/l1.js +22 -0
- package/dist/l1.js.map +1 -0
- package/dist/lib/autoCompletion.d.ts +3 -0
- package/dist/lib/autoCompletion.js +55 -0
- package/dist/lib/autoCompletion.js.map +1 -0
- package/dist/lib/cChainUtils.d.ts +42 -0
- package/dist/lib/cChainUtils.js +271 -0
- package/dist/lib/cChainUtils.js.map +1 -0
- package/dist/lib/castUtils.d.ts +18 -0
- package/dist/lib/castUtils.js +81 -0
- package/dist/lib/castUtils.js.map +1 -0
- package/dist/lib/chainList.d.ts +5 -0
- package/dist/lib/chainList.js +86 -0
- package/dist/lib/chainList.js.map +1 -0
- package/dist/lib/cliParser.d.ts +27 -0
- package/dist/lib/cliParser.js +167 -0
- package/dist/lib/cliParser.js.map +1 -0
- package/dist/lib/commandUtils.d.ts +13 -0
- package/dist/lib/commandUtils.js +38 -0
- package/dist/lib/commandUtils.js.map +1 -0
- package/dist/lib/coreWalletUtils.d.ts +3 -0
- package/dist/lib/coreWalletUtils.js +74 -0
- package/dist/lib/coreWalletUtils.js.map +1 -0
- package/dist/lib/justification.d.ts +90 -0
- package/dist/lib/justification.js +577 -0
- package/dist/lib/justification.js.map +1 -0
- package/dist/lib/ledgerUtils.d.ts +4 -0
- package/dist/lib/ledgerUtils.js +258 -0
- package/dist/lib/ledgerUtils.js.map +1 -0
- package/dist/lib/logger.d.ts +46 -0
- package/dist/lib/logger.js +226 -0
- package/dist/lib/logger.js.map +1 -0
- package/dist/lib/pChainUtils.d.ts +128 -0
- package/dist/lib/pChainUtils.js +436 -0
- package/dist/lib/pChainUtils.js.map +1 -0
- package/dist/lib/pass.d.ts +81 -0
- package/dist/lib/pass.js +353 -0
- package/dist/lib/pass.js.map +1 -0
- package/dist/lib/safeUtils.d.ts +25 -0
- package/dist/lib/safeUtils.js +93 -0
- package/dist/lib/safeUtils.js.map +1 -0
- package/dist/lib/transferUtils.d.ts +643 -0
- package/dist/lib/transferUtils.js +141 -0
- package/dist/lib/transferUtils.js.map +1 -0
- package/dist/lib/utils.d.ts +28 -0
- package/dist/lib/utils.js +166 -0
- package/dist/lib/utils.js.map +1 -0
- package/dist/lib/viemUtils.d.ts +80 -0
- package/dist/lib/viemUtils.js +317 -0
- package/dist/lib/viemUtils.js.map +1 -0
- package/dist/lib/warpUtils.d.ts +76 -0
- package/dist/lib/warpUtils.js +448 -0
- package/dist/lib/warpUtils.js.map +1 -0
- package/dist/middleware.d.ts +75 -0
- package/dist/middleware.js +430 -0
- package/dist/middleware.js.map +1 -0
- package/dist/operator.d.ts +4 -0
- package/dist/operator.js +22 -0
- package/dist/operator.js.map +1 -0
- package/dist/operatorOptIn.d.ts +8 -0
- package/dist/operatorOptIn.js +39 -0
- package/dist/operatorOptIn.js.map +1 -0
- package/dist/rewards.d.ts +116 -0
- package/dist/rewards.js +244 -0
- package/dist/rewards.js.map +1 -0
- package/dist/securityModule.d.ts +8 -0
- package/dist/securityModule.js +305 -0
- package/dist/securityModule.js.map +1 -0
- package/dist/stakingVault.d.ts +184 -0
- package/dist/stakingVault.js +1224 -0
- package/dist/stakingVault.js.map +1 -0
- package/dist/uptime.d.ts +54 -0
- package/dist/uptime.js +246 -0
- package/dist/uptime.js.map +1 -0
- package/dist/vault.d.ts +16 -0
- package/dist/vault.js +131 -0
- package/dist/vault.js.map +1 -0
- package/dist/vaultManager.d.ts +8 -0
- package/dist/vaultManager.js +40 -0
- package/dist/vaultManager.js.map +1 -0
- package/package.json +62 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kiteStaking.js","sourceRoot":"","sources":["../src/kiteStaking.ts"],"names":[],"mappings":"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"}
|
package/dist/l1.d.ts
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { SafeSuzakuContract } from './lib/viemUtils';
|
|
2
|
+
import type { Hex, Account } from "viem";
|
|
3
|
+
export declare function registerL1(l1Registry: SafeSuzakuContract['L1Registry'], balancerAddress: Hex, l1Middleware: Hex, metadataUrl: string, account: Account): Promise<void>;
|
|
4
|
+
export declare function setL1MetadataUrl(l1Registry: SafeSuzakuContract['L1Registry'], l1Address: Hex, metadataUrl: string): Promise<void>;
|
|
5
|
+
export declare function setL1Middleware(l1Registry: SafeSuzakuContract['L1Registry'], validatorManager: Hex, newMiddleware: Hex): Promise<void>;
|
package/dist/l1.js
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.registerL1 = registerL1;
|
|
4
|
+
exports.setL1MetadataUrl = setL1MetadataUrl;
|
|
5
|
+
exports.setL1Middleware = setL1Middleware;
|
|
6
|
+
const logger_1 = require("./lib/logger");
|
|
7
|
+
async function registerL1(l1Registry, balancerAddress, l1Middleware, metadataUrl, account) {
|
|
8
|
+
logger_1.logger.log("Registering L1...");
|
|
9
|
+
const hash = await l1Registry.safeWrite.registerL1([balancerAddress, l1Middleware, metadataUrl], { value: BigInt(1000000000000000000), chain: null, account });
|
|
10
|
+
logger_1.logger.log("Registered L1 successfully, Transaction hash:", hash);
|
|
11
|
+
}
|
|
12
|
+
async function setL1MetadataUrl(l1Registry, l1Address, metadataUrl) {
|
|
13
|
+
logger_1.logger.log("Setting L1 Metadata URL...");
|
|
14
|
+
const hash = await l1Registry.safeWrite.setMetadataURL([l1Address, metadataUrl]);
|
|
15
|
+
logger_1.logger.log("Set L1 Metadata URL successfully, Transaction hash:", hash);
|
|
16
|
+
}
|
|
17
|
+
async function setL1Middleware(l1Registry, validatorManager, newMiddleware) {
|
|
18
|
+
logger_1.logger.log("Setting L1 Middleware...");
|
|
19
|
+
const hash = await l1Registry.safeWrite.setL1Middleware([validatorManager, newMiddleware]);
|
|
20
|
+
logger_1.logger.log("Set L1 Middleware successfully, Transaction hash:", hash);
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=l1.js.map
|
package/dist/l1.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"l1.js","sourceRoot":"","sources":["../src/l1.ts"],"names":[],"mappings":";;AAIA,gCAgBC;AAED,4CAWC;AAED,0CAWC;AA5CD,yCAAsC;AAE/B,KAAK,UAAU,UAAU,CAC5B,UAA4C,EAC5C,eAAoB,EACpB,YAAiB,EACjB,WAAmB,EACnB,OAAgB;IAEhB,eAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IAEhC,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,UAAU,CAC9C,CAAC,eAAe,EAAE,YAAY,EAAE,WAAW,CAAC,EAC5C,EAAE,KAAK,EAAE,MAAM,CAAC,mBAAmB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAC/D,CAAC;IAEF,eAAM,CAAC,GAAG,CAAC,+CAA+C,EAAE,IAAI,CAAC,CAAC;AAEtE,CAAC;AAEM,KAAK,UAAU,gBAAgB,CAClC,UAA4C,EAC5C,SAAc,EACd,WAAmB;IAEnB,eAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAEzC,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC;IAEjF,eAAM,CAAC,GAAG,CAAC,qDAAqD,EAAE,IAAI,CAAC,CAAC;AAE5E,CAAC;AAEM,KAAK,UAAU,eAAe,CACjC,UAA4C,EAC5C,gBAAqB,EACrB,aAAkB;IAElB,eAAM,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;IAEvC,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,gBAAgB,EAAE,aAAa,CAAC,CAAC,CAAC;IAE3F,eAAM,CAAC,GAAG,CAAC,mDAAmD,EAAE,IAAI,CAAC,CAAC;AAE1E,CAAC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
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
|
+
exports.generateCompletion = generateCompletion;
|
|
7
|
+
exports.installCompletion = installCompletion;
|
|
8
|
+
const fs_1 = __importDefault(require("fs"));
|
|
9
|
+
const os_1 = __importDefault(require("os"));
|
|
10
|
+
const path_1 = __importDefault(require("path"));
|
|
11
|
+
function getShell() {
|
|
12
|
+
const shell = process.env.SHELL || "";
|
|
13
|
+
if (shell.includes("zsh"))
|
|
14
|
+
return "zsh";
|
|
15
|
+
if (shell.includes("bash"))
|
|
16
|
+
return "bash";
|
|
17
|
+
return "bash"; // fallback safe
|
|
18
|
+
}
|
|
19
|
+
function generateCompletion(program) {
|
|
20
|
+
const cli = program.name();
|
|
21
|
+
return `
|
|
22
|
+
_${cli}_completions() {
|
|
23
|
+
local cur line
|
|
24
|
+
cur="\${COMP_WORDS[COMP_CWORD]}"
|
|
25
|
+
line="\${COMP_LINE}"
|
|
26
|
+
|
|
27
|
+
COMPREPLY=( $(compgen -W "$(${cli} __complete --line "$line")" -- "$cur") )
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
complete -F _${cli}_completions ${cli}
|
|
31
|
+
`.trim();
|
|
32
|
+
}
|
|
33
|
+
async function installCompletion(program) {
|
|
34
|
+
const shell = getShell();
|
|
35
|
+
const folder = shell === "zsh"
|
|
36
|
+
? path_1.default.join(os_1.default.homedir(), `.oh-my-zsh/custom/plugins/${program.name()}`)
|
|
37
|
+
: path_1.default.join(os_1.default.homedir(), ".bash_completion.d");
|
|
38
|
+
fs_1.default.mkdirSync(folder, { recursive: true });
|
|
39
|
+
const file = path_1.default.join(folder, program.name() + (shell === "zsh" ? ".plugin.zsh" : ".bash"));
|
|
40
|
+
fs_1.default.writeFileSync(file, generateCompletion(program), "utf8");
|
|
41
|
+
const rcFile = path_1.default.join(os_1.default.homedir(), `.${shell}rc`);
|
|
42
|
+
if (fs_1.default.existsSync(rcFile)) {
|
|
43
|
+
const bashrcContent = fs_1.default.readFileSync(rcFile, "utf8");
|
|
44
|
+
const sourceLine = `source ${file}`;
|
|
45
|
+
if (!bashrcContent.includes(sourceLine)) {
|
|
46
|
+
fs_1.default.appendFileSync(rcFile, `\n# Suzaku CLI completion\n${sourceLine}\n`, "utf8");
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
console.log(`✅ Auto-completion ${shell} installed : ${file}`);
|
|
50
|
+
console.log("⚠️ Restart your terminal or :");
|
|
51
|
+
console.log(shell === "zsh"
|
|
52
|
+
? ` source ${file}`
|
|
53
|
+
: ` source ${file}`);
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=autoCompletion.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"autoCompletion.js","sourceRoot":"","sources":["../../src/lib/autoCompletion.ts"],"names":[],"mappings":";;;;;AAYA,gDAcC;AAGD,8CA2BC;AAxDD,4CAAoB;AACpB,4CAAoB;AACpB,gDAAwB;AAGxB,SAAS,QAAQ;IACf,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;IACtC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACxC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC;IAC1C,OAAO,MAAM,CAAC,CAAC,gBAAgB;AACjC,CAAC;AAED,SAAgB,kBAAkB,CAAC,OAAgB;IACjD,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAE3B,OAAO;GACN,GAAG;;;;;gCAK0B,GAAG;;;eAGpB,GAAG,gBAAgB,GAAG;CACpC,CAAC,IAAI,EAAE,CAAC;AACT,CAAC;AAGM,KAAK,UAAU,iBAAiB,CAAC,OAAgB;IACtD,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,MAAM,GACV,KAAK,KAAK,KAAK;QACb,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,YAAE,CAAC,OAAO,EAAE,EAAE,6BAA6B,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;QACxE,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,YAAE,CAAC,OAAO,EAAE,EAAE,oBAAoB,CAAC,CAAC;IAEpD,YAAE,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAE7F,YAAE,CAAC,aAAa,CAAC,IAAI,EAAE,kBAAkB,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAE5D,MAAM,MAAM,GAAG,cAAI,CAAC,IAAI,CAAC,YAAE,CAAC,OAAO,EAAE,EAAE,IAAI,KAAK,IAAI,CAAC,CAAC;IACtD,IAAI,YAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,MAAM,aAAa,GAAG,YAAE,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACtD,MAAM,UAAU,GAAG,UAAU,IAAI,EAAE,CAAC;QACpC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACxC,YAAE,CAAC,cAAc,CAAC,MAAM,EAAE,8BAA8B,UAAU,IAAI,EAAE,MAAM,CAAC,CAAC;QAClF,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,qBAAqB,KAAK,gBAAgB,IAAI,EAAE,CAAC,CAAC;IAC9D,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IAC7C,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,KAAK;QACzB,CAAC,CAAC,YAAY,IAAI,EAAE;QACpB,CAAC,CAAC,YAAY,IAAI,EAAE,CACrB,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { SingleBar } from 'cli-progress';
|
|
2
|
+
import { Hex, Abi } from 'viem';
|
|
3
|
+
import { ExtendedClient } from '../client';
|
|
4
|
+
import { SuzakuContract } from './viemUtils';
|
|
5
|
+
export type DecodedEvent = {
|
|
6
|
+
blockNumber: bigint;
|
|
7
|
+
transactionHash: Hex;
|
|
8
|
+
eventName: string;
|
|
9
|
+
args: Record<string, any>;
|
|
10
|
+
address: string;
|
|
11
|
+
timestamp: number;
|
|
12
|
+
};
|
|
13
|
+
export declare function getChainId(rpcUrl: string): Promise<number>;
|
|
14
|
+
export declare function GetContractEvents(client: ExtendedClient, address: Hex, fromBlock: number, toBlock: number, abi: Abi, eventNames?: string[], snowscanApiKey?: string, forceTimestamp?: boolean, bar?: SingleBar): Promise<DecodedEvent[]>;
|
|
15
|
+
export declare function PatchEventsTimestamp(client: ExtendedClient, events: DecodedEvent[]): Promise<DecodedEvent[]>;
|
|
16
|
+
export declare function fillEventsNodeId(balancer: SuzakuContract['BalancerValidatorManager'], events: DecodedEvent[]): Promise<DecodedEvent[]>;
|
|
17
|
+
/**
|
|
18
|
+
* @title BlockAtTimestampFast
|
|
19
|
+
* @notice Returns the block number closest to a given UNIX timestamp.
|
|
20
|
+
* @param client viem PublicClient (RPC)
|
|
21
|
+
* @param ts Target UNIX timestamp (in seconds, BigInt)
|
|
22
|
+
* @param mode "lte" → greatest block with timestamp ≤ ts; "gte" → smallest block with timestamp ≥ ts
|
|
23
|
+
* @param recentWindow Number of recent blocks to compute the local average (default: 10_000n)
|
|
24
|
+
* @return Block number as BigInt that satisfies the chosen mode.
|
|
25
|
+
*/
|
|
26
|
+
export declare function blockAtTimestamp(client: ExtendedClient, ts: bigint, mode?: "lte" | "gte", recentWindow?: bigint): Promise<bigint>;
|
|
27
|
+
type FetchOpts = {
|
|
28
|
+
fromBlock: bigint;
|
|
29
|
+
toBlock: bigint;
|
|
30
|
+
};
|
|
31
|
+
type Fetcher<T> = (opts: FetchOpts) => Promise<T[]>;
|
|
32
|
+
/**
|
|
33
|
+
* Collect events in [fromBlock, toBlock] by chunks.
|
|
34
|
+
* @param fromBlock inclusive "asc" (oldest→newest) if fromBlock < toBlock, otherwise "desc" (newest→oldest).
|
|
35
|
+
* @param toBlock inclusive
|
|
36
|
+
* @param count -1 = all (default). If >0, stops after collecting `count` events.
|
|
37
|
+
* @param fetcher e.g. (opts) => middlewareSvc.getEvents.NodeAdded(args, opts)
|
|
38
|
+
* @param chunkSize block span per RPC call (default: 8_000n)
|
|
39
|
+
* @returns collected events (ordered per `order`)
|
|
40
|
+
*/
|
|
41
|
+
export declare function collectEventsInRange<T>(fromBlock: bigint, toBlock: bigint, count: number | undefined, fetcher: Fetcher<T>): Promise<T[]>;
|
|
42
|
+
export {};
|
|
@@ -0,0 +1,271 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getChainId = getChainId;
|
|
4
|
+
exports.GetContractEvents = GetContractEvents;
|
|
5
|
+
exports.PatchEventsTimestamp = PatchEventsTimestamp;
|
|
6
|
+
exports.fillEventsNodeId = fillEventsNodeId;
|
|
7
|
+
exports.blockAtTimestamp = blockAtTimestamp;
|
|
8
|
+
exports.collectEventsInRange = collectEventsInRange;
|
|
9
|
+
const cli_progress_1 = require("cli-progress");
|
|
10
|
+
const viem_1 = require("viem");
|
|
11
|
+
const logger_1 = require("./logger");
|
|
12
|
+
async function getChainId(rpcUrl) {
|
|
13
|
+
const ret = await fetch(rpcUrl, {
|
|
14
|
+
method: "POST",
|
|
15
|
+
headers: {
|
|
16
|
+
"Content-Type": "application/json",
|
|
17
|
+
},
|
|
18
|
+
body: JSON.stringify({
|
|
19
|
+
jsonrpc: "2.0",
|
|
20
|
+
method: "eth_chainId",
|
|
21
|
+
params: [],
|
|
22
|
+
id: 1,
|
|
23
|
+
}),
|
|
24
|
+
});
|
|
25
|
+
const data = await ret.json();
|
|
26
|
+
return data.result;
|
|
27
|
+
}
|
|
28
|
+
// TODO: optimize eventNames filtering it from apis
|
|
29
|
+
async function GetContractEvents(client, address, fromBlock, toBlock, abi, eventNames, snowscanApiKey, forceTimestamp = true, bar) {
|
|
30
|
+
let events = [];
|
|
31
|
+
try {
|
|
32
|
+
if (snowscanApiKey) {
|
|
33
|
+
// Fetch logs from Snowscan API (transactions are not decoded)
|
|
34
|
+
const url = `https://api${client.network === 'fuji' ? '-testnet' : ''}.snowscan.xyz/api`;
|
|
35
|
+
const urlParams = new URLSearchParams({
|
|
36
|
+
module: 'logs',
|
|
37
|
+
action: 'getLogs',
|
|
38
|
+
address,
|
|
39
|
+
fromBlock: fromBlock.toString(),
|
|
40
|
+
toBlock: toBlock.toString(),
|
|
41
|
+
apikey: snowscanApiKey
|
|
42
|
+
});
|
|
43
|
+
const res = await fetch(`${url}?${urlParams}`);
|
|
44
|
+
if (!res.ok)
|
|
45
|
+
throw new Error(`HTTP ${res.status}`);
|
|
46
|
+
const data = (await res.json());
|
|
47
|
+
events = data.result
|
|
48
|
+
.reduce((acc, log) => [Object.assign(log, (0, viem_1.decodeEventLog)({
|
|
49
|
+
abi,
|
|
50
|
+
data: log.data,
|
|
51
|
+
topics: log.topics,
|
|
52
|
+
})), ...acc], []);
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
// Fetch logs using viem client
|
|
56
|
+
toBlock = toBlock - 2; // to avoid reading the current block, which may not be finalized yet
|
|
57
|
+
const blockToScan = toBlock - fromBlock;
|
|
58
|
+
if (!bar) {
|
|
59
|
+
bar = new cli_progress_1.SingleBar({}, cli_progress_1.Presets.shades_classic);
|
|
60
|
+
bar.start(blockToScan, 0);
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
bar.setTotal(bar.getTotal() + blockToScan);
|
|
64
|
+
}
|
|
65
|
+
for (let i = fromBlock; i <= toBlock; i += 2000) {
|
|
66
|
+
const toSub = i + 2000 > toBlock ? toBlock : i + 2000;
|
|
67
|
+
events.push(...await client.getContractEvents({
|
|
68
|
+
address: address,
|
|
69
|
+
abi: abi,
|
|
70
|
+
fromBlock: BigInt(i),
|
|
71
|
+
toBlock: BigInt(toSub)
|
|
72
|
+
}));
|
|
73
|
+
bar.increment(2000);
|
|
74
|
+
}
|
|
75
|
+
bar.increment(blockToScan - (toBlock - fromBlock));
|
|
76
|
+
if (bar.getProgress() === 1)
|
|
77
|
+
bar.stop();
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
catch (error) {
|
|
81
|
+
logger_1.logger.error("Read contract failed:", error);
|
|
82
|
+
if (error instanceof Error) {
|
|
83
|
+
logger_1.logger.error(error.message);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
// Filter and format events
|
|
87
|
+
const result = events.filter((log) => eventNames ? eventNames.includes(log.eventName) : true)
|
|
88
|
+
.map(log => {
|
|
89
|
+
return {
|
|
90
|
+
blockNumber: typeof (log.blockNumber) === 'bigint' ? log.blockNumber : BigInt(log.blockNumber),
|
|
91
|
+
transactionHash: log.transactionHash,
|
|
92
|
+
eventName: log.eventName,
|
|
93
|
+
args: log.args,
|
|
94
|
+
address: log.address,
|
|
95
|
+
timestamp: Number(log.timeStamp)
|
|
96
|
+
};
|
|
97
|
+
});
|
|
98
|
+
return forceTimestamp ? snowscanApiKey ? result : PatchEventsTimestamp(client, result) : result;
|
|
99
|
+
}
|
|
100
|
+
async function PatchEventsTimestamp(client, events) {
|
|
101
|
+
const blockTimstamps = (await Promise.all([...new Set(events.map(event => event.blockNumber))]
|
|
102
|
+
.map((blockNumber) => client.getBlock({
|
|
103
|
+
blockNumber,
|
|
104
|
+
includeTransactions: false,
|
|
105
|
+
}))))
|
|
106
|
+
.reduce((acc, block) => {
|
|
107
|
+
acc[Number(block.number)] = Number(block.timestamp);
|
|
108
|
+
return acc;
|
|
109
|
+
}, {});
|
|
110
|
+
return events.map(event => ({
|
|
111
|
+
...event,
|
|
112
|
+
timestamp: event.timestamp || blockTimstamps[Number(event.blockNumber)],
|
|
113
|
+
}));
|
|
114
|
+
}
|
|
115
|
+
async function fillEventsNodeId(balancer, events) {
|
|
116
|
+
const validationIdMap = {};
|
|
117
|
+
for (let i = 0; i < events.length; i++) {
|
|
118
|
+
const event = events[i];
|
|
119
|
+
const validationId = event.args.validationID;
|
|
120
|
+
const nodeId = event.args.nodeId;
|
|
121
|
+
if (nodeId && validationId) {
|
|
122
|
+
validationIdMap[validationId] = nodeId;
|
|
123
|
+
}
|
|
124
|
+
else if (!nodeId && validationId && validationIdMap[validationId]) {
|
|
125
|
+
event.args.nodeId = validationIdMap[validationId];
|
|
126
|
+
}
|
|
127
|
+
else if (!nodeId && validationId && !validationIdMap[validationId]) {
|
|
128
|
+
event.args.nodeId = (await balancer.read.getValidator([validationId])).nodeID;
|
|
129
|
+
validationIdMap[event.args.validationId] = event.args.nodeId;
|
|
130
|
+
}
|
|
131
|
+
events[i] = event;
|
|
132
|
+
}
|
|
133
|
+
;
|
|
134
|
+
return events;
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* @title BlockAtTimestampFast
|
|
138
|
+
* @notice Returns the block number closest to a given UNIX timestamp.
|
|
139
|
+
* @param client viem PublicClient (RPC)
|
|
140
|
+
* @param ts Target UNIX timestamp (in seconds, BigInt)
|
|
141
|
+
* @param mode "lte" → greatest block with timestamp ≤ ts; "gte" → smallest block with timestamp ≥ ts
|
|
142
|
+
* @param recentWindow Number of recent blocks to compute the local average (default: 10_000n)
|
|
143
|
+
* @return Block number as BigInt that satisfies the chosen mode.
|
|
144
|
+
*/
|
|
145
|
+
async function blockAtTimestamp(client, ts, mode = "lte", recentWindow = 100000n) {
|
|
146
|
+
const cache = new Map();
|
|
147
|
+
const getTS = async (n) => {
|
|
148
|
+
const v = cache.get(n);
|
|
149
|
+
if (v !== undefined)
|
|
150
|
+
return v;
|
|
151
|
+
const b = await client.getBlock({ blockNumber: n });
|
|
152
|
+
cache.set(n, b.timestamp);
|
|
153
|
+
return b.timestamp;
|
|
154
|
+
};
|
|
155
|
+
const latestN = await client.getBlockNumber();
|
|
156
|
+
const [latestTs, genesisTs] = await Promise.all([getTS(latestN), getTS(0n)]);
|
|
157
|
+
if (ts <= genesisTs)
|
|
158
|
+
return 0n;
|
|
159
|
+
if (ts >= latestTs)
|
|
160
|
+
return latestN;
|
|
161
|
+
// --- Local average over a recent window (seed estimate near 'ts') ---
|
|
162
|
+
const b0 = latestN > recentWindow ? latestN - recentWindow : 0n;
|
|
163
|
+
const [t0, t1] = await Promise.all([getTS(b0), getTS(latestN)]);
|
|
164
|
+
const avgRecent = Number(t1 - t0) / Math.max(1, Number(latestN - b0)) || 12; // sec/block fallback
|
|
165
|
+
let est = latestN - BigInt(Math.floor(Number(latestTs - ts) / Math.max(1e-6, avgRecent)));
|
|
166
|
+
if (est < 0n)
|
|
167
|
+
est = 0n;
|
|
168
|
+
if (est > latestN)
|
|
169
|
+
est = latestN;
|
|
170
|
+
// --- Exponential bracketing around 'est' ---
|
|
171
|
+
let lo = 0n, hi = 0n, loTs = 0n, hiTs = 0n;
|
|
172
|
+
const estTs = await getTS(est);
|
|
173
|
+
if (estTs <= ts) {
|
|
174
|
+
lo = est;
|
|
175
|
+
loTs = estTs;
|
|
176
|
+
let step = 1n;
|
|
177
|
+
while (true) {
|
|
178
|
+
const next = est + step;
|
|
179
|
+
hi = next > latestN ? latestN : next;
|
|
180
|
+
hiTs = await getTS(hi);
|
|
181
|
+
if (hiTs > ts || hi === latestN)
|
|
182
|
+
break;
|
|
183
|
+
step <<= 1n; // double the step
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
else {
|
|
187
|
+
hi = est;
|
|
188
|
+
hiTs = estTs;
|
|
189
|
+
let step = 1n;
|
|
190
|
+
while (true) {
|
|
191
|
+
const next = est > step ? est - step : 0n;
|
|
192
|
+
lo = next;
|
|
193
|
+
loTs = await getTS(lo);
|
|
194
|
+
if (loTs <= ts || lo === 0n)
|
|
195
|
+
break;
|
|
196
|
+
step <<= 1n; // double the step
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
// --- Interpolation search (fallback to binary when needed) ---
|
|
200
|
+
while (lo + 1n < hi) {
|
|
201
|
+
const denom = hiTs - loTs;
|
|
202
|
+
let mid = denom > 0n ? lo + ((ts - loTs) * (hi - lo)) / denom : (lo + hi) >> 1n;
|
|
203
|
+
if (mid <= lo)
|
|
204
|
+
mid = lo + 1n;
|
|
205
|
+
else if (mid >= hi)
|
|
206
|
+
mid = hi - 1n;
|
|
207
|
+
const midTs = await getTS(mid);
|
|
208
|
+
if (midTs <= ts) {
|
|
209
|
+
lo = mid;
|
|
210
|
+
loTs = midTs;
|
|
211
|
+
}
|
|
212
|
+
else {
|
|
213
|
+
hi = mid;
|
|
214
|
+
hiTs = midTs;
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
return mode === "lte" ? lo : hi;
|
|
218
|
+
}
|
|
219
|
+
/**
|
|
220
|
+
* Collect events in [fromBlock, toBlock] by chunks.
|
|
221
|
+
* @param fromBlock inclusive "asc" (oldest→newest) if fromBlock < toBlock, otherwise "desc" (newest→oldest).
|
|
222
|
+
* @param toBlock inclusive
|
|
223
|
+
* @param count -1 = all (default). If >0, stops after collecting `count` events.
|
|
224
|
+
* @param fetcher e.g. (opts) => middlewareSvc.getEvents.NodeAdded(args, opts)
|
|
225
|
+
* @param chunkSize block span per RPC call (default: 8_000n)
|
|
226
|
+
* @returns collected events (ordered per `order`)
|
|
227
|
+
*/
|
|
228
|
+
async function collectEventsInRange(fromBlock, toBlock, count = -1, fetcher) {
|
|
229
|
+
const chunkSize = 2048n;
|
|
230
|
+
let order = "asc";
|
|
231
|
+
if (fromBlock > toBlock) {
|
|
232
|
+
order = "desc";
|
|
233
|
+
[fromBlock, toBlock] = [toBlock, fromBlock];
|
|
234
|
+
}
|
|
235
|
+
if (count === 0)
|
|
236
|
+
return [];
|
|
237
|
+
const out = [];
|
|
238
|
+
if (order === "asc") {
|
|
239
|
+
for (let start = fromBlock; start <= toBlock; start += chunkSize) {
|
|
240
|
+
const end = start + chunkSize - 1n > toBlock ? toBlock : start + chunkSize - 1n;
|
|
241
|
+
const batch = await fetcher({ fromBlock: start, toBlock: end });
|
|
242
|
+
if (batch?.length) {
|
|
243
|
+
out.push(...batch);
|
|
244
|
+
if (count > 0 && out.length >= count) {
|
|
245
|
+
out.length = count;
|
|
246
|
+
return out;
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
if (end === toBlock)
|
|
250
|
+
break;
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
else {
|
|
254
|
+
for (let end = toBlock; end >= fromBlock; end -= chunkSize) {
|
|
255
|
+
const start = end - (chunkSize - 1n) < fromBlock ? fromBlock : end - (chunkSize - 1n);
|
|
256
|
+
let batch = await fetcher({ fromBlock: start, toBlock: end });
|
|
257
|
+
if (batch?.length) {
|
|
258
|
+
batch = [...batch].reverse();
|
|
259
|
+
out.push(...batch);
|
|
260
|
+
if (count > 0 && out.length >= count) {
|
|
261
|
+
out.length = count;
|
|
262
|
+
return out;
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
if (start === fromBlock)
|
|
266
|
+
break;
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
return out;
|
|
270
|
+
}
|
|
271
|
+
//# sourceMappingURL=cChainUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cChainUtils.js","sourceRoot":"","sources":["../../src/lib/cChainUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Address, Abi, Hex } from 'viem';
|
|
2
|
+
export declare function setCastMode(enabled: boolean): void;
|
|
3
|
+
export declare function isCastMode(): boolean;
|
|
4
|
+
export declare const CAST_DUMMY_HASH: Hex;
|
|
5
|
+
export interface CastCommandOptions {
|
|
6
|
+
value?: bigint;
|
|
7
|
+
accessList?: {
|
|
8
|
+
address: string;
|
|
9
|
+
storageKeys: string[];
|
|
10
|
+
}[];
|
|
11
|
+
}
|
|
12
|
+
export declare function formatCastCommand(mode: 'call' | 'send', address: Address, abi: Abi, functionName: string, args: unknown[] | undefined, rpcUrl: string | undefined, options?: CastCommandOptions): string;
|
|
13
|
+
/** Log a `cast call` command (read) */
|
|
14
|
+
export declare function logCastCall(contractName: string, address: Address, abi: Abi, functionName: string, args: unknown[] | undefined, rpcUrl: string | undefined): void;
|
|
15
|
+
/** Log a `cast send` command (write) */
|
|
16
|
+
export declare function logCastSend(contractName: string, address: Address, abi: Abi, functionName: string, args: unknown[] | undefined, rpcUrl: string | undefined, options?: CastCommandOptions): void;
|
|
17
|
+
/** Log a `curl` command for a P-Chain signed transaction and return a dummy tx hash. */
|
|
18
|
+
export declare function logPChainIssueTx(signedTxBytes: Uint8Array, rpcUrl: string): Hex;
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CAST_DUMMY_HASH = void 0;
|
|
4
|
+
exports.setCastMode = setCastMode;
|
|
5
|
+
exports.isCastMode = isCastMode;
|
|
6
|
+
exports.formatCastCommand = formatCastCommand;
|
|
7
|
+
exports.logCastCall = logCastCall;
|
|
8
|
+
exports.logCastSend = logCastSend;
|
|
9
|
+
exports.logPChainIssueTx = logPChainIssueTx;
|
|
10
|
+
const console_log_colors_1 = require("console-log-colors");
|
|
11
|
+
const logger_1 = require("./logger");
|
|
12
|
+
// ── Cast mode ────────────────────────────────────────────────────────
|
|
13
|
+
let _castMode = false;
|
|
14
|
+
function setCastMode(enabled) { _castMode = enabled; }
|
|
15
|
+
function isCastMode() { return _castMode; }
|
|
16
|
+
exports.CAST_DUMMY_HASH = "0xca57ca57ca57ca57ca57ca57ca57ca57ca57ca57ca57ca57ca57ca57ca57ca57";
|
|
17
|
+
function formatCastArg(value) {
|
|
18
|
+
if (typeof value === 'bigint')
|
|
19
|
+
return value.toString();
|
|
20
|
+
if (typeof value === 'boolean')
|
|
21
|
+
return value.toString();
|
|
22
|
+
if (Array.isArray(value))
|
|
23
|
+
return `"[${value.map(formatCastArg).join(',')}]"`;
|
|
24
|
+
if (value === undefined || value === null)
|
|
25
|
+
return '0';
|
|
26
|
+
return String(value);
|
|
27
|
+
}
|
|
28
|
+
function getSignature(abi, functionName) {
|
|
29
|
+
const fn = abi.find((item) => item.type === 'function' && item.name === functionName);
|
|
30
|
+
if (!fn)
|
|
31
|
+
return functionName;
|
|
32
|
+
const inputs = fn.inputs.map((i) => i.type).join(',');
|
|
33
|
+
const outputs = fn.outputs?.map((o) => o.type).join(',');
|
|
34
|
+
const sig = `${fn.name}(${inputs})`;
|
|
35
|
+
return outputs ? `${sig}(${outputs})` : sig;
|
|
36
|
+
}
|
|
37
|
+
function formatCastCommand(mode, address, abi, functionName, args, rpcUrl, options) {
|
|
38
|
+
const sig = getSignature(abi, functionName);
|
|
39
|
+
const formattedArgs = (args ?? []).map(formatCastArg).join(' ');
|
|
40
|
+
let cmd = `cast ${mode} ${address} "${sig}"`;
|
|
41
|
+
if (formattedArgs)
|
|
42
|
+
cmd += ` ${formattedArgs}`;
|
|
43
|
+
if (options?.value)
|
|
44
|
+
cmd += ` --value ${options.value}`;
|
|
45
|
+
if (options?.accessList && options.accessList.length > 0) {
|
|
46
|
+
cmd += ` --access-list '${JSON.stringify(options.accessList)}'`;
|
|
47
|
+
}
|
|
48
|
+
if (rpcUrl)
|
|
49
|
+
cmd += ` --rpc-url ${rpcUrl}`;
|
|
50
|
+
if (mode === 'send')
|
|
51
|
+
cmd += ` --private-key $PK`;
|
|
52
|
+
return cmd;
|
|
53
|
+
}
|
|
54
|
+
/** Log a `cast call` command (read) */
|
|
55
|
+
function logCastCall(contractName, address, abi, functionName, args, rpcUrl) {
|
|
56
|
+
const cmd = formatCastCommand('call', address, abi, functionName, args, rpcUrl);
|
|
57
|
+
logger_1.logger.log(console_log_colors_1.color.dim(`\n${cmd}\n`));
|
|
58
|
+
logger_1.logger.addData('cast', { mode: 'call', contract: contractName, function: functionName, address, args, cmd });
|
|
59
|
+
}
|
|
60
|
+
/** Log a `cast send` command (write) */
|
|
61
|
+
function logCastSend(contractName, address, abi, functionName, args, rpcUrl, options) {
|
|
62
|
+
const cmd = formatCastCommand('send', address, abi, functionName, args, rpcUrl, options);
|
|
63
|
+
logger_1.logger.log(console_log_colors_1.color.cyan(`\n${cmd}\n`));
|
|
64
|
+
logger_1.logger.addData('cast', { mode: 'send', contract: contractName, function: functionName, address, args, cmd });
|
|
65
|
+
}
|
|
66
|
+
/** Log a `curl` command for a P-Chain signed transaction and return a dummy tx hash. */
|
|
67
|
+
function logPChainIssueTx(signedTxBytes, rpcUrl) {
|
|
68
|
+
const signedTxHex = '0x' + Buffer.from(signedTxBytes).toString('hex');
|
|
69
|
+
const endpoint = rpcUrl.replace('C/rpc', 'P');
|
|
70
|
+
const body = JSON.stringify({
|
|
71
|
+
jsonrpc: '2.0',
|
|
72
|
+
id: 1,
|
|
73
|
+
method: 'platform.issueTx',
|
|
74
|
+
params: { tx: signedTxHex, encoding: 'hex' },
|
|
75
|
+
});
|
|
76
|
+
const cmd = `curl -X POST -H "Content-Type: application/json" -d '${body}' ${endpoint}`;
|
|
77
|
+
logger_1.logger.log(console_log_colors_1.color.cyan(`\n${cmd}\n`));
|
|
78
|
+
logger_1.logger.addData('cast', { mode: 'p-chain', function: 'platform.issueTx', cmd });
|
|
79
|
+
return exports.CAST_DUMMY_HASH;
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=castUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"castUtils.js","sourceRoot":"","sources":["../../src/lib/castUtils.ts"],"names":[],"mappings":"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"}
|