@aptos-labs/ts-sdk 5.0.0 → 5.1.1-side-effect-free.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/common/{account-BDwBREvt.d.ts → account-Dr4y1uZG.d.ts} +8 -2
- package/dist/common/chunk-AWFAHZSB.js +4 -0
- package/dist/common/{chunk-6MMUUJHX.js.map → chunk-AWFAHZSB.js.map} +1 -1
- package/dist/common/cli/index.d.ts +1 -1
- package/dist/common/cli/index.js +1 -1
- package/dist/common/cli/index.js.map +1 -1
- package/dist/common/index.d.ts +339 -10
- package/dist/common/index.js +33 -33
- package/dist/common/index.js.map +1 -1
- package/dist/esm/{Ed25519Account-8ETkcAk_.d.mts → Ed25519Account-CPwej6wB.d.mts} +1 -1
- package/dist/esm/account/AbstractKeylessAccount.d.mts +3 -3
- package/dist/esm/account/AbstractKeylessAccount.mjs +1 -1
- package/dist/esm/account/AbstractKeylessAccount.mjs.map +1 -1
- package/dist/esm/account/AbstractedAccount.d.mts +2 -2
- package/dist/esm/account/AbstractedAccount.mjs +1 -1
- package/dist/esm/account/AbstractedAccount.mjs.map +1 -1
- package/dist/esm/account/Account.d.mts +2 -2
- package/dist/esm/account/Account.mjs +1 -1
- package/dist/esm/account/Account.mjs.map +1 -1
- package/dist/esm/account/AccountUtils.d.mts +3 -3
- package/dist/esm/account/AccountUtils.mjs +1 -1
- package/dist/esm/account/AccountUtils.mjs.map +1 -1
- package/dist/esm/account/DerivableAbstractedAccount.d.mts +2 -2
- package/dist/esm/account/DerivableAbstractedAccount.mjs +1 -1
- package/dist/esm/account/DerivableAbstractedAccount.mjs.map +1 -1
- package/dist/esm/account/Ed25519Account.d.mts +2 -2
- package/dist/esm/account/Ed25519Account.mjs +1 -1
- package/dist/esm/account/Ed25519Account.mjs.map +1 -1
- package/dist/esm/account/EphemeralKeyPair.d.mts +1 -1
- package/dist/esm/account/EphemeralKeyPair.mjs +1 -1
- package/dist/esm/account/EphemeralKeyPair.mjs.map +1 -1
- package/dist/esm/account/FederatedKeylessAccount.d.mts +3 -3
- package/dist/esm/account/FederatedKeylessAccount.mjs +1 -1
- package/dist/esm/account/FederatedKeylessAccount.mjs.map +1 -1
- package/dist/esm/account/KeylessAccount.d.mts +3 -3
- package/dist/esm/account/KeylessAccount.mjs +1 -1
- package/dist/esm/account/KeylessAccount.mjs.map +1 -1
- package/dist/esm/account/MultiEd25519Account.d.mts +2 -2
- package/dist/esm/account/MultiEd25519Account.mjs +1 -1
- package/dist/esm/account/MultiEd25519Account.mjs.map +1 -1
- package/dist/esm/account/MultiKeyAccount.d.mts +3 -3
- package/dist/esm/account/MultiKeyAccount.mjs +1 -1
- package/dist/esm/account/MultiKeyAccount.mjs.map +1 -1
- package/dist/esm/account/SingleKeyAccount.d.mts +2 -2
- package/dist/esm/account/SingleKeyAccount.mjs +1 -1
- package/dist/esm/account/SingleKeyAccount.mjs.map +1 -1
- package/dist/esm/account/index.d.mts +3 -3
- package/dist/esm/account/index.mjs +1 -1
- package/dist/esm/account/index.mjs.map +1 -1
- package/dist/esm/account/utils.d.mts +1 -1
- package/dist/esm/account/utils.mjs +1 -1
- package/dist/esm/account/utils.mjs.map +1 -1
- package/dist/esm/{account-ClxOwjdh.d.mts → account-BortO8g2.d.mts} +6 -1
- package/dist/esm/api/account/abstraction.d.mts +1 -1
- package/dist/esm/api/account/abstraction.mjs +1 -1
- package/dist/esm/api/account/abstraction.mjs.map +1 -1
- package/dist/esm/api/account.d.mts +30 -9
- package/dist/esm/api/account.mjs +1 -1
- package/dist/esm/api/account.mjs.map +1 -1
- package/dist/esm/api/ans.d.mts +2 -2
- package/dist/esm/api/ans.mjs +1 -1
- package/dist/esm/api/ans.mjs.map +1 -1
- package/dist/esm/api/aptos.d.mts +3 -3
- package/dist/esm/api/aptos.mjs +1 -1
- package/dist/esm/api/aptos.mjs.map +1 -1
- package/dist/esm/api/aptosConfig.d.mts +1 -1
- package/dist/esm/api/aptosConfig.mjs +1 -1
- package/dist/esm/api/aptosConfig.mjs.map +1 -1
- package/dist/esm/api/coin.d.mts +1 -1
- package/dist/esm/api/coin.mjs +1 -1
- package/dist/esm/api/coin.mjs.map +1 -1
- package/dist/esm/api/digitalAsset.d.mts +2 -2
- package/dist/esm/api/digitalAsset.mjs +1 -1
- package/dist/esm/api/digitalAsset.mjs.map +1 -1
- package/dist/esm/api/faucet.d.mts +1 -1
- package/dist/esm/api/faucet.mjs +1 -1
- package/dist/esm/api/faucet.mjs.map +1 -1
- package/dist/esm/api/fungibleAsset.d.mts +2 -2
- package/dist/esm/api/fungibleAsset.mjs +1 -1
- package/dist/esm/api/fungibleAsset.mjs.map +1 -1
- package/dist/esm/api/general.d.mts +1 -1
- package/dist/esm/api/general.mjs +1 -1
- package/dist/esm/api/general.mjs.map +1 -1
- package/dist/esm/api/index.d.mts +3 -3
- package/dist/esm/api/index.mjs +1 -1
- package/dist/esm/api/index.mjs.map +1 -1
- package/dist/esm/api/keyless.d.mts +3 -3
- package/dist/esm/api/keyless.mjs +1 -1
- package/dist/esm/api/keyless.mjs.map +1 -1
- package/dist/esm/api/object.d.mts +1 -1
- package/dist/esm/api/object.mjs +1 -1
- package/dist/esm/api/object.mjs.map +1 -1
- package/dist/esm/api/staking.d.mts +1 -1
- package/dist/esm/api/staking.mjs +1 -1
- package/dist/esm/api/staking.mjs.map +1 -1
- package/dist/esm/api/table.d.mts +1 -1
- package/dist/esm/api/table.mjs +1 -1
- package/dist/esm/api/table.mjs.map +1 -1
- package/dist/esm/api/transaction.d.mts +2 -2
- package/dist/esm/api/transaction.mjs +1 -1
- package/dist/esm/api/transaction.mjs.map +1 -1
- package/dist/esm/api/transactionSubmission/build.d.mts +1 -1
- package/dist/esm/api/transactionSubmission/build.mjs +1 -1
- package/dist/esm/api/transactionSubmission/build.mjs.map +1 -1
- package/dist/esm/api/transactionSubmission/helpers.d.mts +1 -1
- package/dist/esm/api/transactionSubmission/helpers.mjs +1 -1
- package/dist/esm/api/transactionSubmission/helpers.mjs.map +1 -1
- package/dist/esm/api/transactionSubmission/management.d.mts +2 -2
- package/dist/esm/api/transactionSubmission/management.mjs +1 -1
- package/dist/esm/api/transactionSubmission/management.mjs.map +1 -1
- package/dist/esm/api/transactionSubmission/sign.d.mts +2 -2
- package/dist/esm/api/transactionSubmission/sign.mjs +1 -1
- package/dist/esm/api/transactionSubmission/sign.mjs.map +1 -1
- package/dist/esm/api/transactionSubmission/simulate.d.mts +1 -1
- package/dist/esm/api/transactionSubmission/simulate.mjs +1 -1
- package/dist/esm/api/transactionSubmission/simulate.mjs.map +1 -1
- package/dist/esm/api/transactionSubmission/submit.d.mts +1 -1
- package/dist/esm/api/transactionSubmission/submit.mjs +1 -1
- package/dist/esm/api/transactionSubmission/submit.mjs.map +1 -1
- package/dist/esm/api/utils.d.mts +1 -1
- package/dist/esm/api/utils.mjs +1 -1
- package/dist/esm/api/utils.mjs.map +1 -1
- package/dist/esm/bcs/consts.d.mts +1 -1
- package/dist/esm/bcs/consts.mjs +1 -1
- package/dist/esm/bcs/consts.mjs.map +1 -1
- package/dist/esm/bcs/deserializer.d.mts +1 -1
- package/dist/esm/bcs/deserializer.mjs +1 -1
- package/dist/esm/bcs/deserializer.mjs.map +1 -1
- package/dist/esm/bcs/index.d.mts +1 -1
- package/dist/esm/bcs/index.mjs +1 -1
- package/dist/esm/bcs/index.mjs.map +1 -1
- package/dist/esm/bcs/serializable/entryFunctionBytes.d.mts +1 -1
- package/dist/esm/bcs/serializable/entryFunctionBytes.mjs +1 -1
- package/dist/esm/bcs/serializable/entryFunctionBytes.mjs.map +1 -1
- package/dist/esm/bcs/serializable/fixedBytes.d.mts +1 -1
- package/dist/esm/bcs/serializable/fixedBytes.mjs +1 -1
- package/dist/esm/bcs/serializable/fixedBytes.mjs.map +1 -1
- package/dist/esm/bcs/serializable/movePrimitives.d.mts +1 -1
- package/dist/esm/bcs/serializable/movePrimitives.mjs +1 -1
- package/dist/esm/bcs/serializable/movePrimitives.mjs.map +1 -1
- package/dist/esm/bcs/serializable/moveStructs.d.mts +1 -1
- package/dist/esm/bcs/serializable/moveStructs.mjs +1 -1
- package/dist/esm/bcs/serializable/moveStructs.mjs.map +1 -1
- package/dist/esm/bcs/serializer.d.mts +1 -1
- package/dist/esm/bcs/serializer.mjs +1 -1
- package/dist/esm/bcs/serializer.mjs.map +1 -1
- package/dist/esm/cli/index.d.mts +1 -1
- package/dist/esm/cli/index.mjs +1 -1
- package/dist/esm/cli/index.mjs.map +1 -1
- package/dist/esm/cli/localNode.mjs +1 -1
- package/dist/esm/cli/localNode.mjs.map +1 -1
- package/dist/esm/cli/move.d.mts +1 -1
- package/dist/esm/cli/move.mjs +1 -1
- package/dist/esm/cli/move.mjs.map +1 -1
- package/dist/esm/client/core.d.mts +1 -1
- package/dist/esm/client/core.mjs +1 -1
- package/dist/esm/client/core.mjs.map +1 -1
- package/dist/esm/client/get.d.mts +1 -1
- package/dist/esm/client/get.mjs +1 -1
- package/dist/esm/client/get.mjs.map +1 -1
- package/dist/esm/client/index.d.mts +1 -1
- package/dist/esm/client/index.mjs +1 -1
- package/dist/esm/client/index.mjs.map +1 -1
- package/dist/esm/client/post.d.mts +1 -1
- package/dist/esm/client/post.mjs +1 -1
- package/dist/esm/client/post.mjs.map +1 -1
- package/dist/esm/core/account/index.d.mts +2 -2
- package/dist/esm/core/account/index.mjs +1 -1
- package/dist/esm/core/account/index.mjs.map +1 -1
- package/dist/esm/core/account/utils/address.d.mts +13 -2
- package/dist/esm/core/account/utils/address.mjs +1 -1
- package/dist/esm/core/account/utils/address.mjs.map +1 -1
- package/dist/esm/core/account/utils/index.d.mts +2 -2
- package/dist/esm/core/account/utils/index.mjs +1 -1
- package/dist/esm/core/account/utils/index.mjs.map +1 -1
- package/dist/esm/core/accountAddress.d.mts +1 -1
- package/dist/esm/core/accountAddress.mjs +3 -1
- package/dist/esm/core/accountAddress.mjs.map +1 -1
- package/dist/esm/core/authenticationKey.d.mts +1 -1
- package/dist/esm/core/authenticationKey.mjs +1 -1
- package/dist/esm/core/authenticationKey.mjs.map +1 -1
- package/dist/esm/core/common.mjs +1 -1
- package/dist/esm/core/common.mjs.map +1 -1
- package/dist/esm/core/crypto/abstraction.d.mts +1 -1
- package/dist/esm/core/crypto/abstraction.mjs +1 -1
- package/dist/esm/core/crypto/abstraction.mjs.map +1 -1
- package/dist/esm/core/crypto/deserializationUtils.d.mts +1 -1
- package/dist/esm/core/crypto/deserializationUtils.mjs +1 -1
- package/dist/esm/core/crypto/deserializationUtils.mjs.map +1 -1
- package/dist/esm/core/crypto/ed25519.d.mts +1 -1
- package/dist/esm/core/crypto/ed25519.mjs +1 -1
- package/dist/esm/core/crypto/ed25519.mjs.map +1 -1
- package/dist/esm/core/crypto/ephemeral.d.mts +1 -1
- package/dist/esm/core/crypto/ephemeral.mjs +1 -1
- package/dist/esm/core/crypto/ephemeral.mjs.map +1 -1
- package/dist/esm/core/crypto/federatedKeyless.d.mts +2 -2
- package/dist/esm/core/crypto/federatedKeyless.mjs +1 -1
- package/dist/esm/core/crypto/federatedKeyless.mjs.map +1 -1
- package/dist/esm/core/crypto/hdKey.mjs +1 -1
- package/dist/esm/core/crypto/hdKey.mjs.map +1 -1
- package/dist/esm/core/crypto/index.d.mts +3 -2
- package/dist/esm/core/crypto/index.mjs +1 -1
- package/dist/esm/core/crypto/index.mjs.map +1 -1
- package/dist/esm/core/crypto/keyless.d.mts +2 -2
- package/dist/esm/core/crypto/keyless.mjs +1 -1
- package/dist/esm/core/crypto/keyless.mjs.map +1 -1
- package/dist/esm/core/crypto/multiEd25519.d.mts +1 -1
- package/dist/esm/core/crypto/multiEd25519.mjs +1 -1
- package/dist/esm/core/crypto/multiEd25519.mjs.map +1 -1
- package/dist/esm/core/crypto/multiKey.d.mts +1 -1
- package/dist/esm/core/crypto/multiKey.mjs +3 -1
- package/dist/esm/core/crypto/multiKey.mjs.map +1 -1
- package/dist/esm/core/crypto/poseidon.mjs +1 -1
- package/dist/esm/core/crypto/poseidon.mjs.map +1 -1
- package/dist/esm/core/crypto/privateKey.d.mts +1 -1
- package/dist/esm/core/crypto/privateKey.mjs +1 -1
- package/dist/esm/core/crypto/privateKey.mjs.map +1 -1
- package/dist/esm/core/crypto/proof.d.mts +1 -1
- package/dist/esm/core/crypto/proof.mjs +1 -1
- package/dist/esm/core/crypto/proof.mjs.map +1 -1
- package/dist/esm/core/crypto/publicKey.d.mts +1 -1
- package/dist/esm/core/crypto/publicKey.mjs +1 -1
- package/dist/esm/core/crypto/publicKey.mjs.map +1 -1
- package/dist/esm/core/crypto/secp256k1.d.mts +1 -1
- package/dist/esm/core/crypto/secp256k1.mjs +1 -1
- package/dist/esm/core/crypto/secp256k1.mjs.map +1 -1
- package/dist/esm/core/crypto/secp256r1.d.mts +306 -0
- package/dist/esm/core/crypto/secp256r1.mjs +2 -0
- package/dist/esm/core/crypto/secp256r1.mjs.map +1 -0
- package/dist/esm/core/crypto/signature.d.mts +1 -1
- package/dist/esm/core/crypto/signature.mjs +1 -1
- package/dist/esm/core/crypto/signature.mjs.map +1 -1
- package/dist/esm/core/crypto/singleKey.d.mts +1 -1
- package/dist/esm/core/crypto/singleKey.mjs +1 -1
- package/dist/esm/core/crypto/singleKey.mjs.map +1 -1
- package/dist/esm/core/crypto/types.d.mts +1 -1
- package/dist/esm/core/crypto/types.mjs +0 -1
- package/dist/esm/core/crypto/utils.d.mts +1 -1
- package/dist/esm/core/crypto/utils.mjs +1 -1
- package/dist/esm/core/crypto/utils.mjs.map +1 -1
- package/dist/esm/core/hex.d.mts +1 -1
- package/dist/esm/core/hex.mjs +1 -1
- package/dist/esm/core/hex.mjs.map +1 -1
- package/dist/esm/core/index.d.mts +4 -3
- package/dist/esm/core/index.mjs +1 -1
- package/dist/esm/core/index.mjs.map +1 -1
- package/dist/esm/errors/index.d.mts +1 -1
- package/dist/esm/errors/index.mjs +6 -1
- package/dist/esm/errors/index.mjs.map +1 -1
- package/dist/esm/{federatedKeyless-CUPEnP-W.d.mts → federatedKeyless-CTzDAQTu.d.mts} +1 -1
- package/dist/esm/index.d.mts +5 -4
- package/dist/esm/index.mjs +1 -1
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/internal/abstraction.d.mts +1 -1
- package/dist/esm/internal/abstraction.mjs +1 -1
- package/dist/esm/internal/abstraction.mjs.map +1 -1
- package/dist/esm/internal/account.d.mts +21 -3
- package/dist/esm/internal/account.mjs +1 -1
- package/dist/esm/internal/account.mjs.map +1 -1
- package/dist/esm/internal/ans.d.mts +2 -2
- package/dist/esm/internal/ans.mjs +1 -1
- package/dist/esm/internal/ans.mjs.map +1 -1
- package/dist/esm/internal/coin.d.mts +1 -1
- package/dist/esm/internal/coin.mjs +1 -1
- package/dist/esm/internal/coin.mjs.map +1 -1
- package/dist/esm/internal/digitalAsset.d.mts +2 -2
- package/dist/esm/internal/digitalAsset.mjs +1 -1
- package/dist/esm/internal/digitalAsset.mjs.map +1 -1
- package/dist/esm/internal/faucet.d.mts +1 -1
- package/dist/esm/internal/faucet.mjs +1 -1
- package/dist/esm/internal/faucet.mjs.map +1 -1
- package/dist/esm/internal/fungibleAsset.d.mts +2 -2
- package/dist/esm/internal/fungibleAsset.mjs +1 -1
- package/dist/esm/internal/fungibleAsset.mjs.map +1 -1
- package/dist/esm/internal/general.d.mts +1 -1
- package/dist/esm/internal/general.mjs +1 -1
- package/dist/esm/internal/general.mjs.map +1 -1
- package/dist/esm/internal/keyless.d.mts +3 -3
- package/dist/esm/internal/keyless.mjs +1 -1
- package/dist/esm/internal/keyless.mjs.map +1 -1
- package/dist/esm/internal/object.d.mts +1 -1
- package/dist/esm/internal/object.mjs +1 -1
- package/dist/esm/internal/object.mjs.map +1 -1
- package/dist/esm/internal/staking.d.mts +1 -1
- package/dist/esm/internal/staking.mjs +1 -1
- package/dist/esm/internal/staking.mjs.map +1 -1
- package/dist/esm/internal/table.d.mts +1 -1
- package/dist/esm/internal/table.mjs +1 -1
- package/dist/esm/internal/table.mjs.map +1 -1
- package/dist/esm/internal/transaction.d.mts +1 -1
- package/dist/esm/internal/transaction.mjs +1 -1
- package/dist/esm/internal/transaction.mjs.map +1 -1
- package/dist/esm/internal/transactionSubmission.d.mts +2 -2
- package/dist/esm/internal/transactionSubmission.mjs +1 -1
- package/dist/esm/internal/transactionSubmission.mjs.map +1 -1
- package/dist/esm/internal/utils/index.d.mts +1 -1
- package/dist/esm/internal/utils/index.mjs +1 -1
- package/dist/esm/internal/utils/index.mjs.map +1 -1
- package/dist/esm/internal/utils/utils.d.mts +1 -1
- package/dist/esm/internal/utils/utils.mjs +1 -1
- package/dist/esm/internal/utils/utils.mjs.map +1 -1
- package/dist/esm/internal/view.d.mts +1 -1
- package/dist/esm/internal/view.mjs +1 -1
- package/dist/esm/internal/view.mjs.map +1 -1
- package/dist/esm/transactions/authenticator/account.d.mts +1 -1
- package/dist/esm/transactions/authenticator/account.mjs +1 -1
- package/dist/esm/transactions/authenticator/account.mjs.map +1 -1
- package/dist/esm/transactions/authenticator/index.d.mts +1 -1
- package/dist/esm/transactions/authenticator/index.mjs +1 -1
- package/dist/esm/transactions/authenticator/index.mjs.map +1 -1
- package/dist/esm/transactions/authenticator/transaction.d.mts +1 -1
- package/dist/esm/transactions/authenticator/transaction.mjs +1 -1
- package/dist/esm/transactions/authenticator/transaction.mjs.map +1 -1
- package/dist/esm/transactions/index.d.mts +1 -1
- package/dist/esm/transactions/index.mjs +1 -1
- package/dist/esm/transactions/index.mjs.map +1 -1
- package/dist/esm/transactions/instances/chainId.d.mts +1 -1
- package/dist/esm/transactions/instances/chainId.mjs +1 -1
- package/dist/esm/transactions/instances/chainId.mjs.map +1 -1
- package/dist/esm/transactions/instances/identifier.d.mts +1 -1
- package/dist/esm/transactions/instances/identifier.mjs +1 -1
- package/dist/esm/transactions/instances/identifier.mjs.map +1 -1
- package/dist/esm/transactions/instances/index.d.mts +1 -1
- package/dist/esm/transactions/instances/index.mjs +1 -1
- package/dist/esm/transactions/instances/index.mjs.map +1 -1
- package/dist/esm/transactions/instances/moduleId.d.mts +1 -1
- package/dist/esm/transactions/instances/moduleId.mjs +1 -1
- package/dist/esm/transactions/instances/moduleId.mjs.map +1 -1
- package/dist/esm/transactions/instances/multiAgentTransaction.d.mts +1 -1
- package/dist/esm/transactions/instances/multiAgentTransaction.mjs +1 -1
- package/dist/esm/transactions/instances/multiAgentTransaction.mjs.map +1 -1
- package/dist/esm/transactions/instances/rawTransaction.d.mts +1 -1
- package/dist/esm/transactions/instances/rawTransaction.mjs +1 -1
- package/dist/esm/transactions/instances/rawTransaction.mjs.map +1 -1
- package/dist/esm/transactions/instances/rotationProofChallenge.d.mts +1 -1
- package/dist/esm/transactions/instances/rotationProofChallenge.mjs +1 -1
- package/dist/esm/transactions/instances/rotationProofChallenge.mjs.map +1 -1
- package/dist/esm/transactions/instances/signedTransaction.d.mts +1 -1
- package/dist/esm/transactions/instances/signedTransaction.mjs +1 -1
- package/dist/esm/transactions/instances/signedTransaction.mjs.map +1 -1
- package/dist/esm/transactions/instances/simpleTransaction.d.mts +1 -1
- package/dist/esm/transactions/instances/simpleTransaction.mjs +1 -1
- package/dist/esm/transactions/instances/simpleTransaction.mjs.map +1 -1
- package/dist/esm/transactions/instances/transactionArgument.d.mts +1 -1
- package/dist/esm/transactions/instances/transactionArgument.mjs +0 -1
- package/dist/esm/transactions/instances/transactionPayload.d.mts +1 -1
- package/dist/esm/transactions/instances/transactionPayload.mjs +1 -1
- package/dist/esm/transactions/instances/transactionPayload.mjs.map +1 -1
- package/dist/esm/transactions/management/accountSequenceNumber.d.mts +2 -2
- package/dist/esm/transactions/management/accountSequenceNumber.mjs +1 -1
- package/dist/esm/transactions/management/accountSequenceNumber.mjs.map +1 -1
- package/dist/esm/transactions/management/asyncQueue.mjs +1 -1
- package/dist/esm/transactions/management/asyncQueue.mjs.map +1 -1
- package/dist/esm/transactions/management/index.d.mts +2 -2
- package/dist/esm/transactions/management/index.mjs +1 -1
- package/dist/esm/transactions/management/index.mjs.map +1 -1
- package/dist/esm/transactions/management/transactionWorker.d.mts +2 -2
- package/dist/esm/transactions/management/transactionWorker.mjs +1 -1
- package/dist/esm/transactions/management/transactionWorker.mjs.map +1 -1
- package/dist/esm/transactions/transactionBuilder/helpers.d.mts +1 -1
- package/dist/esm/transactions/transactionBuilder/helpers.mjs +1 -1
- package/dist/esm/transactions/transactionBuilder/helpers.mjs.map +1 -1
- package/dist/esm/transactions/transactionBuilder/index.d.mts +1 -1
- package/dist/esm/transactions/transactionBuilder/index.mjs +1 -1
- package/dist/esm/transactions/transactionBuilder/index.mjs.map +1 -1
- package/dist/esm/transactions/transactionBuilder/remoteAbi.d.mts +1 -1
- package/dist/esm/transactions/transactionBuilder/remoteAbi.mjs +1 -1
- package/dist/esm/transactions/transactionBuilder/remoteAbi.mjs.map +1 -1
- package/dist/esm/transactions/transactionBuilder/signingMessage.d.mts +1 -1
- package/dist/esm/transactions/transactionBuilder/signingMessage.mjs +1 -1
- package/dist/esm/transactions/transactionBuilder/signingMessage.mjs.map +1 -1
- package/dist/esm/transactions/transactionBuilder/transactionBuilder.d.mts +1 -1
- package/dist/esm/transactions/transactionBuilder/transactionBuilder.mjs +1 -1
- package/dist/esm/transactions/transactionBuilder/transactionBuilder.mjs.map +1 -1
- package/dist/esm/transactions/typeTag/index.d.mts +1 -1
- package/dist/esm/transactions/typeTag/index.mjs +1 -1
- package/dist/esm/transactions/typeTag/index.mjs.map +1 -1
- package/dist/esm/transactions/typeTag/parser.d.mts +1 -1
- package/dist/esm/transactions/typeTag/parser.mjs +1 -1
- package/dist/esm/transactions/typeTag/parser.mjs.map +1 -1
- package/dist/esm/transactions/types.d.mts +1 -1
- package/dist/esm/transactions/types.mjs +0 -1
- package/dist/esm/types/abstraction.mjs +1 -1
- package/dist/esm/types/abstraction.mjs.map +1 -1
- package/dist/esm/types/generated/queries.mjs +493 -1
- package/dist/esm/types/generated/queries.mjs.map +1 -1
- package/dist/esm/types/generated/types.mjs +1 -1
- package/dist/esm/types/generated/types.mjs.map +1 -1
- package/dist/esm/types/index.d.mts +1 -1
- package/dist/esm/types/index.mjs +1 -1
- package/dist/esm/types/index.mjs.map +1 -1
- package/dist/esm/types/indexer.mjs +0 -1
- package/dist/esm/types/types.d.mts +1 -1
- package/dist/esm/types/types.mjs +1 -1
- package/dist/esm/types/types.mjs.map +1 -1
- package/dist/esm/utils/apiEndpoints.d.mts +1 -0
- package/dist/esm/utils/apiEndpoints.mjs +1 -1
- package/dist/esm/utils/apiEndpoints.mjs.map +1 -1
- package/dist/esm/utils/const.mjs +1 -1
- package/dist/esm/utils/const.mjs.map +1 -1
- package/dist/esm/utils/helpers.d.mts +1 -1
- package/dist/esm/utils/helpers.mjs +1 -1
- package/dist/esm/utils/helpers.mjs.map +1 -1
- package/dist/esm/utils/index.d.mts +1 -1
- package/dist/esm/utils/index.mjs +1 -1
- package/dist/esm/utils/index.mjs.map +1 -1
- package/dist/esm/utils/memoize.mjs +1 -1
- package/dist/esm/utils/memoize.mjs.map +1 -1
- package/dist/esm/utils/normalizeBundle.d.mts +1 -1
- package/dist/esm/utils/normalizeBundle.mjs +1 -1
- package/dist/esm/utils/normalizeBundle.mjs.map +1 -1
- package/dist/esm/version.d.mts +1 -1
- package/dist/esm/version.mjs +1 -1
- package/dist/esm/version.mjs.map +1 -1
- package/package.json +40 -22
- package/src/api/account.ts +32 -7
- package/src/api/aptos.ts +25 -14
- package/src/core/account/utils/address.ts +22 -0
- package/src/core/crypto/index.ts +1 -0
- package/src/core/crypto/privateKey.ts +1 -0
- package/src/core/crypto/secp256k1.ts +9 -1
- package/src/core/crypto/secp256r1.ts +495 -0
- package/src/core/crypto/singleKey.ts +11 -0
- package/src/internal/account.ts +33 -0
- package/src/internal/ans.ts +1 -0
- package/src/types/types.ts +5 -0
- package/src/utils/apiEndpoints.ts +7 -0
- package/src/version.ts +1 -1
- package/dist/common/chunk-6MMUUJHX.js +0 -4
- package/dist/esm/chunk-35DKMW7Q.mjs +0 -2
- package/dist/esm/chunk-35DKMW7Q.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-4RXKALLC.mjs +0 -2
- package/dist/esm/chunk-4RXKALLC.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-56CNRT2K.mjs +0 -2
- package/dist/esm/chunk-56CNRT2K.mjs.map +0 -1
- package/dist/esm/chunk-5FI4545P.mjs +0 -2
- package/dist/esm/chunk-5FI4545P.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-6WDVDEQZ.mjs +0 -7
- package/dist/esm/chunk-6WDVDEQZ.mjs.map +0 -1
- package/dist/esm/chunk-7DQDJ2SA.mjs +0 -2
- package/dist/esm/chunk-7DQDJ2SA.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-A5L76YP7.mjs +0 -2
- package/dist/esm/chunk-A5L76YP7.mjs.map +0 -1
- package/dist/esm/chunk-B563XRSZ.mjs +0 -2
- package/dist/esm/chunk-B563XRSZ.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-CW35YAMN.mjs +0 -2
- package/dist/esm/chunk-CW35YAMN.mjs.map +0 -1
- package/dist/esm/chunk-DIGP2ALY.mjs +0 -4
- package/dist/esm/chunk-DIGP2ALY.mjs.map +0 -1
- package/dist/esm/chunk-DNRUDMMV.mjs +0 -2
- package/dist/esm/chunk-DNRUDMMV.mjs.map +0 -1
- package/dist/esm/chunk-EBMEXURY.mjs +0 -2
- package/dist/esm/chunk-EBMEXURY.mjs.map +0 -1
- package/dist/esm/chunk-EM52Z7T7.mjs +0 -2
- package/dist/esm/chunk-EM52Z7T7.mjs.map +0 -1
- package/dist/esm/chunk-ES2KP6BS.mjs +0 -2
- package/dist/esm/chunk-ES2KP6BS.mjs.map +0 -1
- package/dist/esm/chunk-FD6FGKYY.mjs +0 -1
- package/dist/esm/chunk-FD6FGKYY.mjs.map +0 -1
- package/dist/esm/chunk-FGFLPH5K.mjs +0 -2
- package/dist/esm/chunk-FGFLPH5K.mjs.map +0 -1
- package/dist/esm/chunk-FLZPUYXQ.mjs +0 -2
- package/dist/esm/chunk-FLZPUYXQ.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-GFFKEZ56.mjs +0 -2
- package/dist/esm/chunk-GFFKEZ56.mjs.map +0 -1
- package/dist/esm/chunk-GMQCQDW4.mjs +0 -2
- package/dist/esm/chunk-GMQCQDW4.mjs.map +0 -1
- package/dist/esm/chunk-GOXRBEIJ.mjs +0 -2
- package/dist/esm/chunk-GOXRBEIJ.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-HNBKTJPN.mjs +0 -2
- package/dist/esm/chunk-HNBKTJPN.mjs.map +0 -1
- package/dist/esm/chunk-HNBVYE3N.mjs +0 -2
- package/dist/esm/chunk-HNBVYE3N.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-IJE2LVZG.mjs +0 -2
- package/dist/esm/chunk-IJE2LVZG.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-LWL57YFU.mjs +0 -2
- package/dist/esm/chunk-LWL57YFU.mjs.map +0 -1
- package/dist/esm/chunk-MT2RJ7H3.mjs +0 -2
- package/dist/esm/chunk-MT2RJ7H3.mjs.map +0 -1
- package/dist/esm/chunk-N3O3ULF7.mjs +0 -2
- package/dist/esm/chunk-N3O3ULF7.mjs.map +0 -1
- package/dist/esm/chunk-N6YTF76Q.mjs +0 -2
- package/dist/esm/chunk-N6YTF76Q.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-OLILO7VD.mjs +0 -2
- package/dist/esm/chunk-OLILO7VD.mjs.map +0 -1
- package/dist/esm/chunk-ORMOQWWH.mjs +0 -2
- package/dist/esm/chunk-ORMOQWWH.mjs.map +0 -1
- package/dist/esm/chunk-Q4W3WJ2U.mjs +0 -2
- package/dist/esm/chunk-Q4W3WJ2U.mjs.map +0 -1
- package/dist/esm/chunk-QREVMGQZ.mjs +0 -2
- package/dist/esm/chunk-QREVMGQZ.mjs.map +0 -1
- package/dist/esm/chunk-RCSJFTST.mjs +0 -2
- package/dist/esm/chunk-RCSJFTST.mjs.map +0 -1
- package/dist/esm/chunk-RGKRCZ36.mjs +0 -4
- package/dist/esm/chunk-RGKRCZ36.mjs.map +0 -1
- package/dist/esm/chunk-ROT6S6BM.mjs +0 -2
- package/dist/esm/chunk-ROT6S6BM.mjs.map +0 -1
- package/dist/esm/chunk-RQX6JOEN.mjs +0 -2
- package/dist/esm/chunk-RQX6JOEN.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-TGRLDWXV.mjs +0 -2
- package/dist/esm/chunk-TGRLDWXV.mjs.map +0 -1
- package/dist/esm/chunk-TOBQ5UE6.mjs +0 -2
- package/dist/esm/chunk-TOBQ5UE6.mjs.map +0 -1
- package/dist/esm/chunk-UL777LTI.mjs +0 -494
- package/dist/esm/chunk-UL777LTI.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-V74WPKSY.mjs +0 -2
- package/dist/esm/chunk-V74WPKSY.mjs.map +0 -1
- package/dist/esm/chunk-WCMW2L3P.mjs +0 -2
- package/dist/esm/chunk-WCMW2L3P.mjs.map +0 -1
- package/dist/esm/chunk-WSR5EBJM.mjs +0 -2
- package/dist/esm/chunk-WSR5EBJM.mjs.map +0 -1
- package/dist/esm/chunk-XJJVJOX5.mjs +0 -2
- package/dist/esm/chunk-XJJVJOX5.mjs.map +0 -1
- package/dist/esm/chunk-XKUIMGKU.mjs +0 -2
- package/dist/esm/chunk-XKUIMGKU.mjs.map +0 -1
- package/dist/esm/chunk-YOZBVVKL.mjs +0 -2
- package/dist/esm/chunk-YOZBVVKL.mjs.map +0 -1
- package/dist/esm/chunk-ZP4DWSQA.mjs +0 -2
- package/dist/esm/chunk-ZP4DWSQA.mjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../src/account/KeylessAccount.ts"],"sourcesContent":["// Copyright © Aptos Foundation\n// SPDX-License-Identifier: Apache-2.0\n\nimport { HexInput } from \"../types\";\nimport { AccountAddress } from \"../core/accountAddress\";\nimport { getIssAudAndUidVal, Groth16VerificationKey, KeylessPublicKey, ZeroKnowledgeSig } from \"../core/crypto\";\n\nimport { EphemeralKeyPair } from \"./EphemeralKeyPair\";\nimport { Deserializer, Serializer } from \"../bcs\";\nimport { AbstractKeylessAccount, ProofFetchCallback } from \"./AbstractKeylessAccount\";\nimport { Hex } from \"../core/hex\";\n\n/**\n * Account implementation for the Keyless authentication scheme.\n *\n * Used to represent a Keyless based account and sign transactions with it.\n *\n * Use `KeylessAccount.create()` to instantiate a KeylessAccount with a JWT, proof and EphemeralKeyPair.\n *\n * When the proof expires or the JWT becomes invalid, the KeylessAccount must be instantiated again with a new JWT,\n * EphemeralKeyPair, and corresponding proof.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\nexport class KeylessAccount extends AbstractKeylessAccount {\n /**\n * The KeylessPublicKey associated with the account\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n readonly publicKey: KeylessPublicKey;\n\n // Use the static constructor 'create' instead.\n\n /**\n * Use the static generator `create(...)` instead.\n * Creates an instance of the KeylessAccount with an optional proof.\n *\n * @param args - The parameters for creating a KeylessAccount.\n * @param args.address - Optional account address associated with the KeylessAccount.\n * @param args.ephemeralKeyPair - The ephemeral key pair used in the account creation.\n * @param args.iss - A JWT issuer.\n * @param args.uidKey - The claim on the JWT to identify a user. This is typically 'sub' or 'email'.\n * @param args.uidVal - The unique id for this user, intended to be a stable user identifier.\n * @param args.aud - The value of the 'aud' claim on the JWT, also known as client ID. This is the identifier for the dApp's\n * OIDC registration with the identity provider.\n * @param args.pepper - A hexadecimal input used for additional security.\n * @param args.proof - A Zero Knowledge Signature or a promise that resolves to one.\n * @param args.proofFetchCallback - Optional callback function for fetching proof.\n * @param args.jwt - A JSON Web Token used for authentication.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n constructor(args: {\n address?: AccountAddress;\n ephemeralKeyPair: EphemeralKeyPair;\n iss: string;\n uidKey: string;\n uidVal: string;\n aud: string;\n pepper: HexInput;\n proof: ZeroKnowledgeSig | Promise<ZeroKnowledgeSig>;\n proofFetchCallback?: ProofFetchCallback;\n jwt: string;\n verificationKeyHash?: HexInput;\n }) {\n const publicKey = KeylessPublicKey.create(args);\n super({ publicKey, ...args });\n this.publicKey = publicKey;\n }\n\n /**\n * Serializes the transaction data into a format suitable for transmission or storage.\n * This function ensures that both the transaction bytes and the proof are properly serialized.\n *\n * @param serializer - The serializer instance used to convert the transaction data into bytes.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n serialize(serializer: Serializer): void {\n super.serialize(serializer);\n }\n\n /**\n * Deserializes the provided deserializer to create a KeylessAccount instance.\n * This function extracts necessary components such as the JWT, UID key, pepper, ephemeral key pair, and proof from the deserializer.\n *\n * @param deserializer - The deserializer instance used to retrieve the serialized data.\n * @returns A KeylessAccount instance created from the deserialized data.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n static deserialize(deserializer: Deserializer): KeylessAccount {\n const { address, proof, ephemeralKeyPair, jwt, uidKey, pepper, verificationKeyHash } =\n AbstractKeylessAccount.partialDeserialize(deserializer);\n const { iss, aud, uidVal } = getIssAudAndUidVal({ jwt, uidKey });\n return new KeylessAccount({\n address,\n proof,\n ephemeralKeyPair,\n iss,\n uidKey,\n uidVal,\n aud,\n pepper,\n jwt,\n verificationKeyHash,\n });\n }\n\n /**\n * Deserialize bytes using this account's information.\n *\n * @param bytes The bytes being interpreted.\n * @returns\n */\n static fromBytes(bytes: HexInput): KeylessAccount {\n return KeylessAccount.deserialize(new Deserializer(Hex.hexInputToUint8Array(bytes)));\n }\n\n /**\n * Creates a KeylessAccount instance using the provided parameters.\n * This function allows you to set up a KeylessAccount with specific attributes such as address, proof, and JWT.\n * This is used instead of the KeylessAccount constructor.\n *\n * @param args - The parameters for creating a KeylessAccount.\n * @param args.address - Optional account address associated with the KeylessAccount.\n * @param args.proof - A Zero Knowledge Signature or a promise that resolves to one.\n * @param args.jwt - A JSON Web Token used for authentication.\n * @param args.ephemeralKeyPair - The ephemeral key pair used in the account creation.\n * @param args.pepper - A hexadecimal input used for additional security.\n * @param args.uidKey - Optional key for user identification, defaults to \"sub\".\n * @param args.proofFetchCallback - Optional callback function for fetching proof.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n static create(args: {\n address?: AccountAddress;\n proof: ZeroKnowledgeSig | Promise<ZeroKnowledgeSig>;\n jwt: string;\n ephemeralKeyPair: EphemeralKeyPair;\n pepper: HexInput;\n uidKey?: string;\n proofFetchCallback?: ProofFetchCallback;\n verificationKey?: Groth16VerificationKey;\n verificationKeyHash?: Uint8Array;\n }): KeylessAccount {\n const {\n address,\n proof,\n jwt,\n ephemeralKeyPair,\n pepper,\n uidKey = \"sub\",\n proofFetchCallback,\n verificationKey,\n verificationKeyHash,\n } = args;\n\n if (verificationKeyHash && verificationKey) {\n throw new Error(\"Cannot provide both verificationKey and verificationKeyHash\");\n }\n\n const { iss, aud, uidVal } = getIssAudAndUidVal({ jwt, uidKey });\n return new KeylessAccount({\n address,\n proof,\n ephemeralKeyPair,\n iss,\n uidKey,\n uidVal,\n aud,\n pepper,\n jwt,\n proofFetchCallback,\n verificationKeyHash: verificationKeyHash ?? (verificationKey ? verificationKey.hash() : undefined),\n });\n }\n}\n"],"mappings":"AAKA,OAAS,sBAAAA,EAA4C,oBAAAC,MAA0C,iBAG/F,OAAS,gBAAAC,MAAgC,SACzC,OAAS,0BAAAC,MAAkD,2BAC3D,OAAS,OAAAC,MAAW,cAcb,MAAMC,UAAuBF,CAAuB,CA6BzD,YAAYG,EAYT,CACD,MAAMC,EAAYN,EAAiB,OAAOK,CAAI,EAC9C,MAAM,CAAE,UAAAC,EAAW,GAAGD,CAAK,CAAC,EAC5B,KAAK,UAAYC,CACnB,CAUA,UAAUC,EAA8B,CACtC,MAAM,UAAUA,CAAU,CAC5B,CAWA,OAAO,YAAYC,EAA4C,CAC7D,KAAM,CAAE,QAAAC,EAAS,MAAAC,EAAO,iBAAAC,EAAkB,IAAAC,EAAK,OAAAC,EAAQ,OAAAC,EAAQ,oBAAAC,CAAoB,EACjFb,EAAuB,mBAAmBM,CAAY,EAClD,CAAE,IAAAQ,EAAK,IAAAC,EAAK,OAAAC,CAAO,EAAInB,EAAmB,CAAE,IAAAa,EAAK,OAAAC,CAAO,CAAC,EAC/D,OAAO,IAAIT,EAAe,CACxB,QAAAK,EACA,MAAAC,EACA,iBAAAC,EACA,IAAAK,EACA,OAAAH,EACA,OAAAK,EACA,IAAAD,EACA,OAAAH,EACA,IAAAF,EACA,oBAAAG,CACF,CAAC,CACH,CAQA,OAAO,UAAUI,EAAiC,CAChD,OAAOf,EAAe,YAAY,IAAIH,EAAaE,EAAI,qBAAqBgB,CAAK,CAAC,CAAC,CACrF,CAkBA,OAAO,OAAOd,EAUK,CACjB,KAAM,CACJ,QAAAI,EACA,MAAAC,EACA,IAAAE,EACA,iBAAAD,EACA,OAAAG,EACA,OAAAD,EAAS,MACT,mBAAAO,EACA,gBAAAC,EACA,oBAAAN,CACF,EAAIV,EAEJ,GAAIU,GAAuBM,EACzB,MAAM,IAAI,MAAM,6DAA6D,EAG/E,KAAM,CAAE,IAAAL,EAAK,IAAAC,EAAK,OAAAC,CAAO,EAAInB,EAAmB,CAAE,IAAAa,EAAK,OAAAC,CAAO,CAAC,EAC/D,OAAO,IAAIT,EAAe,CACxB,QAAAK,EACA,MAAAC,EACA,iBAAAC,EACA,IAAAK,EACA,OAAAH,EACA,OAAAK,EACA,IAAAD,EACA,OAAAH,EACA,IAAAF,EACA,mBAAAQ,EACA,oBAAqBL,IAAwBM,EAAkBA,EAAgB,KAAK,EAAI,OAC1F,CAAC,CACH,CACF","names":["getIssAudAndUidVal","KeylessPublicKey","Deserializer","AbstractKeylessAccount","Hex","KeylessAccount","args","publicKey","serializer","deserializer","address","proof","ephemeralKeyPair","jwt","uidKey","pepper","verificationKeyHash","iss","aud","uidVal","bytes","proofFetchCallback","verificationKey"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { t as MultiEd25519PublicKey, r as Ed25519PrivateKey, m as AccountAddressInput, bp as HexInput, u as MultiEd25519Signature, n as AccountAddress, dr as SigningScheme, A as AptosConfig, K as Signature, Y as AccountAuthenticatorMultiEd25519, bg as AnyRawTransaction } from '../account-
|
|
2
|
-
import { A as Account } from '../Ed25519Account-
|
|
1
|
+
import { t as MultiEd25519PublicKey, r as Ed25519PrivateKey, m as AccountAddressInput, bp as HexInput, u as MultiEd25519Signature, n as AccountAddress, dr as SigningScheme, A as AptosConfig, K as Signature, Y as AccountAuthenticatorMultiEd25519, bg as AnyRawTransaction } from '../account-BortO8g2.mjs';
|
|
2
|
+
import { A as Account } from '../Ed25519Account-CPwej6wB.mjs';
|
|
3
3
|
import '../types/indexer.mjs';
|
|
4
4
|
import '../types/generated/operations.mjs';
|
|
5
5
|
import '../types/generated/types.mjs';
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{AccountAddress as c}from"../core/accountAddress";import{MultiEd25519Signature as g}from"../core/crypto/multiEd25519";import{AccountAuthenticatorMultiEd25519 as a}from"../transactions/authenticator/account";import{generateSigningMessageForTransaction as d}from"../transactions/transactionBuilder/signingMessage";import{SigningScheme as l}from"../types";class T{constructor(t){this.signingScheme=l.MultiEd25519;const{signers:e,publicKey:r,address:u}=t;if(this.publicKey=r,this.accountAddress=u?c.from(u):this.publicKey.authKey().derivedAddress(),r.threshold>e.length)throw new Error(`Not enough signers provided to satisfy the required signatures. Need ${r.threshold} signers, but only ${e.length} provided`);if(r.threshold<e.length)throw new Error(`More signers provided than required. Need ${r.threshold} signers, but ${e.length} provided`);const n=[];for(const i of e)n.push(this.publicKey.getIndex(i.publicKey()));const s=e.map((i,o)=>[i,n[o]]);s.sort((i,o)=>i[1]-o[1]),this.signers=s.map(i=>i[0]),this.signerIndices=s.map(i=>i[1]),this.signaturesBitmap=this.publicKey.createBitmap({bits:n})}verifySignature(t){return this.publicKey.verifySignature(t)}async verifySignatureAsync(t){return this.publicKey.verifySignatureAsync({...t,signature:t.signature})}signWithAuthenticator(t){return new a(this.publicKey,this.sign(t))}signTransactionWithAuthenticator(t){return new a(this.publicKey,this.signTransaction(t))}sign(t){const e=[];for(const r of this.signers)e.push(r.sign(t));return new g({signatures:e,bitmap:this.signaturesBitmap})}signTransaction(t){return this.sign(d(t))}}export{T as MultiEd25519Account};
|
|
2
2
|
//# sourceMappingURL=MultiEd25519Account.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../src/account/MultiEd25519Account.ts"],"sourcesContent":["import { AptosConfig } from \"../api\";\nimport { AccountAddress, AccountAddressInput } from \"../core/accountAddress\";\nimport { Ed25519PrivateKey, Signature } from \"../core/crypto\";\nimport { MultiEd25519PublicKey, MultiEd25519Signature } from \"../core/crypto/multiEd25519\";\nimport { AccountAuthenticatorMultiEd25519 } from \"../transactions/authenticator/account\";\nimport { generateSigningMessageForTransaction } from \"../transactions/transactionBuilder/signingMessage\";\nimport { AnyRawTransaction } from \"../transactions/types\";\nimport { HexInput, SigningScheme } from \"../types\";\nimport type { Account } from \"./Account\";\n\nexport interface MultiEd25519SignerConstructorArgs {\n publicKey: MultiEd25519PublicKey;\n signers: Ed25519PrivateKey[];\n address?: AccountAddressInput;\n}\n\nexport interface VerifyMultiEd25519SignatureArgs {\n message: HexInput;\n signature: MultiEd25519Signature;\n}\n\n/**\n * Signer implementation for the Multi-Ed25519 authentication scheme.\n *\n * Note: This authentication scheme is a legacy authentication scheme. Prefer using MultiKeyAccounts as a\n * MultiKeyAccount can support any type of signer, not just Ed25519. Generating a signer instance does not\n * create the account on-chain.\n */\nexport class MultiEd25519Account implements Account {\n readonly publicKey: MultiEd25519PublicKey;\n\n readonly accountAddress: AccountAddress;\n\n readonly signingScheme = SigningScheme.MultiEd25519;\n\n /**\n * The signers used to sign messages. These signers should correspond to public keys in the\n * MultiEd25519Account. The number of signers should be equal to this.publicKey.threshold.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n readonly signers: Ed25519PrivateKey[];\n\n /**\n * An array of indices where for signer[i], signerIndicies[i] is the index of the corresponding public key in\n * publicKey.publicKeys. Used to derive the right public key to use for verification.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n readonly signerIndices: number[];\n\n readonly signaturesBitmap: Uint8Array;\n\n // region Constructors\n\n constructor(args: MultiEd25519SignerConstructorArgs) {\n const { signers, publicKey, address } = args;\n this.publicKey = publicKey;\n this.accountAddress = address ? AccountAddress.from(address) : this.publicKey.authKey().derivedAddress();\n\n if (publicKey.threshold > signers.length) {\n throw new Error(\n // eslint-disable-next-line max-len\n `Not enough signers provided to satisfy the required signatures. Need ${publicKey.threshold} signers, but only ${signers.length} provided`,\n );\n } else if (publicKey.threshold < signers.length) {\n throw new Error(\n // eslint-disable-next-line max-len\n `More signers provided than required. Need ${publicKey.threshold} signers, but ${signers.length} provided`,\n );\n }\n\n // For each signer, find its corresponding position in the public keys array\n const bitPositions: number[] = [];\n for (const signer of signers) {\n bitPositions.push(this.publicKey.getIndex(signer.publicKey()));\n }\n\n // Create pairs of [signer, position] and sort them by position\n // This sorting is critical because:\n // 1. The on-chain verification expects signatures to be in ascending order by bit position\n // 2. The bitmap must match the order of signatures when verifying\n const signersAndBitPosition: [Ed25519PrivateKey, number][] = signers.map((signer, index) => [\n signer,\n bitPositions[index],\n ]);\n signersAndBitPosition.sort((a, b) => a[1] - b[1]);\n\n // Extract the sorted signers and their positions into separate arrays\n this.signers = signersAndBitPosition.map((value) => value[0]);\n this.signerIndices = signersAndBitPosition.map((value) => value[1]);\n\n // Create a bitmap representing which public keys from the MultiEd25519PublicKey are being used\n // This bitmap is used during signature verification to identify which public keys\n // should be used to verify each signature\n this.signaturesBitmap = this.publicKey.createBitmap({ bits: bitPositions });\n }\n\n // endregion\n\n // region Account\n\n /**\n * Verify the given message and signature with the public key.\n *\n * @param args.message raw message data in HexInput format\n * @param args.signature signed message Signature\n * @returns\n */\n verifySignature(args: VerifyMultiEd25519SignatureArgs): boolean {\n return this.publicKey.verifySignature(args);\n }\n\n /**\n * Verify the given message and signature with the public key.\n *\n * MultiEd25519 signatures do not depend on chain state, so this function is\n * equivalent to the synchronous verifySignature method.\n *\n * @param args - The arguments for verifying the signature.\n * @param args.aptosConfig - The configuration object for connecting to the Aptos network\n * @param args.message - Raw message data in HexInput format.\n * @param args.signature - Signed message signature.\n * @returns A boolean indicating whether the signature is valid.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n async verifySignatureAsync(args: {\n aptosConfig: AptosConfig;\n message: HexInput;\n signature: Signature;\n options?: { throwErrorWithReason?: boolean };\n }): Promise<boolean> {\n return this.publicKey.verifySignatureAsync({\n ...args,\n signature: args.signature,\n });\n }\n\n /**\n * Sign a message using the account's Ed25519 private key.\n * @param message the signing message, as binary input\n * @return the AccountAuthenticator containing the signature, together with the account's public key\n */\n signWithAuthenticator(message: HexInput): AccountAuthenticatorMultiEd25519 {\n return new AccountAuthenticatorMultiEd25519(this.publicKey, this.sign(message));\n }\n\n /**\n * Sign a transaction using the account's Ed25519 private keys.\n * @param transaction the raw transaction\n * @return the AccountAuthenticator containing the signature of the transaction, together with the account's public key\n */\n signTransactionWithAuthenticator(transaction: AnyRawTransaction): AccountAuthenticatorMultiEd25519 {\n return new AccountAuthenticatorMultiEd25519(this.publicKey, this.signTransaction(transaction));\n }\n\n /**\n * Sign the given message using the account's Ed25519 private keys.\n * @param message in HexInput format\n * @returns MultiEd25519Signature\n */\n sign(message: HexInput): MultiEd25519Signature {\n const signatures = [];\n for (const signer of this.signers) {\n signatures.push(signer.sign(message));\n }\n return new MultiEd25519Signature({ signatures, bitmap: this.signaturesBitmap });\n }\n\n /**\n * Sign the given transaction using the available signing capabilities.\n * @param transaction the transaction to be signed\n * @returns Signature\n */\n signTransaction(transaction: AnyRawTransaction): MultiEd25519Signature {\n return this.sign(generateSigningMessageForTransaction(transaction));\n }\n\n // endregion\n}\n"],"mappings":"AACA,OAAS,kBAAAA,MAA2C,yBAEpD,OAAgC,yBAAAC,MAA6B,8BAC7D,OAAS,oCAAAC,MAAwC,wCACjD,OAAS,wCAAAC,MAA4C,oDAErD,OAAmB,iBAAAC,MAAqB,WAqBjC,MAAMC,CAAuC,CA2BlD,YAAYC,EAAyC,CAtBrD,KAAS,cAAgBF,EAAc,aAuBrC,KAAM,CAAE,QAAAG,EAAS,UAAAC,EAAW,QAAAC,CAAQ,EAAIH,EAIxC,GAHA,KAAK,UAAYE,EACjB,KAAK,eAAiBC,EAAUT,EAAe,KAAKS,CAAO,EAAI,KAAK,UAAU,QAAQ,EAAE,eAAe,EAEnGD,EAAU,UAAYD,EAAQ,OAChC,MAAM,IAAI,MAER,wEAAwEC,EAAU,SAAS,sBAAsBD,EAAQ,MAAM,WACjI,EACK,GAAIC,EAAU,UAAYD,EAAQ,OACvC,MAAM,IAAI,MAER,6CAA6CC,EAAU,SAAS,iBAAiBD,EAAQ,MAAM,WACjG,EAIF,MAAMG,EAAyB,CAAC,EAChC,UAAWC,KAAUJ,EACnBG,EAAa,KAAK,KAAK,UAAU,SAASC,EAAO,UAAU,CAAC,CAAC,EAO/D,MAAMC,EAAuDL,EAAQ,IAAI,CAACI,EAAQE,IAAU,CAC1FF,EACAD,EAAaG,CAAK,CACpB,CAAC,EACDD,EAAsB,KAAK,CAACE,EAAGC,IAAMD,EAAE,CAAC,EAAIC,EAAE,CAAC,CAAC,EAGhD,KAAK,QAAUH,EAAsB,IAAKI,GAAUA,EAAM,CAAC,CAAC,EAC5D,KAAK,cAAgBJ,EAAsB,IAAKI,GAAUA,EAAM,CAAC,CAAC,EAKlE,KAAK,iBAAmB,KAAK,UAAU,aAAa,CAAE,KAAMN,CAAa,CAAC,CAC5E,CAaA,gBAAgBJ,EAAgD,CAC9D,OAAO,KAAK,UAAU,gBAAgBA,CAAI,CAC5C,CAgBA,MAAM,qBAAqBA,EAKN,CACnB,OAAO,KAAK,UAAU,qBAAqB,CACzC,GAAGA,EACH,UAAWA,EAAK,SAClB,CAAC,CACH,CAOA,sBAAsBW,EAAqD,CACzE,OAAO,IAAIf,EAAiC,KAAK,UAAW,KAAK,KAAKe,CAAO,CAAC,CAChF,CAOA,iCAAiCC,EAAkE,CACjG,OAAO,IAAIhB,EAAiC,KAAK,UAAW,KAAK,gBAAgBgB,CAAW,CAAC,CAC/F,CAOA,KAAKD,EAA0C,CAC7C,MAAME,EAAa,CAAC,EACpB,UAAWR,KAAU,KAAK,QACxBQ,EAAW,KAAKR,EAAO,KAAKM,CAAO,CAAC,EAEtC,OAAO,IAAIhB,EAAsB,CAAE,WAAAkB,EAAY,OAAQ,KAAK,gBAAiB,CAAC,CAChF,CAOA,gBAAgBD,EAAuD,CACrE,OAAO,KAAK,KAAKf,EAAqCe,CAAW,CAAC,CACpE,CAGF","names":["AccountAddress","MultiEd25519Signature","AccountAuthenticatorMultiEd25519","generateSigningMessageForTransaction","SigningScheme","MultiEd25519Account","args","signers","publicKey","address","bitPositions","signer","signersAndBitPosition","index","a","b","value","message","transaction","signatures"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { A as Account, j as SingleKeySignerOrLegacyEd25519Account } from '../Ed25519Account-
|
|
2
|
-
import { bp as HexInput, y as MultiKeySignature, x as MultiKey, n as AccountAddress, dr as SigningScheme, m as AccountAddressInput, C as PublicKey, _ as AccountAuthenticatorMultiKey, bg as AnyRawTransaction, A as AptosConfig } from '../account-
|
|
1
|
+
import { A as Account, j as SingleKeySignerOrLegacyEd25519Account } from '../Ed25519Account-CPwej6wB.mjs';
|
|
2
|
+
import { bp as HexInput, y as MultiKeySignature, x as MultiKey, n as AccountAddress, dr as SigningScheme, m as AccountAddressInput, C as PublicKey, _ as AccountAuthenticatorMultiKey, bg as AnyRawTransaction, A as AptosConfig } from '../account-BortO8g2.mjs';
|
|
3
3
|
import { KeylessSigner } from './AbstractKeylessAccount.mjs';
|
|
4
4
|
import '../types/indexer.mjs';
|
|
5
5
|
import '../types/generated/operations.mjs';
|
|
@@ -9,7 +9,7 @@ import '../utils/const.mjs';
|
|
|
9
9
|
import '../core/common.mjs';
|
|
10
10
|
import './EphemeralKeyPair.mjs';
|
|
11
11
|
import '../core/crypto/ephemeral.mjs';
|
|
12
|
-
import '../federatedKeyless-
|
|
12
|
+
import '../federatedKeyless-CTzDAQTu.mjs';
|
|
13
13
|
import '../core/crypto/proof.mjs';
|
|
14
14
|
import '../types/keyless.mjs';
|
|
15
15
|
import '@noble/curves/abstract/weierstrass';
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{MultiKey as l,MultiKeySignature as a}from"../core/crypto";import{AccountAddress as d}from"../core/accountAddress";import{SigningScheme as p}from"../types";import{AccountAuthenticatorMultiKey as g}from"../transactions/authenticator/account";import{AbstractKeylessAccount as y}from"./AbstractKeylessAccount";import{SingleKeyAccount as m}from"./SingleKeyAccount";import{Ed25519Account as A}from"./Ed25519Account";class u{constructor(e){this.signingScheme=p.MultiKey;const{multiKey:i,address:t}=e,n=e.signers.map(s=>s instanceof A?m.fromEd25519Account(s):s);if(i.signaturesRequired>n.length)throw new Error(`Not enough signers provided to satisfy the required signatures. Need ${i.signaturesRequired} signers, but only ${n.length} provided`);if(i.signaturesRequired<n.length)throw new Error(`More signers provided than required. Need ${i.signaturesRequired} signers, but ${n.length} provided`);this.publicKey=i,this.accountAddress=t?d.from(t):this.publicKey.authKey().derivedAddress();const r=[];for(const s of n)r.push(this.publicKey.getIndex(s.getAnyPublicKey()));const o=n.map((s,c)=>[s,r[c]]);o.sort((s,c)=>s[1]-c[1]),this.signers=o.map(s=>s[0]),this.signerIndicies=o.map(s=>s[1]),this.signaturesBitmap=this.publicKey.createBitmap({bits:r})}static fromPublicKeysAndSigners(e){const{address:i,publicKeys:t,signaturesRequired:n,signers:r}=e,o=new l({publicKeys:t,signaturesRequired:n});return new u({multiKey:o,signers:r,address:i})}static isMultiKeySigner(e){return e instanceof u}signWithAuthenticator(e){return new g(this.publicKey,this.sign(e))}signTransactionWithAuthenticator(e){return new g(this.publicKey,this.signTransaction(e))}async waitForProofFetch(){const i=this.signers.filter(t=>t instanceof y).map(async t=>t.waitForProofFetch());await Promise.all(i)}async checkKeylessAccountValidity(e){const t=this.signers.filter(n=>n instanceof y).map(n=>n.checkKeylessAccountValidity(e));await Promise.all(t)}sign(e){const i=[];for(const t of this.signers)i.push(t.sign(e));return new a({signatures:i,bitmap:this.signaturesBitmap})}signTransaction(e){const i=[];for(const t of this.signers)i.push(t.signTransaction(e));return new a({signatures:i,bitmap:this.signaturesBitmap})}verifySignature(e){return this.publicKey.verifySignature(e)}async verifySignatureAsync(e){return await this.publicKey.verifySignatureAsync(e)}}export{u as MultiKeyAccount};
|
|
2
2
|
//# sourceMappingURL=MultiKeyAccount.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../src/account/MultiKeyAccount.ts"],"sourcesContent":["// Copyright © Aptos Foundation\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { Account } from \"./Account\";\nimport { MultiKey, MultiKeySignature, PublicKey } from \"../core/crypto\";\nimport { AccountAddress, AccountAddressInput } from \"../core/accountAddress\";\nimport { HexInput, SigningScheme } from \"../types\";\nimport { AccountAuthenticatorMultiKey } from \"../transactions/authenticator/account\";\nimport { AnyRawTransaction } from \"../transactions/types\";\nimport { AbstractKeylessAccount, KeylessSigner } from \"./AbstractKeylessAccount\";\nimport { AptosConfig } from \"../api/aptosConfig\";\nimport { SingleKeyAccount, SingleKeySigner, SingleKeySignerOrLegacyEd25519Account } from \"./SingleKeyAccount\";\nimport { Ed25519Account } from \"./Ed25519Account\";\n\n/**\n * Arguments required to verify a multi-key signature against a given message.\n *\n * @param message - The original message that was signed.\n * @param signature - The multi-key signature to be verified.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\nexport interface VerifyMultiKeySignatureArgs {\n message: HexInput;\n signature: MultiKeySignature;\n}\n\n/**\n * Signer implementation for the MultiKey authentication scheme.\n *\n * This account utilizes an M of N signing scheme, where M and N are specified in the {@link MultiKey}.\n * It signs messages using an array of M accounts, each corresponding to a public key in the {@link MultiKey}.\n *\n * Note: Generating a signer instance does not create the account on-chain.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\nexport class MultiKeyAccount implements Account, KeylessSigner {\n /**\n * Public key associated with the account\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n readonly publicKey: MultiKey;\n\n /**\n * Account address associated with the account\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n readonly accountAddress: AccountAddress;\n\n /**\n * Signing scheme used to sign transactions\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n readonly signingScheme: SigningScheme = SigningScheme.MultiKey;\n\n /**\n * The signers used to sign messages. These signers should correspond to public keys in the\n * MultiKeyAccount's public key. The number of signers should be equal to this.publicKey.signaturesRequired.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n readonly signers: Account[];\n\n /**\n * An array of indices where for signer[i], signerIndicies[i] is the index of the corresponding public key in\n * publicKey.publicKeys. Used to derive the right public key to use for verification.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n // TODO: Rename Indicies to Indices\n readonly signerIndicies: number[];\n\n readonly signaturesBitmap: Uint8Array;\n\n /**\n * Constructs a MultiKeyAccount instance, which requires multiple signatures for transactions.\n *\n * @param args - The arguments for creating a MultiKeyAccount.\n * @param args.multiKey - The multikey of the account consisting of N public keys and a number M representing the required signatures.\n * @param args.signers - An array of M signers that will be used to sign the transaction.\n * @param args.address - An optional account address input. If not provided, the derived address from the public key will be used.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n constructor(args: {\n multiKey: MultiKey;\n signers: SingleKeySignerOrLegacyEd25519Account[];\n address?: AccountAddressInput;\n }) {\n const { multiKey, address } = args;\n\n const signers: SingleKeySigner[] = args.signers.map((signer) =>\n signer instanceof Ed25519Account ? SingleKeyAccount.fromEd25519Account(signer) : signer,\n );\n\n if (multiKey.signaturesRequired > signers.length) {\n throw new Error(\n // eslint-disable-next-line max-len\n `Not enough signers provided to satisfy the required signatures. Need ${multiKey.signaturesRequired} signers, but only ${signers.length} provided`,\n );\n } else if (multiKey.signaturesRequired < signers.length) {\n throw new Error(\n // eslint-disable-next-line max-len\n `More signers provided than required. Need ${multiKey.signaturesRequired} signers, but ${signers.length} provided`,\n );\n }\n\n this.publicKey = multiKey;\n\n this.accountAddress = address ? AccountAddress.from(address) : this.publicKey.authKey().derivedAddress();\n\n // For each signer, find its corresponding position in the MultiKey's public keys array\n const bitPositions: number[] = [];\n for (const signer of signers) {\n bitPositions.push(this.publicKey.getIndex(signer.getAnyPublicKey()));\n }\n\n // Create pairs of [signer, position] and sort them by position\n // This sorting is critical because:\n // 1. The on-chain verification expects signatures to be in ascending order by bit position\n // 2. The bitmap must match the order of signatures when verifying\n const signersAndBitPosition: [Account, number][] = signers.map((signer, index) => [signer, bitPositions[index]]);\n signersAndBitPosition.sort((a, b) => a[1] - b[1]);\n\n // Extract the sorted signers and their positions into separate arrays\n this.signers = signersAndBitPosition.map((value) => value[0]);\n this.signerIndicies = signersAndBitPosition.map((value) => value[1]);\n\n // Create a bitmap representing which public keys from the MultiKey are being used\n // This bitmap is used during signature verification to identify which public keys\n // should be used to verify each signature\n this.signaturesBitmap = this.publicKey.createBitmap({ bits: bitPositions });\n }\n\n /**\n * Static constructor to create a MultiKeyAccount using the provided public keys and signers.\n *\n * @param args - The arguments for creating a MultiKeyAccount.\n * @param args.publicKeys - The N public keys of the MultiKeyAccount.\n * @param args.signaturesRequired - The number of signatures required to authorize a transaction.\n * @param args.signers - An array of M signers that will be used to sign the transaction.\n * @returns MultiKeyAccount - The newly created MultiKeyAccount.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n static fromPublicKeysAndSigners(args: {\n address?: AccountAddressInput;\n publicKeys: PublicKey[];\n signaturesRequired: number;\n signers: SingleKeySignerOrLegacyEd25519Account[];\n }): MultiKeyAccount {\n const { address, publicKeys, signaturesRequired, signers } = args;\n const multiKey = new MultiKey({ publicKeys, signaturesRequired });\n return new MultiKeyAccount({ multiKey, signers, address });\n }\n\n /**\n * Determines if the provided account is a multi-key account.\n *\n * @param account - The account to check.\n * @returns A boolean indicating whether the account is a multi-key account.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n static isMultiKeySigner(account: Account): account is MultiKeyAccount {\n return account instanceof MultiKeyAccount;\n }\n\n /**\n * Sign a message using the account's signers and return an AccountAuthenticator containing the signature along with the\n * account's public key.\n * @param message - The signing message, represented as binary input in hexadecimal format.\n * @returns An instance of AccountAuthenticatorMultiKey that includes the signature and the public key.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n signWithAuthenticator(message: HexInput): AccountAuthenticatorMultiKey {\n return new AccountAuthenticatorMultiKey(this.publicKey, this.sign(message));\n }\n\n /**\n * Sign a transaction using the account's signers, returning an AccountAuthenticator that contains the signature and the\n * account's public key.\n * @param transaction - The raw transaction to be signed.\n * @returns An AccountAuthenticatorMultiKey containing the signature of the transaction along with the account's public key.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n signTransactionWithAuthenticator(transaction: AnyRawTransaction): AccountAuthenticatorMultiKey {\n return new AccountAuthenticatorMultiKey(this.publicKey, this.signTransaction(transaction));\n }\n\n /**\n * Waits for any proofs on KeylessAccount signers to be fetched. This ensures that signing with the KeylessAccount does not\n * fail due to missing proofs.\n * @return {Promise<void>} A promise that resolves when all proofs have been fetched.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n async waitForProofFetch(): Promise<void> {\n const keylessSigners = this.signers.filter(\n (signer) => signer instanceof AbstractKeylessAccount,\n ) as AbstractKeylessAccount[];\n const promises = keylessSigners.map(async (signer) => signer.waitForProofFetch());\n await Promise.all(promises);\n }\n\n /**\n * Validates that the Keyless Account can be used to sign transactions.\n * @return\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n async checkKeylessAccountValidity(aptosConfig: AptosConfig): Promise<void> {\n const keylessSigners = this.signers.filter(\n (signer) => signer instanceof AbstractKeylessAccount,\n ) as AbstractKeylessAccount[];\n const promises = keylessSigners.map((signer) => signer.checkKeylessAccountValidity(aptosConfig));\n await Promise.all(promises);\n }\n\n /**\n * Sign the given message using the MultiKeyAccount's signers\n * @param data - The data to be signed in HexInput format.\n * @returns MultiKeySignature\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n sign(data: HexInput): MultiKeySignature {\n const signatures = [];\n for (const signer of this.signers) {\n signatures.push(signer.sign(data));\n }\n return new MultiKeySignature({ signatures, bitmap: this.signaturesBitmap });\n }\n\n /**\n * Sign the given transaction using the MultiKeyAccount's signers.\n * This function aggregates signatures from all signers associated with the MultiKeyAccount.\n *\n * @param transaction - The transaction to be signed.\n * @returns MultiKeySignature - An object containing the aggregated signatures and a bitmap of the signatures.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n signTransaction(transaction: AnyRawTransaction): MultiKeySignature {\n const signatures = [];\n for (const signer of this.signers) {\n signatures.push(signer.signTransaction(transaction));\n }\n return new MultiKeySignature({ signatures, bitmap: this.signaturesBitmap });\n }\n\n /**\n * Verify the given message and signature with the public keys.\n *\n * This function checks if the provided signatures are valid for the given message using the corresponding public keys.\n * Note: If you are using KeylessAccounts, you must use `verifySignatureAsync` instead.\n *\n * @param args - The arguments for verifying the signature.\n * @param args.message - The raw message data in HexInput format.\n * @param args.signature - The signed message MultiKeySignature containing multiple signatures.\n * @returns A boolean indicating whether the signatures are valid for the message.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n verifySignature(args: { message: HexInput; signature: MultiKeySignature }): boolean {\n return this.publicKey.verifySignature(args);\n }\n\n /**\n * Verify the given message and signature with the public keys.\n *\n * This function checks if the provided signatures are valid for the given message using the corresponding public keys.\n *\n * @param args - The arguments for verifying the signature.\n * @param args.message - The raw message data in HexInput format.\n * @param args.signature - The signed message MultiKeySignature containing multiple signatures.\n * @param args.options.throwErrorWithReason - Whether to throw an error with the reason for the verification failure.\n * @returns A boolean indicating whether the signatures are valid for the message.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n async verifySignatureAsync(args: {\n aptosConfig: AptosConfig;\n message: HexInput;\n signature: MultiKeySignature;\n options?: { throwErrorWithReason?: boolean };\n }): Promise<boolean> {\n return await this.publicKey.verifySignatureAsync(args);\n }\n}\n"],"mappings":"AAIA,OAAS,YAAAA,EAAU,qBAAAC,MAAoC,iBACvD,OAAS,kBAAAC,MAA2C,yBACpD,OAAmB,iBAAAC,MAAqB,WACxC,OAAS,gCAAAC,MAAoC,wCAE7C,OAAS,0BAAAC,MAA6C,2BAEtD,OAAS,oBAAAC,MAAgF,qBACzF,OAAS,kBAAAC,MAAsB,mBAyBxB,MAAMC,CAAkD,CAmD7D,YAAYC,EAIT,CAnCH,KAAS,cAA+BN,EAAc,SAoCpD,KAAM,CAAE,SAAAO,EAAU,QAAAC,CAAQ,EAAIF,EAExBG,EAA6BH,EAAK,QAAQ,IAAKI,GACnDA,aAAkBN,EAAiBD,EAAiB,mBAAmBO,CAAM,EAAIA,CACnF,EAEA,GAAIH,EAAS,mBAAqBE,EAAQ,OACxC,MAAM,IAAI,MAER,wEAAwEF,EAAS,kBAAkB,sBAAsBE,EAAQ,MAAM,WACzI,EACK,GAAIF,EAAS,mBAAqBE,EAAQ,OAC/C,MAAM,IAAI,MAER,6CAA6CF,EAAS,kBAAkB,iBAAiBE,EAAQ,MAAM,WACzG,EAGF,KAAK,UAAYF,EAEjB,KAAK,eAAiBC,EAAUT,EAAe,KAAKS,CAAO,EAAI,KAAK,UAAU,QAAQ,EAAE,eAAe,EAGvG,MAAMG,EAAyB,CAAC,EAChC,UAAWD,KAAUD,EACnBE,EAAa,KAAK,KAAK,UAAU,SAASD,EAAO,gBAAgB,CAAC,CAAC,EAOrE,MAAME,EAA6CH,EAAQ,IAAI,CAACC,EAAQG,IAAU,CAACH,EAAQC,EAAaE,CAAK,CAAC,CAAC,EAC/GD,EAAsB,KAAK,CAACE,EAAGC,IAAMD,EAAE,CAAC,EAAIC,EAAE,CAAC,CAAC,EAGhD,KAAK,QAAUH,EAAsB,IAAKI,GAAUA,EAAM,CAAC,CAAC,EAC5D,KAAK,eAAiBJ,EAAsB,IAAKI,GAAUA,EAAM,CAAC,CAAC,EAKnE,KAAK,iBAAmB,KAAK,UAAU,aAAa,CAAE,KAAML,CAAa,CAAC,CAC5E,CAaA,OAAO,yBAAyBL,EAKZ,CAClB,KAAM,CAAE,QAAAE,EAAS,WAAAS,EAAY,mBAAAC,EAAoB,QAAAT,CAAQ,EAAIH,EACvDC,EAAW,IAAIV,EAAS,CAAE,WAAAoB,EAAY,mBAAAC,CAAmB,CAAC,EAChE,OAAO,IAAIb,EAAgB,CAAE,SAAAE,EAAU,QAAAE,EAAS,QAAAD,CAAQ,CAAC,CAC3D,CAUA,OAAO,iBAAiBW,EAA8C,CACpE,OAAOA,aAAmBd,CAC5B,CAUA,sBAAsBe,EAAiD,CACrE,OAAO,IAAInB,EAA6B,KAAK,UAAW,KAAK,KAAKmB,CAAO,CAAC,CAC5E,CAUA,iCAAiCC,EAA8D,CAC7F,OAAO,IAAIpB,EAA6B,KAAK,UAAW,KAAK,gBAAgBoB,CAAW,CAAC,CAC3F,CASA,MAAM,mBAAmC,CAIvC,MAAMC,EAHiB,KAAK,QAAQ,OACjCZ,GAAWA,aAAkBR,CAChC,EACgC,IAAI,MAAOQ,GAAWA,EAAO,kBAAkB,CAAC,EAChF,MAAM,QAAQ,IAAIY,CAAQ,CAC5B,CAQA,MAAM,4BAA4BC,EAAyC,CAIzE,MAAMD,EAHiB,KAAK,QAAQ,OACjCZ,GAAWA,aAAkBR,CAChC,EACgC,IAAKQ,GAAWA,EAAO,4BAA4Ba,CAAW,CAAC,EAC/F,MAAM,QAAQ,IAAID,CAAQ,CAC5B,CASA,KAAKE,EAAmC,CACtC,MAAMC,EAAa,CAAC,EACpB,UAAWf,KAAU,KAAK,QACxBe,EAAW,KAAKf,EAAO,KAAKc,CAAI,CAAC,EAEnC,OAAO,IAAI1B,EAAkB,CAAE,WAAA2B,EAAY,OAAQ,KAAK,gBAAiB,CAAC,CAC5E,CAWA,gBAAgBJ,EAAmD,CACjE,MAAMI,EAAa,CAAC,EACpB,UAAWf,KAAU,KAAK,QACxBe,EAAW,KAAKf,EAAO,gBAAgBW,CAAW,CAAC,EAErD,OAAO,IAAIvB,EAAkB,CAAE,WAAA2B,EAAY,OAAQ,KAAK,gBAAiB,CAAC,CAC5E,CAeA,gBAAgBnB,EAAoE,CAClF,OAAO,KAAK,UAAU,gBAAgBA,CAAI,CAC5C,CAeA,MAAM,qBAAqBA,EAKN,CACnB,OAAO,MAAM,KAAK,UAAU,qBAAqBA,CAAI,CACvD,CACF","names":["MultiKey","MultiKeySignature","AccountAddress","SigningScheme","AccountAuthenticatorMultiKey","AbstractKeylessAccount","SingleKeyAccount","Ed25519Account","MultiKeyAccount","args","multiKey","address","signers","signer","bitPositions","signersAndBitPosition","index","a","b","value","publicKeys","signaturesRequired","account","message","transaction","promises","aptosConfig","data","signatures"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import '../account-
|
|
2
|
-
export { o as SingleKeyAccount, S as SingleKeySigner, k as SingleKeySignerConstructorArgs, m as SingleKeySignerFromDerivationPathArgs, l as SingleKeySignerGenerateArgs, j as SingleKeySignerOrLegacyEd25519Account, n as VerifySingleKeySignatureArgs, i as isSingleKeySigner } from '../Ed25519Account-
|
|
1
|
+
import '../account-BortO8g2.mjs';
|
|
2
|
+
export { o as SingleKeyAccount, S as SingleKeySigner, k as SingleKeySignerConstructorArgs, m as SingleKeySignerFromDerivationPathArgs, l as SingleKeySignerGenerateArgs, j as SingleKeySignerOrLegacyEd25519Account, n as VerifySingleKeySignatureArgs, i as isSingleKeySigner } from '../Ed25519Account-CPwej6wB.mjs';
|
|
3
3
|
import '../types/indexer.mjs';
|
|
4
4
|
import '../types/generated/operations.mjs';
|
|
5
5
|
import '../types/generated/types.mjs';
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{AccountAuthenticatorSingleKey as c}from"../transactions/authenticator/account";import{SigningScheme as y,SigningSchemeInput as r}from"../types";import{AccountAddress as p}from"../core/accountAddress";import{AnyPublicKey as A,AnySignature as S,Ed25519PrivateKey as u,Secp256k1PrivateKey as g}from"../core/crypto";import{generateSigningMessageForTransaction as K}from"../transactions/transactionBuilder/signingMessage";function D(i){return typeof i=="object"&&i!==null&&"getAnyPublicKey"in i&&typeof i.getAnyPublicKey=="function"}class a{constructor(e){this.signingScheme=y.SingleKey;const{privateKey:t,address:n}=e;this.privateKey=t,this.publicKey=new A(t.publicKey()),this.accountAddress=n?p.from(n):this.publicKey.authKey().derivedAddress()}getAnyPublicKey(){return this.publicKey}static generate(e={}){const{scheme:t=r.Ed25519}=e;let n;switch(t){case r.Ed25519:n=u.generate();break;case r.Secp256k1Ecdsa:n=g.generate();break;default:throw new Error(`Unsupported signature scheme ${t}`)}return new a({privateKey:n})}static fromDerivationPath(e){const{scheme:t=r.Ed25519,path:n,mnemonic:o}=e;let s;switch(t){case r.Ed25519:s=u.fromDerivationPath(n,o);break;case r.Secp256k1Ecdsa:s=g.fromDerivationPath(n,o);break;default:throw new Error(`Unsupported signature scheme ${t}`)}return new a({privateKey:s})}verifySignature(e){return this.publicKey.verifySignature(e)}async verifySignatureAsync(e){return this.publicKey.verifySignatureAsync({...e,signature:e.signature})}signWithAuthenticator(e){return new c(this.publicKey,this.sign(e))}signTransactionWithAuthenticator(e){return new c(this.publicKey,this.signTransaction(e))}sign(e){return new S(this.privateKey.sign(e))}signTransaction(e){return this.sign(K(e))}static fromEd25519Account(e){return new a({privateKey:e.privateKey,address:e.accountAddress})}}export{a as SingleKeyAccount,D as isSingleKeySigner};
|
|
2
2
|
//# sourceMappingURL=SingleKeyAccount.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../src/account/SingleKeyAccount.ts"],"sourcesContent":["import { AccountAuthenticatorSingleKey } from \"../transactions/authenticator/account\";\nimport { type HexInput, SigningScheme, SigningSchemeInput } from \"../types\";\nimport { AccountAddress, AccountAddressInput } from \"../core/accountAddress\";\nimport {\n AnyPublicKey,\n AnySignature,\n Ed25519PrivateKey,\n KeylessSignature,\n PrivateKeyInput,\n Secp256k1PrivateKey,\n Signature,\n} from \"../core/crypto\";\nimport type { Account } from \"./Account\";\nimport { generateSigningMessageForTransaction } from \"../transactions/transactionBuilder/signingMessage\";\nimport { AnyRawTransaction } from \"../transactions/types\";\nimport { Ed25519Account } from \"./Ed25519Account\";\nimport { AptosConfig } from \"../api\";\n\n/**\n * An interface which defines if an Account utilizes SingleKey signing.\n *\n * Such an account will use the AnyPublicKey enum to represent its public key when deriving the auth key.\n */\nexport interface SingleKeySigner extends Account {\n getAnyPublicKey(): AnyPublicKey;\n}\n\nexport function isSingleKeySigner(obj: unknown): obj is SingleKeySigner {\n return (\n typeof obj === \"object\" &&\n obj !== null &&\n \"getAnyPublicKey\" in obj &&\n typeof (obj as any).getAnyPublicKey === \"function\"\n );\n}\n\nexport type SingleKeySignerOrLegacyEd25519Account = SingleKeySigner | Ed25519Account;\n\n/**\n * Arguments required to create a single key signer.\n *\n * @param privateKey - The private key used for signing.\n * @param address - Optional account address associated with the signer.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\nexport interface SingleKeySignerConstructorArgs {\n privateKey: PrivateKeyInput;\n address?: AccountAddressInput;\n}\n\n/**\n * Arguments for generating a single key signer.\n *\n * @param scheme - The signing scheme to be used.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\nexport interface SingleKeySignerGenerateArgs {\n scheme?: SigningSchemeInput;\n}\n\n/**\n * The arguments for generating a single key signer from a specified derivation path.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\nexport type SingleKeySignerFromDerivationPathArgs = SingleKeySignerGenerateArgs & {\n path: string;\n mnemonic: string;\n};\n\n/**\n * Arguments required to verify a single key signature for a given message.\n *\n * @param message - The message to be verified, represented in hexadecimal format.\n * @param signature - The signature that corresponds to the message.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\nexport interface VerifySingleKeySignatureArgs {\n message: HexInput;\n signature: AnySignature;\n}\n\n/**\n * Signer implementation for the SingleKey authentication scheme.\n * This class extends a SingleKeyAccount by adding signing capabilities through a valid private key.\n * Currently, the only supported signature schemes are Ed25519 and Secp256k1.\n *\n * Note: Generating a signer instance does not create the account on-chain.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\nexport class SingleKeyAccount implements Account, SingleKeySigner {\n /**\n * Private key associated with the account\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n readonly privateKey: PrivateKeyInput;\n\n readonly publicKey: AnyPublicKey;\n\n readonly accountAddress: AccountAddress;\n\n readonly signingScheme = SigningScheme.SingleKey;\n\n /**\n * Creates an instance of the SingleKeySigner using the provided private key and address.\n * This allows for signing transactions and messages with the specified private key.\n *\n * @param args - The constructor arguments for initializing the SingleKeySigner.\n * @param args.privateKey - The private key used for signing.\n * @param args.address - The optional account address; if not provided, it will derive the address from the public key.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n constructor(args: SingleKeySignerConstructorArgs) {\n const { privateKey, address } = args;\n this.privateKey = privateKey;\n this.publicKey = new AnyPublicKey(privateKey.publicKey());\n this.accountAddress = address ? AccountAddress.from(address) : this.publicKey.authKey().derivedAddress();\n }\n\n getAnyPublicKey(): AnyPublicKey {\n return this.publicKey;\n }\n\n /**\n * Derives an account from a randomly generated private key based on the specified signing scheme.\n * The default generation scheme is Ed25519, but it can also support Secp256k1Ecdsa.\n *\n * @param args - The arguments for generating the account.\n * @param args.scheme - The signing scheme to use for generating the private key. Defaults to SigningSchemeInput.Ed25519.\n * @returns An account with the generated private key based on the specified signing scheme.\n * @throws Error if an unsupported signature scheme is provided.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n static generate(args: SingleKeySignerGenerateArgs = {}) {\n const { scheme = SigningSchemeInput.Ed25519 } = args;\n let privateKey: PrivateKeyInput;\n switch (scheme) {\n case SigningSchemeInput.Ed25519:\n privateKey = Ed25519PrivateKey.generate();\n break;\n case SigningSchemeInput.Secp256k1Ecdsa:\n privateKey = Secp256k1PrivateKey.generate();\n break;\n default:\n throw new Error(`Unsupported signature scheme ${scheme}`);\n }\n return new SingleKeyAccount({ privateKey });\n }\n\n /**\n * Derives an account using a specified BIP44 path and mnemonic seed phrase, defaulting to the Ed25519 signature scheme.\n * This function allows you to create a single key account based on the provided derivation path and mnemonic.\n *\n * @param args - The arguments for deriving the account.\n * @param args.scheme - The signature scheme to derive the private key with. Defaults to Ed25519.\n * @param args.path - The BIP44 derive hardened path (e.g. m/44'/637'/0'/0'/0') for Ed25519, or non-hardened path\n * (e.g. m/44'/637'/0'/0/0) for secp256k1.\n * Detailed description: {@link https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki}\n * @param args.mnemonic - The mnemonic seed phrase of the account.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n static fromDerivationPath(args: SingleKeySignerFromDerivationPathArgs) {\n const { scheme = SigningSchemeInput.Ed25519, path, mnemonic } = args;\n let privateKey: PrivateKeyInput;\n switch (scheme) {\n case SigningSchemeInput.Ed25519:\n privateKey = Ed25519PrivateKey.fromDerivationPath(path, mnemonic);\n break;\n case SigningSchemeInput.Secp256k1Ecdsa:\n privateKey = Secp256k1PrivateKey.fromDerivationPath(path, mnemonic);\n break;\n default:\n throw new Error(`Unsupported signature scheme ${scheme}`);\n }\n return new SingleKeyAccount({ privateKey });\n }\n\n /**\n * Verify the given message and signature with the public key.\n *\n * @param args - The arguments for verifying the signature.\n * @param args.message - The raw message data in HexInput format.\n * @param args.signature - The signed message signature.\n * @returns A boolean indicating whether the signature is valid.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n verifySignature(args: VerifySingleKeySignatureArgs): boolean {\n return this.publicKey.verifySignature(args);\n }\n\n /**\n * Verify the given message and signature with the account's public key.\n *\n * This function checks if the provided signature is valid for the given message using the account's public key.\n *\n * @param args - The arguments for verifying the signature.\n * @param args.message - The raw message data in HexInput format.\n * @param args.signature - The signed message signature.\n * @param args.options.throwErrorWithReason - Whether to throw an error with the reason for the verification failure.\n * @returns A boolean indicating whether the signature is valid for the message.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n async verifySignatureAsync(args: {\n aptosConfig: AptosConfig;\n message: HexInput;\n signature: Signature;\n options?: { throwErrorWithReason?: boolean };\n }): Promise<boolean> {\n return this.publicKey.verifySignatureAsync({\n ...args,\n signature: args.signature,\n });\n }\n\n /**\n * Sign a message using the account's private key and return an AccountAuthenticator containing the signature along with the\n * account's public key.\n * @param message - The signing message, represented as binary input in hexadecimal format.\n * @returns An instance of AccountAuthenticatorSingleKey containing the signature and the public key.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n signWithAuthenticator(message: HexInput): AccountAuthenticatorSingleKey {\n return new AccountAuthenticatorSingleKey(this.publicKey, this.sign(message));\n }\n\n /**\n * Sign a transaction using the account's private key.\n * This function returns an AccountAuthenticator that contains the signature of the transaction along with the account's public key.\n * @param transaction - The raw transaction to be signed.\n * @returns An AccountAuthenticatorSingleKey containing the signature of the transaction and the account's public key.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n signTransactionWithAuthenticator(transaction: AnyRawTransaction): AccountAuthenticatorSingleKey {\n return new AccountAuthenticatorSingleKey(this.publicKey, this.signTransaction(transaction));\n }\n\n /**\n * Sign the given message using the account's private key.\n * @param message - The message to be signed in HexInput format.\n * @returns A new AnySignature containing the signature of the message.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n sign(message: HexInput): AnySignature {\n return new AnySignature(this.privateKey.sign(message));\n }\n\n /**\n * Sign the given transaction using the account's private key.\n * This function generates a signing message for the transaction and then signs it.\n *\n * @param transaction - The transaction to be signed.\n * @returns Signature - The resulting signature for the signed transaction.\n * @group Implementation\n * @category Account (On-Chain Model)\n */\n signTransaction(transaction: AnyRawTransaction): AnySignature {\n return this.sign(generateSigningMessageForTransaction(transaction));\n }\n\n // endregion\n\n static fromEd25519Account(account: Ed25519Account): SingleKeyAccount {\n return new SingleKeyAccount({ privateKey: account.privateKey, address: account.accountAddress });\n }\n}\n"],"mappings":"AAAA,OAAS,iCAAAA,MAAqC,wCAC9C,OAAwB,iBAAAC,EAAe,sBAAAC,MAA0B,WACjE,OAAS,kBAAAC,MAA2C,yBACpD,OACE,gBAAAC,EACA,gBAAAC,EACA,qBAAAC,EAGA,uBAAAC,MAEK,iBAEP,OAAS,wCAAAC,MAA4C,oDAc9C,SAASC,EAAkBC,EAAsC,CACtE,OACE,OAAOA,GAAQ,UACfA,IAAQ,MACR,oBAAqBA,GACrB,OAAQA,EAAY,iBAAoB,UAE5C,CA4DO,MAAMC,CAAqD,CAwBhE,YAAYC,EAAsC,CAZlD,KAAS,cAAgBX,EAAc,UAarC,KAAM,CAAE,WAAAY,EAAY,QAAAC,CAAQ,EAAIF,EAChC,KAAK,WAAaC,EAClB,KAAK,UAAY,IAAIT,EAAaS,EAAW,UAAU,CAAC,EACxD,KAAK,eAAiBC,EAAUX,EAAe,KAAKW,CAAO,EAAI,KAAK,UAAU,QAAQ,EAAE,eAAe,CACzG,CAEA,iBAAgC,CAC9B,OAAO,KAAK,SACd,CAaA,OAAO,SAASF,EAAoC,CAAC,EAAG,CACtD,KAAM,CAAE,OAAAG,EAASb,EAAmB,OAAQ,EAAIU,EAChD,IAAIC,EACJ,OAAQE,EAAQ,CACd,KAAKb,EAAmB,QACtBW,EAAaP,EAAkB,SAAS,EACxC,MACF,KAAKJ,EAAmB,eACtBW,EAAaN,EAAoB,SAAS,EAC1C,MACF,QACE,MAAM,IAAI,MAAM,gCAAgCQ,CAAM,EAAE,CAC5D,CACA,OAAO,IAAIJ,EAAiB,CAAE,WAAAE,CAAW,CAAC,CAC5C,CAeA,OAAO,mBAAmBD,EAA6C,CACrE,KAAM,CAAE,OAAAG,EAASb,EAAmB,QAAS,KAAAc,EAAM,SAAAC,CAAS,EAAIL,EAChE,IAAIC,EACJ,OAAQE,EAAQ,CACd,KAAKb,EAAmB,QACtBW,EAAaP,EAAkB,mBAAmBU,EAAMC,CAAQ,EAChE,MACF,KAAKf,EAAmB,eACtBW,EAAaN,EAAoB,mBAAmBS,EAAMC,CAAQ,EAClE,MACF,QACE,MAAM,IAAI,MAAM,gCAAgCF,CAAM,EAAE,CAC5D,CACA,OAAO,IAAIJ,EAAiB,CAAE,WAAAE,CAAW,CAAC,CAC5C,CAYA,gBAAgBD,EAA6C,CAC3D,OAAO,KAAK,UAAU,gBAAgBA,CAAI,CAC5C,CAeA,MAAM,qBAAqBA,EAKN,CACnB,OAAO,KAAK,UAAU,qBAAqB,CACzC,GAAGA,EACH,UAAWA,EAAK,SAClB,CAAC,CACH,CAUA,sBAAsBM,EAAkD,CACtE,OAAO,IAAIlB,EAA8B,KAAK,UAAW,KAAK,KAAKkB,CAAO,CAAC,CAC7E,CAUA,iCAAiCC,EAA+D,CAC9F,OAAO,IAAInB,EAA8B,KAAK,UAAW,KAAK,gBAAgBmB,CAAW,CAAC,CAC5F,CASA,KAAKD,EAAiC,CACpC,OAAO,IAAIb,EAAa,KAAK,WAAW,KAAKa,CAAO,CAAC,CACvD,CAWA,gBAAgBC,EAA8C,CAC5D,OAAO,KAAK,KAAKX,EAAqCW,CAAW,CAAC,CACpE,CAIA,OAAO,mBAAmBC,EAA2C,CACnE,OAAO,IAAIT,EAAiB,CAAE,WAAYS,EAAQ,WAAY,QAASA,EAAQ,cAAe,CAAC,CACjG,CACF","names":["AccountAuthenticatorSingleKey","SigningScheme","SigningSchemeInput","AccountAddress","AnyPublicKey","AnySignature","Ed25519PrivateKey","Secp256k1PrivateKey","generateSigningMessageForTransaction","isSingleKeySigner","obj","SingleKeyAccount","args","privateKey","address","scheme","path","mnemonic","message","transaction","account"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { A as Account, e as CreateAccountFromPrivateKeyArgs, C as CreateEd25519AccountFromPrivateKeyArgs, c as CreateEd25519SingleKeyAccountFromPrivateKeyArgs, d as CreateSingleKeyAccountFromPrivateKeyArgs, b as Ed25519Account, E as Ed25519SignerConstructorArgs, a as Ed25519SignerFromDerivationPathArgs, h as GenerateAccountArgs, G as GenerateEd25519AccountArgs, f as GenerateEd25519SingleKeyAccountArgs, g as GenerateSingleKeyAccountArgs, P as PrivateKeyFromDerivationPathArgs, o as SingleKeyAccount, S as SingleKeySigner, k as SingleKeySignerConstructorArgs, m as SingleKeySignerFromDerivationPathArgs, l as SingleKeySignerGenerateArgs, j as SingleKeySignerOrLegacyEd25519Account, V as VerifyEd25519SignatureArgs, n as VerifySingleKeySignatureArgs, i as isSingleKeySigner } from '../Ed25519Account-
|
|
1
|
+
export { A as Account, e as CreateAccountFromPrivateKeyArgs, C as CreateEd25519AccountFromPrivateKeyArgs, c as CreateEd25519SingleKeyAccountFromPrivateKeyArgs, d as CreateSingleKeyAccountFromPrivateKeyArgs, b as Ed25519Account, E as Ed25519SignerConstructorArgs, a as Ed25519SignerFromDerivationPathArgs, h as GenerateAccountArgs, G as GenerateEd25519AccountArgs, f as GenerateEd25519SingleKeyAccountArgs, g as GenerateSingleKeyAccountArgs, P as PrivateKeyFromDerivationPathArgs, o as SingleKeyAccount, S as SingleKeySigner, k as SingleKeySignerConstructorArgs, m as SingleKeySignerFromDerivationPathArgs, l as SingleKeySignerGenerateArgs, j as SingleKeySignerOrLegacyEd25519Account, V as VerifyEd25519SignatureArgs, n as VerifySingleKeySignatureArgs, i as isSingleKeySigner } from '../Ed25519Account-CPwej6wB.mjs';
|
|
2
2
|
export { EphemeralKeyPair } from './EphemeralKeyPair.mjs';
|
|
3
3
|
export { KeylessAccount } from './KeylessAccount.mjs';
|
|
4
4
|
export { AbstractKeylessAccount, KeylessSigner, ProofFetchCallback, ProofFetchEvents, ProofFetchFailure, ProofFetchStatus, ProofFetchSuccess, TransactionAndProof, isKeylessSigner } from './AbstractKeylessAccount.mjs';
|
|
@@ -8,7 +8,7 @@ export { MultiEd25519Account, MultiEd25519SignerConstructorArgs, VerifyMultiEd25
|
|
|
8
8
|
export { AccountUtils } from './AccountUtils.mjs';
|
|
9
9
|
export { AbstractedAccount } from './AbstractedAccount.mjs';
|
|
10
10
|
export { DerivableAbstractedAccount } from './DerivableAbstractedAccount.mjs';
|
|
11
|
-
import '../account-
|
|
11
|
+
import '../account-BortO8g2.mjs';
|
|
12
12
|
import '../types/indexer.mjs';
|
|
13
13
|
import '../types/generated/operations.mjs';
|
|
14
14
|
import '../types/generated/types.mjs';
|
|
@@ -16,7 +16,7 @@ import '../utils/apiEndpoints.mjs';
|
|
|
16
16
|
import '../utils/const.mjs';
|
|
17
17
|
import '../core/common.mjs';
|
|
18
18
|
import '../core/crypto/ephemeral.mjs';
|
|
19
|
-
import '../federatedKeyless-
|
|
19
|
+
import '../federatedKeyless-CTzDAQTu.mjs';
|
|
20
20
|
import '../core/crypto/proof.mjs';
|
|
21
21
|
import '../types/keyless.mjs';
|
|
22
22
|
import '@noble/curves/abstract/weierstrass';
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
export*from"./Ed25519Account";export*from"./Account";export*from"./SingleKeyAccount";export*from"./EphemeralKeyPair";export*from"./KeylessAccount";export*from"./AbstractKeylessAccount";export*from"./FederatedKeylessAccount";export*from"./MultiKeyAccount";export*from"./MultiEd25519Account";export*from"./AccountUtils";export*from"./AbstractedAccount";export*from"./DerivableAbstractedAccount";
|
|
2
2
|
//# sourceMappingURL=index.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../src/account/index.ts"],"sourcesContent":["export * from \"./Ed25519Account\";\nexport * from \"./Account\";\nexport * from \"./SingleKeyAccount\";\nexport * from \"./EphemeralKeyPair\";\nexport * from \"./KeylessAccount\";\nexport * from \"./AbstractKeylessAccount\";\nexport * from \"./FederatedKeylessAccount\";\nexport * from \"./MultiKeyAccount\";\nexport * from \"./MultiEd25519Account\";\nexport * from \"./AccountUtils\";\nexport * from \"./AbstractedAccount\";\nexport * from \"./DerivableAbstractedAccount\";\n"],"mappings":"AAAA,WAAc,mBACd,WAAc,YACd,WAAc,qBACd,WAAc,qBACd,WAAc,mBACd,WAAc,2BACd,WAAc,4BACd,WAAc,oBACd,WAAc,wBACd,WAAc,iBACd,WAAc,sBACd,WAAc","names":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as Deserializer, n as AccountAddress, dr as SigningScheme } from '../account-
|
|
1
|
+
import { a as Deserializer, n as AccountAddress, dr as SigningScheme } from '../account-BortO8g2.mjs';
|
|
2
2
|
import '../types/indexer.mjs';
|
|
3
3
|
import '../types/generated/operations.mjs';
|
|
4
4
|
import '../types/generated/types.mjs';
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{SigningScheme as r}from"../types";import{AccountAddress as s}from"../core";function a(i){const e=i.deserializeUleb128AsU32();if(!Object.values(r).includes(e))throw new Error(`Deserialization of Account failed: SigningScheme variant ${e} is invalid`);return{address:s.deserialize(i),signingScheme:e}}export{a as deserializeSchemeAndAddress};
|
|
2
2
|
//# sourceMappingURL=utils.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../src/account/utils.ts"],"sourcesContent":["import { SigningScheme } from \"../types\";\nimport { AccountAddress } from \"../core\";\nimport { Deserializer } from \"../bcs/deserializer\";\n\nexport function deserializeSchemeAndAddress(deserializer: Deserializer): {\n address: AccountAddress;\n signingScheme: SigningScheme;\n} {\n const signingScheme = deserializer.deserializeUleb128AsU32();\n // Validate that signingScheme is a valid SigningScheme value\n if (!Object.values(SigningScheme).includes(signingScheme)) {\n throw new Error(`Deserialization of Account failed: SigningScheme variant ${signingScheme} is invalid`);\n }\n const address = AccountAddress.deserialize(deserializer);\n return { address, signingScheme };\n}\n"],"mappings":"AAAA,OAAS,iBAAAA,MAAqB,WAC9B,OAAS,kBAAAC,MAAsB,UAGxB,SAASC,EAA4BC,EAG1C,CACA,MAAMC,EAAgBD,EAAa,wBAAwB,EAE3D,GAAI,CAAC,OAAO,OAAOH,CAAa,EAAE,SAASI,CAAa,EACtD,MAAM,IAAI,MAAM,4DAA4DA,CAAa,aAAa,EAGxG,MAAO,CAAE,QADOH,EAAe,YAAYE,CAAY,EACrC,cAAAC,CAAc,CAClC","names":["SigningScheme","AccountAddress","deserializeSchemeAndAddress","deserializer","signingScheme"]}
|
|
@@ -1014,6 +1014,7 @@ declare class PrivateKey {
|
|
|
1014
1014
|
static readonly AIP80_PREFIXES: {
|
|
1015
1015
|
ed25519: string;
|
|
1016
1016
|
secp256k1: string;
|
|
1017
|
+
secp256r1: string;
|
|
1017
1018
|
};
|
|
1018
1019
|
/**
|
|
1019
1020
|
* Format a HexInput to an AIP-80 compliant string.
|
|
@@ -1548,6 +1549,7 @@ declare class Secp256k1PublicKey extends PublicKey {
|
|
|
1548
1549
|
static readonly LENGTH: number;
|
|
1549
1550
|
static readonly COMPRESSED_LENGTH: number;
|
|
1550
1551
|
private readonly key;
|
|
1552
|
+
readonly keyType: string;
|
|
1551
1553
|
/**
|
|
1552
1554
|
* Create a new PublicKey instance from a HexInput, which can be a string or Uint8Array.
|
|
1553
1555
|
* This constructor validates the length of the provided signature data.
|
|
@@ -4876,7 +4878,8 @@ declare enum AccountAuthenticatorVariant {
|
|
|
4876
4878
|
*/
|
|
4877
4879
|
declare enum PrivateKeyVariants {
|
|
4878
4880
|
Ed25519 = "ed25519",
|
|
4879
|
-
Secp256k1 = "secp256k1"
|
|
4881
|
+
Secp256k1 = "secp256k1",
|
|
4882
|
+
Secp256r1 = "secp256r1"
|
|
4880
4883
|
}
|
|
4881
4884
|
/**
|
|
4882
4885
|
* Variants of public keys used in cryptographic operations.
|
|
@@ -4884,6 +4887,7 @@ declare enum PrivateKeyVariants {
|
|
|
4884
4887
|
declare enum AnyPublicKeyVariant {
|
|
4885
4888
|
Ed25519 = 0,
|
|
4886
4889
|
Secp256k1 = 1,
|
|
4890
|
+
Secp256r1 = 2,
|
|
4887
4891
|
Keyless = 3,
|
|
4888
4892
|
FederatedKeyless = 4
|
|
4889
4893
|
}
|
|
@@ -4894,6 +4898,7 @@ declare function anyPublicKeyVariantToString(variant: AnyPublicKeyVariant): stri
|
|
|
4894
4898
|
declare enum AnySignatureVariant {
|
|
4895
4899
|
Ed25519 = 0,
|
|
4896
4900
|
Secp256k1 = 1,
|
|
4901
|
+
WebAuthn = 2,
|
|
4897
4902
|
Keyless = 3
|
|
4898
4903
|
}
|
|
4899
4904
|
/**
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { A as AptosConfig, m as AccountAddressInput, aT as InputGenerateTransactionOptions, at as SimpleTransaction, n as AccountAddress } from '../../account-
|
|
1
|
+
import { A as AptosConfig, m as AccountAddressInput, aT as InputGenerateTransactionOptions, at as SimpleTransaction, n as AccountAddress } from '../../account-BortO8g2.mjs';
|
|
2
2
|
import '../../types/indexer.mjs';
|
|
3
3
|
import '../../types/generated/operations.mjs';
|
|
4
4
|
import '../../types/generated/types.mjs';
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{AccountAddress as e}from"../../core";import{addAuthenticationFunctionTransaction as a,removeAuthenticationFunctionTransaction as r,removeDispatchableAuthenticatorTransaction as u}from"../../internal/abstraction";import{view as d}from"../../internal/view";import{TypeTagAddress as p}from"../../transactions";import{getFunctionParts as A}from"../../utils/helpers";class C{constructor(n){this.config=n;this.isAccountAbstractionEnabled=async n=>{const o=await this.getAuthenticationFunction(n),{moduleAddress:t,moduleName:i,functionName:s}=A(n.authenticationFunction);return o?.some(c=>e.fromString(t).equals(c.moduleAddress)&&i===c.moduleName&&s===c.functionName)??!1};this.enableAccountAbstractionTransaction=this.addAuthenticationFunctionTransaction;this.disableAccountAbstractionTransaction=async n=>{const{accountAddress:o,authenticationFunction:t,options:i}=n;return t?this.removeAuthenticationFunctionTransaction({accountAddress:o,authenticationFunction:t,options:i}):this.removeDispatchableAuthenticatorTransaction({accountAddress:o,options:i})}}async addAuthenticationFunctionTransaction(n){const{accountAddress:o,authenticationFunction:t,options:i}=n;return a({aptosConfig:this.config,authenticationFunction:t,sender:o,options:i})}async removeAuthenticationFunctionTransaction(n){const{accountAddress:o,authenticationFunction:t,options:i}=n;return r({aptosConfig:this.config,sender:o,authenticationFunction:t,options:i})}async removeDispatchableAuthenticatorTransaction(n){const{accountAddress:o,options:t}=n;return u({aptosConfig:this.config,sender:o,options:t})}async getAuthenticationFunction(n){const{accountAddress:o}=n,[{vec:t}]=await d({aptosConfig:this.config,payload:{function:"0x1::account_abstraction::dispatchable_authenticator",functionArguments:[e.from(o)],abi:{typeParameters:[],parameters:[new p],returnTypes:[]}}});if(t.length!==0)return t[0].map(i=>({moduleAddress:e.fromString(i.module_address),moduleName:i.module_name,functionName:i.function_name}))}}export{C as AccountAbstraction};
|
|
2
2
|
//# sourceMappingURL=abstraction.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../../src/api/account/abstraction.ts"],"sourcesContent":["import { AccountAddress, AccountAddressInput } from \"../../core\";\nimport {\n addAuthenticationFunctionTransaction,\n removeAuthenticationFunctionTransaction,\n removeDispatchableAuthenticatorTransaction,\n} from \"../../internal/abstraction\";\nimport { view } from \"../../internal/view\";\nimport { InputGenerateTransactionOptions, TypeTagAddress } from \"../../transactions\";\nimport { MoveFunctionId } from \"../../types\";\nimport { getFunctionParts } from \"../../utils/helpers\";\nimport { AptosConfig } from \"../aptosConfig\";\n\nexport class AccountAbstraction {\n constructor(readonly config: AptosConfig) {}\n\n /**\n * Adds a dispatchable authentication function to the account.\n *\n * @example\n * ```ts\n * const txn = await aptos.abstraction.addAuthenticationFunctionTransaction({\n * accountAddress: alice.accountAddress,\n * authenticationFunction: `${alice.accountAddress}::any_authenticator::authenticate`,\n * });\n *\n * const txn = await aptos.signAndSubmitTransaction({ signer: alice, transaction});\n * await aptos.waitForTransaction({ transactionHash: txn.hash });\n * ```\n *\n * @param args.accountAddress - The account to add the authentication function to.\n * @param args.authenticationFunction - The authentication function info to add.\n * @param args.options - The options for the transaction.\n * @returns A transaction to add the authentication function to the account.\n */\n public async addAuthenticationFunctionTransaction(args: {\n accountAddress: AccountAddressInput;\n authenticationFunction: string;\n options?: InputGenerateTransactionOptions;\n }) {\n const { accountAddress, authenticationFunction, options } = args;\n return addAuthenticationFunctionTransaction({\n aptosConfig: this.config,\n authenticationFunction,\n sender: accountAddress,\n options,\n });\n }\n\n /**\n * Removes a dispatchable authentication function from the account.\n *\n * @example\n * ```ts\n * const txn = await aptos.abstraction.removeAuthenticationFunctionTransaction({\n * accountAddress: alice.accountAddress,\n * authenticationFunction: `${alice.accountAddress}::any_authenticator::authenticate`,\n * });\n *\n * const txn = await aptos.signAndSubmitTransaction({ signer: alice, transaction: txn });\n * await aptos.waitForTransaction({ transactionHash: txn.hash });\n * ```\n *\n * @param args.accountAddress - The account to remove the authentication function from.\n * @param args.authenticationFunction - The authentication function info to remove.\n * @param args.options - The options for the transaction.\n * @returns A transaction to remove the authentication function from the account.\n */\n public async removeAuthenticationFunctionTransaction(args: {\n accountAddress: AccountAddressInput;\n authenticationFunction: string;\n options?: InputGenerateTransactionOptions;\n }) {\n const { accountAddress, authenticationFunction, options } = args;\n return removeAuthenticationFunctionTransaction({\n aptosConfig: this.config,\n sender: accountAddress,\n authenticationFunction,\n options,\n });\n }\n\n /**\n * Removes a dispatchable authenticator from the account.\n *\n * @example\n * ```ts\n * const txn = await aptos.abstraction.removeDispatchableAuthenticatorTransaction({\n * accountAddress: alice.accountAddress,\n * });\n *\n * const txn = await aptos.signAndSubmitTransaction({ signer: alice, transaction: txn });\n * await aptos.waitForTransaction({ transactionHash: txn.hash });\n * ```\n *\n * @param args.accountAddress - The account to remove the authenticator from.\n * @param args.options - The options for the transaction.\n * @returns A transaction to remove the authenticator from the account.\n */\n public async removeDispatchableAuthenticatorTransaction(args: {\n accountAddress: AccountAddressInput;\n options?: InputGenerateTransactionOptions;\n }) {\n const { accountAddress, options } = args;\n return removeDispatchableAuthenticatorTransaction({ aptosConfig: this.config, sender: accountAddress, options });\n }\n\n /**\n * Gets the dispatchable authentication function for the account.\n *\n * @example\n * ```ts\n * const functionInfos = await aptos.abstraction.getAuthenticationFunction({\n * accountAddress: alice.accountAddress,\n * });\n *\n * if (functionInfos) {\n * console.log(`Account ${alice.accountAddress.toString()} is using account abstraction!`);\n * } else {\n * console.log(`Account ${alice.accountAddress.toString()} is not using account abstraction.`);\n * }\n * ```\n *\n * @param args.accountAddress - The account to get the dispatchable authentication function for.\n * @returns The dispatchable authentication function for the account.\n */\n public async getAuthenticationFunction(args: { accountAddress: AccountAddressInput }) {\n const { accountAddress } = args;\n const [{ vec: functionInfoOption }] = await view<\n [{ vec: { function_name: string; module_name: string; module_address: string }[][] }]\n >({\n aptosConfig: this.config,\n payload: {\n function: \"0x1::account_abstraction::dispatchable_authenticator\",\n functionArguments: [AccountAddress.from(accountAddress)],\n abi: { typeParameters: [], parameters: [new TypeTagAddress()], returnTypes: [] },\n },\n });\n\n if (functionInfoOption.length === 0) return undefined;\n\n return functionInfoOption[0].map((functionInfo) => ({\n moduleAddress: AccountAddress.fromString(functionInfo.module_address),\n moduleName: functionInfo.module_name,\n functionName: functionInfo.function_name,\n }));\n }\n\n /**\n * Will return true if the account is abstracted, otherwise false.\n *\n * @example\n * ```ts\n * const isAccountAbstractionEnabled = await aptos.abstraction.isAccountAbstractionEnabled({\n * accountAddress: alice.accountAddress,\n * authenticationFunction: `${alice.accountAddress}::any_authenticator::authenticate`,\n * });\n * if (isAccountAbstractionEnabled) {\n * console.log(`Account ${alice.accountAddress.toString()} is using account abstraction!`);\n * } else {\n * console.log(`Account ${alice.accountAddress.toString()} is not using account abstraction.`);\n * }\n * ```\n *\n * @param args.accountAddress - The account to check.\n * @returns Whether the account is abstracted.\n */\n public isAccountAbstractionEnabled = async (args: {\n accountAddress: AccountAddressInput;\n authenticationFunction: string;\n }) => {\n const functionInfos = await this.getAuthenticationFunction(args);\n const { moduleAddress, moduleName, functionName } = getFunctionParts(args.authenticationFunction as MoveFunctionId);\n return (\n functionInfos?.some(\n (functionInfo) =>\n AccountAddress.fromString(moduleAddress).equals(functionInfo.moduleAddress) &&\n moduleName === functionInfo.moduleName &&\n functionName === functionInfo.functionName,\n ) ?? false\n );\n };\n\n /**\n * Creates a transaction to enable account abstraction with the given authentication function.\n *\n * @example\n * ```ts\n * const txn = await aptos.abstraction.enableAccountAbstractionTransaction({\n * accountAddress: alice.accountAddress,\n * authenticationFunction: `{alice.accountAddress}::any_authenticator::authenticate`,\n * });\n *\n * const txn = await aptos.signAndSubmitTransaction({ signer: alice, transaction: txn });\n * await aptos.waitForTransaction({ transactionHash: txn.hash });\n * ```\n *\n * @param args.accountAddress - The account to enable account abstraction for.\n * @param args.authenticationFunction - The authentication function info to use.\n * @param args.options - The options for the transaction.\n * @returns A transaction to enable account abstraction for the account.\n */\n public enableAccountAbstractionTransaction = this.addAuthenticationFunctionTransaction;\n\n /**\n * Creates a transaction to disable account abstraction. If an authentication function is provided, it will specify to\n * remove the authentication function.\n *\n * @example\n * ```ts\n * const txn = await aptos.abstraction.disableAccountAbstractionTransaction({\n * accountAddress: alice.accountAddress,\n * authenticationFunction: `${alice.accountAddress}::any_authenticator::authenticate`,\n * });\n *\n * const txn = await aptos.signAndSubmitTransaction({ signer: alice, transaction: txn });\n * await aptos.waitForTransaction({ transactionHash: txn.hash });\n * ```\n *\n * @param args.accountAddress - The account to disable account abstraction for.\n * @param args.authenticationFunction - The authentication function info to remove.\n * @param args.options - The options for the transaction.\n * @returns A transaction to disable account abstraction for the account.\n */\n public disableAccountAbstractionTransaction = async (args: {\n accountAddress: AccountAddressInput;\n authenticationFunction?: string;\n options?: InputGenerateTransactionOptions;\n }) => {\n const { accountAddress, authenticationFunction, options } = args;\n if (authenticationFunction) {\n return this.removeAuthenticationFunctionTransaction({\n accountAddress,\n authenticationFunction,\n options,\n });\n }\n return this.removeDispatchableAuthenticatorTransaction({ accountAddress, options });\n };\n}\n"],"mappings":"AAAA,OAAS,kBAAAA,MAA2C,aACpD,OACE,wCAAAC,EACA,2CAAAC,EACA,8CAAAC,MACK,6BACP,OAAS,QAAAC,MAAY,sBACrB,OAA0C,kBAAAC,MAAsB,qBAEhE,OAAS,oBAAAC,MAAwB,sBAG1B,MAAMC,CAAmB,CAC9B,YAAqBC,EAAqB,CAArB,YAAAA,EAyJrB,KAAO,4BAA8B,MAAOC,GAGtC,CACJ,MAAMC,EAAgB,MAAM,KAAK,0BAA0BD,CAAI,EACzD,CAAE,cAAAE,EAAe,WAAAC,EAAY,aAAAC,CAAa,EAAIP,EAAiBG,EAAK,sBAAwC,EAClH,OACEC,GAAe,KACZI,GACCd,EAAe,WAAWW,CAAa,EAAE,OAAOG,EAAa,aAAa,GAC1EF,IAAeE,EAAa,YAC5BD,IAAiBC,EAAa,YAClC,GAAK,EAET,EAqBA,KAAO,oCAAsC,KAAK,qCAsBlD,KAAO,qCAAuC,MAAOL,GAI/C,CACJ,KAAM,CAAE,eAAAM,EAAgB,uBAAAC,EAAwB,QAAAC,CAAQ,EAAIR,EAC5D,OAAIO,EACK,KAAK,wCAAwC,CAClD,eAAAD,EACA,uBAAAC,EACA,QAAAC,CACF,CAAC,EAEI,KAAK,2CAA2C,CAAE,eAAAF,EAAgB,QAAAE,CAAQ,CAAC,CACpF,CAhO2C,CAqB3C,MAAa,qCAAqCR,EAI/C,CACD,KAAM,CAAE,eAAAM,EAAgB,uBAAAC,EAAwB,QAAAC,CAAQ,EAAIR,EAC5D,OAAOR,EAAqC,CAC1C,YAAa,KAAK,OAClB,uBAAAe,EACA,OAAQD,EACR,QAAAE,CACF,CAAC,CACH,CAqBA,MAAa,wCAAwCR,EAIlD,CACD,KAAM,CAAE,eAAAM,EAAgB,uBAAAC,EAAwB,QAAAC,CAAQ,EAAIR,EAC5D,OAAOP,EAAwC,CAC7C,YAAa,KAAK,OAClB,OAAQa,EACR,uBAAAC,EACA,QAAAC,CACF,CAAC,CACH,CAmBA,MAAa,2CAA2CR,EAGrD,CACD,KAAM,CAAE,eAAAM,EAAgB,QAAAE,CAAQ,EAAIR,EACpC,OAAON,EAA2C,CAAE,YAAa,KAAK,OAAQ,OAAQY,EAAgB,QAAAE,CAAQ,CAAC,CACjH,CAqBA,MAAa,0BAA0BR,EAA+C,CACpF,KAAM,CAAE,eAAAM,CAAe,EAAIN,EACrB,CAAC,CAAE,IAAKS,CAAmB,CAAC,EAAI,MAAMd,EAE1C,CACA,YAAa,KAAK,OAClB,QAAS,CACP,SAAU,uDACV,kBAAmB,CAACJ,EAAe,KAAKe,CAAc,CAAC,EACvD,IAAK,CAAE,eAAgB,CAAC,EAAG,WAAY,CAAC,IAAIV,CAAgB,EAAG,YAAa,CAAC,CAAE,CACjF,CACF,CAAC,EAED,GAAIa,EAAmB,SAAW,EAElC,OAAOA,EAAmB,CAAC,EAAE,IAAKJ,IAAkB,CAClD,cAAed,EAAe,WAAWc,EAAa,cAAc,EACpE,WAAYA,EAAa,YACzB,aAAcA,EAAa,aAC7B,EAAE,CACJ,CA6FF","names":["AccountAddress","addAuthenticationFunctionTransaction","removeAuthenticationFunctionTransaction","removeDispatchableAuthenticatorTransaction","view","TypeTagAddress","getFunctionParts","AccountAbstraction","config","args","functionInfos","moduleAddress","moduleName","functionName","functionInfo","accountAddress","authenticationFunction","options","functionInfoOption"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { GetAccountOwnedTokensQueryResponse, GetAccountOwnedTokensFromCollectionResponse, GetAccountCollectionsWithOwnedTokenResponse, GetAccountCoinsDataResponse, GetObjectDataQueryResponse } from '../types/indexer.mjs';
|
|
2
|
-
import { A as AptosConfig, m as AccountAddressInput, c9 as AccountData, c6 as LedgerVersionArg, ca as MoveModuleBytecode, bQ as CursorPaginationArgs, bP as PaginationArgs, cc as TransactionResponse, c8 as MoveResource, d8 as MoveStructId, bN as AnyNumber, n as AccountAddress, bR as TokenStandardArg, bS as OrderByArg, bT as WhereArg, L as PrivateKeyInput } from '../account-
|
|
2
|
+
import { A as AptosConfig, m as AccountAddressInput, c9 as AccountData, c6 as LedgerVersionArg, ca as MoveModuleBytecode, bQ as CursorPaginationArgs, bP as PaginationArgs, cc as TransactionResponse, c8 as MoveResource, d8 as MoveStructId, bN as AnyNumber, n as AccountAddress, bR as TokenStandardArg, bS as OrderByArg, bT as WhereArg, L as PrivateKeyInput } from '../account-BortO8g2.mjs';
|
|
3
3
|
import { CurrentFungibleAssetBalancesBoolExp } from '../types/generated/types.mjs';
|
|
4
|
-
import { A as Account$1 } from '../Ed25519Account-
|
|
4
|
+
import { A as Account$1 } from '../Ed25519Account-CPwej6wB.mjs';
|
|
5
5
|
import { BaseAccountPublicKey } from '../core/crypto/types.mjs';
|
|
6
6
|
import { AccountInfo } from '../internal/account.mjs';
|
|
7
7
|
import { AccountAbstraction } from './account/abstraction.mjs';
|
|
@@ -628,6 +628,9 @@ declare class Account {
|
|
|
628
628
|
/**
|
|
629
629
|
* Queries the current amount of a specified coin held by an account.
|
|
630
630
|
*
|
|
631
|
+
* @deprecated Use `getBalance({ accountAddress, asset })` instead.
|
|
632
|
+
* This method is slated for removal in a future release.
|
|
633
|
+
*
|
|
631
634
|
* @param args The parameters for querying the account's coin amount.
|
|
632
635
|
* @param args.accountAddress The account address to query for the coin amount.
|
|
633
636
|
* @param args.coinType The coin type to query. Note: If not provided, it may be automatically populated if `faMetadataAddress`
|
|
@@ -644,13 +647,9 @@ declare class Account {
|
|
|
644
647
|
* const aptos = new Aptos(config);
|
|
645
648
|
*
|
|
646
649
|
* async function runExample() {
|
|
647
|
-
* //
|
|
648
|
-
* const
|
|
649
|
-
*
|
|
650
|
-
* coinType: "0x1::aptos_coin::AptosCoin" // specify the coin type
|
|
651
|
-
* });
|
|
652
|
-
*
|
|
653
|
-
* console.log(`Account coin amount: ${accountCoinAmount}`);
|
|
650
|
+
* // Prefer the new API
|
|
651
|
+
* const amount = await aptos.getBalance({ accountAddress: "0x1", asset: "0x1::aptos_coin::AptosCoin" });
|
|
652
|
+
* console.log(`Balance: ${amount}`);
|
|
654
653
|
* }
|
|
655
654
|
* runExample().catch(console.error);
|
|
656
655
|
* ```
|
|
@@ -661,6 +660,28 @@ declare class Account {
|
|
|
661
660
|
coinType?: MoveStructId;
|
|
662
661
|
faMetadataAddress?: AccountAddressInput;
|
|
663
662
|
}): Promise<number>;
|
|
663
|
+
/**
|
|
664
|
+
* Retrieves the balance for an account and asset.
|
|
665
|
+
*
|
|
666
|
+
* @param args The parameters for the balance query.
|
|
667
|
+
* @param args.accountAddress The account address to query.
|
|
668
|
+
* @param args.asset The asset to query: Move struct ID (e.g., `0x1::aptos_coin::AptosCoin`) or FA metadata address.
|
|
669
|
+
* @returns The balance as a number.
|
|
670
|
+
*
|
|
671
|
+
* @example
|
|
672
|
+
* ```ts
|
|
673
|
+
* const aptos = new Aptos(new AptosConfig());
|
|
674
|
+
* // APT coin by type
|
|
675
|
+
* const apt = await aptos.getBalance({ accountAddress: "0x1", asset: "0x1::aptos_coin::AptosCoin" });
|
|
676
|
+
* // Some FA by metadata address
|
|
677
|
+
* const fa = await aptos.getBalance({ accountAddress: "0x1", asset: "0xa" });
|
|
678
|
+
* ```
|
|
679
|
+
* @group Account
|
|
680
|
+
*/
|
|
681
|
+
getBalance(args: {
|
|
682
|
+
accountAddress: AccountAddressInput;
|
|
683
|
+
asset: MoveStructId | AccountAddressInput;
|
|
684
|
+
}): Promise<number>;
|
|
664
685
|
/**
|
|
665
686
|
* Queries an account's owned objects.
|
|
666
687
|
*
|
package/dist/esm/api/account.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{AccountAddress as c,createObjectAddress as m}from"../core";import{deriveAccountFromPrivateKey as p,getAccountCoinsCount as f,getAccountCoinsData as y,getAccountCollectionsWithOwnedTokens as C,getAccountOwnedObjects as l,getAccountOwnedTokens as O,getAccountOwnedTokensFromCollectionAddress as T,getAccountsForPublicKey as P,getAccountTokensCount as R,getAccountTransactionsCount as S,getBalance as L,getInfo as h,getModule as V,getModules as b,getModulesPage as I,getResource as w,getResources as M,getResourcesPage as N,getTransactions as E,lookupOriginalAccountAddress as v,deriveOwnedAccountsFromSigner as _}from"../internal/account";import{APTOS_COIN as d,APTOS_FA as k,ProcessorType as n}from"../utils/const";import{waitForIndexerOnVersion as o}from"./utils";import{view as a}from"../internal/view";import{isEncodedStruct as B,parseEncodedStruct as F}from"../utils";import{memoizeAsync as G}from"../utils/memoize";import{AccountAbstraction as K}from"./account/abstraction";class Le{constructor(e){this.config=e;this.abstraction=new K(e)}async getAccountInfo(e){return h({aptosConfig:this.config,...e})}async getAccountModules(e){return b({aptosConfig:this.config,...e})}async getAccountModulesPage(e){return I({aptosConfig:this.config,...e})}async getAccountModule(e){return V({aptosConfig:this.config,...e})}async getAccountTransactions(e){return E({aptosConfig:this.config,...e})}async getAccountResources(e){return M({aptosConfig:this.config,...e})}async getAccountResourcesPage(e){return N({aptosConfig:this.config,...e})}async getAccountResource(e){return w({aptosConfig:this.config,...e})}async lookupOriginalAccountAddress(e){return v({aptosConfig:this.config,...e})}async getAccountTokensCount(e){return await o({config:this.config,minimumLedgerVersion:e.minimumLedgerVersion,processorType:n.ACCOUNT_TRANSACTION_PROCESSOR}),R({aptosConfig:this.config,...e})}async getAccountOwnedTokens(e){return await o({config:this.config,minimumLedgerVersion:e.minimumLedgerVersion,processorType:n.TOKEN_V2_PROCESSOR}),O({aptosConfig:this.config,...e})}async getAccountOwnedTokensFromCollectionAddress(e){return await o({config:this.config,minimumLedgerVersion:e.minimumLedgerVersion,processorType:n.TOKEN_V2_PROCESSOR}),T({aptosConfig:this.config,...e})}async getAccountCollectionsWithOwnedTokens(e){return await o({config:this.config,minimumLedgerVersion:e.minimumLedgerVersion,processorType:n.TOKEN_V2_PROCESSOR}),C({aptosConfig:this.config,...e})}async getAccountTransactionsCount(e){return await o({config:this.config,minimumLedgerVersion:e.minimumLedgerVersion,processorType:n.ACCOUNT_TRANSACTION_PROCESSOR}),S({aptosConfig:this.config,...e})}async getAccountCoinsData(e){return await o({config:this.config,minimumLedgerVersion:e.minimumLedgerVersion,processorType:n.FUNGIBLE_ASSET_PROCESSOR}),y({aptosConfig:this.config,...e})}async getAccountCoinsCount(e){return await o({config:this.config,minimumLedgerVersion:e.minimumLedgerVersion,processorType:n.FUNGIBLE_ASSET_PROCESSOR}),f({aptosConfig:this.config,...e})}async getAccountAPTAmount(e){return this.getAccountCoinAmount({coinType:d,faMetadataAddress:k,...e})}async getAccountCoinAmount(e){const{accountAddress:g,coinType:s,faMetadataAddress:i}=e;let u=s;s===void 0&&i!==void 0&&(u=await G(async()=>{try{const t=(await a({aptosConfig:this.config,payload:{function:"0x1::coin::paired_coin",functionArguments:[i]}}))[0];if(t.vec.length>0&&B(t.vec[0]))return F(t.vec[0])}catch{}},`coin-mapping-${i.toString()}`,1e3*60*5)());let r;if(s!==void 0&&i!==void 0)r=c.from(i).toStringLong();else if(s!==void 0&&i===void 0)s===d?r=c.A.toStringLong():r=m(c.A,s).toStringLong();else if(s===void 0&&i!==void 0){const t=c.from(i);r=t.toStringLong(),t===c.A&&(u=d)}else throw new Error("Either coinType, faMetadataAddress, or both must be provided");if(u!==void 0){const[t]=await a({aptosConfig:this.config,payload:{function:"0x1::coin::balance",typeArguments:[u],functionArguments:[g]}});return parseInt(t,10)}const[A]=await a({aptosConfig:this.config,payload:{function:"0x1::primary_fungible_store::balance",typeArguments:["0x1::object::ObjectCore"],functionArguments:[g,r]}});return parseInt(A,10)}async getBalance(e){return L({aptosConfig:this.config,...e})}async getAccountOwnedObjects(e){return await o({config:this.config,minimumLedgerVersion:e.minimumLedgerVersion,processorType:n.DEFAULT}),l({aptosConfig:this.config,...e})}async deriveAccountFromPrivateKey(e){return await o({config:this.config,minimumLedgerVersion:e.minimumLedgerVersion,processorType:n.ACCOUNT_RESTORATION_PROCESSOR}),await o({config:this.config,minimumLedgerVersion:e.minimumLedgerVersion,processorType:n.OBJECT_PROCESSOR}),p({aptosConfig:this.config,...e})}async deriveOwnedAccountsFromSigner(e){return await o({config:this.config,minimumLedgerVersion:e.minimumLedgerVersion,processorType:n.ACCOUNT_RESTORATION_PROCESSOR}),await o({config:this.config,minimumLedgerVersion:e.minimumLedgerVersion,processorType:n.OBJECT_PROCESSOR}),_({aptosConfig:this.config,...e})}async getAccountsForPublicKey(e){return await o({config:this.config,minimumLedgerVersion:e.minimumLedgerVersion,processorType:n.ACCOUNT_RESTORATION_PROCESSOR}),await o({config:this.config,minimumLedgerVersion:e.minimumLedgerVersion,processorType:n.OBJECT_PROCESSOR}),P({aptosConfig:this.config,...e})}}export{Le as Account};
|
|
2
2
|
//# sourceMappingURL=account.mjs.map
|