@across-protocol/contracts 4.0.13 → 4.0.14-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (248) hide show
  1. package/README.md +6 -2
  2. package/dist/deployments/deployments.json +5 -5
  3. package/dist/scripts/svm/buildHelpers/generateSvmClients.js +8 -4
  4. package/dist/scripts/svm/closeRelayerPdas.js +1 -1
  5. package/dist/scripts/svm/fakeFillWithRandomDistribution.js +8 -7
  6. package/dist/scripts/svm/findFillStatusPdaFromEvent.js +1 -1
  7. package/dist/scripts/svm/nativeDeposit.js +3 -3
  8. package/dist/scripts/svm/queryEvents.js +1 -1
  9. package/dist/scripts/svm/queryEventsV2.js +1 -1
  10. package/dist/scripts/svm/queryFills.js +1 -1
  11. package/dist/scripts/svm/simpleDeposit.js +3 -3
  12. package/dist/scripts/svm/simpleFakeRelayerRepayment.js +19 -12
  13. package/dist/scripts/svm/simpleFill.js +2 -2
  14. package/dist/src/svm/assets/idl/multicall_handler.json +1 -1
  15. package/dist/src/svm/assets/idl/svm_spoke.json +124 -69
  16. package/dist/src/svm/assets/multicall_handler.d.ts +1 -1
  17. package/dist/src/svm/assets/svm_spoke.d.ts +124 -69
  18. package/dist/src/svm/clients/MulticallHandler/programs/multicallHandler.d.ts +2 -2
  19. package/dist/src/svm/clients/MulticallHandler/programs/multicallHandler.js +1 -1
  20. package/dist/src/svm/clients/SvmSpoke/errors/svmSpoke.d.ts +37 -31
  21. package/dist/src/svm/clients/SvmSpoke/errors/svmSpoke.js +55 -46
  22. package/dist/src/svm/clients/SvmSpoke/instructions/bridgeTokensToHubPool.js +1 -1
  23. package/dist/src/svm/clients/SvmSpoke/instructions/claimRelayerRefund.js +1 -1
  24. package/dist/src/svm/clients/SvmSpoke/instructions/deposit.d.ts +2 -2
  25. package/dist/src/svm/clients/SvmSpoke/instructions/deposit.js +4 -4
  26. package/dist/src/svm/clients/SvmSpoke/instructions/depositNow.d.ts +2 -2
  27. package/dist/src/svm/clients/SvmSpoke/instructions/depositNow.js +4 -4
  28. package/dist/src/svm/clients/SvmSpoke/instructions/executeRelayerRefundLeaf.js +1 -1
  29. package/dist/src/svm/clients/SvmSpoke/instructions/executeRelayerRefundLeafDeferred.js +1 -1
  30. package/dist/src/svm/clients/SvmSpoke/instructions/executeSlowRelayLeaf.js +2 -2
  31. package/dist/src/svm/clients/SvmSpoke/instructions/fillRelay.js +1 -1
  32. package/dist/src/svm/clients/SvmSpoke/instructions/handleReceiveMessage.d.ts +1 -1
  33. package/dist/src/svm/clients/SvmSpoke/instructions/handleReceiveMessage.js +6 -6
  34. package/dist/src/svm/clients/SvmSpoke/instructions/unsafeDeposit.d.ts +2 -2
  35. package/dist/src/svm/clients/SvmSpoke/instructions/unsafeDeposit.js +4 -4
  36. package/dist/src/svm/clients/SvmSpoke/programs/svmSpoke.d.ts +2 -2
  37. package/dist/src/svm/clients/SvmSpoke/programs/svmSpoke.js +1 -1
  38. package/dist/src/svm/clients/SvmSpoke/types/filledRelay.d.ts +2 -2
  39. package/dist/src/svm/clients/SvmSpoke/types/filledRelay.js +2 -2
  40. package/dist/src/svm/clients/SvmSpoke/types/fundsDeposited.d.ts +2 -2
  41. package/dist/src/svm/clients/SvmSpoke/types/fundsDeposited.js +2 -2
  42. package/dist/src/svm/clients/SvmSpoke/types/relayData.d.ts +2 -2
  43. package/dist/src/svm/clients/SvmSpoke/types/relayData.js +2 -2
  44. package/dist/src/svm/clients/SvmSpoke/types/requestedSlowFill.d.ts +2 -2
  45. package/dist/src/svm/clients/SvmSpoke/types/requestedSlowFill.js +2 -2
  46. package/dist/src/svm/clients/index.d.ts +1 -3
  47. package/dist/src/svm/clients/index.js +1 -5
  48. package/dist/src/svm/web3-v1/helpers.d.ts +6 -6
  49. package/dist/src/svm/web3-v1/helpers.js +2 -2
  50. package/dist/src/svm/web3-v1/relayHashUtils.js +3 -3
  51. package/dist/src/svm/web3-v1/solanaProgramUtils.d.ts +1 -1
  52. package/dist/src/svm/web3-v1/solanaProgramUtils.js +17 -7
  53. package/dist/src/types/svm.d.ts +3 -3
  54. package/dist/target/types/multicall_handler.d.ts +1 -1
  55. package/dist/target/types/svm_spoke.d.ts +124 -69
  56. package/dist/test/svm/SvmSpoke.Deposit.js +21 -3
  57. package/dist/test/svm/SvmSpoke.Fill.AcrossPlus.js +3 -3
  58. package/dist/test/svm/SvmSpoke.Fill.js +3 -3
  59. package/dist/test/svm/SvmSpoke.SlowFill.AcrossPlus.js +3 -3
  60. package/dist/test/svm/SvmSpoke.SlowFill.js +2 -2
  61. package/dist/test/svm/SvmSpoke.common.js +1 -1
  62. package/package.json +4 -4
  63. package/dist/src/svm/clients/MessageTransmitter/accounts/index.d.ts +0 -10
  64. package/dist/src/svm/clients/MessageTransmitter/accounts/index.js +0 -26
  65. package/dist/src/svm/clients/MessageTransmitter/accounts/messageSent.d.ts +0 -28
  66. package/dist/src/svm/clients/MessageTransmitter/accounts/messageSent.js +0 -64
  67. package/dist/src/svm/clients/MessageTransmitter/accounts/messageTransmitter.d.ts +0 -46
  68. package/dist/src/svm/clients/MessageTransmitter/accounts/messageTransmitter.js +0 -82
  69. package/dist/src/svm/clients/MessageTransmitter/accounts/usedNonces.d.ts +0 -31
  70. package/dist/src/svm/clients/MessageTransmitter/accounts/usedNonces.js +0 -70
  71. package/dist/src/svm/clients/MessageTransmitter/errors/index.d.ts +0 -8
  72. package/dist/src/svm/clients/MessageTransmitter/errors/index.js +0 -24
  73. package/dist/src/svm/clients/MessageTransmitter/errors/messageTransmitter.d.ts +0 -83
  74. package/dist/src/svm/clients/MessageTransmitter/errors/messageTransmitter.js +0 -124
  75. package/dist/src/svm/clients/MessageTransmitter/index.d.ts +0 -12
  76. package/dist/src/svm/clients/MessageTransmitter/index.js +0 -28
  77. package/dist/src/svm/clients/MessageTransmitter/instructions/acceptOwnership.d.ts +0 -45
  78. package/dist/src/svm/clients/MessageTransmitter/instructions/acceptOwnership.js +0 -85
  79. package/dist/src/svm/clients/MessageTransmitter/instructions/disableAttester.d.ts +0 -55
  80. package/dist/src/svm/clients/MessageTransmitter/instructions/disableAttester.js +0 -105
  81. package/dist/src/svm/clients/MessageTransmitter/instructions/enableAttester.d.ts +0 -55
  82. package/dist/src/svm/clients/MessageTransmitter/instructions/enableAttester.js +0 -105
  83. package/dist/src/svm/clients/MessageTransmitter/instructions/getNoncePda.d.ts +0 -43
  84. package/dist/src/svm/clients/MessageTransmitter/instructions/getNoncePda.js +0 -82
  85. package/dist/src/svm/clients/MessageTransmitter/instructions/index.d.ts +0 -25
  86. package/dist/src/svm/clients/MessageTransmitter/instructions/index.js +0 -41
  87. package/dist/src/svm/clients/MessageTransmitter/instructions/initialize.d.ts +0 -70
  88. package/dist/src/svm/clients/MessageTransmitter/instructions/initialize.js +0 -123
  89. package/dist/src/svm/clients/MessageTransmitter/instructions/isNonceUsed.d.ts +0 -42
  90. package/dist/src/svm/clients/MessageTransmitter/instructions/isNonceUsed.js +0 -77
  91. package/dist/src/svm/clients/MessageTransmitter/instructions/pause.d.ts +0 -45
  92. package/dist/src/svm/clients/MessageTransmitter/instructions/pause.js +0 -85
  93. package/dist/src/svm/clients/MessageTransmitter/instructions/receiveMessage.d.ts +0 -67
  94. package/dist/src/svm/clients/MessageTransmitter/instructions/receiveMessage.js +0 -113
  95. package/dist/src/svm/clients/MessageTransmitter/instructions/reclaimEventAccount.d.ts +0 -48
  96. package/dist/src/svm/clients/MessageTransmitter/instructions/reclaimEventAccount.js +0 -94
  97. package/dist/src/svm/clients/MessageTransmitter/instructions/replaceMessage.d.ts +0 -64
  98. package/dist/src/svm/clients/MessageTransmitter/instructions/replaceMessage.js +0 -132
  99. package/dist/src/svm/clients/MessageTransmitter/instructions/sendMessage.d.ts +0 -61
  100. package/dist/src/svm/clients/MessageTransmitter/instructions/sendMessage.js +0 -112
  101. package/dist/src/svm/clients/MessageTransmitter/instructions/sendMessageWithCaller.d.ts +0 -64
  102. package/dist/src/svm/clients/MessageTransmitter/instructions/sendMessageWithCaller.js +0 -117
  103. package/dist/src/svm/clients/MessageTransmitter/instructions/setMaxMessageBodySize.d.ts +0 -49
  104. package/dist/src/svm/clients/MessageTransmitter/instructions/setMaxMessageBodySize.js +0 -94
  105. package/dist/src/svm/clients/MessageTransmitter/instructions/setSignatureThreshold.d.ts +0 -49
  106. package/dist/src/svm/clients/MessageTransmitter/instructions/setSignatureThreshold.js +0 -97
  107. package/dist/src/svm/clients/MessageTransmitter/instructions/transferOwnership.d.ts +0 -49
  108. package/dist/src/svm/clients/MessageTransmitter/instructions/transferOwnership.js +0 -91
  109. package/dist/src/svm/clients/MessageTransmitter/instructions/unpause.d.ts +0 -45
  110. package/dist/src/svm/clients/MessageTransmitter/instructions/unpause.js +0 -85
  111. package/dist/src/svm/clients/MessageTransmitter/instructions/updateAttesterManager.d.ts +0 -49
  112. package/dist/src/svm/clients/MessageTransmitter/instructions/updateAttesterManager.js +0 -94
  113. package/dist/src/svm/clients/MessageTransmitter/instructions/updatePauser.d.ts +0 -49
  114. package/dist/src/svm/clients/MessageTransmitter/instructions/updatePauser.js +0 -91
  115. package/dist/src/svm/clients/MessageTransmitter/programs/index.d.ts +0 -8
  116. package/dist/src/svm/clients/MessageTransmitter/programs/index.js +0 -24
  117. package/dist/src/svm/clients/MessageTransmitter/programs/messageTransmitter.d.ts +0 -78
  118. package/dist/src/svm/clients/MessageTransmitter/programs/messageTransmitter.js +0 -112
  119. package/dist/src/svm/clients/MessageTransmitter/shared/index.d.ts +0 -49
  120. package/dist/src/svm/clients/MessageTransmitter/shared/index.js +0 -94
  121. package/dist/src/svm/clients/MessageTransmitter/types/attesterDisabled.d.ts +0 -15
  122. package/dist/src/svm/clients/MessageTransmitter/types/attesterDisabled.js +0 -22
  123. package/dist/src/svm/clients/MessageTransmitter/types/attesterEnabled.d.ts +0 -15
  124. package/dist/src/svm/clients/MessageTransmitter/types/attesterEnabled.js +0 -22
  125. package/dist/src/svm/clients/MessageTransmitter/types/attesterManagerUpdated.d.ts +0 -16
  126. package/dist/src/svm/clients/MessageTransmitter/types/attesterManagerUpdated.js +0 -28
  127. package/dist/src/svm/clients/MessageTransmitter/types/handleReceiveMessageParams.d.ts +0 -18
  128. package/dist/src/svm/clients/MessageTransmitter/types/handleReceiveMessageParams.js +0 -32
  129. package/dist/src/svm/clients/MessageTransmitter/types/index.d.ts +0 -20
  130. package/dist/src/svm/clients/MessageTransmitter/types/index.js +0 -36
  131. package/dist/src/svm/clients/MessageTransmitter/types/mathError.d.ts +0 -17
  132. package/dist/src/svm/clients/MessageTransmitter/types/mathError.js +0 -29
  133. package/dist/src/svm/clients/MessageTransmitter/types/maxMessageBodySizeUpdated.d.ts +0 -17
  134. package/dist/src/svm/clients/MessageTransmitter/types/maxMessageBodySizeUpdated.js +0 -22
  135. package/dist/src/svm/clients/MessageTransmitter/types/messageReceived.d.ts +0 -25
  136. package/dist/src/svm/clients/MessageTransmitter/types/messageReceived.js +0 -34
  137. package/dist/src/svm/clients/MessageTransmitter/types/ownershipTransferStarted.d.ts +0 -16
  138. package/dist/src/svm/clients/MessageTransmitter/types/ownershipTransferStarted.js +0 -28
  139. package/dist/src/svm/clients/MessageTransmitter/types/ownershipTransferred.d.ts +0 -16
  140. package/dist/src/svm/clients/MessageTransmitter/types/ownershipTransferred.js +0 -28
  141. package/dist/src/svm/clients/MessageTransmitter/types/pause.d.ts +0 -13
  142. package/dist/src/svm/clients/MessageTransmitter/types/pause.js +0 -22
  143. package/dist/src/svm/clients/MessageTransmitter/types/pauserChanged.d.ts +0 -15
  144. package/dist/src/svm/clients/MessageTransmitter/types/pauserChanged.js +0 -22
  145. package/dist/src/svm/clients/MessageTransmitter/types/signatureThresholdUpdated.d.ts +0 -16
  146. package/dist/src/svm/clients/MessageTransmitter/types/signatureThresholdUpdated.js +0 -28
  147. package/dist/src/svm/clients/MessageTransmitter/types/unpause.d.ts +0 -13
  148. package/dist/src/svm/clients/MessageTransmitter/types/unpause.js +0 -22
  149. package/dist/src/svm/clients/TokenMessengerMinter/accounts/index.d.ts +0 -12
  150. package/dist/src/svm/clients/TokenMessengerMinter/accounts/index.js +0 -28
  151. package/dist/src/svm/clients/TokenMessengerMinter/accounts/localToken.d.ts +0 -43
  152. package/dist/src/svm/clients/TokenMessengerMinter/accounts/localToken.js +0 -82
  153. package/dist/src/svm/clients/TokenMessengerMinter/accounts/remoteTokenMessenger.d.ts +0 -29
  154. package/dist/src/svm/clients/TokenMessengerMinter/accounts/remoteTokenMessenger.js +0 -71
  155. package/dist/src/svm/clients/TokenMessengerMinter/accounts/tokenMessenger.d.ts +0 -35
  156. package/dist/src/svm/clients/TokenMessengerMinter/accounts/tokenMessenger.js +0 -74
  157. package/dist/src/svm/clients/TokenMessengerMinter/accounts/tokenMinter.d.ts +0 -33
  158. package/dist/src/svm/clients/TokenMessengerMinter/accounts/tokenMinter.js +0 -72
  159. package/dist/src/svm/clients/TokenMessengerMinter/accounts/tokenPair.d.ts +0 -33
  160. package/dist/src/svm/clients/TokenMessengerMinter/accounts/tokenPair.js +0 -72
  161. package/dist/src/svm/clients/TokenMessengerMinter/errors/index.d.ts +0 -8
  162. package/dist/src/svm/clients/TokenMessengerMinter/errors/index.js +0 -24
  163. package/dist/src/svm/clients/TokenMessengerMinter/errors/tokenMessengerMinter.d.ts +0 -45
  164. package/dist/src/svm/clients/TokenMessengerMinter/errors/tokenMessengerMinter.js +0 -67
  165. package/dist/src/svm/clients/TokenMessengerMinter/index.d.ts +0 -12
  166. package/dist/src/svm/clients/TokenMessengerMinter/index.js +0 -28
  167. package/dist/src/svm/clients/TokenMessengerMinter/instructions/acceptOwnership.d.ts +0 -45
  168. package/dist/src/svm/clients/TokenMessengerMinter/instructions/acceptOwnership.js +0 -82
  169. package/dist/src/svm/clients/TokenMessengerMinter/instructions/addLocalToken.d.ts +0 -63
  170. package/dist/src/svm/clients/TokenMessengerMinter/instructions/addLocalToken.js +0 -115
  171. package/dist/src/svm/clients/TokenMessengerMinter/instructions/addRemoteTokenMessenger.d.ts +0 -61
  172. package/dist/src/svm/clients/TokenMessengerMinter/instructions/addRemoteTokenMessenger.js +0 -110
  173. package/dist/src/svm/clients/TokenMessengerMinter/instructions/burnTokenCustody.d.ts +0 -64
  174. package/dist/src/svm/clients/TokenMessengerMinter/instructions/burnTokenCustody.js +0 -117
  175. package/dist/src/svm/clients/TokenMessengerMinter/instructions/depositForBurn.d.ts +0 -94
  176. package/dist/src/svm/clients/TokenMessengerMinter/instructions/depositForBurn.js +0 -161
  177. package/dist/src/svm/clients/TokenMessengerMinter/instructions/depositForBurnWithCaller.d.ts +0 -97
  178. package/dist/src/svm/clients/TokenMessengerMinter/instructions/depositForBurnWithCaller.js +0 -166
  179. package/dist/src/svm/clients/TokenMessengerMinter/instructions/handleReceiveMessage.d.ts +0 -79
  180. package/dist/src/svm/clients/TokenMessengerMinter/instructions/handleReceiveMessage.js +0 -132
  181. package/dist/src/svm/clients/TokenMessengerMinter/instructions/index.d.ts +0 -26
  182. package/dist/src/svm/clients/TokenMessengerMinter/instructions/index.js +0 -42
  183. package/dist/src/svm/clients/TokenMessengerMinter/instructions/initialize.d.ts +0 -73
  184. package/dist/src/svm/clients/TokenMessengerMinter/instructions/initialize.js +0 -124
  185. package/dist/src/svm/clients/TokenMessengerMinter/instructions/linkTokenPair.d.ts +0 -64
  186. package/dist/src/svm/clients/TokenMessengerMinter/instructions/linkTokenPair.js +0 -109
  187. package/dist/src/svm/clients/TokenMessengerMinter/instructions/pause.d.ts +0 -45
  188. package/dist/src/svm/clients/TokenMessengerMinter/instructions/pause.js +0 -82
  189. package/dist/src/svm/clients/TokenMessengerMinter/instructions/removeLocalToken.d.ts +0 -57
  190. package/dist/src/svm/clients/TokenMessengerMinter/instructions/removeLocalToken.js +0 -105
  191. package/dist/src/svm/clients/TokenMessengerMinter/instructions/removeRemoteTokenMessenger.d.ts +0 -51
  192. package/dist/src/svm/clients/TokenMessengerMinter/instructions/removeRemoteTokenMessenger.js +0 -94
  193. package/dist/src/svm/clients/TokenMessengerMinter/instructions/replaceDepositForBurn.d.ts +0 -79
  194. package/dist/src/svm/clients/TokenMessengerMinter/instructions/replaceDepositForBurn.js +0 -150
  195. package/dist/src/svm/clients/TokenMessengerMinter/instructions/setMaxBurnAmountPerMessage.d.ts +0 -52
  196. package/dist/src/svm/clients/TokenMessengerMinter/instructions/setMaxBurnAmountPerMessage.js +0 -97
  197. package/dist/src/svm/clients/TokenMessengerMinter/instructions/setTokenController.d.ts +0 -52
  198. package/dist/src/svm/clients/TokenMessengerMinter/instructions/setTokenController.js +0 -91
  199. package/dist/src/svm/clients/TokenMessengerMinter/instructions/transferOwnership.d.ts +0 -49
  200. package/dist/src/svm/clients/TokenMessengerMinter/instructions/transferOwnership.js +0 -88
  201. package/dist/src/svm/clients/TokenMessengerMinter/instructions/unlinkTokenPair.d.ts +0 -51
  202. package/dist/src/svm/clients/TokenMessengerMinter/instructions/unlinkTokenPair.js +0 -91
  203. package/dist/src/svm/clients/TokenMessengerMinter/instructions/unpause.d.ts +0 -45
  204. package/dist/src/svm/clients/TokenMessengerMinter/instructions/unpause.js +0 -82
  205. package/dist/src/svm/clients/TokenMessengerMinter/instructions/updatePauser.d.ts +0 -52
  206. package/dist/src/svm/clients/TokenMessengerMinter/instructions/updatePauser.js +0 -91
  207. package/dist/src/svm/clients/TokenMessengerMinter/programs/index.d.ts +0 -8
  208. package/dist/src/svm/clients/TokenMessengerMinter/programs/index.js +0 -24
  209. package/dist/src/svm/clients/TokenMessengerMinter/programs/tokenMessengerMinter.d.ts +0 -83
  210. package/dist/src/svm/clients/TokenMessengerMinter/programs/tokenMessengerMinter.js +0 -124
  211. package/dist/src/svm/clients/TokenMessengerMinter/shared/index.d.ts +0 -49
  212. package/dist/src/svm/clients/TokenMessengerMinter/shared/index.js +0 -94
  213. package/dist/src/svm/clients/TokenMessengerMinter/types/depositForBurn.d.ts +0 -31
  214. package/dist/src/svm/clients/TokenMessengerMinter/types/depositForBurn.js +0 -40
  215. package/dist/src/svm/clients/TokenMessengerMinter/types/index.d.ts +0 -24
  216. package/dist/src/svm/clients/TokenMessengerMinter/types/index.js +0 -40
  217. package/dist/src/svm/clients/TokenMessengerMinter/types/localTokenAdded.d.ts +0 -16
  218. package/dist/src/svm/clients/TokenMessengerMinter/types/localTokenAdded.js +0 -28
  219. package/dist/src/svm/clients/TokenMessengerMinter/types/localTokenRemoved.d.ts +0 -16
  220. package/dist/src/svm/clients/TokenMessengerMinter/types/localTokenRemoved.js +0 -28
  221. package/dist/src/svm/clients/TokenMessengerMinter/types/mintAndWithdraw.d.ts +0 -21
  222. package/dist/src/svm/clients/TokenMessengerMinter/types/mintAndWithdraw.js +0 -30
  223. package/dist/src/svm/clients/TokenMessengerMinter/types/ownershipTransferStarted.d.ts +0 -16
  224. package/dist/src/svm/clients/TokenMessengerMinter/types/ownershipTransferStarted.js +0 -28
  225. package/dist/src/svm/clients/TokenMessengerMinter/types/ownershipTransferred.d.ts +0 -16
  226. package/dist/src/svm/clients/TokenMessengerMinter/types/ownershipTransferred.js +0 -28
  227. package/dist/src/svm/clients/TokenMessengerMinter/types/pause.d.ts +0 -13
  228. package/dist/src/svm/clients/TokenMessengerMinter/types/pause.js +0 -22
  229. package/dist/src/svm/clients/TokenMessengerMinter/types/pauserChanged.d.ts +0 -15
  230. package/dist/src/svm/clients/TokenMessengerMinter/types/pauserChanged.js +0 -22
  231. package/dist/src/svm/clients/TokenMessengerMinter/types/remoteTokenMessengerAdded.d.ts +0 -16
  232. package/dist/src/svm/clients/TokenMessengerMinter/types/remoteTokenMessengerAdded.js +0 -28
  233. package/dist/src/svm/clients/TokenMessengerMinter/types/remoteTokenMessengerRemoved.d.ts +0 -16
  234. package/dist/src/svm/clients/TokenMessengerMinter/types/remoteTokenMessengerRemoved.js +0 -28
  235. package/dist/src/svm/clients/TokenMessengerMinter/types/setBurnLimitPerMessage.d.ts +0 -19
  236. package/dist/src/svm/clients/TokenMessengerMinter/types/setBurnLimitPerMessage.js +0 -28
  237. package/dist/src/svm/clients/TokenMessengerMinter/types/setTokenController.d.ts +0 -15
  238. package/dist/src/svm/clients/TokenMessengerMinter/types/setTokenController.js +0 -22
  239. package/dist/src/svm/clients/TokenMessengerMinter/types/tokenCustodyBurned.d.ts +0 -19
  240. package/dist/src/svm/clients/TokenMessengerMinter/types/tokenCustodyBurned.js +0 -28
  241. package/dist/src/svm/clients/TokenMessengerMinter/types/tokenMinterError.d.ts +0 -23
  242. package/dist/src/svm/clients/TokenMessengerMinter/types/tokenMinterError.js +0 -35
  243. package/dist/src/svm/clients/TokenMessengerMinter/types/tokenPairLinked.d.ts +0 -17
  244. package/dist/src/svm/clients/TokenMessengerMinter/types/tokenPairLinked.js +0 -30
  245. package/dist/src/svm/clients/TokenMessengerMinter/types/tokenPairUnlinked.d.ts +0 -17
  246. package/dist/src/svm/clients/TokenMessengerMinter/types/tokenPairUnlinked.js +0 -30
  247. package/dist/src/svm/clients/TokenMessengerMinter/types/unpause.d.ts +0 -13
  248. package/dist/src/svm/clients/TokenMessengerMinter/types/unpause.js +0 -22
