@aptos-labs/ts-sdk 0.0.5 → 0.0.6

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 (391) hide show
  1. package/README.md +3 -3
  2. package/dist/browser/index.d.ts +340 -288
  3. package/dist/browser/index.global.js +54 -30
  4. package/dist/browser/index.global.js.map +1 -1
  5. package/dist/common/index.d.ts +340 -288
  6. package/dist/common/index.js +24 -24
  7. package/dist/common/index.js.map +1 -1
  8. package/dist/esm/api/{account.d.ts → account.d.mts} +17 -17
  9. package/dist/esm/api/account.mjs +1 -1
  10. package/dist/esm/api/{ans.d.ts → ans.d.mts} +33 -33
  11. package/dist/esm/api/ans.mjs +1 -1
  12. package/dist/esm/api/aptos.d.mts +72 -0
  13. package/dist/esm/api/aptos.mjs +1 -1
  14. package/dist/esm/api/{aptosConfig.d.ts → aptosConfig.d.mts} +6 -6
  15. package/dist/esm/api/aptosConfig.mjs +1 -1
  16. package/dist/esm/api/coin.d.mts +59 -0
  17. package/dist/esm/api/coin.mjs +1 -1
  18. package/dist/esm/api/{digitalAsset.d.ts → digitalAsset.d.mts} +33 -33
  19. package/dist/esm/api/digitalAsset.mjs +1 -1
  20. package/dist/esm/api/{event.d.ts → event.d.mts} +14 -14
  21. package/dist/esm/api/event.mjs +1 -1
  22. package/dist/esm/api/{faucet.d.ts → faucet.d.mts} +13 -13
  23. package/dist/esm/api/faucet.mjs +1 -1
  24. package/dist/esm/api/{fungibleAsset.d.ts → fungibleAsset.d.mts} +7 -7
  25. package/dist/esm/api/fungibleAsset.mjs +1 -1
  26. package/dist/esm/api/{general.d.ts → general.d.mts} +11 -11
  27. package/dist/esm/api/general.mjs +1 -1
  28. package/dist/esm/api/index.d.mts +46 -0
  29. package/dist/esm/api/index.mjs +1 -1
  30. package/dist/esm/api/{staking.d.ts → staking.d.mts} +13 -13
  31. package/dist/esm/api/staking.mjs +1 -1
  32. package/dist/esm/api/{transaction.d.ts → transaction.d.mts} +7 -7
  33. package/dist/esm/api/transaction.mjs +1 -1
  34. package/dist/esm/api/{transactionSubmission.d.ts → transactionSubmission.d.mts} +33 -33
  35. package/dist/esm/api/transactionSubmission.mjs +1 -1
  36. package/dist/esm/bcs/{consts.d.ts → consts.d.mts} +5 -5
  37. package/dist/esm/bcs/consts.mjs +1 -1
  38. package/dist/esm/bcs/{deserializer.d.ts → deserializer.d.mts} +5 -5
  39. package/dist/esm/bcs/deserializer.mjs +1 -1
  40. package/dist/esm/bcs/index.d.mts +14 -0
  41. package/dist/esm/bcs/index.mjs +1 -1
  42. package/dist/esm/bcs/serializable/{entryFunctionBytes.d.ts → entryFunctionBytes.d.mts} +11 -11
  43. package/dist/esm/bcs/serializable/entryFunctionBytes.mjs +1 -1
  44. package/dist/esm/bcs/serializable/{fixedBytes.d.ts → fixedBytes.d.mts} +10 -10
  45. package/dist/esm/bcs/serializable/fixedBytes.mjs +1 -1
  46. package/dist/esm/bcs/serializable/{movePrimitives.d.ts → movePrimitives.d.mts} +10 -10
  47. package/dist/esm/bcs/serializable/movePrimitives.mjs +1 -1
  48. package/dist/esm/bcs/serializable/{moveStructs.d.ts → moveStructs.d.mts} +11 -11
  49. package/dist/esm/bcs/serializable/moveStructs.mjs +1 -1
  50. package/dist/esm/bcs/{serializer.d.ts → serializer.d.mts} +7 -7
  51. package/dist/esm/bcs/serializer.mjs +1 -1
  52. package/dist/esm/{chunk-WVMDCC4V.mjs → chunk-2W744GUN.mjs} +2 -2
  53. package/dist/esm/{chunk-WVMDCC4V.mjs.map → chunk-2W744GUN.mjs.map} +1 -1
  54. package/dist/esm/chunk-3JVGSFHP.mjs +2 -0
  55. package/dist/esm/chunk-3JVGSFHP.mjs.map +1 -0
  56. package/dist/esm/chunk-44MGBJ73.mjs +2 -0
  57. package/dist/esm/{chunk-CZZJAR3B.mjs.map → chunk-44MGBJ73.mjs.map} +1 -1
  58. package/dist/esm/chunk-4ADA5BE7.mjs +2 -0
  59. package/dist/esm/{chunk-7AQXAH6Q.mjs.map → chunk-4ADA5BE7.mjs.map} +1 -1
  60. package/dist/esm/{chunk-KYWYIK5P.mjs → chunk-4RVIA63I.mjs} +2 -2
  61. package/dist/esm/chunk-4RVIA63I.mjs.map +1 -0
  62. package/dist/esm/chunk-62SCW5NH.mjs +2 -0
  63. package/dist/esm/{chunk-YS2OX7AB.mjs.map → chunk-62SCW5NH.mjs.map} +1 -1
  64. package/dist/esm/{chunk-MIBLZSNS.mjs → chunk-7MNEEVXY.mjs} +2 -2
  65. package/dist/esm/chunk-7MNEEVXY.mjs.map +1 -0
  66. package/dist/esm/{chunk-KPESAXVI.mjs → chunk-AAIBCWZY.mjs} +2 -2
  67. package/dist/esm/{chunk-N6XWY4UT.mjs → chunk-ARVSIDVB.mjs} +1 -1
  68. package/dist/esm/{chunk-N6XWY4UT.mjs.map → chunk-ARVSIDVB.mjs.map} +1 -1
  69. package/dist/esm/{chunk-IXMH6AXJ.mjs → chunk-BFSEVKNA.mjs} +2 -2
  70. package/dist/esm/chunk-BP5ZO7NK.mjs +2 -0
  71. package/dist/esm/{chunk-FHJ7F7Z6.mjs.map → chunk-BP5ZO7NK.mjs.map} +1 -1
  72. package/dist/esm/chunk-BPYLPPEQ.mjs +2 -0
  73. package/dist/esm/{chunk-V6AAQLLJ.mjs.map → chunk-BPYLPPEQ.mjs.map} +1 -1
  74. package/dist/esm/{chunk-3OJN4I42.mjs → chunk-BV4OOU5Y.mjs} +2 -2
  75. package/dist/esm/{chunk-3OJN4I42.mjs.map → chunk-BV4OOU5Y.mjs.map} +1 -1
  76. package/dist/esm/{chunk-VAGYTPSI.mjs → chunk-BWMNPUTK.mjs} +2 -2
  77. package/dist/esm/chunk-CYDWEPFL.mjs +1 -0
  78. package/dist/esm/chunk-EFIYW4WK.mjs +2 -0
  79. package/dist/esm/{chunk-2MQZUGO6.mjs → chunk-EGOYLZBU.mjs} +2 -2
  80. package/dist/esm/chunk-EGOYLZBU.mjs.map +1 -0
  81. package/dist/esm/chunk-EQ5BEDJ7.mjs +2 -0
  82. package/dist/esm/{chunk-ADR4XQPR.mjs.map → chunk-EQ5BEDJ7.mjs.map} +1 -1
  83. package/dist/esm/chunk-EWTHPMEE.mjs +2 -0
  84. package/dist/esm/{chunk-LAXIJRYU.mjs.map → chunk-EWTHPMEE.mjs.map} +1 -1
  85. package/dist/esm/chunk-EYXHVA6W.mjs +2 -0
  86. package/dist/esm/chunk-EYXHVA6W.mjs.map +1 -0
  87. package/dist/esm/chunk-GEFQFRL3.mjs +2 -0
  88. package/dist/esm/chunk-GEFQFRL3.mjs.map +1 -0
  89. package/dist/esm/{chunk-BC2NOUYT.mjs → chunk-GTC7WHMV.mjs} +2 -2
  90. package/dist/esm/{chunk-BC2NOUYT.mjs.map → chunk-GTC7WHMV.mjs.map} +1 -1
  91. package/dist/esm/{chunk-27P7PELS.mjs → chunk-HA6JD5R6.mjs} +2 -2
  92. package/dist/esm/{chunk-27P7PELS.mjs.map → chunk-HA6JD5R6.mjs.map} +1 -1
  93. package/dist/esm/chunk-HVADSXTB.mjs +2 -0
  94. package/dist/esm/{chunk-LU6VS7PJ.mjs.map → chunk-HVADSXTB.mjs.map} +1 -1
  95. package/dist/esm/{chunk-Z56AKXJ7.mjs → chunk-IG5CHHSI.mjs} +2 -2
  96. package/dist/esm/chunk-IXMB2GOK.mjs +2 -0
  97. package/dist/esm/chunk-IXMB2GOK.mjs.map +1 -0
  98. package/dist/esm/{chunk-TYHBYRUA.mjs → chunk-J5ZFOJN2.mjs} +2 -2
  99. package/dist/esm/chunk-J5ZFOJN2.mjs.map +1 -0
  100. package/dist/esm/chunk-JDS7K2WI.mjs +2 -0
  101. package/dist/esm/{chunk-KNLMUSIO.mjs.map → chunk-JDS7K2WI.mjs.map} +1 -1
  102. package/dist/esm/chunk-JZNLZMUC.mjs +2 -0
  103. package/dist/esm/{chunk-WGXAIQ7K.mjs.map → chunk-JZNLZMUC.mjs.map} +1 -1
  104. package/dist/esm/chunk-KQXRH5FK.mjs +2 -0
  105. package/dist/esm/{chunk-UQIOMAXE.mjs.map → chunk-KQXRH5FK.mjs.map} +1 -1
  106. package/dist/esm/{chunk-2B5QXKPU.mjs → chunk-NGCFPQ22.mjs} +2 -2
  107. package/dist/esm/chunk-NGCFPQ22.mjs.map +1 -0
  108. package/dist/esm/chunk-NTD3H2S4.mjs +2 -0
  109. package/dist/esm/chunk-NTD3H2S4.mjs.map +1 -0
  110. package/dist/esm/{chunk-KFP7MDSD.mjs → chunk-NYFVEKF6.mjs} +2 -2
  111. package/dist/esm/chunk-NZIJV4O2.mjs +2 -0
  112. package/dist/esm/{chunk-HH5RSP2H.mjs.map → chunk-NZIJV4O2.mjs.map} +1 -1
  113. package/dist/esm/{chunk-TXUMB5ZO.mjs → chunk-P32MY5YF.mjs} +2 -2
  114. package/dist/esm/{chunk-TXUMB5ZO.mjs.map → chunk-P32MY5YF.mjs.map} +1 -1
  115. package/dist/esm/{chunk-DNYVUM3K.mjs → chunk-Q6N6QACD.mjs} +2 -2
  116. package/dist/esm/{chunk-DNYVUM3K.mjs.map → chunk-Q6N6QACD.mjs.map} +1 -1
  117. package/dist/esm/chunk-QWVR4RCV.mjs +2 -0
  118. package/dist/esm/{chunk-IPJKGHQY.mjs.map → chunk-QWVR4RCV.mjs.map} +1 -1
  119. package/dist/esm/chunk-R26XML3D.mjs +2 -0
  120. package/dist/esm/chunk-R26XML3D.mjs.map +1 -0
  121. package/dist/esm/chunk-R3KWVOFG.mjs +2 -0
  122. package/dist/esm/{chunk-KWJ6XKNF.mjs.map → chunk-R3KWVOFG.mjs.map} +1 -1
  123. package/dist/esm/chunk-RYETO74W.mjs +2 -0
  124. package/dist/esm/{chunk-BIUGRAMO.mjs.map → chunk-RYETO74W.mjs.map} +1 -1
  125. package/dist/esm/chunk-S36IYY6K.mjs +2 -0
  126. package/dist/esm/{chunk-DXUIJ6KA.mjs.map → chunk-S36IYY6K.mjs.map} +1 -1
  127. package/dist/esm/chunk-TIH6ARYP.mjs +2 -0
  128. package/dist/esm/{chunk-IZHPCZE3.mjs.map → chunk-TIH6ARYP.mjs.map} +1 -1
  129. package/dist/esm/{chunk-O243HOP3.mjs → chunk-TQD4IGUM.mjs} +2 -2
  130. package/dist/esm/chunk-TQD4IGUM.mjs.map +1 -0
  131. package/dist/esm/chunk-U25N2VWA.mjs +2 -0
  132. package/dist/esm/{chunk-FNB6CFQR.mjs.map → chunk-U25N2VWA.mjs.map} +1 -1
  133. package/dist/esm/chunk-U3LO2FSJ.mjs +2 -0
  134. package/dist/esm/{chunk-ZXJ5ZBTL.mjs.map → chunk-U3LO2FSJ.mjs.map} +1 -1
  135. package/dist/esm/chunk-U6SZNNVL.mjs +2 -0
  136. package/dist/esm/chunk-U6SZNNVL.mjs.map +1 -0
  137. package/dist/esm/{chunk-EKAOAGNQ.mjs → chunk-UAAI3NCA.mjs} +2 -2
  138. package/dist/esm/chunk-UNQNACJT.mjs +2 -0
  139. package/dist/esm/chunk-UPLWWSB4.mjs +2 -0
  140. package/dist/esm/{chunk-J3QOSJFP.mjs.map → chunk-UPLWWSB4.mjs.map} +1 -1
  141. package/dist/esm/{chunk-XFSL7O6Q.mjs → chunk-V45RFKH7.mjs} +2 -2
  142. package/dist/esm/chunk-V45RFKH7.mjs.map +1 -0
  143. package/dist/esm/{chunk-PJDVHU7X.mjs → chunk-VMQWW5UT.mjs} +2 -2
  144. package/dist/esm/{chunk-PJDVHU7X.mjs.map → chunk-VMQWW5UT.mjs.map} +1 -1
  145. package/dist/esm/chunk-VOYW2TZW.mjs +2 -0
  146. package/dist/esm/{chunk-KJDY66XF.mjs.map → chunk-VOYW2TZW.mjs.map} +1 -1
  147. package/dist/esm/chunk-VWVEDCBM.mjs +2 -0
  148. package/dist/esm/{chunk-BREUBEPM.mjs.map → chunk-VWVEDCBM.mjs.map} +1 -1
  149. package/dist/esm/{chunk-ZT2A5ABR.mjs → chunk-VYAVLUPJ.mjs} +2 -2
  150. package/dist/esm/{chunk-ZT2A5ABR.mjs.map → chunk-VYAVLUPJ.mjs.map} +1 -1
  151. package/dist/esm/{chunk-XFS5O5GJ.mjs → chunk-WKY5ENCK.mjs} +2 -2
  152. package/dist/esm/{chunk-XFS5O5GJ.mjs.map → chunk-WKY5ENCK.mjs.map} +1 -1
  153. package/dist/esm/{chunk-BTK34A5U.mjs → chunk-WX43AJTD.mjs} +10 -10
  154. package/dist/esm/chunk-WX43AJTD.mjs.map +1 -0
  155. package/dist/esm/chunk-X32O46IB.mjs +2 -0
  156. package/dist/esm/{chunk-PDLUCVJB.mjs.map → chunk-X32O46IB.mjs.map} +1 -1
  157. package/dist/esm/chunk-Y5DJPHJT.mjs +2 -0
  158. package/dist/esm/chunk-Y5DJPHJT.mjs.map +1 -0
  159. package/dist/esm/{chunk-GUT3G5CG.mjs → chunk-Y7VR7X5W.mjs} +2 -2
  160. package/dist/esm/chunk-Y7VR7X5W.mjs.map +1 -0
  161. package/dist/esm/chunk-YYRDFZE6.mjs +2 -0
  162. package/dist/esm/{chunk-UVGCVCNG.mjs.map → chunk-YYRDFZE6.mjs.map} +1 -1
  163. package/dist/esm/chunk-Z2UDRTHA.mjs +2 -0
  164. package/dist/esm/{chunk-JTGGMXB7.mjs.map → chunk-Z2UDRTHA.mjs.map} +1 -1
  165. package/dist/esm/{chunk-XNFEUXDS.mjs → chunk-ZWH2ESXT.mjs} +1 -1
  166. package/dist/esm/chunk-ZWH2ESXT.mjs.map +1 -0
  167. package/dist/esm/client/{core.d.ts → core.d.mts} +9 -9
  168. package/dist/esm/client/core.mjs +1 -1
  169. package/dist/esm/client/{get.d.ts → get.d.mts} +12 -12
  170. package/dist/esm/client/get.mjs +1 -1
  171. package/dist/esm/client/index.d.mts +11 -0
  172. package/dist/esm/client/index.mjs +1 -1
  173. package/dist/esm/client/{post.d.ts → post.d.mts} +14 -14
  174. package/dist/esm/client/post.mjs +1 -1
  175. package/dist/esm/client/{types.d.ts → types.d.mts} +5 -5
  176. package/dist/esm/client/types.mjs +1 -1
  177. package/dist/esm/core/{account.d.ts → account.d.mts} +13 -13
  178. package/dist/esm/core/account.mjs +1 -1
  179. package/dist/esm/core/{accountAddress.d.ts → accountAddress.d.mts} +11 -11
  180. package/dist/esm/core/accountAddress.mjs +1 -1
  181. package/dist/esm/core/{authenticationKey.d.ts → authenticationKey.d.mts} +12 -12
  182. package/dist/esm/core/authenticationKey.mjs +1 -1
  183. package/dist/esm/core/{common.d.ts → common.d.mts} +1 -1
  184. package/dist/esm/core/common.mjs +1 -1
  185. package/dist/esm/core/crypto/{anyPublicKey.d.ts → anyPublicKey.d.mts} +11 -11
  186. package/dist/esm/core/crypto/anyPublicKey.mjs +1 -1
  187. package/dist/esm/core/crypto/{anySignature.d.ts → anySignature.d.mts} +10 -10
  188. package/dist/esm/core/crypto/anySignature.mjs +1 -1
  189. package/dist/esm/core/crypto/{asymmetricCrypto.d.ts → asymmetricCrypto.d.mts} +8 -8
  190. package/dist/esm/core/crypto/asymmetricCrypto.mjs +1 -1
  191. package/dist/esm/core/crypto/{ed25519.d.ts → ed25519.d.mts} +10 -10
  192. package/dist/esm/core/crypto/ed25519.mjs +1 -1
  193. package/dist/esm/core/crypto/{hdKey.d.ts → hdKey.d.mts} +1 -1
  194. package/dist/esm/core/crypto/hdKey.mjs +1 -1
  195. package/dist/esm/core/crypto/index.d.mts +17 -0
  196. package/dist/esm/core/crypto/index.mjs +1 -1
  197. package/dist/esm/core/crypto/{multiEd25519.d.ts → multiEd25519.d.mts} +11 -11
  198. package/dist/esm/core/crypto/multiEd25519.mjs +1 -1
  199. package/dist/esm/core/crypto/{multiKey.d.ts → multiKey.d.mts} +12 -12
  200. package/dist/esm/core/crypto/multiKey.mjs +1 -1
  201. package/dist/esm/core/crypto/{secp256k1.d.ts → secp256k1.d.mts} +10 -10
  202. package/dist/esm/core/crypto/secp256k1.mjs +1 -1
  203. package/dist/esm/core/{hex.d.ts → hex.d.mts} +6 -6
  204. package/dist/esm/core/hex.mjs +1 -1
  205. package/dist/esm/core/index.d.mts +21 -0
  206. package/dist/esm/core/index.mjs +1 -1
  207. package/dist/esm/{index.d.ts → index.d.mts} +60 -60
  208. package/dist/esm/index.mjs +1 -1
  209. package/dist/esm/internal/{account.d.ts → account.d.mts} +17 -17
  210. package/dist/esm/internal/account.mjs +1 -1
  211. package/dist/esm/internal/{ans.d.ts → ans.d.mts} +32 -32
  212. package/dist/esm/internal/ans.mjs +1 -1
  213. package/dist/esm/internal/coin.d.mts +43 -0
  214. package/dist/esm/internal/coin.mjs +1 -1
  215. package/dist/esm/internal/{digitalAsset.d.ts → digitalAsset.d.mts} +32 -32
  216. package/dist/esm/internal/digitalAsset.mjs +1 -1
  217. package/dist/esm/internal/{event.d.ts → event.d.mts} +14 -14
  218. package/dist/esm/internal/event.mjs +1 -1
  219. package/dist/esm/internal/faucet.d.mts +29 -0
  220. package/dist/esm/internal/faucet.mjs +1 -1
  221. package/dist/esm/internal/{fungibleAsset.d.ts → fungibleAsset.d.mts} +7 -7
  222. package/dist/esm/internal/fungibleAsset.mjs +1 -1
  223. package/dist/esm/internal/{general.d.ts → general.d.mts} +11 -11
  224. package/dist/esm/internal/general.mjs +1 -1
  225. package/dist/esm/internal/{staking.d.ts → staking.d.mts} +13 -13
  226. package/dist/esm/internal/staking.mjs +1 -1
  227. package/dist/esm/internal/{transaction.d.ts → transaction.d.mts} +7 -7
  228. package/dist/esm/internal/transaction.mjs +1 -1
  229. package/dist/esm/internal/{transactionSubmission.d.ts → transactionSubmission.d.mts} +32 -32
  230. package/dist/esm/internal/transactionSubmission.mjs +1 -1
  231. package/dist/esm/transactions/authenticator/{account.d.ts → account.d.mts} +15 -15
  232. package/dist/esm/transactions/authenticator/account.mjs +1 -1
  233. package/dist/esm/transactions/authenticator/index.d.mts +19 -0
  234. package/dist/esm/transactions/authenticator/index.mjs +1 -1
  235. package/dist/esm/transactions/authenticator/{transaction.d.ts → transaction.d.mts} +18 -18
  236. package/dist/esm/transactions/authenticator/transaction.mjs +1 -1
  237. package/dist/esm/transactions/{index.d.ts → index.d.mts} +39 -39
  238. package/dist/esm/transactions/index.mjs +1 -1
  239. package/dist/esm/transactions/instances/chainId.d.mts +21 -0
  240. package/dist/esm/transactions/instances/chainId.mjs +1 -1
  241. package/dist/esm/transactions/instances/{identifier.d.ts → identifier.d.mts} +9 -9
  242. package/dist/esm/transactions/instances/identifier.mjs +1 -1
  243. package/dist/esm/transactions/instances/index.d.mts +29 -0
  244. package/dist/esm/transactions/instances/index.mjs +1 -1
  245. package/dist/esm/transactions/instances/{moduleId.d.ts → moduleId.d.mts} +12 -12
  246. package/dist/esm/transactions/instances/moduleId.mjs +1 -1
  247. package/dist/esm/transactions/instances/{rawTransaction.d.ts → rawTransaction.d.mts} +16 -16
  248. package/dist/esm/transactions/instances/rawTransaction.mjs +1 -1
  249. package/dist/esm/transactions/instances/{rotationProofChallenge.d.ts → rotationProofChallenge.d.mts} +14 -14
  250. package/dist/esm/transactions/instances/rotationProofChallenge.mjs +1 -1
  251. package/dist/esm/transactions/instances/{signedTransaction.d.ts → signedTransaction.d.mts} +25 -25
  252. package/dist/esm/transactions/instances/signedTransaction.mjs +1 -1
  253. package/dist/esm/transactions/instances/{transactionArgument.d.ts → transactionArgument.d.mts} +8 -8
  254. package/dist/esm/transactions/instances/{transactionPayload.d.ts → transactionPayload.d.mts} +14 -14
  255. package/dist/esm/transactions/instances/transactionPayload.mjs +1 -1
  256. package/dist/esm/transactions/transactionBuilder/{helpers.d.ts → helpers.d.mts} +31 -31
  257. package/dist/esm/transactions/transactionBuilder/helpers.mjs +1 -1
  258. package/dist/esm/transactions/transactionBuilder/index.d.mts +35 -0
  259. package/dist/esm/transactions/transactionBuilder/index.mjs +1 -1
  260. package/dist/esm/transactions/transactionBuilder/remoteAbi.d.mts +54 -0
  261. package/dist/esm/transactions/transactionBuilder/remoteAbi.mjs +1 -1
  262. package/dist/esm/transactions/transactionBuilder/{transactionBuilder.d.ts → transactionBuilder.d.mts} +33 -35
  263. package/dist/esm/transactions/transactionBuilder/transactionBuilder.mjs +1 -1
  264. package/dist/esm/transactions/typeTag/{index.d.ts → index.d.mts} +12 -12
  265. package/dist/esm/transactions/typeTag/index.mjs +1 -1
  266. package/dist/esm/transactions/typeTag/{parser.d.ts → parser.d.mts} +14 -13
  267. package/dist/esm/transactions/typeTag/parser.mjs +1 -1
  268. package/dist/esm/transactions/{types.d.ts → types.d.mts} +49 -60
  269. package/dist/esm/types/generated/{operations.d.ts → operations.d.mts} +78 -78
  270. package/dist/esm/types/generated/{queries.d.ts → queries.d.mts} +31 -31
  271. package/dist/esm/types/generated/queries.mjs +1 -1
  272. package/dist/esm/types/generated/{types.d.ts → types.d.mts} +3184 -3146
  273. package/dist/esm/types/generated/types.mjs +1 -1
  274. package/dist/esm/types/generated/types.mjs.map +1 -1
  275. package/dist/esm/types/{index.d.ts → index.d.mts} +94 -92
  276. package/dist/esm/types/index.mjs +1 -1
  277. package/dist/esm/types/indexer.d.mts +62 -0
  278. package/dist/esm/utils/apiEndpoints.mjs +1 -1
  279. package/dist/esm/utils/const.mjs +1 -1
  280. package/dist/esm/utils/helpers.mjs +1 -1
  281. package/dist/esm/utils/index.d.mts +2 -0
  282. package/dist/esm/utils/index.mjs +2 -0
  283. package/dist/esm/utils/index.mjs.map +1 -0
  284. package/dist/esm/utils/memoize.mjs +1 -1
  285. package/dist/esm/version.mjs +1 -1
  286. package/package.json +30 -30
  287. package/src/api/account.ts +2 -2
  288. package/src/api/coin.ts +2 -2
  289. package/src/api/event.ts +2 -2
  290. package/src/api/general.ts +4 -4
  291. package/src/api/transactionSubmission.ts +7 -2
  292. package/src/client/core.ts +1 -1
  293. package/src/client/get.ts +6 -2
  294. package/src/client/post.ts +12 -4
  295. package/src/index.ts +1 -1
  296. package/src/internal/account.ts +2 -2
  297. package/src/internal/ans.ts +2 -2
  298. package/src/internal/coin.ts +2 -2
  299. package/src/internal/event.ts +2 -2
  300. package/src/internal/general.ts +7 -6
  301. package/src/internal/transactionSubmission.ts +41 -9
  302. package/src/transactions/transactionBuilder/helpers.ts +2 -2
  303. package/src/transactions/transactionBuilder/transactionBuilder.ts +15 -16
  304. package/src/transactions/typeTag/parser.ts +10 -2
  305. package/src/transactions/types.ts +3 -12
  306. package/src/types/generated/operations.ts +33 -33
  307. package/src/types/generated/queries.ts +22 -22
  308. package/src/types/generated/types.ts +2253 -2251
  309. package/src/types/index.ts +16 -10
  310. package/src/utils/index.ts +2 -0
  311. package/dist/esm/api/aptos.d.ts +0 -72
  312. package/dist/esm/api/coin.d.ts +0 -59
  313. package/dist/esm/api/index.d.ts +0 -46
  314. package/dist/esm/bcs/index.d.ts +0 -14
  315. package/dist/esm/chunk-2444YR3Y.mjs +0 -2
  316. package/dist/esm/chunk-2444YR3Y.mjs.map +0 -1
  317. package/dist/esm/chunk-2B5QXKPU.mjs.map +0 -1
  318. package/dist/esm/chunk-2MQZUGO6.mjs.map +0 -1
  319. package/dist/esm/chunk-3YOV42H5.mjs +0 -2
  320. package/dist/esm/chunk-3YOV42H5.mjs.map +0 -1
  321. package/dist/esm/chunk-7AIV5FEN.mjs +0 -2
  322. package/dist/esm/chunk-7AIV5FEN.mjs.map +0 -1
  323. package/dist/esm/chunk-7AQXAH6Q.mjs +0 -2
  324. package/dist/esm/chunk-7TL2MY2B.mjs +0 -2
  325. package/dist/esm/chunk-7TL2MY2B.mjs.map +0 -1
  326. package/dist/esm/chunk-ADR4XQPR.mjs +0 -2
  327. package/dist/esm/chunk-AY2HWVDO.mjs +0 -2
  328. package/dist/esm/chunk-AY2HWVDO.mjs.map +0 -1
  329. package/dist/esm/chunk-BIUGRAMO.mjs +0 -2
  330. package/dist/esm/chunk-BREUBEPM.mjs +0 -2
  331. package/dist/esm/chunk-BTK34A5U.mjs.map +0 -1
  332. package/dist/esm/chunk-CZZJAR3B.mjs +0 -2
  333. package/dist/esm/chunk-DXUIJ6KA.mjs +0 -2
  334. package/dist/esm/chunk-E72CFUU4.mjs +0 -2
  335. package/dist/esm/chunk-FHJ7F7Z6.mjs +0 -2
  336. package/dist/esm/chunk-FNB6CFQR.mjs +0 -2
  337. package/dist/esm/chunk-GUT3G5CG.mjs.map +0 -1
  338. package/dist/esm/chunk-HH5RSP2H.mjs +0 -2
  339. package/dist/esm/chunk-IPJKGHQY.mjs +0 -2
  340. package/dist/esm/chunk-IZHPCZE3.mjs +0 -2
  341. package/dist/esm/chunk-J3QOSJFP.mjs +0 -2
  342. package/dist/esm/chunk-J5OKXARS.mjs +0 -2
  343. package/dist/esm/chunk-J5OKXARS.mjs.map +0 -1
  344. package/dist/esm/chunk-JTGGMXB7.mjs +0 -2
  345. package/dist/esm/chunk-KJDY66XF.mjs +0 -2
  346. package/dist/esm/chunk-KNLMUSIO.mjs +0 -2
  347. package/dist/esm/chunk-KWJ6XKNF.mjs +0 -2
  348. package/dist/esm/chunk-KYWYIK5P.mjs.map +0 -1
  349. package/dist/esm/chunk-LAXIJRYU.mjs +0 -2
  350. package/dist/esm/chunk-LU6VS7PJ.mjs +0 -2
  351. package/dist/esm/chunk-MIBLZSNS.mjs.map +0 -1
  352. package/dist/esm/chunk-NKTKHC3Z.mjs +0 -2
  353. package/dist/esm/chunk-NKTKHC3Z.mjs.map +0 -1
  354. package/dist/esm/chunk-O243HOP3.mjs.map +0 -1
  355. package/dist/esm/chunk-PDLUCVJB.mjs +0 -2
  356. package/dist/esm/chunk-SJLO3JIH.mjs +0 -2
  357. package/dist/esm/chunk-TYHBYRUA.mjs.map +0 -1
  358. package/dist/esm/chunk-UQIOMAXE.mjs +0 -2
  359. package/dist/esm/chunk-UVGCVCNG.mjs +0 -2
  360. package/dist/esm/chunk-V6AAQLLJ.mjs +0 -2
  361. package/dist/esm/chunk-WGXAIQ7K.mjs +0 -2
  362. package/dist/esm/chunk-WNEZCERQ.mjs +0 -2
  363. package/dist/esm/chunk-WNEZCERQ.mjs.map +0 -1
  364. package/dist/esm/chunk-XFSL7O6Q.mjs.map +0 -1
  365. package/dist/esm/chunk-YS2OX7AB.mjs +0 -2
  366. package/dist/esm/chunk-ZXJ5ZBTL.mjs +0 -2
  367. package/dist/esm/client/index.d.ts +0 -11
  368. package/dist/esm/core/crypto/index.d.ts +0 -17
  369. package/dist/esm/core/index.d.ts +0 -21
  370. package/dist/esm/internal/coin.d.ts +0 -43
  371. package/dist/esm/internal/faucet.d.ts +0 -29
  372. package/dist/esm/transactions/authenticator/index.d.ts +0 -19
  373. package/dist/esm/transactions/instances/chainId.d.ts +0 -21
  374. package/dist/esm/transactions/instances/index.d.ts +0 -29
  375. package/dist/esm/transactions/transactionBuilder/index.d.ts +0 -35
  376. package/dist/esm/transactions/transactionBuilder/remoteAbi.d.ts +0 -54
  377. package/dist/esm/types/indexer.d.ts +0 -62
  378. /package/dist/esm/{chunk-KPESAXVI.mjs.map → chunk-AAIBCWZY.mjs.map} +0 -0
  379. /package/dist/esm/{chunk-IXMH6AXJ.mjs.map → chunk-BFSEVKNA.mjs.map} +0 -0
  380. /package/dist/esm/{chunk-VAGYTPSI.mjs.map → chunk-BWMNPUTK.mjs.map} +0 -0
  381. /package/dist/esm/{chunk-XNFEUXDS.mjs.map → chunk-CYDWEPFL.mjs.map} +0 -0
  382. /package/dist/esm/{chunk-E72CFUU4.mjs.map → chunk-EFIYW4WK.mjs.map} +0 -0
  383. /package/dist/esm/{chunk-Z56AKXJ7.mjs.map → chunk-IG5CHHSI.mjs.map} +0 -0
  384. /package/dist/esm/{chunk-KFP7MDSD.mjs.map → chunk-NYFVEKF6.mjs.map} +0 -0
  385. /package/dist/esm/{chunk-EKAOAGNQ.mjs.map → chunk-UAAI3NCA.mjs.map} +0 -0
  386. /package/dist/esm/{chunk-SJLO3JIH.mjs.map → chunk-UNQNACJT.mjs.map} +0 -0
  387. /package/dist/esm/utils/{apiEndpoints.d.ts → apiEndpoints.d.mts} +0 -0
  388. /package/dist/esm/utils/{const.d.ts → const.d.mts} +0 -0
  389. /package/dist/esm/utils/{helpers.d.ts → helpers.d.mts} +0 -0
  390. /package/dist/esm/utils/{memoize.d.ts → memoize.d.mts} +0 -0
  391. /package/dist/esm/{version.d.ts → version.d.mts} +0 -0
