@lodestar/beacon-node 1.39.0-dev.3bf4734ba9 → 1.39.0-dev.7e9e7caf38

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 (366) hide show
  1. package/lib/api/impl/beacon/blocks/utils.js +1 -1
  2. package/lib/api/impl/beacon/blocks/utils.js.map +1 -1
  3. package/lib/chain/blocks/verifyBlock.d.ts.map +1 -1
  4. package/lib/chain/blocks/verifyBlock.js +1 -1
  5. package/lib/chain/blocks/verifyBlock.js.map +1 -1
  6. package/lib/chain/blocks/verifyBlocksExecutionPayloads.d.ts.map +1 -1
  7. package/lib/chain/blocks/verifyBlocksExecutionPayloads.js +4 -2
  8. package/lib/chain/blocks/verifyBlocksExecutionPayloads.js.map +1 -1
  9. package/lib/chain/blocks/verifyBlocksSignatures.d.ts +2 -1
  10. package/lib/chain/blocks/verifyBlocksSignatures.d.ts.map +1 -1
  11. package/lib/chain/blocks/verifyBlocksSignatures.js +2 -2
  12. package/lib/chain/blocks/verifyBlocksSignatures.js.map +1 -1
  13. package/lib/chain/chain.d.ts +1 -4
  14. package/lib/chain/chain.d.ts.map +1 -1
  15. package/lib/chain/chain.js +8 -16
  16. package/lib/chain/chain.js.map +1 -1
  17. package/lib/chain/forkChoice/index.d.ts.map +1 -1
  18. package/lib/chain/forkChoice/index.js +3 -3
  19. package/lib/chain/forkChoice/index.js.map +1 -1
  20. package/lib/chain/initState.d.ts +1 -14
  21. package/lib/chain/initState.d.ts.map +1 -1
  22. package/lib/chain/initState.js +1 -62
  23. package/lib/chain/initState.js.map +1 -1
  24. package/lib/chain/interface.d.ts +0 -2
  25. package/lib/chain/interface.d.ts.map +1 -1
  26. package/lib/chain/interface.js.map +1 -1
  27. package/lib/chain/opPools/aggregatedAttestationPool.d.ts +4 -4
  28. package/lib/chain/opPools/aggregatedAttestationPool.d.ts.map +1 -1
  29. package/lib/chain/opPools/aggregatedAttestationPool.js +4 -4
  30. package/lib/chain/opPools/aggregatedAttestationPool.js.map +1 -1
  31. package/lib/chain/opPools/opPool.d.ts +3 -0
  32. package/lib/chain/opPools/opPool.d.ts.map +1 -1
  33. package/lib/chain/opPools/opPool.js +9 -8
  34. package/lib/chain/opPools/opPool.js.map +1 -1
  35. package/lib/chain/prepareNextSlot.d.ts +0 -4
  36. package/lib/chain/prepareNextSlot.d.ts.map +1 -1
  37. package/lib/chain/prepareNextSlot.js +1 -21
  38. package/lib/chain/prepareNextSlot.js.map +1 -1
  39. package/lib/chain/produceBlock/produceBlockBody.d.ts +0 -1
  40. package/lib/chain/produceBlock/produceBlockBody.d.ts.map +1 -1
  41. package/lib/chain/produceBlock/produceBlockBody.js +8 -11
  42. package/lib/chain/produceBlock/produceBlockBody.js.map +1 -1
  43. package/lib/chain/rewards/attestationsRewards.d.ts +2 -1
  44. package/lib/chain/rewards/attestationsRewards.d.ts.map +1 -1
  45. package/lib/chain/rewards/attestationsRewards.js +8 -8
  46. package/lib/chain/rewards/attestationsRewards.js.map +1 -1
  47. package/lib/chain/rewards/blockRewards.d.ts +2 -1
  48. package/lib/chain/rewards/blockRewards.d.ts.map +1 -1
  49. package/lib/chain/rewards/blockRewards.js +5 -5
  50. package/lib/chain/rewards/blockRewards.js.map +1 -1
  51. package/lib/chain/rewards/syncCommitteeRewards.d.ts +2 -1
  52. package/lib/chain/rewards/syncCommitteeRewards.d.ts.map +1 -1
  53. package/lib/chain/rewards/syncCommitteeRewards.js +2 -2
  54. package/lib/chain/rewards/syncCommitteeRewards.js.map +1 -1
  55. package/lib/chain/stateCache/persistentCheckpointsCache.d.ts +4 -1
  56. package/lib/chain/stateCache/persistentCheckpointsCache.d.ts.map +1 -1
  57. package/lib/chain/stateCache/persistentCheckpointsCache.js +4 -2
  58. package/lib/chain/stateCache/persistentCheckpointsCache.js.map +1 -1
  59. package/lib/chain/validation/attesterSlashing.js +1 -1
  60. package/lib/chain/validation/attesterSlashing.js.map +1 -1
  61. package/lib/chain/validation/block.d.ts.map +1 -1
  62. package/lib/chain/validation/block.js +3 -3
  63. package/lib/chain/validation/block.js.map +1 -1
  64. package/lib/chain/validation/blsToExecutionChange.js +1 -1
  65. package/lib/chain/validation/proposerSlashing.js +1 -1
  66. package/lib/chain/validation/proposerSlashing.js.map +1 -1
  67. package/lib/chain/validation/signatureSets/aggregateAndProof.js +1 -1
  68. package/lib/chain/validation/signatureSets/aggregateAndProof.js.map +1 -1
  69. package/lib/chain/validation/signatureSets/contributionAndProof.d.ts +2 -1
  70. package/lib/chain/validation/signatureSets/contributionAndProof.d.ts.map +1 -1
  71. package/lib/chain/validation/signatureSets/contributionAndProof.js +2 -2
  72. package/lib/chain/validation/signatureSets/contributionAndProof.js.map +1 -1
  73. package/lib/chain/validation/signatureSets/syncCommittee.d.ts +2 -1
  74. package/lib/chain/validation/signatureSets/syncCommittee.d.ts.map +1 -1
  75. package/lib/chain/validation/signatureSets/syncCommittee.js +2 -2
  76. package/lib/chain/validation/signatureSets/syncCommittee.js.map +1 -1
  77. package/lib/chain/validation/signatureSets/syncCommitteeContribution.d.ts +2 -1
  78. package/lib/chain/validation/signatureSets/syncCommitteeContribution.d.ts.map +1 -1
  79. package/lib/chain/validation/signatureSets/syncCommitteeContribution.js +2 -2
  80. package/lib/chain/validation/signatureSets/syncCommitteeContribution.js.map +1 -1
  81. package/lib/chain/validation/signatureSets/syncCommitteeSelectionProof.d.ts +2 -1
  82. package/lib/chain/validation/signatureSets/syncCommitteeSelectionProof.d.ts.map +1 -1
  83. package/lib/chain/validation/signatureSets/syncCommitteeSelectionProof.js +1 -2
  84. package/lib/chain/validation/signatureSets/syncCommitteeSelectionProof.js.map +1 -1
  85. package/lib/chain/validation/syncCommittee.js +1 -1
  86. package/lib/chain/validation/syncCommittee.js.map +1 -1
  87. package/lib/chain/validation/syncCommitteeContributionAndProof.d.ts.map +1 -1
  88. package/lib/chain/validation/syncCommitteeContributionAndProof.js +3 -3
  89. package/lib/chain/validation/syncCommitteeContributionAndProof.js.map +1 -1
  90. package/lib/chain/validation/voluntaryExit.js +1 -1
  91. package/lib/chain/validation/voluntaryExit.js.map +1 -1
  92. package/lib/db/beacon.d.ts +3 -7
  93. package/lib/db/beacon.d.ts.map +1 -1
  94. package/lib/db/beacon.js +33 -12
  95. package/lib/db/beacon.js.map +1 -1
  96. package/lib/db/buckets.d.ts +12 -6
  97. package/lib/db/buckets.d.ts.map +1 -1
  98. package/lib/db/buckets.js +6 -1
  99. package/lib/db/buckets.js.map +1 -1
  100. package/lib/db/interface.d.ts +2 -7
  101. package/lib/db/interface.d.ts.map +1 -1
  102. package/lib/db/repositories/index.d.ts +0 -3
  103. package/lib/db/repositories/index.d.ts.map +1 -1
  104. package/lib/db/repositories/index.js +0 -3
  105. package/lib/db/repositories/index.js.map +1 -1
  106. package/lib/execution/engine/http.d.ts +1 -1
  107. package/lib/execution/engine/http.d.ts.map +1 -1
  108. package/lib/execution/engine/http.js +2 -3
  109. package/lib/execution/engine/http.js.map +1 -1
  110. package/lib/execution/engine/index.d.ts.map +1 -1
  111. package/lib/execution/engine/index.js +1 -1
  112. package/lib/execution/engine/index.js.map +1 -1
  113. package/lib/execution/engine/interface.d.ts +1 -1
  114. package/lib/execution/engine/interface.d.ts.map +1 -1
  115. package/lib/execution/engine/interface.js.map +1 -1
  116. package/lib/{eth1/provider → execution/engine}/jsonRpcHttpClient.d.ts +1 -1
  117. package/lib/execution/engine/jsonRpcHttpClient.d.ts.map +1 -0
  118. package/lib/execution/engine/jsonRpcHttpClient.js.map +1 -0
  119. package/lib/execution/engine/jwt.d.ts.map +1 -0
  120. package/lib/execution/engine/jwt.js.map +1 -0
  121. package/lib/execution/engine/mock.d.ts.map +1 -1
  122. package/lib/execution/engine/mock.js +1 -1
  123. package/lib/execution/engine/mock.js.map +1 -1
  124. package/lib/execution/engine/payloadIdCache.d.ts +1 -1
  125. package/lib/execution/engine/payloadIdCache.d.ts.map +1 -1
  126. package/lib/execution/engine/types.d.ts +1 -1
  127. package/lib/execution/engine/types.d.ts.map +1 -1
  128. package/lib/execution/engine/types.js +1 -1
  129. package/lib/execution/engine/types.js.map +1 -1
  130. package/lib/execution/engine/utils.d.ts +64 -2
  131. package/lib/execution/engine/utils.d.ts.map +1 -1
  132. package/lib/execution/engine/utils.js +91 -2
  133. package/lib/execution/engine/utils.js.map +1 -1
  134. package/lib/index.d.ts +1 -2
  135. package/lib/index.d.ts.map +1 -1
  136. package/lib/index.js +1 -2
  137. package/lib/index.js.map +1 -1
  138. package/lib/metrics/metrics/lodestar.d.ts +0 -35
  139. package/lib/metrics/metrics/lodestar.d.ts.map +1 -1
  140. package/lib/metrics/metrics/lodestar.js +0 -90
  141. package/lib/metrics/metrics/lodestar.js.map +1 -1
  142. package/lib/network/core/events.d.ts +1 -1
  143. package/lib/network/core/events.d.ts.map +1 -1
  144. package/lib/network/core/events.js +1 -1
  145. package/lib/network/core/events.js.map +1 -1
  146. package/lib/network/events.d.ts +6 -1
  147. package/lib/network/events.d.ts.map +1 -1
  148. package/lib/network/events.js +7 -1
  149. package/lib/network/events.js.map +1 -1
  150. package/lib/node/nodejs.d.ts.map +1 -1
  151. package/lib/node/nodejs.js +10 -9
  152. package/lib/node/nodejs.js.map +1 -1
  153. package/lib/node/notifier.d.ts.map +1 -1
  154. package/lib/node/notifier.js +9 -6
  155. package/lib/node/notifier.js.map +1 -1
  156. package/lib/node/options.d.ts +0 -2
  157. package/lib/node/options.d.ts.map +1 -1
  158. package/lib/node/options.js +0 -2
  159. package/lib/node/options.js.map +1 -1
  160. package/lib/node/utils/interop/deposits.d.ts +2 -1
  161. package/lib/node/utils/interop/deposits.d.ts.map +1 -1
  162. package/lib/node/utils/interop/deposits.js.map +1 -1
  163. package/lib/node/utils/interop/state.d.ts +1 -1
  164. package/lib/node/utils/interop/state.d.ts.map +1 -1
  165. package/lib/node/utils/state.d.ts +1 -7
  166. package/lib/node/utils/state.d.ts.map +1 -1
  167. package/lib/node/utils/state.js +1 -14
  168. package/lib/node/utils/state.js.map +1 -1
  169. package/lib/sync/backfill/backfill.d.ts.map +1 -1
  170. package/lib/sync/backfill/backfill.js +2 -4
  171. package/lib/sync/backfill/backfill.js.map +1 -1
  172. package/lib/sync/backfill/verify.d.ts +1 -1
  173. package/lib/sync/backfill/verify.d.ts.map +1 -1
  174. package/lib/sync/backfill/verify.js +2 -2
  175. package/lib/sync/backfill/verify.js.map +1 -1
  176. package/lib/util/workerEvents.d.ts +1 -6
  177. package/lib/util/workerEvents.d.ts.map +1 -1
  178. package/lib/util/workerEvents.js +8 -8
  179. package/lib/util/workerEvents.js.map +1 -1
  180. package/package.json +14 -20
  181. package/src/api/impl/beacon/blocks/utils.ts +1 -1
  182. package/src/chain/blocks/verifyBlock.ts +1 -0
  183. package/src/chain/blocks/verifyBlocksExecutionPayloads.ts +9 -2
  184. package/src/chain/blocks/verifyBlocksSignatures.ts +3 -1
  185. package/src/chain/chain.ts +7 -19
  186. package/src/chain/forkChoice/index.ts +3 -2
  187. package/src/chain/initState.ts +1 -97
  188. package/src/chain/interface.ts +0 -2
  189. package/src/chain/opPools/aggregatedAttestationPool.ts +7 -7
  190. package/src/chain/opPools/opPool.ts +8 -8
  191. package/src/chain/prepareNextSlot.ts +1 -28
  192. package/src/chain/produceBlock/produceBlockBody.ts +8 -12
  193. package/src/chain/rewards/attestationsRewards.ts +13 -4
  194. package/src/chain/rewards/blockRewards.ts +6 -3
  195. package/src/chain/rewards/syncCommitteeRewards.ts +3 -1
  196. package/src/chain/stateCache/persistentCheckpointsCache.ts +15 -2
  197. package/src/chain/validation/attesterSlashing.ts +1 -1
  198. package/src/chain/validation/block.ts +3 -2
  199. package/src/chain/validation/blsToExecutionChange.ts +1 -1
  200. package/src/chain/validation/proposerSlashing.ts +1 -1
  201. package/src/chain/validation/signatureSets/aggregateAndProof.ts +1 -1
  202. package/src/chain/validation/signatureSets/contributionAndProof.ts +3 -1
  203. package/src/chain/validation/signatureSets/syncCommittee.ts +3 -1
  204. package/src/chain/validation/signatureSets/syncCommitteeContribution.ts +3 -1
  205. package/src/chain/validation/signatureSets/syncCommitteeSelectionProof.ts +2 -1
  206. package/src/chain/validation/syncCommittee.ts +1 -1
  207. package/src/chain/validation/syncCommitteeContributionAndProof.ts +8 -3
  208. package/src/chain/validation/voluntaryExit.ts +1 -1
  209. package/src/db/beacon.ts +38 -16
  210. package/src/db/buckets.ts +12 -7
  211. package/src/db/interface.ts +2 -13
  212. package/src/db/repositories/index.ts +0 -3
  213. package/src/execution/engine/http.ts +8 -9
  214. package/src/execution/engine/index.ts +1 -1
  215. package/src/execution/engine/interface.ts +1 -1
  216. package/src/{eth1/provider → execution/engine}/jsonRpcHttpClient.ts +1 -1
  217. package/src/execution/engine/mock.ts +1 -2
  218. package/src/execution/engine/payloadIdCache.ts +1 -1
  219. package/src/execution/engine/types.ts +9 -9
  220. package/src/execution/engine/utils.ts +111 -5
  221. package/src/index.ts +1 -2
  222. package/src/metrics/metrics/lodestar.ts +0 -92
  223. package/src/network/core/events.ts +1 -1
  224. package/src/network/events.ts +7 -1
  225. package/src/node/nodejs.ts +11 -9
  226. package/src/node/notifier.ts +13 -7
  227. package/src/node/options.ts +0 -3
  228. package/src/node/utils/interop/deposits.ts +3 -1
  229. package/src/node/utils/interop/state.ts +1 -1
  230. package/src/node/utils/state.ts +3 -18
  231. package/src/sync/backfill/backfill.ts +8 -3
  232. package/src/sync/backfill/verify.ts +3 -1
  233. package/src/util/workerEvents.ts +9 -8
  234. package/lib/chain/genesis/genesis.d.ts +0 -51
  235. package/lib/chain/genesis/genesis.d.ts.map +0 -1
  236. package/lib/chain/genesis/genesis.js +0 -123
  237. package/lib/chain/genesis/genesis.js.map +0 -1
  238. package/lib/chain/genesis/interface.d.ts +0 -13
  239. package/lib/chain/genesis/interface.d.ts.map +0 -1
  240. package/lib/chain/genesis/interface.js +0 -2
  241. package/lib/chain/genesis/interface.js.map +0 -1
  242. package/lib/db/repositories/depositDataRoot.d.ts +0 -22
  243. package/lib/db/repositories/depositDataRoot.d.ts.map +0 -1
  244. package/lib/db/repositories/depositDataRoot.js +0 -62
  245. package/lib/db/repositories/depositDataRoot.js.map +0 -1
  246. package/lib/db/repositories/depositEvent.d.ts +0 -13
  247. package/lib/db/repositories/depositEvent.d.ts.map +0 -1
  248. package/lib/db/repositories/depositEvent.js +0 -27
  249. package/lib/db/repositories/depositEvent.js.map +0 -1
  250. package/lib/db/repositories/eth1Data.d.ts +0 -13
  251. package/lib/db/repositories/eth1Data.d.ts.map +0 -1
  252. package/lib/db/repositories/eth1Data.js +0 -26
  253. package/lib/db/repositories/eth1Data.js.map +0 -1
  254. package/lib/db/single/index.d.ts +0 -3
  255. package/lib/db/single/index.d.ts.map +0 -1
  256. package/lib/db/single/index.js +0 -3
  257. package/lib/db/single/index.js.map +0 -1
  258. package/lib/db/single/preGenesisState.d.ts +0 -16
  259. package/lib/db/single/preGenesisState.d.ts.map +0 -1
  260. package/lib/db/single/preGenesisState.js +0 -29
  261. package/lib/db/single/preGenesisState.js.map +0 -1
  262. package/lib/db/single/preGenesisStateLastProcessedBlock.d.ts +0 -14
  263. package/lib/db/single/preGenesisStateLastProcessedBlock.d.ts.map +0 -1
  264. package/lib/db/single/preGenesisStateLastProcessedBlock.js +0 -27
  265. package/lib/db/single/preGenesisStateLastProcessedBlock.js.map +0 -1
  266. package/lib/eth1/errors.d.ts +0 -66
  267. package/lib/eth1/errors.d.ts.map +0 -1
  268. package/lib/eth1/errors.js +0 -27
  269. package/lib/eth1/errors.js.map +0 -1
  270. package/lib/eth1/eth1DataCache.d.ts +0 -19
  271. package/lib/eth1/eth1DataCache.d.ts.map +0 -1
  272. package/lib/eth1/eth1DataCache.js +0 -19
  273. package/lib/eth1/eth1DataCache.js.map +0 -1
  274. package/lib/eth1/eth1DepositDataTracker.d.ts +0 -80
  275. package/lib/eth1/eth1DepositDataTracker.d.ts.map +0 -1
  276. package/lib/eth1/eth1DepositDataTracker.js +0 -317
  277. package/lib/eth1/eth1DepositDataTracker.js.map +0 -1
  278. package/lib/eth1/eth1DepositsCache.d.ts +0 -42
  279. package/lib/eth1/eth1DepositsCache.d.ts.map +0 -1
  280. package/lib/eth1/eth1DepositsCache.js +0 -119
  281. package/lib/eth1/eth1DepositsCache.js.map +0 -1
  282. package/lib/eth1/index.d.ts +0 -31
  283. package/lib/eth1/index.d.ts.map +0 -1
  284. package/lib/eth1/index.js +0 -71
  285. package/lib/eth1/index.js.map +0 -1
  286. package/lib/eth1/interface.d.ts +0 -74
  287. package/lib/eth1/interface.d.ts.map +0 -1
  288. package/lib/eth1/interface.js +0 -8
  289. package/lib/eth1/interface.js.map +0 -1
  290. package/lib/eth1/options.d.ts +0 -22
  291. package/lib/eth1/options.d.ts.map +0 -1
  292. package/lib/eth1/options.js +0 -8
  293. package/lib/eth1/options.js.map +0 -1
  294. package/lib/eth1/provider/eth1Provider.d.ts +0 -39
  295. package/lib/eth1/provider/eth1Provider.d.ts.map +0 -1
  296. package/lib/eth1/provider/eth1Provider.js +0 -147
  297. package/lib/eth1/provider/eth1Provider.js.map +0 -1
  298. package/lib/eth1/provider/jsonRpcHttpClient.d.ts.map +0 -1
  299. package/lib/eth1/provider/jsonRpcHttpClient.js.map +0 -1
  300. package/lib/eth1/provider/jwt.d.ts.map +0 -1
  301. package/lib/eth1/provider/jwt.js.map +0 -1
  302. package/lib/eth1/provider/utils.d.ts +0 -65
  303. package/lib/eth1/provider/utils.d.ts.map +0 -1
  304. package/lib/eth1/provider/utils.js +0 -120
  305. package/lib/eth1/provider/utils.js.map +0 -1
  306. package/lib/eth1/stream.d.ts +0 -15
  307. package/lib/eth1/stream.d.ts.map +0 -1
  308. package/lib/eth1/stream.js +0 -54
  309. package/lib/eth1/stream.js.map +0 -1
  310. package/lib/eth1/utils/depositContract.d.ts +0 -14
  311. package/lib/eth1/utils/depositContract.d.ts.map +0 -1
  312. package/lib/eth1/utils/depositContract.js +0 -33
  313. package/lib/eth1/utils/depositContract.js.map +0 -1
  314. package/lib/eth1/utils/deposits.d.ts +0 -8
  315. package/lib/eth1/utils/deposits.d.ts.map +0 -1
  316. package/lib/eth1/utils/deposits.js +0 -47
  317. package/lib/eth1/utils/deposits.js.map +0 -1
  318. package/lib/eth1/utils/eth1Data.d.ts +0 -22
  319. package/lib/eth1/utils/eth1Data.d.ts.map +0 -1
  320. package/lib/eth1/utils/eth1Data.js +0 -77
  321. package/lib/eth1/utils/eth1Data.js.map +0 -1
  322. package/lib/eth1/utils/eth1DepositEvent.d.ts +0 -7
  323. package/lib/eth1/utils/eth1DepositEvent.d.ts.map +0 -1
  324. package/lib/eth1/utils/eth1DepositEvent.js +0 -13
  325. package/lib/eth1/utils/eth1DepositEvent.js.map +0 -1
  326. package/lib/eth1/utils/eth1Vote.d.ts +0 -17
  327. package/lib/eth1/utils/eth1Vote.d.ts.map +0 -1
  328. package/lib/eth1/utils/eth1Vote.js +0 -111
  329. package/lib/eth1/utils/eth1Vote.js.map +0 -1
  330. package/lib/eth1/utils/groupDepositEventsByBlock.d.ts +0 -9
  331. package/lib/eth1/utils/groupDepositEventsByBlock.d.ts.map +0 -1
  332. package/lib/eth1/utils/groupDepositEventsByBlock.js +0 -17
  333. package/lib/eth1/utils/groupDepositEventsByBlock.js.map +0 -1
  334. package/lib/eth1/utils/optimizeNextBlockDiffForGenesis.d.ts +0 -10
  335. package/lib/eth1/utils/optimizeNextBlockDiffForGenesis.d.ts.map +0 -1
  336. package/lib/eth1/utils/optimizeNextBlockDiffForGenesis.js +0 -14
  337. package/lib/eth1/utils/optimizeNextBlockDiffForGenesis.js.map +0 -1
  338. package/src/chain/genesis/genesis.ts +0 -190
  339. package/src/chain/genesis/interface.ts +0 -14
  340. package/src/db/repositories/depositDataRoot.ts +0 -80
  341. package/src/db/repositories/depositEvent.ts +0 -32
  342. package/src/db/repositories/eth1Data.ts +0 -33
  343. package/src/db/single/index.ts +0 -2
  344. package/src/db/single/preGenesisState.ts +0 -37
  345. package/src/db/single/preGenesisStateLastProcessedBlock.ts +0 -34
  346. package/src/eth1/errors.ts +0 -40
  347. package/src/eth1/eth1DataCache.ts +0 -26
  348. package/src/eth1/eth1DepositDataTracker.ts +0 -410
  349. package/src/eth1/eth1DepositsCache.ts +0 -141
  350. package/src/eth1/index.ts +0 -94
  351. package/src/eth1/interface.ts +0 -87
  352. package/src/eth1/options.ts +0 -28
  353. package/src/eth1/provider/eth1Provider.ts +0 -229
  354. package/src/eth1/provider/utils.ts +0 -136
  355. package/src/eth1/stream.ts +0 -75
  356. package/src/eth1/utils/depositContract.ts +0 -37
  357. package/src/eth1/utils/deposits.ts +0 -70
  358. package/src/eth1/utils/eth1Data.ts +0 -100
  359. package/src/eth1/utils/eth1DepositEvent.ts +0 -12
  360. package/src/eth1/utils/eth1Vote.ts +0 -142
  361. package/src/eth1/utils/groupDepositEventsByBlock.ts +0 -19
  362. package/src/eth1/utils/optimizeNextBlockDiffForGenesis.ts +0 -18
  363. /package/lib/{eth1/provider → execution/engine}/jsonRpcHttpClient.js +0 -0
  364. /package/lib/{eth1/provider → execution/engine}/jwt.d.ts +0 -0
  365. /package/lib/{eth1/provider → execution/engine}/jwt.js +0 -0
  366. /package/src/{eth1/provider → execution/engine}/jwt.ts +0 -0
