@aptos-labs/ts-sdk 1.8.0 → 1.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (367) hide show
  1. package/dist/browser/index.d.ts +1131 -989
  2. package/dist/browser/index.global.js +30 -30
  3. package/dist/browser/index.global.js.map +1 -1
  4. package/dist/common/index.d.ts +1131 -989
  5. package/dist/common/index.js +25 -25
  6. package/dist/common/index.js.map +1 -1
  7. package/dist/esm/api/account.d.mts +12 -6
  8. package/dist/esm/api/account.mjs +1 -1
  9. package/dist/esm/api/ans.d.mts +11 -12
  10. package/dist/esm/api/ans.mjs +1 -1
  11. package/dist/esm/api/aptos.d.mts +13 -14
  12. package/dist/esm/api/aptos.mjs +1 -1
  13. package/dist/esm/api/aptosConfig.mjs +1 -1
  14. package/dist/esm/api/coin.d.mts +13 -13
  15. package/dist/esm/api/coin.mjs +1 -1
  16. package/dist/esm/api/digitalAsset.d.mts +20 -10
  17. package/dist/esm/api/digitalAsset.mjs +1 -1
  18. package/dist/esm/api/event.mjs +1 -1
  19. package/dist/esm/api/faucet.mjs +1 -1
  20. package/dist/esm/api/fungibleAsset.d.mts +9 -10
  21. package/dist/esm/api/fungibleAsset.mjs +1 -1
  22. package/dist/esm/api/general.mjs +1 -1
  23. package/dist/esm/api/index.d.mts +13 -14
  24. package/dist/esm/api/index.mjs +1 -1
  25. package/dist/esm/api/staking.mjs +1 -1
  26. package/dist/esm/api/transaction.d.mts +5 -6
  27. package/dist/esm/api/transaction.mjs +1 -1
  28. package/dist/esm/api/transactionSubmission/build.d.mts +8 -8
  29. package/dist/esm/api/transactionSubmission/build.mjs +1 -1
  30. package/dist/esm/api/transactionSubmission/management.d.mts +11 -12
  31. package/dist/esm/api/transactionSubmission/management.mjs +1 -1
  32. package/dist/esm/api/transactionSubmission/sign.d.mts +11 -12
  33. package/dist/esm/api/transactionSubmission/sign.mjs +1 -1
  34. package/dist/esm/api/transactionSubmission/sign.mjs.map +1 -1
  35. package/dist/esm/api/transactionSubmission/simulate.d.mts +11 -11
  36. package/dist/esm/api/transactionSubmission/simulate.mjs +1 -1
  37. package/dist/esm/api/transactionSubmission/submit.d.mts +6 -6
  38. package/dist/esm/api/transactionSubmission/submit.mjs +1 -1
  39. package/dist/esm/api/utils.mjs +1 -1
  40. package/dist/esm/bcs/index.mjs +1 -1
  41. package/dist/esm/bcs/serializable/entryFunctionBytes.mjs +1 -1
  42. package/dist/esm/bcs/serializable/fixedBytes.mjs +1 -1
  43. package/dist/esm/bcs/serializable/movePrimitives.mjs +1 -1
  44. package/dist/esm/bcs/serializable/moveStructs.mjs +1 -1
  45. package/dist/esm/bcs/serializer.mjs +1 -1
  46. package/dist/esm/{chunk-GD5TZLBF.mjs → chunk-27XWZ5HH.mjs} +2 -2
  47. package/dist/esm/{chunk-VPQ46CAO.mjs → chunk-2CZ7RDU5.mjs} +2 -2
  48. package/dist/esm/{chunk-SXIFL5DQ.mjs → chunk-2LRDOYKF.mjs} +2 -2
  49. package/dist/esm/chunk-2YB3QA6V.mjs +2 -0
  50. package/dist/esm/chunk-2YB3QA6V.mjs.map +1 -0
  51. package/dist/esm/{chunk-F7CR75CJ.mjs → chunk-3BWYI3KO.mjs} +2 -2
  52. package/dist/esm/chunk-3E4BKDQU.mjs +2 -0
  53. package/dist/esm/chunk-3E4BKDQU.mjs.map +1 -0
  54. package/dist/esm/chunk-3FGD73JA.mjs +2 -0
  55. package/dist/esm/chunk-3FGD73JA.mjs.map +1 -0
  56. package/dist/esm/{chunk-GD4ULEBC.mjs → chunk-4H3C3V6D.mjs} +2 -2
  57. package/dist/esm/{chunk-W4UDMBMU.mjs → chunk-4M3DGBX6.mjs} +2 -2
  58. package/dist/esm/chunk-53HSYUXO.mjs +2 -0
  59. package/dist/esm/chunk-53HSYUXO.mjs.map +1 -0
  60. package/dist/esm/chunk-5VWG45IO.mjs +2 -0
  61. package/dist/esm/chunk-5VWG45IO.mjs.map +1 -0
  62. package/dist/esm/chunk-5ZWEKLOT.mjs +2 -0
  63. package/dist/esm/chunk-5ZWEKLOT.mjs.map +1 -0
  64. package/dist/esm/chunk-637CGNKQ.mjs +2 -0
  65. package/dist/esm/chunk-637CGNKQ.mjs.map +1 -0
  66. package/dist/esm/chunk-6CSXIJR4.mjs +2 -0
  67. package/dist/esm/chunk-6CSXIJR4.mjs.map +1 -0
  68. package/dist/esm/{chunk-4OI7MPFH.mjs → chunk-AKBRO5YS.mjs} +2 -2
  69. package/dist/esm/{chunk-F7MOQC7Z.mjs → chunk-BMDNUQIP.mjs} +2 -2
  70. package/dist/esm/{chunk-EUHPML5E.mjs → chunk-BR6FLUGH.mjs} +2 -2
  71. package/dist/esm/{chunk-6SRENFWH.mjs → chunk-CARQVN57.mjs} +2 -2
  72. package/dist/esm/{chunk-Q5HK3U64.mjs → chunk-DGZIRX6Z.mjs} +2 -2
  73. package/dist/esm/{chunk-2DNPRIS5.mjs → chunk-DWRBQ52O.mjs} +2 -2
  74. package/dist/esm/{chunk-XBVORX5O.mjs → chunk-DZNEBO5A.mjs} +2 -2
  75. package/dist/esm/{chunk-Q3HAJVCM.mjs → chunk-FI2B5BQ2.mjs} +2 -2
  76. package/dist/esm/chunk-FWDKABRW.mjs +2 -0
  77. package/dist/esm/chunk-FWDKABRW.mjs.map +1 -0
  78. package/dist/esm/chunk-G542XORT.mjs +2 -0
  79. package/dist/esm/chunk-G542XORT.mjs.map +1 -0
  80. package/dist/esm/{chunk-4M46AWXX.mjs → chunk-HE4FXVC4.mjs} +2 -2
  81. package/dist/esm/chunk-HEPV52CH.mjs +2 -0
  82. package/dist/esm/chunk-HEPV52CH.mjs.map +1 -0
  83. package/dist/esm/chunk-HIUJDWMR.mjs +2 -0
  84. package/dist/esm/{chunk-MEPX7Z2Z.mjs.map → chunk-HIUJDWMR.mjs.map} +1 -1
  85. package/dist/esm/chunk-HK6O5AUH.mjs +2 -0
  86. package/dist/esm/chunk-HK6O5AUH.mjs.map +1 -0
  87. package/dist/esm/chunk-HWL7DK5X.mjs +2 -0
  88. package/dist/esm/chunk-HWL7DK5X.mjs.map +1 -0
  89. package/dist/esm/{chunk-QKTV6AZ7.mjs → chunk-HZO2FSG5.mjs} +2 -2
  90. package/dist/esm/{chunk-VRSUCKJA.mjs → chunk-IKKFQZDP.mjs} +2 -2
  91. package/dist/esm/{chunk-SPOHAEHR.mjs → chunk-J2P6ERQF.mjs} +2 -2
  92. package/dist/esm/chunk-JK2QAXF2.mjs +2 -0
  93. package/dist/esm/{chunk-XZYPAQCU.mjs.map → chunk-JK2QAXF2.mjs.map} +1 -1
  94. package/dist/esm/{chunk-S64WKSMI.mjs → chunk-JOYBEFKL.mjs} +2 -2
  95. package/dist/esm/{chunk-KJGQ4ILY.mjs → chunk-JW65YQSF.mjs} +2 -2
  96. package/dist/esm/chunk-KUX6GQ2E.mjs +1 -0
  97. package/dist/esm/chunk-L4CAATRY.mjs +2 -0
  98. package/dist/esm/chunk-L4CAATRY.mjs.map +1 -0
  99. package/dist/esm/{chunk-PJNPLRPR.mjs → chunk-L5WL2GGI.mjs} +2 -2
  100. package/dist/esm/chunk-L6NGU7XZ.mjs +2 -0
  101. package/dist/esm/chunk-L6NGU7XZ.mjs.map +1 -0
  102. package/dist/esm/{chunk-QRQAR6XO.mjs → chunk-LF67MEQF.mjs} +2 -2
  103. package/dist/esm/{chunk-AFPJ2XXN.mjs → chunk-M4DLGIKP.mjs} +2 -2
  104. package/dist/esm/{chunk-7D5LHQNS.mjs → chunk-MX5RTG3J.mjs} +2 -2
  105. package/dist/esm/{chunk-B2ZKW23W.mjs → chunk-NL6SHGNC.mjs} +2 -2
  106. package/dist/esm/chunk-ODJTKMBB.mjs +2 -0
  107. package/dist/esm/{chunk-SRZTA6QH.mjs.map → chunk-ODJTKMBB.mjs.map} +1 -1
  108. package/dist/esm/chunk-ODSW4WOX.mjs +2 -0
  109. package/dist/esm/chunk-ODSW4WOX.mjs.map +1 -0
  110. package/dist/esm/chunk-QE4ASJ5K.mjs +1 -0
  111. package/dist/esm/{chunk-ENKMOALS.mjs → chunk-QIKGTKEF.mjs} +2 -2
  112. package/dist/esm/chunk-QIKGTKEF.mjs.map +1 -0
  113. package/dist/esm/{chunk-M3WNE7MU.mjs → chunk-QT4YHSGZ.mjs} +2 -2
  114. package/dist/esm/{chunk-PMWH5IGI.mjs → chunk-QTKWCACE.mjs} +2 -2
  115. package/dist/esm/{chunk-QGIJNA37.mjs → chunk-RD4HGTGK.mjs} +2 -2
  116. package/dist/esm/{chunk-IHCIKE42.mjs → chunk-RG527TGB.mjs} +2 -2
  117. package/dist/esm/{chunk-ENDUXRTK.mjs → chunk-RSV64IPI.mjs} +2 -2
  118. package/dist/esm/{chunk-VKZCIGKY.mjs → chunk-SMND5Q5T.mjs} +2 -2
  119. package/dist/esm/chunk-SPF6BCNU.mjs +2 -0
  120. package/dist/esm/chunk-SPF6BCNU.mjs.map +1 -0
  121. package/dist/esm/{chunk-Y4AKS4CY.mjs → chunk-TCXBCK5T.mjs} +2 -2
  122. package/dist/esm/{chunk-PIXE7MN5.mjs → chunk-UCA6JL25.mjs} +2 -2
  123. package/dist/esm/{chunk-2WFMD6C6.mjs → chunk-UJB36GIR.mjs} +2 -2
  124. package/dist/esm/chunk-UVSRX4SV.mjs +1 -0
  125. package/dist/esm/{chunk-JJ6Y35DF.mjs → chunk-V5AIOBTO.mjs} +2 -2
  126. package/dist/esm/{chunk-O57QZZF2.mjs → chunk-VEBKGHUV.mjs} +2 -2
  127. package/dist/esm/chunk-VEBKGHUV.mjs.map +1 -0
  128. package/dist/esm/{chunk-PPTG6BDV.mjs → chunk-VRSSKMX4.mjs} +2 -2
  129. package/dist/esm/{chunk-NWRKJFHV.mjs → chunk-X2OCPM7P.mjs} +2 -2
  130. package/dist/esm/{chunk-LATJGGVX.mjs → chunk-X34ZBPWT.mjs} +2 -2
  131. package/dist/esm/{chunk-V2FPYAK7.mjs → chunk-XA37GN3W.mjs} +2 -2
  132. package/dist/esm/{chunk-N4RBQZ2B.mjs → chunk-XGWFFSQ6.mjs} +2 -2
  133. package/dist/esm/{chunk-R56OJ4XC.mjs → chunk-YGW3VAPT.mjs} +2 -2
  134. package/dist/esm/{chunk-2H5Z5EHH.mjs → chunk-YNSKIECV.mjs} +2 -2
  135. package/dist/esm/{chunk-FRLPX47J.mjs → chunk-YXBNTR7V.mjs} +2 -2
  136. package/dist/esm/{chunk-JQVT2K7G.mjs → chunk-ZSPPXKRC.mjs} +2 -2
  137. package/dist/esm/client/core.mjs +1 -1
  138. package/dist/esm/client/get.mjs +1 -1
  139. package/dist/esm/client/index.mjs +1 -1
  140. package/dist/esm/client/post.mjs +1 -1
  141. package/dist/esm/core/account/Account.d.mts +20 -0
  142. package/dist/esm/core/account/Account.mjs +2 -0
  143. package/dist/esm/core/account/Ed25519Account.d.mts +20 -0
  144. package/dist/esm/core/account/Ed25519Account.mjs +2 -0
  145. package/dist/esm/core/account/SingleKeyAccount.d.mts +20 -0
  146. package/dist/esm/core/account/SingleKeyAccount.mjs +2 -0
  147. package/dist/esm/core/account/SingleKeyAccount.mjs.map +1 -0
  148. package/dist/esm/core/account/index.d.mts +305 -0
  149. package/dist/esm/core/account/index.mjs +2 -0
  150. package/dist/esm/core/account/index.mjs.map +1 -0
  151. package/dist/esm/core/accountAddress.mjs +1 -1
  152. package/dist/esm/core/authenticationKey.d.mts +7 -68
  153. package/dist/esm/core/authenticationKey.mjs +1 -1
  154. package/dist/esm/core/crypto/ed25519.d.mts +49 -61
  155. package/dist/esm/core/crypto/ed25519.mjs +1 -1
  156. package/dist/esm/core/crypto/index.d.mts +9 -6
  157. package/dist/esm/core/crypto/index.mjs +1 -1
  158. package/dist/esm/core/crypto/multiEd25519.d.mts +17 -14
  159. package/dist/esm/core/crypto/multiEd25519.mjs +1 -1
  160. package/dist/esm/core/crypto/multiKey.d.mts +70 -17
  161. package/dist/esm/core/crypto/multiKey.mjs +1 -1
  162. package/dist/esm/core/crypto/privateKey.d.mts +35 -0
  163. package/dist/esm/core/crypto/privateKey.mjs +2 -0
  164. package/dist/esm/core/crypto/privateKey.mjs.map +1 -0
  165. package/dist/esm/core/crypto/publicKey.d.mts +13 -0
  166. package/dist/esm/core/crypto/publicKey.mjs +2 -0
  167. package/dist/esm/core/crypto/publicKey.mjs.map +1 -0
  168. package/dist/esm/core/crypto/secp256k1.d.mts +43 -67
  169. package/dist/esm/core/crypto/secp256k1.mjs +1 -1
  170. package/dist/esm/core/crypto/signature.d.mts +28 -0
  171. package/dist/esm/core/crypto/signature.mjs +2 -0
  172. package/dist/esm/core/crypto/signature.mjs.map +1 -0
  173. package/dist/esm/core/crypto/singleKey.d.mts +68 -0
  174. package/dist/esm/core/crypto/singleKey.mjs +2 -0
  175. package/dist/esm/core/crypto/singleKey.mjs.map +1 -0
  176. package/dist/esm/core/index.d.mts +9 -8
  177. package/dist/esm/core/index.mjs +1 -1
  178. package/dist/esm/index.d.mts +8 -8
  179. package/dist/esm/index.mjs +1 -1
  180. package/dist/esm/internal/account.d.mts +10 -4
  181. package/dist/esm/internal/account.mjs +1 -1
  182. package/dist/esm/internal/ans.d.mts +11 -12
  183. package/dist/esm/internal/ans.mjs +1 -1
  184. package/dist/esm/internal/coin.d.mts +12 -12
  185. package/dist/esm/internal/coin.mjs +1 -1
  186. package/dist/esm/internal/digitalAsset.d.mts +17 -14
  187. package/dist/esm/internal/digitalAsset.mjs +1 -1
  188. package/dist/esm/internal/event.d.mts +2 -2
  189. package/dist/esm/internal/event.mjs +1 -1
  190. package/dist/esm/internal/faucet.d.mts +4 -4
  191. package/dist/esm/internal/faucet.mjs +1 -1
  192. package/dist/esm/internal/fungibleAsset.d.mts +10 -11
  193. package/dist/esm/internal/fungibleAsset.mjs +1 -1
  194. package/dist/esm/internal/general.mjs +1 -1
  195. package/dist/esm/internal/staking.d.mts +3 -3
  196. package/dist/esm/internal/staking.mjs +1 -1
  197. package/dist/esm/internal/transaction.mjs +1 -1
  198. package/dist/esm/internal/transactionSubmission.d.mts +12 -13
  199. package/dist/esm/internal/transactionSubmission.mjs +1 -1
  200. package/dist/esm/publicKey-lq5djCIY.d.mts +113 -0
  201. package/dist/esm/transactions/authenticator/account.d.mts +6 -4
  202. package/dist/esm/transactions/authenticator/account.mjs +1 -1
  203. package/dist/esm/transactions/authenticator/index.d.mts +6 -6
  204. package/dist/esm/transactions/authenticator/index.mjs +1 -1
  205. package/dist/esm/transactions/authenticator/transaction.d.mts +5 -5
  206. package/dist/esm/transactions/authenticator/transaction.mjs +1 -1
  207. package/dist/esm/transactions/index.d.mts +6 -7
  208. package/dist/esm/transactions/index.mjs +1 -1
  209. package/dist/esm/transactions/instances/chainId.mjs +1 -1
  210. package/dist/esm/transactions/instances/identifier.mjs +1 -1
  211. package/dist/esm/transactions/instances/index.d.mts +4 -4
  212. package/dist/esm/transactions/instances/index.mjs +1 -1
  213. package/dist/esm/transactions/instances/moduleId.d.mts +1 -1
  214. package/dist/esm/transactions/instances/moduleId.mjs +1 -1
  215. package/dist/esm/transactions/instances/rawTransaction.mjs +1 -1
  216. package/dist/esm/transactions/instances/rotationProofChallenge.d.mts +2 -1
  217. package/dist/esm/transactions/instances/rotationProofChallenge.mjs +1 -1
  218. package/dist/esm/transactions/instances/signedTransaction.d.mts +8 -8
  219. package/dist/esm/transactions/instances/signedTransaction.mjs +1 -1
  220. package/dist/esm/transactions/instances/transactionPayload.d.mts +1 -1
  221. package/dist/esm/transactions/instances/transactionPayload.mjs +1 -1
  222. package/dist/esm/transactions/management/accountSequenceNumber.d.mts +11 -5
  223. package/dist/esm/transactions/management/accountSequenceNumber.mjs +1 -1
  224. package/dist/esm/transactions/management/index.d.mts +11 -12
  225. package/dist/esm/transactions/management/index.mjs +1 -1
  226. package/dist/esm/transactions/management/transactionWorker.d.mts +11 -12
  227. package/dist/esm/transactions/management/transactionWorker.mjs +1 -1
  228. package/dist/esm/transactions/transactionBuilder/helpers.d.mts +10 -10
  229. package/dist/esm/transactions/transactionBuilder/helpers.mjs +1 -1
  230. package/dist/esm/transactions/transactionBuilder/index.d.mts +9 -10
  231. package/dist/esm/transactions/transactionBuilder/index.mjs +1 -1
  232. package/dist/esm/transactions/transactionBuilder/remoteAbi.d.mts +8 -8
  233. package/dist/esm/transactions/transactionBuilder/remoteAbi.mjs +1 -1
  234. package/dist/esm/transactions/transactionBuilder/transactionBuilder.d.mts +9 -10
  235. package/dist/esm/transactions/transactionBuilder/transactionBuilder.mjs +1 -1
  236. package/dist/esm/transactions/typeTag/index.mjs +1 -1
  237. package/dist/esm/transactions/typeTag/parser.mjs +1 -1
  238. package/dist/esm/transactions/types.d.mts +9 -9
  239. package/dist/esm/utils/const.d.mts +1 -2
  240. package/dist/esm/utils/const.mjs +1 -1
  241. package/dist/esm/utils/index.d.mts +1 -1
  242. package/dist/esm/utils/index.mjs +1 -1
  243. package/dist/esm/version.d.mts +1 -1
  244. package/dist/esm/version.mjs +1 -1
  245. package/package.json +1 -1
  246. package/src/api/aptosConfig.ts +2 -2
  247. package/src/api/digitalAsset.ts +20 -0
  248. package/src/core/account/Account.ts +245 -0
  249. package/src/core/account/Ed25519Account.ts +88 -0
  250. package/src/core/account/SingleKeyAccount.ts +120 -0
  251. package/src/core/account/index.ts +3 -0
  252. package/src/core/authenticationKey.ts +18 -52
  253. package/src/core/crypto/ed25519.ts +118 -104
  254. package/src/core/crypto/index.ts +6 -5
  255. package/src/core/crypto/multiEd25519.ts +98 -44
  256. package/src/core/crypto/multiKey.ts +192 -34
  257. package/src/core/crypto/privateKey.ts +25 -0
  258. package/src/core/crypto/publicKey.ts +52 -0
  259. package/src/core/crypto/secp256k1.ts +108 -111
  260. package/src/core/crypto/signature.ts +46 -0
  261. package/src/core/crypto/singleKey.ts +180 -0
  262. package/src/internal/account.ts +5 -3
  263. package/src/internal/digitalAsset.ts +26 -0
  264. package/src/internal/queries/currentTokenOwnershipFieldsFragment.graphql +0 -1
  265. package/src/transactions/authenticator/account.ts +1 -2
  266. package/src/transactions/instances/rotationProofChallenge.ts +1 -1
  267. package/src/transactions/transactionBuilder/transactionBuilder.ts +3 -21
  268. package/src/transactions/types.ts +1 -1
  269. package/src/utils/const.ts +0 -4
  270. package/src/version.ts +1 -1
  271. package/dist/esm/chunk-2QV6HI3M.mjs +0 -2
  272. package/dist/esm/chunk-2QV6HI3M.mjs.map +0 -1
  273. package/dist/esm/chunk-7IGH7N52.mjs +0 -2
  274. package/dist/esm/chunk-7IGH7N52.mjs.map +0 -1
  275. package/dist/esm/chunk-CCUD52OF.mjs +0 -2
  276. package/dist/esm/chunk-CCUD52OF.mjs.map +0 -1
  277. package/dist/esm/chunk-ENKMOALS.mjs.map +0 -1
  278. package/dist/esm/chunk-ERWQOVBF.mjs +0 -2
  279. package/dist/esm/chunk-ERWQOVBF.mjs.map +0 -1
  280. package/dist/esm/chunk-FBFMQZTM.mjs +0 -2
  281. package/dist/esm/chunk-FBFMQZTM.mjs.map +0 -1
  282. package/dist/esm/chunk-FP5DPRYL.mjs +0 -2
  283. package/dist/esm/chunk-FP5DPRYL.mjs.map +0 -1
  284. package/dist/esm/chunk-HHJBCGAQ.mjs +0 -2
  285. package/dist/esm/chunk-HHJBCGAQ.mjs.map +0 -1
  286. package/dist/esm/chunk-I7WRJY7K.mjs +0 -2
  287. package/dist/esm/chunk-I7WRJY7K.mjs.map +0 -1
  288. package/dist/esm/chunk-LHJSG5NE.mjs +0 -2
  289. package/dist/esm/chunk-LHJSG5NE.mjs.map +0 -1
  290. package/dist/esm/chunk-MEPX7Z2Z.mjs +0 -2
  291. package/dist/esm/chunk-O57QZZF2.mjs.map +0 -1
  292. package/dist/esm/chunk-S3FBGS3W.mjs +0 -2
  293. package/dist/esm/chunk-S3FBGS3W.mjs.map +0 -1
  294. package/dist/esm/chunk-SBMJNU2O.mjs +0 -2
  295. package/dist/esm/chunk-SBMJNU2O.mjs.map +0 -1
  296. package/dist/esm/chunk-SRZTA6QH.mjs +0 -2
  297. package/dist/esm/chunk-UCHGKGCF.mjs +0 -2
  298. package/dist/esm/chunk-UCHGKGCF.mjs.map +0 -1
  299. package/dist/esm/chunk-UIVJXLRM.mjs +0 -1
  300. package/dist/esm/chunk-V6JFR2CB.mjs +0 -2
  301. package/dist/esm/chunk-V6JFR2CB.mjs.map +0 -1
  302. package/dist/esm/chunk-XZYPAQCU.mjs +0 -2
  303. package/dist/esm/chunk-YL2EDK5M.mjs +0 -2
  304. package/dist/esm/chunk-YL2EDK5M.mjs.map +0 -1
  305. package/dist/esm/chunk-ZFIMVSCR.mjs +0 -2
  306. package/dist/esm/chunk-ZFIMVSCR.mjs.map +0 -1
  307. package/dist/esm/core/account.d.mts +0 -184
  308. package/dist/esm/core/account.mjs +0 -2
  309. package/dist/esm/core/crypto/anyPublicKey.d.mts +0 -59
  310. package/dist/esm/core/crypto/anyPublicKey.mjs +0 -2
  311. package/dist/esm/core/crypto/anySignature.d.mts +0 -31
  312. package/dist/esm/core/crypto/anySignature.mjs +0 -2
  313. package/dist/esm/core/crypto/asymmetricCrypto.d.mts +0 -74
  314. package/dist/esm/core/crypto/asymmetricCrypto.mjs +0 -2
  315. package/src/core/account.ts +0 -282
  316. package/src/core/crypto/anyPublicKey.ts +0 -92
  317. package/src/core/crypto/anySignature.ts +0 -56
  318. package/src/core/crypto/asymmetricCrypto.ts +0 -77
  319. /package/dist/esm/{chunk-GD5TZLBF.mjs.map → chunk-27XWZ5HH.mjs.map} +0 -0
  320. /package/dist/esm/{chunk-VPQ46CAO.mjs.map → chunk-2CZ7RDU5.mjs.map} +0 -0
  321. /package/dist/esm/{chunk-SXIFL5DQ.mjs.map → chunk-2LRDOYKF.mjs.map} +0 -0
  322. /package/dist/esm/{chunk-F7CR75CJ.mjs.map → chunk-3BWYI3KO.mjs.map} +0 -0
  323. /package/dist/esm/{chunk-GD4ULEBC.mjs.map → chunk-4H3C3V6D.mjs.map} +0 -0
  324. /package/dist/esm/{chunk-W4UDMBMU.mjs.map → chunk-4M3DGBX6.mjs.map} +0 -0
  325. /package/dist/esm/{chunk-4OI7MPFH.mjs.map → chunk-AKBRO5YS.mjs.map} +0 -0
  326. /package/dist/esm/{chunk-F7MOQC7Z.mjs.map → chunk-BMDNUQIP.mjs.map} +0 -0
  327. /package/dist/esm/{chunk-EUHPML5E.mjs.map → chunk-BR6FLUGH.mjs.map} +0 -0
  328. /package/dist/esm/{chunk-6SRENFWH.mjs.map → chunk-CARQVN57.mjs.map} +0 -0
  329. /package/dist/esm/{chunk-Q5HK3U64.mjs.map → chunk-DGZIRX6Z.mjs.map} +0 -0
  330. /package/dist/esm/{chunk-2DNPRIS5.mjs.map → chunk-DWRBQ52O.mjs.map} +0 -0
  331. /package/dist/esm/{chunk-XBVORX5O.mjs.map → chunk-DZNEBO5A.mjs.map} +0 -0
  332. /package/dist/esm/{chunk-Q3HAJVCM.mjs.map → chunk-FI2B5BQ2.mjs.map} +0 -0
  333. /package/dist/esm/{chunk-4M46AWXX.mjs.map → chunk-HE4FXVC4.mjs.map} +0 -0
  334. /package/dist/esm/{chunk-QKTV6AZ7.mjs.map → chunk-HZO2FSG5.mjs.map} +0 -0
  335. /package/dist/esm/{chunk-VRSUCKJA.mjs.map → chunk-IKKFQZDP.mjs.map} +0 -0
  336. /package/dist/esm/{chunk-SPOHAEHR.mjs.map → chunk-J2P6ERQF.mjs.map} +0 -0
  337. /package/dist/esm/{chunk-S64WKSMI.mjs.map → chunk-JOYBEFKL.mjs.map} +0 -0
  338. /package/dist/esm/{chunk-KJGQ4ILY.mjs.map → chunk-JW65YQSF.mjs.map} +0 -0
  339. /package/dist/esm/{chunk-UIVJXLRM.mjs.map → chunk-KUX6GQ2E.mjs.map} +0 -0
  340. /package/dist/esm/{chunk-PJNPLRPR.mjs.map → chunk-L5WL2GGI.mjs.map} +0 -0
  341. /package/dist/esm/{chunk-QRQAR6XO.mjs.map → chunk-LF67MEQF.mjs.map} +0 -0
  342. /package/dist/esm/{chunk-AFPJ2XXN.mjs.map → chunk-M4DLGIKP.mjs.map} +0 -0
  343. /package/dist/esm/{chunk-7D5LHQNS.mjs.map → chunk-MX5RTG3J.mjs.map} +0 -0
  344. /package/dist/esm/{chunk-B2ZKW23W.mjs.map → chunk-NL6SHGNC.mjs.map} +0 -0
  345. /package/dist/esm/{core/account.mjs.map → chunk-QE4ASJ5K.mjs.map} +0 -0
  346. /package/dist/esm/{chunk-M3WNE7MU.mjs.map → chunk-QT4YHSGZ.mjs.map} +0 -0
  347. /package/dist/esm/{chunk-PMWH5IGI.mjs.map → chunk-QTKWCACE.mjs.map} +0 -0
  348. /package/dist/esm/{chunk-QGIJNA37.mjs.map → chunk-RD4HGTGK.mjs.map} +0 -0
  349. /package/dist/esm/{chunk-IHCIKE42.mjs.map → chunk-RG527TGB.mjs.map} +0 -0
  350. /package/dist/esm/{chunk-ENDUXRTK.mjs.map → chunk-RSV64IPI.mjs.map} +0 -0
  351. /package/dist/esm/{chunk-VKZCIGKY.mjs.map → chunk-SMND5Q5T.mjs.map} +0 -0
  352. /package/dist/esm/{chunk-Y4AKS4CY.mjs.map → chunk-TCXBCK5T.mjs.map} +0 -0
  353. /package/dist/esm/{chunk-PIXE7MN5.mjs.map → chunk-UCA6JL25.mjs.map} +0 -0
  354. /package/dist/esm/{chunk-2WFMD6C6.mjs.map → chunk-UJB36GIR.mjs.map} +0 -0
  355. /package/dist/esm/{core/crypto/anyPublicKey.mjs.map → chunk-UVSRX4SV.mjs.map} +0 -0
  356. /package/dist/esm/{chunk-JJ6Y35DF.mjs.map → chunk-V5AIOBTO.mjs.map} +0 -0
  357. /package/dist/esm/{chunk-PPTG6BDV.mjs.map → chunk-VRSSKMX4.mjs.map} +0 -0
  358. /package/dist/esm/{chunk-NWRKJFHV.mjs.map → chunk-X2OCPM7P.mjs.map} +0 -0
  359. /package/dist/esm/{chunk-LATJGGVX.mjs.map → chunk-X34ZBPWT.mjs.map} +0 -0
  360. /package/dist/esm/{chunk-V2FPYAK7.mjs.map → chunk-XA37GN3W.mjs.map} +0 -0
  361. /package/dist/esm/{chunk-N4RBQZ2B.mjs.map → chunk-XGWFFSQ6.mjs.map} +0 -0
  362. /package/dist/esm/{chunk-R56OJ4XC.mjs.map → chunk-YGW3VAPT.mjs.map} +0 -0
  363. /package/dist/esm/{chunk-2H5Z5EHH.mjs.map → chunk-YNSKIECV.mjs.map} +0 -0
  364. /package/dist/esm/{chunk-FRLPX47J.mjs.map → chunk-YXBNTR7V.mjs.map} +0 -0
  365. /package/dist/esm/{chunk-JQVT2K7G.mjs.map → chunk-ZSPPXKRC.mjs.map} +0 -0
  366. /package/dist/esm/core/{crypto/anySignature.mjs.map → account/Account.mjs.map} +0 -0
  367. /package/dist/esm/core/{crypto/asymmetricCrypto.mjs.map → account/Ed25519Account.mjs.map} +0 -0