package/README.md CHANGED
@@ -95,6 +95,7 @@ export SVM_CHAIN_ID=$(cast to-dec $(cast shr $(cast shl $(cast keccak solana-dev
95
95
  export HUB_POOL=0x14224e63716afAcE30C9a417E0542281869f7d9e # This is for sepolia, update for mainnet
96
96
  export DEPOSIT_QUOTE_TIME_BUFFER=3600
97
97
  export FILL_DEADLINE_BUFFER=21600
98
+ export MAX_LEN=$(( 2 * $(stat -c %s target/deploy/$PROGRAM.so) )) # Reserve twice the size of the program for future upgrades
98
99
  ```
99
100
 
100
101
  #### Initial deployment
@@ -103,11 +104,14 @@ Deploy the program and set the upgrade authority to the multisig:
103
104
 
104
105
  ```shell
105
106
  solana program deploy \
106
- --url $RPC_URL target/deploy/$PROGRAM.so \
107
+ --url $RPC_URL \
107
108
  --keypair $KEYPAIR \
108
109
  --program-id target/deploy/$PROGRAM-keypair.json \
110
+ --max-len $MAX_LEN \
109
111
  --with-compute-unit-price 50000 \
110
- --max-sign-attempts 100
112
+ --max-sign-attempts 100 \
113
+ --use-rpc \
114
+ target/deploy/$PROGRAM.so
111
115
  solana program set-upgrade-authority \
112
116
  --url $RPC_URL \
113
117
  --keypair $KEYPAIR \
@@ -35,7 +35,7 @@
35
35
  "Cher_Adapter": { "address": "0x0c9d064523177dBB55CFE52b9D0c485FBFc35FD2", "blockNumber": 21597341 },
36
36
  "Lens_Adapter": { "address": "0x63AC22131eD457aeCbD63e6c4C7eeC7BBC74fF1F", "blockNumber": 22167069 },
37
37
  "DoctorWho_Adapter": { "address": "0xFADcC43096756e1527306FD92982FEbBe3c629Fa", "blockNumber": 21773451 },
38
- "Solana_Adapter": { "address": "0x1E22A3146439C68A2d247448372AcAEe9E201AB1", "blockNumber": 22566473 }
38
+ "Solana_Adapter": { "address": "0x9F788694934fD2Ed34D5340B9a76EB34f2bFD7B3", "blockNumber": 22595936 }
39
39
  },
40
40
  "10": {
41
41
  "SpokePool": { "address": "0x6f26Bf09B1C792e3228e5467807a900A503c0281", "blockNumber": 93903076 },
@@ -226,12 +226,12 @@
226
226
  },
227
227
  "34268394551451": {
228
228
  "SvmSpoke": {
229
- "address": "JAZWcGrpSWNPTBj8QtJ9UyQqhJCDhG9GJkDeMf5NQBiq",
230
- "blockNumber": 317101505
229
+ "address": "DLv3NggMiSaef97YCkew5xKUHDh13tVGZ7tydt3ZeAru",
230
+ "blockNumber": 349323531
231
231
  },
232
232
  "MulticallHandler": {
233
- "address": "Fk1RpqsfeWt8KnFCTW9NQVdVxYvxuqjGn6iPB9wrmM8h",
234
- "blockNumber": 317112562
233
+ "address": "HaQe51FWtnmaEcuYEfPA7MRCXKrtqptat4oJdJ8zV5Be",
234
+ "blockNumber": 349332183
235
235
  },
236
236
  "MessageTransmitter": {
237
237
  "address": "CCTPmbSD7gX1bxKPAmg77w8oFzNFpaQiQUWD43TKaecd",
@@ -16,7 +16,11 @@ codama.accept((0, renderers_js_1.renderVisitor)(path_1.default.join(exports.clie
16
16
  // Generate MulticallHandler clients
17
17
  codama = (0, codama_1.createFromRoot)((0, nodes_from_anchor_1.rootNodeFromAnchor)(assets_1.MulticallHandlerIdl));
18
18
  codama.accept((0, renderers_js_1.renderVisitor)(path_1.default.join(exports.clientsPath, "MulticallHandler")));
19
- codama = (0, codama_1.createFromRoot)((0, nodes_from_anchor_1.rootNodeFromAnchor)(assets_1.MessageTransmitterIdl));
20
- codama.accept((0, renderers_js_1.renderVisitor)(path_1.default.join(exports.clientsPath, "MessageTransmitter")));
21
- codama = (0, codama_1.createFromRoot)((0, nodes_from_anchor_1.rootNodeFromAnchor)(assets_1.TokenMessengerMinterIdl));
22
- codama.accept((0, renderers_js_1.renderVisitor)(path_1.default.join(exports.clientsPath, "TokenMessengerMinter")));
19
+ // codama = createFromRoot(rootNodeFromAnchor(MessageTransmitterIdl as AnchorIdl));
20
+ // codama.accept(
21
+ // renderJavaScriptVisitor(path.join(clientsPath, "MessageTransmitter"))
22
+ // );
23
+ // codama = createFromRoot(rootNodeFromAnchor(TokenMessengerMinterIdl as AnchorIdl));
24
+ // codama.accept(
25
+ // renderJavaScriptVisitor(path.join(clientsPath, "TokenMessengerMinter"))
26
+ // );
@@ -82,7 +82,7 @@ async function closeFillPda(eventData, seed) {
82
82
  exclusiveRelayer: new web3_js_1.PublicKey(eventData.exclusiveRelayer),
83
83
  inputToken: new web3_js_1.PublicKey(eventData.inputToken),
84
84
  outputToken: new web3_js_1.PublicKey(eventData.outputToken),
85
- inputAmount: new anchor_1.BN(eventData.inputAmount),
85
+ inputAmount: eventData.inputAmount,
86
86
  outputAmount: new anchor_1.BN(eventData.outputAmount),
87
87
  originChainId: new anchor_1.BN(eventData.originChainId),
88
88
  depositId: eventData.depositId,
@@ -48,10 +48,10 @@ const argv = (0, yargs_1.default)((0, helpers_1.hideBin)(process.argv))
48
48
  .option("exclusiveRelayer", { type: "string", demandOption: false, describe: "Exclusive relayer public key" })
49
49
  .option("inputToken", { type: "string", demandOption: true, describe: "Input token public key" })
50
50
  .option("outputToken", { type: "string", demandOption: true, describe: "Output token public key" })
51
- .option("inputAmount", { type: "number", demandOption: true, describe: "Input amount" })
51
+ .option("inputAmount", { type: "string", demandOption: true, describe: "Input amount" })
52
52
  .option("outputAmount", { type: "number", demandOption: true, describe: "Output amount" })
53
53
  .option("originChainId", { type: "string", demandOption: true, describe: "Origin chain ID" })
54
- .option("depositId", { type: "array", demandOption: true, describe: "Deposit ID" })
54
+ .option("depositId", { type: "string", demandOption: true, describe: "Deposit ID" })
55
55
  .option("fillDeadline", { type: "number", demandOption: false, describe: "Fill deadline" })
56
56
  .option("exclusivityDeadline", { type: "number", demandOption: false, describe: "Exclusivity deadline" })
57
57
  .option("repaymentChain", { type: "number", demandOption: false, description: "Repayment chain ID" })
@@ -65,10 +65,10 @@ async function fillRelayToRandom() {
65
65
  const exclusiveRelayer = new web3_js_1.PublicKey(resolvedArgv.exclusiveRelayer || web3_js_1.PublicKey.default.toString());
66
66
  const inputToken = new web3_js_1.PublicKey(resolvedArgv.inputToken);
67
67
  const outputToken = new web3_js_1.PublicKey(resolvedArgv.outputToken);
68
- const inputAmount = new anchor_1.BN(resolvedArgv.inputAmount);
68
+ const inputAmount = (0, web3_v1_1.intToU8Array32)(new anchor_1.BN(resolvedArgv.inputAmount));
69
69
  const outputAmount = new anchor_1.BN(resolvedArgv.outputAmount);
70
70
  const originChainId = new anchor_1.BN(resolvedArgv.originChainId);
71
- const depositId = resolvedArgv.depositId.map((id) => id); // Ensure depositId is an array of BN
71
+ const depositId = (0, web3_v1_1.intToU8Array32)(new anchor_1.BN(resolvedArgv.depositId));
72
72
  const fillDeadline = resolvedArgv.fillDeadline || Math.floor(Date.now() / 1000) + 60; // Current time + 1 minute
73
73
  const exclusivityDeadline = resolvedArgv.exclusivityDeadline || Math.floor(Date.now() / 1000) + 30; // Current time + 30 seconds
74
74
  const repaymentChain = new anchor_1.BN(resolvedArgv.repaymentChain || 1);
@@ -148,8 +148,9 @@ async function fillRelayToRandom() {
148
148
  key,
149
149
  value: key === "message" ? value.toString("hex") : value.toString(),
150
150
  })));
151
- // Delegate state PDA to pull relayer tokens.
152
- const approveInstruction = await (0, spl_token_1.createApproveCheckedInstruction)(relayerTokenAccount, outputToken, statePda, signer.publicKey, BigInt(relayData.outputAmount.toString()), tokenDecimals, undefined, spl_token_1.TOKEN_PROGRAM_ID);
151
+ // Delegate to pull relayer tokens.
152
+ const delegatePda = (0, web3_v1_1.getFillRelayDelegatePda)(relayHashUint8Array, repaymentChain, repaymentAddress, program.programId).pda;
153
+ const approveInstruction = await (0, spl_token_1.createApproveCheckedInstruction)(relayerTokenAccount, outputToken, delegatePda, signer.publicKey, BigInt(relayData.outputAmount.toString()), tokenDecimals, undefined, spl_token_1.TOKEN_PROGRAM_ID);
153
154
  // Prepare fill instruction as we will need to use Address Lookup Table (ALT).
154
155
  const fillRelayValues = [relayHash, relayData, repaymentChain, repaymentAddress];
155
156
  if (bufferParams) {
@@ -162,7 +163,7 @@ async function fillRelayToRandom() {
162
163
  const fillAccounts = {
163
164
  state: statePda,
164
165
  signer: signer.publicKey,
165
- delegate: (0, web3_v1_1.getFillRelayDelegatePda)(relayHashUint8Array, repaymentChain, repaymentAddress, program.programId).pda,
166
+ delegate: delegatePda,
166
167
  instructionParams,
167
168
  mint: outputToken,
168
169
  relayerTokenAccount,
@@ -77,7 +77,7 @@ async function findFillStatusPda() {
77
77
  exclusiveRelayer: convertAddress(resolvedArgv.exclusive_relayer),
78
78
  inputToken: convertAddress(resolvedArgv.input_token),
79
79
  outputToken: convertAddress(resolvedArgv.output_token),
80
- inputAmount: new anchor_1.BN(resolvedArgv.input_amount),
80
+ inputAmount: (0, web3_v1_1.intToU8Array32)(new anchor_1.BN(resolvedArgv.input_amount)),
81
81
  outputAmount: new anchor_1.BN(resolvedArgv.output_amount),
82
82
  originChainId: new anchor_1.BN(resolvedArgv.origin_chain_id),
83
83
  depositId: parseStringToUint8Array(resolvedArgv.deposit_id),
@@ -45,7 +45,7 @@ const argv = (0, yargs_1.default)((0, helpers_1.hideBin)(process.argv))
45
45
  .option("recipient", { type: "string", demandOption: true, describe: "Recipient public key" })
46
46
  .option("outputToken", { type: "string", demandOption: true, describe: "Output token public key" })
47
47
  .option("inputAmount", { type: "number", demandOption: true, describe: "Input amount" })
48
- .option("outputAmount", { type: "number", demandOption: true, describe: "Output amount" })
48
+ .option("outputAmount", { type: "string", demandOption: true, describe: "Output amount" })
49
49
  .option("destinationChainId", { type: "string", demandOption: true, describe: "Destination chain ID" })
50
50
  .option("integratorId", { type: "string", demandOption: false, describe: "integrator ID" }).argv;
51
51
  async function nativeDeposit() {
@@ -55,7 +55,7 @@ async function nativeDeposit() {
55
55
  const inputToken = spl_token_1.NATIVE_MINT;
56
56
  const outputToken = new web3_js_1.PublicKey(resolvedArgv.outputToken);
57
57
  const inputAmount = new anchor_1.BN(resolvedArgv.inputAmount);
58
- const outputAmount = new anchor_1.BN(resolvedArgv.outputAmount);
58
+ const outputAmount = (0, web3_v1_1.intToU8Array32)(new anchor_1.BN(resolvedArgv.outputAmount));
59
59
  const destinationChainId = new anchor_1.BN(resolvedArgv.destinationChainId);
60
60
  const exclusiveRelayer = web3_js_1.PublicKey.default;
61
61
  const quoteTimestamp = Math.floor(Date.now() / 1000) - 1;
@@ -79,7 +79,7 @@ async function nativeDeposit() {
79
79
  { property: "inputToken", value: inputToken.toString() },
80
80
  { property: "outputToken", value: outputToken.toString() },
81
81
  { property: "inputAmount", value: inputAmount.toString() },
82
- { property: "outputAmount", value: outputAmount.toString() },
82
+ { property: "outputAmount", value: (0, web3_v1_1.u8Array32ToInt)(outputAmount).toString() },
83
83
  { property: "destinationChainId", value: destinationChainId.toString() },
84
84
  { property: "quoteTimestamp", value: quoteTimestamp.toString() },
85
85
  { property: "fillDeadline", value: fillDeadline.toString() },
@@ -65,7 +65,7 @@ async function queryEvents() {
65
65
  const eventName = argv.eventName || "any";
66
66
  const events = await (0, web3_v1_1.readProgramEvents)(provider.connection, program, "confirmed");
67
67
  const filteredEvents = events.filter((event) => (eventName == "any" ? true : event.name == eventName));
68
- const formattedEvents = filteredEvents.map((event) => (0, web3_v1_1.stringifyCpiEvent)(event));
68
+ const formattedEvents = filteredEvents.map((event) => (0, web3_v1_1.stringifyCpiEvent)(event.data, event.name));
69
69
  console.log(JSON.stringify(formattedEvents, null, 2));
70
70
  }
71
71
  // Run the queryEvents function
@@ -49,7 +49,7 @@ async function queryEvents() {
49
49
  const rpcSubscriptions = (0, kit_1.createSolanaRpcSubscriptions)(rpcEndpoint.replace(/^http(s?):\/\//i, (_m, s) => `ws${s ?? ""}://`));
50
50
  const events = await (0, svm_2.readProgramEvents)({ rpc, rpcSubscriptions }, (0, kit_1.address)(programId), svm_1.SvmSpokeIdl, "confirmed");
51
51
  const filteredEvents = events.filter((e) => (eventName === "any" ? true : e.name === eventName));
52
- const formattedEvents = filteredEvents.map(web3_v1_1.stringifyCpiEvent);
52
+ const formattedEvents = filteredEvents.map((event) => (0, web3_v1_1.stringifyCpiEvent)(event.data, event.name));
53
53
  console.log(JSON.stringify(formattedEvents, null, 2));
54
54
  }
55
55
  // Run the queryEvents function
@@ -67,7 +67,7 @@ async function queryFills() {
67
67
  console.table([
68
68
  { Property: "inputToken", Value: (0, web3_v1_1.strPublicKey)(event.data.inputToken) },
69
69
  { Property: "outputToken", Value: (0, web3_v1_1.strPublicKey)(event.data.outputToken) },
70
- { Property: "inputAmount", Value: event.data.inputAmount.toString() },
70
+ { Property: "inputAmount", Value: (0, web3_v1_1.u8Array32ToInt)(event.data.inputAmount).toString() },
71
71
  { Property: "outputAmount", Value: event.data.outputAmount.toString() },
72
72
  { Property: "repaymentChainId", Value: event.data.repaymentChainId.toString() },
73
73
  { Property: "originChainId", Value: event.data.originChainId.toString() },
@@ -47,7 +47,7 @@ const argv = (0, yargs_1.default)((0, helpers_1.hideBin)(process.argv))
47
47
  .option("inputToken", { type: "string", demandOption: true, describe: "Input token public key" })
48
48
  .option("outputToken", { type: "string", demandOption: true, describe: "Output token public key" })
49
49
  .option("inputAmount", { type: "number", demandOption: true, describe: "Input amount" })
50
- .option("outputAmount", { type: "number", demandOption: true, describe: "Output amount" })
50
+ .option("outputAmount", { type: "string", demandOption: true, describe: "Output amount" })
51
51
  .option("destinationChainId", { type: "string", demandOption: true, describe: "Destination chain ID" })
52
52
  .option("integratorId", { type: "string", demandOption: false, describe: "integrator ID" }).argv;
53
53
  async function deposit() {
@@ -57,7 +57,7 @@ async function deposit() {
57
57
  const inputToken = new web3_js_1.PublicKey(resolvedArgv.inputToken);
58
58
  const outputToken = new web3_js_1.PublicKey(resolvedArgv.outputToken);
59
59
  const inputAmount = new anchor_1.BN(resolvedArgv.inputAmount);
60
- const outputAmount = new anchor_1.BN(resolvedArgv.outputAmount);
60
+ const outputAmount = (0, web3_v1_1.intToU8Array32)(new anchor_1.BN(resolvedArgv.outputAmount));
61
61
  const destinationChainId = new anchor_1.BN(resolvedArgv.destinationChainId);
62
62
  const exclusiveRelayer = web3_js_1.PublicKey.default;
63
63
  const quoteTimestamp = Math.floor(Date.now() / 1000) - 1;
@@ -79,7 +79,7 @@ async function deposit() {
79
79
  { property: "inputToken", value: inputToken.toString() },
80
80
  { property: "outputToken", value: outputToken.toString() },
81
81
  { property: "inputAmount", value: inputAmount.toString() },
82
- { property: "outputAmount", value: outputAmount.toString() },
82
+ { property: "outputAmount", value: (0, web3_v1_1.u8Array32ToInt)(outputAmount).toString() },
83
83
  { property: "destinationChainId", value: destinationChainId.toString() },
84
84
  { property: "quoteTimestamp", value: quoteTimestamp.toString() },
85
85
  { property: "fillDeadline", value: fillDeadline.toString() },
@@ -68,20 +68,27 @@ async function testBundleLogic() {
68
68
  const tokenDecimals = (await (0, spl_token_1.getMint)(provider.connection, inputToken, undefined, spl_token_1.TOKEN_PROGRAM_ID)).decimals;
69
69
  // Use program.methods.deposit to send tokens to the spoke. note this is NOT a valid deposit, we just want to
70
70
  // seed tokens into the spoke to test repayment.
71
- // Delegate state PDA to pull depositor tokens.
72
71
  const inputAmount = amounts.reduce((acc, amount) => acc.add(amount), new anchor_1.BN(0));
73
- const approveIx = await (0, spl_token_1.createApproveCheckedInstruction)(userTokenAccount, inputToken, statePda, signer.publicKey, BigInt(inputAmount.toString()), tokenDecimals, undefined, spl_token_1.TOKEN_PROGRAM_ID);
74
- const depositIx = await program.methods.deposit(signer.publicKey, signer.publicKey, // recipient is the signer for this example
75
- inputToken, inputToken, // Re-use inputToken as outputToken. does not matter for this deposit.
76
- inputAmount, new anchor_1.BN(0), new anchor_1.BN(11155111), // destinationChainId.
77
- web3_js_1.PublicKey.default, // exclusiveRelayer
78
- Math.floor(Date.now() / 1000) - 1, // quoteTimestamp
79
- Math.floor(Date.now() / 1000) + 3600, // fillDeadline
80
- 0, // exclusivityDeadline
81
- Buffer.from([]) // message
82
- )
72
+ const depositData = {
73
+ depositor: signer.publicKey,
74
+ recipient: signer.publicKey, // recipient is the signer for this example
75
+ inputToken,
76
+ outputToken: inputToken, // Re-use inputToken as outputToken. does not matter for this deposit.
77
+ inputAmount,
78
+ outputAmount: (0, web3_v1_1.intToU8Array32)(inputAmount),
79
+ destinationChainId: new anchor_1.BN(11155111),
80
+ exclusiveRelayer: web3_js_1.PublicKey.default,
81
+ quoteTimestamp: new anchor_1.BN(Math.floor(Date.now() / 1000) - 1),
82
+ fillDeadline: new anchor_1.BN(Math.floor(Date.now() / 1000) + 3600),
83
+ exclusivityParameter: new anchor_1.BN(0),
84
+ message: Buffer.from([]),
85
+ };
86
+ const delegatePda = (0, web3_v1_1.getDepositPda)(depositData, program.programId);
87
+ const approveIx = await (0, spl_token_1.createApproveCheckedInstruction)(userTokenAccount, inputToken, delegatePda, signer.publicKey, BigInt(inputAmount.toString()), tokenDecimals, undefined, spl_token_1.TOKEN_PROGRAM_ID);
88
+ const depositIx = await program.methods.deposit(depositData.depositor, depositData.recipient, depositData.inputToken, depositData.outputToken, depositData.inputAmount, depositData.outputAmount, depositData.destinationChainId, depositData.exclusiveRelayer, depositData.quoteTimestamp.toNumber(), depositData.fillDeadline.toNumber(), depositData.exclusivityParameter.toNumber(), Buffer.from([]))
83
89
  .accounts({
84
90
  state: statePda,
91
+ delegate: delegatePda,
85
92
  signer: signer.publicKey,
86
93
  userTokenAccount: (0, spl_token_1.getAssociatedTokenAddressSync)(inputToken, signer.publicKey),
87
94
  vault: vault,
@@ -122,7 +129,7 @@ async function testBundleLogic() {
122
129
  const rootBundleId = state.rootBundleId;
123
130
  const rootBundleIdBuffer = Buffer.alloc(4);
124
131
  rootBundleIdBuffer.writeUInt32LE(rootBundleId);
125
- const seeds = [Buffer.from("root_bundle"), statePda.toBuffer(), rootBundleIdBuffer];
132
+ const seeds = [Buffer.from("root_bundle"), seed.toArrayLike(Buffer, "le", 8), rootBundleIdBuffer];
126
133
  const [rootBundle] = web3_js_1.PublicKey.findProgramAddressSync(seeds, programId);
127
134
  console.table([
128
135
  { property: "State PDA", value: statePda.toString() },
@@ -48,7 +48,7 @@ const argv = (0, yargs_1.default)((0, helpers_1.hideBin)(process.argv))
48
48
  .option("exclusiveRelayer", { type: "string", demandOption: false, describe: "Exclusive relayer public key" })
49
49
  .option("inputToken", { type: "string", demandOption: true, describe: "Input token public key" })
50
50
  .option("outputToken", { type: "string", demandOption: true, describe: "Output token public key" })
51
- .option("inputAmount", { type: "number", demandOption: true, describe: "Input amount" })
51
+ .option("inputAmount", { type: "string", demandOption: true, describe: "Input amount" })
52
52
  .option("outputAmount", { type: "number", demandOption: true, describe: "Output amount" })
53
53
  .option("originChainId", { type: "string", demandOption: true, describe: "Origin chain ID" })
54
54
  .option("depositId", { type: "string", demandOption: true, describe: "Deposit ID" })
@@ -61,7 +61,7 @@ async function fillRelay() {
61
61
  const exclusiveRelayer = new web3_js_1.PublicKey(resolvedArgv.exclusiveRelayer || "11111111111111111111111111111111");
62
62
  const inputToken = new web3_js_1.PublicKey(resolvedArgv.inputToken);
63
63
  const outputToken = new web3_js_1.PublicKey(resolvedArgv.outputToken);
64
- const inputAmount = new anchor_1.BN(resolvedArgv.inputAmount);
64
+ const inputAmount = (0, web3_v1_1.intToU8Array32)(new anchor_1.BN(resolvedArgv.inputAmount));
65
65
  const outputAmount = new anchor_1.BN(resolvedArgv.outputAmount);
66
66
  const originChainId = new anchor_1.BN(resolvedArgv.originChainId);
67
67
  const depositId = (0, web3_v1_1.intToU8Array32)(new anchor_1.BN(resolvedArgv.depositId));
@@ -1,5 +1,5 @@
1
1
  {
2
- "address": "Fk1RpqsfeWt8KnFCTW9NQVdVxYvxuqjGn6iPB9wrmM8h",
2
+ "address": "HaQe51FWtnmaEcuYEfPA7MRCXKrtqptat4oJdJ8zV5Be",
3
3
  "metadata": {
4
4
  "name": "multicall_handler",
5
5
  "version": "0.1.0",
@@ -1,5 +1,5 @@
1
1
  {
2
- "address": "JAZWcGrpSWNPTBj8QtJ9UyQqhJCDhG9GJkDeMf5NQBiq",
2
+ "address": "DLv3NggMiSaef97YCkew5xKUHDh13tVGZ7tydt3ZeAru",
3
3
  "metadata": {
4
4
  "name": "svm_spoke",
5
5
  "version": "0.1.0",
@@ -745,6 +745,7 @@
745
745
  "amount will be sent to the relayer on their repayment chain of choice as a refund following an optimistic",
746
746
  "challenge window in the HubPool, less a system fee.",
747
747
  "- output_amount: The amount of output tokens that the relayer will send to the recipient on the destination.",
748
+ "This is big-endian encoded as a 32-byte array to match its underlying byte representation on EVM side.",
748
749
  "- destination_chain_id: The destination chain identifier where the fill should be made.",
749
750
  "- exclusive_relayer: The relayer that will be exclusively allowed to fill this deposit before the exclusivity",
750
751
  "deadline timestamp. This must be a valid, non-zero address if the exclusivity deadline is greater than the",
@@ -986,7 +987,12 @@
986
987
  },
987
988
  {
988
989
  "name": "output_amount",
989
- "type": "u64"
990
+ "type": {
991
+ "array": [
992
+ "u8",
993
+ 32
994
+ ]
995
+ }
990
996
  },
991
997
  {
992
998
  "name": "destination_chain_id",
@@ -1246,7 +1252,12 @@
1246
1252
  },
1247
1253
  {
1248
1254
  "name": "output_amount",
1249
- "type": "u64"
1255
+ "type": {
1256
+ "array": [
1257
+ "u8",
1258
+ 32
1259
+ ]
1260
+ }
1250
1261
  },
1251
1262
  {
1252
1263
  "name": "destination_chain_id",
@@ -1972,7 +1983,10 @@
1972
1983
  "- _root_bundle_id: Unique ID of root bundle containing slow relay root that this leaf is contained in.",
1973
1984
  "- proof: Inclusion proof for this leaf in slow relay root in root bundle.",
1974
1985
  "Note: slow_fill_leaf, _root_bundle_id, and proof are optional parameters. If None for any of these is passed,",
1975
- "the caller must load them via the instruction_params account."
1986
+ "the caller must load them via the instruction_params account.",
1987
+ "Note: When verifying the slow fill leaf, the relay data is hashed using AnchorSerialize::serialize that encodes",
1988
+ "output token amounts to little-endian format while input token amount preserves its big-endian encoding as it",
1989
+ "is passed as [u8; 32] array."
1976
1990
  ],
1977
1991
  "discriminator": [
1978
1992
  26,
@@ -2338,6 +2352,7 @@
2338
2352
  "token on the repayment chain will be sent as a refund to the caller.",
2339
2353
  "- output_token: The token that the caller will send to the recipient on this chain.",
2340
2354
  "- input_amount: This amount, less a system fee, will be sent to the caller on their repayment chain.",
2355
+ "This is big-endian encoded as a 32-byte array to match its underlying byte representation on EVM side",
2341
2356
  "- output_amount: The amount of output tokens that the caller will send to the recipient.",
2342
2357
  "- origin_chain_id: The origin chain identifier.",
2343
2358
  "- exclusive_relayer: The relayer that will be exclusively allowed to fill this deposit before the",
@@ -2717,38 +2732,38 @@
2717
2732
  {
2718
2733
  "kind": "const",
2719
2734
  "value": [
2720
- 255,
2721
- 9,
2722
- 170,
2723
- 45,
2724
- 62,
2725
- 177,
2726
- 188,
2727
- 157,
2728
- 161,
2729
- 158,
2735
+ 183,
2736
+ 102,
2737
+ 64,
2738
+ 134,
2739
+ 222,
2740
+ 55,
2741
+ 238,
2742
+ 112,
2730
2743
  130,
2731
- 38,
2732
- 73,
2733
- 48,
2734
- 225,
2735
- 61,
2736
- 57,
2737
- 147,
2738
- 225,
2744
+ 28,
2745
+ 16,
2746
+ 68,
2747
+ 91,
2739
2748
  22,
2740
- 15,
2741
- 48,
2742
- 57,
2743
- 239,
2744
- 33,
2745
- 175,
2749
+ 47,
2750
+ 44,
2751
+ 126,
2752
+ 200,
2753
+ 121,
2754
+ 91,
2755
+ 208,
2756
+ 128,
2757
+ 12,
2758
+ 20,
2759
+ 98,
2760
+ 148,
2761
+ 158,
2762
+ 35,
2763
+ 40,
2746
2764
  209,
2747
- 86,
2748
- 83,
2749
- 118,
2750
- 239,
2751
- 202
2765
+ 221,
2766
+ 90
2752
2767
  ]
2753
2768
  }
2754
2769
  ],
@@ -2841,7 +2856,7 @@
2841
2856
  },
2842
2857
  {
2843
2858
  "name": "program",
2844
- "address": "JAZWcGrpSWNPTBj8QtJ9UyQqhJCDhG9GJkDeMf5NQBiq"
2859
+ "address": "DLv3NggMiSaef97YCkew5xKUHDh13tVGZ7tydt3ZeAru"
2845
2860
  }
2846
2861
  ],
2847
2862
  "args": [
@@ -4096,7 +4111,12 @@
4096
4111
  },
4097
4112
  {
4098
4113
  "name": "output_amount",
4099
- "type": "u64"
4114
+ "type": {
4115
+ "array": [
4116
+ "u8",
4117
+ 32
4118
+ ]
4119
+ }
4100
4120
  },
4101
4121
  {
4102
4122
  "name": "destination_chain_id",
@@ -4505,78 +4525,93 @@
4505
4525
  "errors": [
4506
4526
  {
4507
4527
  "code": 6000,
4508
- "name": "InvalidQuoteTimestamp",
4509
- "msg": "Invalid quote timestamp!"
4528
+ "name": "NotOwner",
4529
+ "msg": "Only the owner can call this function!"
4510
4530
  },
4511
4531
  {
4512
4532
  "code": 6001,
4513
- "name": "InvalidFillDeadline",
4514
- "msg": "Invalid fill deadline!"
4533
+ "name": "InvalidRelayHash",
4534
+ "msg": "Invalid relay hash!"
4515
4535
  },
4516
4536
  {
4517
4537
  "code": 6002,
4518
- "name": "NotExclusiveRelayer",
4519
- "msg": "Caller is not the exclusive relayer and exclusivity deadline has not passed!"
4538
+ "name": "CanOnlyCloseFillStatusPdaIfFillDeadlinePassed",
4539
+ "msg": "The fill deadline has not passed!"
4520
4540
  },
4521
4541
  {
4522
4542
  "code": 6003,
4523
- "name": "NoSlowFillsInExclusivityWindow",
4524
- "msg": "The Deposit is still within the exclusivity window!"
4543
+ "name": "NotRelayer",
4544
+ "msg": "The caller is not the relayer!"
4525
4545
  },
4526
4546
  {
4527
4547
  "code": 6004,
4528
- "name": "RelayFilled",
4529
- "msg": "The relay has already been filled!"
4548
+ "name": "CannotSetCurrentTime",
4549
+ "msg": "Cannot set time if not in test mode!"
4530
4550
  },
4531
4551
  {
4532
4552
  "code": 6005,
4533
- "name": "InvalidSlowFillRequest",
4534
- "msg": "Slow fill requires status of Unfilled!"
4553
+ "name": "InvalidRemoteDomain",
4554
+ "msg": "Invalid remote domain!"
4535
4555
  },
4536
4556
  {
4537
4557
  "code": 6006,
4538
- "name": "ExpiredFillDeadline",
4539
- "msg": "The fill deadline has passed!"
4558
+ "name": "InvalidRemoteSender",
4559
+ "msg": "Invalid remote sender!"
4540
4560
  },
4541
4561
  {
4542
4562
  "code": 6007,
4543
- "name": "InvalidMerkleProof",
4544
- "msg": "Invalid Merkle proof!"
4563
+ "name": "InvalidMint",
4564
+ "msg": "Invalid mint!"
4545
4565
  },
4546
4566
  {
4547
4567
  "code": 6008,
4548
- "name": "InvalidChainId",
4549
- "msg": "Invalid chain id!"
4568
+ "name": "ExceededPendingBridgeAmount",
4569
+ "msg": "Exceeded pending bridge amount to HubPool!"
4550
4570
  },
4551
4571
  {
4552
4572
  "code": 6009,
4553
- "name": "InvalidMerkleLeaf",
4554
- "msg": "Invalid Merkle leaf!"
4573
+ "name": "ParamsWriteOverflow",
4574
+ "msg": "Overflow writing to parameters account!"
4555
4575
  },
4556
4576
  {
4557
4577
  "code": 6010,
4558
- "name": "ClaimedMerkleLeaf",
4559
- "msg": "Leaf already claimed!"
4578
+ "name": "InvalidRefund",
4579
+ "msg": "Invalid refund address!"
4560
4580
  },
4561
4581
  {
4562
4582
  "code": 6011,
4563
- "name": "DepositsArePaused",
4564
- "msg": "Deposits are currently paused!"
4583
+ "name": "ZeroRefundClaim",
4584
+ "msg": "Zero relayer refund claim!"
4565
4585
  },
4566
4586
  {
4567
4587
  "code": 6012,
4568
- "name": "FillsArePaused",
4569
- "msg": "Fills are currently paused!"
4588
+ "name": "NonZeroRefundClaim",
4589
+ "msg": "Cannot close non-zero relayer refund claim!"
4570
4590
  },
4571
4591
  {
4572
4592
  "code": 6013,
4573
- "name": "InsufficientSpokePoolBalanceToExecuteLeaf",
4574
- "msg": "Insufficient spoke pool balance to execute leaf"
4593
+ "name": "InvalidClaimInitializer",
4594
+ "msg": "Invalid claim initializer!"
4575
4595
  },
4576
4596
  {
4577
4597
  "code": 6014,
4578
- "name": "InvalidExclusiveRelayer",
4579
- "msg": "Invalid exclusive relayer!"
4598
+ "name": "InvalidRefundTokenAccount",
4599
+ "msg": "Invalid refund token account!"
4600
+ },
4601
+ {
4602
+ "code": 6015,
4603
+ "name": "InvalidProductionSeed",
4604
+ "msg": "Seed must be 0 in production!"
4605
+ },
4606
+ {
4607
+ "code": 6016,
4608
+ "name": "InvalidATACreationAccounts",
4609
+ "msg": "Invalid remaining accounts for ATA creation!"
4610
+ },
4611
+ {
4612
+ "code": 6017,
4613
+ "name": "InvalidDelegatePda",
4614
+ "msg": "Invalid delegate PDA!"
4580
4615
  }
4581
4616
  ],
4582
4617
  "types": [
@@ -4851,7 +4886,12 @@
4851
4886
  },
4852
4887
  {
4853
4888
  "name": "input_amount",
4854
- "type": "u64"
4889
+ "type": {
4890
+ "array": [
4891
+ "u8",
4892
+ 32
4893
+ ]
4894
+ }
4855
4895
  },
4856
4896
  {
4857
4897
  "name": "output_amount",
@@ -4937,7 +4977,12 @@
4937
4977
  },
4938
4978
  {
4939
4979
  "name": "output_amount",
4940
- "type": "u64"
4980
+ "type": {
4981
+ "array": [
4982
+ "u8",
4983
+ 32
4984
+ ]
4985
+ }
4941
4986
  },
4942
4987
  {
4943
4988
  "name": "destination_chain_id",
@@ -5058,7 +5103,12 @@
5058
5103
  },
5059
5104
  {
5060
5105
  "name": "input_amount",
5061
- "type": "u64"
5106
+ "type": {
5107
+ "array": [
5108
+ "u8",
5109
+ 32
5110
+ ]
5111
+ }
5062
5112
  },
5063
5113
  {
5064
5114
  "name": "output_amount",
@@ -5222,7 +5272,12 @@
5222
5272
  },
5223
5273
  {
5224
5274
  "name": "input_amount",
5225
- "type": "u64"
5275
+ "type": {
5276
+ "array": [
5277
+ "u8",
5278
+ 32
5279
+ ]
5280
+ }
5226
5281
  },
5227
5282
  {
5228
5283
  "name": "output_amount",
@@ -5,7 +5,7 @@
5
5
  * IDL can be found at `target/idl/multicall_handler.json`.
6
6
  */
7
7
  export type MulticallHandler = {
8
- "address": "Fk1RpqsfeWt8KnFCTW9NQVdVxYvxuqjGn6iPB9wrmM8h";
8
+ "address": "HaQe51FWtnmaEcuYEfPA7MRCXKrtqptat4oJdJ8zV5Be";
9
9
  "metadata": {
10
10
  "name": "multicallHandler";
11
11
  "version": "0.1.0";