@@ -1,74 +0,0 @@
1
- import { BeaconConfig } from "@lodestar/config";
2
- import { CachedBeaconStateAllForks } from "@lodestar/state-transition";
3
- import { phase0 } from "@lodestar/types";
4
- export type EthJsonRpcBlockRaw = {
5
- /** the block number. null when its pending block. `"0x1b4"` */
6
- number: string;
7
- /** 32 Bytes - hash of the block. null when its pending block. `"0xdc0818cf78f21a8e70579cb46a43643f78291264dda342ae31049421c82d21ae"` */
8
- hash: string;
9
- /** 32 Bytes - hash of the parent block. `"0xe99e022112df268087ea7eafaf4790497fd21dbeeb6bd7a1721df161a6657a54"` */
10
- parentHash: string;
11
- /**
12
- * integer of the total difficulty of the chain until this block. `"0x78ed983323d"`.
13
- * Current mainnet value is 0x684de10dc5c03f006b6, 75 bits so requires a bigint.
14
- */
15
- totalDifficulty: string;
16
- /** the unix timestamp for when the block was collated. `"0x55ba467c"` */
17
- timestamp: string;
18
- };
19
- export interface IEth1Provider {
20
- deployBlock: number;
21
- getBlockNumber(): Promise<number>;
22
- /** Returns HTTP code 200 + value=null if block is not found */
23
- getBlockByNumber(blockNumber: number | "latest"): Promise<EthJsonRpcBlockRaw | null>;
24
- /** Returns HTTP code 200 + value=null if block is not found */
25
- getBlockByHash(blockHashHex: string): Promise<EthJsonRpcBlockRaw | null>;
26
- /** null returns are ignored, may return a different number of blocks than expected */
27
- getBlocksByNumber(fromBlock: number, toBlock: number): Promise<EthJsonRpcBlockRaw[]>;
28
- getDepositEvents(fromBlock: number, toBlock: number): Promise<phase0.DepositEvent[]>;
29
- validateContract(): Promise<void>;
30
- getState(): Eth1ProviderState;
31
- }
32
- export declare enum Eth1ProviderState {
33
- ONLINE = "ONLINE",
34
- OFFLINE = "OFFLINE",
35
- ERROR = "ERROR",
36
- AUTH_FAILED = "AUTH_FAILED"
37
- }
38
- export type Eth1DataAndDeposits = {
39
- eth1Data: phase0.Eth1Data;
40
- deposits: phase0.Deposit[];
41
- };
42
- export interface IEth1ForBlockProduction {
43
- getEth1DataAndDeposits(state: CachedBeaconStateAllForks): Promise<Eth1DataAndDeposits>;
44
- isPollingEth1Data(): boolean;
45
- /**
46
- * Should stop polling eth1Data after a Electra block is finalized AND deposit_requests_start_index is reached
47
- */
48
- stopPollingEth1Data(): void;
49
- }
50
- /** Different Eth1Block from phase0.Eth1Block with blockHash */
51
- export type Eth1Block = {
52
- blockHash: Uint8Array;
53
- blockNumber: number;
54
- timestamp: number;
55
- };
56
- export type BatchDepositEvents = {
57
- depositEvents: phase0.DepositEvent[];
58
- blockNumber: number;
59
- };
60
- export type Eth1Streamer = {
61
- getDepositsStream(fromBlock: number): AsyncGenerator<BatchDepositEvents>;
62
- getDepositsAndBlockStreamForGenesis(fromBlock: number): AsyncGenerator<[phase0.DepositEvent[], phase0.Eth1Block]>;
63
- };
64
- export type IEth1StreamParams = Pick<BeaconConfig, "ETH1_FOLLOW_DISTANCE" | "MIN_GENESIS_TIME" | "GENESIS_DELAY" | "SECONDS_PER_ETH1_BLOCK"> & {
65
- maxBlocksPerPoll: number;
66
- };
67
- export type IJson = string | number | boolean | undefined | IJson[] | {
68
- [key: string]: IJson;
69
- };
70
- export interface RpcPayload<P = IJson[]> {
71
- method: string;
72
- params: P;
73
- }
74
- //# sourceMappingURL=interface.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../src/eth1/interface.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- export var Eth1ProviderState;
2
- (function (Eth1ProviderState) {
3
- Eth1ProviderState["ONLINE"] = "ONLINE";
4
- Eth1ProviderState["OFFLINE"] = "OFFLINE";
5
- Eth1ProviderState["ERROR"] = "ERROR";
6
- Eth1ProviderState["AUTH_FAILED"] = "AUTH_FAILED";
7
- })(Eth1ProviderState || (Eth1ProviderState = {}));
8
- //# sourceMappingURL=interface.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"interface.js","sourceRoot":"","sources":["../../src/eth1/interface.ts"],"names":[],"mappings":"AAkCA,MAAM,CAAN,IAAY,iBAKX;AALD,WAAY,iBAAiB;IAC3B,sCAAiB,CAAA;IACjB,wCAAmB,CAAA;IACnB,oCAAe,CAAA;IACf,gDAA2B,CAAA;AAC7B,CAAC,EALW,iBAAiB,KAAjB,iBAAiB,QAK5B"}
@@ -1,22 +0,0 @@
1
- export type Eth1Options = {
2
- enabled?: boolean;
3
- disableEth1DepositDataTracker?: boolean;
4
- providerUrls?: string[];
5
- /**
6
- * jwtSecretHex is the jwt secret if the eth1 modules should ping the jwt auth
7
- * protected engine endpoints.
8
- */
9
- jwtSecretHex?: string;
10
- jwtId?: string;
11
- jwtVersion?: string;
12
- depositContractDeployBlock?: number;
13
- unsafeAllowDepositDataOverwrite?: boolean;
14
- /**
15
- * Vote for a specific eth1_data regardless of validity and existing votes.
16
- * hex encoded ssz serialized Eth1Data type.
17
- */
18
- forcedEth1DataVote?: string;
19
- };
20
- export declare const DEFAULT_PROVIDER_URLS: string[];
21
- export declare const defaultEth1Options: Eth1Options;
22
- //# sourceMappingURL=options.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/eth1/options.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,6BAA6B,CAAC,EAAE,OAAO,CAAC;IACxC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,+BAA+B,CAAC,EAAE,OAAO,CAAC;IAC1C;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF,eAAO,MAAM,qBAAqB,UAA4B,CAAC;AAE/D,eAAO,MAAM,kBAAkB,EAAE,WAKhC,CAAC"}
@@ -1,8 +0,0 @@
1
- export const DEFAULT_PROVIDER_URLS = ["http://localhost:8545"];
2
- export const defaultEth1Options = {
3
- enabled: true,
4
- providerUrls: DEFAULT_PROVIDER_URLS,
5
- depositContractDeployBlock: 0,
6
- unsafeAllowDepositDataOverwrite: false,
7
- };
8
- //# sourceMappingURL=options.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/eth1/options.ts"],"names":[],"mappings":"AAoBA,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,uBAAuB,CAAC,CAAC;AAE/D,MAAM,CAAC,MAAM,kBAAkB,GAAgB;IAC7C,OAAO,EAAE,IAAI;IACb,YAAY,EAAE,qBAAqB;IACnC,0BAA0B,EAAE,CAAC;IAC7B,+BAA+B,EAAE,KAAK;CACvC,CAAC"}
@@ -1,39 +0,0 @@
1
- import { ChainConfig } from "@lodestar/config";
2
- import { Logger } from "@lodestar/logger";
3
- import { phase0 } from "@lodestar/types";
4
- import { Eth1Block, Eth1ProviderState, EthJsonRpcBlockRaw, IEth1Provider } from "../interface.js";
5
- import { Eth1Options } from "../options.js";
6
- import { JsonRpcHttpClientMetrics } from "./jsonRpcHttpClient.js";
7
- export declare class Eth1Provider implements IEth1Provider {
8
- readonly deployBlock: number;
9
- private readonly depositContractAddress;
10
- private readonly rpc;
11
- private state;
12
- private logger?;
13
- constructor(config: Pick<ChainConfig, "DEPOSIT_CONTRACT_ADDRESS">, opts: Pick<Eth1Options, "depositContractDeployBlock" | "providerUrls" | "jwtSecretHex" | "jwtId" | "jwtVersion"> & {
14
- logger?: Logger;
15
- }, signal?: AbortSignal, metrics?: JsonRpcHttpClientMetrics | null);
16
- getState(): Eth1ProviderState;
17
- validateContract(): Promise<void>;
18
- getDepositEvents(fromBlock: number, toBlock: number): Promise<phase0.DepositEvent[]>;
19
- /**
20
- * Fetches an arbitrary array of block numbers in batch
21
- */
22
- getBlocksByNumber(fromBlock: number, toBlock: number): Promise<EthJsonRpcBlockRaw[]>;
23
- getBlockByNumber(blockNumber: number | "latest"): Promise<EthJsonRpcBlockRaw | null>;
24
- getBlockByHash(blockHashHex: string): Promise<EthJsonRpcBlockRaw | null>;
25
- getBlockNumber(): Promise<number>;
26
- getCode(address: string): Promise<string>;
27
- getLogs(options: {
28
- fromBlock: number;
29
- toBlock: number;
30
- address: string;
31
- topics: string[];
32
- }): Promise<{
33
- blockNumber: number;
34
- data: string;
35
- topics: string[];
36
- }[]>;
37
- }
38
- export declare function parseEth1Block(blockRaw: EthJsonRpcBlockRaw): Eth1Block;
39
- //# sourceMappingURL=eth1Provider.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"eth1Provider.d.ts","sourceRoot":"","sources":["../../../src/eth1/provider/eth1Provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAC,MAAM,EAAC,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAC;AAavC,OAAO,EAAC,SAAS,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAChG,OAAO,EAAwB,WAAW,EAAC,MAAM,eAAe,CAAC;AAEjE,OAAO,EAKL,wBAAwB,EAEzB,MAAM,wBAAwB,CAAC;AAiChC,qBAAa,YAAa,YAAW,aAAa;IAChD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAS;IAChD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAoB;IAExC,OAAO,CAAC,KAAK,CAA+C;IAC5D,OAAO,CAAC,MAAM,CAAC,CAAS;gBAGtB,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,0BAA0B,CAAC,EACrD,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,4BAA4B,GAAG,cAAc,GAAG,cAAc,GAAG,OAAO,GAAG,YAAY,CAAC,GAAG;QACjH,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,EACD,MAAM,CAAC,EAAE,WAAW,EACpB,OAAO,CAAC,EAAE,wBAAwB,GAAG,IAAI;IAmD3C,QAAQ,IAAI,iBAAiB;IAIvB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAWjC,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;IAU1F;;OAEG;IACG,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAapF,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAUpF,cAAc,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IASxE,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC;IASjC,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAKzC,OAAO,CAAC,OAAO,EAAE;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,EAAE,CAAC;KAClB,GAAG,OAAO,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAC,EAAE,CAAC;CAiBrE;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,kBAAkB,GAAG,SAAS,CAOtE"}
@@ -1,147 +0,0 @@
1
- import { createElapsedTimeTracker, fromHex, isErrorAborted, isFetchError, toHex, toPrintableUrl, } from "@lodestar/utils";
2
- import { HTTP_CONNECTION_ERROR_CODES, HTTP_FATAL_ERROR_CODES } from "../../execution/engine/utils.js";
3
- import { isValidAddress } from "../../util/address.js";
4
- import { linspace } from "../../util/numpy.js";
5
- import { Eth1ProviderState } from "../interface.js";
6
- import { DEFAULT_PROVIDER_URLS } from "../options.js";
7
- import { depositEventTopics, parseDepositLog } from "../utils/depositContract.js";
8
- import { ErrorJsonRpcResponse, HttpRpcError, JsonRpcHttpClient, JsonRpcHttpClientEvent, } from "./jsonRpcHttpClient.js";
9
- import { dataToBytes, isJsonRpcTruncatedError, numToQuantity, quantityToNum } from "./utils.js";
10
- // Define static options once to prevent extra allocations
11
- const getBlocksByNumberOpts = { routeId: "getBlockByNumber_batched" };
12
- const getBlockByNumberOpts = { routeId: "getBlockByNumber" };
13
- const getBlockByHashOpts = { routeId: "getBlockByHash" };
14
- const getBlockNumberOpts = { routeId: "getBlockNumber" };
15
- const getLogsOpts = { routeId: "getLogs" };
16
- const isOneMinutePassed = createElapsedTimeTracker({ minElapsedTime: 60_000 });
17
- export class Eth1Provider {
18
- deployBlock;
19
- depositContractAddress;
20
- rpc;
21
- // The default state is ONLINE, it will be updated to offline if we receive a http error
22
- state = Eth1ProviderState.ONLINE;
23
- logger;
24
- constructor(config, opts, signal, metrics) {
25
- this.logger = opts.logger;
26
- this.deployBlock = opts.depositContractDeployBlock ?? 0;
27
- this.depositContractAddress = toHex(config.DEPOSIT_CONTRACT_ADDRESS);
28
- const providerUrls = opts.providerUrls ?? DEFAULT_PROVIDER_URLS;
29
- this.rpc = new JsonRpcHttpClient(providerUrls, {
30
- signal,
31
- // Don't fallback with is truncated error. Throw early and let the retry on this class handle it
32
- shouldNotFallback: isJsonRpcTruncatedError,
33
- jwtSecret: opts.jwtSecretHex ? fromHex(opts.jwtSecretHex) : undefined,
34
- jwtId: opts.jwtId,
35
- jwtVersion: opts.jwtVersion,
36
- metrics: metrics,
37
- });
38
- this.logger?.info("Eth1 provider", { urls: providerUrls.map(toPrintableUrl).toString() });
39
- this.rpc.emitter.on(JsonRpcHttpClientEvent.RESPONSE, () => {
40
- const oldState = this.state;
41
- this.state = Eth1ProviderState.ONLINE;
42
- if (oldState !== Eth1ProviderState.ONLINE) {
43
- this.logger?.info("Eth1 provider is back online", { oldState, newState: this.state });
44
- }
45
- });
46
- this.rpc.emitter.on(JsonRpcHttpClientEvent.ERROR, ({ error }) => {
47
- if (isErrorAborted(error)) {
48
- this.state = Eth1ProviderState.ONLINE;
49
- }
50
- else if (error instanceof HttpRpcError || error instanceof ErrorJsonRpcResponse) {
51
- this.state = Eth1ProviderState.ERROR;
52
- }
53
- else if (error && isFetchError(error) && HTTP_FATAL_ERROR_CODES.includes(error.code)) {
54
- this.state = Eth1ProviderState.OFFLINE;
55
- }
56
- else if (error && isFetchError(error) && HTTP_CONNECTION_ERROR_CODES.includes(error.code)) {
57
- this.state = Eth1ProviderState.AUTH_FAILED;
58
- }
59
- if (this.state !== Eth1ProviderState.ONLINE && isOneMinutePassed()) {
60
- this.logger?.error("Eth1 provider error", {
61
- state: this.state,
62
- lastErrorAt: new Date(Date.now() - isOneMinutePassed.msSinceLastCall).toLocaleTimeString(),
63
- }, error);
64
- }
65
- });
66
- }
67
- getState() {
68
- return this.state;
69
- }
70
- async validateContract() {
71
- if (!isValidAddress(this.depositContractAddress)) {
72
- throw Error(`Invalid contract address: ${this.depositContractAddress}`);
73
- }
74
- const code = await this.getCode(this.depositContractAddress);
75
- if (!code || code === "0x") {
76
- throw new Error(`There is no deposit contract at given address: ${this.depositContractAddress}`);
77
- }
78
- }
79
- async getDepositEvents(fromBlock, toBlock) {
80
- const logsRawArr = await this.getLogs({
81
- fromBlock,
82
- toBlock,
83
- address: this.depositContractAddress,
84
- topics: depositEventTopics,
85
- });
86
- return logsRawArr.flat(1).map((log) => parseDepositLog(log));
87
- }
88
- /**
89
- * Fetches an arbitrary array of block numbers in batch
90
- */
91
- async getBlocksByNumber(fromBlock, toBlock) {
92
- const method = "eth_getBlockByNumber";
93
- const blocksArr = await this.rpc.fetchBatch(linspace(fromBlock, toBlock).map((blockNumber) => ({ method, params: [numToQuantity(blockNumber), false] })), getBlocksByNumberOpts);
94
- const blocks = [];
95
- for (const block of blocksArr.flat(1)) {
96
- if (block)
97
- blocks.push(block);
98
- }
99
- return blocks;
100
- }
101
- async getBlockByNumber(blockNumber) {
102
- const method = "eth_getBlockByNumber";
103
- const blockNumberHex = typeof blockNumber === "string" ? blockNumber : numToQuantity(blockNumber);
104
- return this.rpc.fetch(
105
- // false = include only transaction roots, not full objects
106
- { method, params: [blockNumberHex, false] }, getBlockByNumberOpts);
107
- }
108
- async getBlockByHash(blockHashHex) {
109
- const method = "eth_getBlockByHash";
110
- return this.rpc.fetch(
111
- // false = include only transaction roots, not full objects
112
- { method, params: [blockHashHex, false] }, getBlockByHashOpts);
113
- }
114
- async getBlockNumber() {
115
- const method = "eth_blockNumber";
116
- const blockNumberRaw = await this.rpc.fetch({ method, params: [] }, getBlockNumberOpts);
117
- return parseInt(blockNumberRaw, 16);
118
- }
119
- async getCode(address) {
120
- const method = "eth_getCode";
121
- return this.rpc.fetch({ method, params: [address, "latest"] });
122
- }
123
- async getLogs(options) {
124
- const method = "eth_getLogs";
125
- const hexOptions = {
126
- ...options,
127
- fromBlock: numToQuantity(options.fromBlock),
128
- toBlock: numToQuantity(options.toBlock),
129
- };
130
- const logsRaw = await this.rpc.fetch({ method, params: [hexOptions] }, getLogsOpts);
131
- return logsRaw.map((logRaw) => ({
132
- blockNumber: parseInt(logRaw.blockNumber, 16),
133
- data: logRaw.data,
134
- topics: logRaw.topics,
135
- }));
136
- }
137
- }
138
- export function parseEth1Block(blockRaw) {
139
- if (typeof blockRaw !== "object")
140
- throw Error("block is not an object");
141
- return {
142
- blockHash: dataToBytes(blockRaw.hash, 32),
143
- blockNumber: quantityToNum(blockRaw.number, "block.number"),
144
- timestamp: quantityToNum(blockRaw.timestamp, "block.timestamp"),
145
- };
146
- }
147
- //# sourceMappingURL=eth1Provider.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"eth1Provider.js","sourceRoot":"","sources":["../../../src/eth1/provider/eth1Provider.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,wBAAwB,EACxB,OAAO,EACP,cAAc,EACd,YAAY,EACZ,KAAK,EACL,cAAc,GACf,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAC,2BAA2B,EAAE,sBAAsB,EAAC,MAAM,iCAAiC,CAAC;AACpG,OAAO,EAAC,cAAc,EAAC,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAC,QAAQ,EAAC,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAY,iBAAiB,EAAoC,MAAM,iBAAiB,CAAC;AAChG,OAAO,EAAC,qBAAqB,EAAc,MAAM,eAAe,CAAC;AACjE,OAAO,EAAC,kBAAkB,EAAE,eAAe,EAAC,MAAM,6BAA6B,CAAC;AAChF,OAAO,EACL,oBAAoB,EACpB,YAAY,EACZ,iBAAiB,EACjB,sBAAsB,GAGvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAC,WAAW,EAAE,uBAAuB,EAAE,aAAa,EAAE,aAAa,EAAC,MAAM,YAAY,CAAC;AAuB9F,0DAA0D;AAC1D,MAAM,qBAAqB,GAAY,EAAC,OAAO,EAAE,0BAA0B,EAAC,CAAC;AAC7E,MAAM,oBAAoB,GAAY,EAAC,OAAO,EAAE,kBAAkB,EAAC,CAAC;AACpE,MAAM,kBAAkB,GAAY,EAAC,OAAO,EAAE,gBAAgB,EAAC,CAAC;AAChE,MAAM,kBAAkB,GAAY,EAAC,OAAO,EAAE,gBAAgB,EAAC,CAAC;AAChE,MAAM,WAAW,GAAY,EAAC,OAAO,EAAE,SAAS,EAAC,CAAC;AAElD,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,EAAC,cAAc,EAAE,MAAM,EAAC,CAAC,CAAC;AAE7E,MAAM,OAAO,YAAY;IACd,WAAW,CAAS;IACZ,sBAAsB,CAAS;IAC/B,GAAG,CAAoB;IACxC,wFAAwF;IAChF,KAAK,GAAsB,iBAAiB,CAAC,MAAM,CAAC;IACpD,MAAM,CAAU;IAExB,YACE,MAAqD,EACrD,IAEC,EACD,MAAoB,EACpB,OAAyC;QAEzC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,0BAA0B,IAAI,CAAC,CAAC;QACxD,IAAI,CAAC,sBAAsB,GAAG,KAAK,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC;QAErE,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,IAAI,qBAAqB,CAAC;QAChE,IAAI,CAAC,GAAG,GAAG,IAAI,iBAAiB,CAAC,YAAY,EAAE;YAC7C,MAAM;YACN,gGAAgG;YAChG,iBAAiB,EAAE,uBAAuB;YAC1C,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS;YACrE,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,OAAO,EAAE,OAAO;SACjB,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,eAAe,EAAE,EAAC,IAAI,EAAE,YAAY,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE,EAAC,CAAC,CAAC;QAExF,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,sBAAsB,CAAC,QAAQ,EAAE,GAAG,EAAE;YACxD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC;YAC5B,IAAI,CAAC,KAAK,GAAG,iBAAiB,CAAC,MAAM,CAAC;YAEtC,IAAI,QAAQ,KAAK,iBAAiB,CAAC,MAAM,EAAE,CAAC;gBAC1C,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,8BAA8B,EAAE,EAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,EAAC,CAAC,CAAC;YACtF,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,sBAAsB,CAAC,KAAK,EAAE,CAAC,EAAC,KAAK,EAAC,EAAE,EAAE;YAC5D,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC1B,IAAI,CAAC,KAAK,GAAG,iBAAiB,CAAC,MAAM,CAAC;YACxC,CAAC;iBAAM,IAAK,KAAiB,YAAY,YAAY,IAAK,KAAiB,YAAY,oBAAoB,EAAE,CAAC;gBAC5G,IAAI,CAAC,KAAK,GAAG,iBAAiB,CAAC,KAAK,CAAC;YACvC,CAAC;iBAAM,IAAI,KAAK,IAAI,YAAY,CAAC,KAAK,CAAC,IAAI,sBAAsB,CAAC,QAAQ,CAAE,KAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvG,IAAI,CAAC,KAAK,GAAG,iBAAiB,CAAC,OAAO,CAAC;YACzC,CAAC;iBAAM,IAAI,KAAK,IAAI,YAAY,CAAC,KAAK,CAAC,IAAI,2BAA2B,CAAC,QAAQ,CAAE,KAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC5G,IAAI,CAAC,KAAK,GAAG,iBAAiB,CAAC,WAAW,CAAC;YAC7C,CAAC;YAED,IAAI,IAAI,CAAC,KAAK,KAAK,iBAAiB,CAAC,MAAM,IAAI,iBAAiB,EAAE,EAAE,CAAC;gBACnE,IAAI,CAAC,MAAM,EAAE,KAAK,CAChB,qBAAqB,EACrB;oBACE,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,WAAW,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,iBAAiB,CAAC,eAAe,CAAC,CAAC,kBAAkB,EAAE;iBAC3F,EACD,KAAK,CACN,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,gBAAgB;QACpB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,sBAAsB,CAAC,EAAE,CAAC;YACjD,MAAM,KAAK,CAAC,6BAA6B,IAAI,CAAC,sBAAsB,EAAE,CAAC,CAAC;QAC1E,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QAC7D,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,kDAAkD,IAAI,CAAC,sBAAsB,EAAE,CAAC,CAAC;QACnG,CAAC;IACH,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,SAAiB,EAAE,OAAe;QACvD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC;YACpC,SAAS;YACT,OAAO;YACP,OAAO,EAAE,IAAI,CAAC,sBAAsB;YACpC,MAAM,EAAE,kBAAkB;SAC3B,CAAC,CAAC;QACH,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB,CAAC,SAAiB,EAAE,OAAe;QACxD,MAAM,MAAM,GAAG,sBAAsB,CAAC;QACtC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CACzC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,EAAC,MAAM,EAAE,MAAM,EAAE,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,EAAC,CAAC,CAAC,EAC1G,qBAAqB,CACtB,CAAC;QACF,MAAM,MAAM,GAAyB,EAAE,CAAC;QACxC,KAAK,MAAM,KAAK,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YACtC,IAAI,KAAK;gBAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,WAA8B;QACnD,MAAM,MAAM,GAAG,sBAAsB,CAAC;QACtC,MAAM,cAAc,GAAG,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QAClG,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK;QACnB,2DAA2D;QAC3D,EAAC,MAAM,EAAE,MAAM,EAAE,CAAC,cAAc,EAAE,KAAK,CAAC,EAAC,EACzC,oBAAoB,CACrB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,YAAoB;QACvC,MAAM,MAAM,GAAG,oBAAoB,CAAC;QACpC,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK;QACnB,2DAA2D;QAC3D,EAAC,MAAM,EAAE,MAAM,EAAE,CAAC,YAAY,EAAE,KAAK,CAAC,EAAC,EACvC,kBAAkB,CACnB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,MAAM,MAAM,GAAG,iBAAiB,CAAC;QACjC,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CACzC,EAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAC,EACpB,kBAAkB,CACnB,CAAC;QACF,OAAO,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAe;QAC3B,MAAM,MAAM,GAAG,aAAa,CAAC;QAC7B,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAuC,EAAC,MAAM,EAAE,MAAM,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAC,CAAC,CAAC;IACrG,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAKb;QACC,MAAM,MAAM,GAAG,aAAa,CAAC;QAC7B,MAAM,UAAU,GAAG;YACjB,GAAG,OAAO;YACV,SAAS,EAAE,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC;YAC3C,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC;SACxC,CAAC;QACF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAClC,EAAC,MAAM,EAAE,MAAM,EAAE,CAAC,UAAU,CAAC,EAAC,EAC9B,WAAW,CACZ,CAAC;QACF,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAC9B,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC;YAC7C,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,MAAM,EAAE,MAAM,CAAC,MAAM;SACtB,CAAC,CAAC,CAAC;IACN,CAAC;CACF;AAED,MAAM,UAAU,cAAc,CAAC,QAA4B;IACzD,IAAI,OAAO,QAAQ,KAAK,QAAQ;QAAE,MAAM,KAAK,CAAC,wBAAwB,CAAC,CAAC;IACxE,OAAO;QACL,SAAS,EAAE,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;QACzC,WAAW,EAAE,aAAa,CAAC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;QAC3D,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC;KAChE,CAAC;AACJ,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"jsonRpcHttpClient.d.ts","sourceRoot":"","sources":["../../../src/eth1/provider/jsonRpcHttpClient.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"jsonRpcHttpClient.js","sourceRoot":"","sources":["../../../src/eth1/provider/jsonRpcHttpClient.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"jwt.d.ts","sourceRoot":"","sources":["../../../src/eth1/provider/jwt.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,YAAY,CAAC;AAK3C;;;GAGG;AACH,MAAM,MAAM,QAAQ,GAAG;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAC,CAAC;AAE9E,wBAAgB,cAAc,CAC5B,KAAK,EAAE,QAAQ,EACf,SAAS,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,EACvC,SAAS,GAAE,UAAoB,GAC9B,MAAM,CASR;AAED,wBAAgB,cAAc,CAC5B,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,EACvC,SAAS,GAAE,UAAoB,GAC9B,QAAQ,CAGV"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"jwt.js","sourceRoot":"","sources":["../../../src/eth1/provider/jwt.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAG7B,OAAO,GAAG,MAAM,YAAY,CAAC;AAE7B,MAAM,EAAC,MAAM,EAAE,MAAM,EAAC,GAAG,GAAG,CAAC;AAQ7B,MAAM,UAAU,cAAc,CAC5B,KAAe,EACf,SAAuC,EACvC,YAAwB,OAAO;IAE/B,MAAM,KAAK,GAAG,MAAM,CAClB,KAAK;IACL,sFAAsF;IACtF,4EAA4E;IAC5E,SAA8B,EAC9B,SAAS,CACV,CAAC;IACF,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,KAAa,EACb,SAAuC,EACvC,YAAwB,OAAO;IAE/B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,SAA4B,EAAE,KAAK,EAAE,SAAS,CAAa,CAAC;IACxF,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -1,65 +0,0 @@
1
- import { RootHex } from "@lodestar/types";
2
- /** QUANTITY as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API */
3
- export type QUANTITY = string;
4
- /** DATA as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API */
5
- export type DATA = string;
6
- export declare const rootHexRegex: RegExp;
7
- export declare function numberToHex(n: number | bigint): string;
8
- export declare function isJsonRpcTruncatedError(error: Error): boolean;
9
- export declare function bytesToHex(bytes: Uint8Array): string;
10
- /**
11
- * QUANTITY as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API
12
- *
13
- * When encoding QUANTITIES (integers, numbers): encode as hex, prefix with “0x”, the most compact representation (slight exception: zero should be represented as “0x0”). Examples:
14
- * - 0x41 (65 in decimal)
15
- * - 0x400 (1024 in decimal)
16
- * - WRONG: 0x (should always have at least one digit - zero is “0x0”)
17
- * - WRONG: 0x0400 (no leading zeroes allowed)
18
- * - WRONG: ff (must be prefixed 0x)
19
- */
20
- export declare function numToQuantity(num: number | bigint): QUANTITY;
21
- /**
22
- * QUANTITY as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API
23
- */
24
- export declare function quantityToNum(hex: QUANTITY, id?: string): number;
25
- /**
26
- * QUANTITY as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API.
27
- * Typesafe fn to convert hex string to bigint. The BigInt constructor param is any
28
- */
29
- export declare function quantityToBigint(hex: QUANTITY, id?: string): bigint;
30
- /**
31
- * QUANTITY as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API.
32
- */
33
- export declare function quantityToBytes(hex: QUANTITY): Uint8Array;
34
- /**
35
- * QUANTITY as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API.
36
- * Compress a 32 ByteVector into a QUANTITY
37
- */
38
- export declare function bytesToQuantity(bytes: Uint8Array): QUANTITY;
39
- /**
40
- * DATA as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API
41
- *
42
- * When encoding UNFORMATTED DATA (byte arrays, account addresses, hashes, bytecode arrays): encode as hex, prefix with
43
- * “0x”, two hex digits per byte. Examples:
44
- *
45
- * - 0x41 (size 1, “A”)
46
- * - 0x004200 (size 3, “\0B\0”)
47
- * - 0x (size 0, “”)
48
- * - WRONG: 0xf0f0f (must be even number of digits)
49
- * - WRONG: 004200 (must be prefixed 0x)
50
- */
51
- export declare function bytesToData(bytes: Uint8Array): DATA;
52
- /**
53
- * DATA as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API
54
- */
55
- export declare function dataToBytes(hex: DATA, fixedLength: number | null): Uint8Array;
56
- /**
57
- * Convert DATA into a preallocated buffer
58
- * fromHexInto will throw if buffer's length is not the same as the decoded hex length
59
- */
60
- export declare function dataIntoBytes(hex: DATA, buffer: Uint8Array): Uint8Array;
61
- /**
62
- * DATA as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API
63
- */
64
- export declare function dataToRootHex(hex: DATA, id?: string): RootHex;
65
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/eth1/provider/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,iBAAiB,CAAC;AAIxC,6FAA6F;AAC7F,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC;AAC9B,yFAAyF;AACzF,MAAM,MAAM,IAAI,GAAG,MAAM,CAAC;AAE1B,eAAO,MAAM,YAAY,QAAwB,CAAC;AAElD,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAEtD;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAS7D;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAQpD;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,CAE5D;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,SAAK,GAAG,MAAM,CAI5D;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,SAAK,GAAG,MAAM,CAM/D;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,QAAQ,GAAG,UAAU,CAGzD;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,UAAU,GAAG,QAAQ,CAG3D;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAEnD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,UAAU,CAW7E;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,GAAG,UAAU,CAGvE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,SAAK,GAAG,OAAO,CAGzD"}
@@ -1,120 +0,0 @@
1
- import { bigIntToBytes, bytesToBigInt, fromHex, fromHexInto, toHex } from "@lodestar/utils";
2
- import { ErrorParseJson } from "./jsonRpcHttpClient.js";
3
- export const rootHexRegex = /^0x[a-fA-F0-9]{64}$/;
4
- export function numberToHex(n) {
5
- return "0x" + n.toString(16);
6
- }
7
- export function isJsonRpcTruncatedError(error) {
8
- return (
9
- // Truncated responses usually get as 200 but since it's truncated the JSON will be invalid
10
- error instanceof ErrorParseJson ||
11
- // Otherwise guess Infura error message of too many events
12
- (error instanceof Error && error.message.includes("query returned more than 10000 results")) ||
13
- // Nethermind enforces limits on JSON RPC batch calls
14
- (error instanceof Error && error.message.toLowerCase().includes("batch size limit exceeded")));
15
- }
16
- export function bytesToHex(bytes) {
17
- // Handle special case in Ethereum hex formating where hex values may include a single letter
18
- // 0x0, 0x1 are valid values
19
- if (bytes.length === 1 && bytes[0] <= 0xf) {
20
- return "0x" + bytes[0].toString(16);
21
- }
22
- return toHex(bytes);
23
- }
24
- /**
25
- * QUANTITY as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API
26
- *
27
- * When encoding QUANTITIES (integers, numbers): encode as hex, prefix with “0x”, the most compact representation (slight exception: zero should be represented as “0x0”). Examples:
28
- * - 0x41 (65 in decimal)
29
- * - 0x400 (1024 in decimal)
30
- * - WRONG: 0x (should always have at least one digit - zero is “0x0”)
31
- * - WRONG: 0x0400 (no leading zeroes allowed)
32
- * - WRONG: ff (must be prefixed 0x)
33
- */
34
- export function numToQuantity(num) {
35
- return "0x" + num.toString(16);
36
- }
37
- /**
38
- * QUANTITY as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API
39
- */
40
- export function quantityToNum(hex, id = "") {
41
- const num = parseInt(hex, 16);
42
- if (Number.isNaN(num) || num < 0)
43
- throw Error(`Invalid hex decimal ${id} '${hex}'`);
44
- return num;
45
- }
46
- /**
47
- * QUANTITY as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API.
48
- * Typesafe fn to convert hex string to bigint. The BigInt constructor param is any
49
- */
50
- export function quantityToBigint(hex, id = "") {
51
- try {
52
- return BigInt(hex);
53
- }
54
- catch (e) {
55
- throw Error(`Invalid hex bigint ${id} '${hex}': ${e.message}`);
56
- }
57
- }
58
- /**
59
- * QUANTITY as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API.
60
- */
61
- export function quantityToBytes(hex) {
62
- const bn = quantityToBigint(hex);
63
- return bigIntToBytes(bn, 32, "le");
64
- }
65
- /**
66
- * QUANTITY as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API.
67
- * Compress a 32 ByteVector into a QUANTITY
68
- */
69
- export function bytesToQuantity(bytes) {
70
- const bn = bytesToBigInt(bytes, "le");
71
- return numToQuantity(bn);
72
- }
73
- /**
74
- * DATA as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API
75
- *
76
- * When encoding UNFORMATTED DATA (byte arrays, account addresses, hashes, bytecode arrays): encode as hex, prefix with
77
- * “0x”, two hex digits per byte. Examples:
78
- *
79
- * - 0x41 (size 1, “A”)
80
- * - 0x004200 (size 3, “\0B\0”)
81
- * - 0x (size 0, “”)
82
- * - WRONG: 0xf0f0f (must be even number of digits)
83
- * - WRONG: 004200 (must be prefixed 0x)
84
- */
85
- export function bytesToData(bytes) {
86
- return toHex(bytes);
87
- }
88
- /**
89
- * DATA as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API
90
- */
91
- export function dataToBytes(hex, fixedLength) {
92
- try {
93
- const bytes = fromHex(hex);
94
- if (fixedLength != null && bytes.length !== fixedLength) {
95
- throw Error(`Wrong data length ${bytes.length} expected ${fixedLength}`);
96
- }
97
- return bytes;
98
- }
99
- catch (e) {
100
- e.message = `Invalid hex string: ${e.message}`;
101
- throw e;
102
- }
103
- }
104
- /**
105
- * Convert DATA into a preallocated buffer
106
- * fromHexInto will throw if buffer's length is not the same as the decoded hex length
107
- */
108
- export function dataIntoBytes(hex, buffer) {
109
- fromHexInto(hex, buffer);
110
- return buffer;
111
- }
112
- /**
113
- * DATA as defined in ethereum execution layer JSON RPC https://eth.wiki/json-rpc/API
114
- */
115
- export function dataToRootHex(hex, id = "") {
116
- if (!rootHexRegex.test(hex))
117
- throw Error(`Invalid hex root ${id} '${hex}'`);
118
- return hex;
119
- }
120
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/eth1/provider/utils.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- import { phase0 } from "@lodestar/types";
2
- import { BatchDepositEvents, Eth1Block, IEth1Provider, IEth1StreamParams } from "./interface.js";
3
- /**
4
- * Phase 1 of genesis building.
5
- * Not enough validators, only stream deposits
6
- * @param signal Abort stream returning after a while loop cycle. Aborts internal sleep
7
- */
8
- export declare function getDepositsStream(fromBlock: number, provider: IEth1Provider, params: IEth1StreamParams, signal?: AbortSignal): AsyncGenerator<BatchDepositEvents>;
9
- /**
10
- * Phase 2 of genesis building.
11
- * There are enough validators, stream deposits and blocks
12
- * @param signal Abort stream returning after a while loop cycle. Aborts internal sleep
13
- */
14
- export declare function getDepositsAndBlockStreamForGenesis(fromBlock: number, provider: IEth1Provider, params: IEth1StreamParams, signal?: AbortSignal): AsyncGenerator<[phase0.DepositEvent[], Eth1Block]>;
15
- //# sourceMappingURL=stream.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../src/eth1/stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAC;AAEvC,OAAO,EAAC,kBAAkB,EAAE,SAAS,EAAE,aAAa,EAAE,iBAAiB,EAAC,MAAM,gBAAgB,CAAC;AAK/F;;;;GAIG;AACH,wBAAuB,iBAAiB,CACtC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,aAAa,EACvB,MAAM,EAAE,iBAAiB,EACzB,MAAM,CAAC,EAAE,WAAW,GACnB,cAAc,CAAC,kBAAkB,CAAC,CAgBpC;AAED;;;;GAIG;AACH,wBAAuB,mCAAmC,CACxD,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,aAAa,EACvB,MAAM,EAAE,iBAAiB,EACzB,MAAM,CAAC,EAAE,WAAW,GACnB,cAAc,CAAC,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,SAAS,CAAC,CAAC,CAwBpD"}