@@ -0,0 +1,46 @@
1
+ import { Serializable } from "../../bcs";
2
+ import { Hex } from "../hex";
3
+
4
+ /**
5
+ * An abstract representation of a crypto signature,
6
+ * associated to a specific signature scheme e.g. Ed25519 or Secp256k1
7
+ *
8
+ * This is the product of signing a message directly from a PrivateKey
9
+ * and can be verified against a CryptoPublicKey.
10
+ */
11
+ export abstract class Signature extends Serializable {
12
+ /**
13
+ * Get the raw signature bytes
14
+ */
15
+ abstract toUint8Array(): Uint8Array;
16
+
17
+ /**
18
+ * Get the signature as a hex string with a 0x prefix e.g. 0x123456...
19
+ */
20
+ toString(): string {
21
+ const bytes = this.toUint8Array();
22
+ return Hex.fromHexInput(bytes).toString();
23
+ }
24
+ }
25
+
26
+ /**
27
+ * An abstract representation of an account signature,
28
+ * associated to a specific authentication scheme e.g. Ed25519 or SingleKey
29
+ *
30
+ * This is the product of signing a message through an account,
31
+ * and can be verified against an AccountPublicKey.
32
+ */
33
+ // export abstract class AccountSignature extends Serializable {
34
+ // /**
35
+ // * Get the raw signature bytes
36
+ // */
37
+ // abstract toUint8Array(): Uint8Array;
38
+ //
39
+ // /**
40
+ // * Get the signature as a hex string with a 0x prefix e.g. 0x123456...
41
+ // */
42
+ // toString(): string {
43
+ // const bytes = this.toUint8Array();
44
+ // return Hex.fromHexInput(bytes).toString();
45
+ // }
46
+ // }
@@ -0,0 +1,180 @@
1
+ import { Deserializer, Serializer } from "../../bcs";
2
+ import { AnyPublicKeyVariant, AnySignatureVariant, SigningScheme as AuthenticationKeyScheme } from "../../types";
3
+ import { AuthenticationKey } from "../authenticationKey";
4
+ import { Ed25519PublicKey, Ed25519Signature } from "./ed25519";
5
+ import { AccountPublicKey, PublicKey, VerifySignatureArgs } from "./publicKey";
6
+ import { Secp256k1PublicKey, Secp256k1Signature } from "./secp256k1";
7
+ import { Signature } from "./signature";
8
+
9
+ /**
10
+ * Represents any public key supported by Aptos.
11
+ *
12
+ * Since [AIP-55](https://github.com/aptos-foundation/AIPs/pull/263) Aptos supports
13
+ * `Legacy` and `Unified` authentication keys.
14
+ *
15
+ * Any unified authentication key is represented in the SDK as `AnyPublicKey`.
16
+ */
17
+ export class AnyPublicKey extends AccountPublicKey {
18
+ /**
19
+ * Reference to the inner public key
20
+ */
21
+ public readonly publicKey: PublicKey;
22
+
23
+ /**
24
+ * Index of the underlying enum variant
25
+ */
26
+ public readonly variant: AnyPublicKeyVariant;
27
+
28
+ // region Constructors
29
+
30
+ constructor(publicKey: PublicKey) {
31
+ super();
32
+ this.publicKey = publicKey;
33
+ if (publicKey instanceof Ed25519PublicKey) {
34
+ this.variant = AnyPublicKeyVariant.Ed25519;
35
+ } else if (publicKey instanceof Secp256k1PublicKey) {
36
+ this.variant = AnyPublicKeyVariant.Secp256k1;
37
+ } else {
38
+ throw new Error("Unsupported public key type");
39
+ }
40
+ }
41
+
42
+ // endregion
43
+
44
+ // region AccountPublicKey
45
+
46
+ verifySignature(args: VerifySignatureArgs): boolean {
47
+ const { message, signature } = args;
48
+ if (!(signature instanceof AnySignature)) {
49
+ return false;
50
+ }
51
+
52
+ return this.publicKey.verifySignature({
53
+ message,
54
+ signature: signature.signature,
55
+ });
56
+ }
57
+
58
+ authKey(): AuthenticationKey {
59
+ return AuthenticationKey.fromSchemeAndBytes({
60
+ scheme: AuthenticationKeyScheme.SingleKey,
61
+ input: this.toUint8Array(),
62
+ });
63
+ }
64
+
65
+ toUint8Array() {
66
+ return this.bcsToBytes();
67
+ }
68
+
69
+ // endregion
70
+
71
+ // region Serializable
72
+
73
+ serialize(serializer: Serializer): void {
74
+ serializer.serializeU32AsUleb128(this.variant);
75
+ this.publicKey.serialize(serializer);
76
+ }
77
+
78
+ static deserialize(deserializer: Deserializer): AnyPublicKey {
79
+ const variantIndex = deserializer.deserializeUleb128AsU32();
80
+ let publicKey: PublicKey;
81
+ switch (variantIndex) {
82
+ case AnyPublicKeyVariant.Ed25519:
83
+ publicKey = Ed25519PublicKey.deserialize(deserializer);
84
+ break;
85
+ case AnyPublicKeyVariant.Secp256k1:
86
+ publicKey = Secp256k1PublicKey.deserialize(deserializer);
87
+ break;
88
+ default:
89
+ throw new Error(`Unknown variant index for AnyPublicKey: ${variantIndex}`);
90
+ }
91
+ return new AnyPublicKey(publicKey);
92
+ }
93
+
94
+ // endregion
95
+
96
+ /**
97
+ * @deprecated use `instanceof AnyPublicKey` instead.
98
+ */
99
+ static isPublicKey(publicKey: AccountPublicKey): publicKey is AnyPublicKey {
100
+ return publicKey instanceof AnyPublicKey;
101
+ }
102
+
103
+ /**
104
+ * @deprecated use `publicKey instanceof Ed25519PublicKey` instead.
105
+ */
106
+ isEd25519(): boolean {
107
+ return this.publicKey instanceof Ed25519PublicKey;
108
+ }
109
+
110
+ /**
111
+ * @deprecated use `publicKey instanceof Secp256k1PublicKey` instead.
112
+ */
113
+ isSecp256k1PublicKey(): boolean {
114
+ return this.publicKey instanceof Secp256k1PublicKey;
115
+ }
116
+ }
117
+
118
+ /**
119
+ * Instance of signature that uses the SingleKey authentication scheme.
120
+ * This signature can only be generated by a `SingleKeySigner`, since it uses the
121
+ * same authentication scheme.
122
+ */
123
+ export class AnySignature extends Signature {
124
+ public readonly signature: Signature;
125
+
126
+ /**
127
+ * Index of the underlying enum variant
128
+ */
129
+ private readonly variant: AnySignatureVariant;
130
+
131
+ // region Constructors
132
+
133
+ constructor(signature: Signature) {
134
+ super();
135
+ this.signature = signature;
136
+
137
+ if (signature instanceof Ed25519Signature) {
138
+ this.variant = AnySignatureVariant.Ed25519;
139
+ } else if (signature instanceof Secp256k1Signature) {
140
+ this.variant = AnySignatureVariant.Secp256k1;
141
+ } else {
142
+ throw new Error("Unsupported signature type");
143
+ }
144
+ }
145
+
146
+ // endregion
147
+
148
+ // region AccountSignature
149
+
150
+ toUint8Array() {
151
+ return this.bcsToBytes();
152
+ }
153
+
154
+ // endregion
155
+
156
+ // region Serializable
157
+
158
+ serialize(serializer: Serializer): void {
159
+ serializer.serializeU32AsUleb128(this.variant);
160
+ this.signature.serialize(serializer);
161
+ }
162
+
163
+ static deserialize(deserializer: Deserializer): AnySignature {
164
+ const variantIndex = deserializer.deserializeUleb128AsU32();
165
+ let signature: Signature;
166
+ switch (variantIndex) {
167
+ case AnySignatureVariant.Ed25519:
168
+ signature = Ed25519Signature.deserialize(deserializer);
169
+ break;
170
+ case AnySignatureVariant.Secp256k1:
171
+ signature = Secp256k1Signature.deserialize(deserializer);
172
+ break;
173
+ default:
174
+ throw new Error(`Unknown variant index for AnySignature: ${variantIndex}`);
175
+ }
176
+ return new AnySignature(signature);
177
+ }
178
+
179
+ // endregion
180
+ }
@@ -12,7 +12,7 @@ import { AptosConfig } from "../api/aptosConfig";
12
12
  import { AptosApiError, getAptosFullNode, paginateWithCursor } from "../client";
