dequanto 0.2.37 → 0.2.40

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 (484) hide show
  1. package/hardhat.config.js +10 -1
  2. package/lib/cjs/abi/$abiCoder.js +1 -1
  3. package/lib/cjs/abi/$abiCoder.js.map +1 -1
  4. package/lib/cjs/abi/Logger.js +1 -1
  5. package/lib/cjs/abi/abi-coder-packed.js +3 -3
  6. package/lib/cjs/abi/abi-coder.js +16 -16
  7. package/lib/cjs/abi/coders/abstract-coder.js +31 -31
  8. package/lib/cjs/abi/coders/abstract-coder.js.map +1 -1
  9. package/lib/cjs/abi/fragments.js +90 -90
  10. package/lib/cjs/abi/fragments.js.map +1 -1
  11. package/lib/cjs/blocks/BlockDateResolver.js +9 -9
  12. package/lib/cjs/blocks/BlockDateResolver.js.map +1 -1
  13. package/lib/cjs/class/PackedRanges.js +46 -46
  14. package/lib/cjs/class/PackedRanges.js.map +1 -1
  15. package/lib/cjs/clients/ClientEventsStream.js +1 -1
  16. package/lib/cjs/clients/ClientEventsStream.js.map +1 -1
  17. package/lib/cjs/clients/ClientPool.js +23 -23
  18. package/lib/cjs/clients/ClientPool.js.map +1 -1
  19. package/lib/cjs/clients/WalletClient.js +3 -3
  20. package/lib/cjs/clients/WalletClient.js.map +1 -1
  21. package/lib/cjs/clients/Web3Client.js +14 -14
  22. package/lib/cjs/clients/Web3Client.js.map +1 -1
  23. package/lib/cjs/clients/Web3ClientFactory.js +1 -1
  24. package/lib/cjs/clients/Web3ClientFactory.js.map +1 -1
  25. package/lib/cjs/clients/compatibility/Web3.js +2 -2
  26. package/lib/cjs/clients/compatibility/Web3.js.map +1 -1
  27. package/lib/cjs/clients/handlers/RateLimitGuard.js +16 -16
  28. package/lib/cjs/clients/handlers/RateLimitGuard.js.map +1 -1
  29. package/lib/cjs/clients/model/PromiEventWrap.js +1 -1
  30. package/lib/cjs/clients/model/PromiEventWrap.js.map +1 -1
  31. package/lib/cjs/clients/utils/$web3Abi.js +2 -2
  32. package/lib/cjs/clients/utils/$web3Abi.js.map +1 -1
  33. package/lib/cjs/clients/utils/ClientErrorUtil.js +4 -0
  34. package/lib/cjs/clients/utils/ClientErrorUtil.js.map +1 -1
  35. package/lib/cjs/config/Config.js.map +1 -1
  36. package/lib/cjs/contracts/Contract.js +1 -1
  37. package/lib/cjs/contracts/Contract.js.map +1 -1
  38. package/lib/cjs/contracts/ContractAbiProvider.js +6 -6
  39. package/lib/cjs/contracts/ContractAbiProvider.js.map +1 -1
  40. package/lib/cjs/contracts/ContractBase.js +10 -10
  41. package/lib/cjs/contracts/ContractBase.js.map +1 -1
  42. package/lib/cjs/contracts/ContractProvider.js +1 -1
  43. package/lib/cjs/contracts/ContractProvider.js.map +1 -1
  44. package/lib/cjs/contracts/ContractReader.js +5 -5
  45. package/lib/cjs/contracts/ContractReader.js.map +1 -1
  46. package/lib/cjs/contracts/ContractWriter.js +4 -4
  47. package/lib/cjs/contracts/ContractWriter.js.map +1 -1
  48. package/lib/cjs/contracts/deploy/ContractDeployer.js +4 -4
  49. package/lib/cjs/contracts/deploy/ContractDeployer.js.map +1 -1
  50. package/lib/cjs/contracts/deploy/Deployments.js +68 -26
  51. package/lib/cjs/contracts/deploy/Deployments.js.map +1 -1
  52. package/lib/cjs/contracts/deploy/proxy/$proxyDeploy.js +13 -13
  53. package/lib/cjs/contracts/deploy/proxy/$proxyDeploy.js.map +1 -1
  54. package/lib/cjs/contracts/deploy/proxy/ProxyDeployment.js +58 -25
  55. package/lib/cjs/contracts/deploy/proxy/ProxyDeployment.js.map +1 -1
  56. package/lib/cjs/contracts/deploy/storage/DeploymentsStorage.js +15 -14
  57. package/lib/cjs/contracts/deploy/storage/DeploymentsStorage.js.map +1 -1
  58. package/lib/cjs/contracts/utils/AbiDeserializer.js +4 -4
  59. package/lib/cjs/contracts/utils/AbiDeserializer.js.map +1 -1
  60. package/lib/cjs/contracts/utils/ContractBaseUtils.js +3 -3
  61. package/lib/cjs/contracts/utils/ContractBaseUtils.js.map +1 -1
  62. package/lib/cjs/evm/OpcodesWalker.js +1 -1
  63. package/lib/cjs/evm/OpcodesWalker.js.map +1 -1
  64. package/lib/cjs/explorer/BlockchainExplorer.js +1 -1
  65. package/lib/cjs/explorer/BlockchainExplorer.js.map +1 -1
  66. package/lib/cjs/explorer/BlockchainExplorerFactory.js +1 -1
  67. package/lib/cjs/explorer/BlockchainExplorerStorage.js +12 -12
  68. package/lib/cjs/explorer/BlockchainExplorerStorage.js.map +1 -1
  69. package/lib/cjs/explorer/Evmscan.js +1 -1
  70. package/lib/cjs/explorer/verifiers/FsHtmlVerifier.js +7 -7
  71. package/lib/cjs/explorer/verifiers/FsHtmlVerifier.js.map +1 -1
  72. package/lib/cjs/flashbots/FlashbotWeb3Client.js +1 -1
  73. package/lib/cjs/flashbots/FlashbotWeb3Client.js.map +1 -1
  74. package/lib/cjs/gen/Generator.js +15 -0
  75. package/lib/cjs/gen/Generator.js.map +1 -1
  76. package/lib/cjs/hardhat/HardhatProvider.js +7 -7
  77. package/lib/cjs/hardhat/HardhatProvider.js.map +1 -1
  78. package/lib/cjs/indexer/BlocksTxIndexer.js +2 -2
  79. package/lib/cjs/indexer/BlocksTxIndexer.js.map +1 -1
  80. package/lib/cjs/indexer/EventsIndexer.js +11 -11
  81. package/lib/cjs/indexer/EventsIndexer.js.map +1 -1
  82. package/lib/cjs/indexer/PendingTxIndexer.js +2 -2
  83. package/lib/cjs/indexer/PendingTxIndexer.js.map +1 -1
  84. package/lib/cjs/indexer/handlers/BlocksWalker.js +9 -9
  85. package/lib/cjs/indexer/handlers/BlocksWalker.js.map +1 -1
  86. package/lib/cjs/indexer/handlers/TxQueueLoader.js +1 -1
  87. package/lib/cjs/indexer/storage/FsEventsIndexerStore.js +3 -3
  88. package/lib/cjs/indexer/storage/FsEventsIndexerStore.js.map +1 -1
  89. package/lib/cjs/indexer/storage/FsEventsStoreUtils.js +1 -1
  90. package/lib/cjs/indexer/storage/FsEventsStoreUtils.js.map +1 -1
  91. package/lib/cjs/json/JsonArrayMultiStore.js +1 -1
  92. package/lib/cjs/json/JsonArrayMultiStore.js.map +1 -1
  93. package/lib/cjs/json/JsonStoreFs.js +1 -1
  94. package/lib/cjs/json/JsonStoreFs.js.map +1 -1
  95. package/lib/cjs/rpc/$rpc.js +2 -2
  96. package/lib/cjs/rpc/$rpc.js.map +1 -1
  97. package/lib/cjs/rpc/Rpc.js +2 -2
  98. package/lib/cjs/rpc/RpcBase.js +2 -2
  99. package/lib/cjs/rpc/RpcBase.js.map +1 -1
  100. package/lib/cjs/rpc/RpcContract.js +4 -3
  101. package/lib/cjs/rpc/RpcContract.js.map +1 -1
  102. package/lib/cjs/rpc/RpcSubscription.js +1 -1
  103. package/lib/cjs/rpc/RpcSubscription.js.map +1 -1
  104. package/lib/cjs/rpc/transports/compatibility/EIP1193Transport.js +4 -4
  105. package/lib/cjs/rpc/transports/compatibility/EIP1193Transport.js.map +1 -1
  106. package/lib/cjs/rpc/transports/compatibility/Web3Transport.js +1 -1
  107. package/lib/cjs/rpc/transports/compatibility/Web3Transport.js.map +1 -1
  108. package/lib/cjs/services/TimelockService/TimelockService.js +2 -2
  109. package/lib/cjs/services/TimelockService/TimelockServiceFallbackSafe.js +2 -2
  110. package/lib/cjs/solidity/SlotsDump.js +1 -1
  111. package/lib/cjs/solidity/SlotsDump.js.map +1 -1
  112. package/lib/cjs/solidity/SlotsParser/MappingSettersResolver.js +3 -3
  113. package/lib/cjs/solidity/SlotsParser/MappingSettersResolver.js.map +1 -1
  114. package/lib/cjs/solidity/SlotsParser/SourceFile.js +3 -3
  115. package/lib/cjs/solidity/SlotsParser/SourceFile.js.map +1 -1
  116. package/lib/cjs/solidity/SolidityParser.js +1 -1
  117. package/lib/cjs/solidity/SolidityParser.js.map +1 -1
  118. package/lib/cjs/solidity/SourceCodeProvider.js +1 -1
  119. package/lib/cjs/solidity/SourceCodeProvider.js.map +1 -1
  120. package/lib/cjs/solidity/storage/Accessor.js +1 -1
  121. package/lib/cjs/solidity/storage/Accessor.js.map +1 -1
  122. package/lib/cjs/solidity/storage/SlotFixedArray.js +1 -1
  123. package/lib/cjs/solidity/storage/SlotFixedArray.js.map +1 -1
  124. package/lib/cjs/solidity/storage/SlotsStorageTransport.js +3 -3
  125. package/lib/cjs/solidity/storage/SlotsStorageTransport.js.map +1 -1
  126. package/lib/cjs/solidity/storage/handlers/SlotBytesHandler.js +1 -1
  127. package/lib/cjs/solidity/storage/handlers/SlotBytesHandler.js.map +1 -1
  128. package/lib/cjs/solidity/storage/handlers/SlotDynamicArrayHandler.js +1 -1
  129. package/lib/cjs/solidity/storage/handlers/SlotDynamicArrayHandler.js.map +1 -1
  130. package/lib/cjs/solidity/storage/handlers/SlotFixedArrayHandler.js +1 -1
  131. package/lib/cjs/solidity/storage/handlers/SlotFixedArrayHandler.js.map +1 -1
  132. package/lib/cjs/solidity/storage/handlers/SlotValueConstantHandler.js +1 -1
  133. package/lib/cjs/solidity/storage/handlers/SlotValueConstantHandler.js.map +1 -1
  134. package/lib/cjs/solidity/storage/handlers/SlotValueHandler.js +1 -1
  135. package/lib/cjs/solidity/storage/handlers/SlotValueHandler.js.map +1 -1
  136. package/lib/cjs/solidity/storage/handlers/SlotValueImmutableHandler.js +4 -4
  137. package/lib/cjs/solidity/storage/handlers/SlotValueImmutableHandler.js.map +1 -1
  138. package/lib/cjs/tokens/TokenDataProvider.js +2 -2
  139. package/lib/cjs/tokens/TokenDataProvider.js.map +1 -1
  140. package/lib/cjs/tokens/TokenExchangeService.js +1 -1
  141. package/lib/cjs/tokens/TokenExchangeService.js.map +1 -1
  142. package/lib/cjs/tokens/TokenExchanges/AmmBase/V2/AmmPairV2Service.js +2 -2
  143. package/lib/cjs/tokens/TokenExchanges/AmmBase/V2/AmmPairV2Service.js.map +1 -1
  144. package/lib/cjs/tokens/TokenExchanges/AmmV2PriceQuote.js +2 -2
  145. package/lib/cjs/tokens/TokenExchanges/AmmV2PriceQuote.js.map +1 -1
  146. package/lib/cjs/tokens/TokenOracles/amm/AmmV1Oracle.js +2 -2
  147. package/lib/cjs/tokens/TokenOracles/amm/AmmV1Oracle.js.map +1 -1
  148. package/lib/cjs/tokens/TokenTransferService.js +2 -2
  149. package/lib/cjs/tokens/TokenTransferService.js.map +1 -1
  150. package/lib/cjs/tokens/TokensService.js +1 -1
  151. package/lib/cjs/tokens/TokensService.js.map +1 -1
  152. package/lib/cjs/txs/TxNonceManager.js +1 -1
  153. package/lib/cjs/txs/TxWriter.js +9 -0
  154. package/lib/cjs/txs/TxWriter.js.map +1 -1
  155. package/lib/cjs/txs/conditional/GasWatcherTx.js +1 -1
  156. package/lib/cjs/txs/conditional/GasWatcherTx.js.map +1 -1
  157. package/lib/cjs/txs/receipt/TxLogParser.js +1 -1
  158. package/lib/cjs/utils/$crypto.js +1 -1
  159. package/lib/cjs/utils/$crypto.js.map +1 -1
  160. package/lib/cjs/utils/$date.js +1 -1
  161. package/lib/cjs/utils/$date.js.map +1 -1
  162. package/lib/cjs/utils/$hex.js +1 -1
  163. package/lib/cjs/utils/$logger.js +1 -1
  164. package/lib/cjs/utils/$logger.js.map +1 -1
  165. package/lib/cjs/utils/$machine.js +2 -2
  166. package/lib/cjs/utils/$machine.js.map +1 -1
  167. package/lib/cjs/utils/$traces.js +1 -1
  168. package/lib/cjs/utils/$traces.js.map +1 -1
  169. package/lib/esm/abi/$abiCoder.js.map +1 -1
  170. package/lib/esm/abi/$abiCoder.mjs +1 -1
  171. package/lib/esm/abi/Logger.mjs +1 -1
  172. package/lib/esm/abi/abi-coder-packed.mjs +3 -3
  173. package/lib/esm/abi/abi-coder.mjs +16 -16
  174. package/lib/esm/abi/coders/abstract-coder.js.map +1 -1
  175. package/lib/esm/abi/coders/abstract-coder.mjs +31 -31
  176. package/lib/esm/abi/fragments.js.map +1 -1
  177. package/lib/esm/abi/fragments.mjs +90 -90
  178. package/lib/esm/blocks/BlockDateResolver.js.map +1 -1
  179. package/lib/esm/blocks/BlockDateResolver.mjs +9 -9
  180. package/lib/esm/class/PackedRanges.js.map +1 -1
  181. package/lib/esm/class/PackedRanges.mjs +46 -46
  182. package/lib/esm/clients/ClientEventsStream.js.map +1 -1
  183. package/lib/esm/clients/ClientEventsStream.mjs +1 -1
  184. package/lib/esm/clients/ClientPool.js.map +1 -1
  185. package/lib/esm/clients/ClientPool.mjs +23 -23
  186. package/lib/esm/clients/WalletClient.js.map +1 -1
  187. package/lib/esm/clients/WalletClient.mjs +3 -3
  188. package/lib/esm/clients/Web3Client.js.map +1 -1
  189. package/lib/esm/clients/Web3Client.mjs +14 -14
  190. package/lib/esm/clients/Web3ClientFactory.js.map +1 -1
  191. package/lib/esm/clients/Web3ClientFactory.mjs +1 -1
  192. package/lib/esm/clients/compatibility/Web3.js.map +1 -1
  193. package/lib/esm/clients/compatibility/Web3.mjs +2 -2
  194. package/lib/esm/clients/handlers/RateLimitGuard.js.map +1 -1
  195. package/lib/esm/clients/handlers/RateLimitGuard.mjs +16 -16
  196. package/lib/esm/clients/model/PromiEventWrap.js.map +1 -1
  197. package/lib/esm/clients/model/PromiEventWrap.mjs +1 -1
  198. package/lib/esm/clients/utils/$web3Abi.js.map +1 -1
  199. package/lib/esm/clients/utils/$web3Abi.mjs +2 -2
  200. package/lib/esm/clients/utils/ClientErrorUtil.js.map +1 -1
  201. package/lib/esm/clients/utils/ClientErrorUtil.mjs +4 -0
  202. package/lib/esm/config/Config.js.map +1 -1
  203. package/lib/esm/contracts/Contract.js.map +1 -1
  204. package/lib/esm/contracts/Contract.mjs +1 -1
  205. package/lib/esm/contracts/ContractAbiProvider.js.map +1 -1
  206. package/lib/esm/contracts/ContractAbiProvider.mjs +6 -6
  207. package/lib/esm/contracts/ContractBase.js.map +1 -1
  208. package/lib/esm/contracts/ContractBase.mjs +10 -10
  209. package/lib/esm/contracts/ContractProvider.js.map +1 -1
  210. package/lib/esm/contracts/ContractProvider.mjs +1 -1
  211. package/lib/esm/contracts/ContractReader.js.map +1 -1
  212. package/lib/esm/contracts/ContractReader.mjs +5 -5
  213. package/lib/esm/contracts/ContractWriter.js.map +1 -1
  214. package/lib/esm/contracts/ContractWriter.mjs +4 -4
  215. package/lib/esm/contracts/deploy/ContractDeployer.js.map +1 -1
  216. package/lib/esm/contracts/deploy/ContractDeployer.mjs +4 -4
  217. package/lib/esm/contracts/deploy/Deployments.js.map +1 -1
  218. package/lib/esm/contracts/deploy/Deployments.mjs +68 -26
  219. package/lib/esm/contracts/deploy/proxy/$proxyDeploy.js.map +1 -1
  220. package/lib/esm/contracts/deploy/proxy/$proxyDeploy.mjs +13 -13
  221. package/lib/esm/contracts/deploy/proxy/ProxyDeployment.js.map +1 -1
  222. package/lib/esm/contracts/deploy/proxy/ProxyDeployment.mjs +58 -25
  223. package/lib/esm/contracts/deploy/storage/DeploymentsStorage.js.map +1 -1
  224. package/lib/esm/contracts/deploy/storage/DeploymentsStorage.mjs +15 -14
  225. package/lib/esm/contracts/utils/AbiDeserializer.js.map +1 -1
  226. package/lib/esm/contracts/utils/AbiDeserializer.mjs +4 -4
  227. package/lib/esm/contracts/utils/ContractBaseUtils.js.map +1 -1
  228. package/lib/esm/contracts/utils/ContractBaseUtils.mjs +3 -3
  229. package/lib/esm/evm/OpcodesWalker.js.map +1 -1
  230. package/lib/esm/evm/OpcodesWalker.mjs +1 -1
  231. package/lib/esm/explorer/BlockchainExplorer.js.map +1 -1
  232. package/lib/esm/explorer/BlockchainExplorer.mjs +1 -1
  233. package/lib/esm/explorer/BlockchainExplorerFactory.mjs +1 -1
  234. package/lib/esm/explorer/BlockchainExplorerStorage.js.map +1 -1
  235. package/lib/esm/explorer/BlockchainExplorerStorage.mjs +12 -12
  236. package/lib/esm/explorer/Evmscan.mjs +1 -1
  237. package/lib/esm/explorer/verifiers/FsHtmlVerifier.js.map +1 -1
  238. package/lib/esm/explorer/verifiers/FsHtmlVerifier.mjs +7 -7
  239. package/lib/esm/flashbots/FlashbotWeb3Client.js.map +1 -1
  240. package/lib/esm/flashbots/FlashbotWeb3Client.mjs +1 -1
  241. package/lib/esm/gen/Generator.js.map +1 -1
  242. package/lib/esm/gen/Generator.mjs +15 -0
  243. package/lib/esm/hardhat/HardhatProvider.js.map +1 -1
  244. package/lib/esm/hardhat/HardhatProvider.mjs +7 -7
  245. package/lib/esm/indexer/BlocksTxIndexer.js.map +1 -1
  246. package/lib/esm/indexer/BlocksTxIndexer.mjs +2 -2
  247. package/lib/esm/indexer/EventsIndexer.js.map +1 -1
  248. package/lib/esm/indexer/EventsIndexer.mjs +11 -11
  249. package/lib/esm/indexer/PendingTxIndexer.js.map +1 -1
  250. package/lib/esm/indexer/PendingTxIndexer.mjs +2 -2
  251. package/lib/esm/indexer/handlers/BlocksWalker.js.map +1 -1
  252. package/lib/esm/indexer/handlers/BlocksWalker.mjs +9 -9
  253. package/lib/esm/indexer/handlers/TxQueueLoader.mjs +1 -1
  254. package/lib/esm/indexer/storage/FsEventsIndexerStore.js.map +1 -1
  255. package/lib/esm/indexer/storage/FsEventsIndexerStore.mjs +3 -3
  256. package/lib/esm/indexer/storage/FsEventsStoreUtils.js.map +1 -1
  257. package/lib/esm/indexer/storage/FsEventsStoreUtils.mjs +1 -1
  258. package/lib/esm/json/JsonArrayMultiStore.js.map +1 -1
  259. package/lib/esm/json/JsonArrayMultiStore.mjs +1 -1
  260. package/lib/esm/json/JsonStoreFs.js.map +1 -1
  261. package/lib/esm/json/JsonStoreFs.mjs +1 -1
  262. package/lib/esm/rpc/$rpc.js.map +1 -1
  263. package/lib/esm/rpc/$rpc.mjs +2 -2
  264. package/lib/esm/rpc/Rpc.mjs +2 -2
  265. package/lib/esm/rpc/RpcBase.js.map +1 -1
  266. package/lib/esm/rpc/RpcBase.mjs +2 -2
  267. package/lib/esm/rpc/RpcContract.js.map +1 -1
  268. package/lib/esm/rpc/RpcContract.mjs +4 -3
  269. package/lib/esm/rpc/RpcSubscription.js.map +1 -1
  270. package/lib/esm/rpc/RpcSubscription.mjs +1 -1
  271. package/lib/esm/rpc/transports/compatibility/EIP1193Transport.js.map +1 -1
  272. package/lib/esm/rpc/transports/compatibility/EIP1193Transport.mjs +4 -4
  273. package/lib/esm/rpc/transports/compatibility/Web3Transport.js.map +1 -1
  274. package/lib/esm/rpc/transports/compatibility/Web3Transport.mjs +1 -1
  275. package/lib/esm/services/TimelockService/TimelockService.mjs +2 -2
  276. package/lib/esm/services/TimelockService/TimelockServiceFallbackSafe.mjs +2 -2
  277. package/lib/esm/solidity/SlotsDump.js.map +1 -1
  278. package/lib/esm/solidity/SlotsDump.mjs +1 -1
  279. package/lib/esm/solidity/SlotsParser/MappingSettersResolver.js.map +1 -1
  280. package/lib/esm/solidity/SlotsParser/MappingSettersResolver.mjs +3 -3
  281. package/lib/esm/solidity/SlotsParser/SourceFile.js.map +1 -1
  282. package/lib/esm/solidity/SlotsParser/SourceFile.mjs +3 -3
  283. package/lib/esm/solidity/SolidityParser.js.map +1 -1
  284. package/lib/esm/solidity/SolidityParser.mjs +1 -1
  285. package/lib/esm/solidity/SourceCodeProvider.js.map +1 -1
  286. package/lib/esm/solidity/SourceCodeProvider.mjs +1 -1
  287. package/lib/esm/solidity/storage/Accessor.js.map +1 -1
  288. package/lib/esm/solidity/storage/Accessor.mjs +1 -1
  289. package/lib/esm/solidity/storage/SlotFixedArray.js.map +1 -1
  290. package/lib/esm/solidity/storage/SlotFixedArray.mjs +1 -1
  291. package/lib/esm/solidity/storage/SlotsStorageTransport.js.map +1 -1
  292. package/lib/esm/solidity/storage/SlotsStorageTransport.mjs +3 -3
  293. package/lib/esm/solidity/storage/handlers/SlotBytesHandler.js.map +1 -1
  294. package/lib/esm/solidity/storage/handlers/SlotBytesHandler.mjs +1 -1
  295. package/lib/esm/solidity/storage/handlers/SlotDynamicArrayHandler.js.map +1 -1
  296. package/lib/esm/solidity/storage/handlers/SlotDynamicArrayHandler.mjs +1 -1
  297. package/lib/esm/solidity/storage/handlers/SlotFixedArrayHandler.js.map +1 -1
  298. package/lib/esm/solidity/storage/handlers/SlotFixedArrayHandler.mjs +1 -1
  299. package/lib/esm/solidity/storage/handlers/SlotValueConstantHandler.js.map +1 -1
  300. package/lib/esm/solidity/storage/handlers/SlotValueConstantHandler.mjs +1 -1
  301. package/lib/esm/solidity/storage/handlers/SlotValueHandler.js.map +1 -1
  302. package/lib/esm/solidity/storage/handlers/SlotValueHandler.mjs +1 -1
  303. package/lib/esm/solidity/storage/handlers/SlotValueImmutableHandler.js.map +1 -1
  304. package/lib/esm/solidity/storage/handlers/SlotValueImmutableHandler.mjs +4 -4
  305. package/lib/esm/tokens/TokenDataProvider.js.map +1 -1
  306. package/lib/esm/tokens/TokenDataProvider.mjs +2 -2
  307. package/lib/esm/tokens/TokenExchangeService.js.map +1 -1
  308. package/lib/esm/tokens/TokenExchangeService.mjs +1 -1
  309. package/lib/esm/tokens/TokenExchanges/AmmBase/V2/AmmPairV2Service.js.map +1 -1
  310. package/lib/esm/tokens/TokenExchanges/AmmBase/V2/AmmPairV2Service.mjs +2 -2
  311. package/lib/esm/tokens/TokenExchanges/AmmV2PriceQuote.js.map +1 -1
  312. package/lib/esm/tokens/TokenExchanges/AmmV2PriceQuote.mjs +2 -2
  313. package/lib/esm/tokens/TokenOracles/amm/AmmV1Oracle.js.map +1 -1
  314. package/lib/esm/tokens/TokenOracles/amm/AmmV1Oracle.mjs +2 -2
  315. package/lib/esm/tokens/TokenTransferService.js.map +1 -1
  316. package/lib/esm/tokens/TokenTransferService.mjs +2 -2
  317. package/lib/esm/tokens/TokensService.js.map +1 -1
  318. package/lib/esm/tokens/TokensService.mjs +1 -1
  319. package/lib/esm/txs/TxNonceManager.mjs +1 -1
  320. package/lib/esm/txs/TxWriter.js.map +1 -1
  321. package/lib/esm/txs/TxWriter.mjs +9 -0
  322. package/lib/esm/txs/conditional/GasWatcherTx.js.map +1 -1
  323. package/lib/esm/txs/conditional/GasWatcherTx.mjs +1 -1
  324. package/lib/esm/txs/receipt/TxLogParser.mjs +1 -1
  325. package/lib/esm/utils/$crypto.js.map +1 -1
  326. package/lib/esm/utils/$crypto.mjs +1 -1
  327. package/lib/esm/utils/$date.js.map +1 -1
  328. package/lib/esm/utils/$date.mjs +1 -1
  329. package/lib/esm/utils/$hex.mjs +1 -1
  330. package/lib/esm/utils/$logger.js.map +1 -1
  331. package/lib/esm/utils/$logger.mjs +1 -1
  332. package/lib/esm/utils/$machine.js.map +1 -1
  333. package/lib/esm/utils/$machine.mjs +2 -2
  334. package/lib/esm/utils/$traces.js.map +1 -1
  335. package/lib/esm/utils/$traces.mjs +1 -1
  336. package/lib/types/abi/abi-coder-packed.d.ts +1 -1
  337. package/lib/types/abi/abi-coder.d.ts +13 -13
  338. package/lib/types/abi/coders/abstract-coder.d.ts +14 -14
  339. package/lib/types/abi/fragments.d.ts +95 -95
  340. package/lib/types/blocks/BlockDateResolver.d.ts +7 -7
  341. package/lib/types/class/PackedRanges.d.ts +44 -44
  342. package/lib/types/clients/ClientPool.d.ts +10 -10
  343. package/lib/types/clients/WalletClient.d.ts +2 -2
  344. package/lib/types/clients/Web3Client.d.ts +6 -6
  345. package/lib/types/clients/Web3ClientFactory.d.ts +1 -1
  346. package/lib/types/clients/handlers/RateLimitGuard.d.ts +5 -5
  347. package/lib/types/clients/model/PromiEventWrap.d.ts +1 -1
  348. package/lib/types/clients/utils/$web3Abi.d.ts +1 -1
  349. package/lib/types/clients/utils/ClientErrorUtil.d.ts +1 -0
  350. package/lib/types/config/Config.d.ts +3 -2
  351. package/lib/types/contracts/ContractBase.d.ts +4 -4
  352. package/lib/types/contracts/ContractReader.d.ts +2 -2
  353. package/lib/types/contracts/ContractWriter.d.ts +3 -3
  354. package/lib/types/contracts/deploy/Deployments.d.ts +20 -15
  355. package/lib/types/contracts/deploy/proxy/ProxyDeployment.d.ts +2 -0
  356. package/lib/types/contracts/deploy/storage/DeploymentsStorage.d.ts +2 -0
  357. package/lib/types/explorer/BlockchainExplorerFactory.d.ts +1 -1
  358. package/lib/types/explorer/Evmscan.d.ts +1 -1
  359. package/lib/types/gen/Generator.d.ts +8 -0
  360. package/lib/types/indexer/BlocksTxIndexer.d.ts +4 -4
  361. package/lib/types/indexer/EventsIndexer.d.ts +4 -4
  362. package/lib/types/indexer/PendingTxIndexer.d.ts +1 -1
  363. package/lib/types/indexer/handlers/BlocksWalker.d.ts +2 -2
  364. package/lib/types/indexer/storage/FsEventsIndexerStore.d.ts +4 -4
  365. package/lib/types/ns/providers/INsProvider.d.ts +1 -1
  366. package/lib/types/rpc/Rpc.d.ts +2 -2
  367. package/lib/types/services/TimelockService/ITimelockService.d.ts +2 -2
  368. package/lib/types/services/TimelockService/TimelockService.d.ts +2 -2
  369. package/lib/types/services/TimelockService/TimelockServiceFallbackSafe.d.ts +2 -2
  370. package/lib/types/solidity/SlotsParser/SourceFile.d.ts +1 -1
  371. package/lib/types/solidity/storage/SlotFixedArray.d.ts +1 -1
  372. package/lib/types/tokens/TokenDataProvider.d.ts +2 -2
  373. package/lib/types/tokens/TokensService.d.ts +1 -1
  374. package/lib/types/txs/ITxBuilderOptions.d.ts +1 -1
  375. package/lib/types/txs/TxNonceManager.d.ts +1 -1
  376. package/lib/types/txs/TxWriter.d.ts +4 -4
  377. package/lib/types/txs/receipt/TxLogParser.d.ts +1 -1
  378. package/lib/types/utils/$date.d.ts +1 -1
  379. package/lib/types/utils/$hex.d.ts +1 -1
  380. package/package.json +1 -1
  381. package/readme.md +105 -83
  382. package/src/abi/$abiCoder.ts +1 -1
  383. package/src/abi/Logger.ts +1 -1
  384. package/src/abi/abi-coder-packed.ts +3 -3
  385. package/src/abi/abi-coder.ts +16 -16
  386. package/src/abi/coders/abstract-coder.ts +36 -36
  387. package/src/abi/fragments.ts +137 -137
  388. package/src/blocks/BlockDateResolver.ts +9 -9
  389. package/src/bridges/hop/HopBridge.ts +1 -1
  390. package/src/class/PackedRanges.ts +46 -46
  391. package/src/clients/ClientEventsStream.ts +1 -1
  392. package/src/clients/ClientPool.ts +38 -38
  393. package/src/clients/WalletClient.ts +3 -3
  394. package/src/clients/Web3BatchRequests.ts +3 -3
  395. package/src/clients/Web3Client.ts +21 -21
  396. package/src/clients/Web3ClientFactory.ts +1 -1
  397. package/src/clients/compatibility/Web3.ts +2 -2
  398. package/src/clients/handlers/RateLimitGuard.ts +16 -16
  399. package/src/clients/interfaces/IWeb3Client.ts +2 -2
  400. package/src/clients/model/PromiEventWrap.ts +1 -1
  401. package/src/clients/utils/$web3Abi.ts +2 -2
  402. package/src/clients/utils/ClientErrorUtil.ts +4 -0
  403. package/src/config/Config.ts +4 -3
  404. package/src/contracts/Contract.ts +1 -1
  405. package/src/contracts/ContractAbiProvider.ts +6 -6
  406. package/src/contracts/ContractBase.ts +14 -14
  407. package/src/contracts/ContractProvider.ts +1 -1
  408. package/src/contracts/ContractReader.ts +7 -7
  409. package/src/contracts/ContractWriter.ts +4 -4
  410. package/src/contracts/deploy/ContractDeployer.ts +4 -4
  411. package/src/contracts/deploy/ContractDeployment.ts +1 -1
  412. package/src/contracts/deploy/Deployments.ts +110 -53
  413. package/src/contracts/deploy/proxy/$proxyDeploy.ts +14 -14
  414. package/src/contracts/deploy/proxy/ProxyDeployment.ts +82 -37
  415. package/src/contracts/deploy/storage/DeploymentsStorage.ts +21 -18
  416. package/src/contracts/utils/AbiDeserializer.ts +4 -4
  417. package/src/contracts/utils/ContractBaseUtils.ts +3 -3
  418. package/src/erc4337/models/UserOperation.ts +2 -2
  419. package/src/evm/OpcodesWalker.ts +1 -1
  420. package/src/explorer/BlockchainExplorer.ts +1 -1
  421. package/src/explorer/BlockchainExplorerFactory.ts +1 -1
  422. package/src/explorer/BlockchainExplorerStorage.ts +12 -12
  423. package/src/explorer/Evmscan.ts +1 -1
  424. package/src/explorer/verifiers/FsHtmlVerifier.ts +7 -7
  425. package/src/flashbots/FlashbotWeb3Client.ts +1 -1
  426. package/src/gen/Generator.ts +17 -0
  427. package/src/hardhat/HardhatProvider.ts +7 -7
  428. package/src/indexer/BlocksTxIndexer.ts +6 -6
  429. package/src/indexer/EventsIndexer.ts +20 -20
  430. package/src/indexer/PendingTxIndexer.ts +3 -3
  431. package/src/indexer/handlers/BlocksWalker.ts +9 -9
  432. package/src/indexer/handlers/TxQueueLoader.ts +1 -1
  433. package/src/indexer/storage/FsEventsIndexerStore.ts +9 -9
  434. package/src/indexer/storage/FsEventsMetaStore.ts +1 -1
  435. package/src/indexer/storage/FsEventsStoreUtils.ts +1 -1
  436. package/src/json/JsonArrayMultiStore.ts +1 -1
  437. package/src/json/JsonStoreFs.ts +1 -1
  438. package/src/ns/providers/INsProvider.ts +1 -1
  439. package/src/rpc/$rpc.ts +2 -2
  440. package/src/rpc/Rpc.ts +2 -2
  441. package/src/rpc/RpcBase.ts +2 -2
  442. package/src/rpc/RpcContract.ts +6 -6
  443. package/src/rpc/RpcSubscription.ts +1 -1
  444. package/src/rpc/transports/compatibility/EIP1193Transport.ts +4 -4
  445. package/src/rpc/transports/compatibility/Web3Transport.ts +1 -1
  446. package/src/services/TimelockService/ITimelockService.ts +2 -2
  447. package/src/services/TimelockService/TimelockService.ts +2 -2
  448. package/src/services/TimelockService/TimelockServiceFallbackSafe.ts +2 -2
  449. package/src/solidity/SlotsDump.ts +1 -1
  450. package/src/solidity/SlotsParser/MappingSettersResolver.ts +3 -3
  451. package/src/solidity/SlotsParser/SourceFile.ts +3 -3
  452. package/src/solidity/SolidityParser.ts +1 -1
  453. package/src/solidity/SourceCodeProvider.ts +1 -1
  454. package/src/solidity/storage/Accessor.spec.ts +1 -1
  455. package/src/solidity/storage/Accessor.ts +1 -1
  456. package/src/solidity/storage/SlotDynamicArray.ts +1 -1
  457. package/src/solidity/storage/SlotFixedArray.ts +1 -1
  458. package/src/solidity/storage/SlotsStorageTransport.ts +3 -3
  459. package/src/solidity/storage/handlers/SlotBytesHandler.ts +1 -1
  460. package/src/solidity/storage/handlers/SlotDynamicArrayHandler.ts +1 -1
  461. package/src/solidity/storage/handlers/SlotFixedArrayHandler.ts +1 -1
  462. package/src/solidity/storage/handlers/SlotValueConstantHandler.ts +1 -1
  463. package/src/solidity/storage/handlers/SlotValueHandler.ts +1 -1
  464. package/src/solidity/storage/handlers/SlotValueImmutableHandler.ts +4 -4
  465. package/src/tokens/TokenDataProvider.ts +2 -2
  466. package/src/tokens/TokenExchangeService.ts +1 -1
  467. package/src/tokens/TokenExchanges/AmmBase/V2/AmmPairV2Service.ts +2 -2
  468. package/src/tokens/TokenExchanges/AmmV2PriceQuote.ts +2 -2
  469. package/src/tokens/TokenOracles/amm/AmmV1Oracle.ts +2 -2
  470. package/src/tokens/TokenTransferService.ts +2 -2
  471. package/src/tokens/TokensService.ts +1 -1
  472. package/src/txs/ITxBuilderOptions.ts +1 -1
  473. package/src/txs/TxNonceManager.ts +1 -1
  474. package/src/txs/TxWriter.ts +15 -4
  475. package/src/txs/agents/BatchAgent.ts +1 -1
  476. package/src/txs/conditional/GasWatcherTx.ts +1 -1
  477. package/src/txs/receipt/TxLogParser.ts +1 -1
  478. package/src/utils/$crypto.ts +1 -1
  479. package/src/utils/$date.ts +1 -1
  480. package/src/utils/$hex.ts +1 -1
  481. package/src/utils/$logger.ts +1 -1
  482. package/src/utils/$machine.ts +2 -2
  483. package/src/utils/$traces.ts +1 -1
  484. package/src/wallets/EIP6963ProviderFactory.ts +4 -4
