@aptos-labs/ts-sdk 6.3.1 → 7.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +125 -24
- package/dist/account/AbstractKeylessAccount.d.ts +326 -0
- package/dist/account/AbstractKeylessAccount.d.ts.map +1 -0
- package/dist/account/AbstractKeylessAccount.js +440 -0
- package/dist/account/AbstractKeylessAccount.js.map +1 -0
- package/dist/account/AbstractedAccount.d.ts +61 -0
- package/dist/account/AbstractedAccount.d.ts.map +1 -0
- package/dist/account/AbstractedAccount.js +71 -0
- package/dist/account/AbstractedAccount.js.map +1 -0
- package/dist/account/Account.d.ts +302 -0
- package/dist/account/Account.d.ts.map +1 -0
- package/dist/account/Account.js +104 -0
- package/dist/account/Account.js.map +1 -0
- package/dist/account/AccountUtils.d.ts +25 -0
- package/dist/account/AccountUtils.d.ts.map +1 -0
- package/dist/account/AccountUtils.js +202 -0
- package/dist/account/AccountUtils.js.map +1 -0
- package/dist/account/DerivableAbstractedAccount.d.ts +51 -0
- package/dist/account/DerivableAbstractedAccount.d.ts.map +1 -0
- package/dist/account/DerivableAbstractedAccount.js +61 -0
- package/dist/account/DerivableAbstractedAccount.js.map +1 -0
- package/dist/account/Ed25519Account.d.ts +161 -0
- package/dist/account/Ed25519Account.d.ts.map +1 -0
- package/dist/account/Ed25519Account.js +149 -0
- package/dist/account/Ed25519Account.js.map +1 -0
- package/dist/account/EphemeralKeyPair.d.ts +159 -0
- package/dist/account/EphemeralKeyPair.d.ts.map +1 -0
- package/dist/account/EphemeralKeyPair.js +246 -0
- package/dist/account/EphemeralKeyPair.js.map +1 -0
- package/dist/account/FederatedKeylessAccount.d.ts +107 -0
- package/dist/account/FederatedKeylessAccount.d.ts.map +1 -0
- package/dist/account/FederatedKeylessAccount.js +129 -0
- package/dist/account/FederatedKeylessAccount.js.map +1 -0
- package/dist/account/KeylessAccount.d.ts +112 -0
- package/dist/account/KeylessAccount.d.ts.map +1 -0
- package/dist/account/KeylessAccount.js +133 -0
- package/dist/account/KeylessAccount.js.map +1 -0
- package/dist/account/MultiEd25519Account.d.ts +100 -0
- package/dist/account/MultiEd25519Account.d.ts.map +1 -0
- package/dist/account/MultiEd25519Account.js +134 -0
- package/dist/account/MultiEd25519Account.js.map +1 -0
- package/dist/account/MultiKeyAccount.d.ts +197 -0
- package/dist/account/MultiKeyAccount.d.ts.map +1 -0
- package/dist/account/MultiKeyAccount.js +233 -0
- package/dist/account/MultiKeyAccount.js.map +1 -0
- package/dist/account/SingleKeyAccount.d.ts +189 -0
- package/dist/account/SingleKeyAccount.d.ts.map +1 -0
- package/dist/account/SingleKeyAccount.js +182 -0
- package/dist/account/SingleKeyAccount.js.map +1 -0
- package/dist/account/index.d.ts +9 -0
- package/dist/account/index.d.ts.map +1 -0
- package/dist/account/index.js +17 -0
- package/dist/account/index.js.map +1 -0
- package/dist/account/keylessSigner.d.ts +22 -0
- package/dist/account/keylessSigner.d.ts.map +1 -0
- package/dist/account/keylessSigner.js +9 -0
- package/dist/account/keylessSigner.js.map +1 -0
- package/dist/account/utils.d.ts +8 -0
- package/dist/account/utils.d.ts.map +1 -0
- package/dist/account/utils.js +12 -0
- package/dist/account/utils.js.map +1 -0
- package/dist/api/account/abstraction.d.ts +176 -0
- package/dist/api/account/abstraction.d.ts.map +1 -0
- package/dist/api/account/abstraction.js +203 -0
- package/dist/api/account/abstraction.js.map +1 -0
- package/dist/api/account.d.ts +845 -0
- package/dist/api/account.d.ts.map +1 -0
- package/dist/api/account.js +965 -0
- package/dist/api/account.js.map +1 -0
- package/dist/api/ans.d.ts +565 -0
- package/dist/api/ans.d.ts.map +1 -0
- package/dist/api/ans.js +537 -0
- package/dist/api/ans.js.map +1 -0
- package/dist/api/aptos.d.ts +73 -0
- package/dist/api/aptos.d.ts.map +1 -0
- package/dist/api/aptos.js +162 -0
- package/dist/api/aptos.js.map +1 -0
- package/dist/api/aptosConfig.d.ts +215 -0
- package/dist/api/aptosConfig.d.ts.map +1 -0
- package/dist/api/aptosConfig.js +316 -0
- package/dist/api/aptosConfig.js.map +1 -0
- package/dist/api/coin.d.ts +77 -0
- package/dist/api/coin.d.ts.map +1 -0
- package/dist/api/coin.js +73 -0
- package/dist/api/coin.js.map +1 -0
- package/dist/api/digitalAsset.d.ts +1026 -0
- package/dist/api/digitalAsset.d.ts.map +1 -0
- package/dist/api/digitalAsset.js +987 -0
- package/dist/api/digitalAsset.js.map +1 -0
- package/dist/api/faucet.d.ts +74 -0
- package/dist/api/faucet.d.ts.map +1 -0
- package/dist/api/faucet.js +86 -0
- package/dist/api/faucet.js.map +1 -0
- package/dist/api/fungibleAsset.d.ts +285 -0
- package/dist/api/fungibleAsset.d.ts.map +1 -0
- package/dist/api/fungibleAsset.js +314 -0
- package/dist/api/fungibleAsset.js.map +1 -0
- package/dist/api/general.d.ts +298 -0
- package/dist/api/general.d.ts.map +1 -0
- package/dist/api/general.js +311 -0
- package/dist/api/general.js.map +1 -0
- package/dist/api/index.d.ts +3 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/index.js +5 -0
- package/dist/api/index.js.map +1 -0
- package/dist/api/keyless.d.ts +160 -0
- package/dist/api/keyless.d.ts.map +1 -0
- package/dist/api/keyless.js +176 -0
- package/dist/api/keyless.js.map +1 -0
- package/dist/api/object.d.ts +74 -0
- package/dist/api/object.d.ts.map +1 -0
- package/dist/api/object.js +84 -0
- package/dist/api/object.js.map +1 -0
- package/dist/api/staking.d.ts +128 -0
- package/dist/api/staking.d.ts.map +1 -0
- package/dist/api/staking.js +143 -0
- package/dist/api/staking.js.map +1 -0
- package/dist/api/table.d.ts +163 -0
- package/dist/api/table.d.ts.map +1 -0
- package/dist/api/table.js +171 -0
- package/dist/api/table.js.map +1 -0
- package/dist/api/transaction.d.ts +672 -0
- package/dist/api/transaction.d.ts.map +1 -0
- package/dist/api/transaction.js +694 -0
- package/dist/api/transaction.js.map +1 -0
- package/dist/api/transactionSubmission/build.d.ts +137 -0
- package/dist/api/transactionSubmission/build.d.ts.map +1 -0
- package/dist/api/transactionSubmission/build.js +130 -0
- package/dist/api/transactionSubmission/build.js.map +1 -0
- package/dist/api/transactionSubmission/helpers.d.ts +91 -0
- package/dist/api/transactionSubmission/helpers.d.ts.map +1 -0
- package/dist/api/transactionSubmission/helpers.js +99 -0
- package/dist/api/transactionSubmission/helpers.js.map +1 -0
- package/dist/api/transactionSubmission/management.d.ts +159 -0
- package/dist/api/transactionSubmission/management.d.ts.map +1 -0
- package/dist/api/transactionSubmission/management.js +192 -0
- package/dist/api/transactionSubmission/management.js.map +1 -0
- package/dist/api/transactionSubmission/sign.d.ts +117 -0
- package/dist/api/transactionSubmission/sign.d.ts.map +1 -0
- package/dist/api/transactionSubmission/sign.js +130 -0
- package/dist/api/transactionSubmission/sign.js.map +1 -0
- package/dist/api/transactionSubmission/simulate.d.ts +176 -0
- package/dist/api/transactionSubmission/simulate.d.ts.map +1 -0
- package/dist/api/transactionSubmission/simulate.js +183 -0
- package/dist/api/transactionSubmission/simulate.js.map +1 -0
- package/dist/api/transactionSubmission/submit.d.ts +136 -0
- package/dist/api/transactionSubmission/submit.d.ts.map +1 -0
- package/dist/api/transactionSubmission/submit.js +136 -0
- package/dist/api/transactionSubmission/submit.js.map +1 -0
- package/dist/api/utils.d.ts +39 -0
- package/dist/api/utils.d.ts.map +1 -0
- package/dist/api/utils.js +41 -0
- package/dist/api/utils.js.map +1 -0
- package/dist/bcs/consts.d.ts +20 -0
- package/dist/bcs/consts.d.ts.map +1 -0
- package/dist/bcs/consts.js +24 -0
- package/dist/bcs/consts.js.map +1 -0
- package/dist/bcs/deserializer.d.ts +365 -0
- package/dist/bcs/deserializer.d.ts.map +1 -0
- package/dist/bcs/deserializer.js +470 -0
- package/dist/bcs/deserializer.js.map +1 -0
- package/dist/bcs/index.d.ts +7 -0
- package/dist/bcs/index.d.ts.map +1 -0
- package/dist/bcs/index.js +9 -0
- package/dist/bcs/index.js.map +1 -0
- package/dist/bcs/serializable/entryFunctionBytes.d.ts +60 -0
- package/dist/bcs/serializable/entryFunctionBytes.d.ts.map +1 -0
- package/dist/bcs/serializable/entryFunctionBytes.js +82 -0
- package/dist/bcs/serializable/entryFunctionBytes.js.map +1 -0
- package/dist/bcs/serializable/fixedBytes.d.ts +86 -0
- package/dist/bcs/serializable/fixedBytes.d.ts.map +1 -0
- package/dist/bcs/serializable/fixedBytes.js +98 -0
- package/dist/bcs/serializable/fixedBytes.js.map +1 -0
- package/dist/bcs/serializable/movePrimitives.d.ts +267 -0
- package/dist/bcs/serializable/movePrimitives.d.ts.map +1 -0
- package/dist/bcs/serializable/movePrimitives.js +448 -0
- package/dist/bcs/serializable/movePrimitives.js.map +1 -0
- package/dist/bcs/serializable/moveStructs.d.ts +596 -0
- package/dist/bcs/serializable/moveStructs.d.ts.map +1 -0
- package/dist/bcs/serializable/moveStructs.js +748 -0
- package/dist/bcs/serializable/moveStructs.js.map +1 -0
- package/dist/bcs/serializer.d.ts +442 -0
- package/dist/bcs/serializer.d.ts.map +1 -0
- package/dist/bcs/serializer.js +747 -0
- package/dist/bcs/serializer.js.map +1 -0
- package/dist/cli/index.d.ts +3 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +3 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/localNode.d.ts +65 -0
- package/dist/cli/localNode.d.ts.map +1 -0
- package/dist/cli/localNode.js +149 -0
- package/dist/cli/localNode.js.map +1 -0
- package/dist/cli/move.d.ts +250 -0
- package/dist/cli/move.d.ts.map +1 -0
- package/dist/cli/move.js +364 -0
- package/dist/cli/move.js.map +1 -0
- package/dist/client/core.d.ts +37 -0
- package/dist/client/core.d.ts.map +1 -0
- package/dist/client/core.js +116 -0
- package/dist/client/core.js.map +1 -0
- package/dist/client/get.d.ts +119 -0
- package/dist/client/get.d.ts.map +1 -0
- package/dist/client/get.js +165 -0
- package/dist/client/get.js.map +1 -0
- package/dist/client/index.d.ts +4 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +6 -0
- package/dist/client/index.js.map +1 -0
- package/dist/client/post.d.ts +155 -0
- package/dist/client/post.d.ts.map +1 -0
- package/dist/client/post.js +151 -0
- package/dist/client/post.js.map +1 -0
- package/dist/core/account/index.d.ts +2 -0
- package/dist/core/account/index.d.ts.map +1 -0
- package/dist/core/account/index.js +2 -0
- package/dist/core/account/index.js.map +1 -0
- package/dist/core/account/utils/address.d.ts +47 -0
- package/dist/core/account/utils/address.d.ts.map +1 -0
- package/dist/core/account/utils/address.js +68 -0
- package/dist/core/account/utils/address.js.map +1 -0
- package/dist/core/account/utils/index.d.ts +2 -0
- package/dist/core/account/utils/index.d.ts.map +1 -0
- package/dist/core/account/utils/index.js +2 -0
- package/dist/core/account/utils/index.js.map +1 -0
- package/dist/core/accountAddress.d.ts +327 -0
- package/dist/core/accountAddress.d.ts.map +1 -0
- package/dist/core/accountAddress.js +457 -0
- package/dist/core/accountAddress.js.map +1 -0
- package/dist/core/authenticationKey.d.ts +129 -0
- package/dist/core/authenticationKey.d.ts.map +1 -0
- package/dist/core/authenticationKey.js +155 -0
- package/dist/core/authenticationKey.js.map +1 -0
- package/dist/core/common.d.ts +51 -0
- package/dist/core/common.d.ts.map +1 -0
- package/dist/core/common.js +30 -0
- package/dist/core/common.js.map +1 -0
- package/dist/core/crypto/abstraction.d.ts +21 -0
- package/dist/core/crypto/abstraction.d.ts.map +1 -0
- package/dist/core/crypto/abstraction.js +37 -0
- package/dist/core/crypto/abstraction.js.map +1 -0
- package/dist/core/crypto/anyKeyRegistry.d.ts +45 -0
- package/dist/core/crypto/anyKeyRegistry.d.ts.map +1 -0
- package/dist/core/crypto/anyKeyRegistry.js +59 -0
- package/dist/core/crypto/anyKeyRegistry.js.map +1 -0
- package/dist/core/crypto/deserializationUtils.d.ts +22 -0
- package/dist/core/crypto/deserializationUtils.d.ts.map +1 -0
- package/dist/core/crypto/deserializationUtils.js +89 -0
- package/dist/core/crypto/deserializationUtils.js.map +1 -0
- package/dist/core/crypto/ed25519.d.ts +330 -0
- package/dist/core/crypto/ed25519.d.ts.map +1 -0
- package/dist/core/crypto/ed25519.js +502 -0
- package/dist/core/crypto/ed25519.js.map +1 -0
- package/dist/core/crypto/encryption/ciphertext.d.ts +49 -0
- package/dist/core/crypto/encryption/ciphertext.d.ts.map +1 -0
- package/dist/core/crypto/encryption/ciphertext.js +166 -0
- package/dist/core/crypto/encryption/ciphertext.js.map +1 -0
- package/dist/core/crypto/encryption/curveSerialization.d.ts +17 -0
- package/dist/core/crypto/encryption/curveSerialization.d.ts.map +1 -0
- package/dist/core/crypto/encryption/curveSerialization.js +38 -0
- package/dist/core/crypto/encryption/curveSerialization.js.map +1 -0
- package/dist/core/crypto/encryption/fieldSerialization.d.ts +12 -0
- package/dist/core/crypto/encryption/fieldSerialization.d.ts.map +1 -0
- package/dist/core/crypto/encryption/fieldSerialization.js +70 -0
- package/dist/core/crypto/encryption/fieldSerialization.js.map +1 -0
- package/dist/core/crypto/encryption/index.d.ts +11 -0
- package/dist/core/crypto/encryption/index.d.ts.map +1 -0
- package/dist/core/crypto/encryption/index.js +13 -0
- package/dist/core/crypto/encryption/index.js.map +1 -0
- package/dist/core/crypto/encryption/symmetric.d.ts +38 -0
- package/dist/core/crypto/encryption/symmetric.d.ts.map +1 -0
- package/dist/core/crypto/encryption/symmetric.js +124 -0
- package/dist/core/crypto/encryption/symmetric.js.map +1 -0
- package/dist/core/crypto/ephemeral.d.ts +112 -0
- package/dist/core/crypto/ephemeral.d.ts.map +1 -0
- package/dist/core/crypto/ephemeral.js +170 -0
- package/dist/core/crypto/ephemeral.js.map +1 -0
- package/dist/core/crypto/federatedKeyless.d.ts +106 -0
- package/dist/core/crypto/federatedKeyless.d.ts.map +1 -0
- package/dist/core/crypto/federatedKeyless.js +125 -0
- package/dist/core/crypto/federatedKeyless.js.map +1 -0
- package/dist/core/crypto/hdKey.d.ts +90 -0
- package/dist/core/crypto/hdKey.d.ts.map +1 -0
- package/dist/core/crypto/hdKey.js +118 -0
- package/dist/core/crypto/hdKey.js.map +1 -0
- package/dist/core/crypto/index.d.ts +13 -0
- package/dist/core/crypto/index.d.ts.map +1 -0
- package/dist/core/crypto/index.js +26 -0
- package/dist/core/crypto/index.js.map +1 -0
- package/dist/core/crypto/keyless.d.ts +788 -0
- package/dist/core/crypto/keyless.d.ts.map +1 -0
- package/dist/core/crypto/keyless.js +1482 -0
- package/dist/core/crypto/keyless.js.map +1 -0
- package/dist/core/crypto/keylessRegistration.d.ts +2 -0
- package/dist/core/crypto/keylessRegistration.d.ts.map +1 -0
- package/dist/core/crypto/keylessRegistration.js +16 -0
- package/dist/core/crypto/keylessRegistration.js.map +1 -0
- package/dist/core/crypto/multiEd25519.d.ts +228 -0
- package/dist/core/crypto/multiEd25519.d.ts.map +1 -0
- package/dist/core/crypto/multiEd25519.js +361 -0
- package/dist/core/crypto/multiEd25519.js.map +1 -0
- package/dist/core/crypto/multiKey.d.ts +248 -0
- package/dist/core/crypto/multiKey.d.ts.map +1 -0
- package/dist/core/crypto/multiKey.js +417 -0
- package/dist/core/crypto/multiKey.js.map +1 -0
- package/dist/core/crypto/poseidon.d.ts +58 -0
- package/dist/core/crypto/poseidon.d.ts.map +1 -0
- package/dist/core/crypto/poseidon.js +196 -0
- package/dist/core/crypto/poseidon.js.map +1 -0
- package/dist/core/crypto/privateKey.d.ts +64 -0
- package/dist/core/crypto/privateKey.d.ts.map +1 -0
- package/dist/core/crypto/privateKey.js +74 -0
- package/dist/core/crypto/privateKey.js.map +1 -0
- package/dist/core/crypto/proof.d.ts +10 -0
- package/dist/core/crypto/proof.d.ts.map +1 -0
- package/dist/core/crypto/proof.js +10 -0
- package/dist/core/crypto/proof.js.map +1 -0
- package/dist/core/crypto/publicKey.d.ts +92 -0
- package/dist/core/crypto/publicKey.d.ts.map +1 -0
- package/dist/core/crypto/publicKey.js +54 -0
- package/dist/core/crypto/publicKey.js.map +1 -0
- package/dist/core/crypto/secp256k1.d.ts +303 -0
- package/dist/core/crypto/secp256k1.d.ts.map +1 -0
- package/dist/core/crypto/secp256k1.js +455 -0
- package/dist/core/crypto/secp256k1.js.map +1 -0
- package/dist/core/crypto/secp256r1.d.ts +304 -0
- package/dist/core/crypto/secp256r1.d.ts.map +1 -0
- package/dist/core/crypto/secp256r1.js +444 -0
- package/dist/core/crypto/secp256r1.js.map +1 -0
- package/dist/core/crypto/signature.d.ts +35 -0
- package/dist/core/crypto/signature.d.ts.map +1 -0
- package/dist/core/crypto/signature.js +55 -0
- package/dist/core/crypto/signature.js.map +1 -0
- package/dist/core/crypto/singleKey.d.ts +175 -0
- package/dist/core/crypto/singleKey.d.ts.map +1 -0
- package/dist/core/crypto/singleKey.js +324 -0
- package/dist/core/crypto/singleKey.js.map +1 -0
- package/dist/core/crypto/types.d.ts +6 -0
- package/dist/core/crypto/types.d.ts.map +1 -0
- package/dist/core/crypto/types.js +2 -0
- package/dist/core/crypto/types.js.map +1 -0
- package/dist/core/crypto/utils.d.ts +16 -0
- package/dist/core/crypto/utils.d.ts.map +1 -0
- package/dist/core/crypto/utils.js +64 -0
- package/dist/core/crypto/utils.js.map +1 -0
- package/dist/core/hex.d.ts +154 -0
- package/dist/core/hex.d.ts.map +1 -0
- package/dist/core/hex.js +219 -0
- package/dist/core/hex.js.map +1 -0
- package/dist/core/index.d.ts +7 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +9 -0
- package/dist/core/index.js.map +1 -0
- package/dist/errors/index.d.ts +125 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +367 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/functions/abstraction.d.ts +4 -0
- package/dist/functions/abstraction.d.ts.map +1 -0
- package/dist/functions/abstraction.js +6 -0
- package/dist/functions/abstraction.js.map +1 -0
- package/dist/functions/account.d.ts +8 -0
- package/dist/functions/account.d.ts.map +1 -0
- package/dist/functions/account.js +10 -0
- package/dist/functions/account.js.map +1 -0
- package/dist/functions/ans.d.ts +4 -0
- package/dist/functions/ans.d.ts.map +1 -0
- package/dist/functions/ans.js +6 -0
- package/dist/functions/ans.js.map +1 -0
- package/dist/functions/coin.d.ts +4 -0
- package/dist/functions/coin.d.ts.map +1 -0
- package/dist/functions/coin.js +6 -0
- package/dist/functions/coin.js.map +1 -0
- package/dist/functions/digitalAsset.d.ts +4 -0
- package/dist/functions/digitalAsset.d.ts.map +1 -0
- package/dist/functions/digitalAsset.js +6 -0
- package/dist/functions/digitalAsset.js.map +1 -0
- package/dist/functions/faucet.d.ts +4 -0
- package/dist/functions/faucet.d.ts.map +1 -0
- package/dist/functions/faucet.js +6 -0
- package/dist/functions/faucet.js.map +1 -0
- package/dist/functions/fungibleAsset.d.ts +4 -0
- package/dist/functions/fungibleAsset.d.ts.map +1 -0
- package/dist/functions/fungibleAsset.js +6 -0
- package/dist/functions/fungibleAsset.js.map +1 -0
- package/dist/functions/general.d.ts +4 -0
- package/dist/functions/general.d.ts.map +1 -0
- package/dist/functions/general.js +6 -0
- package/dist/functions/general.js.map +1 -0
- package/dist/functions/index.d.ts +18 -0
- package/dist/functions/index.d.ts.map +1 -0
- package/dist/functions/index.js +20 -0
- package/dist/functions/index.js.map +1 -0
- package/dist/functions/keyless.d.ts +16 -0
- package/dist/functions/keyless.d.ts.map +1 -0
- package/dist/functions/keyless.js +23 -0
- package/dist/functions/keyless.js.map +1 -0
- package/dist/functions/object.d.ts +4 -0
- package/dist/functions/object.d.ts.map +1 -0
- package/dist/functions/object.js +6 -0
- package/dist/functions/object.js.map +1 -0
- package/dist/functions/staking.d.ts +4 -0
- package/dist/functions/staking.d.ts.map +1 -0
- package/dist/functions/staking.js +6 -0
- package/dist/functions/staking.js.map +1 -0
- package/dist/functions/table.d.ts +4 -0
- package/dist/functions/table.d.ts.map +1 -0
- package/dist/functions/table.js +6 -0
- package/dist/functions/table.js.map +1 -0
- package/dist/functions/transaction.d.ts +5 -0
- package/dist/functions/transaction.d.ts.map +1 -0
- package/dist/functions/transaction.js +7 -0
- package/dist/functions/transaction.js.map +1 -0
- package/dist/functions/view.d.ts +3 -0
- package/dist/functions/view.d.ts.map +1 -0
- package/dist/functions/view.js +5 -0
- package/dist/functions/view.js.map +1 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +29 -0
- package/dist/index.js.map +1 -0
- package/dist/internal/abstraction.d.ts +22 -0
- package/dist/internal/abstraction.d.ts.map +1 -0
- package/dist/internal/abstraction.js +54 -0
- package/dist/internal/abstraction.js.map +1 -0
- package/dist/internal/account.d.ts +457 -0
- package/dist/internal/account.d.ts.map +1 -0
- package/dist/internal/account.js +1164 -0
- package/dist/internal/account.js.map +1 -0
- package/dist/internal/ans.d.ts +414 -0
- package/dist/internal/ans.d.ts.map +1 -0
- package/dist/internal/ans.js +769 -0
- package/dist/internal/ans.js.map +1 -0
- package/dist/internal/coin.d.ts +27 -0
- package/dist/internal/coin.d.ts.map +1 -0
- package/dist/internal/coin.js +36 -0
- package/dist/internal/coin.js.map +1 -0
- package/dist/internal/digitalAsset.d.ts +577 -0
- package/dist/internal/digitalAsset.d.ts.map +1 -0
- package/dist/internal/digitalAsset.js +900 -0
- package/dist/internal/digitalAsset.js.map +1 -0
- package/dist/internal/encryptionKey.d.ts +20 -0
- package/dist/internal/encryptionKey.d.ts.map +1 -0
- package/dist/internal/encryptionKey.js +33 -0
- package/dist/internal/encryptionKey.js.map +1 -0
- package/dist/internal/faucet.d.ts +35 -0
- package/dist/internal/faucet.d.ts.map +1 -0
- package/dist/internal/faucet.js +53 -0
- package/dist/internal/faucet.js.map +1 -0
- package/dist/internal/fungibleAsset.d.ts +108 -0
- package/dist/internal/fungibleAsset.d.ts.map +1 -0
- package/dist/internal/fungibleAsset.js +155 -0
- package/dist/internal/fungibleAsset.js.map +1 -0
- package/dist/internal/general.d.ts +87 -0
- package/dist/internal/general.d.ts.map +1 -0
- package/dist/internal/general.js +136 -0
- package/dist/internal/general.js.map +1 -0
- package/dist/internal/keyless.d.ts +101 -0
- package/dist/internal/keyless.d.ts.map +1 -0
- package/dist/internal/keyless.js +191 -0
- package/dist/internal/keyless.js.map +1 -0
- package/dist/internal/object.d.ts +37 -0
- package/dist/internal/object.d.ts.map +1 -0
- package/dist/internal/object.js +53 -0
- package/dist/internal/object.js.map +1 -0
- package/dist/internal/staking.d.ts +53 -0
- package/dist/internal/staking.d.ts.map +1 -0
- package/dist/internal/staking.js +71 -0
- package/dist/internal/staking.js.map +1 -0
- package/dist/internal/table.d.ts +60 -0
- package/dist/internal/table.d.ts.map +1 -0
- package/dist/internal/table.js +86 -0
- package/dist/internal/table.js.map +1 -0
- package/dist/internal/transaction.d.ts +192 -0
- package/dist/internal/transaction.d.ts.map +1 -0
- package/dist/internal/transaction.js +399 -0
- package/dist/internal/transaction.js.map +1 -0
- package/dist/internal/transactionSubmission.d.ts +177 -0
- package/dist/internal/transactionSubmission.d.ts.map +1 -0
- package/dist/internal/transactionSubmission.js +411 -0
- package/dist/internal/transactionSubmission.js.map +1 -0
- package/dist/internal/utils/index.d.ts +2 -0
- package/dist/internal/utils/index.d.ts.map +1 -0
- package/dist/internal/utils/index.js +4 -0
- package/dist/internal/utils/index.js.map +1 -0
- package/dist/internal/utils/utils.d.ts +35 -0
- package/dist/internal/utils/utils.d.ts.map +1 -0
- package/dist/internal/utils/utils.js +63 -0
- package/dist/internal/utils/utils.js.map +1 -0
- package/dist/internal/view.d.ts +14 -0
- package/dist/internal/view.d.ts.map +1 -0
- package/dist/internal/view.js +41 -0
- package/dist/internal/view.js.map +1 -0
- package/dist/transactions/authenticator/account.d.ts +193 -0
- package/dist/transactions/authenticator/account.d.ts.map +1 -0
- package/dist/transactions/authenticator/account.js +346 -0
- package/dist/transactions/authenticator/account.js.map +1 -0
- package/dist/transactions/authenticator/index.d.ts +3 -0
- package/dist/transactions/authenticator/index.d.ts.map +1 -0
- package/dist/transactions/authenticator/index.js +5 -0
- package/dist/transactions/authenticator/index.js.map +1 -0
- package/dist/transactions/authenticator/transaction.d.ts +148 -0
- package/dist/transactions/authenticator/transaction.d.ts.map +1 -0
- package/dist/transactions/authenticator/transaction.js +239 -0
- package/dist/transactions/authenticator/transaction.js.map +1 -0
- package/dist/transactions/index.d.ts +7 -0
- package/dist/transactions/index.d.ts.map +1 -0
- package/dist/transactions/index.js +9 -0
- package/dist/transactions/index.js.map +1 -0
- package/dist/transactions/instances/chainId.d.ts +39 -0
- package/dist/transactions/instances/chainId.d.ts.map +1 -0
- package/dist/transactions/instances/chainId.js +48 -0
- package/dist/transactions/instances/chainId.js.map +1 -0
- package/dist/transactions/instances/encryptedPayload.d.ts +65 -0
- package/dist/transactions/instances/encryptedPayload.d.ts.map +1 -0
- package/dist/transactions/instances/encryptedPayload.js +122 -0
- package/dist/transactions/instances/encryptedPayload.js.map +1 -0
- package/dist/transactions/instances/identifier.d.ts +40 -0
- package/dist/transactions/instances/identifier.d.ts.map +1 -0
- package/dist/transactions/instances/identifier.js +49 -0
- package/dist/transactions/instances/identifier.js.map +1 -0
- package/dist/transactions/instances/index.d.ts +12 -0
- package/dist/transactions/instances/index.d.ts.map +1 -0
- package/dist/transactions/instances/index.js +14 -0
- package/dist/transactions/instances/index.js.map +1 -0
- package/dist/transactions/instances/moduleId.d.ts +52 -0
- package/dist/transactions/instances/moduleId.d.ts.map +1 -0
- package/dist/transactions/instances/moduleId.js +69 -0
- package/dist/transactions/instances/moduleId.js.map +1 -0
- package/dist/transactions/instances/multiAgentTransaction.d.ts +50 -0
- package/dist/transactions/instances/multiAgentTransaction.d.ts.map +1 -0
- package/dist/transactions/instances/multiAgentTransaction.js +75 -0
- package/dist/transactions/instances/multiAgentTransaction.js.map +1 -0
- package/dist/transactions/instances/rawTransaction.d.ts +142 -0
- package/dist/transactions/instances/rawTransaction.d.ts.map +1 -0
- package/dist/transactions/instances/rawTransaction.js +202 -0
- package/dist/transactions/instances/rawTransaction.js.map +1 -0
- package/dist/transactions/instances/rotationProofChallenge.d.ts +54 -0
- package/dist/transactions/instances/rotationProofChallenge.d.ts.map +1 -0
- package/dist/transactions/instances/rotationProofChallenge.js +70 -0
- package/dist/transactions/instances/rotationProofChallenge.js.map +1 -0
- package/dist/transactions/instances/signedTransaction.d.ts +53 -0
- package/dist/transactions/instances/signedTransaction.d.ts.map +1 -0
- package/dist/transactions/instances/signedTransaction.js +65 -0
- package/dist/transactions/instances/signedTransaction.js.map +1 -0
- package/dist/transactions/instances/simpleTransaction.d.ts +49 -0
- package/dist/transactions/instances/simpleTransaction.d.ts.map +1 -0
- package/dist/transactions/instances/simpleTransaction.js +73 -0
- package/dist/transactions/instances/simpleTransaction.js.map +1 -0
- package/dist/transactions/instances/transactionArgument.d.ts +71 -0
- package/dist/transactions/instances/transactionArgument.d.ts.map +1 -0
- package/dist/transactions/instances/transactionArgument.js +4 -0
- package/dist/transactions/instances/transactionArgument.js.map +1 -0
- package/dist/transactions/instances/transactionPayload.d.ts +369 -0
- package/dist/transactions/instances/transactionPayload.d.ts.map +1 -0
- package/dist/transactions/instances/transactionPayload.js +668 -0
- package/dist/transactions/instances/transactionPayload.js.map +1 -0
- package/dist/transactions/management/accountSequenceNumber.d.ts +114 -0
- package/dist/transactions/management/accountSequenceNumber.d.ts.map +1 -0
- package/dist/transactions/management/accountSequenceNumber.js +197 -0
- package/dist/transactions/management/accountSequenceNumber.js.map +1 -0
- package/dist/transactions/management/asyncQueue.d.ts +76 -0
- package/dist/transactions/management/asyncQueue.d.ts.map +1 -0
- package/dist/transactions/management/asyncQueue.js +105 -0
- package/dist/transactions/management/asyncQueue.js.map +1 -0
- package/dist/transactions/management/index.d.ts +3 -0
- package/dist/transactions/management/index.d.ts.map +1 -0
- package/dist/transactions/management/index.js +3 -0
- package/dist/transactions/management/index.js.map +1 -0
- package/dist/transactions/management/transactionWorker.d.ts +213 -0
- package/dist/transactions/management/transactionWorker.d.ts.map +1 -0
- package/dist/transactions/management/transactionWorker.js +347 -0
- package/dist/transactions/management/transactionWorker.js.map +1 -0
- package/dist/transactions/transactionBuilder/encryptPayload.d.ts +21 -0
- package/dist/transactions/transactionBuilder/encryptPayload.d.ts.map +1 -0
- package/dist/transactions/transactionBuilder/encryptPayload.js +159 -0
- package/dist/transactions/transactionBuilder/encryptPayload.js.map +1 -0
- package/dist/transactions/transactionBuilder/helpers.d.ts +184 -0
- package/dist/transactions/transactionBuilder/helpers.d.ts.map +1 -0
- package/dist/transactions/transactionBuilder/helpers.js +344 -0
- package/dist/transactions/transactionBuilder/helpers.js.map +1 -0
- package/dist/transactions/transactionBuilder/index.d.ts +6 -0
- package/dist/transactions/transactionBuilder/index.d.ts.map +1 -0
- package/dist/transactions/transactionBuilder/index.js +8 -0
- package/dist/transactions/transactionBuilder/index.js.map +1 -0
- package/dist/transactions/transactionBuilder/remoteAbi.d.ts +167 -0
- package/dist/transactions/transactionBuilder/remoteAbi.d.ts.map +1 -0
- package/dist/transactions/transactionBuilder/remoteAbi.js +1088 -0
- package/dist/transactions/transactionBuilder/remoteAbi.js.map +1 -0
- package/dist/transactions/transactionBuilder/signingMessage.d.ts +55 -0
- package/dist/transactions/transactionBuilder/signingMessage.d.ts.map +1 -0
- package/dist/transactions/transactionBuilder/signingMessage.js +94 -0
- package/dist/transactions/transactionBuilder/signingMessage.js.map +1 -0
- package/dist/transactions/transactionBuilder/structEnumParser.d.ts +225 -0
- package/dist/transactions/transactionBuilder/structEnumParser.d.ts.map +1 -0
- package/dist/transactions/transactionBuilder/structEnumParser.js +690 -0
- package/dist/transactions/transactionBuilder/structEnumParser.js.map +1 -0
- package/dist/transactions/transactionBuilder/transactionBuilder.d.ts +198 -0
- package/dist/transactions/transactionBuilder/transactionBuilder.d.ts.map +1 -0
- package/dist/transactions/transactionBuilder/transactionBuilder.js +586 -0
- package/dist/transactions/transactionBuilder/transactionBuilder.js.map +1 -0
- package/dist/transactions/typeTag/index.d.ts +544 -0
- package/dist/transactions/typeTag/index.d.ts.map +1 -0
- package/dist/transactions/typeTag/index.js +826 -0
- package/dist/transactions/typeTag/index.js.map +1 -0
- package/dist/transactions/typeTag/parser.d.ts +73 -0
- package/dist/transactions/typeTag/parser.d.ts.map +1 -0
- package/dist/transactions/typeTag/parser.js +368 -0
- package/dist/transactions/typeTag/parser.js.map +1 -0
- package/dist/transactions/types.d.ts +477 -0
- package/dist/transactions/types.d.ts.map +1 -0
- package/dist/transactions/types.js +4 -0
- package/dist/transactions/types.js.map +1 -0
- package/dist/types/abstraction.d.ts +14 -0
- package/dist/types/abstraction.d.ts.map +1 -0
- package/dist/types/abstraction.js +16 -0
- package/dist/types/abstraction.js.map +1 -0
- package/dist/types/ans.d.ts +113 -0
- package/dist/types/ans.d.ts.map +1 -0
- package/dist/types/ans.js +36 -0
- package/dist/types/ans.js.map +1 -0
- package/dist/types/generated/operations.d.ts +702 -0
- package/dist/types/generated/operations.d.ts.map +1 -0
- package/dist/types/generated/operations.js +2 -0
- package/dist/types/generated/operations.js.map +1 -0
- package/dist/types/generated/queries.d.ts +64 -0
- package/dist/types/generated/queries.d.ts.map +1 -0
- package/dist/types/generated/queries.js +729 -0
- package/dist/types/generated/queries.js.map +1 -0
- package/dist/types/generated/types.d.ts +9678 -0
- package/dist/types/generated/types.d.ts.map +1 -0
- package/dist/types/generated/types.js +1265 -0
- package/dist/types/generated/types.js.map +1 -0
- package/dist/types/index.d.ts +4 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +4 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/indexer.d.ts +182 -0
- package/dist/types/indexer.d.ts.map +1 -0
- package/dist/types/indexer.js +4 -0
- package/dist/types/indexer.js.map +1 -0
- package/dist/types/keyless.d.ts +101 -0
- package/dist/types/keyless.d.ts.map +1 -0
- package/dist/types/keyless.js +2 -0
- package/dist/types/keyless.js.map +1 -0
- package/dist/types/types.d.ts +1572 -0
- package/dist/types/types.d.ts.map +1 -0
- package/dist/types/types.js +464 -0
- package/dist/types/types.js.map +1 -0
- package/dist/utils/apiEndpoints.d.ts +50 -0
- package/dist/utils/apiEndpoints.d.ts.map +1 -0
- package/dist/utils/apiEndpoints.js +100 -0
- package/dist/utils/apiEndpoints.js.map +1 -0
- package/dist/utils/const.d.ts +117 -0
- package/dist/utils/const.d.ts.map +1 -0
- package/dist/utils/const.js +121 -0
- package/dist/utils/const.js.map +1 -0
- package/dist/utils/helpers.d.ts +203 -0
- package/dist/utils/helpers.d.ts.map +1 -0
- package/dist/utils/helpers.js +330 -0
- package/dist/utils/helpers.js.map +1 -0
- package/dist/utils/index.d.ts +5 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +5 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/memoize.d.ts +47 -0
- package/dist/utils/memoize.d.ts.map +1 -0
- package/dist/utils/memoize.js +195 -0
- package/dist/utils/memoize.js.map +1 -0
- package/dist/utils/normalizeBundle.d.ts +27 -0
- package/dist/utils/normalizeBundle.d.ts.map +1 -0
- package/dist/utils/normalizeBundle.js +18 -0
- package/dist/utils/normalizeBundle.js.map +1 -0
- package/dist/utils/runtime.d.ts +44 -0
- package/dist/utils/runtime.d.ts.map +1 -0
- package/dist/utils/runtime.js +71 -0
- package/dist/utils/runtime.js.map +1 -0
- package/dist/version.d.ts +7 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +9 -0
- package/dist/version.js.map +1 -0
- package/package.json +107 -47
- package/src/account/AbstractKeylessAccount.ts +24 -30
- package/src/account/AbstractedAccount.ts +18 -16
- package/src/account/Account.ts +12 -9
- package/src/account/AccountUtils.ts +17 -20
- package/src/account/DerivableAbstractedAccount.ts +12 -10
- package/src/account/Ed25519Account.ts +8 -8
- package/src/account/EphemeralKeyPair.ts +9 -14
- package/src/account/FederatedKeylessAccount.ts +7 -7
- package/src/account/KeylessAccount.ts +12 -7
- package/src/account/MultiEd25519Account.ts +9 -9
- package/src/account/MultiKeyAccount.ts +15 -16
- package/src/account/SingleKeyAccount.ts +10 -13
- package/src/account/index.ts +17 -12
- package/src/account/keylessSigner.ts +34 -0
- package/src/account/utils.ts +3 -3
- package/src/api/account/abstraction.ts +12 -12
- package/src/api/account.ts +12 -12
- package/src/api/ans.ts +6 -6
- package/src/api/aptos.ts +115 -88
- package/src/api/aptosConfig.ts +6 -4
- package/src/api/coin.ts +6 -6
- package/src/api/digitalAsset.ts +9 -9
- package/src/api/faucet.ts +6 -6
- package/src/api/fungibleAsset.ts +10 -10
- package/src/api/general.ts +7 -7
- package/src/api/index.ts +2 -2
- package/src/api/keyless.ts +11 -7
- package/src/api/object.ts +6 -6
- package/src/api/staking.ts +11 -6
- package/src/api/table.ts +6 -6
- package/src/api/transaction.ts +13 -13
- package/src/api/transactionSubmission/build.ts +6 -6
- package/src/api/transactionSubmission/helpers.ts +2 -2
- package/src/api/transactionSubmission/management.ts +9 -5
- package/src/api/transactionSubmission/sign.ts +4 -4
- package/src/api/transactionSubmission/simulate.ts +6 -6
- package/src/api/transactionSubmission/submit.ts +5 -5
- package/src/api/utils.ts +4 -4
- package/src/bcs/consts.ts +14 -1
- package/src/bcs/deserializer.ts +3 -3
- package/src/bcs/index.ts +6 -6
- package/src/bcs/serializable/entryFunctionBytes.ts +5 -5
- package/src/bcs/serializable/fixedBytes.ts +5 -5
- package/src/bcs/serializable/movePrimitives.ts +14 -5
- package/src/bcs/serializable/moveStructs.ts +8 -8
- package/src/bcs/serializer.ts +6 -6
- package/src/cli/index.ts +2 -2
- package/src/cli/localNode.ts +1 -1
- package/src/cli/move.ts +6 -10
- package/src/client/core.ts +30 -15
- package/src/client/get.ts +6 -8
- package/src/client/index.ts +3 -3
- package/src/client/post.ts +4 -4
- package/src/core/account/index.ts +1 -1
- package/src/core/account/utils/address.ts +4 -4
- package/src/core/account/utils/index.ts +1 -1
- package/src/core/accountAddress.ts +6 -6
- package/src/core/authenticationKey.ts +22 -10
- package/src/core/crypto/abstraction.ts +7 -7
- package/src/core/crypto/anyKeyRegistry.ts +90 -0
- package/src/core/crypto/deserializationUtils.ts +11 -19
- package/src/core/crypto/ed25519.ts +22 -13
- package/src/core/crypto/encryption/ciphertext.ts +210 -0
- package/src/core/crypto/encryption/curveSerialization.ts +46 -0
- package/src/core/crypto/encryption/fieldSerialization.ts +82 -0
- package/src/core/crypto/encryption/index.ts +14 -0
- package/src/core/crypto/encryption/symmetric.ts +148 -0
- package/src/core/crypto/ephemeral.ts +7 -7
- package/src/core/crypto/federatedKeyless.ts +8 -8
- package/src/core/crypto/hdKey.ts +7 -3
- package/src/core/crypto/index.ts +24 -17
- package/src/core/crypto/keyless.ts +33 -33
- package/src/core/crypto/keylessRegistration.ts +34 -0
- package/src/core/crypto/multiEd25519.ts +7 -7
- package/src/core/crypto/multiKey.ts +8 -8
- package/src/core/crypto/poseidon.ts +2 -2
- package/src/core/crypto/privateKey.ts +5 -5
- package/src/core/crypto/proof.ts +1 -1
- package/src/core/crypto/publicKey.ts +6 -6
- package/src/core/crypto/secp256k1.ts +26 -19
- package/src/core/crypto/secp256r1.ts +26 -19
- package/src/core/crypto/signature.ts +2 -2
- package/src/core/crypto/singleKey.ts +58 -39
- package/src/core/crypto/types.ts +4 -4
- package/src/core/crypto/utils.ts +16 -12
- package/src/core/hex.ts +3 -3
- package/src/core/index.ts +6 -6
- package/src/errors/index.ts +3 -3
- package/src/functions/abstraction.ts +11 -0
- package/src/functions/account.ts +38 -0
- package/src/functions/ans.ts +26 -0
- package/src/functions/coin.ts +7 -0
- package/src/functions/digitalAsset.ts +32 -0
- package/src/functions/faucet.ts +7 -0
- package/src/functions/fungibleAsset.ts +13 -0
- package/src/functions/general.ts +14 -0
- package/src/functions/index.ts +21 -0
- package/src/functions/keyless.ts +42 -0
- package/src/functions/object.ts +10 -0
- package/src/functions/staking.ts +11 -0
- package/src/functions/table.ts +11 -0
- package/src/functions/transaction.ts +32 -0
- package/src/functions/view.ts +6 -0
- package/src/index.ts +36 -10
- package/src/internal/abstraction.ts +10 -10
- package/src/internal/account.ts +79 -51
- package/src/internal/ans.ts +31 -24
- package/src/internal/coin.ts +8 -8
- package/src/internal/digitalAsset.ts +14 -15
- package/src/internal/encryptionKey.ts +53 -0
- package/src/internal/faucet.ts +6 -6
- package/src/internal/fungibleAsset.ts +11 -11
- package/src/internal/general.ts +12 -7
- package/src/internal/keyless.ts +21 -18
- package/src/internal/object.ts +7 -7
- package/src/internal/staking.ts +6 -6
- package/src/internal/table.ts +7 -7
- package/src/internal/transaction.ts +11 -10
- package/src/internal/transactionSubmission.ts +92 -32
- package/src/internal/utils/index.ts +1 -1
- package/src/internal/utils/utils.ts +5 -5
- package/src/internal/view.ts +5 -5
- package/src/transactions/authenticator/account.ts +12 -12
- package/src/transactions/authenticator/index.ts +2 -2
- package/src/transactions/authenticator/transaction.ts +6 -6
- package/src/transactions/index.ts +6 -6
- package/src/transactions/instances/chainId.ts +2 -2
- package/src/transactions/instances/encryptedPayload.ts +149 -0
- package/src/transactions/instances/identifier.ts +2 -2
- package/src/transactions/instances/index.ts +11 -10
- package/src/transactions/instances/moduleId.ts +5 -5
- package/src/transactions/instances/multiAgentTransaction.ts +4 -4
- package/src/transactions/instances/rawTransaction.ts +6 -6
- package/src/transactions/instances/rotationProofChallenge.ts +5 -5
- package/src/transactions/instances/signedTransaction.ts +4 -4
- package/src/transactions/instances/simpleTransaction.ts +4 -4
- package/src/transactions/instances/transactionArgument.ts +2 -2
- package/src/transactions/instances/transactionPayload.ts +127 -28
- package/src/transactions/management/accountSequenceNumber.ts +13 -14
- package/src/transactions/management/index.ts +2 -2
- package/src/transactions/management/transactionWorker.ts +10 -10
- package/src/transactions/transactionBuilder/encryptPayload.ts +236 -0
- package/src/transactions/transactionBuilder/helpers.ts +8 -5
- package/src/transactions/transactionBuilder/index.ts +5 -4
- package/src/transactions/transactionBuilder/remoteAbi.ts +664 -25
- package/src/transactions/transactionBuilder/signingMessage.ts +6 -6
- package/src/transactions/transactionBuilder/structEnumParser.ts +848 -0
- package/src/transactions/transactionBuilder/transactionBuilder.ts +130 -72
- package/src/transactions/typeTag/index.ts +5 -5
- package/src/transactions/typeTag/parser.ts +3 -3
- package/src/transactions/types.ts +103 -19
- package/src/types/ans.ts +13 -5
- package/src/types/generated/operations.ts +4 -3
- package/src/types/generated/queries.ts +1 -1
- package/src/types/index.ts +3 -3
- package/src/types/indexer.ts +1 -1
- package/src/types/types.ts +74 -6
- package/src/utils/const.ts +14 -1
- package/src/utils/helpers.ts +58 -18
- package/src/utils/index.ts +4 -4
- package/src/utils/normalizeBundle.ts +1 -1
- package/src/utils/runtime.ts +86 -0
- package/src/version.ts +1 -1
- package/dist/common/account-2FUAPVPW.d.ts +0 -8167
- package/dist/common/chunk-L5DUJTE3.js +0 -4
- package/dist/common/chunk-L5DUJTE3.js.map +0 -1
- package/dist/common/cli/index.d.ts +0 -316
- package/dist/common/cli/index.js +0 -2
- package/dist/common/cli/index.js.map +0 -1
- package/dist/common/index.d.ts +0 -10912
- package/dist/common/index.js +0 -476
- package/dist/common/index.js.map +0 -1
- package/dist/esm/Ed25519Account-DpZh3fRy.d.mts +0 -628
- package/dist/esm/account/AbstractKeylessAccount.d.mts +0 -336
- package/dist/esm/account/AbstractKeylessAccount.mjs +0 -2
- package/dist/esm/account/AbstractKeylessAccount.mjs.map +0 -1
- package/dist/esm/account/AbstractedAccount.d.mts +0 -64
- package/dist/esm/account/AbstractedAccount.mjs +0 -2
- package/dist/esm/account/AbstractedAccount.mjs.map +0 -1
- package/dist/esm/account/Account.d.mts +0 -8
- package/dist/esm/account/Account.mjs +0 -2
- package/dist/esm/account/Account.mjs.map +0 -1
- package/dist/esm/account/AccountUtils.d.mts +0 -38
- package/dist/esm/account/AccountUtils.mjs +0 -2
- package/dist/esm/account/AccountUtils.mjs.map +0 -1
- package/dist/esm/account/DerivableAbstractedAccount.d.mts +0 -59
- package/dist/esm/account/DerivableAbstractedAccount.mjs +0 -2
- package/dist/esm/account/DerivableAbstractedAccount.mjs.map +0 -1
- package/dist/esm/account/Ed25519Account.d.mts +0 -8
- package/dist/esm/account/Ed25519Account.mjs +0 -2
- package/dist/esm/account/Ed25519Account.mjs.map +0 -1
- package/dist/esm/account/EphemeralKeyPair.d.mts +0 -165
- package/dist/esm/account/EphemeralKeyPair.mjs +0 -2
- package/dist/esm/account/EphemeralKeyPair.mjs.map +0 -1
- package/dist/esm/account/FederatedKeylessAccount.d.mts +0 -118
- package/dist/esm/account/FederatedKeylessAccount.mjs +0 -2
- package/dist/esm/account/FederatedKeylessAccount.mjs.map +0 -1
- package/dist/esm/account/KeylessAccount.d.mts +0 -124
- package/dist/esm/account/KeylessAccount.mjs +0 -2
- package/dist/esm/account/KeylessAccount.mjs.map +0 -1
- package/dist/esm/account/MultiEd25519Account.d.mts +0 -102
- package/dist/esm/account/MultiEd25519Account.mjs +0 -2
- package/dist/esm/account/MultiEd25519Account.mjs.map +0 -1
- package/dist/esm/account/MultiKeyAccount.d.mts +0 -206
- package/dist/esm/account/MultiKeyAccount.mjs +0 -2
- package/dist/esm/account/MultiKeyAccount.mjs.map +0 -1
- package/dist/esm/account/SingleKeyAccount.d.mts +0 -8
- package/dist/esm/account/SingleKeyAccount.mjs +0 -2
- package/dist/esm/account/SingleKeyAccount.mjs.map +0 -1
- package/dist/esm/account/index.d.mts +0 -24
- package/dist/esm/account/index.mjs +0 -2
- package/dist/esm/account/index.mjs.map +0 -1
- package/dist/esm/account/utils.d.mts +0 -14
- package/dist/esm/account/utils.mjs +0 -2
- package/dist/esm/account/utils.mjs.map +0 -1
- package/dist/esm/account-sIOs_9XJ.d.mts +0 -7369
- package/dist/esm/api/account/abstraction.d.mts +0 -181
- package/dist/esm/api/account/abstraction.mjs +0 -2
- package/dist/esm/api/account/abstraction.mjs.map +0 -1
- package/dist/esm/api/account.d.mts +0 -852
- package/dist/esm/api/account.mjs +0 -2
- package/dist/esm/api/account.mjs.map +0 -1
- package/dist/esm/api/ans.d.mts +0 -570
- package/dist/esm/api/ans.mjs +0 -2
- package/dist/esm/api/ans.mjs.map +0 -1
- package/dist/esm/api/aptos.d.mts +0 -114
- package/dist/esm/api/aptos.mjs +0 -2
- package/dist/esm/api/aptos.mjs.map +0 -1
- package/dist/esm/api/aptosConfig.d.mts +0 -7
- package/dist/esm/api/aptosConfig.mjs +0 -2
- package/dist/esm/api/aptosConfig.mjs.map +0 -1
- package/dist/esm/api/coin.d.mts +0 -81
- package/dist/esm/api/coin.mjs +0 -2
- package/dist/esm/api/coin.mjs.map +0 -1
- package/dist/esm/api/digitalAsset.d.mts +0 -1030
- package/dist/esm/api/digitalAsset.mjs +0 -2
- package/dist/esm/api/digitalAsset.mjs.map +0 -1
- package/dist/esm/api/faucet.d.mts +0 -80
- package/dist/esm/api/faucet.mjs +0 -2
- package/dist/esm/api/faucet.mjs.map +0 -1
- package/dist/esm/api/fungibleAsset.d.mts +0 -288
- package/dist/esm/api/fungibleAsset.mjs +0 -2
- package/dist/esm/api/fungibleAsset.mjs.map +0 -1
- package/dist/esm/api/general.d.mts +0 -303
- package/dist/esm/api/general.mjs +0 -2
- package/dist/esm/api/general.mjs.map +0 -1
- package/dist/esm/api/index.d.mts +0 -47
- package/dist/esm/api/index.mjs +0 -2
- package/dist/esm/api/index.mjs.map +0 -1
- package/dist/esm/api/keyless.d.mts +0 -170
- package/dist/esm/api/keyless.mjs +0 -2
- package/dist/esm/api/keyless.mjs.map +0 -1
- package/dist/esm/api/object.d.mts +0 -80
- package/dist/esm/api/object.mjs +0 -2
- package/dist/esm/api/object.mjs.map +0 -1
- package/dist/esm/api/staking.d.mts +0 -134
- package/dist/esm/api/staking.mjs +0 -2
- package/dist/esm/api/staking.mjs.map +0 -1
- package/dist/esm/api/table.d.mts +0 -169
- package/dist/esm/api/table.mjs +0 -2
- package/dist/esm/api/table.mjs.map +0 -1
- package/dist/esm/api/transaction.d.mts +0 -681
- package/dist/esm/api/transaction.mjs +0 -2
- package/dist/esm/api/transaction.mjs.map +0 -1
- package/dist/esm/api/transactionSubmission/build.d.mts +0 -141
- package/dist/esm/api/transactionSubmission/build.mjs +0 -2
- package/dist/esm/api/transactionSubmission/build.mjs.map +0 -1
- package/dist/esm/api/transactionSubmission/helpers.d.mts +0 -98
- package/dist/esm/api/transactionSubmission/helpers.mjs +0 -2
- package/dist/esm/api/transactionSubmission/helpers.mjs.map +0 -1
- package/dist/esm/api/transactionSubmission/management.d.mts +0 -168
- package/dist/esm/api/transactionSubmission/management.mjs +0 -2
- package/dist/esm/api/transactionSubmission/management.mjs.map +0 -1
- package/dist/esm/api/transactionSubmission/sign.d.mts +0 -124
- package/dist/esm/api/transactionSubmission/sign.mjs +0 -2
- package/dist/esm/api/transactionSubmission/sign.mjs.map +0 -1
- package/dist/esm/api/transactionSubmission/simulate.d.mts +0 -181
- package/dist/esm/api/transactionSubmission/simulate.mjs +0 -2
- package/dist/esm/api/transactionSubmission/simulate.mjs.map +0 -1
- package/dist/esm/api/transactionSubmission/submit.d.mts +0 -142
- package/dist/esm/api/transactionSubmission/submit.mjs +0 -2
- package/dist/esm/api/transactionSubmission/submit.mjs.map +0 -1
- package/dist/esm/api/utils.d.mts +0 -45
- package/dist/esm/api/utils.mjs +0 -2
- package/dist/esm/api/utils.mjs.map +0 -1
- package/dist/esm/bcs/consts.d.mts +0 -28
- package/dist/esm/bcs/consts.mjs +0 -2
- package/dist/esm/bcs/consts.mjs.map +0 -1
- package/dist/esm/bcs/deserializer.d.mts +0 -7
- package/dist/esm/bcs/deserializer.mjs +0 -2
- package/dist/esm/bcs/deserializer.mjs.map +0 -1
- package/dist/esm/bcs/index.d.mts +0 -8
- package/dist/esm/bcs/index.mjs +0 -2
- package/dist/esm/bcs/index.mjs.map +0 -1
- package/dist/esm/bcs/serializable/entryFunctionBytes.d.mts +0 -65
- package/dist/esm/bcs/serializable/entryFunctionBytes.mjs +0 -2
- package/dist/esm/bcs/serializable/entryFunctionBytes.mjs.map +0 -1
- package/dist/esm/bcs/serializable/fixedBytes.d.mts +0 -7
- package/dist/esm/bcs/serializable/fixedBytes.mjs +0 -2
- package/dist/esm/bcs/serializable/fixedBytes.mjs.map +0 -1
- package/dist/esm/bcs/serializable/movePrimitives.d.mts +0 -7
- package/dist/esm/bcs/serializable/movePrimitives.mjs +0 -2
- package/dist/esm/bcs/serializable/movePrimitives.mjs.map +0 -1
- package/dist/esm/bcs/serializable/moveStructs.d.mts +0 -7
- package/dist/esm/bcs/serializable/moveStructs.mjs +0 -2
- package/dist/esm/bcs/serializable/moveStructs.mjs.map +0 -1
- package/dist/esm/bcs/serializer.d.mts +0 -7
- package/dist/esm/bcs/serializer.mjs +0 -2
- package/dist/esm/bcs/serializer.mjs.map +0 -1
- package/dist/esm/chunk-226FBOWQ.mjs +0 -2
- package/dist/esm/chunk-226FBOWQ.mjs.map +0 -1
- package/dist/esm/chunk-2DQRUJUC.mjs +0 -2
- package/dist/esm/chunk-2DQRUJUC.mjs.map +0 -1
- package/dist/esm/chunk-2EBXCCLB.mjs +0 -2
- package/dist/esm/chunk-2EBXCCLB.mjs.map +0 -1
- package/dist/esm/chunk-2YA4KQUV.mjs +0 -2
- package/dist/esm/chunk-2YA4KQUV.mjs.map +0 -1
- package/dist/esm/chunk-3ZC6F5SJ.mjs +0 -2
- package/dist/esm/chunk-3ZC6F5SJ.mjs.map +0 -1
- package/dist/esm/chunk-44MMFX5F.mjs +0 -2
- package/dist/esm/chunk-44MMFX5F.mjs.map +0 -1
- package/dist/esm/chunk-4KEZEYCV.mjs +0 -2
- package/dist/esm/chunk-4KEZEYCV.mjs.map +0 -1
- package/dist/esm/chunk-4QMXOWHP.mjs +0 -1
- package/dist/esm/chunk-4QMXOWHP.mjs.map +0 -1
- package/dist/esm/chunk-4WPQQPUF.mjs +0 -1
- package/dist/esm/chunk-4WPQQPUF.mjs.map +0 -1
- package/dist/esm/chunk-5HXLZHDW.mjs +0 -1
- package/dist/esm/chunk-5HXLZHDW.mjs.map +0 -1
- package/dist/esm/chunk-6T2OBPIF.mjs +0 -4
- package/dist/esm/chunk-6T2OBPIF.mjs.map +0 -1
- package/dist/esm/chunk-7ECCT6PK.mjs +0 -1
- package/dist/esm/chunk-7ECCT6PK.mjs.map +0 -1
- package/dist/esm/chunk-A5H5VKUI.mjs +0 -2
- package/dist/esm/chunk-A5H5VKUI.mjs.map +0 -1
- package/dist/esm/chunk-A5L76YP7.mjs +0 -2
- package/dist/esm/chunk-A5L76YP7.mjs.map +0 -1
- package/dist/esm/chunk-C3Q23D22.mjs +0 -2
- package/dist/esm/chunk-C3Q23D22.mjs.map +0 -1
- package/dist/esm/chunk-DE5K76I2.mjs +0 -1
- package/dist/esm/chunk-DE5K76I2.mjs.map +0 -1
- package/dist/esm/chunk-DPHBSAZQ.mjs +0 -2
- package/dist/esm/chunk-DPHBSAZQ.mjs.map +0 -1
- package/dist/esm/chunk-F45HI7LU.mjs +0 -2
- package/dist/esm/chunk-F45HI7LU.mjs.map +0 -1
- package/dist/esm/chunk-F4RJMSAW.mjs +0 -2
- package/dist/esm/chunk-F4RJMSAW.mjs.map +0 -1
- package/dist/esm/chunk-FAOLAKLJ.mjs +0 -2
- package/dist/esm/chunk-FAOLAKLJ.mjs.map +0 -1
- package/dist/esm/chunk-FZY4PMEE.mjs +0 -1
- package/dist/esm/chunk-FZY4PMEE.mjs.map +0 -1
- package/dist/esm/chunk-G3MHXDYA.mjs +0 -1
- package/dist/esm/chunk-G3MHXDYA.mjs.map +0 -1
- package/dist/esm/chunk-G5OONGWS.mjs +0 -488
- package/dist/esm/chunk-G5OONGWS.mjs.map +0 -1
- package/dist/esm/chunk-GJYLYE6R.mjs +0 -2
- package/dist/esm/chunk-GJYLYE6R.mjs.map +0 -1
- package/dist/esm/chunk-GYYSHYO5.mjs +0 -2
- package/dist/esm/chunk-GYYSHYO5.mjs.map +0 -1
- package/dist/esm/chunk-HGLO5LDS.mjs +0 -1
- package/dist/esm/chunk-HGLO5LDS.mjs.map +0 -1
- package/dist/esm/chunk-IEW452EO.mjs +0 -7
- package/dist/esm/chunk-IEW452EO.mjs.map +0 -1
- package/dist/esm/chunk-IF4UU2MT.mjs +0 -2
- package/dist/esm/chunk-IF4UU2MT.mjs.map +0 -1
- package/dist/esm/chunk-ITZN23GU.mjs +0 -2
- package/dist/esm/chunk-ITZN23GU.mjs.map +0 -1
- package/dist/esm/chunk-IZF6POVR.mjs +0 -4
- package/dist/esm/chunk-IZF6POVR.mjs.map +0 -1
- package/dist/esm/chunk-KDMSOCZY.mjs +0 -2
- package/dist/esm/chunk-KDMSOCZY.mjs.map +0 -1
- package/dist/esm/chunk-KKPH2JUV.mjs +0 -2
- package/dist/esm/chunk-KKPH2JUV.mjs.map +0 -1
- package/dist/esm/chunk-LVZ7QMUH.mjs +0 -2
- package/dist/esm/chunk-LVZ7QMUH.mjs.map +0 -1
- package/dist/esm/chunk-M65PXVDO.mjs +0 -2
- package/dist/esm/chunk-M65PXVDO.mjs.map +0 -1
- package/dist/esm/chunk-MKTR4U2R.mjs +0 -2
- package/dist/esm/chunk-MKTR4U2R.mjs.map +0 -1
- package/dist/esm/chunk-NECL5FCQ.mjs +0 -1
- package/dist/esm/chunk-NECL5FCQ.mjs.map +0 -1
- package/dist/esm/chunk-NHRPXEUE.mjs +0 -2
- package/dist/esm/chunk-NHRPXEUE.mjs.map +0 -1
- package/dist/esm/chunk-NNXTS2GB.mjs +0 -2
- package/dist/esm/chunk-NNXTS2GB.mjs.map +0 -1
- package/dist/esm/chunk-NP2IAUME.mjs +0 -2
- package/dist/esm/chunk-NP2IAUME.mjs.map +0 -1
- package/dist/esm/chunk-NPWYZVHE.mjs +0 -2
- package/dist/esm/chunk-NPWYZVHE.mjs.map +0 -1
- package/dist/esm/chunk-NTMFADQ7.mjs +0 -2
- package/dist/esm/chunk-NTMFADQ7.mjs.map +0 -1
- package/dist/esm/chunk-ODNZJSOC.mjs +0 -2
- package/dist/esm/chunk-ODNZJSOC.mjs.map +0 -1
- package/dist/esm/chunk-P5HCJN3A.mjs +0 -2
- package/dist/esm/chunk-P5HCJN3A.mjs.map +0 -1
- package/dist/esm/chunk-Q5ESW36C.mjs +0 -2
- package/dist/esm/chunk-Q5ESW36C.mjs.map +0 -1
- package/dist/esm/chunk-QE5MOGUI.mjs +0 -2
- package/dist/esm/chunk-QE5MOGUI.mjs.map +0 -1
- package/dist/esm/chunk-RB2GC7FW.mjs +0 -2
- package/dist/esm/chunk-RB2GC7FW.mjs.map +0 -1
- package/dist/esm/chunk-RUKFK3OC.mjs +0 -2
- package/dist/esm/chunk-RUKFK3OC.mjs.map +0 -1
- package/dist/esm/chunk-RYCI4VKO.mjs +0 -2
- package/dist/esm/chunk-RYCI4VKO.mjs.map +0 -1
- package/dist/esm/chunk-RZNP3WG4.mjs +0 -2
- package/dist/esm/chunk-RZNP3WG4.mjs.map +0 -1
- package/dist/esm/chunk-STY74NUA.mjs +0 -2
- package/dist/esm/chunk-STY74NUA.mjs.map +0 -1
- package/dist/esm/chunk-TAHLOBRG.mjs +0 -2
- package/dist/esm/chunk-TAHLOBRG.mjs.map +0 -1
- package/dist/esm/chunk-TBIK7DML.mjs +0 -2
- package/dist/esm/chunk-TBIK7DML.mjs.map +0 -1
- package/dist/esm/chunk-UVJW4DPP.mjs +0 -2
- package/dist/esm/chunk-UVJW4DPP.mjs.map +0 -1
- package/dist/esm/chunk-UVNAHETD.mjs +0 -2
- package/dist/esm/chunk-UVNAHETD.mjs.map +0 -1
- package/dist/esm/chunk-UYVPNUH3.mjs +0 -1
- package/dist/esm/chunk-UYVPNUH3.mjs.map +0 -1
- package/dist/esm/chunk-V3MBJJTL.mjs +0 -1
- package/dist/esm/chunk-V3MBJJTL.mjs.map +0 -1
- package/dist/esm/chunk-WOPHK7LB.mjs +0 -2
- package/dist/esm/chunk-WOPHK7LB.mjs.map +0 -1
- package/dist/esm/chunk-WZZ7PJ3X.mjs +0 -2
- package/dist/esm/chunk-WZZ7PJ3X.mjs.map +0 -1
- package/dist/esm/chunk-X2TPNKLV.mjs +0 -2
- package/dist/esm/chunk-X2TPNKLV.mjs.map +0 -1
- package/dist/esm/chunk-ZOSOF6ST.mjs +0 -2
- package/dist/esm/chunk-ZOSOF6ST.mjs.map +0 -1
- package/dist/esm/chunk-ZP4DWSQA.mjs +0 -2
- package/dist/esm/chunk-ZP4DWSQA.mjs.map +0 -1
- package/dist/esm/cli/index.d.mts +0 -10
- package/dist/esm/cli/index.mjs +0 -2
- package/dist/esm/cli/index.mjs.map +0 -1
- package/dist/esm/cli/localNode.d.mts +0 -67
- package/dist/esm/cli/localNode.mjs +0 -2
- package/dist/esm/cli/localNode.mjs.map +0 -1
- package/dist/esm/cli/move.d.mts +0 -257
- package/dist/esm/cli/move.mjs +0 -2
- package/dist/esm/cli/move.mjs.map +0 -1
- package/dist/esm/client/core.d.mts +0 -43
- package/dist/esm/client/core.mjs +0 -2
- package/dist/esm/client/core.mjs.map +0 -1
- package/dist/esm/client/get.d.mts +0 -125
- package/dist/esm/client/get.mjs +0 -2
- package/dist/esm/client/get.mjs.map +0 -1
- package/dist/esm/client/index.d.mts +0 -10
- package/dist/esm/client/index.mjs +0 -2
- package/dist/esm/client/index.mjs.map +0 -1
- package/dist/esm/client/post.d.mts +0 -161
- package/dist/esm/client/post.mjs +0 -2
- package/dist/esm/client/post.mjs.map +0 -1
- package/dist/esm/core/account/index.d.mts +0 -8
- package/dist/esm/core/account/index.mjs +0 -2
- package/dist/esm/core/account/index.mjs.map +0 -1
- package/dist/esm/core/account/utils/address.d.mts +0 -55
- package/dist/esm/core/account/utils/address.mjs +0 -2
- package/dist/esm/core/account/utils/address.mjs.map +0 -1
- package/dist/esm/core/account/utils/index.d.mts +0 -8
- package/dist/esm/core/account/utils/index.mjs +0 -2
- package/dist/esm/core/account/utils/index.mjs.map +0 -1
- package/dist/esm/core/accountAddress.d.mts +0 -7
- package/dist/esm/core/accountAddress.mjs +0 -2
- package/dist/esm/core/accountAddress.mjs.map +0 -1
- package/dist/esm/core/authenticationKey.d.mts +0 -7
- package/dist/esm/core/authenticationKey.mjs +0 -2
- package/dist/esm/core/authenticationKey.mjs.map +0 -1
- package/dist/esm/core/common.d.mts +0 -52
- package/dist/esm/core/common.mjs +0 -2
- package/dist/esm/core/common.mjs.map +0 -1
- package/dist/esm/core/crypto/abstraction.d.mts +0 -24
- package/dist/esm/core/crypto/abstraction.mjs +0 -2
- package/dist/esm/core/crypto/abstraction.mjs.map +0 -1
- package/dist/esm/core/crypto/deserializationUtils.d.mts +0 -28
- package/dist/esm/core/crypto/deserializationUtils.mjs +0 -2
- package/dist/esm/core/crypto/deserializationUtils.mjs.map +0 -1
- package/dist/esm/core/crypto/ed25519.d.mts +0 -7
- package/dist/esm/core/crypto/ed25519.mjs +0 -2
- package/dist/esm/core/crypto/ed25519.mjs.map +0 -1
- package/dist/esm/core/crypto/ephemeral.d.mts +0 -116
- package/dist/esm/core/crypto/ephemeral.mjs +0 -2
- package/dist/esm/core/crypto/ephemeral.mjs.map +0 -1
- package/dist/esm/core/crypto/federatedKeyless.d.mts +0 -13
- package/dist/esm/core/crypto/federatedKeyless.mjs +0 -2
- package/dist/esm/core/crypto/federatedKeyless.mjs.map +0 -1
- package/dist/esm/core/crypto/hdKey.d.mts +0 -95
- package/dist/esm/core/crypto/hdKey.mjs +0 -2
- package/dist/esm/core/crypto/hdKey.mjs.map +0 -1
- package/dist/esm/core/crypto/index.d.mts +0 -19
- package/dist/esm/core/crypto/index.mjs +0 -2
- package/dist/esm/core/crypto/index.mjs.map +0 -1
- package/dist/esm/core/crypto/keyless.d.mts +0 -13
- package/dist/esm/core/crypto/keyless.mjs +0 -2
- package/dist/esm/core/crypto/keyless.mjs.map +0 -1
- package/dist/esm/core/crypto/multiEd25519.d.mts +0 -7
- package/dist/esm/core/crypto/multiEd25519.mjs +0 -2
- package/dist/esm/core/crypto/multiEd25519.mjs.map +0 -1
- package/dist/esm/core/crypto/multiKey.d.mts +0 -7
- package/dist/esm/core/crypto/multiKey.mjs +0 -2
- package/dist/esm/core/crypto/multiKey.mjs.map +0 -1
- package/dist/esm/core/crypto/poseidon.d.mts +0 -59
- package/dist/esm/core/crypto/poseidon.mjs +0 -2
- package/dist/esm/core/crypto/poseidon.mjs.map +0 -1
- package/dist/esm/core/crypto/privateKey.d.mts +0 -7
- package/dist/esm/core/crypto/privateKey.mjs +0 -2
- package/dist/esm/core/crypto/privateKey.mjs.map +0 -1
- package/dist/esm/core/crypto/proof.d.mts +0 -18
- package/dist/esm/core/crypto/proof.mjs +0 -2
- package/dist/esm/core/crypto/proof.mjs.map +0 -1
- package/dist/esm/core/crypto/publicKey.d.mts +0 -7
- package/dist/esm/core/crypto/publicKey.mjs +0 -2
- package/dist/esm/core/crypto/publicKey.mjs.map +0 -1
- package/dist/esm/core/crypto/secp256k1.d.mts +0 -7
- package/dist/esm/core/crypto/secp256k1.mjs +0 -2
- package/dist/esm/core/crypto/secp256k1.mjs.map +0 -1
- package/dist/esm/core/crypto/secp256r1.d.mts +0 -306
- package/dist/esm/core/crypto/secp256r1.mjs +0 -2
- package/dist/esm/core/crypto/secp256r1.mjs.map +0 -1
- package/dist/esm/core/crypto/signature.d.mts +0 -7
- package/dist/esm/core/crypto/signature.mjs +0 -2
- package/dist/esm/core/crypto/signature.mjs.map +0 -1
- package/dist/esm/core/crypto/singleKey.d.mts +0 -7
- package/dist/esm/core/crypto/singleKey.mjs +0 -2
- package/dist/esm/core/crypto/singleKey.mjs.map +0 -1
- package/dist/esm/core/crypto/types.d.mts +0 -11
- package/dist/esm/core/crypto/types.mjs +0 -2
- package/dist/esm/core/crypto/types.mjs.map +0 -1
- package/dist/esm/core/crypto/utils.d.mts +0 -23
- package/dist/esm/core/crypto/utils.mjs +0 -2
- package/dist/esm/core/crypto/utils.mjs.map +0 -1
- package/dist/esm/core/hex.d.mts +0 -7
- package/dist/esm/core/hex.mjs +0 -2
- package/dist/esm/core/hex.mjs.map +0 -1
- package/dist/esm/core/index.d.mts +0 -20
- package/dist/esm/core/index.mjs +0 -2
- package/dist/esm/core/index.mjs.map +0 -1
- package/dist/esm/errors/index.d.mts +0 -131
- package/dist/esm/errors/index.mjs +0 -2
- package/dist/esm/errors/index.mjs.map +0 -1
- package/dist/esm/federatedKeyless-Cuo0IGJ6.d.mts +0 -880
- package/dist/esm/index.d.mts +0 -72
- package/dist/esm/index.mjs +0 -2
- package/dist/esm/index.mjs.map +0 -1
- package/dist/esm/internal/abstraction.d.mts +0 -27
- package/dist/esm/internal/abstraction.mjs +0 -2
- package/dist/esm/internal/abstraction.mjs.map +0 -1
- package/dist/esm/internal/account.d.mts +0 -453
- package/dist/esm/internal/account.mjs +0 -2
- package/dist/esm/internal/account.mjs.map +0 -1
- package/dist/esm/internal/ans.d.mts +0 -417
- package/dist/esm/internal/ans.mjs +0 -2
- package/dist/esm/internal/ans.mjs.map +0 -1
- package/dist/esm/internal/coin.d.mts +0 -31
- package/dist/esm/internal/coin.mjs +0 -2
- package/dist/esm/internal/coin.mjs.map +0 -1
- package/dist/esm/internal/digitalAsset.d.mts +0 -580
- package/dist/esm/internal/digitalAsset.mjs +0 -2
- package/dist/esm/internal/digitalAsset.mjs.map +0 -1
- package/dist/esm/internal/faucet.d.mts +0 -42
- package/dist/esm/internal/faucet.mjs +0 -2
- package/dist/esm/internal/faucet.mjs.map +0 -1
- package/dist/esm/internal/fungibleAsset.d.mts +0 -112
- package/dist/esm/internal/fungibleAsset.mjs +0 -2
- package/dist/esm/internal/fungibleAsset.mjs.map +0 -1
- package/dist/esm/internal/general.d.mts +0 -94
- package/dist/esm/internal/general.mjs +0 -2
- package/dist/esm/internal/general.mjs.map +0 -1
- package/dist/esm/internal/keyless.d.mts +0 -111
- package/dist/esm/internal/keyless.mjs +0 -2
- package/dist/esm/internal/keyless.mjs.map +0 -1
- package/dist/esm/internal/object.d.mts +0 -42
- package/dist/esm/internal/object.mjs +0 -2
- package/dist/esm/internal/object.mjs.map +0 -1
- package/dist/esm/internal/staking.d.mts +0 -60
- package/dist/esm/internal/staking.mjs +0 -2
- package/dist/esm/internal/staking.mjs.map +0 -1
- package/dist/esm/internal/table.d.mts +0 -66
- package/dist/esm/internal/table.mjs +0 -2
- package/dist/esm/internal/table.mjs.map +0 -1
- package/dist/esm/internal/transaction.d.mts +0 -199
- package/dist/esm/internal/transaction.mjs +0 -2
- package/dist/esm/internal/transaction.mjs.map +0 -1
- package/dist/esm/internal/transactionSubmission.d.mts +0 -165
- package/dist/esm/internal/transactionSubmission.mjs +0 -2
- package/dist/esm/internal/transactionSubmission.mjs.map +0 -1
- package/dist/esm/internal/utils/index.d.mts +0 -8
- package/dist/esm/internal/utils/index.mjs +0 -2
- package/dist/esm/internal/utils/index.mjs.map +0 -1
- package/dist/esm/internal/utils/utils.d.mts +0 -41
- package/dist/esm/internal/utils/utils.mjs +0 -2
- package/dist/esm/internal/utils/utils.mjs.map +0 -1
- package/dist/esm/internal/view.d.mts +0 -20
- package/dist/esm/internal/view.mjs +0 -2
- package/dist/esm/internal/view.mjs.map +0 -1
- package/dist/esm/transactions/authenticator/account.d.mts +0 -7
- package/dist/esm/transactions/authenticator/account.mjs +0 -2
- package/dist/esm/transactions/authenticator/account.mjs.map +0 -1
- package/dist/esm/transactions/authenticator/index.d.mts +0 -8
- package/dist/esm/transactions/authenticator/index.mjs +0 -2
- package/dist/esm/transactions/authenticator/index.mjs.map +0 -1
- package/dist/esm/transactions/authenticator/transaction.d.mts +0 -152
- package/dist/esm/transactions/authenticator/transaction.mjs +0 -2
- package/dist/esm/transactions/authenticator/transaction.mjs.map +0 -1
- package/dist/esm/transactions/index.d.mts +0 -15
- package/dist/esm/transactions/index.mjs +0 -2
- package/dist/esm/transactions/index.mjs.map +0 -1
- package/dist/esm/transactions/instances/chainId.d.mts +0 -7
- package/dist/esm/transactions/instances/chainId.mjs +0 -2
- package/dist/esm/transactions/instances/chainId.mjs.map +0 -1
- package/dist/esm/transactions/instances/identifier.d.mts +0 -7
- package/dist/esm/transactions/instances/identifier.mjs +0 -2
- package/dist/esm/transactions/instances/identifier.mjs.map +0 -1
- package/dist/esm/transactions/instances/index.d.mts +0 -10
- package/dist/esm/transactions/instances/index.mjs +0 -2
- package/dist/esm/transactions/instances/index.mjs.map +0 -1
- package/dist/esm/transactions/instances/moduleId.d.mts +0 -7
- package/dist/esm/transactions/instances/moduleId.mjs +0 -2
- package/dist/esm/transactions/instances/moduleId.mjs.map +0 -1
- package/dist/esm/transactions/instances/multiAgentTransaction.d.mts +0 -7
- package/dist/esm/transactions/instances/multiAgentTransaction.mjs +0 -2
- package/dist/esm/transactions/instances/multiAgentTransaction.mjs.map +0 -1
- package/dist/esm/transactions/instances/rawTransaction.d.mts +0 -7
- package/dist/esm/transactions/instances/rawTransaction.mjs +0 -2
- package/dist/esm/transactions/instances/rawTransaction.mjs.map +0 -1
- package/dist/esm/transactions/instances/rotationProofChallenge.d.mts +0 -58
- package/dist/esm/transactions/instances/rotationProofChallenge.mjs +0 -2
- package/dist/esm/transactions/instances/rotationProofChallenge.mjs.map +0 -1
- package/dist/esm/transactions/instances/signedTransaction.d.mts +0 -59
- package/dist/esm/transactions/instances/signedTransaction.mjs +0 -2
- package/dist/esm/transactions/instances/signedTransaction.mjs.map +0 -1
- package/dist/esm/transactions/instances/simpleTransaction.d.mts +0 -7
- package/dist/esm/transactions/instances/simpleTransaction.mjs +0 -2
- package/dist/esm/transactions/instances/simpleTransaction.mjs.map +0 -1
- package/dist/esm/transactions/instances/transactionArgument.d.mts +0 -7
- package/dist/esm/transactions/instances/transactionArgument.mjs +0 -2
- package/dist/esm/transactions/instances/transactionArgument.mjs.map +0 -1
- package/dist/esm/transactions/instances/transactionPayload.d.mts +0 -7
- package/dist/esm/transactions/instances/transactionPayload.mjs +0 -2
- package/dist/esm/transactions/instances/transactionPayload.mjs.map +0 -1
- package/dist/esm/transactions/management/accountSequenceNumber.d.mts +0 -123
- package/dist/esm/transactions/management/accountSequenceNumber.mjs +0 -2
- package/dist/esm/transactions/management/accountSequenceNumber.mjs.map +0 -1
- package/dist/esm/transactions/management/asyncQueue.d.mts +0 -77
- package/dist/esm/transactions/management/asyncQueue.mjs +0 -2
- package/dist/esm/transactions/management/asyncQueue.mjs.map +0 -1
- package/dist/esm/transactions/management/index.d.mts +0 -12
- package/dist/esm/transactions/management/index.mjs +0 -2
- package/dist/esm/transactions/management/index.mjs.map +0 -1
- package/dist/esm/transactions/management/transactionWorker.d.mts +0 -218
- package/dist/esm/transactions/management/transactionWorker.mjs +0 -2
- package/dist/esm/transactions/management/transactionWorker.mjs.map +0 -1
- package/dist/esm/transactions/transactionBuilder/helpers.d.mts +0 -189
- package/dist/esm/transactions/transactionBuilder/helpers.mjs +0 -2
- package/dist/esm/transactions/transactionBuilder/helpers.mjs.map +0 -1
- package/dist/esm/transactions/transactionBuilder/index.d.mts +0 -11
- package/dist/esm/transactions/transactionBuilder/index.mjs +0 -2
- package/dist/esm/transactions/transactionBuilder/index.mjs.map +0 -1
- package/dist/esm/transactions/transactionBuilder/remoteAbi.d.mts +0 -105
- package/dist/esm/transactions/transactionBuilder/remoteAbi.mjs +0 -2
- package/dist/esm/transactions/transactionBuilder/remoteAbi.mjs.map +0 -1
- package/dist/esm/transactions/transactionBuilder/signingMessage.d.mts +0 -62
- package/dist/esm/transactions/transactionBuilder/signingMessage.mjs +0 -2
- package/dist/esm/transactions/transactionBuilder/signingMessage.mjs.map +0 -1
- package/dist/esm/transactions/transactionBuilder/transactionBuilder.d.mts +0 -192
- package/dist/esm/transactions/transactionBuilder/transactionBuilder.mjs +0 -2
- package/dist/esm/transactions/transactionBuilder/transactionBuilder.mjs.map +0 -1
- package/dist/esm/transactions/typeTag/index.d.mts +0 -7
- package/dist/esm/transactions/typeTag/index.mjs +0 -2
- package/dist/esm/transactions/typeTag/index.mjs.map +0 -1
- package/dist/esm/transactions/typeTag/parser.d.mts +0 -81
- package/dist/esm/transactions/typeTag/parser.mjs +0 -2
- package/dist/esm/transactions/typeTag/parser.mjs.map +0 -1
- package/dist/esm/transactions/types.d.mts +0 -7
- package/dist/esm/transactions/types.mjs +0 -2
- package/dist/esm/transactions/types.mjs.map +0 -1
- package/dist/esm/types/abstraction.d.mts +0 -15
- package/dist/esm/types/abstraction.mjs +0 -2
- package/dist/esm/types/abstraction.mjs.map +0 -1
- package/dist/esm/types/ans.d.mts +0 -109
- package/dist/esm/types/ans.mjs +0 -2
- package/dist/esm/types/ans.mjs.map +0 -1
- package/dist/esm/types/generated/operations.d.mts +0 -703
- package/dist/esm/types/generated/operations.mjs +0 -1
- package/dist/esm/types/generated/operations.mjs.map +0 -1
- package/dist/esm/types/generated/queries.d.mts +0 -66
- package/dist/esm/types/generated/queries.mjs +0 -2
- package/dist/esm/types/generated/queries.mjs.map +0 -1
- package/dist/esm/types/generated/types.d.mts +0 -9679
- package/dist/esm/types/generated/types.mjs +0 -2
- package/dist/esm/types/generated/types.mjs.map +0 -1
- package/dist/esm/types/index.d.mts +0 -8
- package/dist/esm/types/index.mjs +0 -2
- package/dist/esm/types/index.mjs.map +0 -1
- package/dist/esm/types/indexer.d.mts +0 -186
- package/dist/esm/types/indexer.mjs +0 -2
- package/dist/esm/types/indexer.mjs.map +0 -1
- package/dist/esm/types/keyless.d.mts +0 -102
- package/dist/esm/types/keyless.mjs +0 -1
- package/dist/esm/types/keyless.mjs.map +0 -1
- package/dist/esm/types/types.d.mts +0 -7
- package/dist/esm/types/types.mjs +0 -2
- package/dist/esm/types/types.mjs.map +0 -1
- package/dist/esm/utils/apiEndpoints.d.mts +0 -51
- package/dist/esm/utils/apiEndpoints.mjs +0 -2
- package/dist/esm/utils/apiEndpoints.mjs.map +0 -1
- package/dist/esm/utils/const.d.mts +0 -104
- package/dist/esm/utils/const.mjs +0 -2
- package/dist/esm/utils/const.mjs.map +0 -1
- package/dist/esm/utils/helpers.d.mts +0 -193
- package/dist/esm/utils/helpers.mjs +0 -2
- package/dist/esm/utils/helpers.mjs.map +0 -1
- package/dist/esm/utils/index.d.mts +0 -9
- package/dist/esm/utils/index.mjs +0 -2
- package/dist/esm/utils/index.mjs.map +0 -1
- package/dist/esm/utils/memoize.d.mts +0 -48
- package/dist/esm/utils/memoize.mjs +0 -2
- package/dist/esm/utils/memoize.mjs.map +0 -1
- package/dist/esm/utils/normalizeBundle.d.mts +0 -35
- package/dist/esm/utils/normalizeBundle.mjs +0 -2
- package/dist/esm/utils/normalizeBundle.mjs.map +0 -1
- package/dist/esm/version.d.mts +0 -8
- package/dist/esm/version.mjs +0 -2
- package/dist/esm/version.mjs.map +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// Copyright © Aptos Foundation
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
|
-
import { parseTypeTag } from "../typeTag/parser";
|
|
4
|
+
import { parseTypeTag } from "../typeTag/parser.js";
|
|
5
5
|
import {
|
|
6
6
|
TypeTag,
|
|
7
7
|
TypeTagAddress,
|
|
@@ -19,8 +19,8 @@ import {
|
|
|
19
19
|
TypeTagU32,
|
|
20
20
|
TypeTagU64,
|
|
21
21
|
TypeTagU8,
|
|
22
|
-
} from "../typeTag";
|
|
23
|
-
import { AptosConfig } from "../../api/aptosConfig";
|
|
22
|
+
} from "../typeTag/index.js";
|
|
23
|
+
import { AptosConfig } from "../../api/aptosConfig.js";
|
|
24
24
|
import {
|
|
25
25
|
EntryFunctionArgumentTypes,
|
|
26
26
|
SimpleEntryFunctionArgumentTypes,
|
|
@@ -28,7 +28,7 @@ import {
|
|
|
28
28
|
ViewFunctionABI,
|
|
29
29
|
FunctionABI,
|
|
30
30
|
TypeArgument,
|
|
31
|
-
} from "../types";
|
|
31
|
+
} from "../types.js";
|
|
32
32
|
import {
|
|
33
33
|
Bool,
|
|
34
34
|
FixedBytes,
|
|
@@ -47,9 +47,9 @@ import {
|
|
|
47
47
|
U32,
|
|
48
48
|
U64,
|
|
49
49
|
U8,
|
|
50
|
-
} from "../../bcs";
|
|
51
|
-
import { AccountAddress } from "../../core";
|
|
52
|
-
import { getModule } from "../../internal/account";
|
|
50
|
+
} from "../../bcs/index.js";
|
|
51
|
+
import { AccountAddress } from "../../core/index.js";
|
|
52
|
+
import { getModule } from "../../internal/account.js";
|
|
53
53
|
import {
|
|
54
54
|
findFirstNonSignerArg,
|
|
55
55
|
isBcsAddress,
|
|
@@ -74,11 +74,12 @@ import {
|
|
|
74
74
|
isBcsI64,
|
|
75
75
|
isBcsI128,
|
|
76
76
|
isBcsI256,
|
|
77
|
-
} from "./helpers";
|
|
78
|
-
import { MoveFunction, MoveModule } from "../../types";
|
|
79
|
-
import { warnIfDevelopment } from "../../utils/helpers";
|
|
80
|
-
import { memoizeAsync } from "../../utils/memoize";
|
|
81
|
-
import {
|
|
77
|
+
} from "./helpers.js";
|
|
78
|
+
import { MoveFunction, MoveModule } from "../../types/index.js";
|
|
79
|
+
import { warnIfDevelopment } from "../../utils/helpers.js";
|
|
80
|
+
import { memoizeAsync } from "../../utils/memoize.js";
|
|
81
|
+
import { MoveEnumArgument, MoveStructArgument, StructEnumArgumentParser } from "./structEnumParser.js";
|
|
82
|
+
import { TEXT_ENCODER } from "../../utils/index.js";
|
|
82
83
|
|
|
83
84
|
/**
|
|
84
85
|
* Convert type arguments to only type tags, allowing for string representations of type tags.
|
|
@@ -106,6 +107,68 @@ export function standardizeTypeTags(typeArguments?: Array<TypeArgument>): Array<
|
|
|
106
107
|
*/
|
|
107
108
|
const MODULE_ABI_CACHE_TTL_MS = 5 * 60 * 1000;
|
|
108
109
|
|
|
110
|
+
/**
|
|
111
|
+
* Represents a bundle of a module ABI along with all struct ABIs it references.
|
|
112
|
+
* This allows for offline struct/enum encoding without additional network calls.
|
|
113
|
+
*/
|
|
114
|
+
export type ModuleAbiBundle = {
|
|
115
|
+
/** The main module ABI */
|
|
116
|
+
module: MoveModule;
|
|
117
|
+
/** Map of modules containing referenced struct ABIs: "address::module" -> MoveModule */
|
|
118
|
+
referencedStructModules: Map<string, MoveModule>;
|
|
119
|
+
};
|
|
120
|
+
|
|
121
|
+
/**
|
|
122
|
+
* Extracts all struct type references from a module's struct fields and function parameters.
|
|
123
|
+
* Returns a set of unique module identifiers (address::moduleName) that need to be fetched.
|
|
124
|
+
*
|
|
125
|
+
* @param module - The module to extract struct references from
|
|
126
|
+
* @returns Set of module IDs referenced by this module (e.g., "0x1::string", "0x123::my_module")
|
|
127
|
+
*/
|
|
128
|
+
function extractReferencedStructModules(module: MoveModule): Set<string> {
|
|
129
|
+
const referencedModules = new Set<string>();
|
|
130
|
+
const moduleId = `${module.address}::${module.name}`;
|
|
131
|
+
|
|
132
|
+
// Helper to parse a type string and extract struct references
|
|
133
|
+
const parseTypeForStructs = (typeStr: string) => {
|
|
134
|
+
// Match patterns like: 0x1::module::Struct, address::module::Struct<T>
|
|
135
|
+
// Handles generic types and vectors: vector<0x1::module::Struct<T>>
|
|
136
|
+
const structPattern = /(0x[a-fA-F0-9]+)::([\w_]+)::([\w_]+)/g;
|
|
137
|
+
let match = structPattern.exec(typeStr);
|
|
138
|
+
|
|
139
|
+
while (match !== null) {
|
|
140
|
+
const [, address, modName] = match;
|
|
141
|
+
const refModuleId = `${address}::${modName}`;
|
|
142
|
+
|
|
143
|
+
// Don't include self-references or standard library types that don't need fetching
|
|
144
|
+
if (refModuleId !== moduleId && !refModuleId.startsWith("0x1::")) {
|
|
145
|
+
referencedModules.add(refModuleId);
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
match = structPattern.exec(typeStr);
|
|
149
|
+
}
|
|
150
|
+
};
|
|
151
|
+
|
|
152
|
+
// Extract from struct fields
|
|
153
|
+
for (const struct of module.structs) {
|
|
154
|
+
for (const field of struct.fields) {
|
|
155
|
+
parseTypeForStructs(field.type);
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
// Extract from function parameters and return types
|
|
160
|
+
for (const func of module.exposed_functions) {
|
|
161
|
+
for (const param of func.params) {
|
|
162
|
+
parseTypeForStructs(param);
|
|
163
|
+
}
|
|
164
|
+
for (const ret of func.return) {
|
|
165
|
+
parseTypeForStructs(ret);
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
return referencedModules;
|
|
170
|
+
}
|
|
171
|
+
|
|
109
172
|
/**
|
|
110
173
|
* Fetches the ABI of a specified module from the on-chain module ABI.
|
|
111
174
|
* Results are cached for 5 minutes to reduce redundant network calls.
|
|
@@ -133,6 +196,70 @@ export async function fetchModuleAbi(
|
|
|
133
196
|
)();
|
|
134
197
|
}
|
|
135
198
|
|
|
199
|
+
/**
|
|
200
|
+
* Fetches a module ABI along with all struct ABIs it references.
|
|
201
|
+
* This optimization minimizes nested network calls when encoding struct/enum arguments.
|
|
202
|
+
*
|
|
203
|
+
* Strategy:
|
|
204
|
+
* - Fetches the main module ABI
|
|
205
|
+
* - Parses all type references in struct fields and function parameters
|
|
206
|
+
* - Fetches ABIs for all referenced struct modules in parallel
|
|
207
|
+
* - Caches the complete bundle together
|
|
208
|
+
*
|
|
209
|
+
* @param moduleAddress - The address of the module from which to fetch the ABI.
|
|
210
|
+
* @param moduleName - The name of the module containing the ABI.
|
|
211
|
+
* @param aptosConfig - The configuration settings for Aptos.
|
|
212
|
+
* @returns ModuleAbiBundle containing the module and all referenced struct modules
|
|
213
|
+
* @group Implementation
|
|
214
|
+
* @category Transactions
|
|
215
|
+
*/
|
|
216
|
+
export async function fetchModuleAbiWithStructs(
|
|
217
|
+
moduleAddress: string,
|
|
218
|
+
moduleName: string,
|
|
219
|
+
aptosConfig: AptosConfig,
|
|
220
|
+
): Promise<ModuleAbiBundle> {
|
|
221
|
+
const cacheKey = `module-abi-bundle-${aptosConfig.network}-${moduleAddress}-${moduleName}`;
|
|
222
|
+
|
|
223
|
+
return memoizeAsync(
|
|
224
|
+
async () => {
|
|
225
|
+
// Fetch the main module ABI
|
|
226
|
+
const module = await fetchModuleAbi(moduleAddress, moduleName, aptosConfig);
|
|
227
|
+
if (!module) {
|
|
228
|
+
throw new Error(`Module not found: ${moduleAddress}::${moduleName}`);
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
// Extract all struct modules referenced by this module
|
|
232
|
+
const referencedModuleIds = extractReferencedStructModules(module);
|
|
233
|
+
const referencedStructModules = new Map<string, MoveModule>();
|
|
234
|
+
|
|
235
|
+
// Fetch all referenced struct modules in parallel
|
|
236
|
+
if (referencedModuleIds.size > 0) {
|
|
237
|
+
const fetchPromises = Array.from(referencedModuleIds).map(async (moduleId) => {
|
|
238
|
+
const [addr, modName] = moduleId.split("::");
|
|
239
|
+
try {
|
|
240
|
+
const structModule = await fetchModuleAbi(addr, modName, aptosConfig);
|
|
241
|
+
if (structModule) {
|
|
242
|
+
referencedStructModules.set(moduleId, structModule);
|
|
243
|
+
}
|
|
244
|
+
} catch {
|
|
245
|
+
// Silently ignore fetch failures - the struct might not be used in this execution path
|
|
246
|
+
// If it's actually needed, the error will surface during encoding
|
|
247
|
+
}
|
|
248
|
+
});
|
|
249
|
+
|
|
250
|
+
await Promise.all(fetchPromises);
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
return {
|
|
254
|
+
module,
|
|
255
|
+
referencedStructModules,
|
|
256
|
+
};
|
|
257
|
+
},
|
|
258
|
+
cacheKey,
|
|
259
|
+
MODULE_ABI_CACHE_TTL_MS,
|
|
260
|
+
)();
|
|
261
|
+
}
|
|
262
|
+
|
|
136
263
|
/**
|
|
137
264
|
* Fetches the ABI of a specified function from the on-chain module ABI. This function allows you to access the details of a
|
|
138
265
|
* specific function within a module.
|
|
@@ -276,7 +403,8 @@ export async function fetchViewFunctionAbi(
|
|
|
276
403
|
|
|
277
404
|
/**
|
|
278
405
|
* Converts a non-BCS encoded argument into BCS encoded, if necessary.
|
|
279
|
-
* This
|
|
406
|
+
* This is the synchronous version that works offline with pre-fetched ABIs.
|
|
407
|
+
* Does NOT support struct/enum arguments - use convertArgumentWithABI for those.
|
|
280
408
|
*
|
|
281
409
|
* @param functionName - The name of the function for which the argument is being converted.
|
|
282
410
|
* @param functionAbiOrModuleAbi - The ABI (Application Binary Interface) of the function, which defines its parameters.
|
|
@@ -329,14 +457,75 @@ export function convertArgument(
|
|
|
329
457
|
);
|
|
330
458
|
}
|
|
331
459
|
|
|
460
|
+
/**
|
|
461
|
+
* Converts a non-BCS encoded argument into BCS encoded, with support for struct/enum arguments.
|
|
462
|
+
* This is the asynchronous version that fetches module ABIs from the network as needed.
|
|
463
|
+
*
|
|
464
|
+
* @param functionName - The name of the function for which the argument is being converted.
|
|
465
|
+
* @param functionAbiOrModuleAbi - The ABI (Application Binary Interface) of the function, which defines its parameters.
|
|
466
|
+
* @param arg - The argument to be converted, which can be of various types.
|
|
467
|
+
* @param position - The index of the argument in the function's parameter list.
|
|
468
|
+
* @param genericTypeParams - An array of type tags for any generic type parameters.
|
|
469
|
+
* @param aptosConfig - Aptos configuration for fetching module ABIs (required for struct/enum arguments).
|
|
470
|
+
* @param options - Options for the conversion process.
|
|
471
|
+
* @param options.allowUnknownStructs - If true, unknown structs will be allowed and converted to a `FixedBytes`.
|
|
472
|
+
* @group Implementation
|
|
473
|
+
* @category Transactions
|
|
474
|
+
*/
|
|
475
|
+
export async function convertArgumentWithABI(
|
|
476
|
+
functionName: string,
|
|
477
|
+
functionAbiOrModuleAbi: MoveModule | FunctionABI,
|
|
478
|
+
arg: EntryFunctionArgumentTypes | SimpleEntryFunctionArgumentTypes,
|
|
479
|
+
position: number,
|
|
480
|
+
genericTypeParams: Array<TypeTag>,
|
|
481
|
+
aptosConfig: AptosConfig,
|
|
482
|
+
options?: { allowUnknownStructs?: boolean },
|
|
483
|
+
) {
|
|
484
|
+
let param: TypeTag;
|
|
485
|
+
|
|
486
|
+
if ("exposed_functions" in functionAbiOrModuleAbi) {
|
|
487
|
+
const functionAbi = functionAbiOrModuleAbi.exposed_functions.find((func) => func.name === functionName);
|
|
488
|
+
if (!functionAbi) {
|
|
489
|
+
throw new Error(
|
|
490
|
+
`Could not find function ABI for '${functionAbiOrModuleAbi.address}::${functionAbiOrModuleAbi.name}::${functionName}'`,
|
|
491
|
+
);
|
|
492
|
+
}
|
|
493
|
+
|
|
494
|
+
if (position >= functionAbi.params.length) {
|
|
495
|
+
throw new Error(`Too many arguments for '${functionName}', expected ${functionAbi.params.length}`);
|
|
496
|
+
}
|
|
497
|
+
|
|
498
|
+
param = parseTypeTag(functionAbi.params[position], { allowGenerics: true });
|
|
499
|
+
} else {
|
|
500
|
+
if (position >= functionAbiOrModuleAbi.parameters.length) {
|
|
501
|
+
throw new Error(`Too many arguments for '${functionName}', expected ${functionAbiOrModuleAbi.parameters.length}`);
|
|
502
|
+
}
|
|
503
|
+
|
|
504
|
+
param = functionAbiOrModuleAbi.parameters[position];
|
|
505
|
+
}
|
|
506
|
+
|
|
507
|
+
return checkOrConvertArgumentWithABI(
|
|
508
|
+
arg,
|
|
509
|
+
param,
|
|
510
|
+
position,
|
|
511
|
+
genericTypeParams,
|
|
512
|
+
aptosConfig,
|
|
513
|
+
"exposed_functions" in functionAbiOrModuleAbi ? functionAbiOrModuleAbi : undefined,
|
|
514
|
+
options,
|
|
515
|
+
);
|
|
516
|
+
}
|
|
517
|
+
|
|
332
518
|
/**
|
|
333
519
|
* Checks if the provided argument is BCS encoded and converts it if necessary, ensuring type compatibility with the ABI.
|
|
334
|
-
* This
|
|
520
|
+
* This is the synchronous version that works offline with pre-fetched ABIs.
|
|
521
|
+
* Does NOT support struct/enum arguments - use checkOrConvertArgumentWithABI for those.
|
|
335
522
|
*
|
|
336
523
|
* @param arg - The argument to check or convert, which can be either a simple or entry function argument type.
|
|
337
524
|
* @param param - The expected type tag for the argument.
|
|
338
525
|
* @param position - The position of the argument in the function call.
|
|
339
526
|
* @param genericTypeParams - An array of generic type parameters that may be used for conversion.
|
|
527
|
+
* @param moduleAbi - The ABI of the module containing the function, used for type checking.
|
|
528
|
+
* @param options - Options for the conversion process.
|
|
340
529
|
* @group Implementation
|
|
341
530
|
* @category Transactions
|
|
342
531
|
*/
|
|
@@ -360,31 +549,83 @@ export function checkOrConvertArgument(
|
|
|
360
549
|
);
|
|
361
550
|
}
|
|
362
551
|
|
|
552
|
+
// Ensure the type matches the ABI
|
|
363
553
|
checkType(param, arg, position);
|
|
364
554
|
return arg;
|
|
365
555
|
}
|
|
366
556
|
|
|
367
557
|
// If it is not BCS encoded, we will need to convert it with the ABI
|
|
368
|
-
return
|
|
558
|
+
return parseArgSync(arg, param, position, genericTypeParams, moduleAbi, options);
|
|
559
|
+
}
|
|
560
|
+
|
|
561
|
+
/**
|
|
562
|
+
* Checks if the provided argument is BCS encoded and converts it if necessary, with support for struct/enum arguments.
|
|
563
|
+
* This is the asynchronous version that fetches module ABIs from the network as needed.
|
|
564
|
+
*
|
|
565
|
+
* @param arg - The argument to check or convert, which can be either a simple or entry function argument type.
|
|
566
|
+
* @param param - The expected type tag for the argument.
|
|
567
|
+
* @param position - The position of the argument in the function call.
|
|
568
|
+
* @param genericTypeParams - An array of generic type parameters that may be used for conversion.
|
|
569
|
+
* @param aptosConfig - Aptos configuration for fetching module ABIs (required for struct/enum arguments).
|
|
570
|
+
* @param moduleAbi - The ABI of the module containing the function, used for type checking.
|
|
571
|
+
* @param options - Options for the conversion process.
|
|
572
|
+
* @group Implementation
|
|
573
|
+
* @category Transactions
|
|
574
|
+
*/
|
|
575
|
+
export async function checkOrConvertArgumentWithABI(
|
|
576
|
+
arg: SimpleEntryFunctionArgumentTypes | EntryFunctionArgumentTypes,
|
|
577
|
+
param: TypeTag,
|
|
578
|
+
position: number,
|
|
579
|
+
genericTypeParams: Array<TypeTag>,
|
|
580
|
+
aptosConfig: AptosConfig,
|
|
581
|
+
moduleAbi?: MoveModule,
|
|
582
|
+
options?: { allowUnknownStructs?: boolean },
|
|
583
|
+
): Promise<EntryFunctionArgumentTypes> {
|
|
584
|
+
// If the argument is bcs encoded, we can just use it directly
|
|
585
|
+
if (isEncodedEntryFunctionArgument(arg)) {
|
|
586
|
+
// If the expected type is Option but the arg is not already a MoveOption,
|
|
587
|
+
// wrap it after validating it matches the Option's inner type. This mirrors
|
|
588
|
+
// the behavior of the synchronous `checkOrConvertArgument` path so that
|
|
589
|
+
// pre-encoded inner values (e.g. AccountAddress inside Vector<Option<address>>)
|
|
590
|
+
// can be passed through the async path as well.
|
|
591
|
+
if (param.isStruct() && param.isOption() && !(arg instanceof MoveOption)) {
|
|
592
|
+
const inner = await checkOrConvertArgumentWithABI(
|
|
593
|
+
arg,
|
|
594
|
+
param.value.typeArgs[0],
|
|
595
|
+
position,
|
|
596
|
+
genericTypeParams,
|
|
597
|
+
aptosConfig,
|
|
598
|
+
moduleAbi,
|
|
599
|
+
options,
|
|
600
|
+
);
|
|
601
|
+
return new MoveOption(inner);
|
|
602
|
+
}
|
|
603
|
+
|
|
604
|
+
// Ensure the type matches the ABI
|
|
605
|
+
checkType(param, arg, position);
|
|
606
|
+
return arg;
|
|
607
|
+
}
|
|
608
|
+
|
|
609
|
+
// If it is not BCS encoded, we will need to convert it with the ABI
|
|
610
|
+
return parseArgAsync(arg, param, position, genericTypeParams, aptosConfig, moduleAbi, options);
|
|
369
611
|
}
|
|
370
612
|
|
|
371
613
|
/**
|
|
372
614
|
* Parses a non-BCS encoded argument into a BCS encoded argument recursively.
|
|
373
|
-
* This
|
|
374
|
-
*
|
|
615
|
+
* This is the synchronous version that works offline with pre-fetched ABIs.
|
|
616
|
+
* Does NOT support struct/enum arguments - throws error if encountered.
|
|
375
617
|
*
|
|
376
618
|
* @param arg - The argument to be parsed, which can be of various types.
|
|
377
619
|
* @param param - The type tag that defines the expected type of the argument.
|
|
378
620
|
* @param position - The position of the argument in the function call, used for error reporting.
|
|
379
621
|
* @param genericTypeParams - An array of type tags for generic type parameters, used when the parameter type is generic.
|
|
380
622
|
* @param moduleAbi - The ABI of the module containing the function, used for type checking.
|
|
381
|
-
* This will typically have information about structs, enums, and other types.
|
|
382
623
|
* @param options - Options for the conversion process.
|
|
383
624
|
* @param options.allowUnknownStructs - If true, unknown structs will be allowed and converted to a `FixedBytes`.
|
|
384
625
|
* @group Implementation
|
|
385
626
|
* @category Transactions
|
|
386
627
|
*/
|
|
387
|
-
function
|
|
628
|
+
function parseArgSync(
|
|
388
629
|
arg: SimpleEntryFunctionArgumentTypes,
|
|
389
630
|
param: TypeTag,
|
|
390
631
|
position: number,
|
|
@@ -392,6 +633,295 @@ function parseArg(
|
|
|
392
633
|
moduleAbi?: MoveModule,
|
|
393
634
|
options?: { allowUnknownStructs?: boolean },
|
|
394
635
|
): EntryFunctionArgumentTypes {
|
|
636
|
+
if (param.isBool()) {
|
|
637
|
+
if (isBool(arg)) {
|
|
638
|
+
return new Bool(arg);
|
|
639
|
+
}
|
|
640
|
+
if (isString(arg)) {
|
|
641
|
+
if (arg === "true") return new Bool(true);
|
|
642
|
+
if (arg === "false") return new Bool(false);
|
|
643
|
+
}
|
|
644
|
+
throwTypeMismatch("boolean", position);
|
|
645
|
+
}
|
|
646
|
+
if (param.isAddress()) {
|
|
647
|
+
if (isString(arg)) {
|
|
648
|
+
return AccountAddress.fromString(arg);
|
|
649
|
+
}
|
|
650
|
+
// Support for Uint8Array coming from external sources
|
|
651
|
+
if (arg && typeof arg === "object" && "data" in arg && arg.data instanceof Uint8Array) {
|
|
652
|
+
return new AccountAddress(arg.data);
|
|
653
|
+
}
|
|
654
|
+
throwTypeMismatch("string | AccountAddress", position);
|
|
655
|
+
}
|
|
656
|
+
if (param.isU8()) {
|
|
657
|
+
const num = convertNumber(arg);
|
|
658
|
+
if (num !== undefined) {
|
|
659
|
+
return new U8(num);
|
|
660
|
+
}
|
|
661
|
+
throwTypeMismatch("number | string", position);
|
|
662
|
+
}
|
|
663
|
+
if (param.isU16()) {
|
|
664
|
+
const num = convertNumber(arg);
|
|
665
|
+
if (num !== undefined) {
|
|
666
|
+
return new U16(num);
|
|
667
|
+
}
|
|
668
|
+
throwTypeMismatch("number | string", position);
|
|
669
|
+
}
|
|
670
|
+
if (param.isU32()) {
|
|
671
|
+
const num = convertNumber(arg);
|
|
672
|
+
if (num !== undefined) {
|
|
673
|
+
return new U32(num);
|
|
674
|
+
}
|
|
675
|
+
throwTypeMismatch("number | string", position);
|
|
676
|
+
}
|
|
677
|
+
if (param.isU64()) {
|
|
678
|
+
if (isLargeNumber(arg)) {
|
|
679
|
+
return new U64(BigInt(arg));
|
|
680
|
+
}
|
|
681
|
+
throwTypeMismatch("bigint | number | string", position);
|
|
682
|
+
}
|
|
683
|
+
if (param.isU128()) {
|
|
684
|
+
if (isLargeNumber(arg)) {
|
|
685
|
+
return new U128(BigInt(arg));
|
|
686
|
+
}
|
|
687
|
+
throwTypeMismatch("bigint | number | string", position);
|
|
688
|
+
}
|
|
689
|
+
if (param.isU256()) {
|
|
690
|
+
if (isLargeNumber(arg)) {
|
|
691
|
+
return new U256(BigInt(arg));
|
|
692
|
+
}
|
|
693
|
+
throwTypeMismatch("bigint | number | string", position);
|
|
694
|
+
}
|
|
695
|
+
if (param.isI8()) {
|
|
696
|
+
const num = convertNumber(arg);
|
|
697
|
+
if (num !== undefined) {
|
|
698
|
+
return new I8(num);
|
|
699
|
+
}
|
|
700
|
+
throwTypeMismatch("number | string", position);
|
|
701
|
+
}
|
|
702
|
+
if (param.isI16()) {
|
|
703
|
+
const num = convertNumber(arg);
|
|
704
|
+
if (num !== undefined) {
|
|
705
|
+
return new I16(num);
|
|
706
|
+
}
|
|
707
|
+
throwTypeMismatch("number | string", position);
|
|
708
|
+
}
|
|
709
|
+
if (param.isI32()) {
|
|
710
|
+
const num = convertNumber(arg);
|
|
711
|
+
if (num !== undefined) {
|
|
712
|
+
return new I32(num);
|
|
713
|
+
}
|
|
714
|
+
throwTypeMismatch("number | string", position);
|
|
715
|
+
}
|
|
716
|
+
if (param.isI64()) {
|
|
717
|
+
if (isLargeNumber(arg)) {
|
|
718
|
+
return new I64(BigInt(arg));
|
|
719
|
+
}
|
|
720
|
+
throwTypeMismatch("bigint | number | string", position);
|
|
721
|
+
}
|
|
722
|
+
if (param.isI128()) {
|
|
723
|
+
if (isLargeNumber(arg)) {
|
|
724
|
+
return new I128(BigInt(arg));
|
|
725
|
+
}
|
|
726
|
+
throwTypeMismatch("bigint | number | string", position);
|
|
727
|
+
}
|
|
728
|
+
if (param.isI256()) {
|
|
729
|
+
if (isLargeNumber(arg)) {
|
|
730
|
+
return new I256(BigInt(arg));
|
|
731
|
+
}
|
|
732
|
+
throwTypeMismatch("bigint | number | string", position);
|
|
733
|
+
}
|
|
734
|
+
|
|
735
|
+
// Generic needs to use the subtype
|
|
736
|
+
if (param.isGeneric()) {
|
|
737
|
+
const genericIndex = param.value;
|
|
738
|
+
if (genericIndex < 0 || genericIndex >= genericTypeParams.length) {
|
|
739
|
+
throw new Error(`Generic argument ${param.toString()} is invalid for argument ${position}`);
|
|
740
|
+
}
|
|
741
|
+
|
|
742
|
+
return checkOrConvertArgument(
|
|
743
|
+
arg,
|
|
744
|
+
genericTypeParams[genericIndex],
|
|
745
|
+
position,
|
|
746
|
+
genericTypeParams,
|
|
747
|
+
moduleAbi,
|
|
748
|
+
options,
|
|
749
|
+
);
|
|
750
|
+
}
|
|
751
|
+
|
|
752
|
+
// We have to special case some vectors for Vector<u8>
|
|
753
|
+
if (param.isVector()) {
|
|
754
|
+
// Check special case for Vector<u8>
|
|
755
|
+
if (param.value.isU8()) {
|
|
756
|
+
if (isString(arg)) {
|
|
757
|
+
return MoveVector.U8(TEXT_ENCODER.encode(arg));
|
|
758
|
+
}
|
|
759
|
+
if (arg instanceof Uint8Array) {
|
|
760
|
+
return MoveVector.U8(arg);
|
|
761
|
+
}
|
|
762
|
+
if (arg instanceof ArrayBuffer) {
|
|
763
|
+
return MoveVector.U8(new Uint8Array(arg));
|
|
764
|
+
}
|
|
765
|
+
}
|
|
766
|
+
|
|
767
|
+
if (isString(arg)) {
|
|
768
|
+
// In a web env, arguments are passing as strings
|
|
769
|
+
if (arg.startsWith("[")) {
|
|
770
|
+
return checkOrConvertArgument(JSON.parse(arg), param, position, genericTypeParams, moduleAbi, options);
|
|
771
|
+
}
|
|
772
|
+
}
|
|
773
|
+
|
|
774
|
+
if (Array.isArray(arg)) {
|
|
775
|
+
return new MoveVector(
|
|
776
|
+
arg.map((item) => checkOrConvertArgument(item, param.value, position, genericTypeParams, moduleAbi, options)),
|
|
777
|
+
);
|
|
778
|
+
}
|
|
779
|
+
|
|
780
|
+
throw new Error(`Type mismatch for argument ${position}, type '${param.toString()}'`);
|
|
781
|
+
}
|
|
782
|
+
|
|
783
|
+
// Handle structs as they're more complex
|
|
784
|
+
if (param.isStruct()) {
|
|
785
|
+
if (param.isString()) {
|
|
786
|
+
if (isString(arg)) {
|
|
787
|
+
return new MoveString(arg);
|
|
788
|
+
}
|
|
789
|
+
throwTypeMismatch("string", position);
|
|
790
|
+
}
|
|
791
|
+
if (param.isObject()) {
|
|
792
|
+
// The inner type of Object doesn't matter, since it's just syntactic sugar
|
|
793
|
+
if (isString(arg)) {
|
|
794
|
+
return AccountAddress.fromString(arg);
|
|
795
|
+
}
|
|
796
|
+
// Support for Uint8Array coming from external sources
|
|
797
|
+
if (arg && typeof arg === "object" && "data" in arg && arg.data instanceof Uint8Array) {
|
|
798
|
+
return new AccountAddress(arg.data);
|
|
799
|
+
}
|
|
800
|
+
throwTypeMismatch("string | AccountAddress", position);
|
|
801
|
+
}
|
|
802
|
+
// Handle known enum types from Aptos framework
|
|
803
|
+
if (param.isDelegationKey() || param.isRateLimiter()) {
|
|
804
|
+
if (arg instanceof Uint8Array) {
|
|
805
|
+
return new FixedBytes(arg);
|
|
806
|
+
}
|
|
807
|
+
throwTypeMismatch("Uint8Array", position);
|
|
808
|
+
}
|
|
809
|
+
|
|
810
|
+
if (param.isOption()) {
|
|
811
|
+
if (isEmptyOption(arg)) {
|
|
812
|
+
// Here we attempt to reconstruct the underlying type
|
|
813
|
+
const innerParam = param.value.typeArgs[0];
|
|
814
|
+
if (innerParam instanceof TypeTagBool) {
|
|
815
|
+
return new MoveOption<Bool>(null);
|
|
816
|
+
}
|
|
817
|
+
if (innerParam instanceof TypeTagAddress) {
|
|
818
|
+
return new MoveOption<AccountAddress>(null);
|
|
819
|
+
}
|
|
820
|
+
if (innerParam instanceof TypeTagU8) {
|
|
821
|
+
return new MoveOption<U8>(null);
|
|
822
|
+
}
|
|
823
|
+
if (innerParam instanceof TypeTagU16) {
|
|
824
|
+
return new MoveOption<U16>(null);
|
|
825
|
+
}
|
|
826
|
+
if (innerParam instanceof TypeTagU32) {
|
|
827
|
+
return new MoveOption<U32>(null);
|
|
828
|
+
}
|
|
829
|
+
if (innerParam instanceof TypeTagU64) {
|
|
830
|
+
return new MoveOption<U64>(null);
|
|
831
|
+
}
|
|
832
|
+
if (innerParam instanceof TypeTagU128) {
|
|
833
|
+
return new MoveOption<U128>(null);
|
|
834
|
+
}
|
|
835
|
+
if (innerParam instanceof TypeTagU256) {
|
|
836
|
+
return new MoveOption<U256>(null);
|
|
837
|
+
}
|
|
838
|
+
if (innerParam instanceof TypeTagI8) {
|
|
839
|
+
return new MoveOption<I8>(null);
|
|
840
|
+
}
|
|
841
|
+
if (innerParam instanceof TypeTagI16) {
|
|
842
|
+
return new MoveOption<I16>(null);
|
|
843
|
+
}
|
|
844
|
+
if (innerParam instanceof TypeTagI32) {
|
|
845
|
+
return new MoveOption<I32>(null);
|
|
846
|
+
}
|
|
847
|
+
if (innerParam instanceof TypeTagI64) {
|
|
848
|
+
return new MoveOption<I64>(null);
|
|
849
|
+
}
|
|
850
|
+
if (innerParam instanceof TypeTagI128) {
|
|
851
|
+
return new MoveOption<I128>(null);
|
|
852
|
+
}
|
|
853
|
+
if (innerParam instanceof TypeTagI256) {
|
|
854
|
+
return new MoveOption<I256>(null);
|
|
855
|
+
}
|
|
856
|
+
|
|
857
|
+
// In all other cases, we will use a placeholder
|
|
858
|
+
return new MoveOption<MoveString>(null);
|
|
859
|
+
}
|
|
860
|
+
|
|
861
|
+
return new MoveOption(
|
|
862
|
+
checkOrConvertArgument(arg, param.value.typeArgs[0], position, genericTypeParams, moduleAbi),
|
|
863
|
+
);
|
|
864
|
+
}
|
|
865
|
+
|
|
866
|
+
// Check if this looks like a custom struct/enum argument
|
|
867
|
+
if (
|
|
868
|
+
typeof arg === "object" &&
|
|
869
|
+
arg !== null &&
|
|
870
|
+
!(arg instanceof Uint8Array) &&
|
|
871
|
+
!(arg instanceof ArrayBuffer) &&
|
|
872
|
+
!Array.isArray(arg)
|
|
873
|
+
) {
|
|
874
|
+
// Struct/enum arguments require async conversion
|
|
875
|
+
throw new Error(
|
|
876
|
+
`Struct/enum arguments require async conversion. ` +
|
|
877
|
+
`Use checkOrConvertArgumentWithABI() instead, or pre-encode the argument with StructEnumArgumentParser. ` +
|
|
878
|
+
`Type: '${param.toString()}', position: ${position}`,
|
|
879
|
+
);
|
|
880
|
+
}
|
|
881
|
+
|
|
882
|
+
// We are assuming that fieldless structs are enums
|
|
883
|
+
const structDefinition = moduleAbi?.structs.find((s) => s.name === param.value.name.identifier);
|
|
884
|
+
if (structDefinition?.fields.length === 0 && arg instanceof Uint8Array) {
|
|
885
|
+
return new FixedBytes(arg);
|
|
886
|
+
}
|
|
887
|
+
|
|
888
|
+
if (arg instanceof Uint8Array && options?.allowUnknownStructs) {
|
|
889
|
+
warnIfDevelopment(
|
|
890
|
+
`[Aptos SDK] Unsupported struct input type for argument ${position}. Continuing since 'allowUnknownStructs' is enabled.`,
|
|
891
|
+
);
|
|
892
|
+
return new FixedBytes(arg);
|
|
893
|
+
}
|
|
894
|
+
|
|
895
|
+
throw new Error(`Unsupported struct input type for argument ${position}, type '${param.toString()}'`);
|
|
896
|
+
}
|
|
897
|
+
|
|
898
|
+
throw new Error(`Type mismatch for argument ${position}, type '${param.toString()}'`);
|
|
899
|
+
}
|
|
900
|
+
|
|
901
|
+
/**
|
|
902
|
+
* Parses a non-BCS encoded argument into a BCS encoded argument recursively.
|
|
903
|
+
* This is the asynchronous version that supports struct/enum arguments via network calls.
|
|
904
|
+
*
|
|
905
|
+
* @param arg - The argument to be parsed, which can be of various types.
|
|
906
|
+
* @param param - The type tag that defines the expected type of the argument.
|
|
907
|
+
* @param position - The position of the argument in the function call, used for error reporting.
|
|
908
|
+
* @param genericTypeParams - An array of type tags for generic type parameters, used when the parameter type is generic.
|
|
909
|
+
* @param aptosConfig - Aptos configuration for fetching module ABIs (required for struct/enum arguments).
|
|
910
|
+
* @param moduleAbi - The ABI of the module containing the function, used for type checking.
|
|
911
|
+
* @param options - Options for the conversion process.
|
|
912
|
+
* @param options.allowUnknownStructs - If true, unknown structs will be allowed and converted to a `FixedBytes`.
|
|
913
|
+
* @group Implementation
|
|
914
|
+
* @category Transactions
|
|
915
|
+
*/
|
|
916
|
+
async function parseArgAsync(
|
|
917
|
+
arg: SimpleEntryFunctionArgumentTypes,
|
|
918
|
+
param: TypeTag,
|
|
919
|
+
position: number,
|
|
920
|
+
genericTypeParams: Array<TypeTag>,
|
|
921
|
+
aptosConfig: AptosConfig,
|
|
922
|
+
moduleAbi?: MoveModule,
|
|
923
|
+
options?: { allowUnknownStructs?: boolean },
|
|
924
|
+
): Promise<EntryFunctionArgumentTypes> {
|
|
395
925
|
if (param.isBool()) {
|
|
396
926
|
if (isBool(arg)) {
|
|
397
927
|
return new Bool(arg);
|
|
@@ -509,7 +1039,15 @@ function parseArg(
|
|
|
509
1039
|
throw new Error(`Generic argument ${param.toString()} is invalid for argument ${position}`);
|
|
510
1040
|
}
|
|
511
1041
|
|
|
512
|
-
return
|
|
1042
|
+
return checkOrConvertArgumentWithABI(
|
|
1043
|
+
arg,
|
|
1044
|
+
genericTypeParams[genericIndex],
|
|
1045
|
+
position,
|
|
1046
|
+
genericTypeParams,
|
|
1047
|
+
aptosConfig,
|
|
1048
|
+
moduleAbi,
|
|
1049
|
+
options,
|
|
1050
|
+
);
|
|
513
1051
|
}
|
|
514
1052
|
|
|
515
1053
|
// We have to special case some vectors for Vector<u8>
|
|
@@ -532,16 +1070,35 @@ function parseArg(
|
|
|
532
1070
|
if (isString(arg)) {
|
|
533
1071
|
// In a web env, arguments are passing as strings
|
|
534
1072
|
if (arg.startsWith("[")) {
|
|
535
|
-
return
|
|
1073
|
+
return checkOrConvertArgumentWithABI(
|
|
1074
|
+
JSON.parse(arg),
|
|
1075
|
+
param,
|
|
1076
|
+
position,
|
|
1077
|
+
genericTypeParams,
|
|
1078
|
+
aptosConfig,
|
|
1079
|
+
moduleAbi,
|
|
1080
|
+
options,
|
|
1081
|
+
);
|
|
536
1082
|
}
|
|
537
1083
|
}
|
|
538
1084
|
|
|
539
1085
|
// TODO: Support Uint16Array, Uint32Array, BigUint64Array?
|
|
540
1086
|
|
|
541
1087
|
if (Array.isArray(arg)) {
|
|
542
|
-
|
|
543
|
-
arg.map((item) =>
|
|
1088
|
+
const elements = await Promise.all(
|
|
1089
|
+
arg.map((item) =>
|
|
1090
|
+
checkOrConvertArgumentWithABI(
|
|
1091
|
+
item,
|
|
1092
|
+
param.value,
|
|
1093
|
+
position,
|
|
1094
|
+
genericTypeParams,
|
|
1095
|
+
aptosConfig,
|
|
1096
|
+
moduleAbi,
|
|
1097
|
+
options,
|
|
1098
|
+
),
|
|
1099
|
+
),
|
|
544
1100
|
);
|
|
1101
|
+
return new MoveVector(elements);
|
|
545
1102
|
}
|
|
546
1103
|
|
|
547
1104
|
throw new Error(`Type mismatch for argument ${position}, type '${param.toString()}'`);
|
|
@@ -627,9 +1184,80 @@ function parseArg(
|
|
|
627
1184
|
return new MoveOption<MoveString>(null);
|
|
628
1185
|
}
|
|
629
1186
|
|
|
630
|
-
|
|
631
|
-
|
|
1187
|
+
const value = await checkOrConvertArgumentWithABI(
|
|
1188
|
+
arg,
|
|
1189
|
+
param.value.typeArgs[0],
|
|
1190
|
+
position,
|
|
1191
|
+
genericTypeParams,
|
|
1192
|
+
aptosConfig,
|
|
1193
|
+
moduleAbi,
|
|
632
1194
|
);
|
|
1195
|
+
return new MoveOption(value);
|
|
1196
|
+
}
|
|
1197
|
+
|
|
1198
|
+
// Handle custom public copy structs and enums
|
|
1199
|
+
if (
|
|
1200
|
+
typeof arg === "object" &&
|
|
1201
|
+
arg !== null &&
|
|
1202
|
+
!(arg instanceof Uint8Array) &&
|
|
1203
|
+
!(arg instanceof ArrayBuffer) &&
|
|
1204
|
+
!Array.isArray(arg)
|
|
1205
|
+
) {
|
|
1206
|
+
// Check if aptosConfig is available for fetching module ABI
|
|
1207
|
+
if (!aptosConfig) {
|
|
1208
|
+
throw new Error(
|
|
1209
|
+
`AptosConfig required for struct/enum argument at position ${position}. ` +
|
|
1210
|
+
`Type: '${param.toString()}'. ` +
|
|
1211
|
+
`Either provide aptosConfig, or pre-encode the argument as a ` +
|
|
1212
|
+
`MoveStructArgument / MoveEnumArgument (preferred) or as FixedBytes ` +
|
|
1213
|
+
`containing the BCS-encoded value.`,
|
|
1214
|
+
);
|
|
1215
|
+
}
|
|
1216
|
+
|
|
1217
|
+
// Fetch the module ABI bundle with all referenced struct modules
|
|
1218
|
+
// This optimization minimizes nested network calls
|
|
1219
|
+
const moduleAddress = param.value.address.toString();
|
|
1220
|
+
const moduleName = param.value.moduleName.identifier;
|
|
1221
|
+
|
|
1222
|
+
try {
|
|
1223
|
+
const abiBundle = await fetchModuleAbiWithStructs(moduleAddress, moduleName, aptosConfig);
|
|
1224
|
+
|
|
1225
|
+
// Instantiate the parser and preload it with all referenced struct modules
|
|
1226
|
+
const parser = new StructEnumArgumentParser(aptosConfig);
|
|
1227
|
+
|
|
1228
|
+
// Convert the bundle's modules to MoveModuleBytecode format for preloading
|
|
1229
|
+
const modulesToPreload = new Map<string, any>();
|
|
1230
|
+
modulesToPreload.set(`${moduleAddress}::${moduleName}`, { abi: abiBundle.module });
|
|
1231
|
+
for (const [moduleId, module] of abiBundle.referencedStructModules.entries()) {
|
|
1232
|
+
modulesToPreload.set(moduleId, { abi: module });
|
|
1233
|
+
}
|
|
1234
|
+
parser.preloadModules(modulesToPreload);
|
|
1235
|
+
|
|
1236
|
+
// Check the ABI to determine if this is an enum or struct
|
|
1237
|
+
const structDef = abiBundle.module.structs.find((s) => s.name === param.value.name.identifier);
|
|
1238
|
+
|
|
1239
|
+
let isEnumType: boolean;
|
|
1240
|
+
if (structDef !== undefined) {
|
|
1241
|
+
// Trust the ABI when available
|
|
1242
|
+
isEnumType = structDef.is_enum;
|
|
1243
|
+
} else {
|
|
1244
|
+
// Fallback heuristic when ABI is not available:
|
|
1245
|
+
// Enums typically have format: { "VariantName": {...} } with a single key
|
|
1246
|
+
const keys = Object.keys(arg as Record<string, any>);
|
|
1247
|
+
isEnumType = keys.length === 1 && typeof (arg as Record<string, any>)[keys[0]] === "object";
|
|
1248
|
+
}
|
|
1249
|
+
|
|
1250
|
+
if (isEnumType) {
|
|
1251
|
+
// Encode as enum
|
|
1252
|
+
return await parser.encodeEnumArgument(param, arg);
|
|
1253
|
+
}
|
|
1254
|
+
// Encode as struct
|
|
1255
|
+
return await parser.encodeStructArgument(param, arg);
|
|
1256
|
+
} catch (e: any) {
|
|
1257
|
+
throw new Error(
|
|
1258
|
+
`Failed to encode struct/enum argument at position ${position}, type '${param.toString()}': ${e.message}`,
|
|
1259
|
+
);
|
|
1260
|
+
}
|
|
633
1261
|
}
|
|
634
1262
|
|
|
635
1263
|
// We are assuming that fieldless structs are enums, and therefore we cannot typecheck any further due
|
|
@@ -782,6 +1410,17 @@ function checkType(param: TypeTag, arg: EntryFunctionArgumentTypes, position: nu
|
|
|
782
1410
|
}
|
|
783
1411
|
throwTypeMismatch("MoveOption", position);
|
|
784
1412
|
}
|
|
1413
|
+
|
|
1414
|
+
// For custom (non-framework) struct/enum params, accept the pre-encoded
|
|
1415
|
+
// argument types: MoveStructArgument, MoveEnumArgument, or FixedBytes.
|
|
1416
|
+
// We cannot fully verify the inner BCS bytes without the ABI, but accepting
|
|
1417
|
+
// these classes is safer than rejecting valid pre-encoded inputs and is
|
|
1418
|
+
// required for documented "pre-encode and pass" flows.
|
|
1419
|
+
if (arg instanceof MoveStructArgument || arg instanceof MoveEnumArgument || arg instanceof FixedBytes) {
|
|
1420
|
+
return;
|
|
1421
|
+
}
|
|
1422
|
+
|
|
1423
|
+
throwTypeMismatch("MoveStructArgument | MoveEnumArgument | FixedBytes", position);
|
|
785
1424
|
}
|
|
786
1425
|
|
|
787
1426
|
throw new Error(`Type mismatch for argument ${position}, expected '${param.toString()}'`);
|