@aptos-labs/ts-sdk 0.0.8 → 1.1.0

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 (296) hide show
  1. package/README.md +17 -17
  2. package/dist/browser/index.d.ts +528 -209
  3. package/dist/browser/index.global.js +25 -25
  4. package/dist/browser/index.global.js.map +1 -1
  5. package/dist/common/index.d.ts +528 -209
  6. package/dist/common/index.js +26 -26
  7. package/dist/common/index.js.map +1 -1
  8. package/dist/esm/api/account.mjs +1 -1
  9. package/dist/esm/api/ans.d.mts +9 -9
  10. package/dist/esm/api/ans.mjs +1 -1
  11. package/dist/esm/api/aptos.d.mts +4 -11
  12. package/dist/esm/api/aptos.mjs +1 -1
  13. package/dist/esm/api/coin.d.mts +3 -3
  14. package/dist/esm/api/coin.mjs +1 -1
  15. package/dist/esm/api/digitalAsset.d.mts +317 -73
  16. package/dist/esm/api/digitalAsset.mjs +1 -1
  17. package/dist/esm/api/event.mjs +1 -1
  18. package/dist/esm/api/faucet.mjs +1 -1
  19. package/dist/esm/api/fungibleAsset.d.mts +3 -3
  20. package/dist/esm/api/fungibleAsset.mjs +1 -1
  21. package/dist/esm/api/general.mjs +1 -1
  22. package/dist/esm/api/index.d.mts +0 -2
  23. package/dist/esm/api/index.mjs +1 -1
  24. package/dist/esm/api/staking.mjs +1 -1
  25. package/dist/esm/api/transaction.d.mts +118 -13
  26. package/dist/esm/api/transaction.mjs +1 -1
  27. package/dist/esm/api/transactionSubmission/build.d.mts +25 -4
  28. package/dist/esm/api/transactionSubmission/build.mjs +1 -1
  29. package/dist/esm/api/transactionSubmission/helpers.d.mts +4 -0
  30. package/dist/esm/api/transactionSubmission/helpers.mjs +2 -0
  31. package/dist/esm/api/transactionSubmission/sign.mjs +1 -1
  32. package/dist/esm/api/transactionSubmission/sign.mjs.map +1 -1
  33. package/dist/esm/api/transactionSubmission/simulate.d.mts +23 -2
  34. package/dist/esm/api/transactionSubmission/simulate.mjs +1 -1
  35. package/dist/esm/api/transactionSubmission/submit.d.mts +21 -2
  36. package/dist/esm/api/transactionSubmission/submit.mjs +1 -1
  37. package/dist/esm/api/utils.mjs +1 -1
  38. package/dist/esm/bcs/index.mjs +1 -1
  39. package/dist/esm/bcs/serializable/entryFunctionBytes.mjs +1 -1
  40. package/dist/esm/bcs/serializable/fixedBytes.mjs +1 -1
  41. package/dist/esm/bcs/serializable/movePrimitives.mjs +1 -1
  42. package/dist/esm/bcs/serializable/moveStructs.mjs +1 -1
  43. package/dist/esm/bcs/serializer.mjs +1 -1
  44. package/dist/esm/{chunk-ZJUDDSWN.mjs → chunk-2HBIGMDV.mjs} +2 -2
  45. package/dist/esm/{chunk-GIZLK7M7.mjs → chunk-3O4GKLXA.mjs} +2 -2
  46. package/dist/esm/chunk-3O4GKLXA.mjs.map +1 -0
  47. package/dist/esm/{chunk-CJPCOS4R.mjs → chunk-3QS3MFWJ.mjs} +2 -2
  48. package/dist/esm/{chunk-AZUWHKN5.mjs → chunk-4K252UDE.mjs} +2 -2
  49. package/dist/esm/{chunk-MWAMLQ25.mjs → chunk-4TIQQKXV.mjs} +2 -2
  50. package/dist/esm/{chunk-GMG4VR3K.mjs → chunk-4VG7DV6F.mjs} +2 -2
  51. package/dist/esm/{chunk-CCXMVVXD.mjs → chunk-4ZYW3BPF.mjs} +2 -2
  52. package/dist/esm/chunk-4ZYW3BPF.mjs.map +1 -0
  53. package/dist/esm/{chunk-UW6HQ643.mjs → chunk-5HZKDT5C.mjs} +2 -2
  54. package/dist/esm/{chunk-73VWOS4Z.mjs → chunk-6DYNAFAP.mjs} +2 -2
  55. package/dist/esm/chunk-6EMN3BOV.mjs +2 -0
  56. package/dist/esm/chunk-6EMN3BOV.mjs.map +1 -0
  57. package/dist/esm/{chunk-HTI5LEST.mjs → chunk-6F4ACCCZ.mjs} +2 -2
  58. package/dist/esm/chunk-6MKBROIC.mjs +2 -0
  59. package/dist/esm/chunk-6MKBROIC.mjs.map +1 -0
  60. package/dist/esm/{chunk-53DS6NBQ.mjs → chunk-7B3VSBCX.mjs} +2 -2
  61. package/dist/esm/{chunk-F7EWDYTE.mjs → chunk-7QJYTQSU.mjs} +2 -2
  62. package/dist/esm/{chunk-OZZDXS26.mjs → chunk-AS7RX4RK.mjs} +2 -2
  63. package/dist/esm/chunk-AS7RX4RK.mjs.map +1 -0
  64. package/dist/esm/{chunk-GEZSEAL5.mjs → chunk-BUM2FIHF.mjs} +2 -2
  65. package/dist/esm/chunk-BV6SCEXY.mjs +2 -0
  66. package/dist/esm/chunk-BV6SCEXY.mjs.map +1 -0
  67. package/dist/esm/chunk-C3Y52GHM.mjs +2 -0
  68. package/dist/esm/chunk-C3Y52GHM.mjs.map +1 -0
  69. package/dist/esm/{chunk-OBOOY2QD.mjs → chunk-D2XLC3KK.mjs} +2 -2
  70. package/dist/esm/chunk-EHJEK7FU.mjs +2 -0
  71. package/dist/esm/chunk-EMQWD6KP.mjs +2 -0
  72. package/dist/esm/chunk-EMQWD6KP.mjs.map +1 -0
  73. package/dist/esm/{chunk-PL2VA73L.mjs → chunk-F2GFSFPW.mjs} +2 -2
  74. package/dist/esm/{chunk-GXPGRCSW.mjs → chunk-F52GIFKT.mjs} +2 -2
  75. package/dist/esm/{chunk-QNTV5NMH.mjs → chunk-FGTQT7Q5.mjs} +2 -2
  76. package/dist/esm/{chunk-RCM3K5JL.mjs → chunk-GQI3HWOB.mjs} +2 -2
  77. package/dist/esm/chunk-HDNJ4JK4.mjs +2 -0
  78. package/dist/esm/chunk-HDNJ4JK4.mjs.map +1 -0
  79. package/dist/esm/{chunk-2SAKPC5Q.mjs → chunk-HQ4DGB7L.mjs} +2 -2
  80. package/dist/esm/{chunk-KNMWDGP4.mjs → chunk-IEL6J6Z3.mjs} +2 -2
  81. package/dist/esm/{chunk-NZSGGL25.mjs → chunk-IPW2YTRD.mjs} +2 -2
  82. package/dist/esm/{chunk-F6K26WV5.mjs → chunk-IU5JZNH4.mjs} +2 -2
  83. package/dist/esm/{chunk-Y6PVFMBS.mjs → chunk-KH3M3YPI.mjs} +2 -2
  84. package/dist/esm/chunk-KSWQZKMQ.mjs +2 -0
  85. package/dist/esm/chunk-KSWQZKMQ.mjs.map +1 -0
  86. package/dist/esm/{chunk-5OPOJ43H.mjs → chunk-KVJ2KGMW.mjs} +2 -2
  87. package/dist/esm/{chunk-TZ623H2V.mjs → chunk-LUCDRB52.mjs} +2 -2
  88. package/dist/esm/chunk-LUCDRB52.mjs.map +1 -0
  89. package/dist/esm/{chunk-WTGGCH34.mjs → chunk-N25GOEVL.mjs} +2 -2
  90. package/dist/esm/{chunk-CU2DINU4.mjs → chunk-NLONZHYT.mjs} +2 -2
  91. package/dist/esm/{chunk-FZ56IS3E.mjs → chunk-NMFS5KAE.mjs} +2 -2
  92. package/dist/esm/chunk-NZ6RYGJQ.mjs +2 -0
  93. package/dist/esm/chunk-NZ6RYGJQ.mjs.map +1 -0
  94. package/dist/esm/chunk-OU4MEM5F.mjs +2 -0
  95. package/dist/esm/chunk-OU4MEM5F.mjs.map +1 -0
  96. package/dist/esm/{chunk-KZSJ5MFF.mjs → chunk-OWP2MKTX.mjs} +2 -2
  97. package/dist/esm/{chunk-QCBIJCU4.mjs → chunk-OXO3Z2MF.mjs} +2 -2
  98. package/dist/esm/{chunk-CL5B2QNS.mjs → chunk-PANYJULW.mjs} +2 -2
  99. package/dist/esm/{chunk-QEXAMHPU.mjs → chunk-PJMRQLJ5.mjs} +2 -2
  100. package/dist/esm/chunk-PJMRQLJ5.mjs.map +1 -0
  101. package/dist/esm/{chunk-XMUUI6HG.mjs → chunk-PRKZ2KJ4.mjs} +2 -2
  102. package/dist/esm/{chunk-SGTFMSOG.mjs → chunk-R3SAAJ2N.mjs} +2 -2
  103. package/dist/esm/{chunk-VQ7LYNMD.mjs → chunk-R4APGSSC.mjs} +2 -2
  104. package/dist/esm/{chunk-3F5WV6US.mjs → chunk-RCYWJZR4.mjs} +2 -2
  105. package/dist/esm/chunk-SI6QMT4N.mjs +2 -0
  106. package/dist/esm/chunk-SI6QMT4N.mjs.map +1 -0
  107. package/dist/esm/{chunk-SSJQOXEP.mjs → chunk-SMN2QQ4Q.mjs} +2 -2
  108. package/dist/esm/chunk-SMN2QQ4Q.mjs.map +1 -0
  109. package/dist/esm/chunk-SODP7NAK.mjs +2 -0
  110. package/dist/esm/{chunk-SDPICQ5B.mjs.map → chunk-SODP7NAK.mjs.map} +1 -1
  111. package/dist/esm/{chunk-OT2UDMUU.mjs → chunk-SR7XLV76.mjs} +2 -2
  112. package/dist/esm/{chunk-APSQ4M23.mjs → chunk-T3ID6KFN.mjs} +2 -2
  113. package/dist/esm/{chunk-5UY5OKXR.mjs → chunk-TCSN7PYL.mjs} +2 -2
  114. package/dist/esm/chunk-TCSN7PYL.mjs.map +1 -0
  115. package/dist/esm/chunk-TTDCRLRD.mjs +2 -0
  116. package/dist/esm/chunk-TTDCRLRD.mjs.map +1 -0
  117. package/dist/esm/{chunk-G36AY4R7.mjs → chunk-UR5E2UDO.mjs} +2 -2
  118. package/dist/esm/{chunk-JI2BBZ2W.mjs → chunk-UZB7CTLX.mjs} +2 -2
  119. package/dist/esm/chunk-VA4K6DEK.mjs +2 -0
  120. package/dist/esm/chunk-VA4K6DEK.mjs.map +1 -0
  121. package/dist/esm/{chunk-CLJLQXFQ.mjs → chunk-VBUKPN4Q.mjs} +2 -2
  122. package/dist/esm/chunk-VBUKPN4Q.mjs.map +1 -0
  123. package/dist/esm/{chunk-XITLXPBK.mjs → chunk-VMCFN5CT.mjs} +2 -2
  124. package/dist/esm/{chunk-SRGPSANH.mjs → chunk-YLI6J47P.mjs} +2 -2
  125. package/dist/esm/chunk-YLPG6XMH.mjs +2 -0
  126. package/dist/esm/chunk-YLPG6XMH.mjs.map +1 -0
  127. package/dist/esm/{chunk-HC5VMNXA.mjs → chunk-ZLYSA7JR.mjs} +2 -2
  128. package/dist/esm/client/core.mjs +1 -1
  129. package/dist/esm/client/get.mjs +1 -1
  130. package/dist/esm/client/index.mjs +1 -1
  131. package/dist/esm/client/post.mjs +1 -1
  132. package/dist/esm/core/account.d.mts +2 -2
  133. package/dist/esm/core/account.mjs +1 -1
  134. package/dist/esm/core/accountAddress.mjs +1 -1
  135. package/dist/esm/core/authenticationKey.mjs +1 -1
  136. package/dist/esm/core/crypto/anyPublicKey.mjs +1 -1
  137. package/dist/esm/core/crypto/anySignature.mjs +1 -1
  138. package/dist/esm/core/crypto/asymmetricCrypto.mjs +1 -1
  139. package/dist/esm/core/crypto/ed25519.mjs +1 -1
  140. package/dist/esm/core/crypto/index.mjs +1 -1
  141. package/dist/esm/core/crypto/multiEd25519.mjs +1 -1
  142. package/dist/esm/core/crypto/multiKey.mjs +1 -1
  143. package/dist/esm/core/crypto/secp256k1.mjs +1 -1
  144. package/dist/esm/core/index.mjs +1 -1
  145. package/dist/esm/index.d.mts +1 -3
  146. package/dist/esm/index.mjs +1 -1
  147. package/dist/esm/internal/account.d.mts +1 -1
  148. package/dist/esm/internal/account.mjs +1 -1
  149. package/dist/esm/internal/ans.d.mts +5 -5
  150. package/dist/esm/internal/ans.mjs +1 -1
  151. package/dist/esm/internal/coin.d.mts +2 -2
  152. package/dist/esm/internal/coin.mjs +1 -1
  153. package/dist/esm/internal/digitalAsset.d.mts +151 -26
  154. package/dist/esm/internal/digitalAsset.mjs +1 -1
  155. package/dist/esm/internal/event.mjs +1 -1
  156. package/dist/esm/internal/faucet.mjs +1 -1
  157. package/dist/esm/internal/fungibleAsset.d.mts +12 -5
  158. package/dist/esm/internal/fungibleAsset.mjs +1 -1
  159. package/dist/esm/internal/general.mjs +1 -1
  160. package/dist/esm/internal/staking.mjs +1 -1
  161. package/dist/esm/internal/transaction.mjs +1 -1
  162. package/dist/esm/internal/transactionSubmission.d.mts +6 -6
  163. package/dist/esm/internal/transactionSubmission.mjs +1 -1
  164. package/dist/esm/transactions/authenticator/account.mjs +1 -1
  165. package/dist/esm/transactions/authenticator/index.mjs +1 -1
  166. package/dist/esm/transactions/authenticator/transaction.mjs +1 -1
  167. package/dist/esm/transactions/index.d.mts +1 -1
  168. package/dist/esm/transactions/index.mjs +1 -1
  169. package/dist/esm/transactions/instances/chainId.mjs +1 -1
  170. package/dist/esm/transactions/instances/identifier.mjs +1 -1
  171. package/dist/esm/transactions/instances/index.mjs +1 -1
  172. package/dist/esm/transactions/instances/moduleId.mjs +1 -1
  173. package/dist/esm/transactions/instances/rawTransaction.mjs +1 -1
  174. package/dist/esm/transactions/instances/rotationProofChallenge.mjs +1 -1
  175. package/dist/esm/transactions/instances/signedTransaction.mjs +1 -1
  176. package/dist/esm/transactions/instances/transactionPayload.mjs +1 -1
  177. package/dist/esm/transactions/management/accountSequenceNumber.mjs +1 -1
  178. package/dist/esm/transactions/management/index.mjs +1 -1
  179. package/dist/esm/transactions/management/transactionWorker.d.mts +2 -2
  180. package/dist/esm/transactions/management/transactionWorker.mjs +1 -1
  181. package/dist/esm/transactions/transactionBuilder/helpers.mjs +1 -1
  182. package/dist/esm/transactions/transactionBuilder/index.mjs +1 -1
  183. package/dist/esm/transactions/transactionBuilder/remoteAbi.mjs +1 -1
  184. package/dist/esm/transactions/transactionBuilder/transactionBuilder.d.mts +2 -2
  185. package/dist/esm/transactions/transactionBuilder/transactionBuilder.mjs +1 -1
  186. package/dist/esm/transactions/typeTag/index.mjs +1 -1
  187. package/dist/esm/transactions/typeTag/parser.mjs +1 -1
  188. package/dist/esm/transactions/types.d.mts +3 -3
  189. package/dist/esm/version.d.mts +1 -1
  190. package/dist/esm/version.mjs +1 -1
  191. package/package.json +4 -2
  192. package/src/api/ans.ts +9 -9
  193. package/src/api/aptos.ts +3 -28
  194. package/src/api/coin.ts +3 -3
  195. package/src/api/digitalAsset.ts +387 -88
  196. package/src/api/fungibleAsset.ts +3 -3
  197. package/src/api/transaction.ts +172 -2
  198. package/src/api/transactionSubmission/build.ts +25 -4
  199. package/src/api/transactionSubmission/helpers.ts +31 -0
  200. package/src/api/transactionSubmission/simulate.ts +26 -20
  201. package/src/api/transactionSubmission/submit.ts +24 -20
  202. package/src/client/core.ts +1 -1
  203. package/src/core/account.ts +2 -2
  204. package/src/internal/ans.ts +5 -5
  205. package/src/internal/coin.ts +2 -2
  206. package/src/internal/digitalAsset.ts +482 -58
  207. package/src/internal/fungibleAsset.ts +2 -2
  208. package/src/internal/transactionSubmission.ts +6 -6
  209. package/src/transactions/management/transactionWorker.ts +2 -9
  210. package/src/transactions/transactionBuilder/remoteAbi.ts +13 -5
  211. package/src/transactions/transactionBuilder/transactionBuilder.ts +2 -4
  212. package/src/transactions/typeTag/index.ts +1 -0
  213. package/src/transactions/types.ts +2 -2
  214. package/src/version.ts +1 -1
  215. package/dist/esm/api/transactionSubmission.d.mts +0 -113
  216. package/dist/esm/api/transactionSubmission.mjs +0 -2
  217. package/dist/esm/chunk-2YQXX64E.mjs +0 -2
  218. package/dist/esm/chunk-2YQXX64E.mjs.map +0 -1
  219. package/dist/esm/chunk-5CUNY7X2.mjs +0 -2
  220. package/dist/esm/chunk-5CUNY7X2.mjs.map +0 -1
  221. package/dist/esm/chunk-5UY5OKXR.mjs.map +0 -1
  222. package/dist/esm/chunk-5ZVCSKFX.mjs +0 -2
  223. package/dist/esm/chunk-5ZVCSKFX.mjs.map +0 -1
  224. package/dist/esm/chunk-CCXMVVXD.mjs.map +0 -1
  225. package/dist/esm/chunk-CLJLQXFQ.mjs.map +0 -1
  226. package/dist/esm/chunk-EFRFDFS4.mjs +0 -2
  227. package/dist/esm/chunk-EFRFDFS4.mjs.map +0 -1
  228. package/dist/esm/chunk-GIZLK7M7.mjs.map +0 -1
  229. package/dist/esm/chunk-IELTCGLP.mjs +0 -2
  230. package/dist/esm/chunk-IELTCGLP.mjs.map +0 -1
  231. package/dist/esm/chunk-KKER5KL4.mjs +0 -2
  232. package/dist/esm/chunk-KKER5KL4.mjs.map +0 -1
  233. package/dist/esm/chunk-OZZDXS26.mjs.map +0 -1
  234. package/dist/esm/chunk-P5747ZYC.mjs +0 -2
  235. package/dist/esm/chunk-P5747ZYC.mjs.map +0 -1
  236. package/dist/esm/chunk-PXTMLJKO.mjs +0 -2
  237. package/dist/esm/chunk-QEXAMHPU.mjs.map +0 -1
  238. package/dist/esm/chunk-RLG3WOTH.mjs +0 -2
  239. package/dist/esm/chunk-RLG3WOTH.mjs.map +0 -1
  240. package/dist/esm/chunk-SDPICQ5B.mjs +0 -2
  241. package/dist/esm/chunk-SO6EE5DX.mjs +0 -2
  242. package/dist/esm/chunk-SO6EE5DX.mjs.map +0 -1
  243. package/dist/esm/chunk-SSJQOXEP.mjs.map +0 -1
  244. package/dist/esm/chunk-TZ623H2V.mjs.map +0 -1
  245. package/dist/esm/chunk-UKSA4H2O.mjs +0 -2
  246. package/dist/esm/chunk-UKSA4H2O.mjs.map +0 -1
  247. package/dist/esm/chunk-UWXDXOFK.mjs +0 -2
  248. package/dist/esm/chunk-UWXDXOFK.mjs.map +0 -1
  249. package/dist/esm/chunk-XX2Z26FH.mjs +0 -2
  250. package/dist/esm/chunk-XX2Z26FH.mjs.map +0 -1
  251. package/dist/esm/chunk-YN6UIVFB.mjs +0 -2
  252. package/dist/esm/chunk-YN6UIVFB.mjs.map +0 -1
  253. package/dist/esm/chunk-ZFK7QD3B.mjs +0 -2
  254. package/dist/esm/chunk-ZFK7QD3B.mjs.map +0 -1
  255. package/src/api/transactionSubmission.ts +0 -121
  256. /package/dist/esm/api/{transactionSubmission.mjs.map → transactionSubmission/helpers.mjs.map} +0 -0
  257. /package/dist/esm/{chunk-ZJUDDSWN.mjs.map → chunk-2HBIGMDV.mjs.map} +0 -0
  258. /package/dist/esm/{chunk-CJPCOS4R.mjs.map → chunk-3QS3MFWJ.mjs.map} +0 -0
  259. /package/dist/esm/{chunk-AZUWHKN5.mjs.map → chunk-4K252UDE.mjs.map} +0 -0
  260. /package/dist/esm/{chunk-MWAMLQ25.mjs.map → chunk-4TIQQKXV.mjs.map} +0 -0
  261. /package/dist/esm/{chunk-GMG4VR3K.mjs.map → chunk-4VG7DV6F.mjs.map} +0 -0
  262. /package/dist/esm/{chunk-UW6HQ643.mjs.map → chunk-5HZKDT5C.mjs.map} +0 -0
  263. /package/dist/esm/{chunk-73VWOS4Z.mjs.map → chunk-6DYNAFAP.mjs.map} +0 -0
  264. /package/dist/esm/{chunk-HTI5LEST.mjs.map → chunk-6F4ACCCZ.mjs.map} +0 -0
  265. /package/dist/esm/{chunk-53DS6NBQ.mjs.map → chunk-7B3VSBCX.mjs.map} +0 -0
  266. /package/dist/esm/{chunk-F7EWDYTE.mjs.map → chunk-7QJYTQSU.mjs.map} +0 -0
  267. /package/dist/esm/{chunk-GEZSEAL5.mjs.map → chunk-BUM2FIHF.mjs.map} +0 -0
  268. /package/dist/esm/{chunk-OBOOY2QD.mjs.map → chunk-D2XLC3KK.mjs.map} +0 -0
  269. /package/dist/esm/{chunk-PXTMLJKO.mjs.map → chunk-EHJEK7FU.mjs.map} +0 -0
  270. /package/dist/esm/{chunk-PL2VA73L.mjs.map → chunk-F2GFSFPW.mjs.map} +0 -0
  271. /package/dist/esm/{chunk-GXPGRCSW.mjs.map → chunk-F52GIFKT.mjs.map} +0 -0
  272. /package/dist/esm/{chunk-QNTV5NMH.mjs.map → chunk-FGTQT7Q5.mjs.map} +0 -0
  273. /package/dist/esm/{chunk-RCM3K5JL.mjs.map → chunk-GQI3HWOB.mjs.map} +0 -0
  274. /package/dist/esm/{chunk-2SAKPC5Q.mjs.map → chunk-HQ4DGB7L.mjs.map} +0 -0
  275. /package/dist/esm/{chunk-KNMWDGP4.mjs.map → chunk-IEL6J6Z3.mjs.map} +0 -0
  276. /package/dist/esm/{chunk-NZSGGL25.mjs.map → chunk-IPW2YTRD.mjs.map} +0 -0
  277. /package/dist/esm/{chunk-F6K26WV5.mjs.map → chunk-IU5JZNH4.mjs.map} +0 -0
  278. /package/dist/esm/{chunk-Y6PVFMBS.mjs.map → chunk-KH3M3YPI.mjs.map} +0 -0
  279. /package/dist/esm/{chunk-5OPOJ43H.mjs.map → chunk-KVJ2KGMW.mjs.map} +0 -0
  280. /package/dist/esm/{chunk-WTGGCH34.mjs.map → chunk-N25GOEVL.mjs.map} +0 -0
  281. /package/dist/esm/{chunk-CU2DINU4.mjs.map → chunk-NLONZHYT.mjs.map} +0 -0
  282. /package/dist/esm/{chunk-FZ56IS3E.mjs.map → chunk-NMFS5KAE.mjs.map} +0 -0
  283. /package/dist/esm/{chunk-KZSJ5MFF.mjs.map → chunk-OWP2MKTX.mjs.map} +0 -0
  284. /package/dist/esm/{chunk-QCBIJCU4.mjs.map → chunk-OXO3Z2MF.mjs.map} +0 -0
  285. /package/dist/esm/{chunk-CL5B2QNS.mjs.map → chunk-PANYJULW.mjs.map} +0 -0
  286. /package/dist/esm/{chunk-XMUUI6HG.mjs.map → chunk-PRKZ2KJ4.mjs.map} +0 -0
  287. /package/dist/esm/{chunk-SGTFMSOG.mjs.map → chunk-R3SAAJ2N.mjs.map} +0 -0
  288. /package/dist/esm/{chunk-VQ7LYNMD.mjs.map → chunk-R4APGSSC.mjs.map} +0 -0
  289. /package/dist/esm/{chunk-3F5WV6US.mjs.map → chunk-RCYWJZR4.mjs.map} +0 -0
  290. /package/dist/esm/{chunk-OT2UDMUU.mjs.map → chunk-SR7XLV76.mjs.map} +0 -0
  291. /package/dist/esm/{chunk-APSQ4M23.mjs.map → chunk-T3ID6KFN.mjs.map} +0 -0
  292. /package/dist/esm/{chunk-G36AY4R7.mjs.map → chunk-UR5E2UDO.mjs.map} +0 -0
  293. /package/dist/esm/{chunk-JI2BBZ2W.mjs.map → chunk-UZB7CTLX.mjs.map} +0 -0
  294. /package/dist/esm/{chunk-XITLXPBK.mjs.map → chunk-VMCFN5CT.mjs.map} +0 -0
  295. /package/dist/esm/{chunk-SRGPSANH.mjs.map → chunk-YLI6J47P.mjs.map} +0 -0
  296. /package/dist/esm/{chunk-HC5VMNXA.mjs.map → chunk-ZLYSA7JR.mjs.map} +0 -0
