@aptos-labs/ts-sdk 1.14.0-zeta.3 → 1.14.0-zeta.4
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/index.d.ts +1 -1
- package/dist/common/index.js +2 -2
- package/dist/common/index.js.map +1 -1
- package/dist/esm/account/Account.mjs +1 -1
- package/dist/esm/account/Ed25519Account.mjs +1 -1
- package/dist/esm/account/EphemeralKeyPair.mjs +1 -1
- package/dist/esm/account/KeylessAccount.mjs +1 -1
- package/dist/esm/account/MultiKeyAccount.mjs +1 -1
- package/dist/esm/account/SingleKeyAccount.mjs +1 -1
- package/dist/esm/account/index.mjs +1 -1
- package/dist/esm/api/account.mjs +1 -1
- package/dist/esm/api/ans.mjs +1 -1
- package/dist/esm/api/aptos.mjs +1 -1
- package/dist/esm/api/coin.mjs +1 -1
- package/dist/esm/api/digitalAsset.mjs +1 -1
- package/dist/esm/api/event.mjs +1 -1
- package/dist/esm/api/faucet.mjs +1 -1
- package/dist/esm/api/fungibleAsset.mjs +1 -1
- package/dist/esm/api/general.mjs +1 -1
- package/dist/esm/api/index.mjs +1 -1
- package/dist/esm/api/keyless.mjs +1 -1
- package/dist/esm/api/staking.mjs +1 -1
- package/dist/esm/api/transaction.mjs +1 -1
- package/dist/esm/api/transactionSubmission/build.mjs +1 -1
- package/dist/esm/api/transactionSubmission/management.mjs +1 -1
- package/dist/esm/api/transactionSubmission/sign.mjs +1 -1
- package/dist/esm/api/transactionSubmission/simulate.mjs +1 -1
- package/dist/esm/api/transactionSubmission/submit.mjs +1 -1
- package/dist/esm/api/utils.mjs +1 -1
- package/dist/esm/bcs/index.mjs +1 -1
- package/dist/esm/bcs/serializable/entryFunctionBytes.mjs +1 -1
- package/dist/esm/bcs/serializable/fixedBytes.mjs +1 -1
- package/dist/esm/bcs/serializable/movePrimitives.mjs +1 -1
- package/dist/esm/bcs/serializable/moveStructs.mjs +1 -1
- package/dist/esm/bcs/serializer.mjs +1 -1
- package/dist/esm/{chunk-VL6EYA53.mjs → chunk-4D5QYFL7.mjs} +2 -2
- package/dist/esm/{chunk-BTLFW3YY.mjs → chunk-4SZSI7QT.mjs} +2 -2
- package/dist/esm/{chunk-HYU23YVP.mjs → chunk-52ECIIIH.mjs} +2 -2
- package/dist/esm/{chunk-SLI3KELH.mjs → chunk-53T2VRZA.mjs} +2 -2
- package/dist/esm/{chunk-XZGQMZ2H.mjs → chunk-56NB52W6.mjs} +2 -2
- package/dist/esm/{chunk-YGOJYDJA.mjs → chunk-5JGWZSNG.mjs} +2 -2
- package/dist/esm/{chunk-7SIQDOYY.mjs → chunk-6JT3CUFA.mjs} +2 -2
- package/dist/esm/{chunk-75J7H3XD.mjs → chunk-6KGDQGT2.mjs} +2 -2
- package/dist/esm/{chunk-7IMWGGA6.mjs → chunk-6OETO7Q7.mjs} +2 -2
- package/dist/esm/{chunk-7KOC7VNK.mjs → chunk-6YFCRKVC.mjs} +2 -2
- package/dist/esm/{chunk-2ECWQRBB.mjs → chunk-7WJTKYRG.mjs} +2 -2
- package/dist/esm/{chunk-HMFL7AOJ.mjs → chunk-AFGTRMOR.mjs} +2 -2
- package/dist/esm/{chunk-WWGROAKX.mjs → chunk-B3BLP5DP.mjs} +2 -2
- package/dist/esm/{chunk-RKTM5GBP.mjs → chunk-BTTXZYBD.mjs} +2 -2
- package/dist/esm/{chunk-HHVAU5HU.mjs → chunk-C34M4T77.mjs} +2 -2
- package/dist/esm/chunk-CPBGL37X.mjs +2 -0
- package/dist/esm/{chunk-NBEXLW7P.mjs.map → chunk-CPBGL37X.mjs.map} +1 -1
- package/dist/esm/{chunk-GNNNICLW.mjs → chunk-CSP3V4UZ.mjs} +2 -2
- package/dist/esm/chunk-D4J3MCOI.mjs +2 -0
- package/dist/esm/chunk-D4J3MCOI.mjs.map +1 -0
- package/dist/esm/{chunk-P2WALKSW.mjs → chunk-EIXCAYQM.mjs} +2 -2
- package/dist/esm/{chunk-HYDDIAJ6.mjs → chunk-F3HH6U3Z.mjs} +2 -2
- package/dist/esm/{chunk-5XOFEQWC.mjs → chunk-FHNW3DEN.mjs} +2 -2
- package/dist/esm/{chunk-AJ7UC2G3.mjs → chunk-FMBZNFEA.mjs} +2 -2
- package/dist/esm/{chunk-HSFG2AIK.mjs → chunk-GUO5GDBN.mjs} +2 -2
- package/dist/esm/{chunk-Y33CIIZX.mjs → chunk-HX5246EM.mjs} +2 -2
- package/dist/esm/{chunk-L5WUYZ35.mjs → chunk-HY5E66FY.mjs} +2 -2
- package/dist/esm/{chunk-AHNE2QA3.mjs → chunk-IBQWYF23.mjs} +2 -2
- package/dist/esm/{chunk-P7JMD7KZ.mjs → chunk-IWBLSSVA.mjs} +2 -2
- package/dist/esm/{chunk-7XYECSW6.mjs → chunk-JJIANJE3.mjs} +2 -2
- package/dist/esm/{chunk-ZKRG4C4U.mjs → chunk-JYUTX5G7.mjs} +2 -2
- package/dist/esm/{chunk-GQ6HIKZT.mjs → chunk-K247GPES.mjs} +2 -2
- package/dist/esm/{chunk-R52BRP36.mjs → chunk-KW2KIYJE.mjs} +2 -2
- package/dist/esm/{chunk-YNNPWCF6.mjs → chunk-KYZCH7IK.mjs} +2 -2
- package/dist/esm/{chunk-VPKPQBKL.mjs → chunk-LR5YOJG2.mjs} +2 -2
- package/dist/esm/{chunk-23MNZ5LZ.mjs → chunk-MC6O2XME.mjs} +2 -2
- package/dist/esm/{chunk-3CUVYW32.mjs → chunk-MTLETLKV.mjs} +2 -2
- package/dist/esm/{chunk-CB6CNNM2.mjs → chunk-NNIHTVLA.mjs} +2 -2
- package/dist/esm/{chunk-2HD2G4AH.mjs → chunk-NT47KB7Y.mjs} +2 -2
- package/dist/esm/{chunk-24ZOKI52.mjs → chunk-NWGBV3YO.mjs} +2 -2
- package/dist/esm/{chunk-25H3DXTL.mjs → chunk-NWWXZ7EW.mjs} +2 -2
- package/dist/esm/{chunk-ZPMS2Q37.mjs → chunk-NYTZPISE.mjs} +2 -2
- package/dist/esm/{chunk-6WIB3GGF.mjs → chunk-O6LITRY2.mjs} +2 -2
- package/dist/esm/{chunk-YV7OBLK2.mjs → chunk-OJFMOV2O.mjs} +2 -2
- package/dist/esm/{chunk-KMKSA7LM.mjs → chunk-OMD4G3E6.mjs} +2 -2
- package/dist/esm/{chunk-MOKAU77C.mjs → chunk-PBDEW4TN.mjs} +2 -2
- package/dist/esm/{chunk-O3PLAAN7.mjs → chunk-PTRUUJCS.mjs} +2 -2
- package/dist/esm/{chunk-SI7MPP6G.mjs → chunk-PYUU4OEL.mjs} +2 -2
- package/dist/esm/{chunk-TE3WIJ26.mjs → chunk-QDJN5HCB.mjs} +2 -2
- package/dist/esm/{chunk-3S3GIUQY.mjs → chunk-QFMUMZXR.mjs} +2 -2
- package/dist/esm/{chunk-H62IKYXG.mjs → chunk-RJ4PSGZ4.mjs} +2 -2
- package/dist/esm/{chunk-U5C2PXC6.mjs → chunk-S4YEK4LM.mjs} +2 -2
- package/dist/esm/{chunk-Y4SSUCPJ.mjs → chunk-SXOQWGMT.mjs} +2 -2
- package/dist/esm/{chunk-3CMS2KOX.mjs → chunk-TBGRYIFW.mjs} +2 -2
- package/dist/esm/{chunk-PMPTAPM3.mjs → chunk-UAL7TX7O.mjs} +2 -2
- package/dist/esm/{chunk-PGCBIU33.mjs → chunk-VDMVO4R4.mjs} +2 -2
- package/dist/esm/{chunk-DD2VWOMZ.mjs → chunk-VXZDDYG7.mjs} +2 -2
- package/dist/esm/{chunk-WM2NCYZL.mjs → chunk-WOPMZAWX.mjs} +2 -2
- package/dist/esm/{chunk-CS7B3FVO.mjs → chunk-XOTF6PQ7.mjs} +2 -2
- package/dist/esm/chunk-ZJDNONEP.mjs +2 -0
- package/dist/esm/chunk-ZJDNONEP.mjs.map +1 -0
- package/dist/esm/{chunk-JLWKIYHV.mjs → chunk-ZLLU4XK7.mjs} +2 -2
- package/dist/esm/cli/index.mjs +1 -1
- package/dist/esm/client/core.mjs +1 -1
- package/dist/esm/client/get.mjs +1 -1
- package/dist/esm/client/index.mjs +1 -1
- package/dist/esm/client/post.mjs +1 -1
- package/dist/esm/core/account/index.mjs +1 -1
- package/dist/esm/core/account/utils/address.mjs +1 -1
- package/dist/esm/core/account/utils/index.mjs +1 -1
- package/dist/esm/core/accountAddress.mjs +1 -1
- package/dist/esm/core/authenticationKey.mjs +1 -1
- package/dist/esm/core/crypto/ed25519.mjs +1 -1
- package/dist/esm/core/crypto/ephemeral.mjs +1 -1
- package/dist/esm/core/crypto/index.mjs +1 -1
- package/dist/esm/core/crypto/keyless.mjs +1 -1
- package/dist/esm/core/crypto/multiEd25519.mjs +1 -1
- package/dist/esm/core/crypto/multiKey.mjs +1 -1
- package/dist/esm/core/crypto/proof.mjs +1 -1
- package/dist/esm/core/crypto/publicKey.mjs +1 -1
- package/dist/esm/core/crypto/secp256k1.mjs +1 -1
- package/dist/esm/core/crypto/signature.mjs +1 -1
- package/dist/esm/core/crypto/singleKey.mjs +1 -1
- package/dist/esm/core/index.mjs +1 -1
- package/dist/esm/index.mjs +1 -1
- package/dist/esm/internal/account.mjs +1 -1
- package/dist/esm/internal/ans.mjs +1 -1
- package/dist/esm/internal/coin.mjs +1 -1
- package/dist/esm/internal/digitalAsset.mjs +1 -1
- package/dist/esm/internal/event.mjs +1 -1
- package/dist/esm/internal/faucet.mjs +1 -1
- package/dist/esm/internal/fungibleAsset.mjs +1 -1
- package/dist/esm/internal/general.mjs +1 -1
- package/dist/esm/internal/keyless.mjs +1 -1
- package/dist/esm/internal/staking.mjs +1 -1
- package/dist/esm/internal/transaction.mjs +1 -1
- package/dist/esm/internal/transactionSubmission.mjs +1 -1
- package/dist/esm/internal/view.mjs +1 -1
- package/dist/esm/transactions/authenticator/account.mjs +1 -1
- package/dist/esm/transactions/authenticator/index.mjs +1 -1
- package/dist/esm/transactions/authenticator/transaction.mjs +1 -1
- package/dist/esm/transactions/index.mjs +1 -1
- package/dist/esm/transactions/instances/chainId.mjs +1 -1
- package/dist/esm/transactions/instances/identifier.mjs +1 -1
- package/dist/esm/transactions/instances/index.mjs +1 -1
- package/dist/esm/transactions/instances/moduleId.mjs +1 -1
- package/dist/esm/transactions/instances/multiAgentTransaction.mjs +1 -1
- package/dist/esm/transactions/instances/rawTransaction.mjs +1 -1
- package/dist/esm/transactions/instances/rotationProofChallenge.mjs +1 -1
- package/dist/esm/transactions/instances/signedTransaction.mjs +1 -1
- package/dist/esm/transactions/instances/simpleTransaction.mjs +1 -1
- package/dist/esm/transactions/instances/transactionPayload.mjs +1 -1
- package/dist/esm/transactions/management/accountSequenceNumber.mjs +1 -1
- package/dist/esm/transactions/management/index.mjs +1 -1
- package/dist/esm/transactions/management/transactionWorker.mjs +1 -1
- package/dist/esm/transactions/transactionBuilder/helpers.mjs +1 -1
- package/dist/esm/transactions/transactionBuilder/index.mjs +1 -1
- package/dist/esm/transactions/transactionBuilder/remoteAbi.mjs +1 -1
- package/dist/esm/transactions/transactionBuilder/signingMessage.mjs +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/typeTag/index.mjs +1 -1
- package/dist/esm/transactions/typeTag/parser.mjs +1 -1
- package/dist/esm/utils/index.mjs +1 -1
- package/dist/esm/utils/normalizeBundle.mjs +1 -1
- package/dist/esm/version.d.mts +1 -1
- package/dist/esm/version.mjs +1 -1
- package/package.json +2 -2
- package/src/account/KeylessAccount.ts +2 -1
- package/src/transactions/transactionBuilder/transactionBuilder.ts +2 -16
- package/src/version.ts +1 -1
- package/dist/esm/chunk-NBEXLW7P.mjs +0 -2
- package/dist/esm/chunk-PYUWGGAW.mjs +0 -2
- package/dist/esm/chunk-PYUWGGAW.mjs.map +0 -1
- package/dist/esm/chunk-VSD2AWUR.mjs +0 -2
- package/dist/esm/chunk-VSD2AWUR.mjs.map +0 -1
- /package/dist/esm/{chunk-VL6EYA53.mjs.map → chunk-4D5QYFL7.mjs.map} +0 -0
- /package/dist/esm/{chunk-BTLFW3YY.mjs.map → chunk-4SZSI7QT.mjs.map} +0 -0
- /package/dist/esm/{chunk-HYU23YVP.mjs.map → chunk-52ECIIIH.mjs.map} +0 -0
- /package/dist/esm/{chunk-SLI3KELH.mjs.map → chunk-53T2VRZA.mjs.map} +0 -0
- /package/dist/esm/{chunk-XZGQMZ2H.mjs.map → chunk-56NB52W6.mjs.map} +0 -0
- /package/dist/esm/{chunk-YGOJYDJA.mjs.map → chunk-5JGWZSNG.mjs.map} +0 -0
- /package/dist/esm/{chunk-7SIQDOYY.mjs.map → chunk-6JT3CUFA.mjs.map} +0 -0
- /package/dist/esm/{chunk-75J7H3XD.mjs.map → chunk-6KGDQGT2.mjs.map} +0 -0
- /package/dist/esm/{chunk-7IMWGGA6.mjs.map → chunk-6OETO7Q7.mjs.map} +0 -0
- /package/dist/esm/{chunk-7KOC7VNK.mjs.map → chunk-6YFCRKVC.mjs.map} +0 -0
- /package/dist/esm/{chunk-2ECWQRBB.mjs.map → chunk-7WJTKYRG.mjs.map} +0 -0
- /package/dist/esm/{chunk-HMFL7AOJ.mjs.map → chunk-AFGTRMOR.mjs.map} +0 -0
- /package/dist/esm/{chunk-WWGROAKX.mjs.map → chunk-B3BLP5DP.mjs.map} +0 -0
- /package/dist/esm/{chunk-RKTM5GBP.mjs.map → chunk-BTTXZYBD.mjs.map} +0 -0
- /package/dist/esm/{chunk-HHVAU5HU.mjs.map → chunk-C34M4T77.mjs.map} +0 -0
- /package/dist/esm/{chunk-GNNNICLW.mjs.map → chunk-CSP3V4UZ.mjs.map} +0 -0
- /package/dist/esm/{chunk-P2WALKSW.mjs.map → chunk-EIXCAYQM.mjs.map} +0 -0
- /package/dist/esm/{chunk-HYDDIAJ6.mjs.map → chunk-F3HH6U3Z.mjs.map} +0 -0
- /package/dist/esm/{chunk-5XOFEQWC.mjs.map → chunk-FHNW3DEN.mjs.map} +0 -0
- /package/dist/esm/{chunk-AJ7UC2G3.mjs.map → chunk-FMBZNFEA.mjs.map} +0 -0
- /package/dist/esm/{chunk-HSFG2AIK.mjs.map → chunk-GUO5GDBN.mjs.map} +0 -0
- /package/dist/esm/{chunk-Y33CIIZX.mjs.map → chunk-HX5246EM.mjs.map} +0 -0
- /package/dist/esm/{chunk-L5WUYZ35.mjs.map → chunk-HY5E66FY.mjs.map} +0 -0
- /package/dist/esm/{chunk-AHNE2QA3.mjs.map → chunk-IBQWYF23.mjs.map} +0 -0
- /package/dist/esm/{chunk-P7JMD7KZ.mjs.map → chunk-IWBLSSVA.mjs.map} +0 -0
- /package/dist/esm/{chunk-7XYECSW6.mjs.map → chunk-JJIANJE3.mjs.map} +0 -0
- /package/dist/esm/{chunk-ZKRG4C4U.mjs.map → chunk-JYUTX5G7.mjs.map} +0 -0
- /package/dist/esm/{chunk-GQ6HIKZT.mjs.map → chunk-K247GPES.mjs.map} +0 -0
- /package/dist/esm/{chunk-R52BRP36.mjs.map → chunk-KW2KIYJE.mjs.map} +0 -0
- /package/dist/esm/{chunk-YNNPWCF6.mjs.map → chunk-KYZCH7IK.mjs.map} +0 -0
- /package/dist/esm/{chunk-VPKPQBKL.mjs.map → chunk-LR5YOJG2.mjs.map} +0 -0
- /package/dist/esm/{chunk-23MNZ5LZ.mjs.map → chunk-MC6O2XME.mjs.map} +0 -0
- /package/dist/esm/{chunk-3CUVYW32.mjs.map → chunk-MTLETLKV.mjs.map} +0 -0
- /package/dist/esm/{chunk-CB6CNNM2.mjs.map → chunk-NNIHTVLA.mjs.map} +0 -0
- /package/dist/esm/{chunk-2HD2G4AH.mjs.map → chunk-NT47KB7Y.mjs.map} +0 -0
- /package/dist/esm/{chunk-24ZOKI52.mjs.map → chunk-NWGBV3YO.mjs.map} +0 -0
- /package/dist/esm/{chunk-25H3DXTL.mjs.map → chunk-NWWXZ7EW.mjs.map} +0 -0
- /package/dist/esm/{chunk-ZPMS2Q37.mjs.map → chunk-NYTZPISE.mjs.map} +0 -0
- /package/dist/esm/{chunk-6WIB3GGF.mjs.map → chunk-O6LITRY2.mjs.map} +0 -0
- /package/dist/esm/{chunk-YV7OBLK2.mjs.map → chunk-OJFMOV2O.mjs.map} +0 -0
- /package/dist/esm/{chunk-KMKSA7LM.mjs.map → chunk-OMD4G3E6.mjs.map} +0 -0
- /package/dist/esm/{chunk-MOKAU77C.mjs.map → chunk-PBDEW4TN.mjs.map} +0 -0
- /package/dist/esm/{chunk-O3PLAAN7.mjs.map → chunk-PTRUUJCS.mjs.map} +0 -0
- /package/dist/esm/{chunk-SI7MPP6G.mjs.map → chunk-PYUU4OEL.mjs.map} +0 -0
- /package/dist/esm/{chunk-TE3WIJ26.mjs.map → chunk-QDJN5HCB.mjs.map} +0 -0
- /package/dist/esm/{chunk-3S3GIUQY.mjs.map → chunk-QFMUMZXR.mjs.map} +0 -0
- /package/dist/esm/{chunk-H62IKYXG.mjs.map → chunk-RJ4PSGZ4.mjs.map} +0 -0
- /package/dist/esm/{chunk-U5C2PXC6.mjs.map → chunk-S4YEK4LM.mjs.map} +0 -0
- /package/dist/esm/{chunk-Y4SSUCPJ.mjs.map → chunk-SXOQWGMT.mjs.map} +0 -0
- /package/dist/esm/{chunk-3CMS2KOX.mjs.map → chunk-TBGRYIFW.mjs.map} +0 -0
- /package/dist/esm/{chunk-PMPTAPM3.mjs.map → chunk-UAL7TX7O.mjs.map} +0 -0
- /package/dist/esm/{chunk-PGCBIU33.mjs.map → chunk-VDMVO4R4.mjs.map} +0 -0
- /package/dist/esm/{chunk-DD2VWOMZ.mjs.map → chunk-VXZDDYG7.mjs.map} +0 -0
- /package/dist/esm/{chunk-WM2NCYZL.mjs.map → chunk-WOPMZAWX.mjs.map} +0 -0
- /package/dist/esm/{chunk-CS7B3FVO.mjs.map → chunk-XOTF6PQ7.mjs.map} +0 -0
- /package/dist/esm/{chunk-JLWKIYHV.mjs.map → chunk-ZLLU4XK7.mjs.map} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/account/KeylessAccount.ts"],"sourcesContent":["// Copyright © Aptos Foundation\n// SPDX-License-Identifier: Apache-2.0\n\nimport { JwtPayload, jwtDecode } from \"jwt-decode\";\nimport { JwksClient } from \"jwks-rsa\";\nimport { decode } from \"js-base64\";\nimport EventEmitter from \"eventemitter3\";\nimport { EphemeralCertificateVariant, HexInput, SigningScheme } from \"../types\";\nimport { AccountAddress } from \"../core/accountAddress\";\nimport {\n AnyPublicKey,\n AnySignature,\n KeylessPublicKey,\n KeylessSignature,\n EphemeralCertificate,\n Signature,\n ZeroKnowledgeSig,\n ZkProof,\n} from \"../core/crypto\";\n\nimport { Account } from \"./Account\";\nimport { EphemeralKeyPair } from \"./EphemeralKeyPair\";\nimport { Hex } from \"../core/hex\";\nimport { AccountAuthenticatorSingleKey } from \"../transactions/authenticator/account\";\nimport { Deserializer, Serializable, Serializer } from \"../bcs\";\nimport {\n deriveTransactionType,\n generateSigningMessageForSerializable,\n} from \"../transactions/transactionBuilder/signingMessage\";\nimport { AnyRawTransaction, AnyRawTransactionInstance } from \"../transactions/types\";\n\nexport const IssuerToJwkEndpoint: Record<string, string> = {\n \"https://accounts.google.com\": \"https://www.googleapis.com/oauth2/v3/certs\",\n};\n\nexport class KeylessAccount extends Serializable implements Account {\n static readonly PEPPER_LENGTH: number = 31;\n\n readonly publicKey: KeylessPublicKey;\n\n readonly ephemeralKeyPair: EphemeralKeyPair;\n\n readonly uidKey: string;\n\n readonly uidVal: string;\n\n readonly aud: string;\n\n readonly pepper: Uint8Array;\n\n readonly accountAddress: AccountAddress;\n\n proof: ZeroKnowledgeSig | undefined;\n\n readonly proofOrPromise: ZeroKnowledgeSig | Promise<ZeroKnowledgeSig>;\n\n readonly signingScheme: SigningScheme;\n\n private jwt: string;\n\n private isJwtValid: boolean;\n\n readonly emitter: EventEmitter<ProofFetchEvents>;\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 proofOrFetcher: ZeroKnowledgeSig | Promise<ZeroKnowledgeSig>;\n proofFetchCallback?: ProofFetchCallback;\n jwt: string;\n }) {\n super();\n const { address, ephemeralKeyPair, uidKey, uidVal, aud, pepper, proofOrFetcher, proofFetchCallback, jwt } = args;\n this.ephemeralKeyPair = ephemeralKeyPair;\n this.publicKey = KeylessPublicKey.create(args);\n this.accountAddress = address ? AccountAddress.from(address) : this.publicKey.authKey().derivedAddress();\n this.uidKey = uidKey;\n this.uidVal = uidVal;\n this.aud = aud;\n this.jwt = jwt;\n this.emitter = new EventEmitter<ProofFetchEvents>();\n this.proofOrPromise = proofOrFetcher;\n if (proofOrFetcher instanceof ZeroKnowledgeSig) {\n this.proof = proofOrFetcher;\n } else {\n if (proofFetchCallback === undefined) {\n throw new Error(\"Must provide callback for async proof fetch\");\n }\n this.emitter.on(\"proofFetchFinish\", async (status) => {\n await proofFetchCallback(status);\n this.emitter.removeAllListeners();\n });\n this.init(proofOrFetcher);\n }\n this.signingScheme = SigningScheme.SingleKey;\n const pepperBytes = Hex.fromHexInput(pepper).toUint8Array();\n if (pepperBytes.length !== KeylessAccount.PEPPER_LENGTH) {\n throw new Error(`Pepper length in bytes should be ${KeylessAccount.PEPPER_LENGTH}`);\n }\n this.pepper = pepperBytes;\n this.isJwtValid = true;\n }\n\n /**\n * This initializes the asyncronous proof fetch\n * @return\n */\n async init(promise: Promise<ZeroKnowledgeSig>) {\n try {\n this.proof = await promise;\n this.emitter.emit(\"proofFetchFinish\", { status: \"Success\" });\n } catch (error) {\n if (error instanceof Error) {\n this.emitter.emit(\"proofFetchFinish\", { status: \"Failed\", error: error.toString() });\n } else {\n this.emitter.emit(\"proofFetchFinish\", { status: \"Failed\", error: \"Unknown\" });\n }\n }\n }\n\n serialize(serializer: Serializer): void {\n serializer.serializeStr(this.jwt);\n serializer.serializeStr(this.uidKey);\n serializer.serializeFixedBytes(this.pepper);\n this.ephemeralKeyPair.serialize(serializer);\n if (this.proof === undefined) {\n throw new Error(\"Connot serialize - proof undefined\");\n }\n this.proof.serialize(serializer);\n }\n\n static deserialize(deserializer: Deserializer): KeylessAccount {\n const jwt = deserializer.deserializeStr();\n const uidKey = deserializer.deserializeStr();\n const pepper = deserializer.deserializeFixedBytes(31);\n const ephemeralKeyPair = EphemeralKeyPair.deserialize(deserializer);\n const proof = ZeroKnowledgeSig.deserialize(deserializer);\n return KeylessAccount.fromJWTAndProof({\n proof,\n pepper,\n uidKey,\n jwt,\n ephemeralKeyPair,\n });\n }\n\n /**\n * Checks if the proof is expired. If so the account must be rederived with a new EphemeralKeyPair\n * and JWT token.\n * @return boolean\n */\n isExpired(): boolean {\n return this.ephemeralKeyPair.isExpired();\n }\n\n /**\n * Checks if the the JWK used to verify the token still exists on the issuer's JWK uri.\n * Caches the result.\n * @return boolean\n */\n async checkJwkValidity(): Promise<boolean> {\n if (!this.isJwtValid) {\n return false;\n }\n const jwtHeader = jwtDecode(this.jwt, { header: true });\n const client = new JwksClient({\n jwksUri: IssuerToJwkEndpoint[this.publicKey.iss],\n });\n try {\n await client.getSigningKey(jwtHeader.kid);\n return true;\n } catch (error) {\n this.isJwtValid = false;\n return false;\n }\n }\n\n /**\n * Sign a message using Keyless.\n * @param message the message to sign, as binary input\n * @return the AccountAuthenticator containing the signature, together with the account's public key\n */\n signWithAuthenticator(message: HexInput): AccountAuthenticatorSingleKey {\n const signature = new AnySignature(this.sign(message));\n const publicKey = new AnyPublicKey(this.publicKey);\n return new AccountAuthenticatorSingleKey(publicKey, signature);\n }\n\n /**\n * Sign a transaction using Keyless.\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): AccountAuthenticatorSingleKey {\n const signature = new AnySignature(this.signTransaction(transaction));\n const publicKey = new AnyPublicKey(this.publicKey);\n return new AccountAuthenticatorSingleKey(publicKey, signature);\n }\n\n /**\n * Waits for asyncronous proof fetching to finish.\n * @return\n */\n async waitForProofFetch() {\n if (this.proofOrPromise instanceof Promise) {\n await this.proofOrPromise;\n }\n }\n\n /**\n * Sign the given message using Keyless.\n * @param message in HexInput format\n * @returns Signature\n */\n sign(data: HexInput): KeylessSignature {\n const { expiryDateSecs } = this.ephemeralKeyPair;\n if (this.isExpired()) {\n throw new Error(\"Ephemeral key pair is expired.\");\n }\n if (this.proof === undefined) {\n throw new Error(\"Proof not found\");\n }\n if (!this.isJwtValid) {\n throw new Error(\"The proof has expired. Please refetch proof\");\n }\n const ephemeralPublicKey = this.ephemeralKeyPair.getPublicKey();\n const ephemeralSignature = this.ephemeralKeyPair.sign(data);\n\n return new KeylessSignature({\n jwtHeader: base64UrlDecode(this.jwt.split(\".\")[0]),\n ephemeralCertificate: new EphemeralCertificate(this.proof, EphemeralCertificateVariant.ZkProof),\n expiryDateSecs,\n ephemeralPublicKey,\n ephemeralSignature,\n });\n }\n\n /**\n * Sign the given transaction with Keyless.\n * Signs the transaction and proof to guard against proof malleability.\n * @param transaction the transaction to be signed\n * @returns KeylessSignature\n */\n signTransaction(transaction: AnyRawTransaction): KeylessSignature {\n if (this.proof === undefined) {\n throw new Error(\"Proof not found\");\n }\n const raw = deriveTransactionType(transaction);\n const txnAndProof = new TransactionAndProof(raw, this.proof.proof);\n const signMess = generateSigningMessageForSerializable(txnAndProof);\n return this.sign(signMess);\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars, class-methods-use-this\n verifySignature(args: { message: HexInput; signature: Signature }): boolean {\n throw new Error(\"Not implemented\");\n }\n\n static fromBytes(bytes: Uint8Array): KeylessAccount {\n return KeylessAccount.deserialize(new Deserializer(bytes));\n }\n\n static fromJWTAndProof(args: {\n proof: ZeroKnowledgeSig | Promise<ZeroKnowledgeSig>;\n jwt: string;\n ephemeralKeyPair: EphemeralKeyPair;\n pepper: HexInput;\n uidKey?: string;\n proofFetchCallback?: ProofFetchCallback;\n }): KeylessAccount {\n const { proof, jwt, ephemeralKeyPair, pepper, proofFetchCallback } = args;\n const uidKey = args.uidKey ?? \"sub\";\n\n const jwtPayload = jwtDecode<JwtPayload & { [key: string]: string }>(jwt);\n const iss = jwtPayload.iss!;\n if (typeof jwtPayload.aud !== \"string\") {\n throw new Error(\"aud was not found or an array of values\");\n }\n const aud = jwtPayload.aud!;\n const uidVal = jwtPayload[uidKey];\n return new KeylessAccount({\n proofOrFetcher: proof,\n ephemeralKeyPair,\n iss,\n uidKey,\n uidVal,\n aud,\n pepper,\n jwt,\n proofFetchCallback,\n });\n }\n}\n\nclass TransactionAndProof extends Serializable {\n transaction: AnyRawTransactionInstance;\n\n proof?: ZkProof;\n\n constructor(transaction: AnyRawTransactionInstance, proof?: ZkProof) {\n super();\n this.transaction = transaction;\n this.proof = proof;\n }\n\n serialize(serializer: Serializer): void {\n serializer.serializeFixedBytes(this.transaction.bcsToBytes());\n serializer.serializeOption(this.proof);\n }\n}\n\nfunction base64UrlDecode(base64Url: string): string {\n // Replace base64url-specific characters\n const base64 = base64Url.replace(/-/g, \"+\").replace(/_/g, \"/\");\n // Pad the string with '=' characters if needed\n const paddedBase64 = base64 + \"==\".substring(0, (3 - (base64.length % 3)) % 3);\n const decodedString = decode(paddedBase64);\n return decodedString;\n}\n\nexport type ProofFetchSuccess = {\n status: \"Success\";\n};\n\nexport type ProofFetchFailure = {\n status: \"Failed\";\n error: string;\n};\n\nexport type ProofFetchStatus = ProofFetchSuccess | ProofFetchFailure;\n\nexport type ProofFetchCallback = (status: ProofFetchStatus) => Promise<void>;\n\nexport interface ProofFetchEvents {\n proofFetchFinish: (status: ProofFetchStatus) => void;\n}\n"],"mappings":"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","names":["jwtDecode","JwksClient","decode","EventEmitter","IssuerToJwkEndpoint","_KeylessAccount","Serializable","args","address","ephemeralKeyPair","uidKey","uidVal","aud","pepper","proofOrFetcher","proofFetchCallback","jwt","KeylessPublicKey","AccountAddress","EventEmitter","ZeroKnowledgeSig","status","pepperBytes","Hex","promise","error","serializer","deserializer","EphemeralKeyPair","proof","jwtHeader","jwtDecode","client","JwksClient","message","signature","AnySignature","publicKey","AnyPublicKey","AccountAuthenticatorSingleKey","transaction","data","expiryDateSecs","ephemeralPublicKey","ephemeralSignature","KeylessSignature","base64UrlDecode","EphemeralCertificate","raw","deriveTransactionType","txnAndProof","TransactionAndProof","signMess","generateSigningMessageForSerializable","bytes","Deserializer","jwtPayload","iss","KeylessAccount","base64Url","base64","paddedBase64","decode"]}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|