@@ -0,0 +1,2 @@
1
+ import{a as o}from"./chunk-YYRDFZE6.mjs";import{a as y}from"./chunk-EFIYW4WK.mjs";import{b as l}from"./chunk-TIH6ARYP.mjs";var p=class h extends y{constructor(e){super();let{publicKeys:t,signaturesRequired:r}=e;if(r<1)throw new Error("The number of required signatures needs to be greater then 0");if(t.length<r)throw new Error(`Provided ${t.length} public keys is smaller than the ${r} required signatures`);let i=[];t.forEach(s=>{s instanceof o?i.push(s):i.push(new o(s))}),this.publicKeys=i,this.signaturesRequired=r}toUint8Array(){return this.bcsToBytes()}createBitmap(e){let{bits:t}=e,r=128,i=new Uint8Array([0,0,0,0]),s=new Set;return t.forEach((n,u)=>{if(u+1>this.publicKeys.length)throw new Error(`Signature index ${u+1} is out of public keys range, ${this.publicKeys.length}.`);if(s.has(n))throw new Error(`Duplicate bit ${n} detected.`);s.add(n);let a=Math.floor(n/8),c=i[a];c|=r>>n%8,i[a]=c}),i}toString(){return l.fromHexInput(this.toUint8Array()).toString()}verifySignature(e){throw new Error("not implemented")}serialize(e){e.serializeVector(this.publicKeys),e.serializeU8(this.signaturesRequired)}static deserialize(e){let t=e.deserializeVector(o),r=e.deserializeU8();return new h({publicKeys:t,signaturesRequired:r})}};export{p as a};
2
+ //# sourceMappingURL=chunk-44MGBJ73.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/core/crypto/multiKey.ts"],"sourcesContent":["import { Hex } from \"../hex\";\nimport { HexInput } from \"../../types\";\nimport { Deserializer } from \"../../bcs/deserializer\";\nimport { Serializer } from \"../../bcs/serializer\";\nimport { AnyPublicKey } from \"./anyPublicKey\";\nimport { AnySignature } from \"./anySignature\";\nimport { PublicKey } from \"./asymmetricCrypto\";\n\nexport class MultiKey extends PublicKey {\n /**\n * List of any public keys\n */\n public readonly publicKeys: AnyPublicKey[];\n\n /**\n * The minimum number of valid signatures required, for the number of public keys specified\n */\n public readonly signaturesRequired: number;\n\n constructor(args: { publicKeys: PublicKey[]; signaturesRequired: number }) {\n super();\n const { publicKeys, signaturesRequired } = args;\n\n // Validate number of public keys is greater than signature required\n if (signaturesRequired < 1) {\n throw new Error(\"The number of required signatures needs to be greater then 0\");\n }\n\n // Validate number of public keys is greater than signature required\n if (publicKeys.length < signaturesRequired) {\n throw new Error(\n `Provided ${publicKeys.length} public keys is smaller than the ${signaturesRequired} required signatures`,\n );\n }\n\n const keys: AnyPublicKey[] = [];\n publicKeys.forEach((publicKey) => {\n if (publicKey instanceof AnyPublicKey) {\n keys.push(publicKey);\n } else {\n // if public key is instance of a legacy authentication key, i.e\n // Legacy Ed25519, convert it into AnyPublicKey\n keys.push(new AnyPublicKey(publicKey));\n }\n });\n\n this.publicKeys = keys;\n this.signaturesRequired = signaturesRequired;\n }\n\n toUint8Array(): Uint8Array {\n return this.bcsToBytes();\n }\n\n /**\n * Create a bitmap that holds the mapping from the original public keys\n * to the signatures passed in\n *\n * @param args.bits array of the index mapping to the matching public keys\n * @returns Uint8array bit map\n */\n 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, idx: number) => {\n if (idx + 1 > this.publicKeys.length) {\n throw new Error(`Signature index ${idx + 1} is out of public keys range, ${this.publicKeys.length}.`);\n }\n\n if (dupCheckSet.has(bit)) {\n throw new Error(`Duplicate bit ${bit} 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 /**\n * Hex string representation the multi key bytes\n *\n * @returns string\n */\n toString(): string {\n return Hex.fromHexInput(this.toUint8Array()).toString();\n }\n\n // TODO\n // eslint-disable-next-line class-methods-use-this, @typescript-eslint/no-unused-vars\n verifySignature(args: { message: HexInput; signature: AnySignature }): boolean {\n throw new Error(\"not implemented\");\n }\n\n serialize(serializer: Serializer): void {\n serializer.serializeVector(this.publicKeys);\n serializer.serializeU8(this.signaturesRequired);\n }\n\n static deserialize(deserializer: Deserializer): MultiKey {\n const keys = deserializer.deserializeVector(AnyPublicKey);\n const signaturesRequired = deserializer.deserializeU8();\n\n return new MultiKey({ publicKeys: keys, signaturesRequired });\n }\n}\n"],"mappings":"2HAQO,IAAMA,EAAN,cAAuBC,CAAU,CAWtC,YAAYC,EAA+D,CACzE,MAAM,EACN,GAAM,CAAE,WAAAC,EAAY,mBAAAC,CAAmB,EAAIF,EAG3C,GAAIE,EAAqB,EACvB,MAAM,IAAI,MAAM,8DAA8D,EAIhF,GAAID,EAAW,OAASC,EACtB,MAAM,IAAI,MACR,YAAYD,EAAW,0CAA0CC,uBACnE,EAGF,IAAMC,EAAuB,CAAC,EAC9BF,EAAW,QAASG,GAAc,CAC5BA,aAAqBC,EACvBF,EAAK,KAAKC,CAAS,EAInBD,EAAK,KAAK,IAAIE,EAAaD,CAAS,CAAC,CAEzC,CAAC,EAED,KAAK,WAAaD,EAClB,KAAK,mBAAqBD,CAC5B,CAEA,cAA2B,CACzB,OAAO,KAAK,WAAW,CACzB,CASA,aAAaF,EAAsC,CACjD,GAAM,CAAE,KAAAM,CAAK,EAAIN,EAGXO,EAAiB,IACjBC,EAAS,IAAI,WAAW,CAAC,EAAG,EAAG,EAAG,CAAC,CAAC,EAGpCC,EAAc,IAAI,IAExB,OAAAH,EAAK,QAAQ,CAACI,EAAaC,IAAgB,CACzC,GAAIA,EAAM,EAAI,KAAK,WAAW,OAC5B,MAAM,IAAI,MAAM,mBAAmBA,EAAM,kCAAkC,KAAK,WAAW,SAAS,EAGtG,GAAIF,EAAY,IAAIC,CAAG,EACrB,MAAM,IAAI,MAAM,iBAAiBA,aAAe,EAGlDD,EAAY,IAAIC,CAAG,EAEnB,IAAME,EAAa,KAAK,MAAMF,EAAM,CAAC,EAEjCG,EAAOL,EAAOI,GAGlBC,GAAQN,GAAkBG,EAAM,EAEhCF,EAAOI,GAAcC,CACvB,CAAC,EAEML,CACT,CAOA,UAAmB,CACjB,OAAOM,EAAI,aAAa,KAAK,aAAa,CAAC,EAAE,SAAS,CACxD,CAIA,gBAAgBd,EAA+D,CAC7E,MAAM,IAAI,MAAM,iBAAiB,CACnC,CAEA,UAAUe,EAA8B,CACtCA,EAAW,gBAAgB,KAAK,UAAU,EAC1CA,EAAW,YAAY,KAAK,kBAAkB,CAChD,CAEA,OAAO,YAAYC,EAAsC,CACvD,IAAMb,EAAOa,EAAa,kBAAkBX,CAAY,EAClDH,EAAqBc,EAAa,cAAc,EAEtD,OAAO,IAAIlB,EAAS,CAAE,WAAYK,EAAM,mBAAAD,CAAmB,CAAC,CAC9D,CACF","names":["MultiKey","PublicKey","args","publicKeys","signaturesRequired","keys","publicKey","AnyPublicKey","bits","firstBitInByte","bitmap","dupCheckSet","bit","idx","byteOffset","byte","Hex","serializer","deserializer"]}
1
+ {"version":3,"sources":["../../src/core/crypto/multiKey.ts"],"sourcesContent":["import { Hex } from \"../hex\";\nimport { HexInput } from \"../../types\";\nimport { Deserializer } from \"../../bcs/deserializer\";\nimport { Serializer } from \"../../bcs/serializer\";\nimport { AnyPublicKey } from \"./anyPublicKey\";\nimport { AnySignature } from \"./anySignature\";\nimport { PublicKey } from \"./asymmetricCrypto\";\n\nexport class MultiKey extends PublicKey {\n /**\n * List of any public keys\n */\n public readonly publicKeys: AnyPublicKey[];\n\n /**\n * The minimum number of valid signatures required, for the number of public keys specified\n */\n public readonly signaturesRequired: number;\n\n constructor(args: { publicKeys: PublicKey[]; signaturesRequired: number }) {\n super();\n const { publicKeys, signaturesRequired } = args;\n\n // Validate number of public keys is greater than signature required\n if (signaturesRequired < 1) {\n throw new Error(\"The number of required signatures needs to be greater then 0\");\n }\n\n // Validate number of public keys is greater than signature required\n if (publicKeys.length < signaturesRequired) {\n throw new Error(\n `Provided ${publicKeys.length} public keys is smaller than the ${signaturesRequired} required signatures`,\n );\n }\n\n const keys: AnyPublicKey[] = [];\n publicKeys.forEach((publicKey) => {\n if (publicKey instanceof AnyPublicKey) {\n keys.push(publicKey);\n } else {\n // if public key is instance of a legacy authentication key, i.e\n // Legacy Ed25519, convert it into AnyPublicKey\n keys.push(new AnyPublicKey(publicKey));\n }\n });\n\n this.publicKeys = keys;\n this.signaturesRequired = signaturesRequired;\n }\n\n toUint8Array(): Uint8Array {\n return this.bcsToBytes();\n }\n\n /**\n * Create a bitmap that holds the mapping from the original public keys\n * to the signatures passed in\n *\n * @param args.bits array of the index mapping to the matching public keys\n * @returns Uint8array bit map\n */\n 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, idx: number) => {\n if (idx + 1 > this.publicKeys.length) {\n throw new Error(`Signature index ${idx + 1} is out of public keys range, ${this.publicKeys.length}.`);\n }\n\n if (dupCheckSet.has(bit)) {\n throw new Error(`Duplicate bit ${bit} 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 /**\n * Hex string representation the multi key bytes\n *\n * @returns string\n */\n toString(): string {\n return Hex.fromHexInput(this.toUint8Array()).toString();\n }\n\n // TODO\n // eslint-disable-next-line class-methods-use-this, @typescript-eslint/no-unused-vars\n verifySignature(args: { message: HexInput; signature: AnySignature }): boolean {\n throw new Error(\"not implemented\");\n }\n\n serialize(serializer: Serializer): void {\n serializer.serializeVector(this.publicKeys);\n serializer.serializeU8(this.signaturesRequired);\n }\n\n static deserialize(deserializer: Deserializer): MultiKey {\n const keys = deserializer.deserializeVector(AnyPublicKey);\n const signaturesRequired = deserializer.deserializeU8();\n\n return new MultiKey({ publicKeys: keys, signaturesRequired });\n }\n}\n"],"mappings":"2HAQO,IAAMA,EAAN,MAAMC,UAAiBC,CAAU,CAWtC,YAAYC,EAA+D,CACzE,MAAM,EACN,GAAM,CAAE,WAAAC,EAAY,mBAAAC,CAAmB,EAAIF,EAG3C,GAAIE,EAAqB,EACvB,MAAM,IAAI,MAAM,8DAA8D,EAIhF,GAAID,EAAW,OAASC,EACtB,MAAM,IAAI,MACR,YAAYD,EAAW,MAAM,oCAAoCC,CAAkB,sBACrF,EAGF,IAAMC,EAAuB,CAAC,EAC9BF,EAAW,QAASG,GAAc,CAC5BA,aAAqBC,EACvBF,EAAK,KAAKC,CAAS,EAInBD,EAAK,KAAK,IAAIE,EAAaD,CAAS,CAAC,CAEzC,CAAC,EAED,KAAK,WAAaD,EAClB,KAAK,mBAAqBD,CAC5B,CAEA,cAA2B,CACzB,OAAO,KAAK,WAAW,CACzB,CASA,aAAaF,EAAsC,CACjD,GAAM,CAAE,KAAAM,CAAK,EAAIN,EAGXO,EAAiB,IACjBC,EAAS,IAAI,WAAW,CAAC,EAAG,EAAG,EAAG,CAAC,CAAC,EAGpCC,EAAc,IAAI,IAExB,OAAAH,EAAK,QAAQ,CAACI,EAAaC,IAAgB,CACzC,GAAIA,EAAM,EAAI,KAAK,WAAW,OAC5B,MAAM,IAAI,MAAM,mBAAmBA,EAAM,CAAC,iCAAiC,KAAK,WAAW,MAAM,GAAG,EAGtG,GAAIF,EAAY,IAAIC,CAAG,EACrB,MAAM,IAAI,MAAM,iBAAiBA,CAAG,YAAY,EAGlDD,EAAY,IAAIC,CAAG,EAEnB,IAAME,EAAa,KAAK,MAAMF,EAAM,CAAC,EAEjCG,EAAOL,EAAOI,CAAU,EAG5BC,GAAQN,GAAkBG,EAAM,EAEhCF,EAAOI,CAAU,EAAIC,CACvB,CAAC,EAEML,CACT,CAOA,UAAmB,CACjB,OAAOM,EAAI,aAAa,KAAK,aAAa,CAAC,EAAE,SAAS,CACxD,CAIA,gBAAgBd,EAA+D,CAC7E,MAAM,IAAI,MAAM,iBAAiB,CACnC,CAEA,UAAUe,EAA8B,CACtCA,EAAW,gBAAgB,KAAK,UAAU,EAC1CA,EAAW,YAAY,KAAK,kBAAkB,CAChD,CAEA,OAAO,YAAYC,EAAsC,CACvD,IAAMb,EAAOa,EAAa,kBAAkBX,CAAY,EAClDH,EAAqBc,EAAa,cAAc,EAEtD,OAAO,IAAIlB,EAAS,CAAE,WAAYK,EAAM,mBAAAD,CAAmB,CAAC,CAC9D,CACF","names":["MultiKey","_MultiKey","PublicKey","args","publicKeys","signaturesRequired","keys","publicKey","AnyPublicKey","bits","firstBitInByte","bitmap","dupCheckSet","bit","idx","byteOffset","byte","Hex","serializer","deserializer"]}
@@ -0,0 +1,2 @@
1
+ import{a as l,b as s,c as u,d as c,e as d,f as m,g as U}from"./chunk-X32O46IB.mjs";import{a as o}from"./chunk-HA6JD5R6.mjs";import{b as z}from"./chunk-TIH6ARYP.mjs";var t=class n extends o{constructor(e){super();this.values=e}serializeForEntryFunction(e){let r=this.bcsToBytes();e.serializeBytes(r)}serializeForScriptFunction(e){if(!(this.values[0]instanceof s)&&this.values[0]!==void 0)throw new Error("Script function arguments only accept u8 vectors");e.serializeU32AsUleb128(4),e.serialize(this)}static U8(e){let r;if(Array.isArray(e)&&typeof e[0]=="number")r=e;else if(typeof e=="string"){let i=z.fromHexInput(e);r=Array.from(i.toUint8Array())}else if(e instanceof Uint8Array)r=Array.from(e);else throw new Error("Invalid input type");return new n(r.map(i=>new s(i)))}static U16(e){return new n(e.map(r=>new u(r)))}static U32(e){return new n(e.map(r=>new c(r)))}static U64(e){return new n(e.map(r=>new d(r)))}static U128(e){return new n(e.map(r=>new m(r)))}static U256(e){return new n(e.map(r=>new U(r)))}static Bool(e){return new n(e.map(r=>new l(r)))}static MoveString(e){return new n(e.map(r=>new a(r)))}serialize(e){e.serializeVector(this.values)}static deserialize(e,r){let i=e.deserializeUleb128AsU32(),y=new Array;for(let w=0;w<i;w+=1)y.push(r.deserialize(e));return new n(y)}},a=class n extends o{constructor(e){super();this.value=e}serialize(e){e.serializeStr(this.value)}serializeForEntryFunction(e){let r=this.bcsToBytes();e.serializeBytes(r)}serializeForScriptFunction(e){let r=this.bcsToBytes().slice(1);t.U8(r).serializeForScriptFunction(e)}static deserialize(e){return new n(e.deserializeStr())}},f=class n extends o{constructor(e){super();typeof e<"u"&&e!==null?this.vec=new t([e]):this.vec=new t([]),[this.value]=this.vec.values}serializeForEntryFunction(e){let r=this.bcsToBytes();e.serializeBytes(r)}unwrap(){if(this.isSome())return this.vec.values[0];throw new Error("Called unwrap on a MoveOption with no value")}isSome(){return this.vec.values.length===1}serialize(e){this.vec.serialize(e)}static U8(e){return new n(e!=null?new s(e):void 0)}static U16(e){return new n(e!=null?new u(e):void 0)}static U32(e){return new n(e!=null?new c(e):void 0)}static U64(e){return new n(e!=null?new d(e):void 0)}static U128(e){return new n(e!=null?new m(e):void 0)}static U256(e){return new n(e!=null?new U(e):void 0)}static Bool(e){return new n(e!=null?new l(e):void 0)}static MoveString(e){return new n(e!=null?new a(e):void 0)}static deserialize(e,r){let i=t.deserialize(e,r);return new n(i.values[0])}};export{t as a,a as b,f as c};
2
+ //# sourceMappingURL=chunk-4ADA5BE7.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/bcs/serializable/moveStructs.ts"],"sourcesContent":["// Copyright © Aptos Foundation\n// SPDX-License-Identifier: Apache-2.0\n\nimport { Bool, U128, U16, U256, U32, U64, U8 } from \"./movePrimitives\";\nimport { Serializable, Serializer } from \"../serializer\";\nimport { Deserializable, Deserializer } from \"../deserializer\";\nimport { AnyNumber, HexInput, ScriptTransactionArgumentVariants } from \"../../types\";\nimport { Hex } from \"../../core/hex\";\nimport { EntryFunctionArgument, TransactionArgument } from \"../../transactions/instances/transactionArgument\";\n\n/**\n * This class is the Aptos Typescript SDK representation of a Move `vector<T>`,\n * where `T` represents either a primitive type (`bool`, `u8`, `u64`, ...)\n * or a BCS-serializable struct itself.\n *\n * It is a BCS-serializable, array-like type that contains an array of values of type `T`,\n * where `T` is a class that implements `Serializable`.\n *\n * The purpose of this class is to facilitate easy construction of BCS-serializable\n * Move `vector<T>` types.\n *\n * @example\n * // in Move: `vector<u8> [1, 2, 3, 4];`\n * const vecOfU8s = new MoveVector<U8>([new U8(1), new U8(2), new U8(3), new U8(4)]);\n * // in Move: `std::bcs::to_bytes(vector<u8> [1, 2, 3, 4]);`\n * const bcsBytes = vecOfU8s.toUint8Array();\n *\n * // vector<vector<u8>> [ vector<u8> [1], vector<u8> [1, 2, 3, 4], vector<u8> [5, 6, 7, 8] ];\n * const vecOfVecs = new MoveVector<MoveVector<U8>>([\n * new MoveVector<U8>([new U8(1)]),\n * MoveVector.U8([1, 2, 3, 4]),\n * MoveVector.U8([5, 6, 7, 8]),\n * ]);\n *\n * // vector<Option<u8>> [ std::option::some<u8>(1), std::option::some<u8>(2) ];\n * const vecOfOptionU8s = new MoveVector<MoveOption<U8>>([\n * MoveOption.U8(1),\n * MoveOption.U8(2),\n * ]);\n *\n * // vector<MoveString> [ std::string::utf8(b\"hello\"), std::string::utf8(b\"world\") ];\n * const vecOfStrings = new MoveVector([new MoveString(\"hello\"), new MoveString(\"world\")]);\n * const vecOfStrings2 = MoveVector.MoveString([\"hello\", \"world\"]);\n *\n * @params\n * values: an Array<T> of values where T is a class that implements Serializable\n * @returns a `MoveVector<T>` with the values `values`\n */\nexport class MoveVector<T extends Serializable & EntryFunctionArgument>\n extends Serializable\n implements TransactionArgument\n{\n public values: Array<T>;\n\n constructor(values: Array<T>) {\n super();\n this.values = values;\n }\n\n serializeForEntryFunction(serializer: Serializer): void {\n const bcsBytes = this.bcsToBytes();\n serializer.serializeBytes(bcsBytes);\n }\n\n /**\n * NOTE: This function will only work when the inner values in the `MoveVector` are `U8`s.\n * @param serializer\n */\n serializeForScriptFunction(serializer: Serializer): void {\n // runtime check to ensure that you can't serialize anything other than vector<u8>\n const isU8 = this.values[0] instanceof U8;\n // if the inner array is length 0, we can't check the type because it has no instance, so we assume it's a u8\n // it may not be, but we don't care because regardless of a vector's type,\n // a zero-length vector is serialized to a single byte value: 0\n if (!isU8 && this.values[0] !== undefined) {\n throw new Error(\"Script function arguments only accept u8 vectors\");\n }\n serializer.serializeU32AsUleb128(ScriptTransactionArgumentVariants.U8Vector);\n serializer.serialize(this);\n }\n\n /**\n * Factory method to generate a MoveVector of U8s from an array of numbers.\n *\n * @example\n * const v = MoveVector.U8([1, 2, 3, 4]);\n * @params values: an array of `numbers` to convert to U8s\n * @returns a `MoveVector<U8>`\n */\n static U8(values: Array<number> | HexInput): MoveVector<U8> {\n let numbers: Array<number>;\n\n if (Array.isArray(values) && typeof values[0] === \"number\") {\n numbers = values;\n } else if (typeof values === \"string\") {\n const hex = Hex.fromHexInput(values);\n numbers = Array.from(hex.toUint8Array());\n } else if (values instanceof Uint8Array) {\n numbers = Array.from(values);\n } else {\n throw new Error(\"Invalid input type\");\n }\n\n return new MoveVector<U8>(numbers.map((v) => new U8(v)));\n }\n\n /**\n * Factory method to generate a MoveVector of U16s from an array of numbers.\n *\n * @example\n * const v = MoveVector.U16([1, 2, 3, 4]);\n * @params values: an array of `numbers` to convert to U16s\n * @returns a `MoveVector<U16>`\n */\n static U16(values: Array<number>): MoveVector<U16> {\n return new MoveVector<U16>(values.map((v) => new U16(v)));\n }\n\n /**\n * Factory method to generate a MoveVector of U32s from an array of numbers.\n *\n * @example\n * const v = MoveVector.U32([1, 2, 3, 4]);\n * @params values: an array of `numbers` to convert to U32s\n * @returns a `MoveVector<U32>`\n */\n static U32(values: Array<number>): MoveVector<U32> {\n return new MoveVector<U32>(values.map((v) => new U32(v)));\n }\n\n /**\n * Factory method to generate a MoveVector of U64s from an array of numbers or bigints.\n *\n * @example\n * const v = MoveVector.U64([1, 2, 3, 4]);\n * @params values: an array of numbers of type `number | bigint` to convert to U64s\n * @returns a `MoveVector<U64>`\n */\n static U64(values: Array<AnyNumber>): MoveVector<U64> {\n return new MoveVector<U64>(values.map((v) => new U64(v)));\n }\n\n /**\n * Factory method to generate a MoveVector of U128s from an array of numbers or bigints.\n *\n * @example\n * const v = MoveVector.U128([1, 2, 3, 4]);\n * @params values: an array of numbers of type `number | bigint` to convert to U128s\n * @returns a `MoveVector<U128>`\n */\n static U128(values: Array<AnyNumber>): MoveVector<U128> {\n return new MoveVector<U128>(values.map((v) => new U128(v)));\n }\n\n /**\n * Factory method to generate a MoveVector of U256s from an array of numbers or bigints.\n *\n * @example\n * const v = MoveVector.U256([1, 2, 3, 4]);\n * @params values: an array of numbers of type `number | bigint` to convert to U256s\n * @returns a `MoveVector<U256>`\n */\n static U256(values: Array<AnyNumber>): MoveVector<U256> {\n return new MoveVector<U256>(values.map((v) => new U256(v)));\n }\n\n /**\n * Factory method to generate a MoveVector of Bools from an array of booleans.\n *\n * @example\n * const v = MoveVector.Bool([true, false, true, false]);\n * @params values: an array of `bools` to convert to Bools\n * @returns a `MoveVector<Bool>`\n */\n static Bool(values: Array<boolean>): MoveVector<Bool> {\n return new MoveVector<Bool>(values.map((v) => new Bool(v)));\n }\n\n /**\n * Factory method to generate a MoveVector of MoveStrings from an array of strings.\n *\n * @example\n * const v = MoveVector.MoveString([\"hello\", \"world\"]);\n * @params values: an array of `strings` to convert to MoveStrings\n * @returns a `MoveVector<MoveString>`\n */\n static MoveString(values: Array<string>): MoveVector<MoveString> {\n return new MoveVector<MoveString>(values.map((v) => new MoveString(v)));\n }\n\n serialize(serializer: Serializer): void {\n serializer.serializeVector(this.values);\n }\n\n /**\n * Deserialize a MoveVector of type T, specifically where T is a Serializable and Deserializable type.\n *\n * NOTE: This only works with a depth of one. Generics will not work.\n *\n * NOTE: This will not work with types that aren't of the Serializable class.\n *\n * If you're looking for a more flexible deserialization function, you can use the deserializeVector function\n * in the Deserializer class.\n *\n * @example\n * const vec = MoveVector.deserialize(deserializer, U64);\n * @params deserializer: the Deserializer instance to use, with bytes loaded into it already.\n * cls: the class to typecast the input values to, must be a Serializable and Deserializable type.\n * @returns a MoveVector of the corresponding class T\n * *\n */\n static deserialize<T extends Serializable & EntryFunctionArgument>(\n deserializer: Deserializer,\n cls: Deserializable<T>,\n ): MoveVector<T> {\n const length = deserializer.deserializeUleb128AsU32();\n const values = new Array<T>();\n for (let i = 0; i < length; i += 1) {\n values.push(cls.deserialize(deserializer));\n }\n return new MoveVector(values);\n }\n}\n\nexport class MoveString extends Serializable implements TransactionArgument {\n public value: string;\n\n constructor(value: string) {\n super();\n this.value = value;\n }\n\n serialize(serializer: Serializer): void {\n serializer.serializeStr(this.value);\n }\n\n serializeForEntryFunction(serializer: Serializer): void {\n const bcsBytes = this.bcsToBytes();\n serializer.serializeBytes(bcsBytes);\n }\n\n serializeForScriptFunction(serializer: Serializer): void {\n // Serialize the string as a fixed byte string, i.e., without the length prefix\n const fixedStringBytes = this.bcsToBytes().slice(1);\n // Put those bytes into a vector<u8> and serialize it as a script function argument\n const vectorU8 = MoveVector.U8(fixedStringBytes);\n vectorU8.serializeForScriptFunction(serializer);\n }\n\n static deserialize(deserializer: Deserializer): MoveString {\n return new MoveString(deserializer.deserializeStr());\n }\n}\n\nexport class MoveOption<T extends Serializable & EntryFunctionArgument>\n extends Serializable\n implements EntryFunctionArgument\n{\n private vec: MoveVector<T>;\n\n public readonly value?: T;\n\n constructor(value?: T | null) {\n super();\n if (typeof value !== \"undefined\" && value !== null) {\n this.vec = new MoveVector([value]);\n } else {\n this.vec = new MoveVector([]);\n }\n\n [this.value] = this.vec.values;\n }\n\n serializeForEntryFunction(serializer: Serializer): void {\n const bcsBytes = this.bcsToBytes();\n serializer.serializeBytes(bcsBytes);\n }\n\n /**\n * Retrieves the inner value of the MoveOption.\n *\n * This method is inspired by Rust's `Option<T>.unwrap()`.\n * In Rust, attempting to unwrap a `None` value results in a panic.\n *\n * Similarly, this method will throw an error if the value is not present.\n *\n * @example\n * const option = new MoveOption<Bool>(new Bool(true));\n * const value = option.unwrap(); // Returns the Bool instance\n *\n * @throws {Error} Throws an error if the MoveOption does not contain a value.\n *\n * @returns {T} The contained value if present.\n */\n unwrap(): T {\n if (!this.isSome()) {\n throw new Error(\"Called unwrap on a MoveOption with no value\");\n } else {\n return this.vec.values[0];\n }\n }\n\n // Check if the MoveOption has a value.\n isSome(): boolean {\n return this.vec.values.length === 1;\n }\n\n serialize(serializer: Serializer): void {\n // serialize 0 or 1\n // if 1, serialize the value\n this.vec.serialize(serializer);\n }\n\n /**\n * Factory method to generate a MoveOption<U8> from a `number` or `undefined`.\n *\n * @example\n * MoveOption.U8(1).isSome() === true;\n * MoveOption.U8().isSome() === false;\n * MoveOption.U8(undefined).isSome() === false;\n * @params value: the value used to fill the MoveOption. If `value` is undefined\n * the resulting MoveOption's .isSome() method will return false.\n * @returns a MoveOption<U8> with an inner value `value`\n */\n static U8(value?: number | null): MoveOption<U8> {\n return new MoveOption<U8>(value !== null && value !== undefined ? new U8(value) : undefined);\n }\n\n /**\n * Factory method to generate a MoveOption<U16> from a `number` or `undefined`.\n *\n * @example\n * MoveOption.U16(1).isSome() === true;\n * MoveOption.U16().isSome() === false;\n * MoveOption.U16(undefined).isSome() === false;\n * @params value: the value used to fill the MoveOption. If `value` is undefined\n * the resulting MoveOption's .isSome() method will return false.\n * @returns a MoveOption<U16> with an inner value `value`\n */\n static U16(value?: number | null): MoveOption<U16> {\n return new MoveOption<U16>(value !== null && value !== undefined ? new U16(value) : undefined);\n }\n\n /**\n * Factory method to generate a MoveOption<U32> from a `number` or `undefined`.\n *\n * @example\n * MoveOption.U32(1).isSome() === true;\n * MoveOption.U32().isSome() === false;\n * MoveOption.U32(undefined).isSome() === false;\n * @params value: the value used to fill the MoveOption. If `value` is undefined\n * the resulting MoveOption's .isSome() method will return false.\n * @returns a MoveOption<U32> with an inner value `value`\n */\n static U32(value?: number | null): MoveOption<U32> {\n return new MoveOption<U32>(value !== null && value !== undefined ? new U32(value) : undefined);\n }\n\n /**\n * Factory method to generate a MoveOption<U64> from a `number` or a `bigint` or `undefined`.\n *\n * @example\n * MoveOption.U64(1).isSome() === true;\n * MoveOption.U64().isSome() === false;\n * MoveOption.U64(undefined).isSome() === false;\n * @params value: the value used to fill the MoveOption. If `value` is undefined\n * the resulting MoveOption's .isSome() method will return false.\n * @returns a MoveOption<U64> with an inner value `value`\n */\n static U64(value?: AnyNumber | null): MoveOption<U64> {\n return new MoveOption<U64>(value !== null && value !== undefined ? new U64(value) : undefined);\n }\n\n /**\n * Factory method to generate a MoveOption<U128> from a `number` or a `bigint` or `undefined`.\n *\n * @example\n * MoveOption.U128(1).isSome() === true;\n * MoveOption.U128().isSome() === false;\n * MoveOption.U128(undefined).isSome() === false;\n * @params value: the value used to fill the MoveOption. If `value` is undefined\n * the resulting MoveOption's .isSome() method will return false.\n * @returns a MoveOption<U128> with an inner value `value`\n */\n static U128(value?: AnyNumber | null): MoveOption<U128> {\n return new MoveOption<U128>(value !== null && value !== undefined ? new U128(value) : undefined);\n }\n\n /**\n * Factory method to generate a MoveOption<U256> from a `number` or a `bigint` or `undefined`.\n *\n * @example\n * MoveOption.U256(1).isSome() === true;\n * MoveOption.U256().isSome() === false;\n * MoveOption.U256(undefined).isSome() === false;\n * @params value: the value used to fill the MoveOption. If `value` is undefined\n * the resulting MoveOption's .isSome() method will return false.\n * @returns a MoveOption<U256> with an inner value `value`\n */\n static U256(value?: AnyNumber | null): MoveOption<U256> {\n return new MoveOption<U256>(value !== null && value !== undefined ? new U256(value) : undefined);\n }\n\n /**\n * Factory method to generate a MoveOption<Bool> from a `boolean` or `undefined`.\n *\n * @example\n * MoveOption.Bool(true).isSome() === true;\n * MoveOption.Bool().isSome() === false;\n * MoveOption.Bool(undefined).isSome() === false;\n * @params value: the value used to fill the MoveOption. If `value` is undefined\n * the resulting MoveOption's .isSome() method will return false.\n * @returns a MoveOption<Bool> with an inner value `value`\n */\n static Bool(value?: boolean | null): MoveOption<Bool> {\n return new MoveOption<Bool>(value !== null && value !== undefined ? new Bool(value) : undefined);\n }\n\n /**\n * Factory method to generate a MoveOption<MoveString> from a `string` or `undefined`.\n *\n * @example\n * MoveOption.MoveString(\"hello\").isSome() === true;\n * MoveOption.MoveString(\"\").isSome() === true;\n * MoveOption.MoveString().isSome() === false;\n * MoveOption.MoveString(undefined).isSome() === false;\n * @params value: the value used to fill the MoveOption. If `value` is undefined\n * the resulting MoveOption's .isSome() method will return false.\n * @returns a MoveOption<MoveString> with an inner value `value`\n */\n static MoveString(value?: string | null): MoveOption<MoveString> {\n return new MoveOption<MoveString>(value !== null && value !== undefined ? new MoveString(value) : undefined);\n }\n\n static deserialize<U extends Serializable & EntryFunctionArgument>(\n deserializer: Deserializer,\n cls: Deserializable<U>,\n ): MoveOption<U> {\n const vector = MoveVector.deserialize(deserializer, cls);\n return new MoveOption(vector.values[0]);\n }\n}\n"],"mappings":"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","names":["MoveVector","Serializable","values","serializer","bcsBytes","U8","numbers","hex","Hex","v","U16","U32","U64","U128","U256","Bool","MoveString","deserializer","cls","length","i","value","fixedStringBytes","MoveOption","vector"]}
1
+ {"version":3,"sources":["../../src/bcs/serializable/moveStructs.ts"],"sourcesContent":["// Copyright © Aptos Foundation\n// SPDX-License-Identifier: Apache-2.0\n\nimport { Bool, U128, U16, U256, U32, U64, U8 } from \"./movePrimitives\";\nimport { Serializable, Serializer } from \"../serializer\";\nimport { Deserializable, Deserializer } from \"../deserializer\";\nimport { AnyNumber, HexInput, ScriptTransactionArgumentVariants } from \"../../types\";\nimport { Hex } from \"../../core/hex\";\nimport { EntryFunctionArgument, TransactionArgument } from \"../../transactions/instances/transactionArgument\";\n\n/**\n * This class is the Aptos Typescript SDK representation of a Move `vector<T>`,\n * where `T` represents either a primitive type (`bool`, `u8`, `u64`, ...)\n * or a BCS-serializable struct itself.\n *\n * It is a BCS-serializable, array-like type that contains an array of values of type `T`,\n * where `T` is a class that implements `Serializable`.\n *\n * The purpose of this class is to facilitate easy construction of BCS-serializable\n * Move `vector<T>` types.\n *\n * @example\n * // in Move: `vector<u8> [1, 2, 3, 4];`\n * const vecOfU8s = new MoveVector<U8>([new U8(1), new U8(2), new U8(3), new U8(4)]);\n * // in Move: `std::bcs::to_bytes(vector<u8> [1, 2, 3, 4]);`\n * const bcsBytes = vecOfU8s.toUint8Array();\n *\n * // vector<vector<u8>> [ vector<u8> [1], vector<u8> [1, 2, 3, 4], vector<u8> [5, 6, 7, 8] ];\n * const vecOfVecs = new MoveVector<MoveVector<U8>>([\n * new MoveVector<U8>([new U8(1)]),\n * MoveVector.U8([1, 2, 3, 4]),\n * MoveVector.U8([5, 6, 7, 8]),\n * ]);\n *\n * // vector<Option<u8>> [ std::option::some<u8>(1), std::option::some<u8>(2) ];\n * const vecOfOptionU8s = new MoveVector<MoveOption<U8>>([\n * MoveOption.U8(1),\n * MoveOption.U8(2),\n * ]);\n *\n * // vector<MoveString> [ std::string::utf8(b\"hello\"), std::string::utf8(b\"world\") ];\n * const vecOfStrings = new MoveVector([new MoveString(\"hello\"), new MoveString(\"world\")]);\n * const vecOfStrings2 = MoveVector.MoveString([\"hello\", \"world\"]);\n *\n * @params\n * values: an Array<T> of values where T is a class that implements Serializable\n * @returns a `MoveVector<T>` with the values `values`\n */\nexport class MoveVector<T extends Serializable & EntryFunctionArgument>\n extends Serializable\n implements TransactionArgument\n{\n public values: Array<T>;\n\n constructor(values: Array<T>) {\n super();\n this.values = values;\n }\n\n serializeForEntryFunction(serializer: Serializer): void {\n const bcsBytes = this.bcsToBytes();\n serializer.serializeBytes(bcsBytes);\n }\n\n /**\n * NOTE: This function will only work when the inner values in the `MoveVector` are `U8`s.\n * @param serializer\n */\n serializeForScriptFunction(serializer: Serializer): void {\n // runtime check to ensure that you can't serialize anything other than vector<u8>\n const isU8 = this.values[0] instanceof U8;\n // if the inner array is length 0, we can't check the type because it has no instance, so we assume it's a u8\n // it may not be, but we don't care because regardless of a vector's type,\n // a zero-length vector is serialized to a single byte value: 0\n if (!isU8 && this.values[0] !== undefined) {\n throw new Error(\"Script function arguments only accept u8 vectors\");\n }\n serializer.serializeU32AsUleb128(ScriptTransactionArgumentVariants.U8Vector);\n serializer.serialize(this);\n }\n\n /**\n * Factory method to generate a MoveVector of U8s from an array of numbers.\n *\n * @example\n * const v = MoveVector.U8([1, 2, 3, 4]);\n * @params values: an array of `numbers` to convert to U8s\n * @returns a `MoveVector<U8>`\n */\n static U8(values: Array<number> | HexInput): MoveVector<U8> {\n let numbers: Array<number>;\n\n if (Array.isArray(values) && typeof values[0] === \"number\") {\n numbers = values;\n } else if (typeof values === \"string\") {\n const hex = Hex.fromHexInput(values);\n numbers = Array.from(hex.toUint8Array());\n } else if (values instanceof Uint8Array) {\n numbers = Array.from(values);\n } else {\n throw new Error(\"Invalid input type\");\n }\n\n return new MoveVector<U8>(numbers.map((v) => new U8(v)));\n }\n\n /**\n * Factory method to generate a MoveVector of U16s from an array of numbers.\n *\n * @example\n * const v = MoveVector.U16([1, 2, 3, 4]);\n * @params values: an array of `numbers` to convert to U16s\n * @returns a `MoveVector<U16>`\n */\n static U16(values: Array<number>): MoveVector<U16> {\n return new MoveVector<U16>(values.map((v) => new U16(v)));\n }\n\n /**\n * Factory method to generate a MoveVector of U32s from an array of numbers.\n *\n * @example\n * const v = MoveVector.U32([1, 2, 3, 4]);\n * @params values: an array of `numbers` to convert to U32s\n * @returns a `MoveVector<U32>`\n */\n static U32(values: Array<number>): MoveVector<U32> {\n return new MoveVector<U32>(values.map((v) => new U32(v)));\n }\n\n /**\n * Factory method to generate a MoveVector of U64s from an array of numbers or bigints.\n *\n * @example\n * const v = MoveVector.U64([1, 2, 3, 4]);\n * @params values: an array of numbers of type `number | bigint` to convert to U64s\n * @returns a `MoveVector<U64>`\n */\n static U64(values: Array<AnyNumber>): MoveVector<U64> {\n return new MoveVector<U64>(values.map((v) => new U64(v)));\n }\n\n /**\n * Factory method to generate a MoveVector of U128s from an array of numbers or bigints.\n *\n * @example\n * const v = MoveVector.U128([1, 2, 3, 4]);\n * @params values: an array of numbers of type `number | bigint` to convert to U128s\n * @returns a `MoveVector<U128>`\n */\n static U128(values: Array<AnyNumber>): MoveVector<U128> {\n return new MoveVector<U128>(values.map((v) => new U128(v)));\n }\n\n /**\n * Factory method to generate a MoveVector of U256s from an array of numbers or bigints.\n *\n * @example\n * const v = MoveVector.U256([1, 2, 3, 4]);\n * @params values: an array of numbers of type `number | bigint` to convert to U256s\n * @returns a `MoveVector<U256>`\n */\n static U256(values: Array<AnyNumber>): MoveVector<U256> {\n return new MoveVector<U256>(values.map((v) => new U256(v)));\n }\n\n /**\n * Factory method to generate a MoveVector of Bools from an array of booleans.\n *\n * @example\n * const v = MoveVector.Bool([true, false, true, false]);\n * @params values: an array of `bools` to convert to Bools\n * @returns a `MoveVector<Bool>`\n */\n static Bool(values: Array<boolean>): MoveVector<Bool> {\n return new MoveVector<Bool>(values.map((v) => new Bool(v)));\n }\n\n /**\n * Factory method to generate a MoveVector of MoveStrings from an array of strings.\n *\n * @example\n * const v = MoveVector.MoveString([\"hello\", \"world\"]);\n * @params values: an array of `strings` to convert to MoveStrings\n * @returns a `MoveVector<MoveString>`\n */\n static MoveString(values: Array<string>): MoveVector<MoveString> {\n return new MoveVector<MoveString>(values.map((v) => new MoveString(v)));\n }\n\n serialize(serializer: Serializer): void {\n serializer.serializeVector(this.values);\n }\n\n /**\n * Deserialize a MoveVector of type T, specifically where T is a Serializable and Deserializable type.\n *\n * NOTE: This only works with a depth of one. Generics will not work.\n *\n * NOTE: This will not work with types that aren't of the Serializable class.\n *\n * If you're looking for a more flexible deserialization function, you can use the deserializeVector function\n * in the Deserializer class.\n *\n * @example\n * const vec = MoveVector.deserialize(deserializer, U64);\n * @params deserializer: the Deserializer instance to use, with bytes loaded into it already.\n * cls: the class to typecast the input values to, must be a Serializable and Deserializable type.\n * @returns a MoveVector of the corresponding class T\n * *\n */\n static deserialize<T extends Serializable & EntryFunctionArgument>(\n deserializer: Deserializer,\n cls: Deserializable<T>,\n ): MoveVector<T> {\n const length = deserializer.deserializeUleb128AsU32();\n const values = new Array<T>();\n for (let i = 0; i < length; i += 1) {\n values.push(cls.deserialize(deserializer));\n }\n return new MoveVector(values);\n }\n}\n\nexport class MoveString extends Serializable implements TransactionArgument {\n public value: string;\n\n constructor(value: string) {\n super();\n this.value = value;\n }\n\n serialize(serializer: Serializer): void {\n serializer.serializeStr(this.value);\n }\n\n serializeForEntryFunction(serializer: Serializer): void {\n const bcsBytes = this.bcsToBytes();\n serializer.serializeBytes(bcsBytes);\n }\n\n serializeForScriptFunction(serializer: Serializer): void {\n // Serialize the string as a fixed byte string, i.e., without the length prefix\n const fixedStringBytes = this.bcsToBytes().slice(1);\n // Put those bytes into a vector<u8> and serialize it as a script function argument\n const vectorU8 = MoveVector.U8(fixedStringBytes);\n vectorU8.serializeForScriptFunction(serializer);\n }\n\n static deserialize(deserializer: Deserializer): MoveString {\n return new MoveString(deserializer.deserializeStr());\n }\n}\n\nexport class MoveOption<T extends Serializable & EntryFunctionArgument>\n extends Serializable\n implements EntryFunctionArgument\n{\n private vec: MoveVector<T>;\n\n public readonly value?: T;\n\n constructor(value?: T | null) {\n super();\n if (typeof value !== \"undefined\" && value !== null) {\n this.vec = new MoveVector([value]);\n } else {\n this.vec = new MoveVector([]);\n }\n\n [this.value] = this.vec.values;\n }\n\n serializeForEntryFunction(serializer: Serializer): void {\n const bcsBytes = this.bcsToBytes();\n serializer.serializeBytes(bcsBytes);\n }\n\n /**\n * Retrieves the inner value of the MoveOption.\n *\n * This method is inspired by Rust's `Option<T>.unwrap()`.\n * In Rust, attempting to unwrap a `None` value results in a panic.\n *\n * Similarly, this method will throw an error if the value is not present.\n *\n * @example\n * const option = new MoveOption<Bool>(new Bool(true));\n * const value = option.unwrap(); // Returns the Bool instance\n *\n * @throws {Error} Throws an error if the MoveOption does not contain a value.\n *\n * @returns {T} The contained value if present.\n */\n unwrap(): T {\n if (!this.isSome()) {\n throw new Error(\"Called unwrap on a MoveOption with no value\");\n } else {\n return this.vec.values[0];\n }\n }\n\n // Check if the MoveOption has a value.\n isSome(): boolean {\n return this.vec.values.length === 1;\n }\n\n serialize(serializer: Serializer): void {\n // serialize 0 or 1\n // if 1, serialize the value\n this.vec.serialize(serializer);\n }\n\n /**\n * Factory method to generate a MoveOption<U8> from a `number` or `undefined`.\n *\n * @example\n * MoveOption.U8(1).isSome() === true;\n * MoveOption.U8().isSome() === false;\n * MoveOption.U8(undefined).isSome() === false;\n * @params value: the value used to fill the MoveOption. If `value` is undefined\n * the resulting MoveOption's .isSome() method will return false.\n * @returns a MoveOption<U8> with an inner value `value`\n */\n static U8(value?: number | null): MoveOption<U8> {\n return new MoveOption<U8>(value !== null && value !== undefined ? new U8(value) : undefined);\n }\n\n /**\n * Factory method to generate a MoveOption<U16> from a `number` or `undefined`.\n *\n * @example\n * MoveOption.U16(1).isSome() === true;\n * MoveOption.U16().isSome() === false;\n * MoveOption.U16(undefined).isSome() === false;\n * @params value: the value used to fill the MoveOption. If `value` is undefined\n * the resulting MoveOption's .isSome() method will return false.\n * @returns a MoveOption<U16> with an inner value `value`\n */\n static U16(value?: number | null): MoveOption<U16> {\n return new MoveOption<U16>(value !== null && value !== undefined ? new U16(value) : undefined);\n }\n\n /**\n * Factory method to generate a MoveOption<U32> from a `number` or `undefined`.\n *\n * @example\n * MoveOption.U32(1).isSome() === true;\n * MoveOption.U32().isSome() === false;\n * MoveOption.U32(undefined).isSome() === false;\n * @params value: the value used to fill the MoveOption. If `value` is undefined\n * the resulting MoveOption's .isSome() method will return false.\n * @returns a MoveOption<U32> with an inner value `value`\n */\n static U32(value?: number | null): MoveOption<U32> {\n return new MoveOption<U32>(value !== null && value !== undefined ? new U32(value) : undefined);\n }\n\n /**\n * Factory method to generate a MoveOption<U64> from a `number` or a `bigint` or `undefined`.\n *\n * @example\n * MoveOption.U64(1).isSome() === true;\n * MoveOption.U64().isSome() === false;\n * MoveOption.U64(undefined).isSome() === false;\n * @params value: the value used to fill the MoveOption. If `value` is undefined\n * the resulting MoveOption's .isSome() method will return false.\n * @returns a MoveOption<U64> with an inner value `value`\n */\n static U64(value?: AnyNumber | null): MoveOption<U64> {\n return new MoveOption<U64>(value !== null && value !== undefined ? new U64(value) : undefined);\n }\n\n /**\n * Factory method to generate a MoveOption<U128> from a `number` or a `bigint` or `undefined`.\n *\n * @example\n * MoveOption.U128(1).isSome() === true;\n * MoveOption.U128().isSome() === false;\n * MoveOption.U128(undefined).isSome() === false;\n * @params value: the value used to fill the MoveOption. If `value` is undefined\n * the resulting MoveOption's .isSome() method will return false.\n * @returns a MoveOption<U128> with an inner value `value`\n */\n static U128(value?: AnyNumber | null): MoveOption<U128> {\n return new MoveOption<U128>(value !== null && value !== undefined ? new U128(value) : undefined);\n }\n\n /**\n * Factory method to generate a MoveOption<U256> from a `number` or a `bigint` or `undefined`.\n *\n * @example\n * MoveOption.U256(1).isSome() === true;\n * MoveOption.U256().isSome() === false;\n * MoveOption.U256(undefined).isSome() === false;\n * @params value: the value used to fill the MoveOption. If `value` is undefined\n * the resulting MoveOption's .isSome() method will return false.\n * @returns a MoveOption<U256> with an inner value `value`\n */\n static U256(value?: AnyNumber | null): MoveOption<U256> {\n return new MoveOption<U256>(value !== null && value !== undefined ? new U256(value) : undefined);\n }\n\n /**\n * Factory method to generate a MoveOption<Bool> from a `boolean` or `undefined`.\n *\n * @example\n * MoveOption.Bool(true).isSome() === true;\n * MoveOption.Bool().isSome() === false;\n * MoveOption.Bool(undefined).isSome() === false;\n * @params value: the value used to fill the MoveOption. If `value` is undefined\n * the resulting MoveOption's .isSome() method will return false.\n * @returns a MoveOption<Bool> with an inner value `value`\n */\n static Bool(value?: boolean | null): MoveOption<Bool> {\n return new MoveOption<Bool>(value !== null && value !== undefined ? new Bool(value) : undefined);\n }\n\n /**\n * Factory method to generate a MoveOption<MoveString> from a `string` or `undefined`.\n *\n * @example\n * MoveOption.MoveString(\"hello\").isSome() === true;\n * MoveOption.MoveString(\"\").isSome() === true;\n * MoveOption.MoveString().isSome() === false;\n * MoveOption.MoveString(undefined).isSome() === false;\n * @params value: the value used to fill the MoveOption. If `value` is undefined\n * the resulting MoveOption's .isSome() method will return false.\n * @returns a MoveOption<MoveString> with an inner value `value`\n */\n static MoveString(value?: string | null): MoveOption<MoveString> {\n return new MoveOption<MoveString>(value !== null && value !== undefined ? new MoveString(value) : undefined);\n }\n\n static deserialize<U extends Serializable & EntryFunctionArgument>(\n deserializer: Deserializer,\n cls: Deserializable<U>,\n ): MoveOption<U> {\n const vector = MoveVector.deserialize(deserializer, cls);\n return new MoveOption(vector.values[0]);\n }\n}\n"],"mappings":"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","names":["MoveVector","_MoveVector","Serializable","values","serializer","bcsBytes","U8","numbers","hex","Hex","v","U16","U32","U64","U128","U256","Bool","MoveString","deserializer","cls","length","i","_MoveString","value","fixedStringBytes","MoveOption","_MoveOption","vector"]}
@@ -1,2 +1,2 @@
1
- import{a as o,b as n,c as s,d as t,e as r,f as i,g as a,i as g}from"./chunk-MIBLZSNS.mjs";var c=class{constructor(e){this.config=e}async getLedgerInfo(){return o({aptosConfig:this.config})}async getChainId(){return(await this.getLedgerInfo()).chain_id}async getBlockByVersion(e){return n({aptosConfig:this.config,...e})}async getBlockByHeight(e){return s({aptosConfig:this.config,...e})}async getTableItem(e){return t({aptosConfig:this.config,...e})}async view(e){return r({aptosConfig:this.config,...e})}async getChainTopUserTransactions(e){return i({aptosConfig:this.config,...e})}async queryIndexer(e){return a({aptosConfig:this.config,...e})}async getIndexerLastSuccessVersion(){return g({aptosConfig:this.config})}};export{c as a};
2
- //# sourceMappingURL=chunk-KYWYIK5P.mjs.map
1
+ import{a as o,b as n,c as s,d as t,e as r,f as i,g as a,i as g}from"./chunk-7MNEEVXY.mjs";var c=class{constructor(e){this.config=e}async getLedgerInfo(){return o({aptosConfig:this.config})}async getChainId(){return(await this.getLedgerInfo()).chain_id}async getBlockByVersion(e){return n({aptosConfig:this.config,...e})}async getBlockByHeight(e){return s({aptosConfig:this.config,...e})}async getTableItem(e){return t({aptosConfig:this.config,...e})}async view(e){return r({aptosConfig:this.config,...e})}async getChainTopUserTransactions(e){return i({aptosConfig:this.config,...e})}async queryIndexer(e){return a({aptosConfig:this.config,...e})}async getIndexerLastSuccessVersion(){return g({aptosConfig:this.config})}};export{c as a};
2
+ //# sourceMappingURL=chunk-4RVIA63I.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/api/general.ts"],"sourcesContent":["// Copyright © Aptos Foundation\n// SPDX-License-Identifier: Apache-2.0\n\nimport { AptosConfig } from \"./aptosConfig\";\nimport {\n getBlockByHeight,\n getBlockByVersion,\n getChainTopUserTransactions,\n getIndexerLastSuccessVersion,\n getLedgerInfo,\n getTableItem,\n queryIndexer,\n view,\n} from \"../internal/general\";\nimport {\n AnyNumber,\n Block,\n GetChainTopUserTransactionsResponse,\n GraphqlQuery,\n LedgerInfo,\n LedgerVersion,\n MoveValue,\n TableItemRequest,\n InputViewRequestData,\n} from \"../types\";\n\n/**\n * A class to query all `General` Aptos related queries\n */\nexport class General {\n readonly config: AptosConfig;\n\n constructor(config: AptosConfig) {\n this.config = config;\n }\n\n /**\n * Queries for the Aptos ledger info\n *\n * @returns Aptos Ledger Info\n *\n * @example An example of the returned data\n * ```\n * {\n * \"chain_id\": 4,\n * \"epoch\": \"8\",\n * \"ledger_version\": \"714\",\n * \"oldest_ledger_version\": \"0\",\n * \"ledger_timestamp\": \"1694695496521775\",\n * \"node_role\": \"validator\",\n * \"oldest_block_height\": \"0\",\n * \"block_height\": \"359\",\n * \"git_hash\": \"c82193f36f4e185fed9f68c4ad21f6c6dd390c6e\"\n * }\n * ```\n */\n async getLedgerInfo(): Promise<LedgerInfo> {\n return getLedgerInfo({ aptosConfig: this.config });\n }\n\n /**\n * Queries for the chain id\n *\n * @returns The chain id\n */\n async getChainId(): Promise<number> {\n const result = await this.getLedgerInfo();\n return result.chain_id;\n }\n\n /**\n * Queries for block by transaction version\n *\n * @param args.ledgerVersion Ledger version to lookup block information for\n * @param args.options.withTransactions If set to true, include all transactions in the block\n *\n * @returns Block information with optional transactions\n */\n async getBlockByVersion(args: {\n ledgerVersion: AnyNumber;\n options?: { withTransactions?: boolean };\n }): Promise<Block> {\n return getBlockByVersion({\n aptosConfig: this.config,\n ...args,\n });\n }\n\n /**\n * Get block by block height\n *\n * @param args.blockHeight Block height to lookup. Starts at 0\n * @param args.options.withTransactions If set to true, include all transactions in the block\n *\n * @returns Block with optional transactions\n */\n async getBlockByHeight(args: { blockHeight: AnyNumber; options?: { withTransactions?: boolean } }): Promise<Block> {\n return getBlockByHeight({ aptosConfig: this.config, ...args });\n }\n\n /**\n * Queries for a table item for a table identified by the handle and the key for the item.\n * Key and value types need to be passed in to help with key serialization and value deserialization.\n * @param args.handle A pointer to where that table is stored\n * @param args.data Object that describes table item\n * @param args.options.ledgerVersion The ledger version to query, if not provided it will get the latest version\n *\n * @example https://fullnode.devnet.aptoslabs.com/v1/accounts/0x1/resource/0x1::coin::CoinInfo%3C0x1::aptos_coin::AptosCoin%3E\n * {\n * data.key_type = \"address\" // Move type of table key\n * data.value_type = \"u128\" // Move type of table value\n * data.key = \"0x619dc29a0aac8fa146714058e8dd6d2d0f3bdf5f6331907bf91f3acd81e6935\" // Value of table key\n * }\n *\n * @returns Table item value rendered in JSON\n */\n async getTableItem<T>(args: { handle: string; data: TableItemRequest; options?: LedgerVersion }): Promise<T> {\n return getTableItem<T>({ aptosConfig: this.config, ...args });\n }\n\n /**\n * Queries for a Move view function\n * @param args.payload Payload for the view function\n * @param args.options.ledgerVersion The ledger version to query, if not provided it will get the latest version\n * @example\n * `\n * const payload: ViewRequest = {\n * function: \"0x1::coin::balance\",\n * typeArguments: [\"0x1::aptos_coin::AptosCoin\"],\n * functionArguments: [accountAddress],\n * };\n * `\n *\n * @returns an array of Move values\n */\n async view<T extends Array<MoveValue>>(args: { payload: InputViewRequestData; options?: LedgerVersion }): Promise<T> {\n return view<T>({ aptosConfig: this.config, ...args });\n }\n\n /**\n * Queries top user transactions\n *\n * @param args.limit The number of transactions to return\n * @returns GetChainTopUserTransactionsResponse\n */\n async getChainTopUserTransactions(args: { limit: number }): Promise<GetChainTopUserTransactionsResponse> {\n return getChainTopUserTransactions({\n aptosConfig: this.config,\n ...args,\n });\n }\n\n /**\n * A generic function for retrieving data from Aptos Indexer.\n * For more detailed queries specification see\n * {@link https://cloud.hasura.io/public/graphiql?endpoint=https://indexer.mainnet.aptoslabs.com/v1/graphql}\n *\n * @param args.query.query A GraphQL query\n * @param args.query.variables The variables for the query\n * @example\n * ```\n * {\n * query: `query MyQuery {\n ledger_infos {\n chain_id\n }\n }`;\n * }\n * ```\n *\n * @return The provided T type\n */\n async queryIndexer<T extends {}>(args: { query: GraphqlQuery }): Promise<T> {\n return queryIndexer<T>({\n aptosConfig: this.config,\n ...args,\n });\n }\n\n /**\n * Queries for the last successful indexer version\n *\n * This is useful to tell what ledger version the indexer is updated to, as it can be behind the full nodes.\n */\n async getIndexerLastSuccessVersion(): Promise<number> {\n return getIndexerLastSuccessVersion({ aptosConfig: this.config });\n }\n}\n"],"mappings":"0FA6BO,IAAMA,EAAN,KAAc,CAGnB,YAAYC,EAAqB,CAC/B,KAAK,OAASA,CAChB,CAsBA,MAAM,eAAqC,CACzC,OAAOC,EAAc,CAAE,YAAa,KAAK,MAAO,CAAC,CACnD,CAOA,MAAM,YAA8B,CAElC,OADe,MAAM,KAAK,cAAc,GAC1B,QAChB,CAUA,MAAM,kBAAkBC,EAGL,CACjB,OAAOC,EAAkB,CACvB,YAAa,KAAK,OAClB,GAAGD,CACL,CAAC,CACH,CAUA,MAAM,iBAAiBA,EAA4F,CACjH,OAAOE,EAAiB,CAAE,YAAa,KAAK,OAAQ,GAAGF,CAAK,CAAC,CAC/D,CAkBA,MAAM,aAAgBA,EAAuF,CAC3G,OAAOG,EAAgB,CAAE,YAAa,KAAK,OAAQ,GAAGH,CAAK,CAAC,CAC9D,CAiBA,MAAM,KAAiCA,EAA8E,CACnH,OAAOI,EAAQ,CAAE,YAAa,KAAK,OAAQ,GAAGJ,CAAK,CAAC,CACtD,CAQA,MAAM,4BAA4BA,EAAuE,CACvG,OAAOK,EAA4B,CACjC,YAAa,KAAK,OAClB,GAAGL,CACL,CAAC,CACH,CAsBA,MAAM,aAA2BA,EAA2C,CAC1E,OAAOM,EAAgB,CACrB,YAAa,KAAK,OAClB,GAAGN,CACL,CAAC,CACH,CAOA,MAAM,8BAAgD,CACpD,OAAOO,EAA6B,CAAE,YAAa,KAAK,MAAO,CAAC,CAClE,CACF","names":["General","config","getLedgerInfo","args","getBlockByVersion","getBlockByHeight","getTableItem","view","getChainTopUserTransactions","queryIndexer","getIndexerLastSuccessVersion"]}
@@ -0,0 +1,2 @@
1
+ import{a as h,b as d,c as p}from"./chunk-EFIYW4WK.mjs";import{e as g,j as m}from"./chunk-LR65XHSF.mjs";import{b as a}from"./chunk-TIH6ARYP.mjs";import{sha3_256 as H}from"@noble/hashes/sha3";import{secp256k1 as o}from"@noble/curves/secp256k1";import{HDKey as z}from"@scure/bip32";var i=class i extends h{constructor(e){super();let t=a.fromHexInput(e);if(t.toUint8Array().length!==i.LENGTH)throw new Error(`PublicKey length should be ${i.LENGTH}`);this.key=t}toUint8Array(){return this.key.toUint8Array()}toString(){return this.key.toString()}verifySignature(e){let{message:t,signature:s}=e,y=a.fromHexInput(t).toUint8Array(),f=H(y),v=s.toUint8Array();return o.verify(v,f,this.toUint8Array())}serialize(e){e.serializeBytes(this.key.toUint8Array())}static deserialize(e){let t=e.deserializeBytes();return new i(t)}static load(e){let t=e.deserializeBytes();return new i(t)}};i.LENGTH=65;var l=i,r=class r extends d{constructor(e){super();let t=a.fromHexInput(e);if(t.toUint8Array().length!==r.LENGTH)throw new Error(`PrivateKey length should be ${r.LENGTH}`);this.key=t}toUint8Array(){return this.key.toUint8Array()}toString(){return this.key.toString()}sign(e){let t=a.fromHexInput(e),s=H(t.toUint8Array()),y=o.sign(s,this.key.toUint8Array());return new u(y.toCompactRawBytes())}serialize(e){e.serializeBytes(this.toUint8Array())}static deserialize(e){let t=e.deserializeBytes();return new r(t)}static generate(){let e=o.utils.randomPrivateKey();return new r(e)}publicKey(){let e=o.getPublicKey(this.key.toUint8Array(),!1);return new l(e)}static fromDerivationPath(e,t){if(!g(e))throw new Error(`Invalid derivation path ${e}`);return r.fromDerivationPathInner(e,m(t))}static fromDerivationPathInner(e,t){let{privateKey:s}=z.fromMasterSeed(t).derive(e);if(s===null)throw new Error("Invalid key");return new r(s)}};r.LENGTH=32;var x=r,n=class n extends p{constructor(e){super();let t=a.fromHexInput(e);if(t.toUint8Array().length!==n.LENGTH)throw new Error(`Signature length should be ${n.LENGTH}, recieved ${t.toUint8Array().length}`);this.data=t}toUint8Array(){return this.data.toUint8Array()}toString(){return this.data.toString()}serialize(e){e.serializeBytes(this.data.toUint8Array())}static deserialize(e){let t=e.deserializeBytes();return new n(t)}static load(e){let t=e.deserializeBytes();return new n(t)}};n.LENGTH=64;var u=n;export{l as a,x as b,u as c};
2
+ //# sourceMappingURL=chunk-62SCW5NH.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/core/crypto/secp256k1.ts"],"sourcesContent":["// Copyright © Aptos Foundation\n// SPDX-License-Identifier: Apache-2.0\n\nimport { sha3_256 } from \"@noble/hashes/sha3\";\nimport { secp256k1 } from \"@noble/curves/secp256k1\";\nimport { HDKey } from \"@scure/bip32\";\nimport { PrivateKey, PublicKey, Signature } from \"./asymmetricCrypto\";\nimport { Deserializer, Serializer } from \"../../bcs\";\nimport { Hex } from \"../hex\";\nimport { HexInput } from \"../../types\";\nimport { isValidBIP44Path, mnemonicToSeed } from \"./hdKey\";\n\n/**\n * Represents the Secp256k1 ecdsa public key\n *\n * Secp256k1 authentication key is represented in the SDK as `AnyPublicKey`.\n */\nexport class Secp256k1PublicKey extends PublicKey {\n // Secp256k1 ecdsa public keys contain a prefix indicating compression and two 32-byte coordinates.\n static readonly LENGTH: number = 65;\n\n // Hex value of the public key\n private readonly key: Hex;\n\n /**\n * Create a new PublicKey instance from a Uint8Array or String.\n *\n * @param hexInput A HexInput (string or Uint8Array)\n */\n constructor(hexInput: HexInput) {\n super();\n\n const hex = Hex.fromHexInput(hexInput);\n if (hex.toUint8Array().length !== Secp256k1PublicKey.LENGTH) {\n throw new Error(`PublicKey length should be ${Secp256k1PublicKey.LENGTH}`);\n }\n this.key = hex;\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.key.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.key.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: Secp256k1Signature }): boolean {\n const { message, signature } = args;\n const msgHex = Hex.fromHexInput(message).toUint8Array();\n const sha3Message = sha3_256(msgHex);\n const rawSignature = signature.toUint8Array();\n return secp256k1.verify(rawSignature, sha3Message, this.toUint8Array());\n }\n\n serialize(serializer: Serializer): void {\n serializer.serializeBytes(this.key.toUint8Array());\n }\n\n static deserialize(deserializer: Deserializer): Secp256k1PublicKey {\n const bytes = deserializer.deserializeBytes();\n return new Secp256k1PublicKey(bytes);\n }\n\n static load(deserializer: Deserializer): Secp256k1PublicKey {\n const bytes = deserializer.deserializeBytes();\n return new Secp256k1PublicKey(bytes);\n }\n}\n\n/**\n * A Secp256k1 ecdsa private key\n */\nexport class Secp256k1PrivateKey extends PrivateKey {\n /**\n * Length of Secp256k1 ecdsa private key\n */\n static readonly LENGTH: number = 32;\n\n /**\n * The private key bytes\n * @private\n */\n private readonly key: Hex;\n\n /**\n * Create a new PrivateKey instance from a Uint8Array or String.\n *\n * @param hexInput A HexInput (string or Uint8Array)\n */\n constructor(hexInput: HexInput) {\n super();\n\n const privateKeyHex = Hex.fromHexInput(hexInput);\n if (privateKeyHex.toUint8Array().length !== Secp256k1PrivateKey.LENGTH) {\n throw new Error(`PrivateKey length should be ${Secp256k1PrivateKey.LENGTH}`);\n }\n\n this.key = privateKeyHex;\n }\n\n /**\n * Get the private key in bytes (Uint8Array).\n *\n * @returns\n */\n toUint8Array(): Uint8Array {\n return this.key.toUint8Array();\n }\n\n /**\n * Get the private key as a hex string with the 0x prefix.\n *\n * @returns string representation of the private key\n */\n toString(): string {\n return this.key.toString();\n }\n\n /**\n * Sign the given message with the private key.\n *\n * @param message in HexInput format\n * @returns Signature\n */\n sign(message: HexInput): Secp256k1Signature {\n const msgHex = Hex.fromHexInput(message);\n const sha3Message = sha3_256(msgHex.toUint8Array());\n const signature = secp256k1.sign(sha3Message, this.key.toUint8Array());\n return new Secp256k1Signature(signature.toCompactRawBytes());\n }\n\n serialize(serializer: Serializer): void {\n serializer.serializeBytes(this.toUint8Array());\n }\n\n static deserialize(deserializer: Deserializer): Secp256k1PrivateKey {\n const bytes = deserializer.deserializeBytes();\n return new Secp256k1PrivateKey(bytes);\n }\n\n /**\n * Generate a new random private key.\n *\n * @returns Secp256k1PrivateKey\n */\n static generate(): Secp256k1PrivateKey {\n const hexInput = secp256k1.utils.randomPrivateKey();\n return new Secp256k1PrivateKey(hexInput);\n }\n\n /**\n * Derive the Secp256k1PublicKey from this private key.\n *\n * @returns Secp256k1PublicKey\n */\n publicKey(): Secp256k1PublicKey {\n const bytes = secp256k1.getPublicKey(this.key.toUint8Array(), false);\n return new Secp256k1PublicKey(bytes);\n }\n\n /**\n * Derives a private key from a mnemonic seed phrase.\n *\n * @param path the BIP44 path\n * @param mnemonics the mnemonic seed phrase\n *\n * @returns The generated key\n */\n static fromDerivationPath(path: string, mnemonics: string): Secp256k1PrivateKey {\n if (!isValidBIP44Path(path)) {\n throw new Error(`Invalid derivation path ${path}`);\n }\n return Secp256k1PrivateKey.fromDerivationPathInner(path, mnemonicToSeed(mnemonics));\n }\n\n /**\n * A private inner function so we can separate from the main fromDerivationPath() method\n * to add tests to verify we create the keys correctly.\n *\n * @param path the BIP44 path\n * @param seed the seed phrase created by the mnemonics\n *\n * @returns The generated key\n */\n private static fromDerivationPathInner(path: string, seed: Uint8Array): Secp256k1PrivateKey {\n const { privateKey } = HDKey.fromMasterSeed(seed).derive(path);\n // library returns privateKey as Uint8Array | null\n if (privateKey === null) {\n throw new Error(\"Invalid key\");\n }\n\n return new Secp256k1PrivateKey(privateKey);\n }\n}\n\n/**\n * A signature of a message signed using an Secp256k1 ecdsa private key\n */\nexport class Secp256k1Signature extends Signature {\n /**\n * Secp256k1 ecdsa signatures are 256-bit.\n */\n static readonly LENGTH = 64;\n\n /**\n * The signature bytes\n * @private\n */\n private readonly data: Hex;\n\n /**\n * Create a new Signature instance from a Uint8Array or String.\n *\n * @param hexInput A HexInput (string or Uint8Array)\n */\n constructor(hexInput: HexInput) {\n super();\n\n const hex = Hex.fromHexInput(hexInput);\n if (hex.toUint8Array().length !== Secp256k1Signature.LENGTH) {\n throw new Error(`Signature length should be ${Secp256k1Signature.LENGTH}, recieved ${hex.toUint8Array().length}`);\n }\n this.data = hex;\n }\n\n /**\n * Get the signature in bytes (Uint8Array).\n *\n * @returns Uint8Array representation of the signature\n */\n toUint8Array(): Uint8Array {\n return this.data.toUint8Array();\n }\n\n /**\n * Get the signature as a hex string with the 0x prefix.\n *\n * @returns string representation of the signature\n */\n toString(): string {\n return this.data.toString();\n }\n\n serialize(serializer: Serializer): void {\n serializer.serializeBytes(this.data.toUint8Array());\n }\n\n static deserialize(deserializer: Deserializer): Secp256k1Signature {\n const hex = deserializer.deserializeBytes();\n return new Secp256k1Signature(hex);\n }\n\n static load(deserializer: Deserializer): Secp256k1Signature {\n const bytes = deserializer.deserializeBytes();\n return new Secp256k1Signature(bytes);\n }\n}\n"],"mappings":"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","names":["sha3_256","secp256k1","HDKey","_Secp256k1PublicKey","PublicKey","hexInput","hex","Hex","args","message","signature","msgHex","sha3Message","sha3_256","rawSignature","secp256k1","serializer","deserializer","bytes","Secp256k1PublicKey","_Secp256k1PrivateKey","PrivateKey","privateKeyHex","Secp256k1Signature","path","mnemonics","isValidBIP44Path","mnemonicToSeed","seed","privateKey","HDKey","Secp256k1PrivateKey","_Secp256k1Signature","Signature"]}
1
+ {"version":3,"sources":["../../src/core/crypto/secp256k1.ts"],"sourcesContent":["// Copyright © Aptos Foundation\n// SPDX-License-Identifier: Apache-2.0\n\nimport { sha3_256 } from \"@noble/hashes/sha3\";\nimport { secp256k1 } from \"@noble/curves/secp256k1\";\nimport { HDKey } from \"@scure/bip32\";\nimport { PrivateKey, PublicKey, Signature } from \"./asymmetricCrypto\";\nimport { Deserializer, Serializer } from \"../../bcs\";\nimport { Hex } from \"../hex\";\nimport { HexInput } from \"../../types\";\nimport { isValidBIP44Path, mnemonicToSeed } from \"./hdKey\";\n\n/**\n * Represents the Secp256k1 ecdsa public key\n *\n * Secp256k1 authentication key is represented in the SDK as `AnyPublicKey`.\n */\nexport class Secp256k1PublicKey extends PublicKey {\n // Secp256k1 ecdsa public keys contain a prefix indicating compression and two 32-byte coordinates.\n static readonly LENGTH: number = 65;\n\n // Hex value of the public key\n private readonly key: Hex;\n\n /**\n * Create a new PublicKey instance from a Uint8Array or String.\n *\n * @param hexInput A HexInput (string or Uint8Array)\n */\n constructor(hexInput: HexInput) {\n super();\n\n const hex = Hex.fromHexInput(hexInput);\n if (hex.toUint8Array().length !== Secp256k1PublicKey.LENGTH) {\n throw new Error(`PublicKey length should be ${Secp256k1PublicKey.LENGTH}`);\n }\n this.key = hex;\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.key.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.key.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: Secp256k1Signature }): boolean {\n const { message, signature } = args;\n const msgHex = Hex.fromHexInput(message).toUint8Array();\n const sha3Message = sha3_256(msgHex);\n const rawSignature = signature.toUint8Array();\n return secp256k1.verify(rawSignature, sha3Message, this.toUint8Array());\n }\n\n serialize(serializer: Serializer): void {\n serializer.serializeBytes(this.key.toUint8Array());\n }\n\n static deserialize(deserializer: Deserializer): Secp256k1PublicKey {\n const bytes = deserializer.deserializeBytes();\n return new Secp256k1PublicKey(bytes);\n }\n\n static load(deserializer: Deserializer): Secp256k1PublicKey {\n const bytes = deserializer.deserializeBytes();\n return new Secp256k1PublicKey(bytes);\n }\n}\n\n/**\n * A Secp256k1 ecdsa private key\n */\nexport class Secp256k1PrivateKey extends PrivateKey {\n /**\n * Length of Secp256k1 ecdsa private key\n */\n static readonly LENGTH: number = 32;\n\n /**\n * The private key bytes\n * @private\n */\n private readonly key: Hex;\n\n /**\n * Create a new PrivateKey instance from a Uint8Array or String.\n *\n * @param hexInput A HexInput (string or Uint8Array)\n */\n constructor(hexInput: HexInput) {\n super();\n\n const privateKeyHex = Hex.fromHexInput(hexInput);\n if (privateKeyHex.toUint8Array().length !== Secp256k1PrivateKey.LENGTH) {\n throw new Error(`PrivateKey length should be ${Secp256k1PrivateKey.LENGTH}`);\n }\n\n this.key = privateKeyHex;\n }\n\n /**\n * Get the private key in bytes (Uint8Array).\n *\n * @returns\n */\n toUint8Array(): Uint8Array {\n return this.key.toUint8Array();\n }\n\n /**\n * Get the private key as a hex string with the 0x prefix.\n *\n * @returns string representation of the private key\n */\n toString(): string {\n return this.key.toString();\n }\n\n /**\n * Sign the given message with the private key.\n *\n * @param message in HexInput format\n * @returns Signature\n */\n sign(message: HexInput): Secp256k1Signature {\n const msgHex = Hex.fromHexInput(message);\n const sha3Message = sha3_256(msgHex.toUint8Array());\n const signature = secp256k1.sign(sha3Message, this.key.toUint8Array());\n return new Secp256k1Signature(signature.toCompactRawBytes());\n }\n\n serialize(serializer: Serializer): void {\n serializer.serializeBytes(this.toUint8Array());\n }\n\n static deserialize(deserializer: Deserializer): Secp256k1PrivateKey {\n const bytes = deserializer.deserializeBytes();\n return new Secp256k1PrivateKey(bytes);\n }\n\n /**\n * Generate a new random private key.\n *\n * @returns Secp256k1PrivateKey\n */\n static generate(): Secp256k1PrivateKey {\n const hexInput = secp256k1.utils.randomPrivateKey();\n return new Secp256k1PrivateKey(hexInput);\n }\n\n /**\n * Derive the Secp256k1PublicKey from this private key.\n *\n * @returns Secp256k1PublicKey\n */\n publicKey(): Secp256k1PublicKey {\n const bytes = secp256k1.getPublicKey(this.key.toUint8Array(), false);\n return new Secp256k1PublicKey(bytes);\n }\n\n /**\n * Derives a private key from a mnemonic seed phrase.\n *\n * @param path the BIP44 path\n * @param mnemonics the mnemonic seed phrase\n *\n * @returns The generated key\n */\n static fromDerivationPath(path: string, mnemonics: string): Secp256k1PrivateKey {\n if (!isValidBIP44Path(path)) {\n throw new Error(`Invalid derivation path ${path}`);\n }\n return Secp256k1PrivateKey.fromDerivationPathInner(path, mnemonicToSeed(mnemonics));\n }\n\n /**\n * A private inner function so we can separate from the main fromDerivationPath() method\n * to add tests to verify we create the keys correctly.\n *\n * @param path the BIP44 path\n * @param seed the seed phrase created by the mnemonics\n *\n * @returns The generated key\n */\n private static fromDerivationPathInner(path: string, seed: Uint8Array): Secp256k1PrivateKey {\n const { privateKey } = HDKey.fromMasterSeed(seed).derive(path);\n // library returns privateKey as Uint8Array | null\n if (privateKey === null) {\n throw new Error(\"Invalid key\");\n }\n\n return new Secp256k1PrivateKey(privateKey);\n }\n}\n\n/**\n * A signature of a message signed using an Secp256k1 ecdsa private key\n */\nexport class Secp256k1Signature extends Signature {\n /**\n * Secp256k1 ecdsa signatures are 256-bit.\n */\n static readonly LENGTH = 64;\n\n /**\n * The signature bytes\n * @private\n */\n private readonly data: Hex;\n\n /**\n * Create a new Signature instance from a Uint8Array or String.\n *\n * @param hexInput A HexInput (string or Uint8Array)\n */\n constructor(hexInput: HexInput) {\n super();\n\n const hex = Hex.fromHexInput(hexInput);\n if (hex.toUint8Array().length !== Secp256k1Signature.LENGTH) {\n throw new Error(`Signature length should be ${Secp256k1Signature.LENGTH}, recieved ${hex.toUint8Array().length}`);\n }\n this.data = hex;\n }\n\n /**\n * Get the signature in bytes (Uint8Array).\n *\n * @returns Uint8Array representation of the signature\n */\n toUint8Array(): Uint8Array {\n return this.data.toUint8Array();\n }\n\n /**\n * Get the signature as a hex string with the 0x prefix.\n *\n * @returns string representation of the signature\n */\n toString(): string {\n return this.data.toString();\n }\n\n serialize(serializer: Serializer): void {\n serializer.serializeBytes(this.data.toUint8Array());\n }\n\n static deserialize(deserializer: Deserializer): Secp256k1Signature {\n const hex = deserializer.deserializeBytes();\n return new Secp256k1Signature(hex);\n }\n\n static load(deserializer: Deserializer): Secp256k1Signature {\n const bytes = deserializer.deserializeBytes();\n return new Secp256k1Signature(bytes);\n }\n}\n"],"mappings":"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","names":["sha3_256","secp256k1","HDKey","_Secp256k1PublicKey","PublicKey","hexInput","hex","Hex","args","message","signature","msgHex","sha3Message","sha3_256","rawSignature","secp256k1","serializer","deserializer","bytes","Secp256k1PublicKey","_Secp256k1PrivateKey","PrivateKey","privateKeyHex","Secp256k1Signature","path","mnemonics","isValidBIP44Path","mnemonicToSeed","seed","privateKey","HDKey","Secp256k1PrivateKey","_Secp256k1Signature","Signature"]}
@@ -1,2 +1,2 @@
1
- import{l as p,t as g}from"./chunk-BTK34A5U.mjs";import{b as a,c as i}from"./chunk-AY2HWVDO.mjs";import{b as r}from"./chunk-2444YR3Y.mjs";async function y(o){let{aptosConfig:e}=o,{data:t}=await r({aptosConfig:e,originMethod:"getLedgerInfo",path:""});return t}async function h(o){let{aptosConfig:e,ledgerVersion:t,options:s}=o,{data:n}=await r({aptosConfig:e,originMethod:"getBlockByVersion",path:`blocks/by_version/${t}`,params:{with_transactions:s?.withTransactions}});return n}async function m(o){let{aptosConfig:e,blockHeight:t,options:s}=o,{data:n}=await r({aptosConfig:e,originMethod:"getBlockByHeight",path:`blocks/by_height/${t}`,params:{with_transactions:s?.withTransactions}});return n}async function C(o){let{aptosConfig:e,handle:t,data:s,options:n}=o;return(await a({aptosConfig:e,originMethod:"getTableItem",path:`tables/${t}/item`,params:{ledger_version:n?.ledgerVersion},body:s})).data}async function T(o){let{aptosConfig:e,payload:t,options:s}=o,{data:n}=await a({aptosConfig:e,originMethod:"view",path:"view",params:{ledger_version:s?.ledgerVersion},body:{function:t.function,type_arguments:t.typeArguments??[],arguments:t.functionArguments??[]}});return n}async function b(o){let{aptosConfig:e,limit:t}=o;return(await c({aptosConfig:e,query:{query:p,variables:{limit:t}},originMethod:"getChainTopUserTransactions"})).user_transactions}async function c(o){let{aptosConfig:e,query:t,originMethod:s}=o,{data:n}=await i({aptosConfig:e,originMethod:s??"queryIndexer",path:"",body:t,overrides:{WITH_CREDENTIALS:!1}});return n}async function u(o){let{aptosConfig:e}=o;return(await c({aptosConfig:e,query:{query:g},originMethod:"getProcessorStatuses"})).processor_status}async function q(o){return(await u({aptosConfig:o.aptosConfig}))[0].last_success_version}export{y as a,h as b,m as c,C as d,T as e,b as f,c as g,u as h,q as i};
2
- //# sourceMappingURL=chunk-MIBLZSNS.mjs.map
1
+ import{l as p,t as g}from"./chunk-WX43AJTD.mjs";import{b as r}from"./chunk-3JVGSFHP.mjs";import{b as a,c as i}from"./chunk-GEFQFRL3.mjs";async function y(o){let{aptosConfig:e}=o,{data:t}=await r({aptosConfig:e,originMethod:"getLedgerInfo",path:""});return t}async function h(o){let{aptosConfig:e,ledgerVersion:t,options:s}=o,{data:n}=await r({aptosConfig:e,originMethod:"getBlockByVersion",path:`blocks/by_version/${t}`,params:{with_transactions:s?.withTransactions}});return n}async function m(o){let{aptosConfig:e,blockHeight:t,options:s}=o,{data:n}=await r({aptosConfig:e,originMethod:"getBlockByHeight",path:`blocks/by_height/${t}`,params:{with_transactions:s?.withTransactions}});return n}async function C(o){let{aptosConfig:e,handle:t,data:s,options:n}=o;return(await a({aptosConfig:e,originMethod:"getTableItem",path:`tables/${t}/item`,params:{ledger_version:n?.ledgerVersion},body:s})).data}async function T(o){let{aptosConfig:e,payload:t,options:s}=o,{data:n}=await a({aptosConfig:e,originMethod:"view",path:"view",params:{ledger_version:s?.ledgerVersion},body:{function:t.function,type_arguments:t.typeArguments??[],arguments:t.functionArguments??[]}});return n}async function b(o){let{aptosConfig:e,limit:t}=o;return(await c({aptosConfig:e,query:{query:p,variables:{limit:t}},originMethod:"getChainTopUserTransactions"})).user_transactions}async function c(o){let{aptosConfig:e,query:t,originMethod:s}=o,{data:n}=await i({aptosConfig:e,originMethod:s??"queryIndexer",path:"",body:t,overrides:{WITH_CREDENTIALS:!1}});return n}async function u(o){let{aptosConfig:e}=o;return(await c({aptosConfig:e,query:{query:g},originMethod:"getProcessorStatuses"})).processor_status}async function q(o){return(await u({aptosConfig:o.aptosConfig}))[0].last_success_version}export{y as a,h as b,m as c,C as d,T as e,b as f,c as g,u as h,q as i};
2
+ //# sourceMappingURL=chunk-7MNEEVXY.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/internal/general.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/general}. By moving the methods out into a separate file,\n * other namespaces and processes can access these methods without depending on the entire\n * general namespace and without having a dependency cycle error.\n */\n\nimport { AptosConfig } from \"../api/aptosConfig\";\nimport { getAptosFullNode, postAptosFullNode, postAptosIndexer } from \"../client\";\nimport {\n AnyNumber,\n Block,\n GetChainTopUserTransactionsResponse,\n GetProcessorStatusResponse,\n GraphqlQuery,\n LedgerInfo,\n LedgerVersion,\n MoveValue,\n TableItemRequest,\n ViewRequest,\n InputViewRequestData,\n} from \"../types\";\nimport { GetChainTopUserTransactionsQuery, GetProcessorStatusQuery } from \"../types/generated/operations\";\nimport { GetChainTopUserTransactions, GetProcessorStatus } from \"../types/generated/queries\";\n\nexport async function getLedgerInfo(args: { aptosConfig: AptosConfig }): Promise<LedgerInfo> {\n const { aptosConfig } = args;\n const { data } = await getAptosFullNode<{}, LedgerInfo>({\n aptosConfig,\n originMethod: \"getLedgerInfo\",\n path: \"\",\n });\n return data;\n}\n\nexport async function getBlockByVersion(args: {\n aptosConfig: AptosConfig;\n ledgerVersion: AnyNumber;\n options?: { withTransactions?: boolean };\n}): Promise<Block> {\n const { aptosConfig, ledgerVersion, options } = args;\n const { data } = await getAptosFullNode<{}, Block>({\n aptosConfig,\n originMethod: \"getBlockByVersion\",\n path: `blocks/by_version/${ledgerVersion}`,\n params: { with_transactions: options?.withTransactions },\n });\n return data;\n}\n\nexport async function getBlockByHeight(args: {\n aptosConfig: AptosConfig;\n blockHeight: AnyNumber;\n options?: { withTransactions?: boolean };\n}): Promise<Block> {\n const { aptosConfig, blockHeight, options } = args;\n const { data } = await getAptosFullNode<{}, Block>({\n aptosConfig,\n originMethod: \"getBlockByHeight\",\n path: `blocks/by_height/${blockHeight}`,\n params: { with_transactions: options?.withTransactions },\n });\n return data;\n}\n\nexport async function getTableItem<T>(args: {\n aptosConfig: AptosConfig;\n handle: string;\n data: TableItemRequest;\n options?: LedgerVersion;\n}): Promise<T> {\n const { aptosConfig, handle, data, options } = args;\n const response = await postAptosFullNode<TableItemRequest, any>({\n aptosConfig,\n originMethod: \"getTableItem\",\n path: `tables/${handle}/item`,\n params: { ledger_version: options?.ledgerVersion },\n body: data,\n });\n return response.data as T;\n}\n\nexport async function view<T extends Array<MoveValue> = Array<MoveValue>>(args: {\n aptosConfig: AptosConfig;\n payload: InputViewRequestData;\n options?: LedgerVersion;\n}): Promise<T> {\n const { aptosConfig, payload, options } = args;\n const { data } = await postAptosFullNode<ViewRequest, MoveValue[]>({\n aptosConfig,\n originMethod: \"view\",\n path: \"view\",\n params: { ledger_version: options?.ledgerVersion },\n body: {\n function: payload.function,\n type_arguments: payload.typeArguments ?? [],\n arguments: payload.functionArguments ?? [],\n },\n });\n\n return data as T;\n}\n\nexport async function getChainTopUserTransactions(args: {\n aptosConfig: AptosConfig;\n limit: number;\n}): Promise<GetChainTopUserTransactionsResponse> {\n const { aptosConfig, limit } = args;\n const graphqlQuery = {\n query: GetChainTopUserTransactions,\n variables: { limit },\n };\n\n const data = await queryIndexer<GetChainTopUserTransactionsQuery>({\n aptosConfig,\n query: graphqlQuery,\n originMethod: \"getChainTopUserTransactions\",\n });\n\n return data.user_transactions;\n}\n\nexport async function queryIndexer<T extends {}>(args: {\n aptosConfig: AptosConfig;\n query: GraphqlQuery;\n originMethod?: string;\n}): Promise<T> {\n const { aptosConfig, query, originMethod } = args;\n const { data } = await postAptosIndexer<GraphqlQuery, T>({\n aptosConfig,\n originMethod: originMethod ?? \"queryIndexer\",\n path: \"\",\n body: query,\n overrides: { WITH_CREDENTIALS: false },\n });\n return data;\n}\n\nexport async function getProcessorStatuses(args: { aptosConfig: AptosConfig }): Promise<GetProcessorStatusResponse> {\n const { aptosConfig } = args;\n\n const graphqlQuery = {\n query: GetProcessorStatus,\n };\n\n const data = await queryIndexer<GetProcessorStatusQuery>({\n aptosConfig,\n query: graphqlQuery,\n originMethod: \"getProcessorStatuses\",\n });\n\n return data.processor_status;\n}\n\nexport async function getIndexerLastSuccessVersion(args: { aptosConfig: AptosConfig }): Promise<number> {\n const response = await getProcessorStatuses({ aptosConfig: args.aptosConfig });\n return response[0].last_success_version;\n}\n"],"mappings":"yIA4BA,eAAsBA,EAAcC,EAAyD,CAC3F,GAAM,CAAE,YAAAC,CAAY,EAAID,EAClB,CAAE,KAAAE,CAAK,EAAI,MAAMC,EAAiC,CACtD,YAAAF,EACA,aAAc,gBACd,KAAM,EACR,CAAC,EACD,OAAOC,CACT,CAEA,eAAsBE,EAAkBJ,EAIrB,CACjB,GAAM,CAAE,YAAAC,EAAa,cAAAI,EAAe,QAAAC,CAAQ,EAAIN,EAC1C,CAAE,KAAAE,CAAK,EAAI,MAAMC,EAA4B,CACjD,YAAAF,EACA,aAAc,oBACd,KAAM,qBAAqBI,CAAa,GACxC,OAAQ,CAAE,kBAAmBC,GAAS,gBAAiB,CACzD,CAAC,EACD,OAAOJ,CACT,CAEA,eAAsBK,EAAiBP,EAIpB,CACjB,GAAM,CAAE,YAAAC,EAAa,YAAAO,EAAa,QAAAF,CAAQ,EAAIN,EACxC,CAAE,KAAAE,CAAK,EAAI,MAAMC,EAA4B,CACjD,YAAAF,EACA,aAAc,mBACd,KAAM,oBAAoBO,CAAW,GACrC,OAAQ,CAAE,kBAAmBF,GAAS,gBAAiB,CACzD,CAAC,EACD,OAAOJ,CACT,CAEA,eAAsBO,EAAgBT,EAKvB,CACb,GAAM,CAAE,YAAAC,EAAa,OAAAS,EAAQ,KAAAR,EAAM,QAAAI,CAAQ,EAAIN,EAQ/C,OAPiB,MAAMW,EAAyC,CAC9D,YAAAV,EACA,aAAc,eACd,KAAM,UAAUS,CAAM,QACtB,OAAQ,CAAE,eAAgBJ,GAAS,aAAc,EACjD,KAAMJ,CACR,CAAC,GACe,IAClB,CAEA,eAAsBU,EAAoDZ,EAI3D,CACb,GAAM,CAAE,YAAAC,EAAa,QAAAY,EAAS,QAAAP,CAAQ,EAAIN,EACpC,CAAE,KAAAE,CAAK,EAAI,MAAMS,EAA4C,CACjE,YAAAV,EACA,aAAc,OACd,KAAM,OACN,OAAQ,CAAE,eAAgBK,GAAS,aAAc,EACjD,KAAM,CACJ,SAAUO,EAAQ,SAClB,eAAgBA,EAAQ,eAAiB,CAAC,EAC1C,UAAWA,EAAQ,mBAAqB,CAAC,CAC3C,CACF,CAAC,EAED,OAAOX,CACT,CAEA,eAAsBY,EAA4Bd,EAGD,CAC/C,GAAM,CAAE,YAAAC,EAAa,MAAAc,CAAM,EAAIf,EAY/B,OANa,MAAMgB,EAA+C,CAChE,YAAAf,EACA,MAPmB,CACnB,MAAOgB,EACP,UAAW,CAAE,MAAAF,CAAM,CACrB,EAKE,aAAc,6BAChB,CAAC,GAEW,iBACd,CAEA,eAAsBC,EAA2BhB,EAIlC,CACb,GAAM,CAAE,YAAAC,EAAa,MAAAiB,EAAO,aAAAC,CAAa,EAAInB,EACvC,CAAE,KAAAE,CAAK,EAAI,MAAMkB,EAAkC,CACvD,YAAAnB,EACA,aAAckB,GAAgB,eAC9B,KAAM,GACN,KAAMD,EACN,UAAW,CAAE,iBAAkB,EAAM,CACvC,CAAC,EACD,OAAOhB,CACT,CAEA,eAAsBmB,EAAqBrB,EAAyE,CAClH,GAAM,CAAE,YAAAC,CAAY,EAAID,EAYxB,OANa,MAAMgB,EAAsC,CACvD,YAAAf,EACA,MANmB,CACnB,MAAOqB,CACT,EAKE,aAAc,sBAChB,CAAC,GAEW,gBACd,CAEA,eAAsBC,EAA6BvB,EAAqD,CAEtG,OADiB,MAAMqB,EAAqB,CAAE,YAAarB,EAAK,WAAY,CAAC,GAC7D,CAAC,EAAE,oBACrB","names":["getLedgerInfo","args","aptosConfig","data","getAptosFullNode","getBlockByVersion","ledgerVersion","options","getBlockByHeight","blockHeight","getTableItem","handle","postAptosFullNode","view","payload","getChainTopUserTransactions","limit","queryIndexer","GetChainTopUserTransactions","query","originMethod","postAptosIndexer","getProcessorStatuses","GetProcessorStatus","getIndexerLastSuccessVersion"]}
@@ -1,2 +1,2 @@
1
- import{a as o,b as s,c as i,d as t,e as a,f as r}from"./chunk-ZT2A5ABR.mjs";var e=class{constructor(n){this.config=n}async getTransactions(n){return o({aptosConfig:this.config,...n})}async getTransactionByVersion(n){return i({aptosConfig:this.config,...n})}async getTransactionByHash(n){return t({aptosConfig:this.config,...n})}async isPendingTransaction(n){return a({aptosConfig:this.config,...n})}async waitForTransaction(n){return r({aptosConfig:this.config,...n})}async getGasPriceEstimation(){return s({aptosConfig:this.config})}};export{e as a};
2
- //# sourceMappingURL=chunk-KPESAXVI.mjs.map
1
+ import{a as o,b as s,c as i,d as t,e as a,f as r}from"./chunk-VYAVLUPJ.mjs";var e=class{constructor(n){this.config=n}async getTransactions(n){return o({aptosConfig:this.config,...n})}async getTransactionByVersion(n){return i({aptosConfig:this.config,...n})}async getTransactionByHash(n){return t({aptosConfig:this.config,...n})}async isPendingTransaction(n){return a({aptosConfig:this.config,...n})}async waitForTransaction(n){return r({aptosConfig:this.config,...n})}async getGasPriceEstimation(){return s({aptosConfig:this.config})}};export{e as a};
2
+ //# sourceMappingURL=chunk-AAIBCWZY.mjs.map
@@ -1,2 +1,2 @@
1
1
  import{b as n}from"./chunk-KC64ESLO.mjs";import{a as r,b as t,c as o}from"./chunk-LV33NV4J.mjs";import l 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:l},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 t[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 r[this.network];default:throw Error(`apiType ${e} is not supported`)}}isIndexerRequest(e){return r[this.network]===e}};export{i as a};