@@ -45,6 +45,14 @@ export declare class Generator {
45
45
  implementation: `0x${string}`;
46
46
  contractName: string;
47
47
  }>;
48
+ static generateFromJson(artifact: string): Promise<{
49
+ main: string;
50
+ sources: any[];
51
+ platform: string;
52
+ address: `0x${string}`;
53
+ implementation: `0x${string}`;
54
+ contractName: string;
55
+ }>;
48
56
  /**
49
57
  * @deprecated Was possible to generate the Contract Class based on the meta information header in TS file
50
58
  */
@@ -3,13 +3,13 @@ import { Web3Client } from '../clients/Web3Client';
3
3
  import { TPlatform } from '../models/TPlatform';
4
4
  import { TEth } from '../models/TEth';
5
5
  export interface IBlocksTxIndexerOptions {
6
- /** Name of the indexer */
6
+ /** Indexer name */
7
7
  name?: string;
8
- /** Save indexer progress (visited blocks) to a file */
8
+ /** Saves indexer progress (visited blocks) to a file */
9
9
  persistence?: boolean;
10
- /** Load transactions from the block and provide them to the visitor method */
10
+ /** Loads transactions from the block and provides them to the visitor method */
11
11
  loadTransactions?: boolean;
12
- /** Load receipts from the block and provide them to the visitor method */
12
+ /** Loads receipts from the block and provides them to the visitor method */
13
13
  loadReceipts?: boolean;
14
14
  client?: Web3Client;
15
15
  logProgress?: boolean;
@@ -13,9 +13,9 @@ export declare class EventsIndexer<TContract extends ContractBase> {
13
13
  store?: IEventsIndexerStore;
14
14
  storeMeta?: IEventsIndexerMetaStore;
15
15
  fs?: {
16
- /** Is used as a base directory. Later the ContractName and the address(es) hash will be appended */
16
+ /** Used as the base directory. Later, the contract name and address hash are appended */
17
17
  directory?: string;
18
- /** The events will be splitted into multiple files by block range */
18
+ /** Events are split into multiple files by block range */
19
19
  rangeSeconds?: number;
20
20
  blockTimeAvg?: number;
21
21
  };
@@ -29,9 +29,9 @@ export declare class EventsIndexer<TContract extends ContractBase> {
29
29
  store?: IEventsIndexerStore;
30
30
  storeMeta?: IEventsIndexerMetaStore;
31
31
  fs?: {
32
- /** Is used as a base directory. Later the ContractName and the address(es) hash will be appended */
32
+ /** Used as the base directory. Later, the contract name and address hash are appended */
33
33
  directory?: string;
34
- /** The events will be splitted into multiple files by block range */
34
+ /** Events are split into multiple files by block range */
35
35
  rangeSeconds?: number;
36
36
  blockTimeAvg?: number;
37
37
  };
@@ -2,7 +2,7 @@ import { Web3Client } from '../clients/Web3Client';
2
2
  import { TPlatform } from '../models/TPlatform';
3
3
  import { TEth } from '../models/TEth';
4
4
  export interface IPendingTxIndexerOptions {
5
- /** Name of the indexer */
5
+ /** Indexer name */
6
6
  name?: string;
7
7
  }
8
8
  export type TPendingTxListener = (client: Web3Client, tx: TEth.Tx) => Promise<void>;
@@ -30,8 +30,8 @@ export declare class BlocksWalker {
30
30
  constructor(params: IBlockIndexer);
31
31
  start(from?: number | Date, to?: number | Date): Promise<void>;
32
32
  /**
33
- * Can be called each time we get a new block from blockchain,
34
- * the walker will process its current blocks and up until the specified number
33
+ * Can be called each time we get a new block from the blockchain,
34
+ * the walker will process its current blocks up to the specified number
35
35
  * @param nr Number is not included: [from, end)
36
36
  */
37
37
  processUntil(nr: number): Promise<any>;
@@ -9,9 +9,9 @@ export declare class FsEventsIndexerStore<T extends ContractBase> implements IEv
9
9
  name?: string;
10
10
  initialBlockNumber?: number;
11
11
  fs?: {
12
- /** Base directory, in case the path is calculated from chain, name and addresses */
12
+ /** Base directory when the path is calculated from chain, name, and addresses */
13
13
  directory?: string;
14
- /** Relative final directory path to be used as is for store files */
14
+ /** Relative final directory path to use as is for store files */
15
15
  path?: string;
16
16
  rangeSeconds?: number;
17
17
  blockTimeAvg?: number;
@@ -28,9 +28,9 @@ export declare class FsEventsIndexerStore<T extends ContractBase> implements IEv
28
28
  name?: string;
29
29
  initialBlockNumber?: number;
30
30
  fs?: {
31
- /** Base directory, in case the path is calculated from chain, name and addresses */
31
+ /** Base directory when the path is calculated from chain, name, and addresses */
32
32
  directory?: string;
33
- /** Relative final directory path to be used as is for store files */
33
+ /** Relative final directory path to use as is for store files */
34
34
  path?: string;
35
35
  rangeSeconds?: number;
36
36
  blockTimeAvg?: number;
@@ -2,7 +2,7 @@ import { TAddress } from '../../models/TAddress';
2
2
  import { TPlatform } from '../../models/TPlatform';
3
3
  export interface INsProviderOptions {
4
4
  /**
5
- * Loop over each chain the provider supports.
5
+ * Loop over each chain the provider supports
6
6
  * @default: true
7
7
  */
8
8
  multichain?: boolean;
@@ -106,7 +106,7 @@ export declare class Rpc extends RpcBase {
106
106
  eth_accounts(): Promise<TEth.Address[]>;
107
107
  /**
108
108
  * Presents a structured data message for the user to sign. <metamask>
109
- * Presents a data message for the user to sign in a structured and readable format and returns the signed response. Introduced By [EIP-712](https://eips.ethereum.org/EIPS/eip-712).
109
+ * Presents a data message for the user to sign in a structured and readable format and returns the signed response. Introduced by [EIP-712](https://eips.ethereum.org/EIPS/eip-712)
110
110
  * @param address - The address of the requested signing account.
111
111
  * @param typedData -
112
112
  * @returns Signature -
@@ -175,7 +175,7 @@ export declare class Rpc extends RpcBase {
175
175
  * Returns transaction base fee per gas and effective priority fee per gas for the requested/supported block range.
176
176
  * @param blockCount - Requested range of blocks. Clients will return less than the requested range if not all blocks are available.
177
177
  * @param newestBlock - Highest block of the requested range.
178
- * @param rewardPercentiles - A monotonically increasing list of percentile values. For each block in the requested range, the transactions will be sorted in ascending order by effective tip per gas and the coresponding effective tip for the percentile will be determined, accounting for gas consumed.
178
+ * @param rewardPercentiles - A monotonically increasing list of percentile values. For each block in the requested range, the transactions will be sorted in ascending order by effective tip per gas and the corresponding effective tip for the percentile will be determined, accounting for gas consumed
179
179
  * @returns feeHistoryResult - Fee history for the returned block range. This can be a subsection of the requested range if not all blocks are available.
180
180
  */
181
181
  eth_feeHistory(blockCount: bigint, newestBlock: DataLike<RpcTypes.BlockNumberOrTag>, rewardPercentiles: number[]): Promise<{
@@ -19,7 +19,7 @@ export interface ITimelockService {
19
19
  }>;
20
20
  /** Schedules-Wait-Execute a task distinguished by the unique task name
21
21
  *
22
- * 1. if schedule doesn't exist, create it
22
+ * 1. if the schedule does not exist, create it
23
23
  * 2. if schedule date NOT yet ready, exit
24
24
  * 3. if schedule date IS ready, execute it
25
25
  * 4. if executed, exit
@@ -32,7 +32,7 @@ export interface ITimelockService {
32
32
  }>;
33
33
  /** Schedules-Wait-Execute a task distinguished by the unique task name
34
34
  *
35
- * 1. if schedule doesn't exist, create it
35
+ * 1. if the schedule does not exist, create it
36
36
  * 2. if schedule date NOT yet ready, exit
37
37
  * 3. if schedule date IS ready, execute it
38
38
  * 4. if executed, exit
@@ -36,7 +36,7 @@ export declare class TimelockService implements ITimelockService {
36
36
  }>;
37
37
  /** Schedules-Wait-Execute a task distinguished by the unique task name
38
38
  *
39
- * 1. if schedule doesn't exist, create it
39
+ * 1. if the schedule does not exist, create it
40
40
  * 2. if schedule date NOT yet ready, exit
41
41
  * 3. if schedule date IS ready, execute it
42
42
  * 4. if executed, exit
@@ -55,7 +55,7 @@ export declare class TimelockService implements ITimelockService {
55
55
  }>;
56
56
  /** Schedules-Wait-Execute a task distinguished by the unique task name
57
57
  *
58
- * 1. if schedule doesn't exist, create it
58
+ * 1. if the schedule does not exist, create it
59
59
  * 2. if schedule date NOT yet ready, exit
60
60
  * 3. if schedule date IS ready, execute it
61
61
  * 4. if executed, exit
@@ -26,7 +26,7 @@ export declare class TimelockServiceFallbackSafe implements ITimelockService {
26
26
  }>;
27
27
  /** Schedules-Wait-Execute a task distinguished by the unique task name
28
28
  *
29
- * 1. if schedule doesn't exist, create it
29
+ * 1. if the schedule does not exist, create it
30
30
  * 2. if schedule date NOT yet ready, exit
31
31
  * 3. if schedule date IS ready, execute it
32
32
  * 4. if executed, exit
@@ -39,7 +39,7 @@ export declare class TimelockServiceFallbackSafe implements ITimelockService {
39
39
  }>;
40
40
  /** Schedules-Wait-Execute a task distinguished by the unique task name
41
41
  *
42
- * 1. if schedule doesn't exist, create it
42
+ * 1. if the schedule does not exist, create it
43
43
  * 2. if schedule date NOT yet ready, exit
44
44
  * 3. if schedule date IS ready, execute it
45
45
  * 4. if executed, exit
@@ -20,7 +20,7 @@ export declare class SourceFile {
20
20
  private reapplyParents;
21
21
  getImports(): Promise<TSourceFileImport[]>;
22
22
  /**
23
- * @returns Inheritance chain: From base (root) class to the most derived class.
23
+ * @returns Inheritance chain: from the base (root) class to the most derived class
24
24
  */
25
25
  getContractInheritanceChain(name?: string): Promise<TSourceFileContract[]>;
26
26
  getContract(name?: string): Promise<ContractDefinition>;
@@ -2,7 +2,7 @@ import { ISlotVarDefinition } from '../SlotsParser/models';
2
2
  import { ASlotsStorageHandler } from './SlotsStorageHandler';
3
3
  export declare abstract class ASlotFixedArray extends ASlotsStorageHandler {
4
4
  static supports(slot: ISlotVarDefinition): boolean;
5
- /** @TODO doesnt support complex arrays */
5
+ /** @TODO Does not support complex arrays */
6
6
  protected getCursorFor(idx: number): Promise<{
7
7
  slot: number | bigint;
8
8
  position: number;
@@ -18,14 +18,14 @@ export declare class TokenDataProvider {
18
18
  getToken(address: TAddress, chainLookup?: boolean): Promise<IToken>;
19
19
  getKnownToken(mix: string): Promise<IToken>;
20
20
  /**
21
- * Adds and saves the token to dequanto configuration.
21
+ * Adds and saves the token to the dequanto configuration
22
22
  */
23
23
  addKnownToken(token: IToken): Promise<any>;
24
24
  isNative(token: IToken): boolean;
25
25
  isNative(address: TAddress): boolean;
26
26
  isNative(symbol: string): boolean;
27
27
  getNative(platform: TPlatform): IToken;
28
- /** Download tokens with various exchange/swap providers and merge them into one collection. */
28
+ /** Download tokens with various exchange/swap providers and merge them into one collection */
29
29
  redownload(): Promise<ITokenProvider[]>;
30
30
  getTokenByAddress(address: TAddress, chainLookup?: boolean): Promise<[IToken, ITokenProvider]>;
31
31
  getTokenBySymbol(symbol: string, chainLookup?: boolean): Promise<[IToken, ITokenProvider]>;
@@ -21,7 +21,7 @@ export declare class TokensService {
21
21
  isNative(address: TAddress): boolean;
22
22
  isNative(symbol: string): boolean;
23
23
  getNative(platform?: TPlatform): IToken;
24
- /** Download tokens with various exchange/swap providers and merge them into one collection. */
24
+ /** Download tokens with various exchange/swap providers and merge them into one collection */
25
25
  redownload(): Promise<ITokenProvider[]>;
26
26
  getTokenByAddress(address: TAddress, chainLookup?: boolean): Promise<[IToken, ITokenProvider]>;
27
27
  getTokenBySymbol(symbol: string, chainLookup?: boolean): Promise<[IToken, ITokenProvider]>;
@@ -11,7 +11,7 @@ export interface ITxBuilderNonceOptions {
11
11
  * 1: Used nonce of the first pending transaction will
12
12
  * 2: second pending transaction
13
13
  * ...
14
- * In any case MAX is the count of pending transactions, so any value is safe.
14
+ * In any case, MAX is the count of pending transactions, so any value is safe
15
15
  */
16
16
  noncePending?: number;
17
17
  }
@@ -12,7 +12,7 @@ export declare class TxNonceManager {
12
12
  protected constructor(platform: TPlatform, account: TAddress);
13
13
  static create(client: Web3Client, account: IAccount | TAddress): TxNonceManager;
14
14
  /**
15
- * Pick current nonce without incrementing. TxDataBuilder will call the incrementCursor after the tx signed.
15
+ * Pick the current nonce without incrementing. TxDataBuilder will call incrementCursor after the tx is signed
16
16
  * */
17
17
  pickNonce(client: Web3Client): Promise<bigint>;
18
18
  incrementCursor(): void;
@@ -40,7 +40,7 @@ export interface ITxWriterOptions {
40
40
  retries?: number;
41
41
  retryDelay?: number;
42
42
  safeTransport?: ISafeServiceTransport;
43
- /** Tx Data will be saved to the store(e.g. a File), and will wait until the signature appears in the store. */
43
+ /** Tx data will be saved to the store, e.g. a file, and wait until the signature appears in the store */
44
44
  sigTransport?: string;
45
45
  /** Optionally disable waiting for the transport response */
46
46
  sigTransportWait?: boolean;
@@ -48,10 +48,10 @@ export interface ITxWriterOptions {
48
48
  txOutput?: string;
49
49
  /** Proceed the Tx up to the signature */
50
50
  signOnly?: boolean;
51
- /** Provide a pre-signed signature for this transaction data. */
51
+ /** Provide a pre-signed signature for this transaction data */
52
52
  signature?: TEth.Hex;
53
53
  /**
54
- * The callback is executed on error, to give the opportunity to build a new Tx to resubmit the tx.
54
+ * The callback is executed on error to allow building a new tx for resubmission
55
55
  * @param tx - current TxWriter object
56
56
  * @param error - current Error with receipt(if any)
57
57
  * @param errCount - num of errors already handled
@@ -64,7 +64,7 @@ export interface ITxWriterOptions {
64
64
  */
65
65
  silent?: boolean;
66
66
  /**
67
- * Custom agent to process the transaction data.
67
+ * Custom agent to process the transaction data
68
68
  */
69
69
  agent?: ITxWriterAgent;
70
70
  }
@@ -7,7 +7,7 @@ export declare class TxLogParser {
7
7
  topics: TxTopicProvider;
8
8
  constructor(topics?: TxTopicProvider);
9
9
  /**
10
- * Sparse arrays will contain NULLs for unparsed log items.
10
+ * Sparse arrays will contain NULLs for unparsed log items
11
11
  * Per default dense arrays - only with known logs - are returned
12
12
  */
13
13
  parse(receipt: {
@@ -24,7 +24,7 @@ export declare class DateTool {
24
24
  setSeconds(v: number): this;
25
25
  setMinutes(v: number): this;
26
26
  setHours(h: number, min?: number, sec?: number, ms?: number): this;
27
- /** Sets the numeric day-of-the-month value of the Date object using local time. */
27
+ /** Sets the numeric day-of-the-month value of the Date object using local time */
28
28
  setDate(v: number): this;
29
29
  setMonth(v: number): this;
30
30
  setFullYear(v: number): this;
@@ -2,7 +2,7 @@ import { TEth } from '../models/TEth';
2
2
  export declare namespace $hex {
3
3
  const ZERO = "0x";
4
4
  /**
5
- * Adds '00' bytes to the hex string.
5
+ * Adds '00' bytes to the hex string
6
6
  * @param hex
7
7
  * @param byteSize Min bytes count in the hex string
8
8
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dequanto",
3
- "version": "0.2.37",
3
+ "version": "0.2.40",
4
4
  "author": {
5
5
  "name": "Alex Kit",
6
6
  "email": "alex.kit@atmajs.com"
package/readme.md CHANGED
@@ -1,83 +1,105 @@
1
- # dequanto
2
-
3
- [![Documentation Link](https://img.shields.io/badge/%E2%9D%93-documentation-green.svg)](https://docs.0xweb.org/dequanto)
4
- [![CircleCI](https://circleci.com/gh/0xweb-org/dequanto.svg?style=svg)](https://circleci.com/gh/0xweb-org/dequanto)
5
- [![NPM version](https://badge.fury.io/js/dequanto.svg)](http://badge.fury.io/js/dequanto)
6
-
7
- <p align='center'>
8
- <img src='assets/background.jpg'/>
9
- </p>
10
-
11
-
12
- A flexible and all-in-one library for EVM Blockchain Developers and Consumers. Based on your requirements and expertise, this library can either fully abstract the Blockchain Layer with autogenerated classes for contract communication or give you direct access to low-level methods.
13
-
14
- This library includes numerous classes to cover all facets of blockchain development. Here’s a summary of some key features:
15
-
16
- ### Generate ES6 classes with TypeScript support
17
-
18
- Create contract clients based on ABI or source code, which can be automatically retrieved from blockchain explorers by address.
19
-
20
- > This can serve as an all-in-one tool for submitting transactions, querying contracts, or fetching events, as the contract clients handle the underlying steps.
21
-
22
- ---
23
-
24
- ### 🌐 RPC Clients
25
-
26
- A robust communication layer to connect to blockchain nodes. You can add multiple nodes (private or public) to the pool to manage
27
-
28
- - **request balancing**
29
- - **throttling**
30
- - **rate limits**
31
- - **automatic retries**
32
-
33
- ### 🏗️ Transaction Builder
34
-
35
- Provides fine-tuning for transaction submission. Supports Gnosis {Safe}, Account Abstraction Transactions and Flashbots.
36
-
37
- ### 💠 Etherscan & Co Clients
38
-
39
- An integrated API for blockchain explorers.
40
-
41
- ### 🔎 Event Indexer
42
-
43
- An easy-to-use indexer for fetching contract events with file persistence layer and pause-resume progress.
44
-
45
- ### 👀 Event and Transaction Watcher
46
-
47
- Listen to events and monitor transactions in real-time.
48
-
49
- ### 🔢 Native **`BigInt`** Types with **`BigFloat`** Support for Mantissa Math
50
-
51
- ### 📦 Pre-generated OpenZeppelin Contracts
52
-
53
-
54
- ## ⬇️ Installation
55
-
56
- ### Using 0xweb CLI
57
-
58
- You can use the [0xweb](https://github.com/0xweb-org/0xweb) tool to install contracts and dependencies.
59
-
60
- ### NPM
61
-
62
- Install the library using npm:
63
-
64
- ```
65
- npm i dequanto
66
- ```
67
-
68
- The package includes three types of source files:
69
-
70
- 1. **Compiled CommonJS (CJS) Files**: Located at `node_modules/dequanto/lib/cjs/*/**.js`
71
- 2. **Compiled ESM (Modules)**: Located at `node_modules/dequanto/lib/esm/*/**.mjs`
72
- 3. **TypeScript Sources**: Located at `node_modules/dequanto/src/*/**.ts`
73
-
74
- Node and Build environments will automatically detect between 1 and 2 based on your project setup.
75
-
76
-
77
- ### 🛠️ Configuration
78
-
79
- While the library includes configurations for various blockchains and {Safe} infrastructure, you may need to set custom RPC URLs, Blockchain Explorer API Keys, and other settings. This can be done in a **YAML** configuration file that loads when the application starts.
80
-
81
- ----
82
-
83
- 🏁 (c) 2024 0xweb.org
1
+ # dequanto
2
+
3
+ [![Documentation](https://img.shields.io/badge/documentation-green.svg)](https://docs.0xweb.org/dequanto)
4
+ [![CircleCI](https://circleci.com/gh/0xweb-org/dequanto.svg?style=svg)](https://circleci.com/gh/0xweb-org/dequanto)
5
+ [![NPM version](https://badge.fury.io/js/dequanto.svg)](http://badge.fury.io/js/dequanto)
6
+
7
+ <p align="center">
8
+ <img src="assets/background.jpg" alt="dequanto" />
9
+ </p>
10
+
11
+ `dequanto` is a TypeScript toolkit for EVM development. It can generate typed contract clients from ABI or Solidity sources, submit and monitor transactions, query RPC nodes, read blockchain explorer data, index events, and work with common Ethereum data formats.
12
+
13
+ The library can be used at different abstraction levels:
14
+
15
+ - Use generated contract classes for typed calls, transactions, and event parsing
16
+ - Use RPC clients directly when you need low-level node access
17
+ - Use transaction builders for fine-grained signing and submission flows
18
+ - Use storage, ABI, and bytecode utilities when inspecting contracts or chain data
19
+
20
+ ## Features
21
+
22
+ ### Typed Contract Clients
23
+
24
+ Generate ES6/TypeScript classes from ABI, compiled artifacts, Solidity files, or verified source code fetched from blockchain explorers. Generated clients can call read methods, submit transactions, parse logs, and expose typed helpers around contract metadata.
25
+
26
+ ### RPC Clients
27
+
28
+ Connect to one or more blockchain nodes through a shared client layer. The RPC client supports node pools, request balancing, throttling, rate limits, and automatic retries.
29
+
30
+ ### Transactions
31
+
32
+ Build, sign, submit, and wait for transactions with lower-level control over transaction data. The transaction layer also includes support for Gnosis Safe, Account Abstraction, and Flashbots flows.
33
+
34
+ ### Explorer Integration
35
+
36
+ Use Etherscan-compatible explorers and related APIs to fetch ABIs, source code, contract creation metadata, token data, and other chain information.
37
+
38
+ ### Event Indexing
39
+
40
+ Fetch and persist contract events with resumable progress. The event indexer is designed for long-running indexing jobs that need file-backed state.
41
+
42
+ ### Watchers
43
+
44
+ Subscribe to contract events and monitor transactions in real time.
45
+
46
+ ### Numeric Utilities
47
+
48
+ Work with native `bigint` values and `BigFloat` helpers for mantissa-based math.
49
+
50
+ ### Prebuilt Contracts
51
+
52
+ Use pre-generated TypeScript wrappers for commonly used contracts, including OpenZeppelin contracts.
53
+
54
+ ## Installation
55
+
56
+ Install the package from npm:
57
+
58
+ ```bash
59
+ npm i dequanto
60
+ ```
61
+
62
+ The package ships with:
63
+
64
+ - CommonJS files under `node_modules/dequanto/lib/cjs`
65
+ - ESM files under `node_modules/dequanto/lib/esm`
66
+ - TypeScript declarations under `node_modules/dequanto/lib/types`
67
+ - TypeScript sources under `node_modules/dequanto/src`
68
+
69
+ Node and build tools can resolve the correct entry point through the package exports.
70
+
71
+ ## 0xweb CLI
72
+
73
+ You can also use the [0xweb](https://github.com/0xweb-org/0xweb) CLI to generate contract clients and install contract dependencies.
74
+
75
+ ## Configuration
76
+
77
+ `dequanto` includes default configuration for several chains and Safe infrastructure. For project-specific settings, add RPC URLs, explorer API keys, and other overrides through YAML config files.
78
+
79
+ ## Development
80
+
81
+ Useful repository commands:
82
+
83
+ ```bash
84
+ npm run typecheck
85
+ npm run build
86
+ npm test
87
+ ```
88
+
89
+ The main validation command for TypeScript changes is:
90
+
91
+ ```bash
92
+ npm run typecheck -- --pretty false
93
+ ```
94
+
95
+ ## Documentation
96
+
97
+ Full documentation is available at:
98
+
99
+ ```text
100
+ https://docs.0xweb.org/dequanto
101
+ ```
102
+
103
+ ## License
104
+
105
+ Copyright (c) 2026 0xweb.org
@@ -60,7 +60,7 @@ export namespace $abiCoder {
60
60
  }
61
61
 
62
62
  if ('components' in abi) {
63
- // unwrap array to object
63
+ // Unwrap the array to an object
64
64
  let result = {};
65
65
  for (let i = 0; i < abi.components.length; i++) {
66
66
  let component = abi.components[i];
package/src/abi/Logger.ts CHANGED
@@ -9,7 +9,7 @@ export class Logger {
9
9
  }
10
10
 
11
11
  throwArgumentError (message, localVar, value) {
12
- throw new Error(`${message}: Invalid ${localVar}: ${value}`)
12
+ throw new Error(`${message}: invalid ${localVar}: ${value}`)
13
13
  }
14
14
 
15
15
  throwError (message, name, params) {
@@ -63,14 +63,14 @@ function _pack(type: string, value: any, isArray?: boolean): Uint8Array {
63
63
  return $buffer.concat(buffers);
64
64
  }
65
65
 
66
- throw new Error(`AbiCoder: Invalid type ${type}`);
66
+ throw new Error(`AbiCoder: invalid type ${type}`);
67
67
  }
68
68
 
69
- // @TODO: Array Enum
69
+ // @TODO: Array enum
70
70
 
71
71
  /**
72
72
  * Computes the [[link-solc-packed]] representation of %%values%%
73
- * respectively to their %%types%%.
73
+ * respectively to their %%types%%
74
74
  *
75
75
  * @example:
76
76
  * addr = "0x8ba1f109551bd432803012645ac136ddd64dba72"