@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.
Files changed (194) hide show
  1. package/LICENSE +96 -0
  2. package/README.md +1080 -0
  3. package/bin/cli.js +3 -0
  4. package/defaults/.env.anvil +4 -0
  5. package/defaults/.env.dexalot +7 -0
  6. package/defaults/.env.fuji +4 -0
  7. package/defaults/.env.kiteai +2 -0
  8. package/defaults/.env.mainnet +4 -0
  9. package/defaults/.env.template +10 -0
  10. package/dist/abis/AccessControl.d.ts +176 -0
  11. package/dist/abis/AccessControl.js +230 -0
  12. package/dist/abis/AccessControl.js.map +1 -0
  13. package/dist/abis/BalancerValidatorManager.d.ts +1121 -0
  14. package/dist/abis/BalancerValidatorManager.js +1469 -0
  15. package/dist/abis/BalancerValidatorManager.js.map +1 -0
  16. package/dist/abis/DefaultCollateral.d.ts +620 -0
  17. package/dist/abis/DefaultCollateral.js +811 -0
  18. package/dist/abis/DefaultCollateral.js.map +1 -0
  19. package/dist/abis/ERC20.d.ts +635 -0
  20. package/dist/abis/ERC20.js +831 -0
  21. package/dist/abis/ERC20.js.map +1 -0
  22. package/dist/abis/IWarpMessenger.d.ts +104 -0
  23. package/dist/abis/IWarpMessenger.js +139 -0
  24. package/dist/abis/IWarpMessenger.js.map +1 -0
  25. package/dist/abis/KiteStakingManager.d.ts +1459 -0
  26. package/dist/abis/KiteStakingManager.js +1886 -0
  27. package/dist/abis/KiteStakingManager.js.map +1 -0
  28. package/dist/abis/L1Middleware.d.ts +1712 -0
  29. package/dist/abis/L1Middleware.js +2242 -0
  30. package/dist/abis/L1Middleware.js.map +1 -0
  31. package/dist/abis/L1Registry.d.ts +415 -0
  32. package/dist/abis/L1Registry.js +544 -0
  33. package/dist/abis/L1Registry.js.map +1 -0
  34. package/dist/abis/L1RestakeDelegator.d.ts +865 -0
  35. package/dist/abis/L1RestakeDelegator.js +1118 -0
  36. package/dist/abis/L1RestakeDelegator.js.map +1 -0
  37. package/dist/abis/OperatorL1OptInService.d.ts +288 -0
  38. package/dist/abis/OperatorL1OptInService.js +374 -0
  39. package/dist/abis/OperatorL1OptInService.js.map +1 -0
  40. package/dist/abis/OperatorRegistry.d.ts +125 -0
  41. package/dist/abis/OperatorRegistry.js +166 -0
  42. package/dist/abis/OperatorRegistry.js.map +1 -0
  43. package/dist/abis/OperatorVaultOptInService.d.ts +288 -0
  44. package/dist/abis/OperatorVaultOptInService.js +374 -0
  45. package/dist/abis/OperatorVaultOptInService.js.map +1 -0
  46. package/dist/abis/Ownable.d.ts +59 -0
  47. package/dist/abis/Ownable.js +79 -0
  48. package/dist/abis/Ownable.js.map +1 -0
  49. package/dist/abis/PoASecurityModule.d.ts +225 -0
  50. package/dist/abis/PoASecurityModule.js +299 -0
  51. package/dist/abis/PoASecurityModule.js.map +1 -0
  52. package/dist/abis/RewardsNativeToken.d.ts +1334 -0
  53. package/dist/abis/RewardsNativeToken.js +1749 -0
  54. package/dist/abis/RewardsNativeToken.js.map +1 -0
  55. package/dist/abis/StakingVault.d.ts +2913 -0
  56. package/dist/abis/StakingVault.js +3780 -0
  57. package/dist/abis/StakingVault.js.map +1 -0
  58. package/dist/abis/StakingVaultOperations.d.ts +980 -0
  59. package/dist/abis/StakingVaultOperations.js +1270 -0
  60. package/dist/abis/StakingVaultOperations.js.map +1 -0
  61. package/dist/abis/UptimeTracker.d.ts +300 -0
  62. package/dist/abis/UptimeTracker.js +397 -0
  63. package/dist/abis/UptimeTracker.js.map +1 -0
  64. package/dist/abis/ValidatorManager.d.ts +842 -0
  65. package/dist/abis/ValidatorManager.js +1101 -0
  66. package/dist/abis/ValidatorManager.js.map +1 -0
  67. package/dist/abis/VaultFactory.d.ts +288 -0
  68. package/dist/abis/VaultFactory.js +378 -0
  69. package/dist/abis/VaultFactory.js.map +1 -0
  70. package/dist/abis/VaultManager.d.ts +519 -0
  71. package/dist/abis/VaultManager.js +678 -0
  72. package/dist/abis/VaultManager.js.map +1 -0
  73. package/dist/abis/VaultTokenized.d.ts +1626 -0
  74. package/dist/abis/VaultTokenized.js +2114 -0
  75. package/dist/abis/VaultTokenized.js.map +1 -0
  76. package/dist/abis/abi-selectors.json +700 -0
  77. package/dist/abis/index.d.ts +18356 -0
  78. package/dist/abis/index.js +58 -0
  79. package/dist/abis/index.js.map +1 -0
  80. package/dist/accessControl.d.ts +15 -0
  81. package/dist/accessControl.js +36 -0
  82. package/dist/accessControl.js.map +1 -0
  83. package/dist/balancer.d.ts +25 -0
  84. package/dist/balancer.js +42 -0
  85. package/dist/balancer.js.map +1 -0
  86. package/dist/cli.d.mts +1 -0
  87. package/dist/cli.d.ts +2 -0
  88. package/dist/cli.js +3183 -0
  89. package/dist/cli.js.map +1 -0
  90. package/dist/cli.mjs +31343 -0
  91. package/dist/cli.mjs.map +1 -0
  92. package/dist/client.d.ts +34 -0
  93. package/dist/client.js +76 -0
  94. package/dist/client.js.map +1 -0
  95. package/dist/config.d.ts +10 -0
  96. package/dist/config.js +63 -0
  97. package/dist/config.js.map +1 -0
  98. package/dist/delegator.d.ts +4 -0
  99. package/dist/delegator.js +16 -0
  100. package/dist/delegator.js.map +1 -0
  101. package/dist/index.d.mts +19770 -0
  102. package/dist/index.d.ts +7 -0
  103. package/dist/index.js +24 -0
  104. package/dist/index.js.map +1 -0
  105. package/dist/index.mjs +27451 -0
  106. package/dist/index.mjs.map +1 -0
  107. package/dist/keyStore.d.ts +3 -0
  108. package/dist/keyStore.js +105 -0
  109. package/dist/keyStore.js.map +1 -0
  110. package/dist/kiteStaking.d.ts +91 -0
  111. package/dist/kiteStaking.js +731 -0
  112. package/dist/kiteStaking.js.map +1 -0
  113. package/dist/l1.d.ts +5 -0
  114. package/dist/l1.js +22 -0
  115. package/dist/l1.js.map +1 -0
  116. package/dist/lib/autoCompletion.d.ts +3 -0
  117. package/dist/lib/autoCompletion.js +55 -0
  118. package/dist/lib/autoCompletion.js.map +1 -0
  119. package/dist/lib/cChainUtils.d.ts +42 -0
  120. package/dist/lib/cChainUtils.js +271 -0
  121. package/dist/lib/cChainUtils.js.map +1 -0
  122. package/dist/lib/castUtils.d.ts +18 -0
  123. package/dist/lib/castUtils.js +81 -0
  124. package/dist/lib/castUtils.js.map +1 -0
  125. package/dist/lib/chainList.d.ts +5 -0
  126. package/dist/lib/chainList.js +86 -0
  127. package/dist/lib/chainList.js.map +1 -0
  128. package/dist/lib/cliParser.d.ts +27 -0
  129. package/dist/lib/cliParser.js +167 -0
  130. package/dist/lib/cliParser.js.map +1 -0
  131. package/dist/lib/commandUtils.d.ts +13 -0
  132. package/dist/lib/commandUtils.js +38 -0
  133. package/dist/lib/commandUtils.js.map +1 -0
  134. package/dist/lib/coreWalletUtils.d.ts +3 -0
  135. package/dist/lib/coreWalletUtils.js +74 -0
  136. package/dist/lib/coreWalletUtils.js.map +1 -0
  137. package/dist/lib/justification.d.ts +90 -0
  138. package/dist/lib/justification.js +577 -0
  139. package/dist/lib/justification.js.map +1 -0
  140. package/dist/lib/ledgerUtils.d.ts +4 -0
  141. package/dist/lib/ledgerUtils.js +258 -0
  142. package/dist/lib/ledgerUtils.js.map +1 -0
  143. package/dist/lib/logger.d.ts +46 -0
  144. package/dist/lib/logger.js +226 -0
  145. package/dist/lib/logger.js.map +1 -0
  146. package/dist/lib/pChainUtils.d.ts +128 -0
  147. package/dist/lib/pChainUtils.js +436 -0
  148. package/dist/lib/pChainUtils.js.map +1 -0
  149. package/dist/lib/pass.d.ts +81 -0
  150. package/dist/lib/pass.js +353 -0
  151. package/dist/lib/pass.js.map +1 -0
  152. package/dist/lib/safeUtils.d.ts +25 -0
  153. package/dist/lib/safeUtils.js +93 -0
  154. package/dist/lib/safeUtils.js.map +1 -0
  155. package/dist/lib/transferUtils.d.ts +643 -0
  156. package/dist/lib/transferUtils.js +141 -0
  157. package/dist/lib/transferUtils.js.map +1 -0
  158. package/dist/lib/utils.d.ts +28 -0
  159. package/dist/lib/utils.js +166 -0
  160. package/dist/lib/utils.js.map +1 -0
  161. package/dist/lib/viemUtils.d.ts +80 -0
  162. package/dist/lib/viemUtils.js +317 -0
  163. package/dist/lib/viemUtils.js.map +1 -0
  164. package/dist/lib/warpUtils.d.ts +76 -0
  165. package/dist/lib/warpUtils.js +448 -0
  166. package/dist/lib/warpUtils.js.map +1 -0
  167. package/dist/middleware.d.ts +75 -0
  168. package/dist/middleware.js +430 -0
  169. package/dist/middleware.js.map +1 -0
  170. package/dist/operator.d.ts +4 -0
  171. package/dist/operator.js +22 -0
  172. package/dist/operator.js.map +1 -0
  173. package/dist/operatorOptIn.d.ts +8 -0
  174. package/dist/operatorOptIn.js +39 -0
  175. package/dist/operatorOptIn.js.map +1 -0
  176. package/dist/rewards.d.ts +116 -0
  177. package/dist/rewards.js +244 -0
  178. package/dist/rewards.js.map +1 -0
  179. package/dist/securityModule.d.ts +8 -0
  180. package/dist/securityModule.js +305 -0
  181. package/dist/securityModule.js.map +1 -0
  182. package/dist/stakingVault.d.ts +184 -0
  183. package/dist/stakingVault.js +1224 -0
  184. package/dist/stakingVault.js.map +1 -0
  185. package/dist/uptime.d.ts +54 -0
  186. package/dist/uptime.js +246 -0
  187. package/dist/uptime.js.map +1 -0
  188. package/dist/vault.d.ts +16 -0
  189. package/dist/vault.js +131 -0
  190. package/dist/vault.js.map +1 -0
  191. package/dist/vaultManager.d.ts +8 -0
  192. package/dist/vaultManager.js +40 -0
  193. package/dist/vaultManager.js.map +1 -0
  194. 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,3 @@
1
+ import { Command } from '@commander-js/extra-typings';
2
+ export declare function generateCompletion(program: Command): string;
3
+ export declare function installCompletion(program: Command): Promise<void>;
@@ -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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"}
@@ -0,0 +1,5 @@
1
+ import { Chain } from "viem";
2
+ export declare const chainList: Record<string, Chain> & {
3
+ custom: Chain;
4
+ };
5
+ export declare function setCustomChainRpcUrl(rpcUrl: string): Promise<void>;