2
- //# sourceMappingURL=chunk-N6XWY4UT.mjs.map
2
+ //# sourceMappingURL=chunk-ARVSIDVB.mjs.map
@@ -1 +1 @@
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. */\n readonly network: Network;\n\n /**\n * The client instance the SDK uses\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"],"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,SAC/B,OACE,GAAI,KAAK,SAAW,OAAW,OAAO,KAAK,OAC3C,GAAI,KAAK,mBAA4B,MAAM,IAAI,MAAM,oCAAoC,EACzF,OAAOC,EAAmB,KAAK,SACjC,OACE,GAAI,KAAK,UAAY,OAAW,OAAO,KAAK,QAC5C,GAAI,KAAK,mBAA4B,MAAM,IAAI,MAAM,qCAAqC,EAC1F,OAAOC,EAAoB,KAAK,SAClC,QACE,MAAM,MAAM,WAAWH,oBAA0B,CACrD,CACF,CAOA,iBAAiBI,EAAsB,CACrC,OAAOD,EAAoB,KAAK,WAAaC,CAC/C,CACF","names":["aptosClient","AptosConfig","settings","DEFAULT_NETWORK","aptosClient","apiType","NetworkToNodeAPI","NetworkToFaucetAPI","NetworkToIndexerAPI","url"]}
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. */\n readonly network: Network;\n\n /**\n * The client instance the SDK uses\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"],"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,CACF","names":["aptosClient","AptosConfig","settings","DEFAULT_NETWORK","aptosClient","apiType","NetworkToNodeAPI","NetworkToFaucetAPI","NetworkToIndexerAPI","url"]}
@@ -1,2 +1,2 @@
1
- import{a as t,b as o,c as s}from"./chunk-PJDVHU7X.mjs";var r=class{constructor(e){this.config=e}async getNumberOfDelegators(e){return t({aptosConfig:this.config,...e})}async getNumberOfDelegatorsForAllPools(e){return o({aptosConfig:this.config,...e})}async getDelegatedStakingActivities(e){return s({aptosConfig:this.config,...e})}};export{r as a};
2
- //# sourceMappingURL=chunk-IXMH6AXJ.mjs.map
1
+ import{a as t,b as o,c as s}from"./chunk-VMQWW5UT.mjs";var r=class{constructor(e){this.config=e}async getNumberOfDelegators(e){return t({aptosConfig:this.config,...e})}async getNumberOfDelegatorsForAllPools(e){return o({aptosConfig:this.config,...e})}async getDelegatedStakingActivities(e){return s({aptosConfig:this.config,...e})}};export{r as a};
2
+ //# sourceMappingURL=chunk-BFSEVKNA.mjs.map
@@ -0,0 +1,2 @@
1
+ import{a as A}from"./chunk-Y5DJPHJT.mjs";import{e as l}from"./chunk-7MNEEVXY.mjs";import{b as p,c}from"./chunk-4ADA5BE7.mjs";import{e as m}from"./chunk-X32O46IB.mjs";import{b as s}from"./chunk-NZIJV4O2.mjs";var g=["A name must be between 3 and 63 characters long,","and can only contain lowercase a-z, 0-9, and hyphens.","A name may not start or end with a hyphen."].join(" ");function w(e){return!(!e||e.length<3||e.length>63||!/^[a-z\d][a-z\d-]{1,61}[a-z\d]$/.test(e))}function y(e){let[o,n,...r]=e.replace(/\.apt$/,"").split(".");if(r.length>0)throw new Error(`${e} is invalid. A name can only have two parts, a domain and a subdomain separated by a "."`);if(!w(o))throw new Error(`${o} is not valid. ${g}`);if(n&&!w(n))throw new Error(`${n} is not valid. ${g}`);return{domainName:n||o,subdomainName:n?o:void 0}}var L="0x37368b46ce665362562c6d1d4ec01a08c8644c488690df5a17e13ba163e20221",h="0x585fc9f0f0c54183b039ffc770ca282ebd87307916c215a3e692f2f8e4305e82",v={testnet:"0x5f8fd2347449685cf41d4db97926ec3a096eaf381332be4f1318ad4d16a8497c",mainnet:"0x867ed1f6bf916171b1de3ee92849b8978b7d1b9e0a8cc982a3d19d535dfd9c0c",local:h,custom:null,devnet:null};function b(e){let o=v[e.network];if(!o)throw new Error(`The ANS contract is not deployed to ${e.network}`);return o}var C=e=>({vec:[e]}),E=()=>({vec:[]}),x=e=>e!=null?C(e):E(),_=e=>{if(e&&typeof e=="object"&&"vec"in e&&Array.isArray(e.vec))return e.vec[0]};async function U(e){let{aptosConfig:o,name:n}=e,r=b(o),{domainName:d,subdomainName:t}=y(n),a=await l({aptosConfig:o,payload:{function:`${r}::router::get_owner_addr`,functionArguments:[d,x(t)]}}),i=_(a[0]);return i?s.fromRelaxed(i).toString():void 0}async function k(e){let{aptosConfig:o,expiration:n,name:r,sender:d,targetAddress:t,toAddress:a,options:i}=e,N=b(o),{domainName:T,subdomainName:u}=y(r),f=n.policy==="subdomain:independent"||n.policy==="subdomain:follow-domain";if(u&&!f)throw new Error("Subdomains must have an expiration policy of either 'subdomain:independent' or 'subdomain:follow-domain'");if(f&&!u)throw new Error(`Policy is set to ${n.policy} but no subdomain was provided`);if(n.policy==="domain"){if(n.years!==1)throw new Error("For now, names can only be registered for 1 year at a time");let S=n.years*31536e3;return await A({aptosConfig:o,sender:d.accountAddress.toString(),data:{function:`${N}::router::register_domain`,functionArguments:[new p(T),new m(S),new c(t?s.from(t):null),new c(a?s.from(a):null)]},options:i})}throw new Error(`Policy ${n.policy} is not supported yet`)}export{g as a,w as b,y as c,L as d,h as e,U as f,k as g};
2
+ //# sourceMappingURL=chunk-BP5ZO7NK.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/internal/ans.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/name}. By moving the methods out into a separate file,\n * other namespaces and processes can access these methods without depending on the entire\n * name namespace and without having a dependency cycle error.\n */\n\nimport { AptosConfig } from \"../api/aptosConfig\";\nimport { MoveOption, MoveString, U64 } from \"../bcs\";\nimport { Account, AccountAddress } from \"../core\";\nimport { InputGenerateTransactionOptions, InputSingleSignerTransaction } from \"../transactions/types\";\nimport { HexInput, MoveAddressType, MoveValue } from \"../types\";\nimport { Network } from \"../utils/apiEndpoints\";\nimport { view } from \"./general\";\nimport { generateTransaction } from \"./transactionSubmission\";\n\nexport const VALIDATION_RULES_DESCRIPTION = [\n \"A name must be between 3 and 63 characters long,\",\n \"and can only contain lowercase a-z, 0-9, and hyphens.\",\n \"A name may not start or end with a hyphen.\",\n].join(\" \");\n\n/**\n *\n * @param fragment A fragment of a name, either the domain or subdomain\n * @returns boolean indicating if the fragment is a valid fragment\n */\nexport function isValidANSSegment(fragment: string): boolean {\n if (!fragment) return false;\n if (fragment.length < 3) return false;\n if (fragment.length > 63) return false;\n // only lowercase a-z and 0-9 are allowed, along with -. a domain may not start or end with a hyphen\n if (!/^[a-z\\d][a-z\\d-]{1,61}[a-z\\d]$/.test(fragment)) return false;\n return true;\n}\n\n/**\n * Checks if an ANS name is valid or not\n *\n * @param name A string of the domain name, can include or exclude the .apt suffix\n */\nexport function isValidANSName(name: string): { domainName: string; subdomainName?: string } {\n const [first, second, ...rest] = name.replace(/\\.apt$/, \"\").split(\".\");\n\n if (rest.length > 0) {\n throw new Error(`${name} is invalid. A name can only have two parts, a domain and a subdomain separated by a \".\"`);\n }\n\n if (!isValidANSSegment(first)) {\n throw new Error(`${first} is not valid. ${VALIDATION_RULES_DESCRIPTION}`);\n }\n\n if (second && !isValidANSSegment(second)) {\n throw new Error(`${second} is not valid. ${VALIDATION_RULES_DESCRIPTION}`);\n }\n\n return {\n domainName: second || first,\n subdomainName: second ? first : undefined,\n };\n}\n\nexport const LOCAL_ANS_ACCOUNT_PK =\n process.env.ANS_TEST_ACCOUNT_PRIVATE_KEY ?? \"0x37368b46ce665362562c6d1d4ec01a08c8644c488690df5a17e13ba163e20221\";\nexport const LOCAL_ANS_ACCOUNT_ADDRESS =\n process.env.ANS_TEST_ACCOUNT_ADDRESS ?? \"0x585fc9f0f0c54183b039ffc770ca282ebd87307916c215a3e692f2f8e4305e82\";\n\nconst NetworkToAnsContract: Record<Network, string | null> = {\n [Network.TESTNET]: \"0x5f8fd2347449685cf41d4db97926ec3a096eaf381332be4f1318ad4d16a8497c\",\n [Network.MAINNET]: \"0x867ed1f6bf916171b1de3ee92849b8978b7d1b9e0a8cc982a3d19d535dfd9c0c\",\n [Network.LOCAL]: LOCAL_ANS_ACCOUNT_ADDRESS,\n [Network.CUSTOM]: null,\n [Network.DEVNET]: null,\n};\n\nfunction getRouterAddress(aptosConfig: AptosConfig): string {\n const address = NetworkToAnsContract[aptosConfig.network];\n if (!address) throw new Error(`The ANS contract is not deployed to ${aptosConfig.network}`);\n return address;\n}\n\nconst Some = <T>(value: T): MoveValue => ({ vec: [value] } as any);\nconst None = (): MoveValue => ({ vec: [] } as any);\n// != here is intentional, we want to check for null and undefined\n// eslint-disable-next-line eqeqeq\nconst Option = <T>(value: T | undefined | null): MoveValue => (value != undefined ? Some(value) : None());\n\nconst unwrapOption = <T>(option: any): T | undefined => {\n if (!!option && typeof option === \"object\" && \"vec\" in option && Array.isArray(option.vec)) {\n return option.vec[0];\n }\n\n return undefined;\n};\n\nexport async function getOwnerAddress(args: { aptosConfig: AptosConfig; name: string }): Promise<string | undefined> {\n const { aptosConfig, name } = args;\n const routerAddress = getRouterAddress(aptosConfig);\n const { domainName, subdomainName } = isValidANSName(name);\n\n const res = await view({\n aptosConfig,\n payload: {\n function: `${routerAddress}::router::get_owner_addr`,\n functionArguments: [domainName, Option(subdomainName)],\n },\n });\n\n const owner = unwrapOption<MoveAddressType>(res[0]);\n\n return owner ? AccountAddress.fromRelaxed(owner).toString() : undefined;\n}\n\nexport interface RegisterNameParameters {\n aptosConfig: AptosConfig;\n sender: Account;\n name: string;\n expiration:\n | { policy: \"domain\"; years: 1 }\n | { policy: \"subdomain:follow-domain\" }\n | { policy: \"subdomain:independent\"; expirationDate: Date };\n transferable?: boolean;\n toAddress?: HexInput;\n targetAddress?: HexInput;\n options?: InputGenerateTransactionOptions;\n}\n\nexport async function registerName(args: RegisterNameParameters): Promise<InputSingleSignerTransaction> {\n const { aptosConfig, expiration, name, sender, targetAddress, toAddress, options } = args;\n const routerAddress = getRouterAddress(aptosConfig);\n const { domainName, subdomainName } = isValidANSName(name);\n\n const hasSubdomainPolicy =\n expiration.policy === \"subdomain:independent\" || expiration.policy === \"subdomain:follow-domain\";\n\n if (subdomainName && !hasSubdomainPolicy) {\n throw new Error(\n \"Subdomains must have an expiration policy of either 'subdomain:independent' or 'subdomain:follow-domain'\",\n );\n }\n\n if (hasSubdomainPolicy && !subdomainName) {\n throw new Error(`Policy is set to ${expiration.policy} but no subdomain was provided`);\n }\n\n if (expiration.policy === \"domain\") {\n if (expiration.years !== 1) {\n throw new Error(\"For now, names can only be registered for 1 year at a time\");\n }\n\n const registrationDuration = expiration.years * 31536000;\n\n const transaction = await generateTransaction({\n aptosConfig,\n sender: sender.accountAddress.toString(),\n data: {\n function: `${routerAddress}::router::register_domain`,\n functionArguments: [\n new MoveString(domainName),\n new U64(registrationDuration),\n new MoveOption(targetAddress ? AccountAddress.from(targetAddress) : null),\n new MoveOption(toAddress ? AccountAddress.from(toAddress) : null),\n ],\n },\n options,\n });\n\n return transaction as InputSingleSignerTransaction;\n }\n\n throw new Error(`Policy ${expiration.policy} is not supported yet`);\n}\n"],"mappings":"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","names":["VALIDATION_RULES_DESCRIPTION","isValidANSSegment","fragment","isValidANSName","name","first","second","rest","LOCAL_ANS_ACCOUNT_PK","LOCAL_ANS_ACCOUNT_ADDRESS","NetworkToAnsContract","getRouterAddress","aptosConfig","address","Some","value","None","Option","unwrapOption","option","getOwnerAddress","args","routerAddress","domainName","subdomainName","res","view","owner","AccountAddress","registerName","expiration","sender","targetAddress","toAddress","options","hasSubdomainPolicy","registrationDuration","generateTransaction","MoveString","U64","MoveOption"]}
1
+ {"version":3,"sources":["../../src/internal/ans.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/name}. By moving the methods out into a separate file,\n * other namespaces and processes can access these methods without depending on the entire\n * name namespace and without having a dependency cycle error.\n */\n\nimport { AptosConfig } from \"../api/aptosConfig\";\nimport { MoveOption, MoveString, U64 } from \"../bcs\";\nimport { Account, AccountAddress } from \"../core\";\nimport { InputGenerateTransactionOptions, InputSingleSignerTransaction } from \"../transactions/types\";\nimport { HexInput, MoveAddressType, MoveValue } from \"../types\";\nimport { Network } from \"../utils/apiEndpoints\";\nimport { view } from \"./general\";\nimport { generateTransaction } from \"./transactionSubmission\";\n\nexport const VALIDATION_RULES_DESCRIPTION = [\n \"A name must be between 3 and 63 characters long,\",\n \"and can only contain lowercase a-z, 0-9, and hyphens.\",\n \"A name may not start or end with a hyphen.\",\n].join(\" \");\n\n/**\n *\n * @param fragment A fragment of a name, either the domain or subdomain\n * @returns boolean indicating if the fragment is a valid fragment\n */\nexport function isValidANSSegment(fragment: string): boolean {\n if (!fragment) return false;\n if (fragment.length < 3) return false;\n if (fragment.length > 63) return false;\n // only lowercase a-z and 0-9 are allowed, along with -. a domain may not start or end with a hyphen\n if (!/^[a-z\\d][a-z\\d-]{1,61}[a-z\\d]$/.test(fragment)) return false;\n return true;\n}\n\n/**\n * Checks if an ANS name is valid or not\n *\n * @param name A string of the domain name, can include or exclude the .apt suffix\n */\nexport function isValidANSName(name: string): { domainName: string; subdomainName?: string } {\n const [first, second, ...rest] = name.replace(/\\.apt$/, \"\").split(\".\");\n\n if (rest.length > 0) {\n throw new Error(`${name} is invalid. A name can only have two parts, a domain and a subdomain separated by a \".\"`);\n }\n\n if (!isValidANSSegment(first)) {\n throw new Error(`${first} is not valid. ${VALIDATION_RULES_DESCRIPTION}`);\n }\n\n if (second && !isValidANSSegment(second)) {\n throw new Error(`${second} is not valid. ${VALIDATION_RULES_DESCRIPTION}`);\n }\n\n return {\n domainName: second || first,\n subdomainName: second ? first : undefined,\n };\n}\n\nexport const LOCAL_ANS_ACCOUNT_PK =\n process.env.ANS_TEST_ACCOUNT_PRIVATE_KEY ?? \"0x37368b46ce665362562c6d1d4ec01a08c8644c488690df5a17e13ba163e20221\";\nexport const LOCAL_ANS_ACCOUNT_ADDRESS =\n process.env.ANS_TEST_ACCOUNT_ADDRESS ?? \"0x585fc9f0f0c54183b039ffc770ca282ebd87307916c215a3e692f2f8e4305e82\";\n\nconst NetworkToAnsContract: Record<Network, string | null> = {\n [Network.TESTNET]: \"0x5f8fd2347449685cf41d4db97926ec3a096eaf381332be4f1318ad4d16a8497c\",\n [Network.MAINNET]: \"0x867ed1f6bf916171b1de3ee92849b8978b7d1b9e0a8cc982a3d19d535dfd9c0c\",\n [Network.LOCAL]: LOCAL_ANS_ACCOUNT_ADDRESS,\n [Network.CUSTOM]: null,\n [Network.DEVNET]: null,\n};\n\nfunction getRouterAddress(aptosConfig: AptosConfig): string {\n const address = NetworkToAnsContract[aptosConfig.network];\n if (!address) throw new Error(`The ANS contract is not deployed to ${aptosConfig.network}`);\n return address;\n}\n\nconst Some = <T>(value: T): MoveValue => ({ vec: [value] }) as any;\nconst None = (): MoveValue => ({ vec: [] }) as any;\n// != here is intentional, we want to check for null and undefined\n// eslint-disable-next-line eqeqeq\nconst Option = <T>(value: T | undefined | null): MoveValue => (value != undefined ? Some(value) : None());\n\nconst unwrapOption = <T>(option: any): T | undefined => {\n if (!!option && typeof option === \"object\" && \"vec\" in option && Array.isArray(option.vec)) {\n return option.vec[0];\n }\n\n return undefined;\n};\n\nexport async function getOwnerAddress(args: { aptosConfig: AptosConfig; name: string }): Promise<string | undefined> {\n const { aptosConfig, name } = args;\n const routerAddress = getRouterAddress(aptosConfig);\n const { domainName, subdomainName } = isValidANSName(name);\n\n const res = await view({\n aptosConfig,\n payload: {\n function: `${routerAddress}::router::get_owner_addr`,\n functionArguments: [domainName, Option(subdomainName)],\n },\n });\n\n const owner = unwrapOption<MoveAddressType>(res[0]);\n\n return owner ? AccountAddress.fromRelaxed(owner).toString() : undefined;\n}\n\nexport interface RegisterNameParameters {\n aptosConfig: AptosConfig;\n sender: Account;\n name: string;\n expiration:\n | { policy: \"domain\"; years: 1 }\n | { policy: \"subdomain:follow-domain\" }\n | { policy: \"subdomain:independent\"; expirationDate: Date };\n transferable?: boolean;\n toAddress?: HexInput;\n targetAddress?: HexInput;\n options?: InputGenerateTransactionOptions;\n}\n\nexport async function registerName(args: RegisterNameParameters): Promise<InputSingleSignerTransaction> {\n const { aptosConfig, expiration, name, sender, targetAddress, toAddress, options } = args;\n const routerAddress = getRouterAddress(aptosConfig);\n const { domainName, subdomainName } = isValidANSName(name);\n\n const hasSubdomainPolicy =\n expiration.policy === \"subdomain:independent\" || expiration.policy === \"subdomain:follow-domain\";\n\n if (subdomainName && !hasSubdomainPolicy) {\n throw new Error(\n \"Subdomains must have an expiration policy of either 'subdomain:independent' or 'subdomain:follow-domain'\",\n );\n }\n\n if (hasSubdomainPolicy && !subdomainName) {\n throw new Error(`Policy is set to ${expiration.policy} but no subdomain was provided`);\n }\n\n if (expiration.policy === \"domain\") {\n if (expiration.years !== 1) {\n throw new Error(\"For now, names can only be registered for 1 year at a time\");\n }\n\n const registrationDuration = expiration.years * 31536000;\n\n const transaction = await generateTransaction({\n aptosConfig,\n sender: sender.accountAddress.toString(),\n data: {\n function: `${routerAddress}::router::register_domain`,\n functionArguments: [\n new MoveString(domainName),\n new U64(registrationDuration),\n new MoveOption(targetAddress ? AccountAddress.from(targetAddress) : null),\n new MoveOption(toAddress ? AccountAddress.from(toAddress) : null),\n ],\n },\n options,\n });\n\n return transaction as InputSingleSignerTransaction;\n }\n\n throw new Error(`Policy ${expiration.policy} is not supported yet`);\n}\n"],"mappings":"+MAmBO,IAAMA,EAA+B,CAC1C,mDACA,wDACA,4CACF,EAAE,KAAK,GAAG,EAOH,SAASC,EAAkBC,EAA2B,CAK3D,MAJI,GAACA,GACDA,EAAS,OAAS,GAClBA,EAAS,OAAS,IAElB,CAAC,iCAAiC,KAAKA,CAAQ,EAErD,CAOO,SAASC,EAAeC,EAA8D,CAC3F,GAAM,CAACC,EAAOC,EAAQ,GAAGC,CAAI,EAAIH,EAAK,QAAQ,SAAU,EAAE,EAAE,MAAM,GAAG,EAErE,GAAIG,EAAK,OAAS,EAChB,MAAM,IAAI,MAAM,GAAGH,CAAI,0FAA0F,EAGnH,GAAI,CAACH,EAAkBI,CAAK,EAC1B,MAAM,IAAI,MAAM,GAAGA,CAAK,kBAAkBL,CAA4B,EAAE,EAG1E,GAAIM,GAAU,CAACL,EAAkBK,CAAM,EACrC,MAAM,IAAI,MAAM,GAAGA,CAAM,kBAAkBN,CAA4B,EAAE,EAG3E,MAAO,CACL,WAAYM,GAAUD,EACtB,cAAeC,EAASD,EAAQ,MAClC,CACF,CAEO,IAAMG,EACX,qEACWC,EACX,qEAEIC,EAAuD,CAC1D,QAAkB,qEAClB,QAAkB,qEAClB,MAAgBD,EAChB,OAAiB,KACjB,OAAiB,IACpB,EAEA,SAASE,EAAiBC,EAAkC,CAC1D,IAAMC,EAAUH,EAAqBE,EAAY,OAAO,EACxD,GAAI,CAACC,EAAS,MAAM,IAAI,MAAM,uCAAuCD,EAAY,OAAO,EAAE,EAC1F,OAAOC,CACT,CAEA,IAAMC,EAAWC,IAAyB,CAAE,IAAK,CAACA,CAAK,CAAE,GACnDC,EAAO,KAAkB,CAAE,IAAK,CAAC,CAAE,GAGnCC,EAAaF,GAA4CA,GAAS,KAAYD,EAAKC,CAAK,EAAIC,EAAK,EAEjGE,EAAmBC,GAA+B,CACtD,GAAMA,GAAU,OAAOA,GAAW,UAAY,QAASA,GAAU,MAAM,QAAQA,EAAO,GAAG,EACvF,OAAOA,EAAO,IAAI,CAAC,CAIvB,EAEA,eAAsBC,EAAgBC,EAA+E,CACnH,GAAM,CAAE,YAAAT,EAAa,KAAAR,CAAK,EAAIiB,EACxBC,EAAgBX,EAAiBC,CAAW,EAC5C,CAAE,WAAAW,EAAY,cAAAC,CAAc,EAAIrB,EAAeC,CAAI,EAEnDqB,EAAM,MAAMC,EAAK,CACrB,YAAAd,EACA,QAAS,CACP,SAAU,GAAGU,CAAa,2BAC1B,kBAAmB,CAACC,EAAYN,EAAOO,CAAa,CAAC,CACvD,CACF,CAAC,EAEKG,EAAQT,EAA8BO,EAAI,CAAC,CAAC,EAElD,OAAOE,EAAQC,EAAe,YAAYD,CAAK,EAAE,SAAS,EAAI,MAChE,CAgBA,eAAsBE,EAAaR,EAAqE,CACtG,GAAM,CAAE,YAAAT,EAAa,WAAAkB,EAAY,KAAA1B,EAAM,OAAA2B,EAAQ,cAAAC,EAAe,UAAAC,EAAW,QAAAC,CAAQ,EAAIb,EAC/EC,EAAgBX,EAAiBC,CAAW,EAC5C,CAAE,WAAAW,EAAY,cAAAC,CAAc,EAAIrB,EAAeC,CAAI,EAEnD+B,EACJL,EAAW,SAAW,yBAA2BA,EAAW,SAAW,0BAEzE,GAAIN,GAAiB,CAACW,EACpB,MAAM,IAAI,MACR,0GACF,EAGF,GAAIA,GAAsB,CAACX,EACzB,MAAM,IAAI,MAAM,oBAAoBM,EAAW,MAAM,gCAAgC,EAGvF,GAAIA,EAAW,SAAW,SAAU,CAClC,GAAIA,EAAW,QAAU,EACvB,MAAM,IAAI,MAAM,4DAA4D,EAG9E,IAAMM,EAAuBN,EAAW,MAAQ,QAiBhD,OAfoB,MAAMO,EAAoB,CAC5C,YAAAzB,EACA,OAAQmB,EAAO,eAAe,SAAS,EACvC,KAAM,CACJ,SAAU,GAAGT,CAAa,4BAC1B,kBAAmB,CACjB,IAAIgB,EAAWf,CAAU,EACzB,IAAIgB,EAAIH,CAAoB,EAC5B,IAAII,EAAWR,EAAgBJ,EAAe,KAAKI,CAAa,EAAI,IAAI,EACxE,IAAIQ,EAAWP,EAAYL,EAAe,KAAKK,CAAS,EAAI,IAAI,CAClE,CACF,EACA,QAAAC,CACF,CAAC,CAGH,CAEA,MAAM,IAAI,MAAM,UAAUJ,EAAW,MAAM,uBAAuB,CACpE","names":["VALIDATION_RULES_DESCRIPTION","isValidANSSegment","fragment","isValidANSName","name","first","second","rest","LOCAL_ANS_ACCOUNT_PK","LOCAL_ANS_ACCOUNT_ADDRESS","NetworkToAnsContract","getRouterAddress","aptosConfig","address","Some","value","None","Option","unwrapOption","option","getOwnerAddress","args","routerAddress","domainName","subdomainName","res","view","owner","AccountAddress","registerName","expiration","sender","targetAddress","toAddress","options","hasSubdomainPolicy","registrationDuration","generateTransaction","MoveString","U64","MoveOption"]}
@@ -0,0 +1,2 @@
1
+ import{a as r}from"./chunk-HA6JD5R6.mjs";import{b as i}from"./chunk-TIH6ARYP.mjs";var t=class a extends r{constructor(e){super();this.value=i.fromHexInput(e).toUint8Array()}serialize(e){e.serializeFixedBytes(this.value)}serializeForEntryFunction(e){e.serialize(this)}serializeForScriptFunction(e){e.serialize(this)}static deserialize(e,s){let o=e.deserializeFixedBytes(s);return new a(o)}};export{t as a};
2
+ //# sourceMappingURL=chunk-BPYLPPEQ.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/bcs/serializable/fixedBytes.ts"],"sourcesContent":["// Copyright © Aptos Foundation\n// SPDX-License-Identifier: Apache-2.0\n\nimport { Serializer, Serializable } from \"../serializer\";\nimport { Deserializer } from \"../deserializer\";\nimport { HexInput } from \"../../types\";\nimport { Hex } from \"../../core/hex\";\nimport { TransactionArgument } from \"../../transactions/instances/transactionArgument\";\n\n/**\n * This class exists to represent a contiguous sequence of already serialized BCS-bytes.\n *\n * It differs from most other Serializable classes in that its internal byte buffer is serialized to BCS\n * bytes exactly as-is, without prepending the length of the bytes.\n *\n * If you want to write your own serialization function and pass the bytes as a transaction argument,\n * you should use this class.\n *\n * This class is also more generally used to represent type-agnostic BCS bytes as a vector<u8>.\n *\n * An example of this is the bytes resulting from entry function arguments that have been serialized\n * for an entry function.\n *\n * @example\n * const yourCustomSerializedBytes = new Uint8Array([1, 2, 3, 4, 5, 6, 7, 8]);\n * const fixedBytes = new FixedBytes(yourCustomSerializedBytes);\n * const payload = await generateTransactionPayload({\n * function: \"0xbeefcafe::your_module::your_function_that_requires_custom_serialization\",\n * functionArguments: [yourCustomBytes],\n * });\n *\n * For example, if you store each of the 32 bytes for an address as a U8 in a MoveVector<U8>, when you\n * serialize that MoveVector<U8>, it will be serialized to 33 bytes. If you solely want to pass around\n * the 32 bytes as a Serializable class that *does not* prepend the length to the BCS-serialized representation,\n * use this class.\n *\n * @params value: HexInput representing a sequence of Uint8 bytes\n * @returns a Serializable FixedBytes instance, which when serialized, does not prepend the length of the bytes\n * @see EntryFunctionBytes\n */\nexport class FixedBytes extends Serializable implements TransactionArgument {\n public value: Uint8Array;\n\n constructor(value: HexInput) {\n super();\n this.value = Hex.fromHexInput(value).toUint8Array();\n }\n\n serialize(serializer: Serializer): void {\n serializer.serializeFixedBytes(this.value);\n }\n\n serializeForEntryFunction(serializer: Serializer): void {\n serializer.serialize(this);\n }\n\n serializeForScriptFunction(serializer: Serializer): void {\n serializer.serialize(this);\n }\n\n static deserialize(deserializer: Deserializer, length: number): FixedBytes {\n const bytes = deserializer.deserializeFixedBytes(length);\n return new FixedBytes(bytes);\n }\n}\n"],"mappings":"kFAwCO,IAAMA,EAAN,cAAyBC,CAA4C,CAG1E,YAAYC,EAAiB,CAC3B,MAAM,EACN,KAAK,MAAQC,EAAI,aAAaD,CAAK,EAAE,aAAa,CACpD,CAEA,UAAUE,EAA8B,CACtCA,EAAW,oBAAoB,KAAK,KAAK,CAC3C,CAEA,0BAA0BA,EAA8B,CACtDA,EAAW,UAAU,IAAI,CAC3B,CAEA,2BAA2BA,EAA8B,CACvDA,EAAW,UAAU,IAAI,CAC3B,CAEA,OAAO,YAAYC,EAA4BC,EAA4B,CACzE,IAAMC,EAAQF,EAAa,sBAAsBC,CAAM,EACvD,OAAO,IAAIN,EAAWO,CAAK,CAC7B,CACF","names":["FixedBytes","Serializable","value","Hex","serializer","deserializer","length","bytes"]}
1
+ {"version":3,"sources":["../../src/bcs/serializable/fixedBytes.ts"],"sourcesContent":["// Copyright © Aptos Foundation\n// SPDX-License-Identifier: Apache-2.0\n\nimport { Serializer, Serializable } from \"../serializer\";\nimport { Deserializer } from \"../deserializer\";\nimport { HexInput } from \"../../types\";\nimport { Hex } from \"../../core/hex\";\nimport { TransactionArgument } from \"../../transactions/instances/transactionArgument\";\n\n/**\n * This class exists to represent a contiguous sequence of already serialized BCS-bytes.\n *\n * It differs from most other Serializable classes in that its internal byte buffer is serialized to BCS\n * bytes exactly as-is, without prepending the length of the bytes.\n *\n * If you want to write your own serialization function and pass the bytes as a transaction argument,\n * you should use this class.\n *\n * This class is also more generally used to represent type-agnostic BCS bytes as a vector<u8>.\n *\n * An example of this is the bytes resulting from entry function arguments that have been serialized\n * for an entry function.\n *\n * @example\n * const yourCustomSerializedBytes = new Uint8Array([1, 2, 3, 4, 5, 6, 7, 8]);\n * const fixedBytes = new FixedBytes(yourCustomSerializedBytes);\n * const payload = await generateTransactionPayload({\n * function: \"0xbeefcafe::your_module::your_function_that_requires_custom_serialization\",\n * functionArguments: [yourCustomBytes],\n * });\n *\n * For example, if you store each of the 32 bytes for an address as a U8 in a MoveVector<U8>, when you\n * serialize that MoveVector<U8>, it will be serialized to 33 bytes. If you solely want to pass around\n * the 32 bytes as a Serializable class that *does not* prepend the length to the BCS-serialized representation,\n * use this class.\n *\n * @params value: HexInput representing a sequence of Uint8 bytes\n * @returns a Serializable FixedBytes instance, which when serialized, does not prepend the length of the bytes\n * @see EntryFunctionBytes\n */\nexport class FixedBytes extends Serializable implements TransactionArgument {\n public value: Uint8Array;\n\n constructor(value: HexInput) {\n super();\n this.value = Hex.fromHexInput(value).toUint8Array();\n }\n\n serialize(serializer: Serializer): void {\n serializer.serializeFixedBytes(this.value);\n }\n\n serializeForEntryFunction(serializer: Serializer): void {\n serializer.serialize(this);\n }\n\n serializeForScriptFunction(serializer: Serializer): void {\n serializer.serialize(this);\n }\n\n static deserialize(deserializer: Deserializer, length: number): FixedBytes {\n const bytes = deserializer.deserializeFixedBytes(length);\n return new FixedBytes(bytes);\n }\n}\n"],"mappings":"kFAwCO,IAAMA,EAAN,MAAMC,UAAmBC,CAA4C,CAG1E,YAAYC,EAAiB,CAC3B,MAAM,EACN,KAAK,MAAQC,EAAI,aAAaD,CAAK,EAAE,aAAa,CACpD,CAEA,UAAUE,EAA8B,CACtCA,EAAW,oBAAoB,KAAK,KAAK,CAC3C,CAEA,0BAA0BA,EAA8B,CACtDA,EAAW,UAAU,IAAI,CAC3B,CAEA,2BAA2BA,EAA8B,CACvDA,EAAW,UAAU,IAAI,CAC3B,CAEA,OAAO,YAAYC,EAA4BC,EAA4B,CACzE,IAAMC,EAAQF,EAAa,sBAAsBC,CAAM,EACvD,OAAO,IAAIN,EAAWO,CAAK,CAC7B,CACF","names":["FixedBytes","_FixedBytes","Serializable","value","Hex","serializer","deserializer","length","bytes"]}
@@ -1,2 +1,2 @@
1
- import{b as r}from"./chunk-HH5RSP2H.mjs";import{a as i}from"./chunk-V6AAQLLJ.mjs";import{b as m}from"./chunk-7AQXAH6Q.mjs";import{a as o,b as u,c as s,d as c,e as p,f as a,g as y}from"./chunk-PDLUCVJB.mjs";function A(n){return typeof n=="boolean"}function F(n){return typeof n=="string"}function d(n){return typeof n=="number"}function E(n){return typeof n=="number"||typeof n=="bigint"||typeof n=="string"}function x(n){return n==null}function S(n){return n instanceof o}function B(n){return n instanceof r}function U(n){return n instanceof m}function b(n){return n instanceof i}function I(n){return n instanceof u}function h(n){return n instanceof s}function v(n){return n instanceof c}function D(n){return n instanceof p}function M(n){return n instanceof a}function N(n){return n instanceof y}function P(n){return"bytecode"in n}function w(n,t){throw new Error(`Type mismatch for argument ${t}, expected '${n}'`)}function G(n){let t=n.params.findIndex(e=>e!=="signer"&&e!=="&signer");return t<0?n.params.length:t}function $(n){let t=n.split("::");if(t.length!==3)throw new Error(`Invalid function ${n}`);let e=t[0],g=t[1],f=t[2];return{moduleAddress:e,moduleName:g,functionName:f}}export{A as a,F as b,d as c,E as d,x as e,S as f,B as g,U as h,b as i,I as j,h as k,v as l,D as m,M as n,N as o,P as p,w as q,G as r,$ as s};
2
- //# sourceMappingURL=chunk-3OJN4I42.mjs.map
1
+ import{a as i}from"./chunk-BPYLPPEQ.mjs";import{b as y}from"./chunk-4ADA5BE7.mjs";import{a as o,b as u,c as s,d as c,e as p,f as a,g as m}from"./chunk-X32O46IB.mjs";import{b as r}from"./chunk-NZIJV4O2.mjs";function A(n){return typeof n=="boolean"}function T(n){return typeof n=="string"}function d(n){return typeof n=="number"}function E(n){return typeof n=="number"||typeof n=="bigint"||typeof n=="string"}function x(n){return n==null}function S(n){return n instanceof o}function B(n){return n instanceof r}function U(n){return n instanceof y}function I(n){return n instanceof i}function b(n){return n instanceof u}function h(n){return n instanceof s}function v(n){return n instanceof c}function D(n){return n instanceof p}function M(n){return n instanceof a}function N(n){return n instanceof m}function P(n){return"bytecode"in n}function w(n,t){throw new Error(`Type mismatch for argument ${t}, expected '${n}'`)}function G(n){let t=n.params.findIndex(e=>e!=="signer"&&e!=="&signer");return t<0?n.params.length:t}function $(n){let t=n.split("::");if(t.length!==3)throw new Error(`Invalid function ${n}`);let e=t[0],g=t[1],f=t[2];return{moduleAddress:e,moduleName:g,functionName:f}}export{A as a,T as b,d as c,E as d,x as e,S as f,B as g,U as h,I as i,b as j,h as k,v as l,D as m,M as n,N as o,P as p,w as q,G as r,$ as s};
2
+ //# sourceMappingURL=chunk-BV4OOU5Y.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/transactions/transactionBuilder/helpers.ts"],"sourcesContent":["// Copyright © Aptos Foundation\n// SPDX-License-Identifier: Apache-2.0\n\nimport {\n EntryFunctionArgumentTypes,\n InputGenerateTransactionPayloadData,\n InputGenerateTransactionPayloadDataWithRemoteABI,\n InputScriptData,\n SimpleEntryFunctionArgumentTypes,\n} from \"../types\";\nimport { Bool, FixedBytes, MoveString, U128, U16, U256, U32, U64, U8 } from \"../../bcs\";\nimport { AccountAddress } from \"../../core\";\nimport { MoveFunction, MoveStructType } from \"../../types\";\n\nexport function isBool(arg: SimpleEntryFunctionArgumentTypes): arg is boolean {\n return typeof arg === \"boolean\";\n}\n\nexport function isString(arg: any): arg is string {\n return typeof arg === \"string\";\n}\n\nexport function isNumber(arg: SimpleEntryFunctionArgumentTypes): arg is number {\n return typeof arg === \"number\";\n}\n\nexport function isLargeNumber(arg: SimpleEntryFunctionArgumentTypes): arg is number | bigint | string {\n return typeof arg === \"number\" || typeof arg === \"bigint\" || typeof arg === \"string\";\n}\n\nexport function isNull(arg: SimpleEntryFunctionArgumentTypes): arg is null | undefined {\n return arg === null || arg === undefined;\n}\n\nexport function isBcsBool(arg: EntryFunctionArgumentTypes | SimpleEntryFunctionArgumentTypes): arg is Bool {\n return arg instanceof Bool;\n}\nexport function isBcsAddress(\n arg: EntryFunctionArgumentTypes | SimpleEntryFunctionArgumentTypes,\n): arg is AccountAddress {\n return arg instanceof AccountAddress;\n}\nexport function isBcsString(arg: EntryFunctionArgumentTypes | SimpleEntryFunctionArgumentTypes): arg is MoveString {\n return arg instanceof MoveString;\n}\nexport function isBcsFixedBytes(arg: EntryFunctionArgumentTypes | SimpleEntryFunctionArgumentTypes): arg is FixedBytes {\n return arg instanceof FixedBytes;\n}\n\nexport function isBcsU8(arg: EntryFunctionArgumentTypes | SimpleEntryFunctionArgumentTypes): arg is U8 {\n return arg instanceof U8;\n}\nexport function isBcsU16(arg: EntryFunctionArgumentTypes | SimpleEntryFunctionArgumentTypes): arg is U16 {\n return arg instanceof U16;\n}\nexport function isBcsU32(arg: EntryFunctionArgumentTypes | SimpleEntryFunctionArgumentTypes): arg is U32 {\n return arg instanceof U32;\n}\nexport function isBcsU64(arg: EntryFunctionArgumentTypes | SimpleEntryFunctionArgumentTypes): arg is U64 {\n return arg instanceof U64;\n}\nexport function isBcsU128(arg: EntryFunctionArgumentTypes | SimpleEntryFunctionArgumentTypes): arg is U128 {\n return arg instanceof U128;\n}\nexport function isBcsU256(arg: EntryFunctionArgumentTypes | SimpleEntryFunctionArgumentTypes): arg is U256 {\n return arg instanceof U256;\n}\n\nexport function isScriptDataInput(\n arg: InputGenerateTransactionPayloadDataWithRemoteABI | InputGenerateTransactionPayloadData,\n): arg is InputScriptData {\n return \"bytecode\" in arg;\n}\n\nexport function throwTypeMismatch(expectedType: string, position: number) {\n throw new Error(`Type mismatch for argument ${position}, expected '${expectedType}'`);\n}\n\n/**\n * Finds first non-signer arg.\n *\n * A function is often defined with a `signer` or `&signer` arguments at the start, which are filled in\n * by signatures, and not by the caller.\n * @param functionAbi\n */\nexport function findFirstNonSignerArg(functionAbi: MoveFunction): number {\n const index = functionAbi.params.findIndex((param) => param !== \"signer\" && param !== \"&signer\");\n if (index < 0) {\n return functionAbi.params.length;\n }\n return index;\n}\n\nexport function getFunctionParts(functionArg: MoveStructType) {\n const funcNameParts = functionArg.split(\"::\");\n if (funcNameParts.length !== 3) {\n throw new Error(`Invalid function ${functionArg}`);\n }\n const moduleAddress = funcNameParts[0];\n const moduleName = funcNameParts[1];\n const functionName = funcNameParts[2];\n return { moduleAddress, moduleName, functionName };\n}\n"],"mappings":"8MAcO,SAASA,EAAOC,EAAuD,CAC5E,OAAO,OAAOA,GAAQ,SACxB,CAEO,SAASC,EAASD,EAAyB,CAChD,OAAO,OAAOA,GAAQ,QACxB,CAEO,SAASE,EAASF,EAAsD,CAC7E,OAAO,OAAOA,GAAQ,QACxB,CAEO,SAASG,EAAcH,EAAwE,CACpG,OAAO,OAAOA,GAAQ,UAAY,OAAOA,GAAQ,UAAY,OAAOA,GAAQ,QAC9E,CAEO,SAASI,EAAOJ,EAAgE,CACrF,OAAOA,GAAQ,IACjB,CAEO,SAASK,EAAUL,EAAiF,CACzG,OAAOA,aAAeM,CACxB,CACO,SAASC,EACdP,EACuB,CACvB,OAAOA,aAAeQ,CACxB,CACO,SAASC,EAAYT,EAAuF,CACjH,OAAOA,aAAeU,CACxB,CACO,SAASC,EAAgBX,EAAuF,CACrH,OAAOA,aAAeY,CACxB,CAEO,SAASC,EAAQb,EAA+E,CACrG,OAAOA,aAAec,CACxB,CACO,SAASC,EAASf,EAAgF,CACvG,OAAOA,aAAegB,CACxB,CACO,SAASC,EAASjB,EAAgF,CACvG,OAAOA,aAAekB,CACxB,CACO,SAASC,EAASnB,EAAgF,CACvG,OAAOA,aAAeoB,CACxB,CACO,SAASC,EAAUrB,EAAiF,CACzG,OAAOA,aAAesB,CACxB,CACO,SAASC,EAAUvB,EAAiF,CACzG,OAAOA,aAAewB,CACxB,CAEO,SAASC,EACdzB,EACwB,CACxB,MAAO,aAAcA,CACvB,CAEO,SAAS0B,EAAkBC,EAAsBC,EAAkB,CACxE,MAAM,IAAI,MAAM,8BAA8BA,gBAAuBD,IAAe,CACtF,CASO,SAASE,EAAsBC,EAAmC,CACvE,IAAMC,EAAQD,EAAY,OAAO,UAAWE,GAAUA,IAAU,UAAYA,IAAU,SAAS,EAC/F,OAAID,EAAQ,EACHD,EAAY,OAAO,OAErBC,CACT,CAEO,SAASE,EAAiBC,EAA6B,CAC5D,IAAMC,EAAgBD,EAAY,MAAM,IAAI,EAC5C,GAAIC,EAAc,SAAW,EAC3B,MAAM,IAAI,MAAM,oBAAoBD,GAAa,EAEnD,IAAME,EAAgBD,EAAc,GAC9BE,EAAaF,EAAc,GAC3BG,EAAeH,EAAc,GACnC,MAAO,CAAE,cAAAC,EAAe,WAAAC,EAAY,aAAAC,CAAa,CACnD","names":["isBool","arg","isString","isNumber","isLargeNumber","isNull","isBcsBool","Bool","isBcsAddress","AccountAddress","isBcsString","MoveString","isBcsFixedBytes","FixedBytes","isBcsU8","U8","isBcsU16","U16","isBcsU32","U32","isBcsU64","U64","isBcsU128","U128","isBcsU256","U256","isScriptDataInput","throwTypeMismatch","expectedType","position","findFirstNonSignerArg","functionAbi","index","param","getFunctionParts","functionArg","funcNameParts","moduleAddress","moduleName","functionName"]}
1
+ {"version":3,"sources":["../../src/transactions/transactionBuilder/helpers.ts"],"sourcesContent":["// Copyright © Aptos Foundation\n// SPDX-License-Identifier: Apache-2.0\n\nimport {\n EntryFunctionArgumentTypes,\n InputGenerateTransactionPayloadData,\n InputGenerateTransactionPayloadDataWithRemoteABI,\n InputScriptData,\n SimpleEntryFunctionArgumentTypes,\n} from \"../types\";\nimport { Bool, FixedBytes, MoveString, U128, U16, U256, U32, U64, U8 } from \"../../bcs\";\nimport { AccountAddress } from \"../../core\";\nimport { MoveFunction, MoveFunctionId } from \"../../types\";\n\nexport function isBool(arg: SimpleEntryFunctionArgumentTypes): arg is boolean {\n return typeof arg === \"boolean\";\n}\n\nexport function isString(arg: any): arg is string {\n return typeof arg === \"string\";\n}\n\nexport function isNumber(arg: SimpleEntryFunctionArgumentTypes): arg is number {\n return typeof arg === \"number\";\n}\n\nexport function isLargeNumber(arg: SimpleEntryFunctionArgumentTypes): arg is number | bigint | string {\n return typeof arg === \"number\" || typeof arg === \"bigint\" || typeof arg === \"string\";\n}\n\nexport function isNull(arg: SimpleEntryFunctionArgumentTypes): arg is null | undefined {\n return arg === null || arg === undefined;\n}\n\nexport function isBcsBool(arg: EntryFunctionArgumentTypes | SimpleEntryFunctionArgumentTypes): arg is Bool {\n return arg instanceof Bool;\n}\nexport function isBcsAddress(\n arg: EntryFunctionArgumentTypes | SimpleEntryFunctionArgumentTypes,\n): arg is AccountAddress {\n return arg instanceof AccountAddress;\n}\nexport function isBcsString(arg: EntryFunctionArgumentTypes | SimpleEntryFunctionArgumentTypes): arg is MoveString {\n return arg instanceof MoveString;\n}\nexport function isBcsFixedBytes(arg: EntryFunctionArgumentTypes | SimpleEntryFunctionArgumentTypes): arg is FixedBytes {\n return arg instanceof FixedBytes;\n}\n\nexport function isBcsU8(arg: EntryFunctionArgumentTypes | SimpleEntryFunctionArgumentTypes): arg is U8 {\n return arg instanceof U8;\n}\nexport function isBcsU16(arg: EntryFunctionArgumentTypes | SimpleEntryFunctionArgumentTypes): arg is U16 {\n return arg instanceof U16;\n}\nexport function isBcsU32(arg: EntryFunctionArgumentTypes | SimpleEntryFunctionArgumentTypes): arg is U32 {\n return arg instanceof U32;\n}\nexport function isBcsU64(arg: EntryFunctionArgumentTypes | SimpleEntryFunctionArgumentTypes): arg is U64 {\n return arg instanceof U64;\n}\nexport function isBcsU128(arg: EntryFunctionArgumentTypes | SimpleEntryFunctionArgumentTypes): arg is U128 {\n return arg instanceof U128;\n}\nexport function isBcsU256(arg: EntryFunctionArgumentTypes | SimpleEntryFunctionArgumentTypes): arg is U256 {\n return arg instanceof U256;\n}\n\nexport function isScriptDataInput(\n arg: InputGenerateTransactionPayloadDataWithRemoteABI | InputGenerateTransactionPayloadData,\n): arg is InputScriptData {\n return \"bytecode\" in arg;\n}\n\nexport function throwTypeMismatch(expectedType: string, position: number) {\n throw new Error(`Type mismatch for argument ${position}, expected '${expectedType}'`);\n}\n\n/**\n * Finds first non-signer arg.\n *\n * A function is often defined with a `signer` or `&signer` arguments at the start, which are filled in\n * by signatures, and not by the caller.\n * @param functionAbi\n */\nexport function findFirstNonSignerArg(functionAbi: MoveFunction): number {\n const index = functionAbi.params.findIndex((param) => param !== \"signer\" && param !== \"&signer\");\n if (index < 0) {\n return functionAbi.params.length;\n }\n return index;\n}\n\nexport function getFunctionParts(functionArg: MoveFunctionId) {\n const funcNameParts = functionArg.split(\"::\");\n if (funcNameParts.length !== 3) {\n throw new Error(`Invalid function ${functionArg}`);\n }\n const moduleAddress = funcNameParts[0];\n const moduleName = funcNameParts[1];\n const functionName = funcNameParts[2];\n return { moduleAddress, moduleName, functionName };\n}\n"],"mappings":"8MAcO,SAASA,EAAOC,EAAuD,CAC5E,OAAO,OAAOA,GAAQ,SACxB,CAEO,SAASC,EAASD,EAAyB,CAChD,OAAO,OAAOA,GAAQ,QACxB,CAEO,SAASE,EAASF,EAAsD,CAC7E,OAAO,OAAOA,GAAQ,QACxB,CAEO,SAASG,EAAcH,EAAwE,CACpG,OAAO,OAAOA,GAAQ,UAAY,OAAOA,GAAQ,UAAY,OAAOA,GAAQ,QAC9E,CAEO,SAASI,EAAOJ,EAAgE,CACrF,OAAOA,GAAQ,IACjB,CAEO,SAASK,EAAUL,EAAiF,CACzG,OAAOA,aAAeM,CACxB,CACO,SAASC,EACdP,EACuB,CACvB,OAAOA,aAAeQ,CACxB,CACO,SAASC,EAAYT,EAAuF,CACjH,OAAOA,aAAeU,CACxB,CACO,SAASC,EAAgBX,EAAuF,CACrH,OAAOA,aAAeY,CACxB,CAEO,SAASC,EAAQb,EAA+E,CACrG,OAAOA,aAAec,CACxB,CACO,SAASC,EAASf,EAAgF,CACvG,OAAOA,aAAegB,CACxB,CACO,SAASC,EAASjB,EAAgF,CACvG,OAAOA,aAAekB,CACxB,CACO,SAASC,EAASnB,EAAgF,CACvG,OAAOA,aAAeoB,CACxB,CACO,SAASC,EAAUrB,EAAiF,CACzG,OAAOA,aAAesB,CACxB,CACO,SAASC,EAAUvB,EAAiF,CACzG,OAAOA,aAAewB,CACxB,CAEO,SAASC,EACdzB,EACwB,CACxB,MAAO,aAAcA,CACvB,CAEO,SAAS0B,EAAkBC,EAAsBC,EAAkB,CACxE,MAAM,IAAI,MAAM,8BAA8BA,CAAQ,eAAeD,CAAY,GAAG,CACtF,CASO,SAASE,EAAsBC,EAAmC,CACvE,IAAMC,EAAQD,EAAY,OAAO,UAAWE,GAAUA,IAAU,UAAYA,IAAU,SAAS,EAC/F,OAAID,EAAQ,EACHD,EAAY,OAAO,OAErBC,CACT,CAEO,SAASE,EAAiBC,EAA6B,CAC5D,IAAMC,EAAgBD,EAAY,MAAM,IAAI,EAC5C,GAAIC,EAAc,SAAW,EAC3B,MAAM,IAAI,MAAM,oBAAoBD,CAAW,EAAE,EAEnD,IAAME,EAAgBD,EAAc,CAAC,EAC/BE,EAAaF,EAAc,CAAC,EAC5BG,EAAeH,EAAc,CAAC,EACpC,MAAO,CAAE,cAAAC,EAAe,WAAAC,EAAY,aAAAC,CAAa,CACnD","names":["isBool","arg","isString","isNumber","isLargeNumber","isNull","isBcsBool","Bool","isBcsAddress","AccountAddress","isBcsString","MoveString","isBcsFixedBytes","FixedBytes","isBcsU8","U8","isBcsU16","U16","isBcsU32","U32","isBcsU64","U64","isBcsU128","U128","isBcsU256","U256","isScriptDataInput","throwTypeMismatch","expectedType","position","findFirstNonSignerArg","functionAbi","index","param","getFunctionParts","functionArg","funcNameParts","moduleAddress","moduleName","functionName"]}
@@ -1,2 +1,2 @@
1
- import{a as t,b as e,c as o,d as s,e as r,f as i,g as a,h as c}from"./chunk-TXUMB5ZO.mjs";var p=class{constructor(n){this.config=n}async createCollectionTransaction(n){return i({aptosConfig:this.config,...n})}async getCollectionData(n){return a({aptosConfig:this.config,...n})}async getCollectionId(n){return c({aptosConfig:this.config,...n})}async mintTokenTransaction(n){return t({aptosConfig:this.config,...n})}async getTokenData(n){return e({aptosConfig:this.config,...n})}async getCurrentTokenOwnership(n){return o({aptosConfig:this.config,...n})}async getOwnedTokens(n){return s({aptosConfig:this.config,...n})}async getTokenActivity(n){return r({aptosConfig:this.config,...n})}};export{p as a};
2
- //# sourceMappingURL=chunk-VAGYTPSI.mjs.map
1
+ import{a as t,b as e,c as o,d as s,e as r,f as i,g as a,h as c}from"./chunk-P32MY5YF.mjs";var p=class{constructor(n){this.config=n}async createCollectionTransaction(n){return i({aptosConfig:this.config,...n})}async getCollectionData(n){return a({aptosConfig:this.config,...n})}async getCollectionId(n){return c({aptosConfig:this.config,...n})}async mintTokenTransaction(n){return t({aptosConfig:this.config,...n})}async getTokenData(n){return e({aptosConfig:this.config,...n})}async getCurrentTokenOwnership(n){return o({aptosConfig:this.config,...n})}async getOwnedTokens(n){return s({aptosConfig:this.config,...n})}async getTokenActivity(n){return r({aptosConfig:this.config,...n})}};export{p as a};
2
+ //# sourceMappingURL=chunk-BWMNPUTK.mjs.map
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=chunk-CYDWEPFL.mjs.map
@@ -0,0 +1,2 @@
1
+ import{a as r}from"./chunk-HA6JD5R6.mjs";var a=class extends r{},i=class extends r{},e=class extends r{};export{a,i as b,e as c};
2
+ //# sourceMappingURL=chunk-EFIYW4WK.mjs.map
@@ -1,2 +1,2 @@
1
- import{a as d}from"./chunk-6FBKUTGF.mjs";import{a as R}from"./chunk-FYIFBLHU.mjs";var p={400:"Bad Request",401:"Unauthorized",403:"Forbidden",404:"Not Found",429:"Too Many Requests",500:"Internal Server Error",502:"Bad Gateway",503:"Service Unavailable"};async function l(r,a){let{url:o,method:u,body:i,contentType:e,params:s,overrides:t}=r,n={...t?.HEADERS,"x-aptos-client":`aptos-ts-sdk/${R}`,"content-type":e??"application/json"};return t?.AUTH_TOKEN&&o.includes("faucet")&&(n.Authorization=`Bearer ${t?.AUTH_TOKEN}`),a.provider({url:o,method:u,body:i,params:s,headers:n,overrides:t})}async function E(r,a){let{url:o,path:u}=r,i=`${o}/${u??""}`,e=await l({...r,url:i},a.client),s={status:e.status,statusText:e.statusText,data:e.data,headers:e.headers,config:e.config,request:e.request,url:i};if(a.isIndexerRequest(o)){let n=s.data;if(n.errors)throw new d(r,s,n.errors[0].message??`Unhandled Error ${e.status} : ${e.statusText}`);s.data=n.data}if(s.status>=200&&s.status<300)return s;let t;throw"message"in e.data&&"error_code"in e.data?t=JSON.stringify(e.data):s.status in p?t=p[s.status]:t=`Unhandled Error ${e.status} : ${e.statusText}`,new d(r,s,t)}export{l as a,E as b};
2
- //# sourceMappingURL=chunk-2MQZUGO6.mjs.map
1
+ import{a as R}from"./chunk-FYIFBLHU.mjs";import{a as d}from"./chunk-6FBKUTGF.mjs";var p={400:"Bad Request",401:"Unauthorized",403:"Forbidden",404:"Not Found",429:"Too Many Requests",500:"Internal Server Error",502:"Bad Gateway",503:"Service Unavailable"};async function l(r,a){let{url:o,method:u,body:i,contentType:e,params:s,overrides:t}=r,n={...t?.HEADERS,"x-aptos-client":`aptos-ts-sdk/${R}`,"content-type":e??"application/json"};return t?.AUTH_TOKEN&&o.includes("faucet")&&(n.Authorization=`Bearer ${t?.AUTH_TOKEN}`),a.provider({url:o,method:u,body:i,params:s,headers:n,overrides:t})}async function E(r,a){let{url:o,path:u}=r,i=`${o}/${u??""}`,e=await l({...r,url:i},a.client),s={status:e.status,statusText:e.statusText,data:e.data,headers:e.headers,config:e.config,request:e.request,url:i};if(a.isIndexerRequest(o)){let n=s.data;if(n.errors)throw new d(r,s,n.errors[0].message??`Unhandled Error ${e.status} : ${e.statusText}`);s.data=n.data}if(s.status>=200&&s.status<300)return s;let t;throw"message"in e.data&&"error_code"in e.data?t=JSON.stringify(e.data):s.status in p?t=p[s.status]:t=`Unhandled Error ${e.status} : ${e.statusText}`,new d(r,s,t)}export{l as a,E as b};
2
+ //# sourceMappingURL=chunk-EGOYLZBU.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/client/core.ts"],"sourcesContent":["// Copyright © Aptos Foundation\n// SPDX-License-Identifier: Apache-2.0\n\nimport { AptosConfig } from \"../api/aptosConfig\";\nimport { AptosApiError, AptosResponse } from \"./types\";\nimport { VERSION } from \"../version\";\nimport { AptosRequest, MimeType, ClientRequest, ClientResponse, Client, AnyNumber } from \"../types\";\n\n/**\n * Meaningful errors map\n */\nconst errors: Record<number, string> = {\n 400: \"Bad Request\",\n 401: \"Unauthorized\",\n 403: \"Forbidden\",\n 404: \"Not Found\",\n 429: \"Too Many Requests\",\n 500: \"Internal Server Error\",\n 502: \"Bad Gateway\",\n 503: \"Service Unavailable\",\n};\n\n/**\n * Given a url and method, sends the request with axios and\n * returns the response.\n */\nexport async function request<Req, Res>(options: ClientRequest<Req>, client: Client): Promise<ClientResponse<Res>> {\n const { url, method, body, contentType, params, overrides } = options;\n const headers: Record<string, string | AnyNumber | boolean | undefined> = {\n ...overrides?.HEADERS,\n \"x-aptos-client\": `aptos-ts-sdk/${VERSION}`,\n \"content-type\": contentType ?? MimeType.JSON,\n };\n\n // TODO - auth token is being used only for faucet, it breaks full node requests.\n // Find a more sophisticated way than that but without the need to add the\n // auth_token on every `aptos.fundAccount()` call\n if (overrides?.AUTH_TOKEN && url.includes(\"faucet\")) {\n headers.Authorization = `Bearer ${overrides?.AUTH_TOKEN}`;\n }\n\n /*\n * make a call using the @aptos-labs/aptos-client package\n * {@link https://www.npmjs.com/package/@aptos-labs/aptos-client}\n */\n return client.provider<Req, Res>({\n url,\n method,\n body,\n params,\n headers,\n overrides,\n });\n}\n\n/**\n * The main function to use when doing an API request.\n *\n * @param options AptosRequest\n * @param aptosConfig The config information for the SDK client instance\n * @returns the response or AptosApiError\n */\nexport async function aptosRequest<Req extends {}, Res extends {}>(\n options: AptosRequest,\n aptosConfig: AptosConfig,\n): Promise<AptosResponse<Req, Res>> {\n const { url, path } = options;\n const fullUrl = `${url}/${path ?? \"\"}`;\n const response = await request<Req, Res>({ ...options, url: fullUrl }, aptosConfig.client);\n\n const result: AptosResponse<Req, Res> = {\n status: response.status,\n statusText: response.statusText!,\n data: response.data,\n headers: response.headers,\n config: response.config,\n request: response.request,\n url: fullUrl,\n };\n\n // to support both fullnode and indexer responses,\n // check if it is an indexer query, and adjust response.data\n if (aptosConfig.isIndexerRequest(url)) {\n const indexerResponse = result.data as any;\n // errors from indexer\n if (indexerResponse.errors) {\n throw new AptosApiError(\n options,\n result,\n indexerResponse.errors[0].message ?? `Unhandled Error ${response.status} : ${response.statusText}`,\n );\n }\n result.data = indexerResponse.data as Res;\n }\n\n if (result.status >= 200 && result.status < 300) {\n return result;\n }\n\n let errorMessage: string;\n\n // If it is the shape of an AptosApiError, convert it properly\n if (\"message\" in response.data && \"error_code\" in response.data) {\n errorMessage = JSON.stringify(response.data);\n } else if (result.status in errors) {\n // If it's not an API type, it must come form infra, these are prehandled\n errorMessage = errors[result.status];\n } else {\n // Everything else is unhandled\n errorMessage = `Unhandled Error ${response.status} : ${response.statusText}`;\n }\n\n throw new AptosApiError(options, result, errorMessage);\n}\n"],"mappings":"kFAWA,IAAMA,EAAiC,CACrC,IAAK,cACL,IAAK,eACL,IAAK,YACL,IAAK,YACL,IAAK,oBACL,IAAK,wBACL,IAAK,cACL,IAAK,qBACP,EAMA,eAAsBC,EAAkBC,EAA6BC,EAA8C,CACjH,GAAM,CAAE,IAAAC,EAAK,OAAAC,EAAQ,KAAAC,EAAM,YAAAC,EAAa,OAAAC,EAAQ,UAAAC,CAAU,EAAIP,EACxDQ,EAAoE,CACxE,GAAGD,GAAW,QACd,iBAAkB,gBAAgBE,CAAO,GACzC,eAAgBJ,qBAClB,EAKA,OAAIE,GAAW,YAAcL,EAAI,SAAS,QAAQ,IAChDM,EAAQ,cAAgB,UAAUD,GAAW,UAAU,IAOlDN,EAAO,SAAmB,CAC/B,IAAAC,EACA,OAAAC,EACA,KAAAC,EACA,OAAAE,EACA,QAAAE,EACA,UAAAD,CACF,CAAC,CACH,CASA,eAAsBG,EACpBV,EACAW,EACkC,CAClC,GAAM,CAAE,IAAAT,EAAK,KAAAU,CAAK,EAAIZ,EAChBa,EAAU,GAAGX,CAAG,IAAIU,GAAQ,EAAE,GAC9BE,EAAW,MAAMf,EAAkB,CAAE,GAAGC,EAAS,IAAKa,CAAQ,EAAGF,EAAY,MAAM,EAEnFI,EAAkC,CACtC,OAAQD,EAAS,OACjB,WAAYA,EAAS,WACrB,KAAMA,EAAS,KACf,QAASA,EAAS,QAClB,OAAQA,EAAS,OACjB,QAASA,EAAS,QAClB,IAAKD,CACP,EAIA,GAAIF,EAAY,iBAAiBT,CAAG,EAAG,CACrC,IAAMc,EAAkBD,EAAO,KAE/B,GAAIC,EAAgB,OAClB,MAAM,IAAIC,EACRjB,EACAe,EACAC,EAAgB,OAAO,CAAC,EAAE,SAAW,mBAAmBF,EAAS,MAAM,MAAMA,EAAS,UAAU,EAClG,EAEFC,EAAO,KAAOC,EAAgB,IAChC,CAEA,GAAID,EAAO,QAAU,KAAOA,EAAO,OAAS,IAC1C,OAAOA,EAGT,IAAIG,EAGJ,KAAI,YAAaJ,EAAS,MAAQ,eAAgBA,EAAS,KACzDI,EAAe,KAAK,UAAUJ,EAAS,IAAI,EAClCC,EAAO,UAAUjB,EAE1BoB,EAAepB,EAAOiB,EAAO,MAAM,EAGnCG,EAAe,mBAAmBJ,EAAS,MAAM,MAAMA,EAAS,UAAU,GAGtE,IAAIG,EAAcjB,EAASe,EAAQG,CAAY,CACvD","names":["errors","request","options","client","url","method","body","contentType","params","overrides","headers","VERSION","aptosRequest","aptosConfig","path","fullUrl","response","result","indexerResponse","AptosApiError","errorMessage"]}
@@ -0,0 +1,2 @@
1
+ import{a as n}from"./chunk-Z2UDRTHA.mjs";import{a as g,b as _}from"./chunk-U25N2VWA.mjs";import{a as p,c as b}from"./chunk-RYETO74W.mjs";import{b as o}from"./chunk-NZIJV4O2.mjs";import{a as h}from"./chunk-HA6JD5R6.mjs";var c=class extends h{static deserialize(t){let e=t.deserializeUleb128AsU32();switch(e){case 0:return d.load(t);case 1:return u.load(t);case 2:return l.load(t);case 3:return A.load(t);case 4:return y.load(t);default:throw new Error(`Unknown variant index for TransactionAuthenticator: ${e}`)}}},d=class i extends c{constructor(e,r){super();this.public_key=e,this.signature=r}serialize(e){e.serializeU32AsUleb128(0),this.public_key.serialize(e),this.signature.serialize(e)}static load(e){let r=p.deserialize(e),s=b.deserialize(e);return new i(r,s)}},u=class i extends c{constructor(e,r){super();this.public_key=e,this.signature=r}serialize(e){e.serializeU32AsUleb128(1),this.public_key.serialize(e),this.signature.serialize(e)}static load(e){let r=g.deserialize(e),s=_.deserialize(e);return new i(r,s)}},l=class i extends c{constructor(e,r,s){super();this.sender=e,this.secondary_signer_addresses=r,this.secondary_signers=s}serialize(e){e.serializeU32AsUleb128(2),this.sender.serialize(e),e.serializeVector(this.secondary_signer_addresses),e.serializeVector(this.secondary_signers)}static load(e){let r=n.deserialize(e),s=e.deserializeVector(o),a=e.deserializeVector(n);return new i(r,s,a)}},A=class i extends c{constructor(e,r,s,a){super();this.sender=e,this.secondary_signer_addresses=r,this.secondary_signers=s,this.fee_payer=a}serialize(e){e.serializeU32AsUleb128(3),this.sender.serialize(e),e.serializeVector(this.secondary_signer_addresses),e.serializeVector(this.secondary_signers),this.fee_payer.address.serialize(e),this.fee_payer.authenticator.serialize(e)}static load(e){let r=n.deserialize(e),s=e.deserializeVector(o),a=e.deserializeVector(n),z=o.deserialize(e),S=n.deserialize(e),E={address:z,authenticator:S};return new i(r,s,a,E)}},y=class i extends c{constructor(e){super();this.sender=e}serialize(e){e.serializeU32AsUleb128(4),this.sender.serialize(e)}static load(e){let r=n.deserialize(e);return new i(r)}};export{c as a,d as b,u as c,l as d,A as e,y as f};
2
+ //# sourceMappingURL=chunk-EQ5BEDJ7.mjs.map