13
13
  import { AccountAddress, AccountAddressInput } from "../core/accountAddress";
14
14
  import { Account } from "../core/account";
15
- import { PrivateKey } from "../core/crypto/asymmetricCrypto";
15
+ import { AnyPublicKey, Ed25519PublicKey, PrivateKey } from "../core/crypto";
16
16
  import { getTableItem, queryIndexer } from "./general";
17
17
  import {
18
18
  AccountData,
@@ -54,7 +54,6 @@ import {
54
54
  } from "../types/generated/queries";
55
55
  import { memoizeAsync } from "../utils/memoize";
56
56
  import { Secp256k1PrivateKey, AuthenticationKey, Ed25519PrivateKey } from "../core";
57
- import { AnyPublicKey } from "../core/crypto/anyPublicKey";
58
57
  import { CurrentFungibleAssetBalancesBoolExp } from "../types/generated/types";
59
58
 
60
59
  export async function getInfo(args: {
@@ -549,7 +548,10 @@ export async function deriveAccountFromPrivateKey(args: {
549
548
  return Account.fromPrivateKeyAndAddress({ privateKey, address, legacy: false });
550
549
  }
551
550
  // lookup legacy ed25519
552
- const legacyAuthKey = AuthenticationKey.fromPublicKeyAndScheme({ publicKey, scheme: SigningScheme.Ed25519 });
551
+ const legacyAuthKey = AuthenticationKey.fromPublicKeyAndScheme({
552
+ publicKey: publicKey.publicKey as Ed25519PublicKey,
553
+ scheme: SigningScheme.Ed25519,
554
+ });
553
555
  const isLegacyEd25519 = await isAccountExist({ authKey: legacyAuthKey, aptosConfig });
554
556
  if (isLegacyEd25519) {
555
557
  const address = legacyAuthKey.derivedAddress();
@@ -302,6 +302,32 @@ export async function getCollectionData(args: {
302
302
  return data.current_collections_v2[0];
303
303
  }
304
304
 
305
+ export async function getCollectionDataByCollectionId(args: {
306
+ aptosConfig: AptosConfig;
307
+ collectionId: AccountAddressInput;
308
+ }): Promise<GetCollectionDataResponse> {
309
+ const { aptosConfig, collectionId } = args;
310
+ const address = AccountAddress.from(collectionId);
311
+
312
+ const whereCondition: any = {
313
+ collection_id: { _eq: address.toStringLong() },
314
+ };
315
+
316
+ const graphqlQuery = {
317
+ query: GetCollectionData,
318
+ variables: {
319
+ where_condition: whereCondition,
320
+ },
321
+ };
322
+ const data = await queryIndexer<GetCollectionDataQuery>({
323
+ aptosConfig,
324
+ query: graphqlQuery,
325
+ originMethod: "getCollectionData",
326
+ });
327
+
328
+ return data.current_collections_v2[0];
329
+ }
330
+
305
331
  export async function getCollectionId(args: {
306
332
  aptosConfig: AptosConfig;
307
333
  creatorAddress: AccountAddressInput;
@@ -25,7 +25,6 @@ fragment CurrentTokenOwnershipFields on current_token_ownerships_v2 {
25
25
  token_properties
26
26
  token_standard
27
27
  token_uri
28
- decimals
29
28
  current_collection {
30
29
  collection_id
31
30
  collection_name
@@ -4,8 +4,7 @@
4
4
  /* eslint-disable @typescript-eslint/naming-convention */
5
5
 
6
6
  import { Serializer, Deserializer, Serializable } from "../../bcs";
7
- import { AnyPublicKey } from "../../core/crypto/anyPublicKey";
8
- import { AnySignature } from "../../core/crypto/anySignature";
7
+ import { AnyPublicKey, AnySignature } from "../../core/crypto";
9
8
  import { Ed25519PublicKey, Ed25519Signature } from "../../core/crypto/ed25519";
10
9
  import { MultiEd25519PublicKey, MultiEd25519Signature } from "../../core/crypto/multiEd25519";
11
10
  import { MultiKey } from "../../core/crypto/multiKey";
@@ -4,7 +4,7 @@
4
4
  import { Serializer, Serializable } from "../../bcs/serializer";
5
5
  import { AccountAddress } from "../../core/accountAddress";
6
6
  import { AnyNumber } from "../../types";
7
- import { PublicKey } from "../../core/crypto/asymmetricCrypto";
7
+ import { PublicKey } from "../../core/crypto";
8
8
  import { MoveString, MoveVector, U64, U8 } from "../../bcs";
9
9
 
10
10
  /**
@@ -10,8 +10,7 @@ import { sha3_256 as sha3Hash } from "@noble/hashes/sha3";
10
10
  import { AptosConfig } from "../../api/aptosConfig";
11
11
  import { AccountAddress, AccountAddressInput, Hex, PublicKey } from "../../core";
12
12
  import { Account } from "../../core/account";
13
- import { AnyPublicKey } from "../../core/crypto/anyPublicKey";
14
- import { AnySignature } from "../../core/crypto/anySignature";
13
+ import { AnyPublicKey, AnySignature } from "../../core/crypto";
15
14
  import { Ed25519PublicKey, Ed25519Signature } from "../../core/crypto/ed25519";
16
15
  import { Secp256k1PublicKey, Secp256k1Signature } from "../../core/crypto/secp256k1";
17
16
  import { getInfo } from "../../internal/account";
@@ -73,7 +72,7 @@ import {
73
72
  } from "../types";
74
73
  import { convertArgument, fetchEntryFunctionAbi, standardizeTypeTags } from "./remoteAbi";
75
74
  import { memoizeAsync } from "../../utils/memoize";
76
- import { AnyNumber, SigningScheme } from "../../types";
75
+ import { AnyNumber } from "../../types";
77
76
  import { getFunctionParts, isScriptDataInput } from "./helpers";
78
77
 
79
78
  /**
@@ -422,24 +421,7 @@ export function sign(args: { signer: Account; transaction: AnyRawTransaction }):
422
421
  const message = generateSigningMessage(transaction);
423
422
 
424
423
  // account.signMessage
425
- const signerSignature = signer.sign(message);
426
-
427
- // return account authentication
428
- switch (signer.signingScheme) {
429
- case SigningScheme.Ed25519:
430
- return new AccountAuthenticatorEd25519(
431
- new Ed25519PublicKey(signer.publicKey.toUint8Array()),
432
- new Ed25519Signature(signerSignature.toUint8Array()),
433
- );
434
- case SigningScheme.SingleKey:
435
- if (!AnyPublicKey.isPublicKey(signer.publicKey)) {
436
- throw new Error(`Cannot sign transaction, public key does not match ${signer.signingScheme}`);
437
- }
438
- return new AccountAuthenticatorSingleKey(signer.publicKey, new AnySignature(signerSignature));
439
- // TODO support MultiEd25519
440
- default:
441
- throw new Error(`Cannot sign transaction, signing scheme ${signer.signingScheme} not supported`);
442
- }
424
+ return signer.signWithAuthenticator(message);
443
425
  }
444
426
 
445
427
  /**
@@ -6,7 +6,7 @@ import { MoveOption, MoveString, MoveVector } from "../bcs/serializable/moveStru
6
6
  import { Bool, U128, U16, U256, U32, U64, U8 } from "../bcs/serializable/movePrimitives";
7
7
  import { FixedBytes } from "../bcs/serializable/fixedBytes";
8
8
  import { AccountAddress, AccountAddressInput } from "../core";
9
- import { PublicKey } from "../core/crypto/asymmetricCrypto";
9
+ import { PublicKey } from "../core/crypto";
10
10
  import {
11
11
  MultiAgentRawTransaction,
12
12
  FeePayerRawTransaction,
@@ -1,8 +1,6 @@
1
1
  // Copyright © Aptos Foundation
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
- import { Network } from "./apiEndpoints";
5
-
6
4
  /**
7
5
  * Type of API endpoint for request routing
8
6
  */
@@ -12,8 +10,6 @@ export enum AptosApiType {
12
10
  FAUCET,
13
11
  }
14
12
 
15
- export const DEFAULT_NETWORK = Network.DEVNET;
16
-
17
13
  /**
18
14
  * The default max gas amount when none is given.
19
15
  *
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 = "1.8.0";
9
+ export const VERSION = "1.9.1";
@@ -1,2 +0,0 @@
1
- import{c as e}from"./chunk-ZFIMVSCR.mjs";import{c as i}from"./chunk-I7WRJY7K.mjs";import{c as a}from"./chunk-V6JFR2CB.mjs";var s=class t extends a{constructor(r){super();this.signature=r}toUint8Array(){return this.signature.toUint8Array()}toString(){return this.signature.toString()}serialize(r){if(this.signature instanceof e)r.serializeU32AsUleb128(0),this.signature.serialize(r);else if(this.signature instanceof i)r.serializeU32AsUleb128(1),this.signature.serialize(r);else throw new Error("Unknown signature type")}static deserialize(r){let n=r.deserializeUleb128AsU32();switch(n){case 0:return new t(e.load(r));case 1:return new t(i.load(r));default:throw new Error(`Unknown variant index for AnySignature: ${n}`)}}};export{s as a};
2
- //# sourceMappingURL=chunk-2QV6HI3M.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/core/crypto/anySignature.ts"],"sourcesContent":["import { Serializer, Deserializer } from \"../../bcs\";\nimport { AnySignatureVariant } from \"../../types\";\nimport { Signature } from \"./asymmetricCrypto\";\nimport { Ed25519Signature } from \"./ed25519\";\nimport { Secp256k1Signature } from \"./secp256k1\";\n\nexport class AnySignature extends Signature {\n public readonly signature: Signature;\n\n constructor(signature: Signature) {\n super();\n this.signature = signature;\n }\n\n /**\n * Get the public key in bytes (Uint8Array).\n *\n * @returns Uint8Array representation of the public key\n */\n toUint8Array(): Uint8Array {\n return this.signature.toUint8Array();\n }\n\n /**\n * Get the public key as a hex string with the 0x prefix.\n *\n * @returns string representation of the public key\n */\n toString(): string {\n return this.signature.toString();\n }\n\n serialize(serializer: Serializer): void {\n if (this.signature instanceof Ed25519Signature) {\n serializer.serializeU32AsUleb128(AnySignatureVariant.Ed25519);\n this.signature.serialize(serializer);\n } else if (this.signature instanceof Secp256k1Signature) {\n serializer.serializeU32AsUleb128(AnySignatureVariant.Secp256k1);\n this.signature.serialize(serializer);\n } else {\n throw new Error(\"Unknown signature type\");\n }\n }\n\n static deserialize(deserializer: Deserializer): AnySignature {\n const index = deserializer.deserializeUleb128AsU32();\n switch (index) {\n case AnySignatureVariant.Ed25519:\n return new AnySignature(Ed25519Signature.load(deserializer));\n case AnySignatureVariant.Secp256k1:\n return new AnySignature(Secp256k1Signature.load(deserializer));\n default:\n throw new Error(`Unknown variant index for AnySignature: ${index}`);\n }\n }\n}\n"],"mappings":"2HAMO,IAAMA,EAAN,MAAMC,UAAqBC,CAAU,CAG1C,YAAYC,EAAsB,CAChC,MAAM,EACN,KAAK,UAAYA,CACnB,CAOA,cAA2B,CACzB,OAAO,KAAK,UAAU,aAAa,CACrC,CAOA,UAAmB,CACjB,OAAO,KAAK,UAAU,SAAS,CACjC,CAEA,UAAUC,EAA8B,CACtC,GAAI,KAAK,qBAAqBC,EAC5BD,EAAW,uBAAiD,EAC5D,KAAK,UAAU,UAAUA,CAAU,UAC1B,KAAK,qBAAqBE,EACnCF,EAAW,uBAAmD,EAC9D,KAAK,UAAU,UAAUA,CAAU,MAEnC,OAAM,IAAI,MAAM,wBAAwB,CAE5C,CAEA,OAAO,YAAYG,EAA0C,CAC3D,IAAMC,EAAQD,EAAa,wBAAwB,EACnD,OAAQC,EAAO,CACb,OACE,OAAO,IAAIP,EAAaI,EAAiB,KAAKE,CAAY,CAAC,EAC7D,OACE,OAAO,IAAIN,EAAaK,EAAmB,KAAKC,CAAY,CAAC,EAC/D,QACE,MAAM,IAAI,MAAM,2CAA2CC,CAAK,EAAE,CACtE,CACF,CACF","names":["AnySignature","_AnySignature","Signature","signature","serializer","Ed25519Signature","Secp256k1Signature","deserializer","index"]}
@@ -1,2 +0,0 @@
1
- import{a as l,c as h}from"./chunk-ZFIMVSCR.mjs";import{a as E,c as b}from"./chunk-V6JFR2CB.mjs";import{b as u}from"./chunk-NL72WE3E.mjs";var i=class i extends E{constructor(e){super();let{publicKeys:t,threshold:r}=e;if(t.length>i.MAX_KEYS||t.length<i.MIN_KEYS)throw new Error(`Must have between ${i.MIN_KEYS} and ${i.MAX_KEYS} public keys, inclusive`);if(r<i.MIN_THRESHOLD||r>t.length)throw new Error(`Threshold must be between ${i.MIN_THRESHOLD} and ${t.length}, inclusive`);this.publicKeys=t,this.threshold=r}toUint8Array(){let e=new Uint8Array(this.publicKeys.length*l.LENGTH+1);return this.publicKeys.forEach((t,r)=>{e.set(t.toUint8Array(),r*l.LENGTH)}),e[this.publicKeys.length*l.LENGTH]=this.threshold,e}toString(){return u.fromHexInput(this.toUint8Array()).toString()}verifySignature(e){throw new Error("TODO - Method not implemented.")}serialize(e){e.serializeBytes(this.toUint8Array())}static deserialize(e){let t=e.deserializeBytes(),r=t[t.length-1],o=[];for(let a=0;a<t.length-1;a+=l.LENGTH){let s=a;o.push(new l(t.subarray(s,s+l.LENGTH)))}return new i({publicKeys:o,threshold:r})}};i.MAX_KEYS=32,i.MIN_KEYS=2,i.MIN_THRESHOLD=1;var g=i,n=class n extends b{constructor(e){super();let{signatures:t,bitmap:r}=e;if(r.length!==n.BITMAP_LEN)throw new Error(`"bitmap" length should be ${n.BITMAP_LEN}`);if(t.length>n.MAX_SIGNATURES_SUPPORTED)throw new Error(`The number of signatures cannot be greater than ${n.MAX_SIGNATURES_SUPPORTED}`);this.signatures=t,this.bitmap=r}toUint8Array(){let e=new Uint8Array(this.signatures.length*h.LENGTH+n.BITMAP_LEN);return this.signatures.forEach((t,r)=>{e.set(t.toUint8Array(),r*h.LENGTH)}),e.set(this.bitmap,this.signatures.length*h.LENGTH),e}toString(){return u.fromHexInput(this.toUint8Array()).toString()}static createBitmap(e){let{bits:t}=e,r=128,o=new Uint8Array([0,0,0,0]),a=new Set;return t.forEach(s=>{if(s>=n.MAX_SIGNATURES_SUPPORTED)throw new Error(`Cannot have a signature larger than ${n.MAX_SIGNATURES_SUPPORTED-1}.`);if(a.has(s))throw new Error("Duplicate bits detected.");a.add(s);let c=Math.floor(s/8),y=o[c];y|=r>>s%8,o[c]=y}),o}serialize(e){e.serializeBytes(this.toUint8Array())}static deserialize(e){let t=e.deserializeBytes(),r=t.subarray(t.length-4),o=[];for(let a=0;a<t.length-r.length;a+=h.LENGTH){let s=a;o.push(new h(t.subarray(s,s+h.LENGTH)))}return new n({signatures:o,bitmap:r})}};n.MAX_SIGNATURES_SUPPORTED=32,n.BITMAP_LEN=4;var p=n;export{g as a,p as b};
2
- //# sourceMappingURL=chunk-7IGH7N52.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/core/crypto/multiEd25519.ts"],"sourcesContent":["// Copyright © Aptos Foundation\n// SPDX-License-Identifier: Apache-2.0\n\nimport { PublicKey, Signature } from \"./asymmetricCrypto\";\nimport { Deserializer } from \"../../bcs/deserializer\";\nimport { Serializer } from \"../../bcs/serializer\";\nimport { Ed25519PublicKey, Ed25519Signature } from \"./ed25519\";\nimport { Hex } from \"../hex\";\nimport { HexInput } from \"../../types\";\n\n/**\n * Represents the public key of a K-of-N Ed25519 multi-sig transaction.\n */\nexport class MultiEd25519PublicKey extends PublicKey {\n /**\n * Maximum number of public keys supported\n */\n static readonly MAX_KEYS = 32;\n\n /**\n * Minimum number of public keys needed\n */\n static readonly MIN_KEYS = 2;\n\n /**\n * Minimum threshold for the number of valid signatures required\n */\n static readonly MIN_THRESHOLD = 1;\n\n /**\n * List of Ed25519 public keys for this MultiEd25519PublicKey\n */\n public readonly publicKeys: Ed25519PublicKey[];\n\n /**\n * The minimum number of valid signatures required, for the number of public keys specified\n */\n public readonly threshold: number;\n\n /**\n * Public key for a K-of-N multi-sig transaction. A K-of-N multi-sig transaction means that for such a\n * transaction to be executed, at least K out of the N authorized signers have signed the transaction\n * and passed the check conducted by the chain.\n *\n * @see {@link\n * https://aptos.dev/integration/creating-a-signed-transaction/ | Creating a Signed Transaction}\n *\n * @param args.publicKeys A list of public keys\n * @param args.threshold At least \"threshold\" signatures must be valid\n */\n constructor(args: { publicKeys: Ed25519PublicKey[]; threshold: number }) {\n super();\n\n const { publicKeys, threshold } = args;\n\n // Validate number of public keys\n if (publicKeys.length > MultiEd25519PublicKey.MAX_KEYS || publicKeys.length < MultiEd25519PublicKey.MIN_KEYS) {\n throw new Error(\n `Must have between ${MultiEd25519PublicKey.MIN_KEYS} and ${MultiEd25519PublicKey.MAX_KEYS} public keys, inclusive`,\n );\n }\n\n // Validate threshold: must be between 1 and the number of public keys, inclusive\n if (threshold < MultiEd25519PublicKey.MIN_THRESHOLD || threshold > publicKeys.length) {\n throw new Error(\n `Threshold must be between ${MultiEd25519PublicKey.MIN_THRESHOLD} and ${publicKeys.length}, inclusive`,\n );\n }\n\n this.publicKeys = publicKeys;\n this.threshold = threshold;\n }\n\n /**\n * Converts a PublicKeys into Uint8Array (bytes) with: bytes = p1_bytes | ... | pn_bytes | threshold\n */\n toUint8Array(): Uint8Array {\n const bytes = new Uint8Array(this.publicKeys.length * Ed25519PublicKey.LENGTH + 1);\n this.publicKeys.forEach((k: Ed25519PublicKey, i: number) => {\n bytes.set(k.toUint8Array(), i * Ed25519PublicKey.LENGTH);\n });\n\n bytes[this.publicKeys.length * Ed25519PublicKey.LENGTH] = this.threshold;\n\n return bytes;\n }\n\n toString(): string {\n return Hex.fromHexInput(this.toUint8Array()).toString();\n }\n\n // eslint-disable-next-line class-methods-use-this, @typescript-eslint/no-unused-vars\n verifySignature(args: { message: HexInput; signature: MultiEd25519Signature }): boolean {\n throw new Error(\"TODO - Method not implemented.\");\n }\n\n serialize(serializer: Serializer): void {\n serializer.serializeBytes(this.toUint8Array());\n }\n\n static deserialize(deserializer: Deserializer): MultiEd25519PublicKey {\n const bytes = deserializer.deserializeBytes();\n const threshold = bytes[bytes.length - 1];\n\n const keys: Ed25519PublicKey[] = [];\n\n for (let i = 0; i < bytes.length - 1; i += Ed25519PublicKey.LENGTH) {\n const begin = i;\n keys.push(new Ed25519PublicKey(bytes.subarray(begin, begin + Ed25519PublicKey.LENGTH)));\n }\n return new MultiEd25519PublicKey({ publicKeys: keys, threshold });\n }\n}\n\n/**\n * Represents the signature of a K-of-N Ed25519 multi-sig transaction.\n */\nexport class MultiEd25519Signature extends Signature {\n /**\n * Maximum number of Ed25519 signatures supported\n */\n static MAX_SIGNATURES_SUPPORTED = 32;\n\n /**\n * Number of bytes in the bitmap representing who signed the transaction (32-bits)\n */\n static BITMAP_LEN: number = 4;\n\n /**\n * The list of underlying Ed25519 signatures\n */\n public readonly signatures: Ed25519Signature[];\n\n /**\n * 32-bit Bitmap representing who signed the transaction\n *\n * This is represented where each public key can be masked to determine whether the message was signed by that key.\n */\n public readonly bitmap: Uint8Array;\n\n /**\n * Signature for a K-of-N multi-sig transaction.\n *\n * @see {@link\n * https://aptos.dev/integration/creating-a-signed-transaction/#multisignature-transactions | Creating a Signed Transaction}\n *\n * @param args.signatures A list of signatures\n * @param args.bitmap 4 bytes, at most 32 signatures are supported. If Nth bit value is `1`, the Nth\n * signature should be provided in `signatures`. Bits are read from left to right\n */\n constructor(args: { signatures: Ed25519Signature[]; bitmap: Uint8Array }) {\n super();\n\n const { signatures, bitmap } = args;\n if (bitmap.length !== MultiEd25519Signature.BITMAP_LEN) {\n throw new Error(`\"bitmap\" length should be ${MultiEd25519Signature.BITMAP_LEN}`);\n }\n\n if (signatures.length > MultiEd25519Signature.MAX_SIGNATURES_SUPPORTED) {\n throw new Error(\n `The number of signatures cannot be greater than ${MultiEd25519Signature.MAX_SIGNATURES_SUPPORTED}`,\n );\n }\n\n this.signatures = signatures;\n this.bitmap = bitmap;\n }\n\n /**\n * Converts a MultiSignature into Uint8Array (bytes) with `bytes = s1_bytes | ... | sn_bytes | bitmap`\n */\n toUint8Array(): Uint8Array {\n const bytes = new Uint8Array(this.signatures.length * Ed25519Signature.LENGTH + MultiEd25519Signature.BITMAP_LEN);\n this.signatures.forEach((k: Ed25519Signature, i: number) => {\n bytes.set(k.toUint8Array(), i * Ed25519Signature.LENGTH);\n });\n\n bytes.set(this.bitmap, this.signatures.length * Ed25519Signature.LENGTH);\n\n return bytes;\n }\n\n toString(): string {\n return Hex.fromHexInput(this.toUint8Array()).toString();\n }\n\n /**\n * Helper method to create a bitmap out of the specified bit positions\n * @param args.bits The bitmap positions that should be set. A position starts at index 0.\n * Valid position should range between 0 and 31.\n * @example\n * Here's an example of valid `bits`\n * ```\n * [0, 2, 31]\n * ```\n * `[0, 2, 31]` means the 1st, 3rd and 32nd bits should be set in the bitmap.\n * The result bitmap should be 0b1010000000000000000000000000001\n *\n * @returns bitmap that is 32bit long\n */\n static createBitmap(args: { bits: number[] }): Uint8Array {\n const { bits } = args;\n // Bits are read from left to right. e.g. 0b10000000 represents the first bit is set in one byte.\n // The decimal value of 0b10000000 is 128.\n const firstBitInByte = 128;\n const bitmap = new Uint8Array([0, 0, 0, 0]);\n\n // Check if duplicates exist in bits\n const dupCheckSet = new Set();\n\n bits.forEach((bit: number) => {\n if (bit >= MultiEd25519Signature.MAX_SIGNATURES_SUPPORTED) {\n throw new Error(`Cannot have a signature larger than ${MultiEd25519Signature.MAX_SIGNATURES_SUPPORTED - 1}.`);\n }\n\n if (dupCheckSet.has(bit)) {\n throw new Error(\"Duplicate bits detected.\");\n }\n\n dupCheckSet.add(bit);\n\n const byteOffset = Math.floor(bit / 8);\n\n let byte = bitmap[byteOffset];\n\n // eslint-disable-next-line no-bitwise\n byte |= firstBitInByte >> bit % 8;\n\n bitmap[byteOffset] = byte;\n });\n\n return bitmap;\n }\n\n serialize(serializer: Serializer): void {\n serializer.serializeBytes(this.toUint8Array());\n }\n\n static deserialize(deserializer: Deserializer): MultiEd25519Signature {\n const bytes = deserializer.deserializeBytes();\n const bitmap = bytes.subarray(bytes.length - 4);\n\n const signatures: Ed25519Signature[] = [];\n\n for (let i = 0; i < bytes.length - bitmap.length; i += Ed25519Signature.LENGTH) {\n const begin = i;\n signatures.push(new Ed25519Signature(bytes.subarray(begin, begin + Ed25519Signature.LENGTH)));\n }\n return new MultiEd25519Signature({ signatures, bitmap });\n }\n}\n"],"mappings":"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","names":["_MultiEd25519PublicKey","PublicKey","args","publicKeys","threshold","bytes","Ed25519PublicKey","k","i","Hex","serializer","deserializer","keys","begin","MultiEd25519PublicKey","_MultiEd25519Signature","Signature","signatures","bitmap","Ed25519Signature","bits","firstBitInByte","dupCheckSet","bit","byteOffset","byte","MultiEd25519Signature"]}
@@ -1,2 +0,0 @@
1
- import{b as n}from"./chunk-HHJBCGAQ.mjs";import{a as t,b as r,c as o}from"./chunk-77SKA4HT.mjs";import s from"@aptos-labs/aptos-client";var i=class{constructor(e){this.network=e?.network??n,this.fullnode=e?.fullnode,this.faucet=e?.faucet,this.indexer=e?.indexer,this.client=e?.client??{provider:s},this.clientConfig=e?.clientConfig??{}}getRequestUrl(e){switch(e){case 0:if(this.fullnode!==void 0)return this.fullnode;if(this.network==="custom")throw new Error("Please provide a custom full node url");return r[this.network];case 2:if(this.faucet!==void 0)return this.faucet;if(this.network==="custom")throw new Error("Please provide a custom faucet url");return o[this.network];case 1:if(this.indexer!==void 0)return this.indexer;if(this.network==="custom")throw new Error("Please provide a custom indexer url");return t[this.network];default:throw Error(`apiType ${e} is not supported`)}}isIndexerRequest(e){return t[this.network]===e}isFullnodeRequest(e){return r[this.network]===e}isFaucetRequest(e){return o[this.network]===e}};export{i as a};
2
- //# sourceMappingURL=chunk-CCUD52OF.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/api/aptosConfig.ts"],"sourcesContent":["// Copyright © Aptos Foundation\n// SPDX-License-Identifier: Apache-2.0\n\nimport aptosClient from \"@aptos-labs/aptos-client\";\nimport { AptosSettings, ClientConfig, Client } from \"../types\";\nimport { NetworkToNodeAPI, NetworkToFaucetAPI, NetworkToIndexerAPI, Network } from \"../utils/apiEndpoints\";\nimport { AptosApiType, DEFAULT_NETWORK } from \"../utils/const\";\n\n/**\n * This class holds the config information for the SDK client instance.\n */\nexport class AptosConfig {\n /** The Network that this SDK is associated with. Defaults to DEVNET */\n readonly network: Network;\n\n /**\n * The client instance the SDK uses. Defaults to `@aptos-labs/aptos-client\n */\n readonly client: Client;\n\n /**\n * The optional hardcoded fullnode URL to send requests to instead of using the network\n */\n readonly fullnode?: string;\n\n /**\n * The optional hardcoded faucet URL to send requests to instead of using the network\n */\n readonly faucet?: string;\n\n /**\n * The optional hardcoded indexer URL to send requests to instead of using the network\n */\n readonly indexer?: string;\n\n readonly clientConfig?: ClientConfig;\n\n constructor(settings?: AptosSettings) {\n this.network = settings?.network ?? DEFAULT_NETWORK;\n this.fullnode = settings?.fullnode;\n this.faucet = settings?.faucet;\n this.indexer = settings?.indexer;\n this.client = settings?.client ?? { provider: aptosClient };\n this.clientConfig = settings?.clientConfig ?? {};\n }\n\n /**\n * Returns the URL endpoint to send the request to.\n * If a custom URL was provided in the config, that URL is returned.\n * If a custom URL was provided but not URL endpoints, an error is thrown.\n * Otherwise, the URL endpoint is derived from the network.\n *\n * @param apiType - The type of Aptos API to get the URL for.\n *\n * @internal\n */\n getRequestUrl(apiType: AptosApiType): string {\n switch (apiType) {\n case AptosApiType.FULLNODE:\n if (this.fullnode !== undefined) return this.fullnode;\n if (this.network === Network.CUSTOM) throw new Error(\"Please provide a custom full node url\");\n return NetworkToNodeAPI[this.network];\n case AptosApiType.FAUCET:\n if (this.faucet !== undefined) return this.faucet;\n if (this.network === Network.CUSTOM) throw new Error(\"Please provide a custom faucet url\");\n return NetworkToFaucetAPI[this.network];\n case AptosApiType.INDEXER:\n if (this.indexer !== undefined) return this.indexer;\n if (this.network === Network.CUSTOM) throw new Error(\"Please provide a custom indexer url\");\n return NetworkToIndexerAPI[this.network];\n default:\n throw Error(`apiType ${apiType} is not supported`);\n }\n }\n\n /**\n * Checks if the URL is a known indexer endpoint\n *\n * @internal\n * */\n isIndexerRequest(url: string): boolean {\n return NetworkToIndexerAPI[this.network] === url;\n }\n\n /**\n * Checks if the URL is a known fullnode endpoint\n *\n * @internal\n * */\n isFullnodeRequest(url: string): boolean {\n return NetworkToNodeAPI[this.network] === url;\n }\n\n /**\n * Checks if the URL is a known faucet endpoint\n *\n * @internal\n * */\n isFaucetRequest(url: string): boolean {\n return NetworkToFaucetAPI[this.network] === url;\n }\n}\n"],"mappings":"gGAGA,OAAOA,MAAiB,2BAQjB,IAAMC,EAAN,KAAkB,CA0BvB,YAAYC,EAA0B,CACpC,KAAK,QAAUA,GAAU,SAAWC,EACpC,KAAK,SAAWD,GAAU,SAC1B,KAAK,OAASA,GAAU,OACxB,KAAK,QAAUA,GAAU,QACzB,KAAK,OAASA,GAAU,QAAU,CAAE,SAAUE,CAAY,EAC1D,KAAK,aAAeF,GAAU,cAAgB,CAAC,CACjD,CAYA,cAAcG,EAA+B,CAC3C,OAAQA,EAAS,CACf,OACE,GAAI,KAAK,WAAa,OAAW,OAAO,KAAK,SAC7C,GAAI,KAAK,mBAA4B,MAAM,IAAI,MAAM,uCAAuC,EAC5F,OAAOC,EAAiB,KAAK,OAAO,EACtC,OACE,GAAI,KAAK,SAAW,OAAW,OAAO,KAAK,OAC3C,GAAI,KAAK,mBAA4B,MAAM,IAAI,MAAM,oCAAoC,EACzF,OAAOC,EAAmB,KAAK,OAAO,EACxC,OACE,GAAI,KAAK,UAAY,OAAW,OAAO,KAAK,QAC5C,GAAI,KAAK,mBAA4B,MAAM,IAAI,MAAM,qCAAqC,EAC1F,OAAOC,EAAoB,KAAK,OAAO,EACzC,QACE,MAAM,MAAM,WAAWH,CAAO,mBAAmB,CACrD,CACF,CAOA,iBAAiBI,EAAsB,CACrC,OAAOD,EAAoB,KAAK,OAAO,IAAMC,CAC/C,CAOA,kBAAkBA,EAAsB,CACtC,OAAOH,EAAiB,KAAK,OAAO,IAAMG,CAC5C,CAOA,gBAAgBA,EAAsB,CACpC,OAAOF,EAAmB,KAAK,OAAO,IAAME,CAC9C,CACF","names":["aptosClient","AptosConfig","settings","DEFAULT_NETWORK","aptosClient","apiType","NetworkToNodeAPI","NetworkToFaucetAPI","NetworkToIndexerAPI","url"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/internal/account.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/account}. By moving the methods out into a separate file,\n * other namespaces and processes can access these methods without depending on the entire\n * account namespace and without having a dependency cycle error.\n */\n\nimport { AptosConfig } from \"../api/aptosConfig\";\nimport { AptosApiError, getAptosFullNode, paginateWithCursor } from \"../client\";\nimport { AccountAddress, AccountAddressInput } from \"../core/accountAddress\";\nimport { Account } from \"../core/account\";\nimport { PrivateKey } from \"../core/crypto/asymmetricCrypto\";\nimport { getTableItem, queryIndexer } from \"./general\";\nimport {\n AccountData,\n GetAccountCoinsDataResponse,\n GetAccountCollectionsWithOwnedTokenResponse,\n GetAccountOwnedObjectsResponse,\n GetAccountOwnedTokensFromCollectionResponse,\n GetAccountOwnedTokensQueryResponse,\n LedgerVersionArg,\n MoveModuleBytecode,\n MoveResource,\n MoveStructId,\n OrderByArg,\n PaginationArgs,\n SigningScheme,\n TokenStandardArg,\n TransactionResponse,\n WhereArg,\n} from \"../types\";\nimport {\n GetAccountCoinsCountQuery,\n GetAccountCoinsDataQuery,\n GetAccountCollectionsWithOwnedTokensQuery,\n GetAccountOwnedObjectsQuery,\n GetAccountOwnedTokensFromCollectionQuery,\n GetAccountOwnedTokensQuery,\n GetAccountTokensCountQuery,\n GetAccountTransactionsCountQuery,\n} from \"../types/generated/operations\";\nimport {\n GetAccountCoinsCount,\n GetAccountCoinsData,\n GetAccountCollectionsWithOwnedTokens,\n GetAccountOwnedObjects,\n GetAccountOwnedTokens,\n GetAccountOwnedTokensFromCollection,\n GetAccountTokensCount,\n GetAccountTransactionsCount,\n} from \"../types/generated/queries\";\nimport { memoizeAsync } from \"../utils/memoize\";\nimport { Secp256k1PrivateKey, AuthenticationKey, Ed25519PrivateKey } from \"../core\";\nimport { AnyPublicKey } from \"../core/crypto/anyPublicKey\";\nimport { CurrentFungibleAssetBalancesBoolExp } from \"../types/generated/types\";\n\nexport async function getInfo(args: {\n aptosConfig: AptosConfig;\n accountAddress: AccountAddressInput;\n}): Promise<AccountData> {\n const { aptosConfig, accountAddress } = args;\n const { data } = await getAptosFullNode<{}, AccountData>({\n aptosConfig,\n originMethod: \"getInfo\",\n path: `accounts/${AccountAddress.from(accountAddress).toString()}`,\n });\n return data;\n}\n\nexport async function getModules(args: {\n aptosConfig: AptosConfig;\n accountAddress: AccountAddressInput;\n options?: PaginationArgs & LedgerVersionArg;\n}): Promise<MoveModuleBytecode[]> {\n const { aptosConfig, accountAddress, options } = args;\n return paginateWithCursor<{}, MoveModuleBytecode[]>({\n aptosConfig,\n originMethod: \"getModules\",\n path: `accounts/${AccountAddress.from(accountAddress).toString()}/modules`,\n params: {\n ledger_version: options?.ledgerVersion,\n start: options?.offset,\n limit: options?.limit ?? 1000,\n },\n });\n}\n\n/**\n * Queries for a move module given account address and module name\n *\n * @param args.accountAddress Hex-encoded 32 byte Aptos account address\n * @param args.moduleName The name of the module\n * @param args.query.ledgerVersion Specifies ledger version of transactions. By default, latest version will be used\n * @returns The move module.\n */\nexport async function getModule(args: {\n aptosConfig: AptosConfig;\n accountAddress: AccountAddressInput;\n moduleName: string;\n options?: LedgerVersionArg;\n}): Promise<MoveModuleBytecode> {\n // We don't memoize the account module by ledger version, as it's not a common use case, this would be handled\n // by the developer directly\n if (args.options?.ledgerVersion !== undefined) {\n return getModuleInner(args);\n }\n\n return memoizeAsync(\n async () => getModuleInner(args),\n `module-${args.accountAddress}-${args.moduleName}`,\n 1000 * 60 * 5, // 5 minutes\n )();\n}\n\nasync function getModuleInner(args: {\n aptosConfig: AptosConfig;\n accountAddress: AccountAddressInput;\n moduleName: string;\n options?: LedgerVersionArg;\n}): Promise<MoveModuleBytecode> {\n const { aptosConfig, accountAddress, moduleName, options } = args;\n\n const { data } = await getAptosFullNode<{}, MoveModuleBytecode>({\n aptosConfig,\n originMethod: \"getModule\",\n path: `accounts/${AccountAddress.from(accountAddress).toString()}/module/${moduleName}`,\n params: { ledger_version: options?.ledgerVersion },\n });\n return data;\n}\n\nexport async function getTransactions(args: {\n aptosConfig: AptosConfig;\n accountAddress: AccountAddressInput;\n options?: PaginationArgs;\n}): Promise<TransactionResponse[]> {\n const { aptosConfig, accountAddress, options } = args;\n return paginateWithCursor<{}, TransactionResponse[]>({\n aptosConfig,\n originMethod: \"getTransactions\",\n path: `accounts/${AccountAddress.from(accountAddress).toString()}/transactions`,\n params: { start: options?.offset, limit: options?.limit },\n });\n}\n\nexport async function getResources(args: {\n aptosConfig: AptosConfig;\n accountAddress: AccountAddressInput;\n options?: PaginationArgs & LedgerVersionArg;\n}): Promise<MoveResource[]> {\n const { aptosConfig, accountAddress, options } = args;\n return paginateWithCursor<{}, MoveResource[]>({\n aptosConfig,\n originMethod: \"getResources\",\n path: `accounts/${AccountAddress.from(accountAddress).toString()}/resources`,\n params: {\n ledger_version: options?.ledgerVersion,\n start: options?.offset,\n limit: options?.limit ?? 999,\n },\n });\n}\n\nexport async function getResource<T extends {}>(args: {\n aptosConfig: AptosConfig;\n accountAddress: AccountAddressInput;\n resourceType: MoveStructId;\n options?: LedgerVersionArg;\n}): Promise<T> {\n const { aptosConfig, accountAddress, resourceType, options } = args;\n const { data } = await getAptosFullNode<{}, MoveResource>({\n aptosConfig,\n originMethod: \"getResource\",\n path: `accounts/${AccountAddress.from(accountAddress).toString()}/resource/${resourceType}`,\n params: { ledger_version: options?.ledgerVersion },\n });\n return data.data as T;\n}\n\nexport async function lookupOriginalAccountAddress(args: {\n aptosConfig: AptosConfig;\n authenticationKey: AccountAddressInput;\n options?: LedgerVersionArg;\n}): Promise<AccountAddress> {\n const { aptosConfig, authenticationKey, options } = args;\n type OriginatingAddress = {\n address_map: { handle: string };\n };\n const resource = await getResource<OriginatingAddress>({\n aptosConfig,\n accountAddress: \"0x1\",\n resourceType: \"0x1::account::OriginatingAddress\",\n options,\n });\n\n const {\n address_map: { handle },\n } = resource;\n\n const authKeyAddress = AccountAddress.from(authenticationKey);\n\n // If the address is not found in the address map, which means its not rotated\n // then return the address as is\n try {\n const originalAddress = await getTableItem<string>({\n aptosConfig,\n handle,\n data: {\n key: authKeyAddress.toString(),\n key_type: \"address\",\n value_type: \"address\",\n },\n options,\n });\n\n return AccountAddress.from(originalAddress);\n } catch (err) {\n if (err instanceof AptosApiError && err.data.error_code === \"table_item_not_found\") {\n return authKeyAddress;\n }\n\n throw err;\n }\n}\n\nexport async function getAccountTokensCount(args: {\n aptosConfig: AptosConfig;\n accountAddress: AccountAddressInput;\n}): Promise<number> {\n const { aptosConfig, accountAddress } = args;\n\n const address = AccountAddress.from(accountAddress).toStringLong();\n\n const whereCondition: { owner_address: { _eq: string }; amount: { _gt: number } } = {\n owner_address: { _eq: address },\n amount: { _gt: 0 },\n };\n\n const graphqlQuery = {\n query: GetAccountTokensCount,\n variables: { where_condition: whereCondition },\n };\n\n const data = await queryIndexer<GetAccountTokensCountQuery>({\n aptosConfig,\n query: graphqlQuery,\n originMethod: \"getAccountTokensCount\",\n });\n\n // commonjs (aka cjs) doesnt handle Nullish Coalescing for some reason\n // might be because of how ts infer the graphql generated scheme type\n return data.current_token_ownerships_v2_aggregate.aggregate\n ? data.current_token_ownerships_v2_aggregate.aggregate.count\n : 0;\n}\n\nexport async function getAccountOwnedTokens(args: {\n aptosConfig: AptosConfig;\n accountAddress: AccountAddressInput;\n options?: TokenStandardArg & PaginationArgs & OrderByArg<GetAccountOwnedTokensQueryResponse[0]>;\n}): Promise<GetAccountOwnedTokensQueryResponse> {\n const { aptosConfig, accountAddress, options } = args;\n const address = AccountAddress.from(accountAddress).toStringLong();\n\n const whereCondition: { owner_address: { _eq: string }; amount: { _gt: number }; token_standard?: { _eq: string } } =\n {\n owner_address: { _eq: address },\n amount: { _gt: 0 },\n };\n\n if (options?.tokenStandard) {\n whereCondition.token_standard = { _eq: options?.tokenStandard };\n }\n\n const graphqlQuery = {\n query: GetAccountOwnedTokens,\n variables: {\n where_condition: whereCondition,\n offset: options?.offset,\n limit: options?.limit,\n order_by: options?.orderBy,\n },\n };\n\n const data = await queryIndexer<GetAccountOwnedTokensQuery>({\n aptosConfig,\n query: graphqlQuery,\n originMethod: \"getAccountOwnedTokens\",\n });\n\n return data.current_token_ownerships_v2;\n}\n\nexport async function getAccountOwnedTokensFromCollectionAddress(args: {\n aptosConfig: AptosConfig;\n accountAddress: AccountAddressInput;\n collectionAddress: AccountAddressInput;\n options?: TokenStandardArg & PaginationArgs & OrderByArg<GetAccountOwnedTokensFromCollectionResponse[0]>;\n}): Promise<GetAccountOwnedTokensFromCollectionResponse> {\n const { aptosConfig, accountAddress, collectionAddress, options } = args;\n const ownerAddress = AccountAddress.from(accountAddress).toStringLong();\n const collAddress = AccountAddress.from(collectionAddress).toStringLong();\n\n const whereCondition: {\n owner_address: { _eq: string };\n current_token_data: { collection_id: { _eq: string } };\n amount: { _gt: number };\n token_standard?: { _eq: string };\n } = {\n owner_address: { _eq: ownerAddress },\n current_token_data: { collection_id: { _eq: collAddress } },\n amount: { _gt: 0 },\n };\n\n if (options?.tokenStandard) {\n whereCondition.token_standard = { _eq: options?.tokenStandard };\n }\n\n const graphqlQuery = {\n query: GetAccountOwnedTokensFromCollection,\n variables: {\n where_condition: whereCondition,\n offset: options?.offset,\n limit: options?.limit,\n order_by: options?.orderBy,\n },\n };\n\n const data = await queryIndexer<GetAccountOwnedTokensFromCollectionQuery>({\n aptosConfig,\n query: graphqlQuery,\n originMethod: \"getAccountOwnedTokensFromCollectionAddress\",\n });\n\n return data.current_token_ownerships_v2;\n}\n\nexport async function getAccountCollectionsWithOwnedTokens(args: {\n aptosConfig: AptosConfig;\n accountAddress: AccountAddressInput;\n options?: TokenStandardArg & PaginationArgs & OrderByArg<GetAccountCollectionsWithOwnedTokenResponse[0]>;\n}): Promise<GetAccountCollectionsWithOwnedTokenResponse> {\n const { aptosConfig, accountAddress, options } = args;\n const address = AccountAddress.from(accountAddress).toStringLong();\n\n const whereCondition: {\n owner_address: { _eq: string };\n amount: { _gt: number };\n current_collection?: { token_standard: { _eq: string } };\n } = {\n owner_address: { _eq: address },\n amount: { _gt: 0 },\n };\n\n if (options?.tokenStandard) {\n whereCondition.current_collection = {\n token_standard: { _eq: options?.tokenStandard },\n };\n }\n\n const graphqlQuery = {\n query: GetAccountCollectionsWithOwnedTokens,\n variables: {\n where_condition: whereCondition,\n offset: options?.offset,\n limit: options?.limit,\n order_by: options?.orderBy,\n },\n };\n\n const data = await queryIndexer<GetAccountCollectionsWithOwnedTokensQuery>({\n aptosConfig,\n query: graphqlQuery,\n originMethod: \"getAccountCollectionsWithOwnedTokens\",\n });\n\n return data.current_collection_ownership_v2_view;\n}\n\nexport async function getAccountTransactionsCount(args: {\n aptosConfig: AptosConfig;\n accountAddress: AccountAddressInput;\n}): Promise<number> {\n const { aptosConfig, accountAddress } = args;\n\n const address = AccountAddress.from(accountAddress).toStringLong();\n\n const graphqlQuery = {\n query: GetAccountTransactionsCount,\n variables: { address },\n };\n\n const data = await queryIndexer<GetAccountTransactionsCountQuery>({\n aptosConfig,\n query: graphqlQuery,\n originMethod: \"getAccountTransactionsCount\",\n });\n\n // commonjs (aka cjs) doesnt handle Nullish Coalescing for some reason\n // might be because of how ts infer the graphql generated scheme type\n return data.account_transactions_aggregate.aggregate ? data.account_transactions_aggregate.aggregate.count : 0;\n}\n\nexport async function getAccountCoinAmount(args: {\n aptosConfig: AptosConfig;\n accountAddress: AccountAddressInput;\n coinType: MoveStructId;\n}): Promise<number> {\n const { aptosConfig, accountAddress, coinType } = args;\n const address = AccountAddress.from(accountAddress).toStringLong();\n\n const data = await getAccountCoinsData({\n aptosConfig,\n accountAddress: address,\n options: {\n where: { asset_type: { _eq: coinType } },\n },\n });\n\n // commonjs (aka cjs) doesnt handle Nullish Coalescing for some reason\n // might be because of how ts infer the graphql generated scheme type\n return data[0] ? data[0].amount : 0;\n}\n\nexport async function getAccountCoinsData(args: {\n aptosConfig: AptosConfig;\n accountAddress: AccountAddressInput;\n options?: PaginationArgs & OrderByArg<GetAccountCoinsDataResponse[0]> & WhereArg<CurrentFungibleAssetBalancesBoolExp>;\n}): Promise<GetAccountCoinsDataResponse> {\n const { aptosConfig, accountAddress, options } = args;\n const address = AccountAddress.from(accountAddress).toStringLong();\n\n const whereCondition: { owner_address: { _eq: string } } = {\n ...options?.where,\n owner_address: { _eq: address },\n };\n\n const graphqlQuery = {\n query: GetAccountCoinsData,\n variables: {\n where_condition: whereCondition,\n offset: options?.offset,\n limit: options?.limit,\n order_by: options?.orderBy,\n },\n };\n\n const data = await queryIndexer<GetAccountCoinsDataQuery>({\n aptosConfig,\n query: graphqlQuery,\n originMethod: \"getAccountCoinsData\",\n });\n\n return data.current_fungible_asset_balances;\n}\n\nexport async function getAccountCoinsCount(args: {\n aptosConfig: AptosConfig;\n accountAddress: AccountAddressInput;\n}): Promise<number> {\n const { aptosConfig, accountAddress } = args;\n const address = AccountAddress.from(accountAddress).toStringLong();\n\n const graphqlQuery = {\n query: GetAccountCoinsCount,\n variables: { address },\n };\n\n const data = await queryIndexer<GetAccountCoinsCountQuery>({\n aptosConfig,\n query: graphqlQuery,\n originMethod: \"getAccountCoinsCount\",\n });\n\n if (!data.current_fungible_asset_balances_aggregate.aggregate) {\n throw Error(\"Failed to get the count of account coins\");\n }\n\n return data.current_fungible_asset_balances_aggregate.aggregate.count;\n}\n\nexport async function getAccountOwnedObjects(args: {\n aptosConfig: AptosConfig;\n accountAddress: AccountAddressInput;\n options?: PaginationArgs & OrderByArg<GetAccountOwnedObjectsResponse[0]>;\n}): Promise<GetAccountOwnedObjectsResponse> {\n const { aptosConfig, accountAddress, options } = args;\n const address = AccountAddress.from(accountAddress).toStringLong();\n\n const whereCondition: { owner_address: { _eq: string } } = {\n owner_address: { _eq: address },\n };\n const graphqlQuery = {\n query: GetAccountOwnedObjects,\n variables: {\n where_condition: whereCondition,\n offset: options?.offset,\n limit: options?.limit,\n order_by: options?.orderBy,\n },\n };\n const data = await queryIndexer<GetAccountOwnedObjectsQuery>({\n aptosConfig,\n query: graphqlQuery,\n originMethod: \"getAccountOwnedObjects\",\n });\n\n return data.current_objects;\n}\n\n/**\n * NOTE: There is a potential issue once unified single signer scheme will be adopted\n * by the community.\n *\n * Becuase on could create 2 accounts with the same private key with this new authenticator type,\n * we’ll need to determine the order in which we lookup the accounts. First unified\n * scheme and then legacy scheme vs first legacy scheme and then unified scheme.\n *\n */\nexport async function deriveAccountFromPrivateKey(args: {\n aptosConfig: AptosConfig;\n privateKey: PrivateKey;\n}): Promise<Account> {\n const { aptosConfig, privateKey } = args;\n const publicKey = new AnyPublicKey(privateKey.publicKey());\n\n if (privateKey instanceof Secp256k1PrivateKey) {\n // private key is secp256k1, therefore we know it for sure uses a single signer key\n const authKey = AuthenticationKey.fromPublicKeyAndScheme({ publicKey, scheme: SigningScheme.SingleKey });\n const address = authKey.derivedAddress();\n return Account.fromPrivateKeyAndAddress({ privateKey, address });\n }\n\n if (privateKey instanceof Ed25519PrivateKey) {\n // lookup single sender ed25519\n const singleSenderTransactionAuthenticatorAuthKey = AuthenticationKey.fromPublicKeyAndScheme({\n publicKey,\n scheme: SigningScheme.SingleKey,\n });\n const isSingleSenderTransactionAuthenticator = await isAccountExist({\n authKey: singleSenderTransactionAuthenticatorAuthKey,\n aptosConfig,\n });\n if (isSingleSenderTransactionAuthenticator) {\n const address = singleSenderTransactionAuthenticatorAuthKey.derivedAddress();\n return Account.fromPrivateKeyAndAddress({ privateKey, address, legacy: false });\n }\n // lookup legacy ed25519\n const legacyAuthKey = AuthenticationKey.fromPublicKeyAndScheme({ publicKey, scheme: SigningScheme.Ed25519 });\n const isLegacyEd25519 = await isAccountExist({ authKey: legacyAuthKey, aptosConfig });\n if (isLegacyEd25519) {\n const address = legacyAuthKey.derivedAddress();\n return Account.fromPrivateKeyAndAddress({ privateKey, address, legacy: true });\n }\n }\n // if we are here, it means we couldn't find an address with an\n // auth key that matches the provided private key\n throw new Error(`Can't derive account from private key ${privateKey}`);\n}\n\nexport async function isAccountExist(args: { aptosConfig: AptosConfig; authKey: AuthenticationKey }): Promise<boolean> {\n const { aptosConfig, authKey } = args;\n const accountAddress = await lookupOriginalAccountAddress({\n aptosConfig,\n authenticationKey: authKey.derivedAddress(),\n });\n\n try {\n await getInfo({\n aptosConfig,\n accountAddress,\n });\n return true;\n } catch (error: any) {\n // account not found\n if (error.status === 404) {\n return false;\n }\n throw new Error(`Error while looking for an account info ${accountAddress.toString()}`);\n }\n}\n"],"mappings":"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","names":["getInfo","args","aptosConfig","accountAddress","data","getAptosFullNode","AccountAddress","getModules","options","paginateWithCursor","getModule","getModuleInner","memoizeAsync","moduleName","getTransactions","getResources","getResource","resourceType","lookupOriginalAccountAddress","authenticationKey","resource","handle","authKeyAddress","originalAddress","getTableItem","err","AptosApiError","getAccountTokensCount","whereCondition","queryIndexer","GetAccountTokensCount","getAccountOwnedTokens","graphqlQuery","GetAccountOwnedTokens","getAccountOwnedTokensFromCollectionAddress","collectionAddress","ownerAddress","collAddress","GetAccountOwnedTokensFromCollection","getAccountCollectionsWithOwnedTokens","GetAccountCollectionsWithOwnedTokens","getAccountTransactionsCount","address","GetAccountTransactionsCount","getAccountCoinAmount","coinType","getAccountCoinsData","GetAccountCoinsData","getAccountCoinsCount","GetAccountCoinsCount","getAccountOwnedObjects","GetAccountOwnedObjects","deriveAccountFromPrivateKey","privateKey","publicKey","AnyPublicKey","Secp256k1PrivateKey","AuthenticationKey","Account","Ed25519PrivateKey","singleSenderTransactionAuthenticatorAuthKey","isAccountExist","legacyAuthKey","authKey","error"]}
@@ -1,2 +0,0 @@
1
- import{a as o}from"./chunk-2QV6HI3M.mjs";import{a as p,b as g}from"./chunk-7IGH7N52.mjs";import{a as A}from"./chunk-UCHGKGCF.mjs";import{a as h}from"./chunk-FBFMQZTM.mjs";import{a as d,c as b}from"./chunk-ZFIMVSCR.mjs";import{a as y}from"./chunk-N4RBQZ2B.mjs";var n=class extends y{static deserialize(t){let i=t.deserializeUleb128AsU32();switch(i){case 0:return a.load(t);case 1:return u.load(t);case 2:return l.load(t);case 3:return c.load(t);default:throw new Error(`Unknown variant index for AccountAuthenticator: ${i}`)}}isEd25519(){return this instanceof a}isMultiEd25519(){return this instanceof u}isSingleKey(){return this instanceof l}isMultiKey(){return this instanceof c}},a=class s extends n{constructor(i,e){super();this.public_key=i,this.signature=e}serialize(i){i.serializeU32AsUleb128(0),this.public_key.serialize(i),this.signature.serialize(i)}static load(i){let e=d.deserialize(i),r=b.deserialize(i);return new s(e,r)}},u=class s extends n{constructor(i,e){super();this.public_key=i,this.signature=e}serialize(i){i.serializeU32AsUleb128(1),this.public_key.serialize(i),this.signature.serialize(i)}static load(i){let e=p.deserialize(i),r=g.deserialize(i);return new s(e,r)}},l=class s extends n{constructor(i,e){super();this.public_key=i,this.signature=e}serialize(i){i.serializeU32AsUleb128(2),this.public_key.serialize(i),this.signature.serialize(i)}static load(i){let e=h.deserialize(i),r=o.deserialize(i);return new s(e,r)}},c=class s extends n{constructor(i,e,r){super();this.public_keys=i,this.signatures=e,this.signatures_bitmap=r}serialize(i){i.serializeU32AsUleb128(3),this.public_keys.serialize(i),i.serializeVector(this.signatures),i.serializeBytes(this.signatures_bitmap)}static load(i){let e=A.deserialize(i),r=i.deserializeVector(o),z=i.deserializeBytes();return new s(e,r,z)}};export{n as a,a as b,u as c,l as d,c as e};
2
- //# sourceMappingURL=chunk-ERWQOVBF.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/transactions/authenticator/account.ts"],"sourcesContent":["// Copyright © Aptos Foundation\n// SPDX-License-Identifier: Apache-2.0\n\n/* eslint-disable @typescript-eslint/naming-convention */\n\nimport { Serializer, Deserializer, Serializable } from \"../../bcs\";\nimport { AnyPublicKey } from \"../../core/crypto/anyPublicKey\";\nimport { AnySignature } from \"../../core/crypto/anySignature\";\nimport { Ed25519PublicKey, Ed25519Signature } from \"../../core/crypto/ed25519\";\nimport { MultiEd25519PublicKey, MultiEd25519Signature } from \"../../core/crypto/multiEd25519\";\nimport { MultiKey } from \"../../core/crypto/multiKey\";\nimport { AccountAuthenticatorVariant } from \"../../types\";\n\nexport abstract class AccountAuthenticator extends Serializable {\n abstract serialize(serializer: Serializer): void;\n\n static deserialize(deserializer: Deserializer): AccountAuthenticator {\n const index = deserializer.deserializeUleb128AsU32();\n switch (index) {\n case AccountAuthenticatorVariant.Ed25519:\n return AccountAuthenticatorEd25519.load(deserializer);\n case AccountAuthenticatorVariant.MultiEd25519:\n return AccountAuthenticatorMultiEd25519.load(deserializer);\n case AccountAuthenticatorVariant.SingleKey:\n return AccountAuthenticatorSingleKey.load(deserializer);\n case AccountAuthenticatorVariant.MultiKey:\n return AccountAuthenticatorMultiKey.load(deserializer);\n default:\n throw new Error(`Unknown variant index for AccountAuthenticator: ${index}`);\n }\n }\n\n isEd25519(): this is AccountAuthenticatorEd25519 {\n return this instanceof AccountAuthenticatorEd25519;\n }\n\n isMultiEd25519(): this is AccountAuthenticatorMultiEd25519 {\n return this instanceof AccountAuthenticatorMultiEd25519;\n }\n\n isSingleKey(): this is AccountAuthenticatorSingleKey {\n return this instanceof AccountAuthenticatorSingleKey;\n }\n\n isMultiKey(): this is AccountAuthenticatorMultiKey {\n return this instanceof AccountAuthenticatorMultiKey;\n }\n}\n\n/**\n * Transaction authenticator Ed25519 for a multi signer transaction\n *\n * @param public_key Account's Ed25519 public key.\n * @param signature Account's Ed25519 signature\n *\n */\nexport class AccountAuthenticatorEd25519 extends AccountAuthenticator {\n public readonly public_key: Ed25519PublicKey;\n\n public readonly signature: Ed25519Signature;\n\n constructor(public_key: Ed25519PublicKey, signature: Ed25519Signature) {\n super();\n this.public_key = public_key;\n this.signature = signature;\n }\n\n serialize(serializer: Serializer): void {\n serializer.serializeU32AsUleb128(AccountAuthenticatorVariant.Ed25519);\n this.public_key.serialize(serializer);\n this.signature.serialize(serializer);\n }\n\n static load(deserializer: Deserializer): AccountAuthenticatorEd25519 {\n const public_key = Ed25519PublicKey.deserialize(deserializer);\n const signature = Ed25519Signature.deserialize(deserializer);\n return new AccountAuthenticatorEd25519(public_key, signature);\n }\n}\n\n/**\n * Transaction authenticator Multi Ed25519 for a multi signers transaction\n *\n * @param public_key Account's MultiEd25519 public key.\n * @param signature Account's MultiEd25519 signature\n *\n */\nexport class AccountAuthenticatorMultiEd25519 extends AccountAuthenticator {\n public readonly public_key: MultiEd25519PublicKey;\n\n public readonly signature: MultiEd25519Signature;\n\n constructor(public_key: MultiEd25519PublicKey, signature: MultiEd25519Signature) {\n super();\n this.public_key = public_key;\n this.signature = signature;\n }\n\n serialize(serializer: Serializer): void {\n serializer.serializeU32AsUleb128(AccountAuthenticatorVariant.MultiEd25519);\n this.public_key.serialize(serializer);\n this.signature.serialize(serializer);\n }\n\n static load(deserializer: Deserializer): AccountAuthenticatorMultiEd25519 {\n const public_key = MultiEd25519PublicKey.deserialize(deserializer);\n const signature = MultiEd25519Signature.deserialize(deserializer);\n return new AccountAuthenticatorMultiEd25519(public_key, signature);\n }\n}\n\n/**\n * AccountAuthenticatorSingleKey for a single signer\n *\n * @param public_key AnyPublicKey\n * @param signature AnySignature\n *\n */\nexport class AccountAuthenticatorSingleKey extends AccountAuthenticator {\n public readonly public_key: AnyPublicKey;\n\n public readonly signature: AnySignature;\n\n constructor(public_key: AnyPublicKey, signature: AnySignature) {\n super();\n this.public_key = public_key;\n this.signature = signature;\n }\n\n serialize(serializer: Serializer): void {\n serializer.serializeU32AsUleb128(AccountAuthenticatorVariant.SingleKey);\n this.public_key.serialize(serializer);\n this.signature.serialize(serializer);\n }\n\n static load(deserializer: Deserializer): AccountAuthenticatorSingleKey {\n const public_key = AnyPublicKey.deserialize(deserializer);\n const signature = AnySignature.deserialize(deserializer);\n return new AccountAuthenticatorSingleKey(public_key, signature);\n }\n}\n\n/**\n * AccountAuthenticatorMultiKey for a multi signer\n *\n * @param public_keys MultiKey\n * @param signatures Signature\n *\n */\nexport class AccountAuthenticatorMultiKey extends AccountAuthenticator {\n public readonly public_keys: MultiKey;\n\n public readonly signatures: Array<AnySignature>;\n\n public readonly signatures_bitmap: Uint8Array;\n\n constructor(public_keys: MultiKey, signatures: Array<AnySignature>, signatures_bitmap: Uint8Array) {\n super();\n this.public_keys = public_keys;\n this.signatures = signatures;\n this.signatures_bitmap = signatures_bitmap;\n }\n\n serialize(serializer: Serializer): void {\n serializer.serializeU32AsUleb128(AccountAuthenticatorVariant.MultiKey);\n this.public_keys.serialize(serializer);\n serializer.serializeVector<AnySignature>(this.signatures);\n serializer.serializeBytes(this.signatures_bitmap);\n }\n\n static load(deserializer: Deserializer): AccountAuthenticatorMultiKey {\n const public_keys = MultiKey.deserialize(deserializer);\n const signatures = deserializer.deserializeVector(AnySignature);\n const signatures_bitmap = deserializer.deserializeBytes();\n return new AccountAuthenticatorMultiKey(public_keys, signatures, signatures_bitmap);\n }\n}\n"],"mappings":"oQAaO,IAAeA,EAAf,cAA4CC,CAAa,CAG9D,OAAO,YAAYC,EAAkD,CACnE,IAAMC,EAAQD,EAAa,wBAAwB,EACnD,OAAQC,EAAO,CACb,OACE,OAAOC,EAA4B,KAAKF,CAAY,EACtD,OACE,OAAOG,EAAiC,KAAKH,CAAY,EAC3D,OACE,OAAOI,EAA8B,KAAKJ,CAAY,EACxD,OACE,OAAOK,EAA6B,KAAKL,CAAY,EACvD,QACE,MAAM,IAAI,MAAM,mDAAmDC,CAAK,EAAE,CAC9E,CACF,CAEA,WAAiD,CAC/C,OAAO,gBAAgBC,CACzB,CAEA,gBAA2D,CACzD,OAAO,gBAAgBC,CACzB,CAEA,aAAqD,CACnD,OAAO,gBAAgBC,CACzB,CAEA,YAAmD,CACjD,OAAO,gBAAgBC,CACzB,CACF,EASaH,EAAN,MAAMI,UAAoCR,CAAqB,CAKpE,YAAYS,EAA8BC,EAA6B,CACrE,MAAM,EACN,KAAK,WAAaD,EAClB,KAAK,UAAYC,CACnB,CAEA,UAAUC,EAA8B,CACtCA,EAAW,uBAAyD,EACpE,KAAK,WAAW,UAAUA,CAAU,EACpC,KAAK,UAAU,UAAUA,CAAU,CACrC,CAEA,OAAO,KAAKT,EAAyD,CACnE,IAAMO,EAAaG,EAAiB,YAAYV,CAAY,EACtDQ,EAAYG,EAAiB,YAAYX,CAAY,EAC3D,OAAO,IAAIM,EAA4BC,EAAYC,CAAS,CAC9D,CACF,EASaL,EAAN,MAAMS,UAAyCd,CAAqB,CAKzE,YAAYS,EAAmCC,EAAkC,CAC/E,MAAM,EACN,KAAK,WAAaD,EAClB,KAAK,UAAYC,CACnB,CAEA,UAAUC,EAA8B,CACtCA,EAAW,uBAA8D,EACzE,KAAK,WAAW,UAAUA,CAAU,EACpC,KAAK,UAAU,UAAUA,CAAU,CACrC,CAEA,OAAO,KAAKT,EAA8D,CACxE,IAAMO,EAAaM,EAAsB,YAAYb,CAAY,EAC3DQ,EAAYM,EAAsB,YAAYd,CAAY,EAChE,OAAO,IAAIY,EAAiCL,EAAYC,CAAS,CACnE,CACF,EASaJ,EAAN,MAAMW,UAAsCjB,CAAqB,CAKtE,YAAYS,EAA0BC,EAAyB,CAC7D,MAAM,EACN,KAAK,WAAaD,EAClB,KAAK,UAAYC,CACnB,CAEA,UAAUC,EAA8B,CACtCA,EAAW,uBAA2D,EACtE,KAAK,WAAW,UAAUA,CAAU,EACpC,KAAK,UAAU,UAAUA,CAAU,CACrC,CAEA,OAAO,KAAKT,EAA2D,CACrE,IAAMO,EAAaS,EAAa,YAAYhB,CAAY,EAClDQ,EAAYS,EAAa,YAAYjB,CAAY,EACvD,OAAO,IAAIe,EAA8BR,EAAYC,CAAS,CAChE,CACF,EASaH,EAAN,MAAMa,UAAqCpB,CAAqB,CAOrE,YAAYqB,EAAuBC,EAAiCC,EAA+B,CACjG,MAAM,EACN,KAAK,YAAcF,EACnB,KAAK,WAAaC,EAClB,KAAK,kBAAoBC,CAC3B,CAEA,UAAUZ,EAA8B,CACtCA,EAAW,uBAA0D,EACrE,KAAK,YAAY,UAAUA,CAAU,EACrCA,EAAW,gBAA8B,KAAK,UAAU,EACxDA,EAAW,eAAe,KAAK,iBAAiB,CAClD,CAEA,OAAO,KAAKT,EAA0D,CACpE,IAAMmB,EAAcG,EAAS,YAAYtB,CAAY,EAC/CoB,EAAapB,EAAa,kBAAkBiB,CAAY,EACxDI,EAAoBrB,EAAa,iBAAiB,EACxD,OAAO,IAAIkB,EAA6BC,EAAaC,EAAYC,CAAiB,CACpF,CACF","names":["AccountAuthenticator","Serializable","deserializer","index","AccountAuthenticatorEd25519","AccountAuthenticatorMultiEd25519","AccountAuthenticatorSingleKey","AccountAuthenticatorMultiKey","_AccountAuthenticatorEd25519","public_key","signature","serializer","Ed25519PublicKey","Ed25519Signature","_AccountAuthenticatorMultiEd25519","MultiEd25519PublicKey","MultiEd25519Signature","_AccountAuthenticatorSingleKey","AnyPublicKey","AnySignature","_AccountAuthenticatorMultiKey","public_keys","signatures","signatures_bitmap","MultiKey"]}
@@ -1,2 +0,0 @@
1
- import{a as r}from"./chunk-ZFIMVSCR.mjs";import{a as t}from"./chunk-I7WRJY7K.mjs";import{a as s}from"./chunk-V6JFR2CB.mjs";var c=class n extends s{constructor(e){super();this.publicKey=e}toUint8Array(){return this.publicKey.toUint8Array()}toString(){return this.publicKey.toString()}verifySignature(e){let{message:i,signature:u}=e;return this.publicKey.verifySignature({message:i,signature:u})}serialize(e){if(this.publicKey instanceof r)e.serializeU32AsUleb128(0),this.publicKey.serialize(e);else if(this.publicKey instanceof t)e.serializeU32AsUleb128(1),this.publicKey.serialize(e);else throw new Error("Unknown public key type")}static deserialize(e){let i=e.deserializeUleb128AsU32();switch(i){case 0:return new n(r.load(e));case 1:return new n(t.load(e));default:throw new Error(`Unknown variant index for AnyPublicKey: ${i}`)}}static isPublicKey(e){return e instanceof n}isEd25519(){return this.publicKey instanceof r}isSecp256k1PublicKey(){return this.publicKey instanceof t}};export{c as a};
2
- //# sourceMappingURL=chunk-FBFMQZTM.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/core/crypto/anyPublicKey.ts"],"sourcesContent":["import { Serializer, Deserializer } from \"../../bcs\";\nimport { AnyPublicKeyVariant, HexInput } from \"../../types\";\nimport { AnySignature } from \"./anySignature\";\nimport { PublicKey } from \"./asymmetricCrypto\";\nimport { Ed25519PublicKey } from \"./ed25519\";\nimport { Secp256k1PublicKey } from \"./secp256k1\";\n\n/**\n * Represents any public key supported by Aptos.\n *\n * Since [AIP-55](https://github.com/aptos-foundation/AIPs/pull/263) Aptos supports\n * `Legacy` and `Unified` authentication keys.\n *\n * Any unified authentication key is represented in the SDK as `AnyPublicKey`.\n */\nexport class AnyPublicKey extends PublicKey {\n /**\n * Reference to the inner public key\n */\n public readonly publicKey: PublicKey;\n\n constructor(publicKey: PublicKey) {\n super();\n this.publicKey = publicKey;\n }\n\n /**\n * Get the public key in bytes (Uint8Array).\n *\n * @returns Uint8Array representation of the public key\n */\n toUint8Array(): Uint8Array {\n return this.publicKey.toUint8Array();\n }\n\n /**\n * Get the public key as a hex string with the 0x prefix.\n *\n * @returns string representation of the public key\n */\n toString(): string {\n return this.publicKey.toString();\n }\n\n /**\n * Verifies a signed data with a public key\n *\n * @param args.message message\n * @param args.signature The signature\n * @returns true if the signature is valid\n */\n verifySignature(args: { message: HexInput; signature: AnySignature }): boolean {\n const { message, signature } = args;\n return this.publicKey.verifySignature({ message, signature });\n }\n\n serialize(serializer: Serializer): void {\n if (this.publicKey instanceof Ed25519PublicKey) {\n serializer.serializeU32AsUleb128(AnyPublicKeyVariant.Ed25519);\n this.publicKey.serialize(serializer);\n } else if (this.publicKey instanceof Secp256k1PublicKey) {\n serializer.serializeU32AsUleb128(AnyPublicKeyVariant.Secp256k1);\n this.publicKey.serialize(serializer);\n } else {\n throw new Error(\"Unknown public key type\");\n }\n }\n\n static deserialize(deserializer: Deserializer): AnyPublicKey {\n const index = deserializer.deserializeUleb128AsU32();\n switch (index) {\n case AnyPublicKeyVariant.Ed25519:\n return new AnyPublicKey(Ed25519PublicKey.load(deserializer));\n case AnyPublicKeyVariant.Secp256k1:\n return new AnyPublicKey(Secp256k1PublicKey.load(deserializer));\n default:\n throw new Error(`Unknown variant index for AnyPublicKey: ${index}`);\n }\n }\n\n static isPublicKey(publicKey: PublicKey): publicKey is AnyPublicKey {\n return publicKey instanceof AnyPublicKey;\n }\n\n isEd25519(): this is Ed25519PublicKey {\n return this.publicKey instanceof Ed25519PublicKey;\n }\n\n isSecp256k1PublicKey(): this is Secp256k1PublicKey {\n return this.publicKey instanceof Secp256k1PublicKey;\n }\n}\n"],"mappings":"2HAeO,IAAMA,EAAN,MAAMC,UAAqBC,CAAU,CAM1C,YAAYC,EAAsB,CAChC,MAAM,EACN,KAAK,UAAYA,CACnB,CAOA,cAA2B,CACzB,OAAO,KAAK,UAAU,aAAa,CACrC,CAOA,UAAmB,CACjB,OAAO,KAAK,UAAU,SAAS,CACjC,CASA,gBAAgBC,EAA+D,CAC7E,GAAM,CAAE,QAAAC,EAAS,UAAAC,CAAU,EAAIF,EAC/B,OAAO,KAAK,UAAU,gBAAgB,CAAE,QAAAC,EAAS,UAAAC,CAAU,CAAC,CAC9D,CAEA,UAAUC,EAA8B,CACtC,GAAI,KAAK,qBAAqBC,EAC5BD,EAAW,uBAAiD,EAC5D,KAAK,UAAU,UAAUA,CAAU,UAC1B,KAAK,qBAAqBE,EACnCF,EAAW,uBAAmD,EAC9D,KAAK,UAAU,UAAUA,CAAU,MAEnC,OAAM,IAAI,MAAM,yBAAyB,CAE7C,CAEA,OAAO,YAAYG,EAA0C,CAC3D,IAAMC,EAAQD,EAAa,wBAAwB,EACnD,OAAQC,EAAO,CACb,OACE,OAAO,IAAIV,EAAaO,EAAiB,KAAKE,CAAY,CAAC,EAC7D,OACE,OAAO,IAAIT,EAAaQ,EAAmB,KAAKC,CAAY,CAAC,EAC/D,QACE,MAAM,IAAI,MAAM,2CAA2CC,CAAK,EAAE,CACtE,CACF,CAEA,OAAO,YAAYR,EAAiD,CAClE,OAAOA,aAAqBF,CAC9B,CAEA,WAAsC,CACpC,OAAO,KAAK,qBAAqBO,CACnC,CAEA,sBAAmD,CACjD,OAAO,KAAK,qBAAqBC,CACnC,CACF","names":["AnyPublicKey","_AnyPublicKey","PublicKey","publicKey","args","message","signature","serializer","Ed25519PublicKey","Secp256k1PublicKey","deserializer","index"]}
@@ -1,2 +0,0 @@
1
- import{a as u}from"./chunk-SBMJNU2O.mjs";import{a as K}from"./chunk-7IGH7N52.mjs";import{a as n}from"./chunk-FBFMQZTM.mjs";import{a as p,b as o}from"./chunk-ZFIMVSCR.mjs";import{a as d,b as y}from"./chunk-I7WRJY7K.mjs";import{b as l}from"./chunk-NL72WE3E.mjs";var g=class a{constructor(t){let{privateKey:e,address:i,legacy:r}=t,c=r??!0;if(this.publicKey=e.publicKey(),this.publicKey instanceof p)c?this.signingScheme=0:(this.publicKey=new n(this.publicKey),this.signingScheme=2);else if(this.publicKey instanceof K)this.signingScheme=1;else if(this.publicKey instanceof d)this.publicKey=new n(this.publicKey),this.signingScheme=2;else throw new Error("Can not create new Account, unsupported public key type");this.privateKey=e,this.accountAddress=i}static generate(t){let e=t?.legacy??!0,i,r;switch(t?.scheme){case 2:i=y.generate(),r=new n(i.publicKey());break;default:i=o.generate(),e===!1?r=new n(i.publicKey()):r=i.publicKey()}let s=u.fromPublicKey({publicKey:r}).derivedAddress();return new a({privateKey:i,address:s,legacy:t?.legacy})}static fromPrivateKey(t){let{privateKey:e,legacy:i}=t,r=i??!0,c;if(e instanceof y)c=new n(e.publicKey());else if(e instanceof o)r?c=e.publicKey():c=new n(e.publicKey());else throw new Error(`Unsupported private key ${e}`);let m=u.fromPublicKey({publicKey:c}).derivedAddress();return new a({privateKey:e,address:m,legacy:r})}static fromPrivateKeyAndAddress(t){let{privateKey:e,address:i,legacy:r}=t;return new a({privateKey:e,address:i,legacy:r})}static fromDerivationPath(t){let{path:e,mnemonic:i,scheme:r,legacy:c}=t,s;switch(r){case 2:s=y.fromDerivationPath(e,i);break;case 0:s=o.fromDerivationPath(e,i);break;default:throw new Error(`Unsupported scheme ${r}`)}return a.fromPrivateKey({privateKey:s,legacy:c})}static authKey(t){let{publicKey:e}=t;return u.fromPublicKey({publicKey:e})}sign(t){return this.privateKey.sign(t)}verifySignature(t){let{message:e,signature:i}=t,r=l.fromHexInput(e).toUint8Array();return this.publicKey.verifySignature({message:r,signature:i})}};export{g as a};
2
- //# sourceMappingURL=chunk-FP5DPRYL.mjs.map