@@ -18,11 +18,7 @@ import { Account } from "../../core";
18
18
  import { waitForTransaction } from "../../internal/transaction";
19
19
  import { generateTransaction, signAndSubmitTransaction } from "../../internal/transactionSubmission";
20
20
  import { PendingTransactionResponse, TransactionResponse } from "../../types";
21
- import {
22
- InputGenerateTransactionOptions,
23
- InputGenerateTransactionPayloadData,
24
- SingleSignerTransaction,
25
- } from "../types";
21
+ import { InputGenerateTransactionOptions, InputGenerateTransactionPayloadData, SimpleTransaction } from "../types";
26
22
  import { AccountSequenceNumber } from "./accountSequenceNumber";
27
23
  import { AsyncQueue, AsyncQueueCancelledError } from "./asyncQueue";
28
24
 
@@ -219,10 +215,7 @@ export class TransactionWorker {
219
215
  * @param sequenceNumber a sequence number the transaction will be generated with
220
216
  * @returns
221
217
  */
222
- async generateNextTransaction(
223
- account: Account,
224
- sequenceNumber: bigint,
225
- ): Promise<SingleSignerTransaction | undefined> {
218
+ async generateNextTransaction(account: Account, sequenceNumber: bigint): Promise<SimpleTransaction | undefined> {
226
219
  if (this.transactionsQueue.isEmpty()) return undefined;
227
220
  const [transactionData, options] = await this.transactionsQueue.dequeue();
228
221
  const transaction = await generateTransaction({
@@ -149,7 +149,7 @@ function parseArg(
149
149
  if (isString(arg)) {
150
150
  return AccountAddress.fromString(arg);
151
151
  }
152
- throwTypeMismatch("string", position);
152
+ throwTypeMismatch("string | AccountAddress", position);
153
153
  }
154
154
  if (param.isU8()) {
155
155
  if (isNumber(arg)) {
@@ -195,7 +195,7 @@ function parseArg(
195
195
  throw new Error(`Generic argument ${param.toString()} is invalid for argument ${position}`);
196
196
  }
197
197
 
198
- checkOrConvertArgument(arg, genericTypeParams[genericIndex], position, genericTypeParams);
198
+ return checkOrConvertArgument(arg, genericTypeParams[genericIndex], position, genericTypeParams);
199
199
  }
200
200
 
201
201
  // We have to special case some vectors for Vector<u8>
@@ -237,7 +237,7 @@ function parseArg(
237
237
  if (isString(arg)) {
238
238
  return AccountAddress.fromString(arg);
239
239
  }
240
- throwTypeMismatch("string", position);
240
+ throwTypeMismatch("string | AccountAddress", position);
241
241
  }
242
242
 
243
243
  if (param.isOption()) {
@@ -313,7 +313,12 @@ function checkType(param: TypeTag, arg: EntryFunctionArgumentTypes, position: nu
313
313
  }
314
314
  if (param.isVector()) {
315
315
  if (arg instanceof MoveVector) {
316
- // TODO: More introspection to verify the type
316
+ // If there's anything in it, check that the inner types match
317
+ // Note that since it's typed, the first item should be the same as the rest
318
+ if (arg.values.length > 0) {
319
+ checkType(param.value, arg.values[0], position);
320
+ }
321
+
317
322
  return;
318
323
  }
319
324
  throwTypeMismatch("MoveVector", position);
@@ -335,7 +340,10 @@ function checkType(param: TypeTag, arg: EntryFunctionArgumentTypes, position: nu
335
340
  }
336
341
  if (param.isOption()) {
337
342
  if (arg instanceof MoveOption) {
338
- // TODO: more introspection for the type
343
+ // If there's a value, we can check the inner type (otherwise it doesn't really matter)
344
+ if (arg.value !== undefined) {
345
+ checkType(param.value.typeArgs[0], arg.value, position);
346
+ }
339
347
  return;
340
348
  }
341
349
  throwTypeMismatch("MoveOption", position);
@@ -59,7 +59,7 @@ import {
59
59
  InputGenerateMultiAgentRawTransactionArgs,
60
60
  InputGenerateRawTransactionArgs,
61
61
  InputGenerateSingleSignerRawTransactionArgs,
62
- SingleSignerTransaction,
62
+ SimpleTransaction,
63
63
  InputGenerateTransactionOptions,
64
64
  MultiAgentTransaction,
65
65
  InputScriptData,
@@ -245,9 +245,7 @@ export async function generateRawTransaction(args: {
245
245
  * When we call our `generateTransaction` function with the relevant type properties,
246
246
  * Typescript can infer the return type based on the appropriate function overload.
247
247
  */
248
- export async function buildTransaction(
249
- args: InputGenerateSingleSignerRawTransactionArgs,
250
- ): Promise<SingleSignerTransaction>;
248
+ export async function buildTransaction(args: InputGenerateSingleSignerRawTransactionArgs): Promise<SimpleTransaction>;
251
249
  export async function buildTransaction(args: InputGenerateMultiAgentRawTransactionArgs): Promise<MultiAgentTransaction>;
252
250
 
253
251
  /**
@@ -254,6 +254,7 @@ export class TypeTagGeneric extends TypeTag {
254
254
 
255
255
  constructor(public readonly value: number) {
256
256
  super();
257
+ if (value < 0) throw new Error("Generic type parameter index cannot be negative");
257
258
  }
258
259
 
259
260
  serialize(serializer: Serializer): void {
@@ -181,7 +181,7 @@ export type InputGenerateRawTransactionArgs =
181
181
  *
182
182
  * @param rawTransaction a bcs serialized raw transaction
183
183
  */
184
- export interface SingleSignerTransaction {
184
+ export interface SimpleTransaction {
185
185
  rawTransaction: RawTransaction;
186
186
  feePayerAddress?: AccountAddress;
187
187
  secondarySignerAddresses?: undefined;
@@ -202,7 +202,7 @@ export interface MultiAgentTransaction {
202
202
  /**
203
203
  * Unified type that holds all the return interfaces when generating different transaction types
204
204
  */
205
- export type AnyRawTransaction = SingleSignerTransaction | MultiAgentTransaction;
205
+ export type AnyRawTransaction = SimpleTransaction | MultiAgentTransaction;
206
206
 
207
207
  // TRANSACTION SIMULATION TYPES //
208
208
 
package/src/version.ts CHANGED
@@ -6,4 +6,4 @@
6
6
  *
7
7
  * hardcoded for now, we would want to have it injected dynamically
8
8
  */
9
- export const VERSION = "0.0.8";
9
+ export const VERSION = "1.1.0";
@@ -1,113 +0,0 @@
1
- import { AptosConfig } from './aptosConfig.mjs';
2
- import { Account } from '../core/account.mjs';
3
- import { AccountAddressInput } from '../core/accountAddress.mjs';
4
- import { PrivateKey } from '../core/crypto/asymmetricCrypto.mjs';
5
- import { PendingTransactionResponse, HexInput, TransactionResponse } from '../types/index.mjs';
6
- import { InputGenerateTransactionPayloadData, InputGenerateTransactionOptions, AnyRawTransaction, SingleSignerTransaction } from '../transactions/types.mjs';
7
- import '../utils/apiEndpoints.mjs';
8
- import '../utils/const.mjs';
9
- import '../core/authenticationKey.mjs';
10
- import '../core/hex.mjs';
11
- import '../core/common.mjs';
12
- import '../bcs/serializer.mjs';
13
- import '../bcs/deserializer.mjs';
14
- import '../transactions/instances/transactionArgument.mjs';
15
- import '../types/indexer.mjs';
16
- import '../types/generated/operations.mjs';
17
- import '../types/generated/types.mjs';
18
- import '../bcs/serializable/moveStructs.mjs';
19
- import '../bcs/serializable/movePrimitives.mjs';
20
- import '../bcs/serializable/fixedBytes.mjs';
21
- import '../transactions/instances/rawTransaction.mjs';
22
- import '../transactions/instances/chainId.mjs';
23
- import '../transactions/instances/transactionPayload.mjs';
24
- import '../transactions/instances/identifier.mjs';
25
- import '../transactions/instances/moduleId.mjs';
26
- import '../transactions/typeTag/index.mjs';
27
- import '../transactions/authenticator/account.mjs';
28
- import '../core/crypto/anyPublicKey.mjs';
29
- import '../core/crypto/anySignature.mjs';
30
- import '../core/crypto/ed25519.mjs';
31
- import '../core/crypto/secp256k1.mjs';
32
- import '../core/crypto/multiEd25519.mjs';
33
- import '../core/crypto/multiKey.mjs';
34
-
35
- declare class TransactionSubmission {
36
- readonly config: AptosConfig;
37
- constructor(config: AptosConfig);
38
- /**
39
- * Batch transactions for a single account.
40
- *
41
- * This function uses a transaction worker that receives payloads to be processed
42
- * and submitted to chain.
43
- * Note that this process is best for submitting multiple transactions that
44
- * dont rely on each other, i.e batch funds, batch token mints, etc.
45
- *
46
- * If any worker failure, the functions throws an error.
47
- *
48
- * @param args.sender The sender account to sign and submit the transaction
49
- * @param args.data An array of transaction payloads
50
- * @param args.options optional. Transaction generation configurations (excluding accountSequenceNumber)
51
- *
52
- * @return void. Throws if any error
53
- */
54
- batchTransactionsForSingleAccount(args: {
55
- sender: Account;
56
- data: InputGenerateTransactionPayloadData[];
57
- options?: Omit<InputGenerateTransactionOptions, "accountSequenceNumber">;
58
- }): Promise<void>;
59
- /**
60
- * Sign and submit a single signer transaction to chain
61
- *
62
- * @param args.signer The signer account to sign the transaction
63
- * @param args.transaction An instance of a RawTransaction, plus optional secondary/fee payer addresses
64
- * ```
65
- * {
66
- * rawTransaction: RawTransaction,
67
- * secondarySignerAddresses? : Array<AccountAddress>,
68
- * feePayerAddress?: AccountAddress
69
- * }
70
- * ```
71
- *
72
- * @return PendingTransactionResponse
73
- */
74
- signAndSubmitTransaction(args: {
75
- signer: Account;
76
- transaction: AnyRawTransaction;
77
- }): Promise<PendingTransactionResponse>;
78
- /**
79
- * Generates a transaction to publish a move package to chain.
80
- *
81
- * To get the `metadataBytes` and `byteCode`, can compile using Aptos CLI with command
82
- * `aptos move compile --save-metadata ...`,
83
- * For more info {@link https://aptos.dev/tutorials/your-first-dapp/#step-4-publish-a-move-module}
84
- *
85
- * @param args.account The publisher account
86
- * @param args.metadataBytes The package metadata bytes
87
- * @param args.moduleBytecode An array of the bytecode of each module in the package in compiler output order
88
- *
89
- * @returns A SingleSignerTransaction that can be simulated or submitted to chain
90
- */
91
- publishPackageTransaction(args: {
92
- account: AccountAddressInput;
93
- metadataBytes: HexInput;
94
- moduleBytecode: Array<HexInput>;
95
- options?: InputGenerateTransactionOptions;
96
- }): Promise<SingleSignerTransaction>;
97
- /**
98
- * Rotate an account's auth key. After rotation, only the new private key can be used to sign txns for
99
- * the account.
100
- * Note: Only legacy Ed25519 scheme is supported for now.
101
- * More info: {@link https://aptos.dev/guides/account-management/key-rotation/}
102
- * @param args.fromAccount The account to rotate the auth key for
103
- * @param args.toNewPrivateKey The new private key to rotate to
104
- *
105
- * @returns PendingTransactionResponse
106
- */
107
- rotateAuthKey(args: {
108
- fromAccount: Account;
109
- toNewPrivateKey: PrivateKey;
110
- }): Promise<TransactionResponse>;
111
- }
112
-
113
- export { TransactionSubmission };
@@ -1,2 +0,0 @@
1
- import{a}from"../chunk-XX2Z26FH.mjs";import"../chunk-IHYTP2EW.mjs";import"../chunk-OZZDXS26.mjs";import"../chunk-Y6PVFMBS.mjs";import"../chunk-U6Z4FNB7.mjs";import"../chunk-CLJLQXFQ.mjs";import"../chunk-GIZLK7M7.mjs";import"../chunk-5CUNY7X2.mjs";import"../chunk-F7EWDYTE.mjs";import"../chunk-GXPGRCSW.mjs";import"../chunk-HTZTTZQJ.mjs";import"../chunk-2SAKPC5Q.mjs";import"../chunk-QCBIJCU4.mjs";import"../chunk-RCM3K5JL.mjs";import"../chunk-HTI5LEST.mjs";import"../chunk-CJPCOS4R.mjs";import"../chunk-CL5B2QNS.mjs";import"../chunk-YN6UIVFB.mjs";import"../chunk-QNTV5NMH.mjs";import"../chunk-XMUUI6HG.mjs";import"../chunk-CU2DINU4.mjs";import"../chunk-UYVPNUH3.mjs";import"../chunk-SGTFMSOG.mjs";import"../chunk-GEZSEAL5.mjs";import"../chunk-3JPVQHOR.mjs";import"../chunk-AH44UPM4.mjs";import"../chunk-E7FWVXGX.mjs";import"../chunk-UIVJXLRM.mjs";import"../chunk-5OPOJ43H.mjs";import"../chunk-SSJQOXEP.mjs";import"../chunk-WTGGCH34.mjs";import"../chunk-AZUWHKN5.mjs";import"../chunk-FZ56IS3E.mjs";import"../chunk-KZSJ5MFF.mjs";import"../chunk-3F5WV6US.mjs";import"../chunk-UW6HQ643.mjs";import"../chunk-LR65XHSF.mjs";import"../chunk-PXTMLJKO.mjs";import"../chunk-FZY4PMEE.mjs";import"../chunk-53DS6NBQ.mjs";import"../chunk-73VWOS4Z.mjs";import"../chunk-PL2VA73L.mjs";import"../chunk-XITLXPBK.mjs";import"../chunk-UDMADMVO.mjs";import"../chunk-G36AY4R7.mjs";import"../chunk-F6K26WV5.mjs";import"../chunk-DNDWTM7A.mjs";import"../chunk-NL72WE3E.mjs";import"../chunk-FBPNHF54.mjs";import"../chunk-OT2UDMUU.mjs";import"../chunk-BQSE5HHW.mjs";import"../chunk-N2FKVZ4D.mjs";import"../chunk-JI2BBZ2W.mjs";import"../chunk-HC5VMNXA.mjs";import"../chunk-SO6EE5DX.mjs";import"../chunk-6FBKUTGF.mjs";import"../chunk-ALFESCPU.mjs";import"../chunk-4WPQQPUF.mjs";import"../chunk-SDPICQ5B.mjs";import"../chunk-EOC4UI5B.mjs";import"../chunk-LV33NV4J.mjs";import"../chunk-ZWH2ESXT.mjs";export{a as TransactionSubmission};
2
- //# sourceMappingURL=transactionSubmission.mjs.map
@@ -1,2 +0,0 @@
1
- import{a as d}from"./chunk-EFRFDFS4.mjs";import{a as y}from"./chunk-RLG3WOTH.mjs";import{a as b}from"./chunk-P5747ZYC.mjs";import{a as A}from"./chunk-ZFK7QD3B.mjs";import{a as c}from"./chunk-MWAMLQ25.mjs";import{a as g}from"./chunk-SRGPSANH.mjs";import{a as f}from"./chunk-QEXAMHPU.mjs";import{a as m}from"./chunk-VQ7LYNMD.mjs";import{a as u}from"./chunk-KNMWDGP4.mjs";import{a as h}from"./chunk-5ZVCSKFX.mjs";import{a as p}from"./chunk-XX2Z26FH.mjs";import{a as e}from"./chunk-NZSGGL25.mjs";import{a as l}from"./chunk-UWXDXOFK.mjs";import{a as S}from"./chunk-3RMXGSHK.mjs";import{a as r}from"./chunk-5UY5OKXR.mjs";import{a}from"./chunk-IELTCGLP.mjs";var i=class{constructor(n){this.config=new S(n),this.account=new e(this.config),this.ans=new l(this.config),this.coin=new r(this.config),this.digitalAsset=new a(this.config),this.event=new c(this.config),this.faucet=new g(this.config),this.fungibleAsset=new f(this.config),this.general=new m(this.config),this.staking=new u(this.config),this.transaction=new h(this.config),this.transactionSubmission=new p(this.config),this.build=new d(this.config),this.sign=new y(this.config),this.simulate=new b(this.config),this.submit=new A(this.config)}};function t(w,n,v){Object.getOwnPropertyNames(n.prototype).forEach(o=>{let s=Object.getOwnPropertyDescriptor(n.prototype,o);s&&(s.value=function(...k){return this[v][o](...k)},Object.defineProperty(w.prototype,o,s))})}t(i,e,"account");t(i,l,"ans");t(i,r,"coin");t(i,a,"digitalAsset");t(i,c,"event");t(i,g,"faucet");t(i,f,"fungibleAsset");t(i,m,"general");t(i,u,"staking");t(i,h,"transaction");t(i,p,"transactionSubmission");t(i,d,"build");t(i,y,"sign");t(i,b,"simulate");t(i,A,"submit");export{i as a};
2
- //# sourceMappingURL=chunk-2YQXX64E.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/api/aptos.ts"],"sourcesContent":["// Copyright © Aptos Foundation\n// SPDX-License-Identifier: Apache-2.0\n\nimport { Account } from \"./account\";\nimport { AptosConfig } from \"./aptosConfig\";\nimport { Coin } from \"./coin\";\nimport { DigitalAsset } from \"./digitalAsset\";\nimport { Event } from \"./event\";\nimport { Faucet } from \"./faucet\";\nimport { FungibleAsset } from \"./fungibleAsset\";\nimport { General } from \"./general\";\nimport { ANS } from \"./ans\";\nimport { Staking } from \"./staking\";\nimport { Transaction } from \"./transaction\";\nimport { TransactionSubmission } from \"./transactionSubmission\";\nimport { Build } from \"./transactionSubmission/build\";\nimport { Sign } from \"./transactionSubmission/sign\";\nimport { Simulate } from \"./transactionSubmission/simulate\";\nimport { Submit } from \"./transactionSubmission/submit\";\n\n/**\n * This class is the main entry point into Aptos's\n * APIs and separates functionality into different namespaces.\n *\n * To use the SDK, create a new Aptos instance to get access\n * to all the sdk functionality.\n */\nexport class Aptos {\n readonly config: AptosConfig;\n\n readonly account: Account;\n\n readonly ans: ANS;\n\n readonly coin: Coin;\n\n readonly digitalAsset: DigitalAsset;\n\n readonly event: Event;\n\n readonly faucet: Faucet;\n\n readonly fungibleAsset: FungibleAsset;\n\n readonly general: General;\n\n readonly staking: Staking;\n\n readonly transaction: Transaction;\n\n readonly transactionSubmission: TransactionSubmission;\n\n readonly build: Build;\n\n readonly sign: Sign;\n\n readonly simulate: Simulate;\n\n readonly submit: Submit;\n\n constructor(settings?: AptosConfig) {\n this.config = new AptosConfig(settings);\n this.account = new Account(this.config);\n this.ans = new ANS(this.config);\n this.coin = new Coin(this.config);\n this.digitalAsset = new DigitalAsset(this.config);\n this.event = new Event(this.config);\n this.faucet = new Faucet(this.config);\n this.fungibleAsset = new FungibleAsset(this.config);\n this.general = new General(this.config);\n this.staking = new Staking(this.config);\n this.transaction = new Transaction(this.config);\n this.transactionSubmission = new TransactionSubmission(this.config);\n this.build = new Build(this.config);\n this.sign = new Sign(this.config);\n this.simulate = new Simulate(this.config);\n this.submit = new Submit(this.config);\n }\n}\n\nexport interface Aptos\n extends Account,\n Coin,\n DigitalAsset,\n Event,\n Faucet,\n FungibleAsset,\n General,\n Staking,\n Transaction,\n ANS,\n TransactionSubmission {}\n\n/**\nIn TypeScript, we can’t inherit or extend from more than one class,\nMixins helps us to get around that by creating a partial classes\nthat we can combine to form a single class that contains all the methods and properties from the partial classes.\n{@link https://www.typescriptlang.org/docs/handbook/mixins.html#alternative-pattern}\n\nHere, we combine any subclass and the Aptos class.\n*/\nfunction applyMixin(targetClass: any, baseClass: any, baseClassProp: string) {\n // Mixin instance methods\n Object.getOwnPropertyNames(baseClass.prototype).forEach((propertyName) => {\n const propertyDescriptor = Object.getOwnPropertyDescriptor(baseClass.prototype, propertyName);\n if (!propertyDescriptor) return;\n // eslint-disable-next-line func-names\n propertyDescriptor.value = function (...args: any) {\n return (this as any)[baseClassProp][propertyName](...args);\n };\n Object.defineProperty(targetClass.prototype, propertyName, propertyDescriptor);\n });\n}\n\napplyMixin(Aptos, Account, \"account\");\napplyMixin(Aptos, ANS, \"ans\");\napplyMixin(Aptos, Coin, \"coin\");\napplyMixin(Aptos, DigitalAsset, \"digitalAsset\");\napplyMixin(Aptos, Event, \"event\");\napplyMixin(Aptos, Faucet, \"faucet\");\napplyMixin(Aptos, FungibleAsset, \"fungibleAsset\");\napplyMixin(Aptos, General, \"general\");\napplyMixin(Aptos, Staking, \"staking\");\napplyMixin(Aptos, Transaction, \"transaction\");\napplyMixin(Aptos, TransactionSubmission, \"transactionSubmission\");\napplyMixin(Aptos, Build, \"build\");\napplyMixin(Aptos, Sign, \"sign\");\napplyMixin(Aptos, Simulate, \"simulate\");\napplyMixin(Aptos, Submit, \"submit\");\n"],"mappings":"2oBA2BO,IAAMA,EAAN,KAAY,CAiCjB,YAAYC,EAAwB,CAClC,KAAK,OAAS,IAAIC,EAAYD,CAAQ,EACtC,KAAK,QAAU,IAAIE,EAAQ,KAAK,MAAM,EACtC,KAAK,IAAM,IAAIC,EAAI,KAAK,MAAM,EAC9B,KAAK,KAAO,IAAIC,EAAK,KAAK,MAAM,EAChC,KAAK,aAAe,IAAIC,EAAa,KAAK,MAAM,EAChD,KAAK,MAAQ,IAAIC,EAAM,KAAK,MAAM,EAClC,KAAK,OAAS,IAAIC,EAAO,KAAK,MAAM,EACpC,KAAK,cAAgB,IAAIC,EAAc,KAAK,MAAM,EAClD,KAAK,QAAU,IAAIC,EAAQ,KAAK,MAAM,EACtC,KAAK,QAAU,IAAIC,EAAQ,KAAK,MAAM,EACtC,KAAK,YAAc,IAAIC,EAAY,KAAK,MAAM,EAC9C,KAAK,sBAAwB,IAAIC,EAAsB,KAAK,MAAM,EAClE,KAAK,MAAQ,IAAIC,EAAM,KAAK,MAAM,EAClC,KAAK,KAAO,IAAIC,EAAK,KAAK,MAAM,EAChC,KAAK,SAAW,IAAIC,EAAS,KAAK,MAAM,EACxC,KAAK,OAAS,IAAIC,EAAO,KAAK,MAAM,CACtC,CACF,EAuBA,SAASC,EAAWC,EAAkBC,EAAgBC,EAAuB,CAE3E,OAAO,oBAAoBD,EAAU,SAAS,EAAE,QAASE,GAAiB,CACxE,IAAMC,EAAqB,OAAO,yBAAyBH,EAAU,UAAWE,CAAY,EACvFC,IAELA,EAAmB,MAAQ,YAAaC,EAAW,CACjD,OAAQ,KAAaH,CAAa,EAAEC,CAAY,EAAE,GAAGE,CAAI,CAC3D,EACA,OAAO,eAAeL,EAAY,UAAWG,EAAcC,CAAkB,EAC/E,CAAC,CACH,CAEAL,EAAWlB,EAAOG,EAAS,SAAS,EACpCe,EAAWlB,EAAOI,EAAK,KAAK,EAC5Bc,EAAWlB,EAAOK,EAAM,MAAM,EAC9Ba,EAAWlB,EAAOM,EAAc,cAAc,EAC9CY,EAAWlB,EAAOO,EAAO,OAAO,EAChCW,EAAWlB,EAAOQ,EAAQ,QAAQ,EAClCU,EAAWlB,EAAOS,EAAe,eAAe,EAChDS,EAAWlB,EAAOU,EAAS,SAAS,EACpCQ,EAAWlB,EAAOW,EAAS,SAAS,EACpCO,EAAWlB,EAAOY,EAAa,aAAa,EAC5CM,EAAWlB,EAAOa,EAAuB,uBAAuB,EAChEK,EAAWlB,EAAOc,EAAO,OAAO,EAChCI,EAAWlB,EAAOe,EAAM,MAAM,EAC9BG,EAAWlB,EAAOgB,EAAU,UAAU,EACtCE,EAAWlB,EAAOiB,EAAQ,QAAQ","names":["Aptos","settings","AptosConfig","Account","ANS","Coin","DigitalAsset","Event","Faucet","FungibleAsset","General","Staking","Transaction","TransactionSubmission","Build","Sign","Simulate","Submit","applyMixin","targetClass","baseClass","baseClassProp","propertyName","propertyDescriptor","args"]}
@@ -1,2 +0,0 @@
1
- import{a as p,b as f,c as T,d as U,e as M,f as O,g as C,h as m,i as V,k as _,l as G,m as j,n as k,o as H,p as z,r,s as L}from"./chunk-F7EWDYTE.mjs";import{c as w}from"./chunk-GXPGRCSW.mjs";import{n as I}from"./chunk-YN6UIVFB.mjs";import{c as x}from"./chunk-SGTFMSOG.mjs";import{a as c,b as v,c as y}from"./chunk-53DS6NBQ.mjs";import{a as h,b as E,c as B,d as S,e as b,f as $,g as F}from"./chunk-XITLXPBK.mjs";import{b as g}from"./chunk-G36AY4R7.mjs";import{b as d}from"./chunk-NL72WE3E.mjs";function Z(n){return n?.map(e=>f(e)?w(e):e)??[]}async function P(n,e,t,i){let s=(await x({aptosConfig:i,accountAddress:n,moduleName:e})).abi?.exposed_functions.find(o=>o.name===t);if(!s)throw new Error(`Could not find entry function ABI for '${n}::${e}::${t}'`);if(!s.is_entry)throw new Error(`'${n}::${e}::${t}' is not an entry function`);let q=L(s),l=[];for(let o=q;o<s.params.length;o+=1)l.push(w(s.params[o],{allowGenerics:!0}));return{typeParameters:s.generic_type_params,parameters:l}}function a(n,e,t,i,u){if(i>=e.parameters.length)throw new Error(`Too many arguments for '${n}', expected ${e.parameters.length}`);let s=e.parameters[i];return A(t,s,i,u)}function A(n,e,t,i){return O(n)?(J(e,n,t),n):D(n,e,t,i)}function D(n,e,t,i){if(e.isBool()){if(p(n))return new h(n);r("boolean",t)}if(e.isAddress()){if(f(n))return g.fromString(n);r("string",t)}if(e.isU8()){if(T(n))return new E(n);r("number",t)}if(e.isU16()){if(T(n))return new B(n);r("number",t)}if(e.isU32()){if(T(n))return new S(n);r("number",t)}if(e.isU64()){if(U(n))return new b(BigInt(n));r("bigint | number | string",t)}if(e.isU128()){if(U(n))return new $(BigInt(n));r("bigint | number | string",t)}if(e.isU256()){if(U(n))return new F(BigInt(n));r("bigint | number | string",t)}if(e.isGeneric()){let u=e.value;if(u<0||u>=i.length)throw new Error(`Generic argument ${e.toString()} is invalid for argument ${t}`);A(n,i[u],t,i)}if(e.isVector()){if(e.value.isU8()){if(f(n))try{return c.U8(d.fromHexInput(n).toUint8Array())}catch{throw new Error(`vector<u8> must be passed in as a hex string or a Uint8array, type '${e.toString()}'`)}if(n instanceof Uint8Array)return c.U8(n)}if(Array.isArray(n))return new c(n.map(u=>A(u,e.value,t,i)));throw new Error(`Type mismatch for argument ${t}, type '${e.toString()}'`)}if(e.isStruct()){if(e.isString()){if(f(n))return new v(n);r("string",t)}if(e.isObject()){if(f(n))return g.fromString(n);r("string",t)}if(e.isOption())return M(n)?new y(null):new y(A(n,e.value.typeArgs[0],t,i));throw new Error(`Unsupported struct input type for argument ${t}, type '${e.toString()}'`)}throw new Error(`Type mismatch for argument ${t}, type '${e.toString()}'`)}function J(n,e,t){if(n.isBool()){if(C(e))return;r("Bool",t)}if(n.isAddress()){if(m(e))return;r("AccountAddress",t)}if(n.isU8()){if(_(e))return;r("U8",t)}if(n.isU16()){if(G(e))return;r("U16",t)}if(n.isU32()){if(j(e))return;r("U32",t)}if(n.isU64()){if(k(e))return;r("U64",t)}if(n.isU128()){if(H(e))return;r("U128",t)}if(n.isU256()){if(z(e))return;r("U256",t)}if(n.isVector()){if(e instanceof c)return;r("MoveVector",t)}if(n instanceof I){if(n.isString()){if(V(e))return;r("MoveString",t)}if(n.isObject()){if(m(e))return;r("AccountAddress",t)}if(n.isOption()){if(e instanceof y)return;r("MoveOption",t)}}throw new Error(`Type mismatch for argument ${t}, expected '${n.toString()}'`)}export{Z as a,P as b,a as c,A as d};
2
- //# sourceMappingURL=chunk-5CUNY7X2.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/transactions/transactionBuilder/remoteAbi.ts"],"sourcesContent":["// Copyright © Aptos Foundation\n// SPDX-License-Identifier: Apache-2.0\n\nimport { parseTypeTag } from \"../typeTag/parser\";\nimport { TypeTag, TypeTagStruct } from \"../typeTag\";\nimport { AptosConfig } from \"../../api/aptosConfig\";\nimport { EntryFunctionArgumentTypes, SimpleEntryFunctionArgumentTypes, EntryFunctionABI } from \"../types\";\nimport { Bool, MoveOption, MoveString, MoveVector, U128, U16, U256, U32, U64, U8 } from \"../../bcs\";\nimport { AccountAddress, Hex } from \"../../core\";\nimport { getModule } from \"../../internal/account\";\nimport {\n findFirstNonSignerArg,\n isBcsAddress,\n isBcsBool,\n isBcsString,\n isBcsU128,\n isBcsU16,\n isBcsU256,\n isBcsU32,\n isBcsU64,\n isBcsU8,\n isBool,\n isEncodedEntryFunctionArgument,\n isLargeNumber,\n isNull,\n isNumber,\n isString,\n throwTypeMismatch,\n} from \"./helpers\";\n\n/**\n * Convert type arguments to only type tags, allowing for string representations of type tags\n */\nexport function standardizeTypeTags(typeArguments?: Array<TypeTag | string>): Array<TypeTag> {\n return (\n typeArguments?.map((typeArg: string | TypeTag): TypeTag => {\n // Convert to TypeTag if it's a string representation\n if (isString(typeArg)) {\n return parseTypeTag(typeArg);\n }\n return typeArg;\n }) ?? []\n );\n}\n\n/**\n * Fetches the ABI for an entry function from the module\n *\n * @param moduleAddress\n * @param moduleName\n * @param functionName\n * @param aptosConfig\n */\nexport async function fetchEntryFunctionAbi(\n moduleAddress: string,\n moduleName: string,\n functionName: string,\n aptosConfig: AptosConfig,\n): Promise<EntryFunctionABI> {\n // This fetch from the API is currently cached\n const module = await getModule({ aptosConfig, accountAddress: moduleAddress, moduleName });\n\n const functionAbi = module.abi?.exposed_functions.find((func) => func.name === functionName);\n\n // If there's no ABI, then the function is invalid\n if (!functionAbi) {\n throw new Error(`Could not find entry function ABI for '${moduleAddress}::${moduleName}::${functionName}'`);\n }\n\n // Non-entry functions also can't be used\n if (!functionAbi.is_entry) {\n throw new Error(`'${moduleAddress}::${moduleName}::${functionName}' is not an entry function`);\n }\n\n // Remove the signer arguments\n const first = findFirstNonSignerArg(functionAbi);\n const params: TypeTag[] = [];\n for (let i = first; i < functionAbi.params.length; i += 1) {\n params.push(parseTypeTag(functionAbi.params[i], { allowGenerics: true }));\n }\n\n return {\n typeParameters: functionAbi.generic_type_params,\n parameters: params,\n };\n}\n\n/**\n * Converts a non-BCS encoded argument into BCS encoded, if necessary\n * @param functionName\n * @param functionAbi\n * @param arg\n * @param position\n */\nexport function convertArgument(\n functionName: string,\n functionAbi: EntryFunctionABI,\n arg: EntryFunctionArgumentTypes | SimpleEntryFunctionArgumentTypes,\n position: number,\n genericTypeParams: Array<TypeTag>,\n) {\n // Ensure not too many arguments\n if (position >= functionAbi.parameters.length) {\n throw new Error(`Too many arguments for '${functionName}', expected ${functionAbi.parameters.length}`);\n }\n\n const param = functionAbi.parameters[position];\n return checkOrConvertArgument(arg, param, position, genericTypeParams);\n}\n\nexport function checkOrConvertArgument(\n arg: SimpleEntryFunctionArgumentTypes | EntryFunctionArgumentTypes,\n param: TypeTag,\n position: number,\n genericTypeParams: Array<TypeTag>,\n) {\n // If the argument is bcs encoded, we can just use it directly\n if (isEncodedEntryFunctionArgument(arg)) {\n // Ensure the type matches the ABI\n checkType(param, arg, position);\n return arg;\n }\n\n // If it is not BCS encoded, we will need to convert it with the ABI\n return parseArg(arg, param, position, genericTypeParams);\n}\n\n/**\n * Parses a non-BCS encoded argument into a BCS encoded argument recursively\n * @param arg\n * @param param\n * @param position\n * @param genericTypeParams\n */\nfunction parseArg(\n arg: SimpleEntryFunctionArgumentTypes,\n param: TypeTag,\n position: number,\n genericTypeParams: Array<TypeTag>,\n): EntryFunctionArgumentTypes {\n if (param.isBool()) {\n if (isBool(arg)) {\n return new Bool(arg);\n }\n throwTypeMismatch(\"boolean\", position);\n }\n // TODO: support uint8array?\n if (param.isAddress()) {\n if (isString(arg)) {\n return AccountAddress.fromString(arg);\n }\n throwTypeMismatch(\"string\", position);\n }\n if (param.isU8()) {\n if (isNumber(arg)) {\n return new U8(arg);\n }\n throwTypeMismatch(\"number\", position);\n }\n if (param.isU16()) {\n if (isNumber(arg)) {\n return new U16(arg);\n }\n throwTypeMismatch(\"number\", position);\n }\n if (param.isU32()) {\n if (isNumber(arg)) {\n return new U32(arg);\n }\n throwTypeMismatch(\"number\", position);\n }\n if (param.isU64()) {\n if (isLargeNumber(arg)) {\n return new U64(BigInt(arg));\n }\n throwTypeMismatch(\"bigint | number | string\", position);\n }\n if (param.isU128()) {\n if (isLargeNumber(arg)) {\n return new U128(BigInt(arg));\n }\n throwTypeMismatch(\"bigint | number | string\", position);\n }\n if (param.isU256()) {\n if (isLargeNumber(arg)) {\n return new U256(BigInt(arg));\n }\n throwTypeMismatch(\"bigint | number | string\", position);\n }\n\n // Generic needs to use the sub-type\n if (param.isGeneric()) {\n const genericIndex = param.value;\n if (genericIndex < 0 || genericIndex >= genericTypeParams.length) {\n throw new Error(`Generic argument ${param.toString()} is invalid for argument ${position}`);\n }\n\n checkOrConvertArgument(arg, genericTypeParams[genericIndex], position, genericTypeParams);\n }\n\n // We have to special case some vectors for Vector<u8>\n if (param.isVector()) {\n // Check special case for Vector<u8>\n if (param.value.isU8()) {\n if (isString(arg)) {\n try {\n return MoveVector.U8(Hex.fromHexInput(arg).toUint8Array());\n } catch (e: any) {\n // This is a bit of a hack to not reuse code, but also have a better error message\n throw new Error(`vector<u8> must be passed in as a hex string or a Uint8array, type '${param.toString()}'`);\n }\n }\n if (arg instanceof Uint8Array) {\n return MoveVector.U8(arg);\n }\n }\n\n // TODO: Support Uint16Array, Uint32Array, BigUint64Array?\n\n if (Array.isArray(arg)) {\n return new MoveVector(arg.map((item) => checkOrConvertArgument(item, param.value, position, genericTypeParams)));\n }\n\n throw new Error(`Type mismatch for argument ${position}, type '${param.toString()}'`);\n }\n\n // Handle structs as they're more complex\n if (param.isStruct()) {\n if (param.isString()) {\n if (isString(arg)) {\n return new MoveString(arg);\n }\n throwTypeMismatch(\"string\", position);\n }\n if (param.isObject()) {\n // The inner type of Object doesn't matter, since it's just syntactic sugar\n if (isString(arg)) {\n return AccountAddress.fromString(arg);\n }\n throwTypeMismatch(\"string\", position);\n }\n\n if (param.isOption()) {\n // Empty option must be handled specially\n if (isNull(arg)) {\n // Note: This is a placeholder U8 type, and does not match the actual type, as that can't be dynamically grabbed\n return new MoveOption<U8>(null);\n }\n\n return new MoveOption(checkOrConvertArgument(arg, param.value.typeArgs[0], position, genericTypeParams));\n }\n\n throw new Error(`Unsupported struct input type for argument ${position}, type '${param.toString()}'`);\n }\n\n throw new Error(`Type mismatch for argument ${position}, type '${param.toString()}'`);\n}\n\n/**\n * Checks that the type of an already BCS encoded argument matches the ABI\n * @param param\n * @param arg\n * @param position\n */\nfunction checkType(param: TypeTag, arg: EntryFunctionArgumentTypes, position: number) {\n if (param.isBool()) {\n if (isBcsBool(arg)) {\n return;\n }\n throwTypeMismatch(\"Bool\", position);\n }\n if (param.isAddress()) {\n if (isBcsAddress(arg)) {\n return;\n }\n throwTypeMismatch(\"AccountAddress\", position);\n }\n if (param.isU8()) {\n if (isBcsU8(arg)) {\n return;\n }\n throwTypeMismatch(\"U8\", position);\n }\n if (param.isU16()) {\n if (isBcsU16(arg)) {\n return;\n }\n throwTypeMismatch(\"U16\", position);\n }\n if (param.isU32()) {\n if (isBcsU32(arg)) {\n return;\n }\n throwTypeMismatch(\"U32\", position);\n }\n if (param.isU64()) {\n if (isBcsU64(arg)) {\n return;\n }\n throwTypeMismatch(\"U64\", position);\n }\n if (param.isU128()) {\n if (isBcsU128(arg)) {\n return;\n }\n throwTypeMismatch(\"U128\", position);\n }\n if (param.isU256()) {\n if (isBcsU256(arg)) {\n return;\n }\n throwTypeMismatch(\"U256\", position);\n }\n if (param.isVector()) {\n if (arg instanceof MoveVector) {\n // TODO: More introspection to verify the type\n return;\n }\n throwTypeMismatch(\"MoveVector\", position);\n }\n\n // Handle structs as they're more complex\n if (param instanceof TypeTagStruct) {\n if (param.isString()) {\n if (isBcsString(arg)) {\n return;\n }\n throwTypeMismatch(\"MoveString\", position);\n }\n if (param.isObject()) {\n if (isBcsAddress(arg)) {\n return;\n }\n throwTypeMismatch(\"AccountAddress\", position);\n }\n if (param.isOption()) {\n if (arg instanceof MoveOption) {\n // TODO: more introspection for the type\n return;\n }\n throwTypeMismatch(\"MoveOption\", position);\n }\n }\n\n throw new Error(`Type mismatch for argument ${position}, expected '${param.toString()}'`);\n}\n"],"mappings":"2eAiCO,SAASA,EAAoBC,EAAyD,CAC3F,OACEA,GAAe,IAAKC,GAEdC,EAASD,CAAO,EACXE,EAAaF,CAAO,EAEtBA,CACR,GAAK,CAAC,CAEX,CAUA,eAAsBG,EACpBC,EACAC,EACAC,EACAC,EAC2B,CAI3B,IAAMC,GAFS,MAAMC,EAAU,CAAE,YAAAF,EAAa,eAAgBH,EAAe,WAAAC,CAAW,CAAC,GAE9D,KAAK,kBAAkB,KAAMK,GAASA,EAAK,OAASJ,CAAY,EAG3F,GAAI,CAACE,EACH,MAAM,IAAI,MAAM,0CAA0CJ,CAAa,KAAKC,CAAU,KAAKC,CAAY,GAAG,EAI5G,GAAI,CAACE,EAAY,SACf,MAAM,IAAI,MAAM,IAAIJ,CAAa,KAAKC,CAAU,KAAKC,CAAY,4BAA4B,EAI/F,IAAMK,EAAQC,EAAsBJ,CAAW,EACzCK,EAAoB,CAAC,EAC3B,QAASC,EAAIH,EAAOG,EAAIN,EAAY,OAAO,OAAQM,GAAK,EACtDD,EAAO,KAAKX,EAAaM,EAAY,OAAOM,CAAC,EAAG,CAAE,cAAe,EAAK,CAAC,CAAC,EAG1E,MAAO,CACL,eAAgBN,EAAY,oBAC5B,WAAYK,CACd,CACF,CASO,SAASE,EACdT,EACAE,EACAQ,EACAC,EACAC,EACA,CAEA,GAAID,GAAYT,EAAY,WAAW,OACrC,MAAM,IAAI,MAAM,2BAA2BF,CAAY,eAAeE,EAAY,WAAW,MAAM,EAAE,EAGvG,IAAMW,EAAQX,EAAY,WAAWS,CAAQ,EAC7C,OAAOG,EAAuBJ,EAAKG,EAAOF,EAAUC,CAAiB,CACvE,CAEO,SAASE,EACdJ,EACAG,EACAF,EACAC,EACA,CAEA,OAAIG,EAA+BL,CAAG,GAEpCM,EAAUH,EAAOH,EAAKC,CAAQ,EACvBD,GAIFO,EAASP,EAAKG,EAAOF,EAAUC,CAAiB,CACzD,CASA,SAASK,EACPP,EACAG,EACAF,EACAC,EAC4B,CAC5B,GAAIC,EAAM,OAAO,EAAG,CAClB,GAAIK,EAAOR,CAAG,EACZ,OAAO,IAAIS,EAAKT,CAAG,EAErBU,EAAkB,UAAWT,CAAQ,CACvC,CAEA,GAAIE,EAAM,UAAU,EAAG,CACrB,GAAIlB,EAASe,CAAG,EACd,OAAOW,EAAe,WAAWX,CAAG,EAEtCU,EAAkB,SAAUT,CAAQ,CACtC,CACA,GAAIE,EAAM,KAAK,EAAG,CAChB,GAAIS,EAASZ,CAAG,EACd,OAAO,IAAIa,EAAGb,CAAG,EAEnBU,EAAkB,SAAUT,CAAQ,CACtC,CACA,GAAIE,EAAM,MAAM,EAAG,CACjB,GAAIS,EAASZ,CAAG,EACd,OAAO,IAAIc,EAAId,CAAG,EAEpBU,EAAkB,SAAUT,CAAQ,CACtC,CACA,GAAIE,EAAM,MAAM,EAAG,CACjB,GAAIS,EAASZ,CAAG,EACd,OAAO,IAAIe,EAAIf,CAAG,EAEpBU,EAAkB,SAAUT,CAAQ,CACtC,CACA,GAAIE,EAAM,MAAM,EAAG,CACjB,GAAIa,EAAchB,CAAG,EACnB,OAAO,IAAIiB,EAAI,OAAOjB,CAAG,CAAC,EAE5BU,EAAkB,2BAA4BT,CAAQ,CACxD,CACA,GAAIE,EAAM,OAAO,EAAG,CAClB,GAAIa,EAAchB,CAAG,EACnB,OAAO,IAAIkB,EAAK,OAAOlB,CAAG,CAAC,EAE7BU,EAAkB,2BAA4BT,CAAQ,CACxD,CACA,GAAIE,EAAM,OAAO,EAAG,CAClB,GAAIa,EAAchB,CAAG,EACnB,OAAO,IAAImB,EAAK,OAAOnB,CAAG,CAAC,EAE7BU,EAAkB,2BAA4BT,CAAQ,CACxD,CAGA,GAAIE,EAAM,UAAU,EAAG,CACrB,IAAMiB,EAAejB,EAAM,MAC3B,GAAIiB,EAAe,GAAKA,GAAgBlB,EAAkB,OACxD,MAAM,IAAI,MAAM,oBAAoBC,EAAM,SAAS,CAAC,4BAA4BF,CAAQ,EAAE,EAG5FG,EAAuBJ,EAAKE,EAAkBkB,CAAY,EAAGnB,EAAUC,CAAiB,CAC1F,CAGA,GAAIC,EAAM,SAAS,EAAG,CAEpB,GAAIA,EAAM,MAAM,KAAK,EAAG,CACtB,GAAIlB,EAASe,CAAG,EACd,GAAI,CACF,OAAOqB,EAAW,GAAGC,EAAI,aAAatB,CAAG,EAAE,aAAa,CAAC,CAC3D,MAAiB,CAEf,MAAM,IAAI,MAAM,uEAAuEG,EAAM,SAAS,CAAC,GAAG,CAC5G,CAEF,GAAIH,aAAe,WACjB,OAAOqB,EAAW,GAAGrB,CAAG,CAE5B,CAIA,GAAI,MAAM,QAAQA,CAAG,EACnB,OAAO,IAAIqB,EAAWrB,EAAI,IAAKuB,GAASnB,EAAuBmB,EAAMpB,EAAM,MAAOF,EAAUC,CAAiB,CAAC,CAAC,EAGjH,MAAM,IAAI,MAAM,8BAA8BD,CAAQ,WAAWE,EAAM,SAAS,CAAC,GAAG,CACtF,CAGA,GAAIA,EAAM,SAAS,EAAG,CACpB,GAAIA,EAAM,SAAS,EAAG,CACpB,GAAIlB,EAASe,CAAG,EACd,OAAO,IAAIwB,EAAWxB,CAAG,EAE3BU,EAAkB,SAAUT,CAAQ,CACtC,CACA,GAAIE,EAAM,SAAS,EAAG,CAEpB,GAAIlB,EAASe,CAAG,EACd,OAAOW,EAAe,WAAWX,CAAG,EAEtCU,EAAkB,SAAUT,CAAQ,CACtC,CAEA,GAAIE,EAAM,SAAS,EAEjB,OAAIsB,EAAOzB,CAAG,EAEL,IAAI0B,EAAe,IAAI,EAGzB,IAAIA,EAAWtB,EAAuBJ,EAAKG,EAAM,MAAM,SAAS,CAAC,EAAGF,EAAUC,CAAiB,CAAC,EAGzG,MAAM,IAAI,MAAM,8CAA8CD,CAAQ,WAAWE,EAAM,SAAS,CAAC,GAAG,CACtG,CAEA,MAAM,IAAI,MAAM,8BAA8BF,CAAQ,WAAWE,EAAM,SAAS,CAAC,GAAG,CACtF,CAQA,SAASG,EAAUH,EAAgBH,EAAiCC,EAAkB,CACpF,GAAIE,EAAM,OAAO,EAAG,CAClB,GAAIwB,EAAU3B,CAAG,EACf,OAEFU,EAAkB,OAAQT,CAAQ,CACpC,CACA,GAAIE,EAAM,UAAU,EAAG,CACrB,GAAIyB,EAAa5B,CAAG,EAClB,OAEFU,EAAkB,iBAAkBT,CAAQ,CAC9C,CACA,GAAIE,EAAM,KAAK,EAAG,CAChB,GAAI0B,EAAQ7B,CAAG,EACb,OAEFU,EAAkB,KAAMT,CAAQ,CAClC,CACA,GAAIE,EAAM,MAAM,EAAG,CACjB,GAAI2B,EAAS9B,CAAG,EACd,OAEFU,EAAkB,MAAOT,CAAQ,CACnC,CACA,GAAIE,EAAM,MAAM,EAAG,CACjB,GAAI4B,EAAS/B,CAAG,EACd,OAEFU,EAAkB,MAAOT,CAAQ,CACnC,CACA,GAAIE,EAAM,MAAM,EAAG,CACjB,GAAI6B,EAAShC,CAAG,EACd,OAEFU,EAAkB,MAAOT,CAAQ,CACnC,CACA,GAAIE,EAAM,OAAO,EAAG,CAClB,GAAI8B,EAAUjC,CAAG,EACf,OAEFU,EAAkB,OAAQT,CAAQ,CACpC,CACA,GAAIE,EAAM,OAAO,EAAG,CAClB,GAAI+B,EAAUlC,CAAG,EACf,OAEFU,EAAkB,OAAQT,CAAQ,CACpC,CACA,GAAIE,EAAM,SAAS,EAAG,CACpB,GAAIH,aAAeqB,EAEjB,OAEFX,EAAkB,aAAcT,CAAQ,CAC1C,CAGA,GAAIE,aAAiBgC,EAAe,CAClC,GAAIhC,EAAM,SAAS,EAAG,CACpB,GAAIiC,EAAYpC,CAAG,EACjB,OAEFU,EAAkB,aAAcT,CAAQ,CAC1C,CACA,GAAIE,EAAM,SAAS,EAAG,CACpB,GAAIyB,EAAa5B,CAAG,EAClB,OAEFU,EAAkB,iBAAkBT,CAAQ,CAC9C,CACA,GAAIE,EAAM,SAAS,EAAG,CACpB,GAAIH,aAAe0B,EAEjB,OAEFhB,EAAkB,aAAcT,CAAQ,CAC1C,CACF,CAEA,MAAM,IAAI,MAAM,8BAA8BA,CAAQ,eAAeE,EAAM,SAAS,CAAC,GAAG,CAC1F","names":["standardizeTypeTags","typeArguments","typeArg","isString","parseTypeTag","fetchEntryFunctionAbi","moduleAddress","moduleName","functionName","aptosConfig","functionAbi","getModule","func","first","findFirstNonSignerArg","params","i","convertArgument","arg","position","genericTypeParams","param","checkOrConvertArgument","isEncodedEntryFunctionArgument","checkType","parseArg","isBool","Bool","throwTypeMismatch","AccountAddress","isNumber","U8","U16","U32","isLargeNumber","U64","U128","U256","genericIndex","MoveVector","Hex","item","MoveString","isNull","MoveOption","isBcsBool","isBcsAddress","isBcsU8","isBcsU16","isBcsU32","isBcsU64","isBcsU128","isBcsU256","TypeTagStruct","isBcsString"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/api/coin.ts"],"sourcesContent":["// Copyright © Aptos Foundation\n// SPDX-License-Identifier: Apache-2.0\n\nimport { Account, AccountAddressInput } from \"../core\";\nimport { transferCoinTransaction } from \"../internal/coin\";\nimport { SingleSignerTransaction, InputGenerateTransactionOptions } from \"../transactions/types\";\nimport { AnyNumber, MoveStructId } from \"../types\";\nimport { AptosConfig } from \"./aptosConfig\";\n\n/**\n * A class to handle all `Coin` operations\n */\nexport class Coin {\n constructor(readonly config: AptosConfig) {}\n\n /**\n * Generate a transfer coin transaction that can be simulated and/or signed and submitted\n *\n * @param args.sender The sender account\n * @param args.recipient The recipient address\n * @param args.amount The amount to transfer\n * @param args.coinType optional. The coin struct type to transfer. Defaults to 0x1::aptos_coin::AptosCoin\n *\n * @returns SingleSignerTransaction\n */\n async transferCoinTransaction(args: {\n sender: Account;\n recipient: AccountAddressInput;\n amount: AnyNumber;\n coinType?: MoveStructId;\n options?: InputGenerateTransactionOptions;\n }): Promise<SingleSignerTransaction> {\n return transferCoinTransaction({ aptosConfig: this.config, ...args });\n }\n}\n"],"mappings":"yCAYO,IAAMA,EAAN,KAAW,CAChB,YAAqBC,EAAqB,CAArB,YAAAA,CAAsB,CAY3C,MAAM,wBAAwBC,EAMO,CACnC,OAAOC,EAAwB,CAAE,YAAa,KAAK,OAAQ,GAAGD,CAAK,CAAC,CACtE,CACF","names":["Coin","config","args","transferCoinTransaction"]}
@@ -1,2 +0,0 @@
1
- import{d as e}from"./chunk-CLJLQXFQ.mjs";import{a as o,b as s,c as t,d as i,e as a,f as r}from"./chunk-GEZSEAL5.mjs";var c=class{constructor(n){this.config=n}async getTransactions(n){return o({aptosConfig:this.config,...n})}async getTransactionByVersion(n){return t({aptosConfig:this.config,...n})}async getTransactionByHash(n){return i({aptosConfig:this.config,...n})}async isPendingTransaction(n){return a({aptosConfig:this.config,...n})}async waitForTransaction(n){return r({aptosConfig:this.config,...n})}async getGasPriceEstimation(){return s({aptosConfig:this.config})}getSigningMessage(n){return e(n)}};export{c as a};
2
- //# sourceMappingURL=chunk-5ZVCSKFX.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/api/transaction.ts"],"sourcesContent":["// Copyright © Aptos Foundation\n// SPDX-License-Identifier: Apache-2.0\n\nimport { AptosConfig } from \"./aptosConfig\";\nimport {\n getGasPriceEstimation,\n getTransactionByHash,\n getTransactionByVersion,\n getTransactions,\n isTransactionPending,\n waitForTransaction,\n} from \"../internal/transaction\";\nimport {\n AnyNumber,\n CommittedTransactionResponse,\n GasEstimation,\n HexInput,\n PaginationArgs,\n TransactionResponse,\n WaitForTransactionOptions,\n} from \"../types\";\nimport { getSigningMessage } from \"../internal/transactionSubmission\";\nimport { AnyRawTransaction } from \"../transactions\";\n\nexport class Transaction {\n readonly config: AptosConfig;\n\n constructor(config: AptosConfig) {\n this.config = config;\n }\n\n /**\n * Queries on-chain transactions. This function will not return pending\n * transactions. For that, use `getTransactionsByHash`.\n *\n * @param args.options.offset The number transaction to start with\n * @param args.options.limit Number of results to return\n *\n * @returns Array of on-chain transactions\n */\n async getTransactions(args?: { options?: PaginationArgs }): Promise<TransactionResponse[]> {\n return getTransactions({\n aptosConfig: this.config,\n ...args,\n });\n }\n\n /**\n * Queries on-chain transaction by version. This function will not return pending transactions.\n *\n * @param args.ledgerVersion - Transaction version is an unsigned 64-bit number.\n * @returns On-chain transaction. Only on-chain transactions have versions, so this\n * function cannot be used to query pending transactions.\n */\n async getTransactionByVersion(args: { ledgerVersion: AnyNumber }): Promise<TransactionResponse> {\n return getTransactionByVersion({\n aptosConfig: this.config,\n ...args,\n });\n }\n\n /**\n * Queries on-chain transaction by transaction hash. This function will return pending transactions.\n * @param args.transactionHash - Transaction hash should be hex-encoded bytes string with 0x prefix.\n * @returns Transaction from mempool (pending) or on-chain (committed) transaction\n */\n async getTransactionByHash(args: { transactionHash: HexInput }): Promise<TransactionResponse> {\n return getTransactionByHash({\n aptosConfig: this.config,\n ...args,\n });\n }\n\n /**\n * Defines if specified transaction is currently in pending state\n *\n * To create a transaction hash:\n *\n * 1. Create a hash message from the bytes: \"Aptos::Transaction\" bytes + the BCS-serialized Transaction bytes.\n * 2. Apply hash algorithm SHA3-256 to the hash message bytes.\n * 3. Hex-encode the hash bytes with 0x prefix.\n *\n * @param args.transactionHash A hash of transaction\n * @returns `true` if transaction is in pending state and `false` otherwise\n */\n async isPendingTransaction(args: { transactionHash: HexInput }): Promise<boolean> {\n return isTransactionPending({\n aptosConfig: this.config,\n ...args,\n });\n }\n\n /**\n * Waits for a transaction to move past the pending state.\n *\n * There are 4 cases.\n * 1. Transaction is successfully processed and committed to the chain.\n * - The function will resolve with the transaction response from the API.\n * 2. Transaction is rejected for some reason, and is therefore not committed to the blockchain.\n * - The function will throw an AptosApiError with an HTTP status code indicating some problem with the request.\n * 3. Transaction is committed but execution failed, meaning no changes were\n * written to the blockchain state.\n * - If `checkSuccess` is true, the function will throw a FailedTransactionError\n * If `checkSuccess` is false, the function will resolve with the transaction response where the `success` field is false.\n * 4. Transaction does not move past the pending state within `args.options.timeoutSecs` seconds.\n * - The function will throw a WaitForTransactionError\n *\n *\n * @param args.transactionHash The hash of a transaction previously submitted to the blockchain.\n * @param args.options.timeoutSecs Timeout in seconds. Defaults to 20 seconds.\n * @param args.options.checkSuccess A boolean which controls whether the function will error if the transaction failed.\n * Defaults to true. See case 3 above.\n * @returns The transaction on-chain. See above for more details.\n */\n async waitForTransaction(args: {\n transactionHash: HexInput;\n options?: WaitForTransactionOptions;\n }): Promise<CommittedTransactionResponse> {\n return waitForTransaction({\n aptosConfig: this.config,\n ...args,\n });\n }\n\n /**\n * Gives an estimate of the gas unit price required to get a\n * transaction on chain in a reasonable amount of time.\n * For more information {@link https://fullnode.mainnet.aptoslabs.com/v1/spec#/operations/estimate_gas_price}\n *\n * @returns Object holding the outputs of the estimate gas API\n * @example\n * ```\n * {\n * gas_estimate: number;\n * deprioritized_gas_estimate?: number;\n * prioritized_gas_estimate?: number;\n * }\n * ```\n */\n async getGasPriceEstimation(): Promise<GasEstimation> {\n return getGasPriceEstimation({\n aptosConfig: this.config,\n });\n }\n\n /**\n * Returns a signing message for a transaction.\n *\n * This allows a user to sign a transaction using their own preferred signing method, and\n * then submit it to the network.\n * @param args.transaction A raw transaction for signing elsewhere\n */\n // eslint-disable-next-line class-methods-use-this\n getSigningMessage(args: { transaction: AnyRawTransaction }): Uint8Array {\n return getSigningMessage(args);\n }\n}\n"],"mappings":"qHAwBO,IAAMA,EAAN,KAAkB,CAGvB,YAAYC,EAAqB,CAC/B,KAAK,OAASA,CAChB,CAWA,MAAM,gBAAgBC,EAAqE,CACzF,OAAOC,EAAgB,CACrB,YAAa,KAAK,OAClB,GAAGD,CACL,CAAC,CACH,CASA,MAAM,wBAAwBA,EAAkE,CAC9F,OAAOE,EAAwB,CAC7B,YAAa,KAAK,OAClB,GAAGF,CACL,CAAC,CACH,CAOA,MAAM,qBAAqBA,EAAmE,CAC5F,OAAOG,EAAqB,CAC1B,YAAa,KAAK,OAClB,GAAGH,CACL,CAAC,CACH,CAcA,MAAM,qBAAqBA,EAAuD,CAChF,OAAOI,EAAqB,CAC1B,YAAa,KAAK,OAClB,GAAGJ,CACL,CAAC,CACH,CAwBA,MAAM,mBAAmBA,EAGiB,CACxC,OAAOK,EAAmB,CACxB,YAAa,KAAK,OAClB,GAAGL,CACL,CAAC,CACH,CAiBA,MAAM,uBAAgD,CACpD,OAAOM,EAAsB,CAC3B,YAAa,KAAK,MACpB,CAAC,CACH,CAUA,kBAAkBN,EAAsD,CACtE,OAAOO,EAAkBP,CAAI,CAC/B,CACF","names":["Transaction","config","args","getTransactions","getTransactionByVersion","getTransactionByHash","isTransactionPending","waitForTransaction","getGasPriceEstimation","getSigningMessage"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/internal/fungibleAsset.ts"],"sourcesContent":["// Copyright © Aptos Foundation\n// SPDX-License-Identifier: Apache-2.0\n\n/**\n * This file contains the underlying implementations for exposed API surface in\n * the {@link api/fungible_asset}. By moving the methods out into a separate file,\n * other namespaces and processes can access these methods without depending on the entire\n * fungible_asset namespace and without having a dependency cycle error.\n */\n\nimport { AptosConfig } from \"../api/aptosConfig\";\nimport {\n AnyNumber,\n GetCurrentFungibleAssetBalancesResponse,\n GetFungibleAssetActivitiesResponse,\n GetFungibleAssetMetadataResponse,\n PaginationArgs,\n WhereArg,\n} from \"../types\";\nimport { queryIndexer } from \"./general\";\nimport {\n GetCurrentFungibleAssetBalances,\n GetFungibleAssetActivities,\n GetFungibleAssetMetadata,\n} from \"../types/generated/queries\";\nimport {\n GetCurrentFungibleAssetBalancesQuery,\n GetFungibleAssetActivitiesQuery,\n GetFungibleAssetMetadataQuery,\n} from \"../types/generated/operations\";\nimport {\n CurrentFungibleAssetBalancesBoolExp,\n FungibleAssetActivitiesBoolExp,\n FungibleAssetMetadataBoolExp,\n} from \"../types/generated/types\";\nimport { Account, AccountAddress } from \"../core\";\nimport { InputGenerateTransactionOptions } from \"../transactions\";\nimport { generateTransaction } from \"./transactionSubmission\";\n\nexport async function getFungibleAssetMetadata(args: {\n aptosConfig: AptosConfig;\n options?: PaginationArgs & WhereArg<FungibleAssetMetadataBoolExp>;\n}): Promise<GetFungibleAssetMetadataResponse> {\n const { aptosConfig, options } = args;\n\n const graphqlQuery = {\n query: GetFungibleAssetMetadata,\n variables: {\n where_condition: options?.where,\n limit: options?.limit,\n offset: options?.offset,\n },\n };\n\n const data = await queryIndexer<GetFungibleAssetMetadataQuery>({\n aptosConfig,\n query: graphqlQuery,\n originMethod: \"getFungibleAssetMetadata\",\n });\n\n return data.fungible_asset_metadata;\n}\n\nexport async function getFungibleAssetActivities(args: {\n aptosConfig: AptosConfig;\n options?: PaginationArgs & WhereArg<FungibleAssetActivitiesBoolExp>;\n}): Promise<GetFungibleAssetActivitiesResponse> {\n const { aptosConfig, options } = args;\n\n const graphqlQuery = {\n query: GetFungibleAssetActivities,\n variables: {\n where_condition: options?.where,\n limit: options?.limit,\n offset: options?.offset,\n },\n };\n\n const data = await queryIndexer<GetFungibleAssetActivitiesQuery>({\n aptosConfig,\n query: graphqlQuery,\n originMethod: \"getFungibleAssetActivities\",\n });\n\n return data.fungible_asset_activities;\n}\n\nexport async function getCurrentFungibleAssetBalances(args: {\n aptosConfig: AptosConfig;\n options?: PaginationArgs & WhereArg<CurrentFungibleAssetBalancesBoolExp>;\n}): Promise<GetCurrentFungibleAssetBalancesResponse> {\n const { aptosConfig, options } = args;\n\n const graphqlQuery = {\n query: GetCurrentFungibleAssetBalances,\n variables: {\n where_condition: options?.where,\n limit: options?.limit,\n offset: options?.offset,\n },\n };\n\n const data = await queryIndexer<GetCurrentFungibleAssetBalancesQuery>({\n aptosConfig,\n query: graphqlQuery,\n originMethod: \"getCurrentFungibleAssetBalances\",\n });\n\n return data.current_fungible_asset_balances;\n}\n\nexport async function transferFungibleAsset(args: {\n aptosConfig: AptosConfig;\n sender: Account;\n fungibleAssetMetadataAddress: AccountAddress;\n recipient: AccountAddress;\n amount: AnyNumber;\n options?: InputGenerateTransactionOptions;\n}) {\n const { aptosConfig, sender, fungibleAssetMetadataAddress, recipient, amount, options } = args;\n const transaction = await generateTransaction({\n aptosConfig,\n sender: sender.accountAddress,\n data: {\n function: \"0x1::primary_fungible_store::transfer\",\n typeArguments: [\"0x1::fungible_asset::Metadata\"],\n functionArguments: [fungibleAssetMetadataAddress, recipient, amount],\n },\n options,\n });\n return transaction;\n}\n"],"mappings":"oIAuCA,eAAsBA,EAAyBC,EAGD,CAC5C,GAAM,CAAE,YAAAC,EAAa,QAAAC,CAAQ,EAAIF,EAE3BG,EAAe,CACnB,MAAOC,EACP,UAAW,CACT,gBAAiBF,GAAS,MAC1B,MAAOA,GAAS,MAChB,OAAQA,GAAS,MACnB,CACF,EAQA,OANa,MAAMG,EAA4C,CAC7D,YAAAJ,EACA,MAAOE,EACP,aAAc,0BAChB,CAAC,GAEW,uBACd,CAEA,eAAsBG,EAA2BN,EAGD,CAC9C,GAAM,CAAE,YAAAC,EAAa,QAAAC,CAAQ,EAAIF,EAE3BG,EAAe,CACnB,MAAOI,EACP,UAAW,CACT,gBAAiBL,GAAS,MAC1B,MAAOA,GAAS,MAChB,OAAQA,GAAS,MACnB,CACF,EAQA,OANa,MAAMG,EAA8C,CAC/D,YAAAJ,EACA,MAAOE,EACP,aAAc,4BAChB,CAAC,GAEW,yBACd,CAEA,eAAsBK,EAAgCR,EAGD,CACnD,GAAM,CAAE,YAAAC,EAAa,QAAAC,CAAQ,EAAIF,EAE3BG,EAAe,CACnB,MAAOM,EACP,UAAW,CACT,gBAAiBP,GAAS,MAC1B,MAAOA,GAAS,MAChB,OAAQA,GAAS,MACnB,CACF,EAQA,OANa,MAAMG,EAAmD,CACpE,YAAAJ,EACA,MAAOE,EACP,aAAc,iCAChB,CAAC,GAEW,+BACd,CAEA,eAAsBO,EAAsBV,EAOzC,CACD,GAAM,CAAE,YAAAC,EAAa,OAAAU,EAAQ,6BAAAC,EAA8B,UAAAC,EAAW,OAAAC,EAAQ,QAAAZ,CAAQ,EAAIF,EAW1F,OAVoB,MAAMe,EAAoB,CAC5C,YAAAd,EACA,OAAQU,EAAO,eACf,KAAM,CACJ,SAAU,wCACV,cAAe,CAAC,+BAA+B,EAC/C,kBAAmB,CAACC,EAA8BC,EAAWC,CAAM,CACrE,EACA,QAAAZ,CACF,CAAC,CAEH","names":["getFungibleAssetMetadata","args","aptosConfig","options","graphqlQuery","GetFungibleAssetMetadata","queryIndexer","getFungibleAssetActivities","GetFungibleAssetActivities","getCurrentFungibleAssetBalances","GetCurrentFungibleAssetBalances","transferFungibleAsset","sender","fungibleAssetMetadataAddress","recipient","amount","generateTransaction"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/internal/transactionSubmission.ts"],"sourcesContent":["/**\n * This file contains the underlying implementations for exposed API surface in\n * the {@link api/transaction_submission}. By moving the methods out into a separate file,\n * other namespaces and processes can access these methods without depending on the entire\n * transaction_submission namespace and without having a dependency cycle error.\n */\n\nimport { AptosConfig } from \"../api/aptosConfig\";\nimport { MoveVector, U8 } from \"../bcs\";\nimport { postAptosFullNode } from \"../client\";\nimport { Account } from \"../core/account\";\nimport { AccountAddress, AccountAddressInput } from \"../core/accountAddress\";\nimport { PrivateKey } from \"../core/crypto\";\nimport { AccountAuthenticator } from \"../transactions/authenticator/account\";\nimport { RotationProofChallenge } from \"../transactions/instances/rotationProofChallenge\";\nimport {\n buildTransaction,\n generateTransactionPayload,\n generateSignedTransactionForSimulation,\n generateSignedTransaction,\n sign,\n generateSigningMessage,\n} from \"../transactions/transactionBuilder/transactionBuilder\";\nimport {\n InputGenerateTransactionData,\n AnyRawTransaction,\n InputSimulateTransactionData,\n InputGenerateTransactionOptions,\n SingleSignerTransaction,\n InputGenerateTransactionPayloadDataWithRemoteABI,\n InputSubmitTransactionData,\n InputGenerateMultiAgentRawTransactionData,\n InputGenerateSingleSignerRawTransactionData,\n MultiAgentTransaction,\n AnyTransactionPayloadInstance,\n} from \"../transactions/types\";\nimport { getInfo } from \"./account\";\nimport { UserTransactionResponse, PendingTransactionResponse, MimeType, HexInput, TransactionResponse } from \"../types\";\n\n/**\n * We are defining function signatures, each with its specific input and output.\n * These are the possible function signature for `generateTransaction` function.\n * When we call `generateTransaction` function with the relevant type properties,\n * Typescript can infer the return type based on the appropriate function overload.\n */\nexport async function generateTransaction(\n args: { aptosConfig: AptosConfig } & InputGenerateSingleSignerRawTransactionData,\n): Promise<SingleSignerTransaction>;\nexport async function generateTransaction(\n args: { aptosConfig: AptosConfig } & InputGenerateMultiAgentRawTransactionData,\n): Promise<MultiAgentTransaction>;\n/**\n * Generates any transaction by passing in the required arguments\n *\n * @param args.sender The transaction sender's account address as a AccountAddressInput\n * @param args.data EntryFunctionData | ScriptData | MultiSigData\n * @param args.feePayerAddress optional. For a fee payer (aka sponsored) transaction\n * @param args.secondarySignerAddresses optional. For a multi-agent or fee payer (aka sponsored) transactions\n * @param args.options optional. GenerateTransactionOptions type\n *\n * @example\n * For a single signer entry function\n * move function name, move function type arguments, move function arguments\n * `\n * data: {\n * function:\"0x1::aptos_account::transfer\",\n * typeArguments:[]\n * functionArguments :[receiverAddress,10]\n * }\n * `\n *\n * @example\n * For a single signer script function\n * module bytecode, move function type arguments, move function arguments\n * ```\n * data: {\n * bytecode:\"0x001234567\",\n * typeArguments:[],\n * functionArguments :[receiverAddress,10]\n * }\n * ```\n *\n * @return An instance of a RawTransaction, plus optional secondary/fee payer addresses\n * ```\n * {\n * rawTransaction: RawTransaction,\n * secondarySignerAddresses? : Array<AccountAddress>,\n * feePayerAddress?: AccountAddress\n * }\n * ```\n */\nexport async function generateTransaction(\n args: { aptosConfig: AptosConfig } & InputGenerateTransactionData,\n): Promise<AnyRawTransaction> {\n const payload = await buildTransactionPayload(args);\n return buildRawTransaction(args, payload);\n}\n\nexport async function buildTransactionPayload(\n args: { aptosConfig: AptosConfig } & InputGenerateTransactionData,\n): Promise<AnyTransactionPayloadInstance> {\n const { aptosConfig, data } = args;\n\n // Merge in aptosConfig for remote ABI on non-script payloads\n let generateTransactionPayloadData: InputGenerateTransactionPayloadDataWithRemoteABI;\n let payload: AnyTransactionPayloadInstance;\n if (\"bytecode\" in data) {\n generateTransactionPayloadData = data;\n payload = await generateTransactionPayload(generateTransactionPayloadData);\n } else if (\"multisigAddress\" in data) {\n generateTransactionPayloadData = {\n aptosConfig,\n multisigAddress: data.multisigAddress,\n function: data.function,\n functionArguments: data.functionArguments,\n typeArguments: data.typeArguments,\n };\n payload = await generateTransactionPayload(generateTransactionPayloadData);\n } else {\n generateTransactionPayloadData = {\n aptosConfig,\n function: data.function,\n functionArguments: data.functionArguments,\n typeArguments: data.typeArguments,\n };\n payload = await generateTransactionPayload(generateTransactionPayloadData);\n }\n return payload;\n}\n\nexport async function buildRawTransaction(\n args: { aptosConfig: AptosConfig } & InputGenerateTransactionData,\n payload: AnyTransactionPayloadInstance,\n): Promise<AnyRawTransaction> {\n const { aptosConfig, sender, options } = args;\n\n let feePayerAddress;\n if (isFeePayerTransactionInput(args)) {\n feePayerAddress = AccountAddress.ZERO.toString();\n }\n\n if (isMultiAgentTransactionInput(args)) {\n const { secondarySignerAddresses } = args;\n return buildTransaction({\n aptosConfig,\n sender,\n payload,\n options,\n secondarySignerAddresses,\n feePayerAddress,\n });\n }\n\n return buildTransaction({\n aptosConfig,\n sender,\n payload,\n options,\n feePayerAddress,\n });\n}\n\nfunction isFeePayerTransactionInput(data: InputGenerateTransactionData): boolean {\n return data.withFeePayer === true;\n}\n\nfunction isMultiAgentTransactionInput(\n data: InputGenerateTransactionData,\n): data is InputGenerateMultiAgentRawTransactionData {\n return \"secondarySignerAddresses\" in data;\n}\n\n/**\n * Builds a signing message that can be signed by external signers\n *\n * Note: Please prefer using `signTransaction` unless signing outside the SDK\n *\n * @param args.transaction AnyRawTransaction, as generated by `generateTransaction()`\n *\n * @return The message to be signed\n */\nexport function getSigningMessage(args: { transaction: AnyRawTransaction }): Uint8Array {\n const { transaction } = args;\n return generateSigningMessage(transaction);\n}\n\n/**\n * Sign a transaction that can later be submitted to chain\n *\n * @param args.signer The signer account to sign the transaction\n * @param args.transaction An instance of a RawTransaction, plus optional secondary/fee payer addresses\n * ```\n * {\n * rawTransaction: RawTransaction,\n * secondarySignerAddresses? : Array<AccountAddress>,\n * feePayerAddress?: AccountAddress\n * }\n * ```\n *\n * @return The signer AccountAuthenticator\n */\nexport function signTransaction(args: { signer: Account; transaction: AnyRawTransaction }): AccountAuthenticator {\n const accountAuthenticator = sign({ ...args });\n return accountAuthenticator;\n}\n\n/**\n * Simulates a transaction before singing it.\n *\n * @param args.signerPublicKey The signer public key\n * @param args.transaction The raw transaction to simulate\n * @param args.secondarySignersPublicKeys optional. For when the transaction is a multi signers transaction\n * @param args.feePayerPublicKey optional. For when the transaction is a fee payer (aka sponsored) transaction\n * @param args.options optional. A config to simulate the transaction with\n */\nexport async function simulateTransaction(\n args: { aptosConfig: AptosConfig } & InputSimulateTransactionData,\n): Promise<Array<UserTransactionResponse>> {\n const { aptosConfig, transaction, signerPublicKey, secondarySignersPublicKeys, feePayerPublicKey, options } = args;\n\n const signedTransaction = generateSignedTransactionForSimulation({\n transaction,\n signerPublicKey,\n secondarySignersPublicKeys,\n feePayerPublicKey,\n options,\n });\n\n const { data } = await postAptosFullNode<Uint8Array, Array<UserTransactionResponse>>({\n aptosConfig,\n body: signedTransaction,\n path: \"transactions/simulate\",\n params: {\n estimate_gas_unit_price: args.options?.estimateGasUnitPrice ?? false,\n estimate_max_gas_amount: args.options?.estimateMaxGasAmount ?? false,\n estimate_prioritized_gas_unit_price: args.options?.estimatePrioritizedGasUnitPrice ?? false,\n },\n originMethod: \"simulateTransaction\",\n contentType: MimeType.BCS_SIGNED_TRANSACTION,\n });\n return data;\n}\n\n/**\n * Submit transaction to chain\n *\n * @param args.transaction A aptos transaction type\n * @param args.senderAuthenticator The account authenticator of the transaction sender\n * @param args.secondarySignerAuthenticators optional. For when the transaction is a multi signers transaction\n *\n * @return PendingTransactionResponse\n */\nexport async function submitTransaction(\n args: {\n aptosConfig: AptosConfig;\n } & InputSubmitTransactionData,\n): Promise<PendingTransactionResponse> {\n const { aptosConfig } = args;\n const signedTransaction = generateSignedTransaction({ ...args });\n const { data } = await postAptosFullNode<Uint8Array, PendingTransactionResponse>({\n aptosConfig,\n body: signedTransaction,\n path: \"transactions\",\n originMethod: \"submitTransaction\",\n contentType: MimeType.BCS_SIGNED_TRANSACTION,\n });\n return data;\n}\n\nexport async function signAndSubmitTransaction(args: {\n aptosConfig: AptosConfig;\n signer: Account;\n transaction: AnyRawTransaction;\n}): Promise<PendingTransactionResponse> {\n const { aptosConfig, signer, transaction } = args;\n const authenticator = signTransaction({ signer, transaction });\n return submitTransaction({\n aptosConfig,\n transaction,\n senderAuthenticator: authenticator,\n });\n}\n\nexport async function publicPackageTransaction(args: {\n aptosConfig: AptosConfig;\n account: AccountAddressInput;\n metadataBytes: HexInput;\n moduleBytecode: Array<HexInput>;\n options?: InputGenerateTransactionOptions;\n}): Promise<SingleSignerTransaction> {\n const { aptosConfig, account, metadataBytes, moduleBytecode, options } = args;\n\n const totalByteCode = moduleBytecode.map((bytecode) => MoveVector.U8(bytecode));\n\n const transaction = await generateTransaction({\n aptosConfig,\n sender: AccountAddress.from(account),\n data: {\n function: \"0x1::code::publish_package_txn\",\n functionArguments: [MoveVector.U8(metadataBytes), new MoveVector(totalByteCode)],\n },\n options,\n });\n return transaction;\n}\n\n/**\n * TODO: Need to refactor and move this function out of transactionSubmission\n */\nexport async function rotateAuthKey(args: {\n aptosConfig: AptosConfig;\n fromAccount: Account;\n toNewPrivateKey: PrivateKey;\n}): Promise<TransactionResponse> {\n const { aptosConfig, fromAccount, toNewPrivateKey } = args;\n const accountInfo = await getInfo({\n aptosConfig,\n accountAddress: fromAccount.accountAddress,\n });\n\n const newAccount = Account.fromPrivateKey({ privateKey: toNewPrivateKey, legacy: true });\n\n const challenge = new RotationProofChallenge({\n sequenceNumber: BigInt(accountInfo.sequence_number),\n originator: fromAccount.accountAddress,\n currentAuthKey: AccountAddress.from(accountInfo.authentication_key),\n newPublicKey: newAccount.publicKey,\n });\n\n // Sign the challenge\n const challengeHex = challenge.bcsToBytes();\n const proofSignedByCurrentPrivateKey = fromAccount.sign(challengeHex);\n const proofSignedByNewPrivateKey = newAccount.sign(challengeHex);\n\n // Generate transaction\n const rawTxn = await generateTransaction({\n aptosConfig,\n sender: fromAccount.accountAddress,\n data: {\n function: \"0x1::account::rotate_authentication_key\",\n functionArguments: [\n new U8(fromAccount.signingScheme.valueOf()), // from scheme\n MoveVector.U8(fromAccount.publicKey.toUint8Array()),\n new U8(newAccount.signingScheme.valueOf()), // to scheme\n MoveVector.U8(newAccount.publicKey.toUint8Array()),\n MoveVector.U8(proofSignedByCurrentPrivateKey.toUint8Array()),\n MoveVector.U8(proofSignedByNewPrivateKey.toUint8Array()),\n ],\n },\n });\n const pendingTxn = await signAndSubmitTransaction({\n aptosConfig,\n signer: fromAccount,\n transaction: rawTxn,\n });\n return pendingTxn;\n}\n"],"mappings":"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","names":["generateTransaction","args","payload","buildTransactionPayload","buildRawTransaction","aptosConfig","data","generateTransactionPayloadData","generateTransactionPayload","sender","options","feePayerAddress","isFeePayerTransactionInput","AccountAddress","isMultiAgentTransactionInput","secondarySignerAddresses","buildTransaction","getSigningMessage","transaction","generateSigningMessage","signTransaction","sign","simulateTransaction","signerPublicKey","secondarySignersPublicKeys","feePayerPublicKey","signedTransaction","generateSignedTransactionForSimulation","postAptosFullNode","submitTransaction","generateSignedTransaction","signAndSubmitTransaction","signer","authenticator","publicPackageTransaction","account","metadataBytes","moduleBytecode","totalByteCode","bytecode","MoveVector","rotateAuthKey","fromAccount","toNewPrivateKey","accountInfo","getInfo","newAccount","Account","challengeHex","RotationProofChallenge","proofSignedByCurrentPrivateKey","proofSignedByNewPrivateKey","rawTxn","U8"]}
@@ -1,2 +0,0 @@
1
- import{a as t}from"./chunk-CLJLQXFQ.mjs";var a=class{constructor(n){this.config=n}async transaction(n){return t({aptosConfig:this.config,...n})}async multiAgentTransaction(n){return t({aptosConfig:this.config,...n})}};export{a};
2
- //# sourceMappingURL=chunk-EFRFDFS4.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/api/transactionSubmission/build.ts"],"sourcesContent":["// Copyright © Aptos Foundation\n// SPDX-License-Identifier: Apache-2.0\n\nimport { AccountAddressInput } from \"../../core\";\nimport { generateTransaction } from \"../../internal/transactionSubmission\";\nimport {\n InputGenerateTransactionPayloadData,\n InputGenerateTransactionOptions,\n SingleSignerTransaction,\n MultiAgentTransaction,\n} from \"../../transactions\";\nimport { AptosConfig } from \"../aptosConfig\";\n\n/**\n * A class to handle all `Build` transaction operations\n */\nexport class Build {\n readonly config: AptosConfig;\n\n constructor(config: AptosConfig) {\n this.config = config;\n }\n\n async transaction(args: {\n sender: AccountAddressInput;\n data: InputGenerateTransactionPayloadData;\n options?: InputGenerateTransactionOptions;\n withFeePayer?: boolean;\n }): Promise<SingleSignerTransaction> {\n return generateTransaction({ aptosConfig: this.config, ...args });\n }\n\n async multiAgentTransaction(args: {\n sender: AccountAddressInput;\n data: InputGenerateTransactionPayloadData;\n secondarySignerAddresses: AccountAddressInput[];\n options?: InputGenerateTransactionOptions;\n withFeePayer?: boolean;\n }): Promise<MultiAgentTransaction> {\n return generateTransaction({ aptosConfig: this.config, ...args });\n }\n}\n"],"mappings":"yCAgBO,IAAMA,EAAN,KAAY,CAGjB,YAAYC,EAAqB,CAC/B,KAAK,OAASA,CAChB,CAEA,MAAM,YAAYC,EAKmB,CACnC,OAAOC,EAAoB,CAAE,YAAa,KAAK,OAAQ,GAAGD,CAAK,CAAC,CAClE,CAEA,MAAM,sBAAsBA,EAMO,CACjC,OAAOC,EAAoB,CAAE,YAAa,KAAK,OAAQ,GAAGD,CAAK,CAAC,CAClE,CACF","names":["Build","config","args","generateTransaction"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/transactions/transactionBuilder/transactionBuilder.ts"],"sourcesContent":["// Copyright © Aptos Foundation\n// SPDX-License-Identifier: Apache-2.0\n\n/**\n * This file handles the transaction creation lifecycle.\n * It holds different operations to generate a transaction payload, a raw transaction,\n * and a signed transaction that can be simulated, signed and submitted to chain.\n */\nimport { sha3_256 as sha3Hash } from \"@noble/hashes/sha3\";\nimport { AptosConfig } from \"../../api/aptosConfig\";\nimport { AccountAddress, AccountAddressInput, Hex, PublicKey } from \"../../core\";\nimport { Account } from \"../../core/account\";\nimport { AnyPublicKey } from \"../../core/crypto/anyPublicKey\";\nimport { AnySignature } from \"../../core/crypto/anySignature\";\nimport { Ed25519PublicKey, Ed25519Signature } from \"../../core/crypto/ed25519\";\nimport { Secp256k1PublicKey, Secp256k1Signature } from \"../../core/crypto/secp256k1\";\nimport { getInfo } from \"../../internal/account\";\nimport { getLedgerInfo } from \"../../internal/general\";\nimport { getGasPriceEstimation } from \"../../internal/transaction\";\nimport { NetworkToChainId } from \"../../utils/apiEndpoints\";\nimport {\n DEFAULT_MAX_GAS_AMOUNT,\n DEFAULT_TXN_EXP_SEC_FROM_NOW,\n RAW_TRANSACTION_SALT,\n RAW_TRANSACTION_WITH_DATA_SALT,\n} from \"../../utils/const\";\nimport {\n AccountAuthenticator,\n AccountAuthenticatorEd25519,\n AccountAuthenticatorMultiKey,\n AccountAuthenticatorSingleKey,\n} from \"../authenticator/account\";\nimport {\n TransactionAuthenticatorEd25519,\n TransactionAuthenticatorFeePayer,\n TransactionAuthenticatorMultiAgent,\n TransactionAuthenticatorSingleSender,\n} from \"../authenticator/transaction\";\nimport {\n ChainId,\n EntryFunction,\n FeePayerRawTransaction,\n MultiAgentRawTransaction,\n MultiSig,\n MultisigTransactionPayload,\n RawTransaction,\n Script,\n TransactionPayloadEntryFunction,\n TransactionPayloadMultisig,\n TransactionPayloadScript,\n} from \"../instances\";\nimport { SignedTransaction } from \"../instances/signedTransaction\";\nimport {\n AnyRawTransaction,\n AnyTransactionPayloadInstance,\n AnyRawTransactionInstance,\n EntryFunctionArgumentTypes,\n EntryFunctionABI,\n InputGenerateMultiAgentRawTransactionArgs,\n InputGenerateRawTransactionArgs,\n InputGenerateSingleSignerRawTransactionArgs,\n SingleSignerTransaction,\n InputGenerateTransactionOptions,\n MultiAgentTransaction,\n InputScriptData,\n InputSimulateTransactionData,\n InputGenerateTransactionPayloadData,\n InputEntryFunctionData,\n InputMultiSigData,\n InputMultiSigDataWithRemoteABI,\n InputEntryFunctionDataWithRemoteABI,\n InputGenerateTransactionPayloadDataWithRemoteABI,\n InputSubmitTransactionData,\n} from \"../types\";\nimport { convertArgument, fetchEntryFunctionAbi, standardizeTypeTags } from \"./remoteAbi\";\nimport { memoizeAsync } from \"../../utils/memoize\";\nimport { SigningScheme } from \"../../types\";\nimport { getFunctionParts, isScriptDataInput } from \"./helpers\";\n\n/**\n * We are defining function signatures, each with its specific input and output.\n * These are the possible function signature for our `generateTransactionPayload` function.\n * When we call our `generateTransactionPayload` function with the relevant type properties,\n * Typescript can infer the return type based on the appropriate function overload.\n */\nexport async function generateTransactionPayload(args: InputScriptData): Promise<TransactionPayloadScript>;\nexport async function generateTransactionPayload(\n args: InputEntryFunctionDataWithRemoteABI,\n): Promise<TransactionPayloadEntryFunction>;\nexport async function generateTransactionPayload(\n args: InputMultiSigDataWithRemoteABI,\n): Promise<TransactionPayloadMultisig>;\n\n/**\n * Builds a transaction payload based on the data argument and returns\n * a transaction payload - TransactionPayloadScript | TransactionPayloadMultisig | TransactionPayloadEntryFunction\n *\n * This uses the RemoteABI by default, and the remote ABI can be skipped by using generateTransactionPayloadWithABI\n *\n * @param args.data GenerateTransactionPayloadData\n *\n * @return TransactionPayload\n */\nexport async function generateTransactionPayload(\n args: InputGenerateTransactionPayloadDataWithRemoteABI,\n): Promise<AnyTransactionPayloadInstance> {\n if (isScriptDataInput(args)) {\n return generateTransactionPayloadScript(args);\n }\n\n const { moduleAddress, moduleName, functionName } = getFunctionParts(args.function);\n\n // We fetch the entry function ABI, and then pretend that we already had the ABI\n const functionAbi = await memoizeAsync(\n async () => fetchEntryFunctionAbi(moduleAddress, moduleName, functionName, args.aptosConfig),\n `entry-function-${args.aptosConfig.network}-${moduleAddress}-${moduleName}-${functionName}`,\n 1000 * 60 * 5, // 5 minutes\n )();\n\n return generateTransactionPayloadWithABI(args, functionAbi);\n}\n\nexport function generateTransactionPayloadWithABI(\n args: InputEntryFunctionData,\n functionAbi: EntryFunctionABI,\n): TransactionPayloadEntryFunction;\nexport function generateTransactionPayloadWithABI(\n args: InputMultiSigData,\n functionAbi: EntryFunctionABI,\n): TransactionPayloadMultisig;\nexport function generateTransactionPayloadWithABI(\n args: InputGenerateTransactionPayloadData,\n functionAbi: EntryFunctionABI,\n): AnyTransactionPayloadInstance {\n if (isScriptDataInput(args)) {\n return generateTransactionPayloadScript(args);\n }\n\n const { moduleAddress, moduleName, functionName } = getFunctionParts(args.function);\n\n // Ensure that all type arguments are typed properly\n const typeArguments = standardizeTypeTags(args.typeArguments);\n\n // Check the type argument count against the ABI\n if (typeArguments.length !== functionAbi.typeParameters.length) {\n throw new Error(\n `Type argument count mismatch, expected ${functionAbi.typeParameters.length}, received ${typeArguments.length}`,\n );\n }\n\n // Check all BCS types, and convert any non-BCS types\n const functionArguments: Array<EntryFunctionArgumentTypes> = args.functionArguments.map((arg, i) =>\n convertArgument(args.function, functionAbi, arg, i, typeArguments),\n );\n\n // Check that all arguments are accounted for\n if (functionArguments.length !== functionAbi.parameters.length) {\n throw new Error(\n // eslint-disable-next-line max-len\n `Too few arguments for '${moduleAddress}::${moduleName}::${functionName}', expected ${functionAbi.parameters.length} but got ${functionArguments.length}`,\n );\n }\n\n // Generate entry function payload\n const entryFunctionPayload = EntryFunction.build(\n `${moduleAddress}::${moduleName}`,\n functionName,\n typeArguments,\n functionArguments,\n );\n\n // Send it as multi sig if it's a multisig payload\n if (\"multisigAddress\" in args) {\n const multisigAddress = AccountAddress.from(args.multisigAddress);\n return new TransactionPayloadMultisig(\n new MultiSig(multisigAddress, new MultisigTransactionPayload(entryFunctionPayload)),\n );\n }\n\n // Otherwise send as an entry function\n return new TransactionPayloadEntryFunction(entryFunctionPayload);\n}\n\nfunction generateTransactionPayloadScript(args: InputScriptData) {\n return new TransactionPayloadScript(\n new Script(Hex.fromHexInput(args.bytecode).toUint8Array(), args.typeArguments ?? [], args.functionArguments),\n );\n}\n\n/**\n * Generates a raw transaction\n *\n * @param args.aptosConfig AptosConfig\n * @param args.sender The transaction's sender account address as a hex input\n * @param args.payload The transaction payload - can create by using generateTransactionPayload()\n *\n * @returns RawTransaction\n */\nexport async function generateRawTransaction(args: {\n aptosConfig: AptosConfig;\n sender: AccountAddressInput;\n payload: AnyTransactionPayloadInstance;\n options?: InputGenerateTransactionOptions;\n}): Promise<RawTransaction> {\n const { aptosConfig, sender, payload, options } = args;\n\n const getSequenceNumber =\n options?.accountSequenceNumber !== undefined\n ? Promise.resolve({ sequence_number: options.accountSequenceNumber })\n : getInfo({ aptosConfig, accountAddress: sender });\n\n const getChainId = NetworkToChainId[aptosConfig.network]\n ? Promise.resolve({ chain_id: NetworkToChainId[aptosConfig.network] })\n : getLedgerInfo({ aptosConfig });\n\n const getGasUnitPrice = options?.gasUnitPrice\n ? Promise.resolve({ gas_estimate: options.gasUnitPrice })\n : getGasPriceEstimation({ aptosConfig });\n\n const [{ sequence_number: sequenceNumber }, { chain_id: chainId }, { gas_estimate: gasEstimate }] = await Promise.all(\n [getSequenceNumber, getChainId, getGasUnitPrice],\n );\n\n const { maxGasAmount, gasUnitPrice, expireTimestamp } = {\n maxGasAmount: options?.maxGasAmount ? BigInt(options.maxGasAmount) : BigInt(DEFAULT_MAX_GAS_AMOUNT),\n gasUnitPrice: BigInt(gasEstimate),\n expireTimestamp: BigInt(Math.floor(Date.now() / 1000) + DEFAULT_TXN_EXP_SEC_FROM_NOW),\n ...options,\n };\n\n return new RawTransaction(\n AccountAddress.from(sender),\n BigInt(sequenceNumber),\n payload,\n BigInt(maxGasAmount),\n BigInt(gasUnitPrice),\n BigInt(expireTimestamp),\n new ChainId(chainId),\n );\n}\n\n/**\n * We are defining function signatures, each with its specific input and output.\n * These are the possible function signature for our `generateTransaction` function.\n * When we call our `generateTransaction` function with the relevant type properties,\n * Typescript can infer the return type based on the appropriate function overload.\n */\nexport async function buildTransaction(\n args: InputGenerateSingleSignerRawTransactionArgs,\n): Promise<SingleSignerTransaction>;\nexport async function buildTransaction(args: InputGenerateMultiAgentRawTransactionArgs): Promise<MultiAgentTransaction>;\n\n/**\n * Generates a transaction based on the provided arguments\n *\n * Note: we can start with one function to support all different payload/transaction types,\n * and if to complex to use, we could have function for each type\n *\n * @param args.aptosConfig AptosConfig\n * @param args.sender The transaction's sender account address as a hex input\n * @param args.payload The transaction payload - can create by using generateTransactionPayload()\n * @param args.options optional. Transaction options object\n * @param args.secondarySignerAddresses optional. For when want to create a multi signers transaction\n * @param args.feePayerAddress optional. For when want to create a fee payer (aka sponsored) transaction\n *\n * @return An instance of a RawTransaction, plus optional secondary/fee payer addresses\n * ```\n * {\n * rawTransaction: RawTransaction,\n * secondarySignerAddresses? : Array<AccountAddress>,\n * feePayerAddress?: AccountAddress\n * }\n * ```\n */\nexport async function buildTransaction(args: InputGenerateRawTransactionArgs): Promise<AnyRawTransaction> {\n const { aptosConfig, sender, payload, options } = args;\n // generate raw transaction\n const rawTxn = await generateRawTransaction({\n aptosConfig,\n sender,\n payload,\n options,\n });\n\n // if multi agent transaction\n if (\"secondarySignerAddresses\" in args) {\n const signers: Array<AccountAddress> =\n args.secondarySignerAddresses?.map((signer) => AccountAddress.from(signer)) ?? [];\n\n return {\n rawTransaction: rawTxn,\n secondarySignerAddresses: signers,\n feePayerAddress: args.feePayerAddress ? AccountAddress.from(args.feePayerAddress) : undefined,\n };\n }\n // return the raw transaction\n return {\n rawTransaction: rawTxn,\n feePayerAddress: args.feePayerAddress ? AccountAddress.from(args.feePayerAddress) : undefined,\n };\n}\n\n/**\n * Simulate a transaction before signing and submit to chain\n *\n * @param args.transaction A aptos transaction type to sign\n * @param args.signerPublicKey The signer public key\n * @param args.secondarySignersPublicKeys optional. The secondary signers public keys if multi signers transaction\n * @param args.feePayerPublicKey optional. The fee payer public key is a fee payer (aka sponsored) transaction\n * @param args.options optional. SimulateTransactionOptions\n *\n * @returns A signed serialized transaction that can be simulated\n */\nexport function generateSignedTransactionForSimulation(args: InputSimulateTransactionData): Uint8Array {\n const { signerPublicKey, transaction, secondarySignersPublicKeys, feePayerPublicKey } = args;\n\n const accountAuthenticator = getAuthenticatorForSimulation(signerPublicKey);\n\n // fee payer transaction\n if (transaction.feePayerAddress) {\n const transactionToSign = new FeePayerRawTransaction(\n transaction.rawTransaction,\n transaction.secondarySignerAddresses ?? [],\n transaction.feePayerAddress,\n );\n let secondaryAccountAuthenticators: Array<AccountAuthenticator> = [];\n if (secondarySignersPublicKeys) {\n secondaryAccountAuthenticators = secondarySignersPublicKeys.map((publicKey) =>\n getAuthenticatorForSimulation(publicKey),\n );\n }\n const feePayerAuthenticator = getAuthenticatorForSimulation(feePayerPublicKey!);\n\n const transactionAuthenticator = new TransactionAuthenticatorFeePayer(\n accountAuthenticator,\n transaction.secondarySignerAddresses ?? [],\n secondaryAccountAuthenticators,\n {\n address: transaction.feePayerAddress,\n authenticator: feePayerAuthenticator,\n },\n );\n return new SignedTransaction(transactionToSign.raw_txn, transactionAuthenticator).bcsToBytes();\n }\n\n // multi agent transaction\n if (transaction.secondarySignerAddresses) {\n const transactionToSign = new MultiAgentRawTransaction(\n transaction.rawTransaction,\n transaction.secondarySignerAddresses,\n );\n\n let secondaryAccountAuthenticators: Array<AccountAuthenticator> = [];\n\n secondaryAccountAuthenticators = secondarySignersPublicKeys!.map((publicKey) =>\n getAuthenticatorForSimulation(publicKey),\n );\n\n const transactionAuthenticator = new TransactionAuthenticatorMultiAgent(\n accountAuthenticator,\n transaction.secondarySignerAddresses,\n secondaryAccountAuthenticators,\n );\n\n return new SignedTransaction(transactionToSign.raw_txn, transactionAuthenticator).bcsToBytes();\n }\n\n // single signer raw transaction\n let transactionAuthenticator;\n if (accountAuthenticator instanceof AccountAuthenticatorEd25519) {\n transactionAuthenticator = new TransactionAuthenticatorEd25519(\n accountAuthenticator.public_key,\n accountAuthenticator.signature,\n );\n } else if (accountAuthenticator instanceof AccountAuthenticatorSingleKey) {\n transactionAuthenticator = new TransactionAuthenticatorSingleSender(accountAuthenticator);\n } else {\n throw new Error(\"Invalid public key\");\n }\n return new SignedTransaction(transaction.rawTransaction, transactionAuthenticator).bcsToBytes();\n}\n\nexport function getAuthenticatorForSimulation(publicKey: PublicKey) {\n // TODO add support for AnyMultiKey\n if (publicKey instanceof AnyPublicKey) {\n if (publicKey.publicKey instanceof Ed25519PublicKey) {\n return new AccountAuthenticatorSingleKey(publicKey, new AnySignature(new Ed25519Signature(new Uint8Array(64))));\n }\n if (publicKey.publicKey instanceof Secp256k1PublicKey) {\n return new AccountAuthenticatorSingleKey(publicKey, new AnySignature(new Secp256k1Signature(new Uint8Array(64))));\n }\n }\n\n // legacy code\n return new AccountAuthenticatorEd25519(\n new Ed25519PublicKey(publicKey.toUint8Array()),\n new Ed25519Signature(new Uint8Array(64)),\n );\n}\n\n/**\n * Sign a transaction that can later be submitted to chain\n *\n * @param args.signer The signer account to sign the transaction\n * @param args.transaction A aptos transaction type to sign\n *\n * @return The signer AccountAuthenticator\n */\nexport function sign(args: { signer: Account; transaction: AnyRawTransaction }): AccountAuthenticator {\n const { signer, transaction } = args;\n\n // get the signing message\n const message = generateSigningMessage(transaction);\n\n // account.signMessage\n const signerSignature = signer.sign(message);\n\n // return account authentication\n switch (signer.signingScheme) {\n case SigningScheme.Ed25519:\n return new AccountAuthenticatorEd25519(\n new Ed25519PublicKey(signer.publicKey.toUint8Array()),\n new Ed25519Signature(signerSignature.toUint8Array()),\n );\n case SigningScheme.SingleKey:\n if (!AnyPublicKey.isPublicKey(signer.publicKey)) {\n throw new Error(`Cannot sign transaction, public key does not match ${signer.signingScheme}`);\n }\n return new AccountAuthenticatorSingleKey(signer.publicKey, new AnySignature(signerSignature));\n // TODO support MultiEd25519\n default:\n throw new Error(`Cannot sign transaction, signing scheme ${signer.signingScheme} not supported`);\n }\n}\n\n/**\n * Prepare a transaction to be submitted to chain\n *\n * @param args.transaction A aptos transaction type\n * @param args.senderAuthenticator The account authenticator of the transaction sender\n * @param args.secondarySignerAuthenticators optional. For when the transaction is a multi signers transaction\n *\n * @returns A SignedTransaction\n */\nexport function generateSignedTransaction(args: InputSubmitTransactionData): Uint8Array {\n const { transaction, senderAuthenticator, feePayerAuthenticator, additionalSignersAuthenticators } = args;\n\n const transactionToSubmit = deriveTransactionType(transaction);\n\n if (\n (feePayerAuthenticator || additionalSignersAuthenticators) &&\n (transactionToSubmit instanceof MultiAgentRawTransaction || transactionToSubmit instanceof FeePayerRawTransaction)\n ) {\n return generateMultiSignersSignedTransaction(\n transactionToSubmit,\n senderAuthenticator,\n feePayerAuthenticator,\n additionalSignersAuthenticators,\n );\n }\n\n // submit single signer transaction\n\n // check what instance is accountAuthenticator\n if (senderAuthenticator instanceof AccountAuthenticatorEd25519 && transactionToSubmit instanceof RawTransaction) {\n const transactionAuthenticator = new TransactionAuthenticatorEd25519(\n senderAuthenticator.public_key,\n senderAuthenticator.signature,\n );\n return new SignedTransaction(transactionToSubmit, transactionAuthenticator).bcsToBytes();\n }\n\n if (\n (senderAuthenticator instanceof AccountAuthenticatorSingleKey ||\n senderAuthenticator instanceof AccountAuthenticatorMultiKey) &&\n transactionToSubmit instanceof RawTransaction\n ) {\n const transactionAuthenticator = new TransactionAuthenticatorSingleSender(senderAuthenticator);\n return new SignedTransaction(transactionToSubmit, transactionAuthenticator).bcsToBytes();\n }\n\n throw new Error(\n `Cannot generate a signed transaction, ${senderAuthenticator} is not a supported account authentication scheme`,\n );\n}\n\n/**\n * Derive the raw transaction type - FeePayerRawTransaction or MultiAgentRawTransaction or RawTransaction\n *\n * @param transaction A aptos transaction type\n *\n * @returns FeePayerRawTransaction | MultiAgentRawTransaction | RawTransaction\n */\nexport function deriveTransactionType(transaction: AnyRawTransaction): AnyRawTransactionInstance {\n if (transaction.feePayerAddress) {\n return new FeePayerRawTransaction(\n transaction.rawTransaction,\n transaction.secondarySignerAddresses ?? [],\n transaction.feePayerAddress,\n );\n }\n if (transaction.secondarySignerAddresses) {\n return new MultiAgentRawTransaction(transaction.rawTransaction, transaction.secondarySignerAddresses);\n }\n\n return transaction.rawTransaction;\n}\n\n/**\n * Generate a multi signers signed transaction that can be submitted to chain\n *\n * @param transaction MultiAgentRawTransaction | FeePayerRawTransaction\n * @param senderAuthenticator The account authenticator of the transaction sender\n * @param secondarySignerAuthenticators The extra signers account Authenticators\n *\n * @returns A SignedTransaction\n */\nexport function generateMultiSignersSignedTransaction(\n transaction: MultiAgentRawTransaction | FeePayerRawTransaction,\n senderAuthenticator: AccountAuthenticator,\n feePayerAuthenticator?: AccountAuthenticator,\n additionalSignersAuthenticators?: Array<AccountAuthenticator>,\n) {\n if (transaction instanceof FeePayerRawTransaction) {\n if (!feePayerAuthenticator) {\n throw new Error(\"Must provide a feePayerAuthenticator argument to generate a signed fee payer transaction\");\n }\n const txAuthenticatorFeePayer = new TransactionAuthenticatorFeePayer(\n senderAuthenticator,\n transaction.secondary_signer_addresses,\n additionalSignersAuthenticators ?? [],\n {\n address: transaction.fee_payer_address,\n authenticator: feePayerAuthenticator,\n },\n );\n return new SignedTransaction(transaction.raw_txn, txAuthenticatorFeePayer).bcsToBytes();\n }\n if (transaction instanceof MultiAgentRawTransaction) {\n if (!additionalSignersAuthenticators) {\n throw new Error(\n \"Must provide a additionalSignersAuthenticators argument to generate a signed multi agent transaction\",\n );\n }\n const multiAgentAuthenticator = new TransactionAuthenticatorMultiAgent(\n senderAuthenticator,\n transaction.secondary_signer_addresses,\n additionalSignersAuthenticators ?? [],\n );\n return new SignedTransaction(transaction.raw_txn, multiAgentAuthenticator).bcsToBytes();\n }\n\n throw new Error(\n `Cannot prepare multi signers transaction to submission, ${typeof transaction} transaction is not supported`,\n );\n}\n\nexport function generateSigningMessage(transaction: AnyRawTransaction): Uint8Array {\n const rawTxn = deriveTransactionType(transaction);\n const hash = sha3Hash.create();\n\n if (rawTxn instanceof RawTransaction) {\n hash.update(RAW_TRANSACTION_SALT);\n } else if (rawTxn instanceof MultiAgentRawTransaction) {\n hash.update(RAW_TRANSACTION_WITH_DATA_SALT);\n } else if (rawTxn instanceof FeePayerRawTransaction) {\n hash.update(RAW_TRANSACTION_WITH_DATA_SALT);\n } else {\n throw new Error(`Unknown transaction type to sign on: ${rawTxn}`);\n }\n\n const prefix = hash.digest();\n\n const body = rawTxn.bcsToBytes();\n\n const mergedArray = new Uint8Array(prefix.length + body.length);\n mergedArray.set(prefix);\n mergedArray.set(body, prefix.length);\n\n return mergedArray;\n}\n"],"mappings":"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","names":["sha3Hash","generateTransactionPayload","args","isScriptDataInput","generateTransactionPayloadScript","moduleAddress","moduleName","functionName","getFunctionParts","functionAbi","memoizeAsync","fetchEntryFunctionAbi","generateTransactionPayloadWithABI","typeArguments","standardizeTypeTags","functionArguments","arg","i","convertArgument","entryFunctionPayload","EntryFunction","multisigAddress","AccountAddress","TransactionPayloadMultisig","MultiSig","MultisigTransactionPayload","TransactionPayloadEntryFunction","TransactionPayloadScript","Script","Hex","generateRawTransaction","aptosConfig","sender","payload","options","getSequenceNumber","getInfo","getChainId","NetworkToChainId","getLedgerInfo","getGasUnitPrice","getGasPriceEstimation","sequenceNumber","chainId","gasEstimate","maxGasAmount","gasUnitPrice","expireTimestamp","DEFAULT_MAX_GAS_AMOUNT","DEFAULT_TXN_EXP_SEC_FROM_NOW","RawTransaction","ChainId","buildTransaction","rawTxn","signers","signer","generateSignedTransactionForSimulation","signerPublicKey","transaction","secondarySignersPublicKeys","feePayerPublicKey","accountAuthenticator","getAuthenticatorForSimulation","transactionToSign","FeePayerRawTransaction","secondaryAccountAuthenticators","publicKey","feePayerAuthenticator","transactionAuthenticator","TransactionAuthenticatorFeePayer","SignedTransaction","MultiAgentRawTransaction","TransactionAuthenticatorMultiAgent","AccountAuthenticatorEd25519","TransactionAuthenticatorEd25519","AccountAuthenticatorSingleKey","TransactionAuthenticatorSingleSender","AnyPublicKey","Ed25519PublicKey","AnySignature","Ed25519Signature","Secp256k1PublicKey","Secp256k1Signature","sign","message","generateSigningMessage","signerSignature","generateSignedTransaction","senderAuthenticator","additionalSignersAuthenticators","transactionToSubmit","deriveTransactionType","generateMultiSignersSignedTransaction","AccountAuthenticatorMultiKey","txAuthenticatorFeePayer","multiAgentAuthenticator","hash","sha3Hash","RAW_TRANSACTION_SALT","RAW_TRANSACTION_WITH_DATA_SALT","prefix","body","mergedArray"]}
@@ -1,2 +0,0 @@
1
- import{a as t,b as r,c as s,d as c,e as a,f as m,g as d,h as g}from"./chunk-UKSA4H2O.mjs";import{a as e}from"./chunk-APSQ4M23.mjs";var p=class{constructor(n){this.config=n}async createCollectionTransaction(n){return m({aptosConfig:this.config,...n})}async getCollectionData(n){return await e({config:this.config,minimumLedgerVersion:n.minimumLedgerVersion,processorTypes:o(n.options?.tokenStandard)}),d({aptosConfig:this.config,...n})}async getCollectionId(n){return await e({config:this.config,minimumLedgerVersion:n.minimumLedgerVersion,processorTypes:o(n.options?.tokenStandard)}),g({aptosConfig:this.config,...n})}async mintTokenTransaction(n){return t({aptosConfig:this.config,...n})}async getTokenData(n){return await e({config:this.config,minimumLedgerVersion:n.minimumLedgerVersion,processorTypes:o(void 0)}),r({aptosConfig:this.config,...n})}async getCurrentTokenOwnership(n){return await e({config:this.config,minimumLedgerVersion:n.minimumLedgerVersion,processorTypes:o(void 0)}),s({aptosConfig:this.config,...n})}async getOwnedTokens(n){return await e({config:this.config,minimumLedgerVersion:n.minimumLedgerVersion,processorTypes:o(void 0)}),c({aptosConfig:this.config,...n})}async getTokenActivity(n){return await e({config:this.config,minimumLedgerVersion:n.minimumLedgerVersion,processorTypes:o(void 0)}),a({aptosConfig:this.config,...n})}};function o(i){switch(i){case"v1":return["token_processor"];case"v2":return["token_v2_processor"];default:return["token_processor","token_v2_processor"]}}export{p as a};
2
- //# sourceMappingURL=chunk-IELTCGLP.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/api/digitalAsset.ts"],"sourcesContent":["// Copyright © Aptos Foundation\n// SPDX-License-Identifier: Apache-2.0\n\nimport {\n AnyNumber,\n GetCollectionDataResponse,\n GetCurrentTokenOwnershipResponse,\n GetOwnedTokensResponse,\n GetTokenActivityResponse,\n GetTokenDataResponse,\n OrderByArg,\n PaginationArgs,\n TokenStandard,\n TokenStandardArg,\n} from \"../types\";\nimport { Account, AccountAddressInput } from \"../core\";\nimport { InputGenerateTransactionOptions, SingleSignerTransaction } from \"../transactions/types\";\nimport {\n CreateCollectionOptions,\n createCollectionTransaction,\n getCollectionData,\n getCollectionId,\n getCurrentTokenOwnership,\n getOwnedTokens,\n getTokenActivity,\n getTokenData,\n mintTokenTransaction,\n} from \"../internal/digitalAsset\";\nimport { ProcessorType } from \"../utils/const\";\nimport { AptosConfig } from \"./aptosConfig\";\nimport { waitForIndexerOnVersion } from \"./utils\";\n\n/**\n * A class to query all `DigitalAsset` related queries on Aptos.\n */\nexport class DigitalAsset {\n constructor(readonly config: AptosConfig) {}\n\n /**\n * Creates a new collection within the specified account\n *\n * @param args.creator the account of the collection's creator\n * @param args.description the description of the collection\n * @param args.name the name of the collection\n * @param args.uri the URI to additional info about the collection\n *\n * The parameters below are optional.\n * @param args.maxSupply controls the max supply of the tokens - defaults MAX_U64_BIG_INT\n * @param args.mutableDescription controls mutability of the collection's description - defaults true\n * @param args.mutableRoyalty controls mutability of the collection's description - defaults true\n * @param args.mutableUri controls mutability of the collection's URI - defaults true\n * @param args.mutableTokenDescription controls mutability of the token's description - defaults true\n * @param args.mutableTokenName controls mutability of the token's name - defaults true\n * @param args.mutableTokenProperties controls mutability of token's properties - defaults true\n * @param args.mutableTokenUri controls mutability of the token's URI - defaults true\n * @param args.tokensBurnableByCreator controls whether tokens can be burnable by the creator - defaults true\n * @param args.tokensFreezableByCreator controls whether tokens can be frozen by the creator - defaults true\n * @param args.royaltyNumerator the numerator of the royalty to be paid to the creator when a token is transferred - defaults 0\n * @param args.royaltyDenominator the denominator of the royalty to be paid to the creator when a token is transferred -\n * defaults 1\n *\n * @returns A SingleSignerTransaction that when submitted will create the collection.\n */\n async createCollectionTransaction(\n args: {\n creator: Account;\n description: string;\n name: string;\n uri: string;\n options?: InputGenerateTransactionOptions;\n } & CreateCollectionOptions,\n ): Promise<SingleSignerTransaction> {\n return createCollectionTransaction({ aptosConfig: this.config, ...args });\n }\n\n /**\n * Queries data of a specific collection by the collection creator address and the collection name.\n *\n * If, for some reason, a creator account has 2 collections with the same name in v1 and v2,\n * can pass an optional `tokenStandard` parameter to query a specific standard\n *\n * @param args.creatorAddress the address of the collection's creator\n * @param args.collectionName the name of the collection\n * @param args.minimumLedgerVersion Optional ledger version to sync up to, before querying\n * @param args.options.tokenStandard the token standard to query\n * @returns GetCollectionDataResponse response type\n */\n async getCollectionData(args: {\n creatorAddress: AccountAddressInput;\n collectionName: string;\n minimumLedgerVersion?: AnyNumber;\n options?: TokenStandardArg;\n }): Promise<GetCollectionDataResponse> {\n await waitForIndexerOnVersion({\n config: this.config,\n minimumLedgerVersion: args.minimumLedgerVersion,\n processorTypes: getTokenProcessorTypes(args.options?.tokenStandard),\n });\n return getCollectionData({ aptosConfig: this.config, ...args });\n }\n\n /**\n * Queries a collection's ID.\n *\n * This is the same as the collection's object address in V2, but V1 does\n * not use objects, and does not have an address\n *\n * @param args.creatorAddress the address of the collection's creator\n * @param args.collectionName the name of the collection\n * @param args.minimumLedgerVersion Optional ledger version to sync up to, before querying\n * @param args.options.tokenStandard the token standard to query\n * @returns the collection id\n */\n async getCollectionId(args: {\n creatorAddress: AccountAddressInput;\n collectionName: string;\n minimumLedgerVersion?: AnyNumber;\n options?: TokenStandardArg;\n }): Promise<string> {\n await waitForIndexerOnVersion({\n config: this.config,\n minimumLedgerVersion: args.minimumLedgerVersion,\n processorTypes: getTokenProcessorTypes(args.options?.tokenStandard),\n });\n return getCollectionId({ aptosConfig: this.config, ...args });\n }\n\n /**\n * Create a transaction to mint a token into the creators account within an existing collection.\n *\n * @param args.creator the creator of the collection\n * @param args.collection the name of the collection the token belongs to\n * @param args.description the description of the token\n * @param args.name the name of the token\n * @param args.uri the URI to additional info about the token\n *\n * @returns A SingleSignerTransaction that can be simulated or submitted to chain\n */\n async mintTokenTransaction(args: {\n creator: Account;\n collection: string;\n description: string;\n name: string;\n uri: string;\n options?: InputGenerateTransactionOptions;\n }): Promise<SingleSignerTransaction> {\n return mintTokenTransaction({ aptosConfig: this.config, ...args });\n }\n\n /**\n * Gets token data given the address of a token.\n *\n * @param args.tokenAddress The address of the token\n * @param args.minimumLedgerVersion Optional ledger version to sync up to, before querying\n * @returns GetTokenDataResponse containing relevant data to the token.\n */\n async getTokenData(args: {\n tokenAddress: AccountAddressInput;\n minimumLedgerVersion?: AnyNumber;\n }): Promise<GetTokenDataResponse> {\n await waitForIndexerOnVersion({\n config: this.config,\n minimumLedgerVersion: args.minimumLedgerVersion,\n // TODO(greg): Should take in a consistent input for token queries\n processorTypes: getTokenProcessorTypes(undefined),\n });\n return getTokenData({ aptosConfig: this.config, ...args });\n }\n\n /**\n * Gets token ownership data given the address of a token.\n *\n * @param args.tokenAddress The address of the token\n * @param args.minimumLedgerVersion Optional ledger version to sync up to, before querying\n * @returns GetCurrentTokenOwnershipResponse containing relevant ownership data of the token.\n */\n async getCurrentTokenOwnership(args: {\n tokenAddress: AccountAddressInput;\n minimumLedgerVersion?: AnyNumber;\n }): Promise<GetCurrentTokenOwnershipResponse> {\n await waitForIndexerOnVersion({\n config: this.config,\n minimumLedgerVersion: args.minimumLedgerVersion,\n // TODO(greg): Should take in a consistent input for token queries\n processorTypes: getTokenProcessorTypes(undefined),\n });\n return getCurrentTokenOwnership({ aptosConfig: this.config, ...args });\n }\n\n /**\n * Gets the tokens that the given address owns.\n *\n * @param args.ownerAddress The address of the owner\n * @param args.minimumLedgerVersion Optional ledger version to sync up to, before querying\n * @returns GetOwnedTokensResponse containing ownership data of the tokens belonging to the ownerAddresss.\n */\n async getOwnedTokens(args: {\n ownerAddress: AccountAddressInput;\n minimumLedgerVersion?: AnyNumber;\n options?: PaginationArgs & OrderByArg<GetOwnedTokensResponse[0]>;\n }): Promise<GetOwnedTokensResponse> {\n await waitForIndexerOnVersion({\n config: this.config,\n minimumLedgerVersion: args.minimumLedgerVersion,\n // TODO(greg): Should take in a consistent input for token queries\n processorTypes: getTokenProcessorTypes(undefined),\n });\n return getOwnedTokens({ aptosConfig: this.config, ...args });\n }\n\n /**\n * Gets the activity data given the address of a token.\n *\n * @param args.tokenAddress The address of the token\n * @param args.minimumLedgerVersion Optional ledger version to sync up to, before querying\n * @returns GetTokenActivityResponse containing relevant activity data to the token.\n */\n async getTokenActivity(args: {\n tokenAddress: AccountAddressInput;\n minimumLedgerVersion?: AnyNumber;\n options?: PaginationArgs & OrderByArg<GetTokenActivityResponse[0]>;\n }): Promise<GetTokenActivityResponse> {\n await waitForIndexerOnVersion({\n config: this.config,\n minimumLedgerVersion: args.minimumLedgerVersion,\n // TODO(greg): Should take in a consistent input for token queries\n processorTypes: getTokenProcessorTypes(undefined),\n });\n return getTokenActivity({ aptosConfig: this.config, ...args });\n }\n}\n\nfunction getTokenProcessorTypes(tokenStandard?: TokenStandard) {\n switch (tokenStandard) {\n case \"v1\":\n return [ProcessorType.TOKEN_PROCESSOR];\n case \"v2\":\n return [ProcessorType.TOKEN_V2_PROCESSOR];\n default:\n // If it's something we don't recognize, or undefined, just do both\n return [ProcessorType.TOKEN_PROCESSOR, ProcessorType.TOKEN_V2_PROCESSOR];\n }\n}\n"],"mappings":"mIAmCO,IAAMA,EAAN,KAAmB,CACxB,YAAqBC,EAAqB,CAArB,YAAAA,CAAsB,CA2B3C,MAAM,4BACJC,EAOkC,CAClC,OAAOC,EAA4B,CAAE,YAAa,KAAK,OAAQ,GAAGD,CAAK,CAAC,CAC1E,CAcA,MAAM,kBAAkBA,EAKe,CACrC,aAAME,EAAwB,CAC5B,OAAQ,KAAK,OACb,qBAAsBF,EAAK,qBAC3B,eAAgBG,EAAuBH,EAAK,SAAS,aAAa,CACpE,CAAC,EACMI,EAAkB,CAAE,YAAa,KAAK,OAAQ,GAAGJ,CAAK,CAAC,CAChE,CAcA,MAAM,gBAAgBA,EAKF,CAClB,aAAME,EAAwB,CAC5B,OAAQ,KAAK,OACb,qBAAsBF,EAAK,qBAC3B,eAAgBG,EAAuBH,EAAK,SAAS,aAAa,CACpE,CAAC,EACMK,EAAgB,CAAE,YAAa,KAAK,OAAQ,GAAGL,CAAK,CAAC,CAC9D,CAaA,MAAM,qBAAqBA,EAOU,CACnC,OAAOM,EAAqB,CAAE,YAAa,KAAK,OAAQ,GAAGN,CAAK,CAAC,CACnE,CASA,MAAM,aAAaA,EAGe,CAChC,aAAME,EAAwB,CAC5B,OAAQ,KAAK,OACb,qBAAsBF,EAAK,qBAE3B,eAAgBG,EAAuB,MAAS,CAClD,CAAC,EACMI,EAAa,CAAE,YAAa,KAAK,OAAQ,GAAGP,CAAK,CAAC,CAC3D,CASA,MAAM,yBAAyBA,EAGe,CAC5C,aAAME,EAAwB,CAC5B,OAAQ,KAAK,OACb,qBAAsBF,EAAK,qBAE3B,eAAgBG,EAAuB,MAAS,CAClD,CAAC,EACMK,EAAyB,CAAE,YAAa,KAAK,OAAQ,GAAGR,CAAK,CAAC,CACvE,CASA,MAAM,eAAeA,EAIe,CAClC,aAAME,EAAwB,CAC5B,OAAQ,KAAK,OACb,qBAAsBF,EAAK,qBAE3B,eAAgBG,EAAuB,MAAS,CAClD,CAAC,EACMM,EAAe,CAAE,YAAa,KAAK,OAAQ,GAAGT,CAAK,CAAC,CAC7D,CASA,MAAM,iBAAiBA,EAIe,CACpC,aAAME,EAAwB,CAC5B,OAAQ,KAAK,OACb,qBAAsBF,EAAK,qBAE3B,eAAgBG,EAAuB,MAAS,CAClD,CAAC,EACMO,EAAiB,CAAE,YAAa,KAAK,OAAQ,GAAGV,CAAK,CAAC,CAC/D,CACF,EAEA,SAASG,EAAuBQ,EAA+B,CAC7D,OAAQA,EAAe,CACrB,IAAK,KACH,MAAO,kBAA8B,EACvC,IAAK,KACH,MAAO,qBAAiC,EAC1C,QAEE,MAAO,uCAAgE,CAC3E,CACF","names":["DigitalAsset","config","args","createCollectionTransaction","waitForIndexerOnVersion","getTokenProcessorTypes","getCollectionData","getCollectionId","mintTokenTransaction","getTokenData","getCurrentTokenOwnership","getOwnedTokens","getTokenActivity","tokenStandard"]}
@@ -1,2 +0,0 @@
1
- import{a as u}from"./chunk-CLJLQXFQ.mjs";import{b as w}from"./chunk-G36AY4R7.mjs";import{e as g,g as A}from"./chunk-OT2UDMUU.mjs";import{t as f}from"./chunk-BQSE5HHW.mjs";var E=["A name must be between 3 and 63 characters long,","and can only contain lowercase a-z, 0-9, and hyphens.","A name may not start or end with a hyphen."].join(" ");function D(e){return!(!e||e.length<3||e.length>63||!/^[a-z\d][a-z\d-]{1,61}[a-z\d]$/.test(e))}function c(e){let[n,t,...o]=e.replace(/\.apt$/,"").split(".");if(o.length>0)throw new Error(`${e} is invalid. A name can only have two parts, a domain and a subdomain separated by a "."`);if(!D(n))throw new Error(`${n} is not valid. ${E}`);if(t&&!D(t))throw new Error(`${t} is not valid. ${E}`);return{domainName:t||n,subdomainName:t?n:void 0}}var Y="0x37368b46ce665362562c6d1d4ec01a08c8644c488690df5a17e13ba163e20221",G="0x585fc9f0f0c54183b039ffc770ca282ebd87307916c215a3e692f2f8e4305e82",O={testnet:"0x5f8fd2347449685cf41d4db97926ec3a096eaf381332be4f1318ad4d16a8497c",mainnet:"0x867ed1f6bf916171b1de3ee92849b8978b7d1b9e0a8cc982a3d19d535dfd9c0c",local:G,custom:null,devnet:null};function d(e){let n=O[e.network];if(!n)throw new Error(`The ANS contract is not deployed to ${e.network}`);return n}var P=e=>({vec:[e]}),I=()=>({vec:[]}),S=e=>e!=null?P(e):I(),b=e=>{if(e&&typeof e=="object"&&"vec"in e&&Array.isArray(e.vec))return e.vec[0]};async function K(e){let{aptosConfig:n,name:t}=e,o=d(n),{domainName:r,subdomainName:s}=c(t),i=await g({aptosConfig:n,payload:{function:`${o}::router::get_owner_addr`,functionArguments:[r,S(s)]}}),a=b(i[0]);return a?w.from(a).toString():void 0}async function W(e){let{aptosConfig:n,expiration:t,name:o,sender:r,targetAddress:s,toAddress:i,options:a,transferable:m}=e,p=d(n),{domainName:l,subdomainName:N}=c(o),x=t.policy==="subdomain:independent"||t.policy==="subdomain:follow-domain";if(N&&!x)throw new Error("Subdomains must have an expiration policy of either 'subdomain:independent' or 'subdomain:follow-domain'");if(x&&!N)throw new Error(`Policy is set to ${t.policy} but no subdomain was provided`);if(t.policy==="domain"){let T=t.years??1;if(T!==1)throw new Error("For now, names can only be registered for 1 year at a time");let v=T*31536e3;return await u({aptosConfig:n,sender:r.accountAddress.toString(),data:{function:`${p}::router::register_domain`,functionArguments:[l,v,s,i]},options:a})}if(!N)throw new Error(`${t.policy} requires a subdomain to be provided.`);let _=await q({aptosConfig:n,name:l});if(!_)throw new Error("The domain does not exist");let h=t.policy==="subdomain:independent"?t.expirationDate:_;if(h>_)throw new Error("The subdomain expiration time cannot be greater than the domain expiration time");return await u({aptosConfig:n,sender:r.accountAddress.toString(),data:{function:`${p}::router::register_subdomain`,functionArguments:[l,N,Math.round(h/1e3),t.policy==="subdomain:follow-domain"?1:0,!!m,s,i]},options:a})}async function q(e){let{aptosConfig:n,name:t}=e,o=d(n),{domainName:r,subdomainName:s}=c(t);try{let i=await g({aptosConfig:n,payload:{function:`${o}::router::get_expiration`,functionArguments:[r,S(s)]}});return Number(i[0])*1e3}catch{return}}async function F(e){let{aptosConfig:n,address:t}=e,o=d(n),r=await g({aptosConfig:n,payload:{function:`${o}::router::get_primary_name`,functionArguments:[w.from(t).toString()]}}),s=b(r[1]),i=b(r[0]);if(s)return[i,s].filter(Boolean).join(".")}async function H(e){let{aptosConfig:n,sender:t,name:o,options:r}=e,s=d(n);if(!o)return await u({aptosConfig:n,sender:t.accountAddress.toString(),data:{function:`${s}::router::clear_primary_name`,functionArguments:[]},options:r});let{domainName:i,subdomainName:a}=c(o);return await u({aptosConfig:n,sender:t.accountAddress.toString(),data:{function:`${s}::router::set_primary_name`,functionArguments:[i,a]},options:r})}async function J(e){let{aptosConfig:n,name:t}=e,o=d(n),{domainName:r,subdomainName:s}=c(t),i=await g({aptosConfig:n,payload:{function:`${o}::router::get_target_addr`,functionArguments:[r,S(s)]}}),a=b(i[0]);return a?w.from(a).toString():void 0}async function X(e){let{aptosConfig:n,sender:t,name:o,address:r,options:s}=e,i=d(n),{domainName:a,subdomainName:m}=c(o);return await u({aptosConfig:n,sender:t.accountAddress.toString(),data:{function:`${i}::router::set_target_addr`,functionArguments:[a,m,r]},options:s})}async function Z(e){let{aptosConfig:n,name:t}=e,{domainName:o,subdomainName:r=""}=c(t),a=(await A({aptosConfig:n,query:{query:f,variables:{where_condition:{domain:{_eq:o},subdomain:{_eq:r}},limit:1}},originMethod:"getName"})).current_aptos_names[0];return a&&(a=y(a)),a}async function ee(e){let{aptosConfig:n,options:t,accountAddress:o}=e,r=await C({aptosConfig:n});return(await A({aptosConfig:n,originMethod:"getAccountNames",query:{query:f,variables:{limit:t?.limit,offset:t?.offset,order_by:t?.orderBy,where_condition:{...e.options?.where??{},owner_address:{_eq:o.toString()},expiration_timestamp:{_gte:r}}}}})).current_aptos_names.map(y)}async function ne(e){let{aptosConfig:n,options:t,accountAddress:o}=e,r=await C({aptosConfig:n});return(await A({aptosConfig:n,originMethod:"getAccountDomains",query:{query:f,variables:{limit:t?.limit,offset:t?.offset,order_by:t?.orderBy,where_condition:{...e.options?.where??{},owner_address:{_eq:o.toString()},expiration_timestamp:{_gte:r},subdomain:{_eq:""}}}}})).current_aptos_names.map(y)}async function te(e){let{aptosConfig:n,options:t,accountAddress:o}=e,r=await C({aptosConfig:n});return(await A({aptosConfig:n,originMethod:"getAccountSubdomains",query:{query:f,variables:{limit:t?.limit,offset:t?.offset,order_by:t?.orderBy,where_condition:{...e.options?.where??{},owner_address:{_eq:o.toString()},expiration_timestamp:{_gte:r},subdomain:{_neq:""}}}}})).current_aptos_names.map(y)}async function oe(e){let{aptosConfig:n,options:t,domain:o}=e;return(await A({aptosConfig:n,originMethod:"getDomainSubdomains",query:{query:f,variables:{limit:t?.limit,offset:t?.offset,order_by:t?.orderBy,where_condition:{...e.options?.where??{},domain:{_eq:o},subdomain:{_neq:""}}}}})).current_aptos_names.map(y)}async function C(e){let{aptosConfig:n}=e,t=d(n),[o]=await g({aptosConfig:n,payload:{function:`${t}::config::reregistration_grace_sec`,functionArguments:[]}}),r=o/60/60/24,s=()=>new Date;return new Date(s().setDate(s().getDate()-r)).toISOString()}async function re(e){let{aptosConfig:n,sender:t,name:o,years:r=1,options:s}=e,i=d(n),a=r*31536e3,{domainName:m,subdomainName:p}=c(o);if(p)throw new Error("Subdomains cannot be renewed");if(r!==1)throw new Error("Currently, only 1 year renewals are supported");return await u({aptosConfig:n,sender:t.accountAddress.toString(),data:{function:`${i}::router::renew_domain`,functionArguments:[m,a]},options:s})}function y(e){return{...e,expiration_timestamp:new Date(e.expiration_timestamp).valueOf()}}export{E as a,D as b,c,Y as d,G as e,K as f,W as g,q as h,F as i,H as j,J as k,X as l,Z as m,ee as n,ne as o,te as p,oe as q,re as r};
2
- //# sourceMappingURL=chunk-KKER5KL4.mjs.map