@across-protocol/sdk 4.1.63-alpha.1 → 4.1.63-beta.1

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 (363) hide show
  1. package/dist/cjs/arch/evm/SpokeUtils.d.ts +1 -1
  2. package/dist/cjs/arch/evm/SpokeUtils.js +6 -5
  3. package/dist/cjs/arch/evm/SpokeUtils.js.map +1 -1
  4. package/dist/cjs/arch/svm/SpokeUtils.d.ts +20 -0
  5. package/dist/cjs/arch/svm/SpokeUtils.js +424 -0
  6. package/dist/cjs/arch/svm/SpokeUtils.js.map +1 -0
  7. package/dist/cjs/arch/svm/constants.d.ts +2 -0
  8. package/dist/cjs/arch/svm/constants.js +7 -0
  9. package/dist/cjs/arch/svm/constants.js.map +1 -0
  10. package/dist/cjs/arch/svm/eventsClient.d.ts +26 -0
  11. package/dist/cjs/arch/svm/eventsClient.js +253 -0
  12. package/dist/cjs/arch/svm/eventsClient.js.map +1 -0
  13. package/dist/cjs/arch/svm/index.d.ts +5 -1
  14. package/dist/cjs/arch/svm/index.js +6 -2
  15. package/dist/cjs/arch/svm/index.js.map +1 -1
  16. package/dist/cjs/{svm → arch/svm}/types.d.ts +9 -4
  17. package/dist/cjs/arch/svm/types.js.map +1 -0
  18. package/dist/cjs/arch/svm/utils.d.ts +17 -0
  19. package/dist/cjs/arch/svm/utils.js +204 -0
  20. package/dist/cjs/arch/svm/utils.js.map +1 -0
  21. package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +1 -1
  22. package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js +7 -7
  23. package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js.map +1 -1
  24. package/dist/cjs/clients/BaseAbstractClient.d.ts +6 -5
  25. package/dist/cjs/clients/BaseAbstractClient.js +30 -19
  26. package/dist/cjs/clients/BaseAbstractClient.js.map +1 -1
  27. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js +15 -11
  28. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  29. package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js +1 -1
  30. package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
  31. package/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.d.ts +114 -114
  32. package/dist/cjs/clients/HubPoolClient.d.ts +1 -1
  33. package/dist/cjs/clients/HubPoolClient.js +16 -16
  34. package/dist/cjs/clients/HubPoolClient.js.map +1 -1
  35. package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.d.ts +3 -3
  36. package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.js +23 -20
  37. package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.js.map +1 -1
  38. package/dist/cjs/clients/SpokePoolClient/SVMSpokePoolClient.d.ts +23 -0
  39. package/dist/cjs/clients/SpokePoolClient/SVMSpokePoolClient.js +145 -0
  40. package/dist/cjs/clients/SpokePoolClient/SVMSpokePoolClient.js.map +1 -0
  41. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.d.ts +5 -5
  42. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js +50 -54
  43. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js.map +1 -1
  44. package/dist/cjs/clients/SpokePoolClient/index.d.ts +3 -0
  45. package/dist/cjs/clients/SpokePoolClient/index.js +8 -1
  46. package/dist/cjs/clients/SpokePoolClient/index.js.map +1 -1
  47. package/dist/cjs/clients/index.d.ts +1 -1
  48. package/dist/cjs/clients/index.js +2 -1
  49. package/dist/cjs/clients/index.js.map +1 -1
  50. package/dist/cjs/clients/mocks/MockConfigStoreClient.d.ts +1 -1
  51. package/dist/cjs/clients/mocks/MockConfigStoreClient.js +2 -2
  52. package/dist/cjs/clients/mocks/MockConfigStoreClient.js.map +1 -1
  53. package/dist/cjs/clients/mocks/MockHubPoolClient.js +2 -2
  54. package/dist/cjs/clients/mocks/MockHubPoolClient.js.map +1 -1
  55. package/dist/cjs/clients/mocks/MockSpokePoolClient.js +7 -4
  56. package/dist/cjs/clients/mocks/MockSpokePoolClient.js.map +1 -1
  57. package/dist/cjs/gasPriceOracle/adapters/arbitrum.d.ts +2 -2
  58. package/dist/cjs/gasPriceOracle/adapters/arbitrum.js.map +1 -1
  59. package/dist/cjs/gasPriceOracle/adapters/ethereum.d.ts +4 -4
  60. package/dist/cjs/gasPriceOracle/adapters/ethereum.js.map +1 -1
  61. package/dist/cjs/gasPriceOracle/adapters/linea-viem.js +3 -2
  62. package/dist/cjs/gasPriceOracle/adapters/linea-viem.js.map +1 -1
  63. package/dist/cjs/gasPriceOracle/adapters/polygon.d.ts +3 -3
  64. package/dist/cjs/gasPriceOracle/adapters/solana.d.ts +4 -0
  65. package/dist/cjs/gasPriceOracle/adapters/solana.js +43 -0
  66. package/dist/cjs/gasPriceOracle/adapters/solana.js.map +1 -0
  67. package/dist/cjs/gasPriceOracle/index.d.ts +1 -1
  68. package/dist/cjs/gasPriceOracle/oracle.d.ts +4 -3
  69. package/dist/cjs/gasPriceOracle/oracle.js +16 -9
  70. package/dist/cjs/gasPriceOracle/oracle.js.map +1 -1
  71. package/dist/cjs/gasPriceOracle/types.d.ts +6 -1
  72. package/dist/cjs/index.d.ts +0 -1
  73. package/dist/cjs/index.js +1 -2
  74. package/dist/cjs/index.js.map +1 -1
  75. package/dist/cjs/interfaces/SpokePool.d.ts +13 -0
  76. package/dist/cjs/interfaces/SpokePool.js.map +1 -1
  77. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.d.ts +1 -1
  78. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js +5 -4
  79. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
  80. package/dist/cjs/relayFeeCalculator/chain-queries/factory.d.ts +4 -2
  81. package/dist/cjs/relayFeeCalculator/chain-queries/factory.js +7 -1
  82. package/dist/cjs/relayFeeCalculator/chain-queries/factory.js.map +1 -1
  83. package/dist/cjs/relayFeeCalculator/chain-queries/index.d.ts +1 -0
  84. package/dist/cjs/relayFeeCalculator/chain-queries/index.js +1 -0
  85. package/dist/cjs/relayFeeCalculator/chain-queries/index.js.map +1 -1
  86. package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.d.ts +31 -0
  87. package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.js +136 -0
  88. package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.js.map +1 -0
  89. package/dist/cjs/utils/AddressUtils.d.ts +9 -3
  90. package/dist/cjs/utils/AddressUtils.js +36 -6
  91. package/dist/cjs/utils/AddressUtils.js.map +1 -1
  92. package/dist/cjs/utils/ArrayUtils.d.ts +1 -0
  93. package/dist/cjs/utils/ArrayUtils.js +6 -1
  94. package/dist/cjs/utils/ArrayUtils.js.map +1 -1
  95. package/dist/cjs/utils/EventUtils.d.ts +4 -4
  96. package/dist/cjs/utils/EventUtils.js +7 -4
  97. package/dist/cjs/utils/EventUtils.js.map +1 -1
  98. package/dist/cjs/utils/JSONUtils.js +3 -0
  99. package/dist/cjs/utils/JSONUtils.js.map +1 -1
  100. package/dist/cjs/utils/SpokeUtils.js +5 -0
  101. package/dist/cjs/utils/SpokeUtils.js.map +1 -1
  102. package/dist/esm/arch/evm/SpokeUtils.d.ts +1 -1
  103. package/dist/esm/arch/evm/SpokeUtils.js +6 -5
  104. package/dist/esm/arch/evm/SpokeUtils.js.map +1 -1
  105. package/dist/esm/arch/svm/SpokeUtils.d.ts +94 -0
  106. package/dist/esm/arch/svm/SpokeUtils.js +509 -0
  107. package/dist/esm/arch/svm/SpokeUtils.js.map +1 -0
  108. package/dist/esm/arch/svm/constants.d.ts +2 -0
  109. package/dist/esm/arch/svm/constants.js +3 -0
  110. package/dist/esm/arch/svm/constants.js.map +1 -0
  111. package/dist/esm/arch/svm/eventsClient.d.ts +87 -0
  112. package/dist/esm/arch/svm/eventsClient.js +316 -0
  113. package/dist/esm/arch/svm/eventsClient.js.map +1 -0
  114. package/dist/esm/arch/svm/index.d.ts +5 -1
  115. package/dist/esm/arch/svm/index.js +5 -1
  116. package/dist/esm/arch/svm/index.js.map +1 -1
  117. package/dist/{types → esm/arch}/svm/types.d.ts +9 -5
  118. package/dist/esm/arch/svm/types.js.map +1 -0
  119. package/dist/esm/arch/svm/utils.d.ts +59 -0
  120. package/dist/esm/arch/svm/utils.js +248 -0
  121. package/dist/esm/arch/svm/utils.js.map +1 -0
  122. package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +1 -1
  123. package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js +7 -7
  124. package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js.map +1 -1
  125. package/dist/esm/clients/BaseAbstractClient.d.ts +6 -5
  126. package/dist/esm/clients/BaseAbstractClient.js +30 -19
  127. package/dist/esm/clients/BaseAbstractClient.js.map +1 -1
  128. package/dist/esm/clients/BundleDataClient/BundleDataClient.js +17 -14
  129. package/dist/esm/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  130. package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js +1 -1
  131. package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
  132. package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.d.ts +114 -114
  133. package/dist/esm/clients/HubPoolClient.d.ts +1 -1
  134. package/dist/esm/clients/HubPoolClient.js +16 -16
  135. package/dist/esm/clients/HubPoolClient.js.map +1 -1
  136. package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.d.ts +3 -3
  137. package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.js +23 -20
  138. package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.js.map +1 -1
  139. package/dist/esm/clients/SpokePoolClient/SVMSpokePoolClient.d.ts +67 -0
  140. package/dist/esm/clients/SpokePoolClient/SVMSpokePoolClient.js +196 -0
  141. package/dist/esm/clients/SpokePoolClient/SVMSpokePoolClient.js.map +1 -0
  142. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.d.ts +7 -7
  143. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js +51 -55
  144. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js.map +1 -1
  145. package/dist/esm/clients/SpokePoolClient/index.d.ts +8 -0
  146. package/dist/esm/clients/SpokePoolClient/index.js +10 -0
  147. package/dist/esm/clients/SpokePoolClient/index.js.map +1 -1
  148. package/dist/esm/clients/index.d.ts +1 -1
  149. package/dist/esm/clients/index.js +1 -1
  150. package/dist/esm/clients/index.js.map +1 -1
  151. package/dist/esm/clients/mocks/MockConfigStoreClient.d.ts +1 -1
  152. package/dist/esm/clients/mocks/MockConfigStoreClient.js +2 -2
  153. package/dist/esm/clients/mocks/MockConfigStoreClient.js.map +1 -1
  154. package/dist/esm/clients/mocks/MockHubPoolClient.js +2 -2
  155. package/dist/esm/clients/mocks/MockHubPoolClient.js.map +1 -1
  156. package/dist/esm/clients/mocks/MockSpokePoolClient.js +8 -5
  157. package/dist/esm/clients/mocks/MockSpokePoolClient.js.map +1 -1
  158. package/dist/esm/gasPriceOracle/adapters/arbitrum.d.ts +2 -2
  159. package/dist/esm/gasPriceOracle/adapters/arbitrum.js.map +1 -1
  160. package/dist/esm/gasPriceOracle/adapters/ethereum.d.ts +4 -4
  161. package/dist/esm/gasPriceOracle/adapters/ethereum.js.map +1 -1
  162. package/dist/esm/gasPriceOracle/adapters/linea-viem.js +3 -2
  163. package/dist/esm/gasPriceOracle/adapters/linea-viem.js.map +1 -1
  164. package/dist/esm/gasPriceOracle/adapters/polygon.d.ts +4 -4
  165. package/dist/esm/gasPriceOracle/adapters/polygon.js +1 -1
  166. package/dist/esm/gasPriceOracle/adapters/solana.d.ts +8 -0
  167. package/dist/esm/gasPriceOracle/adapters/solana.js +43 -0
  168. package/dist/esm/gasPriceOracle/adapters/solana.js.map +1 -0
  169. package/dist/esm/gasPriceOracle/index.d.ts +1 -1
  170. package/dist/esm/gasPriceOracle/oracle.d.ts +4 -3
  171. package/dist/esm/gasPriceOracle/oracle.js +18 -9
  172. package/dist/esm/gasPriceOracle/oracle.js.map +1 -1
  173. package/dist/esm/gasPriceOracle/types.d.ts +6 -1
  174. package/dist/esm/index.d.ts +0 -1
  175. package/dist/esm/index.js +0 -2
  176. package/dist/esm/index.js.map +1 -1
  177. package/dist/esm/interfaces/SpokePool.d.ts +13 -0
  178. package/dist/esm/interfaces/SpokePool.js.map +1 -1
  179. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.d.ts +1 -1
  180. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js +4 -3
  181. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
  182. package/dist/esm/relayFeeCalculator/chain-queries/factory.d.ts +4 -2
  183. package/dist/esm/relayFeeCalculator/chain-queries/factory.js +8 -2
  184. package/dist/esm/relayFeeCalculator/chain-queries/factory.js.map +1 -1
  185. package/dist/esm/relayFeeCalculator/chain-queries/index.d.ts +1 -0
  186. package/dist/esm/relayFeeCalculator/chain-queries/index.js +1 -0
  187. package/dist/esm/relayFeeCalculator/chain-queries/index.js.map +1 -1
  188. package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.d.ts +66 -0
  189. package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.js +169 -0
  190. package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.js.map +1 -0
  191. package/dist/esm/utils/AddressUtils.d.ts +9 -3
  192. package/dist/esm/utils/AddressUtils.js +41 -6
  193. package/dist/esm/utils/AddressUtils.js.map +1 -1
  194. package/dist/esm/utils/ArrayUtils.d.ts +6 -0
  195. package/dist/esm/utils/ArrayUtils.js +9 -0
  196. package/dist/esm/utils/ArrayUtils.js.map +1 -1
  197. package/dist/esm/utils/EventUtils.d.ts +4 -4
  198. package/dist/esm/utils/EventUtils.js +7 -4
  199. package/dist/esm/utils/EventUtils.js.map +1 -1
  200. package/dist/esm/utils/JSONUtils.js +3 -0
  201. package/dist/esm/utils/JSONUtils.js.map +1 -1
  202. package/dist/esm/utils/SpokeUtils.js +5 -0
  203. package/dist/esm/utils/SpokeUtils.js.map +1 -1
  204. package/dist/types/arch/evm/SpokeUtils.d.ts +1 -1
  205. package/dist/types/arch/evm/SpokeUtils.d.ts.map +1 -1
  206. package/dist/types/arch/svm/SpokeUtils.d.ts +95 -0
  207. package/dist/types/arch/svm/SpokeUtils.d.ts.map +1 -0
  208. package/dist/types/arch/svm/constants.d.ts +3 -0
  209. package/dist/types/arch/svm/constants.d.ts.map +1 -0
  210. package/dist/types/arch/svm/eventsClient.d.ts +88 -0
  211. package/dist/types/arch/svm/eventsClient.d.ts.map +1 -0
  212. package/dist/types/arch/svm/index.d.ts +5 -1
  213. package/dist/types/arch/svm/index.d.ts.map +1 -1
  214. package/dist/{esm → types/arch}/svm/types.d.ts +10 -4
  215. package/dist/types/arch/svm/types.d.ts.map +1 -0
  216. package/dist/types/arch/svm/utils.d.ts +60 -0
  217. package/dist/types/arch/svm/utils.d.ts.map +1 -0
  218. package/dist/types/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +1 -1
  219. package/dist/types/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts.map +1 -1
  220. package/dist/types/clients/BaseAbstractClient.d.ts +6 -5
  221. package/dist/types/clients/BaseAbstractClient.d.ts.map +1 -1
  222. package/dist/types/clients/BundleDataClient/BundleDataClient.d.ts.map +1 -1
  223. package/dist/types/clients/BundleDataClient/utils/SuperstructUtils.d.ts +114 -114
  224. package/dist/types/clients/HubPoolClient.d.ts +1 -1
  225. package/dist/types/clients/HubPoolClient.d.ts.map +1 -1
  226. package/dist/types/clients/SpokePoolClient/EVMSpokePoolClient.d.ts +3 -3
  227. package/dist/types/clients/SpokePoolClient/EVMSpokePoolClient.d.ts.map +1 -1
  228. package/dist/types/clients/SpokePoolClient/SVMSpokePoolClient.d.ts +68 -0
  229. package/dist/types/clients/SpokePoolClient/SVMSpokePoolClient.d.ts.map +1 -0
  230. package/dist/types/clients/SpokePoolClient/SpokePoolClient.d.ts +7 -7
  231. package/dist/types/clients/SpokePoolClient/SpokePoolClient.d.ts.map +1 -1
  232. package/dist/types/clients/SpokePoolClient/index.d.ts +8 -0
  233. package/dist/types/clients/SpokePoolClient/index.d.ts.map +1 -1
  234. package/dist/types/clients/index.d.ts +1 -1
  235. package/dist/types/clients/index.d.ts.map +1 -1
  236. package/dist/types/clients/mocks/MockConfigStoreClient.d.ts +1 -1
  237. package/dist/types/clients/mocks/MockConfigStoreClient.d.ts.map +1 -1
  238. package/dist/types/clients/mocks/MockSpokePoolClient.d.ts.map +1 -1
  239. package/dist/types/gasPriceOracle/adapters/arbitrum.d.ts +2 -2
  240. package/dist/types/gasPriceOracle/adapters/arbitrum.d.ts.map +1 -1
  241. package/dist/types/gasPriceOracle/adapters/ethereum.d.ts +4 -4
  242. package/dist/types/gasPriceOracle/adapters/ethereum.d.ts.map +1 -1
  243. package/dist/types/gasPriceOracle/adapters/linea-viem.d.ts.map +1 -1
  244. package/dist/types/gasPriceOracle/adapters/polygon.d.ts +4 -4
  245. package/dist/types/gasPriceOracle/adapters/polygon.d.ts.map +1 -1
  246. package/dist/types/gasPriceOracle/adapters/solana.d.ts +9 -0
  247. package/dist/types/gasPriceOracle/adapters/solana.d.ts.map +1 -0
  248. package/dist/types/gasPriceOracle/index.d.ts +1 -1
  249. package/dist/types/gasPriceOracle/index.d.ts.map +1 -1
  250. package/dist/types/gasPriceOracle/oracle.d.ts +4 -3
  251. package/dist/types/gasPriceOracle/oracle.d.ts.map +1 -1
  252. package/dist/types/gasPriceOracle/types.d.ts +6 -1
  253. package/dist/types/gasPriceOracle/types.d.ts.map +1 -1
  254. package/dist/types/index.d.ts +0 -1
  255. package/dist/types/index.d.ts.map +1 -1
  256. package/dist/types/interfaces/SpokePool.d.ts +13 -0
  257. package/dist/types/interfaces/SpokePool.d.ts.map +1 -1
  258. package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts +1 -1
  259. package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts.map +1 -1
  260. package/dist/types/relayFeeCalculator/chain-queries/factory.d.ts +4 -2
  261. package/dist/types/relayFeeCalculator/chain-queries/factory.d.ts.map +1 -1
  262. package/dist/types/relayFeeCalculator/chain-queries/index.d.ts +1 -0
  263. package/dist/types/relayFeeCalculator/chain-queries/index.d.ts.map +1 -1
  264. package/dist/types/relayFeeCalculator/chain-queries/svmQuery.d.ts +67 -0
  265. package/dist/types/relayFeeCalculator/chain-queries/svmQuery.d.ts.map +1 -0
  266. package/dist/types/utils/AddressUtils.d.ts +9 -3
  267. package/dist/types/utils/AddressUtils.d.ts.map +1 -1
  268. package/dist/types/utils/ArrayUtils.d.ts +6 -0
  269. package/dist/types/utils/ArrayUtils.d.ts.map +1 -1
  270. package/dist/types/utils/EventUtils.d.ts +4 -4
  271. package/dist/types/utils/EventUtils.d.ts.map +1 -1
  272. package/dist/types/utils/JSONUtils.d.ts.map +1 -1
  273. package/dist/types/utils/SpokeUtils.d.ts.map +1 -1
  274. package/package.json +5 -2
  275. package/src/arch/evm/SpokeUtils.ts +5 -5
  276. package/src/arch/svm/SpokeUtils.ts +526 -0
  277. package/src/arch/svm/constants.ts +2 -0
  278. package/src/arch/svm/eventsClient.ts +334 -0
  279. package/src/arch/svm/index.ts +5 -1
  280. package/src/{svm → arch/svm}/types.ts +21 -4
  281. package/src/arch/svm/utils.ts +222 -0
  282. package/src/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.ts +7 -7
  283. package/src/clients/BaseAbstractClient.ts +20 -13
  284. package/src/clients/BundleDataClient/BundleDataClient.ts +28 -19
  285. package/src/clients/BundleDataClient/utils/PoolRebalanceUtils.ts +1 -1
  286. package/src/clients/HubPoolClient.ts +16 -16
  287. package/src/clients/SpokePoolClient/EVMSpokePoolClient.ts +23 -21
  288. package/src/clients/SpokePoolClient/SVMSpokePoolClient.ts +244 -0
  289. package/src/clients/SpokePoolClient/SpokePoolClient.ts +44 -56
  290. package/src/clients/SpokePoolClient/index.ts +11 -0
  291. package/src/clients/index.ts +1 -1
  292. package/src/clients/mocks/MockConfigStoreClient.ts +2 -2
  293. package/src/clients/mocks/MockHubPoolClient.ts +2 -2
  294. package/src/clients/mocks/MockSpokePoolClient.ts +9 -4
  295. package/src/gasPriceOracle/adapters/arbitrum.ts +5 -2
  296. package/src/gasPriceOracle/adapters/ethereum.ts +7 -4
  297. package/src/gasPriceOracle/adapters/linea-viem.ts +3 -1
  298. package/src/gasPriceOracle/adapters/polygon.ts +6 -6
  299. package/src/gasPriceOracle/adapters/solana.ts +45 -0
  300. package/src/gasPriceOracle/index.ts +1 -1
  301. package/src/gasPriceOracle/oracle.ts +20 -4
  302. package/src/gasPriceOracle/types.ts +7 -1
  303. package/src/index.ts +0 -1
  304. package/src/interfaces/SpokePool.ts +14 -0
  305. package/src/relayFeeCalculator/chain-queries/baseQuery.ts +5 -3
  306. package/src/relayFeeCalculator/chain-queries/factory.ts +21 -5
  307. package/src/relayFeeCalculator/chain-queries/index.ts +1 -0
  308. package/src/relayFeeCalculator/chain-queries/svmQuery.ts +193 -0
  309. package/src/utils/AddressUtils.ts +49 -6
  310. package/src/utils/ArrayUtils.ts +12 -0
  311. package/src/utils/EventUtils.ts +11 -11
  312. package/src/utils/JSONUtils.ts +2 -0
  313. package/src/utils/SpokeUtils.ts +7 -3
  314. package/dist/cjs/svm/eventsClient.d.ts +0 -15
  315. package/dist/cjs/svm/eventsClient.js +0 -157
  316. package/dist/cjs/svm/eventsClient.js.map +0 -1
  317. package/dist/cjs/svm/index.d.ts +0 -3
  318. package/dist/cjs/svm/index.js +0 -8
  319. package/dist/cjs/svm/index.js.map +0 -1
  320. package/dist/cjs/svm/types.js.map +0 -1
  321. package/dist/cjs/svm/utils/events.d.ts +0 -8
  322. package/dist/cjs/svm/utils/events.js +0 -47
  323. package/dist/cjs/svm/utils/events.js.map +0 -1
  324. package/dist/cjs/svm/utils/helpers.d.ts +0 -2
  325. package/dist/cjs/svm/utils/helpers.js +0 -19
  326. package/dist/cjs/svm/utils/helpers.js.map +0 -1
  327. package/dist/cjs/svm/utils/index.d.ts +0 -1
  328. package/dist/cjs/svm/utils/index.js +0 -5
  329. package/dist/cjs/svm/utils/index.js.map +0 -1
  330. package/dist/esm/svm/eventsClient.d.ts +0 -51
  331. package/dist/esm/svm/eventsClient.js +0 -195
  332. package/dist/esm/svm/eventsClient.js.map +0 -1
  333. package/dist/esm/svm/index.d.ts +0 -3
  334. package/dist/esm/svm/index.js +0 -5
  335. package/dist/esm/svm/index.js.map +0 -1
  336. package/dist/esm/svm/types.js.map +0 -1
  337. package/dist/esm/svm/utils/events.d.ts +0 -17
  338. package/dist/esm/svm/utils/events.js +0 -55
  339. package/dist/esm/svm/utils/events.js.map +0 -1
  340. package/dist/esm/svm/utils/helpers.d.ts +0 -5
  341. package/dist/esm/svm/utils/helpers.js +0 -18
  342. package/dist/esm/svm/utils/helpers.js.map +0 -1
  343. package/dist/esm/svm/utils/index.d.ts +0 -1
  344. package/dist/esm/svm/utils/index.js +0 -2
  345. package/dist/esm/svm/utils/index.js.map +0 -1
  346. package/dist/types/svm/eventsClient.d.ts +0 -52
  347. package/dist/types/svm/eventsClient.d.ts.map +0 -1
  348. package/dist/types/svm/index.d.ts +0 -4
  349. package/dist/types/svm/index.d.ts.map +0 -1
  350. package/dist/types/svm/types.d.ts.map +0 -1
  351. package/dist/types/svm/utils/events.d.ts +0 -18
  352. package/dist/types/svm/utils/events.d.ts.map +0 -1
  353. package/dist/types/svm/utils/helpers.d.ts +0 -6
  354. package/dist/types/svm/utils/helpers.d.ts.map +0 -1
  355. package/dist/types/svm/utils/index.d.ts +0 -2
  356. package/dist/types/svm/utils/index.d.ts.map +0 -1
  357. package/src/svm/eventsClient.ts +0 -199
  358. package/src/svm/index.ts +0 -3
  359. package/src/svm/utils/events.ts +0 -58
  360. package/src/svm/utils/helpers.ts +0 -9
  361. package/src/svm/utils/index.ts +0 -1
  362. /package/dist/cjs/{svm → arch/svm}/types.js +0 -0
  363. /package/dist/esm/{svm → arch/svm}/types.js +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"eventsClient.js","sourceRoot":"","sources":["../../../src/svm/eventsClient.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- export * from "./eventsClient";
2
- export * from "./types";
3
- export * as utils from "./utils";
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.utils = void 0;
4
- var tslib_1 = require("tslib");
5
- tslib_1.__exportStar(require("./eventsClient"), exports);
6
- tslib_1.__exportStar(require("./types"), exports);
7
- exports.utils = tslib_1.__importStar(require("./utils"));
8
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/svm/index.ts"],"names":[],"mappings":";;;;AAAA,yDAA+B;AAC/B,kDAAwB;AACxB,yDAAiC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/svm/types.ts"],"names":[],"mappings":";;;AAmBA,IAAY,aAeX;AAfD,WAAY,aAAa;IACvB,4CAA2B,CAAA;IAC3B,kDAAiC,CAAA;IACjC,4DAA2C,CAAA;IAC3C,wDAAuC,CAAA;IACvC,wEAAuD,CAAA;IACvD,sDAAqC,CAAA;IACrC,kDAAiC,CAAA;IACjC,4CAA2B,CAAA;IAC3B,oDAAmC,CAAA;IACnC,0EAAyD,CAAA;IACzD,wDAAuC,CAAA;IACvC,8DAA6C,CAAA;IAC7C,gDAA+B,CAAA;IAC/B,8DAA6C,CAAA;AAC/C,CAAC,EAfW,aAAa,6BAAb,aAAa,QAexB"}
@@ -1,8 +0,0 @@
1
- import { Idl } from "@coral-xyz/anchor";
2
- import { EventName, EventData } from "../types";
3
- export declare function parseEventData(eventData: any): any;
4
- export declare function decodeEvent(idl: Idl, rawEvent: string): {
5
- data: EventData;
6
- name: EventName;
7
- };
8
- export declare function getEventName(rawName: string): EventName;
@@ -1,47 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getEventName = exports.decodeEvent = exports.parseEventData = void 0;
4
- var anchor_1 = require("@coral-xyz/anchor");
5
- var kit_1 = require("@solana/kit");
6
- var types_1 = require("../types");
7
- function parseEventData(eventData) {
8
- if (!eventData)
9
- return eventData;
10
- if (Array.isArray(eventData)) {
11
- return eventData.map(parseEventData);
12
- }
13
- if (typeof eventData === "object") {
14
- if (eventData.constructor.name === "PublicKey") {
15
- return (0, kit_1.address)(eventData.toString());
16
- }
17
- if (anchor_1.BN.isBN(eventData)) {
18
- return BigInt(eventData.toString());
19
- }
20
- return Object.fromEntries(Object.entries(eventData).map(function (_a) {
21
- var key = _a[0], value = _a[1];
22
- return [snakeToCamel(key), parseEventData(value)];
23
- }));
24
- }
25
- return eventData;
26
- }
27
- exports.parseEventData = parseEventData;
28
- function decodeEvent(idl, rawEvent) {
29
- var event = new anchor_1.BorshEventCoder(idl).decode(rawEvent);
30
- if (!event)
31
- throw new Error("Malformed rawEvent for IDL ".concat(idl.address, ": ").concat(rawEvent));
32
- return {
33
- name: getEventName(event.name),
34
- data: parseEventData(event.data),
35
- };
36
- }
37
- exports.decodeEvent = decodeEvent;
38
- function snakeToCamel(s) {
39
- return s.replace(/(_\w)/g, function (match) { return match[1].toUpperCase(); });
40
- }
41
- function getEventName(rawName) {
42
- if (Object.values(types_1.SVMEventNames).some(function (name) { return rawName.includes(name); }))
43
- return rawName;
44
- throw new Error("Unknown event name: ".concat(rawName));
45
- }
46
- exports.getEventName = getEventName;
47
- //# sourceMappingURL=events.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../../../../src/svm/utils/events.ts"],"names":[],"mappings":";;;AAAA,4CAA6D;AAC7D,mCAAsC;AACtC,kCAA+D;AAM/D,SAAgB,cAAc,CAAC,SAAc;IAC3C,IAAI,CAAC,SAAS;QAAE,OAAO,SAAS,CAAC;IAEjC,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QAC5B,OAAO,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;KACtC;IAED,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;QACjC,IAAI,SAAS,CAAC,WAAW,CAAC,IAAI,KAAK,WAAW,EAAE;YAC9C,OAAO,IAAA,aAAO,EAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;SACtC;QACD,IAAI,WAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;YACtB,OAAO,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;SACrC;QAGD,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,UAAC,EAAY;gBAAX,GAAG,QAAA,EAAE,KAAK,QAAA;YAAM,OAAA,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;QAA1C,CAA0C,CAAC,CAC5F,CAAC;KACH;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAtBD,wCAsBC;AAKD,SAAgB,WAAW,CAAC,GAAQ,EAAE,QAAgB;IACpD,IAAM,KAAK,GAAG,IAAI,wBAAe,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACxD,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,qCAA8B,GAAG,CAAC,OAAO,eAAK,QAAQ,CAAE,CAAC,CAAC;IACtF,OAAO;QACL,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC;QAC9B,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC;KACjC,CAAC;AACJ,CAAC;AAPD,kCAOC;AAKD,SAAS,YAAY,CAAC,CAAS;IAC7B,OAAO,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAtB,CAAsB,CAAC,CAAC;AAChE,CAAC;AAKD,SAAgB,YAAY,CAAC,OAAe;IAC1C,IAAI,MAAM,CAAC,MAAM,CAAC,qBAAa,CAAC,CAAC,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAtB,CAAsB,CAAC;QAAE,OAAO,OAAoB,CAAC;IACrG,MAAM,IAAI,KAAK,CAAC,8BAAuB,OAAO,CAAE,CAAC,CAAC;AACpD,CAAC;AAHD,oCAGC"}
@@ -1,2 +0,0 @@
1
- import web3, { RpcTransport } from "@solana/kit";
2
- export declare function isDevnet(rpc: web3.Rpc<web3.SolanaRpcApiFromTransport<RpcTransport>>): Promise<boolean>;
@@ -1,19 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isDevnet = void 0;
4
- var tslib_1 = require("tslib");
5
- function isDevnet(rpc) {
6
- return tslib_1.__awaiter(this, void 0, void 0, function () {
7
- var genesisHash;
8
- return tslib_1.__generator(this, function (_a) {
9
- switch (_a.label) {
10
- case 0: return [4, rpc.getGenesisHash().send()];
11
- case 1:
12
- genesisHash = _a.sent();
13
- return [2, genesisHash === "EtWTRABZaYq6iMfeYKouRu166VU2xqa1wcaWoxPkrZBG"];
14
- }
15
- });
16
- });
17
- }
18
- exports.isDevnet = isDevnet;
19
- //# sourceMappingURL=helpers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../src/svm/utils/helpers.ts"],"names":[],"mappings":";;;;AAKA,SAAsB,QAAQ,CAAC,GAA2D;;;;;wBACpE,WAAM,GAAG,CAAC,cAAc,EAAE,CAAC,IAAI,EAAE,EAAA;;oBAA/C,WAAW,GAAG,SAAiC;oBACrD,WAAO,WAAW,KAAK,8CAA8C,EAAC;;;;CACvE;AAHD,4BAGC"}
@@ -1 +0,0 @@
1
- export * from "./events";
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- var tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./events"), exports);
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/svm/utils/index.ts"],"names":[],"mappings":";;;AAAA,mDAAyB"}
@@ -1,51 +0,0 @@
1
- import web3, { GetSignaturesForAddressApi, RpcTransport } from "@solana/kit";
2
- import { EventData, EventName, EventWithData } from "./types";
3
- type GetSignaturesForAddressConfig = Parameters<GetSignaturesForAddressApi["getSignaturesForAddress"]>[1];
4
- export declare class SvmSpokeEventsClient {
5
- private rpc;
6
- private svmSpokeAddress;
7
- private svmSpokeEventAuthority;
8
- /**
9
- * Private constructor. Use the async create() method to instantiate.
10
- */
11
- private constructor();
12
- /**
13
- * Factory method to asynchronously create an instance of SvmSpokeEventsClient.
14
- */
15
- static create(rpc: web3.Rpc<web3.SolanaRpcApiFromTransport<RpcTransport>>): Promise<SvmSpokeEventsClient>;
16
- /**
17
- * Queries events for the SvmSpoke program filtered by event name.
18
- *
19
- * @param eventName - The name of the event to filter by.
20
- * @param fromSlot - Optional starting slot.
21
- * @param toSlot - Optional ending slot.
22
- * @param options - Options for fetching signatures.
23
- * @returns A promise that resolves to an array of events matching the eventName.
24
- */
25
- queryEvents<T extends EventData>(eventName: EventName, fromSlot?: bigint, toSlot?: bigint, options?: GetSignaturesForAddressConfig): Promise<EventWithData<T>[]>;
26
- /**
27
- * Queries all events for a specific program.
28
- *
29
- * @param fromSlot - Optional starting slot.
30
- * @param toSlot - Optional ending slot.
31
- * @param options - Options for fetching signatures.
32
- * @returns A promise that resolves to an array of all events with additional metadata.
33
- */
34
- private queryAllEvents;
35
- /**
36
- * Reads events from a transaction signature.
37
- *
38
- * @param txSignature - The transaction signature.
39
- * @param commitment - Commitment level.
40
- * @returns A promise that resolves to an array of events.
41
- */
42
- private readEventsFromSignature;
43
- /**
44
- * Processes events from a transaction.
45
- *
46
- * @param txResult - The transaction result.
47
- * @returns A promise that resolves to an array of events with their data and name.
48
- */
49
- private processEventFromTx;
50
- }
51
- export {};
@@ -1,195 +0,0 @@
1
- import { __assign, __awaiter, __generator, __spreadArray } from "tslib";
2
- import { getDeployedAddress, SvmSpokeIdl } from "@across-protocol/contracts";
3
- import { getSolanaChainId } from "@across-protocol/contracts/dist/src/svm/web3-v1";
4
- import web3 from "@solana/kit";
5
- import { bs58 } from "../utils";
6
- import { decodeEvent } from "./utils/events";
7
- import { isDevnet } from "./utils/helpers";
8
- var SvmSpokeEventsClient = /** @class */ (function () {
9
- /**
10
- * Private constructor. Use the async create() method to instantiate.
11
- */
12
- function SvmSpokeEventsClient(rpc, svmSpokeAddress, eventAuthority) {
13
- this.rpc = rpc;
14
- this.svmSpokeAddress = svmSpokeAddress;
15
- this.svmSpokeEventAuthority = eventAuthority;
16
- }
17
- /**
18
- * Factory method to asynchronously create an instance of SvmSpokeEventsClient.
19
- */
20
- SvmSpokeEventsClient.create = function (rpc) {
21
- return __awaiter(this, void 0, void 0, function () {
22
- var isTestnet, programId, svmSpokeAddress, svmSpokeEventAuthority;
23
- return __generator(this, function (_a) {
24
- switch (_a.label) {
25
- case 0: return [4 /*yield*/, isDevnet(rpc)];
26
- case 1:
27
- isTestnet = _a.sent();
28
- programId = getDeployedAddress("SvmSpoke", getSolanaChainId(isTestnet ? "devnet" : "mainnet").toString());
29
- if (!programId)
30
- throw new Error("Program not found");
31
- svmSpokeAddress = web3.address(programId);
32
- return [4 /*yield*/, web3.getProgramDerivedAddress({
33
- programAddress: svmSpokeAddress,
34
- seeds: ["__event_authority"],
35
- })];
36
- case 2:
37
- svmSpokeEventAuthority = (_a.sent())[0];
38
- return [2 /*return*/, new SvmSpokeEventsClient(rpc, svmSpokeAddress, svmSpokeEventAuthority)];
39
- }
40
- });
41
- });
42
- };
43
- /**
44
- * Queries events for the SvmSpoke program filtered by event name.
45
- *
46
- * @param eventName - The name of the event to filter by.
47
- * @param fromSlot - Optional starting slot.
48
- * @param toSlot - Optional ending slot.
49
- * @param options - Options for fetching signatures.
50
- * @returns A promise that resolves to an array of events matching the eventName.
51
- */
52
- SvmSpokeEventsClient.prototype.queryEvents = function (eventName, fromSlot, toSlot, options) {
53
- if (options === void 0) { options = { limit: 1000, commitment: "confirmed" }; }
54
- return __awaiter(this, void 0, void 0, function () {
55
- var events;
56
- return __generator(this, function (_a) {
57
- switch (_a.label) {
58
- case 0: return [4 /*yield*/, this.queryAllEvents(fromSlot, toSlot, options)];
59
- case 1:
60
- events = _a.sent();
61
- return [2 /*return*/, events.filter(function (event) { return event.name === eventName; })];
62
- }
63
- });
64
- });
65
- };
66
- /**
67
- * Queries all events for a specific program.
68
- *
69
- * @param fromSlot - Optional starting slot.
70
- * @param toSlot - Optional ending slot.
71
- * @param options - Options for fetching signatures.
72
- * @returns A promise that resolves to an array of all events with additional metadata.
73
- */
74
- SvmSpokeEventsClient.prototype.queryAllEvents = function (fromSlot, toSlot, options) {
75
- if (options === void 0) { options = { limit: 1000, commitment: "confirmed" }; }
76
- return __awaiter(this, void 0, void 0, function () {
77
- var allSignatures, hasMoreSignatures, currentOptions, signatures, filteredSignatures, eventsWithSlots;
78
- var _this = this;
79
- return __generator(this, function (_a) {
80
- switch (_a.label) {
81
- case 0:
82
- allSignatures = [];
83
- hasMoreSignatures = true;
84
- currentOptions = options;
85
- _a.label = 1;
86
- case 1:
87
- if (!hasMoreSignatures) return [3 /*break*/, 3];
88
- return [4 /*yield*/, this.rpc
89
- .getSignaturesForAddress(this.svmSpokeAddress, currentOptions)
90
- .send()];
91
- case 2:
92
- signatures = _a.sent();
93
- // Signatures are sorted by slot in descending order.
94
- allSignatures.push.apply(allSignatures, signatures);
95
- // Update options for the next batch. Set "before" to the last fetched signature.
96
- if (signatures.length > 0) {
97
- currentOptions = __assign(__assign({}, currentOptions), { before: signatures[signatures.length - 1].signature });
98
- }
99
- if (fromSlot && allSignatures.length > 0 && allSignatures[allSignatures.length - 1].slot < fromSlot) {
100
- hasMoreSignatures = false;
101
- }
102
- hasMoreSignatures = Boolean(hasMoreSignatures && currentOptions.limit && signatures.length === currentOptions.limit);
103
- return [3 /*break*/, 1];
104
- case 3:
105
- filteredSignatures = allSignatures.filter(function (signatureTransaction) {
106
- if (fromSlot && signatureTransaction.slot < fromSlot)
107
- return false;
108
- if (toSlot && signatureTransaction.slot > toSlot)
109
- return false;
110
- return true;
111
- });
112
- return [4 /*yield*/, Promise.all(filteredSignatures.map(function (signatureTransaction) { return __awaiter(_this, void 0, void 0, function () {
113
- var events;
114
- return __generator(this, function (_a) {
115
- switch (_a.label) {
116
- case 0: return [4 /*yield*/, this.readEventsFromSignature(signatureTransaction.signature, options.commitment)];
117
- case 1:
118
- events = _a.sent();
119
- return [2 /*return*/, events.map(function (event) { return (__assign(__assign({}, event), { confirmationStatus: signatureTransaction.confirmationStatus, blockTime: signatureTransaction.blockTime, signature: signatureTransaction.signature, slot: signatureTransaction.slot })); })];
120
- }
121
- });
122
- }); }))];
123
- case 4:
124
- eventsWithSlots = _a.sent();
125
- return [2 /*return*/, eventsWithSlots.flat()];
126
- }
127
- });
128
- });
129
- };
130
- /**
131
- * Reads events from a transaction signature.
132
- *
133
- * @param txSignature - The transaction signature.
134
- * @param commitment - Commitment level.
135
- * @returns A promise that resolves to an array of events.
136
- */
137
- SvmSpokeEventsClient.prototype.readEventsFromSignature = function (txSignature, commitment) {
138
- if (commitment === void 0) { commitment = "confirmed"; }
139
- return __awaiter(this, void 0, void 0, function () {
140
- var txResult;
141
- return __generator(this, function (_a) {
142
- switch (_a.label) {
143
- case 0: return [4 /*yield*/, this.rpc
144
- .getTransaction(txSignature, { commitment: commitment, maxSupportedTransactionVersion: 0 })
145
- .send()];
146
- case 1:
147
- txResult = _a.sent();
148
- if (txResult === null)
149
- return [2 /*return*/, []];
150
- return [2 /*return*/, this.processEventFromTx(txResult)];
151
- }
152
- });
153
- });
154
- };
155
- /**
156
- * Processes events from a transaction.
157
- *
158
- * @param txResult - The transaction result.
159
- * @returns A promise that resolves to an array of events with their data and name.
160
- */
161
- SvmSpokeEventsClient.prototype.processEventFromTx = function (txResult) {
162
- var _a, _b, _c, _d, _e, _f, _g, _h;
163
- if (!txResult)
164
- return [];
165
- var events = [];
166
- var accountKeys = txResult.transaction.message.accountKeys;
167
- var messageAccountKeys = __spreadArray([], accountKeys, true);
168
- // Writable accounts come first, then readonly.
169
- // See https://docs.anza.xyz/proposals/versioned-transactions#new-transaction-format
170
- messageAccountKeys.push.apply(messageAccountKeys, ((_c = (_b = (_a = txResult === null || txResult === void 0 ? void 0 : txResult.meta) === null || _a === void 0 ? void 0 : _a.loadedAddresses) === null || _b === void 0 ? void 0 : _b.writable) !== null && _c !== void 0 ? _c : []));
171
- messageAccountKeys.push.apply(messageAccountKeys, ((_f = (_e = (_d = txResult === null || txResult === void 0 ? void 0 : txResult.meta) === null || _d === void 0 ? void 0 : _d.loadedAddresses) === null || _e === void 0 ? void 0 : _e.readonly) !== null && _f !== void 0 ? _f : []));
172
- for (var _i = 0, _j = (_h = (_g = txResult.meta) === null || _g === void 0 ? void 0 : _g.innerInstructions) !== null && _h !== void 0 ? _h : []; _i < _j.length; _i++) {
173
- var ixBlock = _j[_i];
174
- for (var _k = 0, _l = ixBlock.instructions; _k < _l.length; _k++) {
175
- var ix = _l[_k];
176
- var ixProgramId = messageAccountKeys[ix.programIdIndex];
177
- var singleIxAccount = ix.accounts.length === 1 ? messageAccountKeys[ix.accounts[0]] : undefined;
178
- if (ixProgramId !== undefined &&
179
- singleIxAccount !== undefined &&
180
- this.svmSpokeAddress === ixProgramId &&
181
- this.svmSpokeEventAuthority === singleIxAccount) {
182
- var ixData = bs58.decode(ix.data);
183
- // Skip the first 8 bytes (assumed header) and encode the rest.
184
- var eventData = Buffer.from(ixData.slice(8)).toString("base64");
185
- var _m = decodeEvent(SvmSpokeIdl, eventData), name_1 = _m.name, data = _m.data;
186
- events.push({ program: this.svmSpokeAddress, name: name_1, data: data });
187
- }
188
- }
189
- }
190
- return events;
191
- };
192
- return SvmSpokeEventsClient;
193
- }());
194
- export { SvmSpokeEventsClient };
195
- //# sourceMappingURL=eventsClient.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"eventsClient.js","sourceRoot":"","sources":["../../../src/svm/eventsClient.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- export * from "./eventsClient";
2
- export * from "./types";
3
- export * as utils from "./utils";
@@ -1,5 +0,0 @@
1
- export * from "./eventsClient";
2
- export * from "./types";
3
- import * as utils_1 from "./utils";
4
- export { utils_1 as utils };
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/svm/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;yBACD,SAAS;oBAApB,KAAK"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/svm/types.ts"],"names":[],"mappings":"AAmBA,MAAM,CAAN,IAAY,aAeX;AAfD,WAAY,aAAa;IACvB,4CAA2B,CAAA;IAC3B,kDAAiC,CAAA;IACjC,4DAA2C,CAAA;IAC3C,wDAAuC,CAAA;IACvC,wEAAuD,CAAA;IACvD,sDAAqC,CAAA;IACrC,kDAAiC,CAAA;IACjC,4CAA2B,CAAA;IAC3B,oDAAmC,CAAA;IACnC,0EAAyD,CAAA;IACzD,wDAAuC,CAAA;IACvC,8DAA6C,CAAA;IAC7C,gDAA+B,CAAA;IAC/B,8DAA6C,CAAA;AAC/C,CAAC,EAfW,aAAa,KAAb,aAAa,QAexB"}
@@ -1,17 +0,0 @@
1
- import { Idl } from "@coral-xyz/anchor";
2
- import { EventName, EventData } from "../types";
3
- /**
4
- * Parses event data from a transaction.
5
- */
6
- export declare function parseEventData(eventData: any): any;
7
- /**
8
- * Decodes a raw event according to a supplied IDL.
9
- */
10
- export declare function decodeEvent(idl: Idl, rawEvent: string): {
11
- data: EventData;
12
- name: EventName;
13
- };
14
- /**
15
- * Gets the event name from a raw name.
16
- */
17
- export declare function getEventName(rawName: string): EventName;
@@ -1,55 +0,0 @@
1
- import { BN, BorshEventCoder } from "@coral-xyz/anchor";
2
- import { address } from "@solana/kit";
3
- import { SVMEventNames } from "../types";
4
- /**
5
- * Parses event data from a transaction.
6
- */
7
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
8
- export function parseEventData(eventData) {
9
- if (!eventData)
10
- return eventData;
11
- if (Array.isArray(eventData)) {
12
- return eventData.map(parseEventData);
13
- }
14
- if (typeof eventData === "object") {
15
- if (eventData.constructor.name === "PublicKey") {
16
- return address(eventData.toString());
17
- }
18
- if (BN.isBN(eventData)) {
19
- return BigInt(eventData.toString());
20
- }
21
- // Convert each key from snake_case to camelCase and process the value recursively.
22
- return Object.fromEntries(Object.entries(eventData).map(function (_a) {
23
- var key = _a[0], value = _a[1];
24
- return [snakeToCamel(key), parseEventData(value)];
25
- }));
26
- }
27
- return eventData;
28
- }
29
- /**
30
- * Decodes a raw event according to a supplied IDL.
31
- */
32
- export function decodeEvent(idl, rawEvent) {
33
- var event = new BorshEventCoder(idl).decode(rawEvent);
34
- if (!event)
35
- throw new Error("Malformed rawEvent for IDL ".concat(idl.address, ": ").concat(rawEvent));
36
- return {
37
- name: getEventName(event.name),
38
- data: parseEventData(event.data),
39
- };
40
- }
41
- /**
42
- * Converts a snake_case string to camelCase.
43
- */
44
- function snakeToCamel(s) {
45
- return s.replace(/(_\w)/g, function (match) { return match[1].toUpperCase(); });
46
- }
47
- /**
48
- * Gets the event name from a raw name.
49
- */
50
- export function getEventName(rawName) {
51
- if (Object.values(SVMEventNames).some(function (name) { return rawName.includes(name); }))
52
- return rawName;
53
- throw new Error("Unknown event name: ".concat(rawName));
54
- }
55
- //# sourceMappingURL=events.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../../../../src/svm/utils/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,eAAe,EAAO,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAwB,aAAa,EAAE,MAAM,UAAU,CAAC;AAE/D;;GAEG;AACH,8DAA8D;AAC9D,MAAM,UAAU,cAAc,CAAC,SAAc;IAC3C,IAAI,CAAC,SAAS;QAAE,OAAO,SAAS,CAAC;IAEjC,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QAC5B,OAAO,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;KACtC;IAED,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;QACjC,IAAI,SAAS,CAAC,WAAW,CAAC,IAAI,KAAK,WAAW,EAAE;YAC9C,OAAO,OAAO,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;SACtC;QACD,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;YACtB,OAAO,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;SACrC;QAED,mFAAmF;QACnF,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,UAAC,EAAY;gBAAX,GAAG,QAAA,EAAE,KAAK,QAAA;YAAM,OAAA,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;QAA1C,CAA0C,CAAC,CAC5F,CAAC;KACH;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,GAAQ,EAAE,QAAgB;IACpD,IAAM,KAAK,GAAG,IAAI,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACxD,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,qCAA8B,GAAG,CAAC,OAAO,eAAK,QAAQ,CAAE,CAAC,CAAC;IACtF,OAAO;QACL,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC;QAC9B,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC;KACjC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CAAC,CAAS;IAC7B,OAAO,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAtB,CAAsB,CAAC,CAAC;AAChE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,OAAe;IAC1C,IAAI,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAtB,CAAsB,CAAC;QAAE,OAAO,OAAoB,CAAC;IACrG,MAAM,IAAI,KAAK,CAAC,8BAAuB,OAAO,CAAE,CAAC,CAAC;AACpD,CAAC"}
@@ -1,5 +0,0 @@
1
- import web3, { RpcTransport } from "@solana/kit";
2
- /**
3
- * Helper to determine if the current RPC network is devnet.
4
- */
5
- export declare function isDevnet(rpc: web3.Rpc<web3.SolanaRpcApiFromTransport<RpcTransport>>): Promise<boolean>;
@@ -1,18 +0,0 @@
1
- import { __awaiter, __generator } from "tslib";
2
- /**
3
- * Helper to determine if the current RPC network is devnet.
4
- */
5
- export function isDevnet(rpc) {
6
- return __awaiter(this, void 0, void 0, function () {
7
- var genesisHash;
8
- return __generator(this, function (_a) {
9
- switch (_a.label) {
10
- case 0: return [4 /*yield*/, rpc.getGenesisHash().send()];
11
- case 1:
12
- genesisHash = _a.sent();
13
- return [2 /*return*/, genesisHash === "EtWTRABZaYq6iMfeYKouRu166VU2xqa1wcaWoxPkrZBG"];
14
- }
15
- });
16
- });
17
- }
18
- //# sourceMappingURL=helpers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../src/svm/utils/helpers.ts"],"names":[],"mappings":";AAEA;;GAEG;AACH,MAAM,UAAgB,QAAQ,CAAC,GAA2D;;;;;wBACpE,qBAAM,GAAG,CAAC,cAAc,EAAE,CAAC,IAAI,EAAE,EAAA;;oBAA/C,WAAW,GAAG,SAAiC;oBACrD,sBAAO,WAAW,KAAK,8CAA8C,EAAC;;;;CACvE"}
@@ -1 +0,0 @@
1
- export * from "./events";
@@ -1,2 +0,0 @@
1
- export * from "./events";
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/svm/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC"}
@@ -1,52 +0,0 @@
1
- import web3, { GetSignaturesForAddressApi, RpcTransport } from "@solana/kit";
2
- import { EventData, EventName, EventWithData } from "./types";
3
- type GetSignaturesForAddressConfig = Parameters<GetSignaturesForAddressApi["getSignaturesForAddress"]>[1];
4
- export declare class SvmSpokeEventsClient {
5
- private rpc;
6
- private svmSpokeAddress;
7
- private svmSpokeEventAuthority;
8
- /**
9
- * Private constructor. Use the async create() method to instantiate.
10
- */
11
- private constructor();
12
- /**
13
- * Factory method to asynchronously create an instance of SvmSpokeEventsClient.
14
- */
15
- static create(rpc: web3.Rpc<web3.SolanaRpcApiFromTransport<RpcTransport>>): Promise<SvmSpokeEventsClient>;
16
- /**
17
- * Queries events for the SvmSpoke program filtered by event name.
18
- *
19
- * @param eventName - The name of the event to filter by.
20
- * @param fromSlot - Optional starting slot.
21
- * @param toSlot - Optional ending slot.
22
- * @param options - Options for fetching signatures.
23
- * @returns A promise that resolves to an array of events matching the eventName.
24
- */
25
- queryEvents<T extends EventData>(eventName: EventName, fromSlot?: bigint, toSlot?: bigint, options?: GetSignaturesForAddressConfig): Promise<EventWithData<T>[]>;
26
- /**
27
- * Queries all events for a specific program.
28
- *
29
- * @param fromSlot - Optional starting slot.
30
- * @param toSlot - Optional ending slot.
31
- * @param options - Options for fetching signatures.
32
- * @returns A promise that resolves to an array of all events with additional metadata.
33
- */
34
- private queryAllEvents;
35
- /**
36
- * Reads events from a transaction signature.
37
- *
38
- * @param txSignature - The transaction signature.
39
- * @param commitment - Commitment level.
40
- * @returns A promise that resolves to an array of events.
41
- */
42
- private readEventsFromSignature;
43
- /**
44
- * Processes events from a transaction.
45
- *
46
- * @param txResult - The transaction result.
47
- * @returns A promise that resolves to an array of events with their data and name.
48
- */
49
- private processEventFromTx;
50
- }
51
- export {};
52
- //# sourceMappingURL=eventsClient.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"eventsClient.d.ts","sourceRoot":"","sources":["../../../src/svm/eventsClient.ts"],"names":[],"mappings":"AAEA,OAAO,IAAI,EAAE,EAGX,0BAA0B,EAE1B,YAAY,EAEb,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAa9D,KAAK,6BAA6B,GAAG,UAAU,CAAC,0BAA0B,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAI1G,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,GAAG,CAAyD;IACpE,OAAO,CAAC,eAAe,CAAU;IACjC,OAAO,CAAC,sBAAsB,CAAU;IAExC;;OAEG;IACH,OAAO;IAUP;;OAEG;WACiB,MAAM,CACxB,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,yBAAyB,CAAC,YAAY,CAAC,CAAC,GAC1D,OAAO,CAAC,oBAAoB,CAAC;IAYhC;;;;;;;;OAQG;IACU,WAAW,CAAC,CAAC,SAAS,SAAS,EAC1C,SAAS,EAAE,SAAS,EACpB,QAAQ,CAAC,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,GAAE,6BAAwE,GAChF,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;IAK9B;;;;;;;OAOG;YACW,cAAc;IAoD5B;;;;;;OAMG;YACW,uBAAuB;IASrC;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;CAkC3B"}
@@ -1,4 +0,0 @@
1
- export * from "./eventsClient";
2
- export * from "./types";
3
- export * as utils from "./utils";
4
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/svm/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/svm/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,MAAM,MAAM,SAAS,GACjB,cAAc,CAAC,gBAAgB,GAC/B,cAAc,CAAC,aAAa,GAC5B,cAAc,CAAC,yBAAyB,GACxC,cAAc,CAAC,iBAAiB,GAChC,cAAc,CAAC,cAAc,GAC7B,cAAc,CAAC,WAAW,GAC1B,cAAc,CAAC,eAAe,GAC9B,cAAc,CAAC,mBAAmB,GAClC,cAAc,CAAC,WAAW,GAC1B,cAAc,CAAC,cAAc,GAC7B,cAAc,CAAC,0BAA0B,GACzC,cAAc,CAAC,iBAAiB,GAChC,cAAc,CAAC,oBAAoB,GACnC,cAAc,CAAC,oBAAoB,CAAC;AAExC,oBAAY,aAAa;IACvB,WAAW,gBAAgB;IAC3B,cAAc,mBAAmB;IACjC,mBAAmB,wBAAwB;IAC3C,iBAAiB,sBAAsB;IACvC,yBAAyB,8BAA8B;IACvD,gBAAgB,qBAAqB;IACrC,cAAc,mBAAmB;IACjC,WAAW,gBAAgB;IAC3B,eAAe,oBAAoB;IACnC,0BAA0B,+BAA+B;IACzD,iBAAiB,sBAAsB;IACvC,oBAAoB,yBAAyB;IAC7C,aAAa,kBAAkB;IAC/B,oBAAoB,yBAAyB;CAC9C;AAED,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,aAAa,CAAC;AAEnD,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,SAAS,IAAI;IAC/C,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,SAAS,EAAE,aAAa,GAAG,IAAI,CAAC;IAChC,SAAS,EAAE,SAAS,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,CAAC,CAAC;IACR,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC"}
@@ -1,18 +0,0 @@
1
- import { Idl } from "@coral-xyz/anchor";
2
- import { EventName, EventData } from "../types";
3
- /**
4
- * Parses event data from a transaction.
5
- */
6
- export declare function parseEventData(eventData: any): any;
7
- /**
8
- * Decodes a raw event according to a supplied IDL.
9
- */
10
- export declare function decodeEvent(idl: Idl, rawEvent: string): {
11
- data: EventData;
12
- name: EventName;
13
- };
14
- /**
15
- * Gets the event name from a raw name.
16
- */
17
- export declare function getEventName(rawName: string): EventName;
18
- //# sourceMappingURL=events.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../../src/svm/utils/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAE7D,OAAO,EAAE,SAAS,EAAE,SAAS,EAAiB,MAAM,UAAU,CAAC;AAE/D;;GAEG;AAEH,wBAAgB,cAAc,CAAC,SAAS,EAAE,GAAG,GAAG,GAAG,CAsBlD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,SAAS,CAAA;CAAE,CAO5F;AASD;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAGvD"}