@revibase/core 0.7.2 → 0.7.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +10 -12
- package/dist/constants.d.ts +1 -0
- package/dist/constants.js +11 -0
- package/dist/constants.js.map +1 -0
- package/dist/errors/index.d.ts +29 -0
- package/dist/errors/index.js +56 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/generated/accounts/domainConfig.d.ts +34 -0
- package/dist/generated/accounts/domainConfig.js +61 -0
- package/dist/generated/accounts/domainConfig.js.map +1 -0
- package/dist/generated/accounts/globalCounter.d.ts +20 -0
- package/dist/generated/accounts/globalCounter.js +47 -0
- package/dist/generated/accounts/globalCounter.js.map +1 -0
- package/dist/generated/accounts/index.d.ts +5 -0
- package/dist/generated/accounts/index.js +6 -0
- package/dist/generated/accounts/index.js.map +1 -0
- package/dist/generated/accounts/settings.d.ts +32 -0
- package/dist/generated/accounts/settings.js +57 -0
- package/dist/generated/accounts/settings.js.map +1 -0
- package/dist/generated/accounts/transactionBuffer.d.ts +50 -0
- package/dist/generated/accounts/transactionBuffer.js +81 -0
- package/dist/generated/accounts/transactionBuffer.js.map +1 -0
- package/dist/generated/accounts/user.d.ts +34 -0
- package/dist/generated/accounts/user.js +71 -0
- package/dist/generated/accounts/user.js.map +1 -0
- package/dist/generated/errors/index.d.ts +1 -0
- package/dist/generated/errors/index.js +2 -0
- package/dist/generated/errors/index.js.map +1 -0
- package/dist/generated/errors/multiWallet.d.ts +87 -0
- package/dist/generated/errors/multiWallet.js +167 -0
- package/dist/generated/errors/multiWallet.js.map +1 -0
- package/dist/generated/index.d.ts +5 -0
- package/dist/generated/index.js +6 -0
- package/dist/generated/index.js.map +1 -0
- package/dist/generated/instructions/changeConfig.d.ts +56 -0
- package/dist/generated/instructions/changeConfig.js +97 -0
- package/dist/generated/instructions/changeConfig.js.map +1 -0
- package/dist/generated/instructions/createDomainConfig.d.ts +68 -0
- package/dist/generated/instructions/createDomainConfig.js +128 -0
- package/dist/generated/instructions/createDomainConfig.js.map +1 -0
- package/dist/generated/instructions/createDomainUserAccount.d.ts +68 -0
- package/dist/generated/instructions/createDomainUserAccount.js +105 -0
- package/dist/generated/instructions/createDomainUserAccount.js.map +1 -0
- package/dist/generated/instructions/createGlobalCounter.d.ts +51 -0
- package/dist/generated/instructions/createGlobalCounter.js +105 -0
- package/dist/generated/instructions/createGlobalCounter.js.map +1 -0
- package/dist/generated/instructions/createUserAccount.d.ts +65 -0
- package/dist/generated/instructions/createUserAccount.js +121 -0
- package/dist/generated/instructions/createUserAccount.js.map +1 -0
- package/dist/generated/instructions/createWallet.d.ts +68 -0
- package/dist/generated/instructions/createWallet.js +143 -0
- package/dist/generated/instructions/createWallet.js.map +1 -0
- package/dist/generated/instructions/disableDomainConfig.d.ts +43 -0
- package/dist/generated/instructions/disableDomainConfig.js +64 -0
- package/dist/generated/instructions/disableDomainConfig.js.map +1 -0
- package/dist/generated/instructions/editDomainConfig.d.ts +52 -0
- package/dist/generated/instructions/editDomainConfig.js +89 -0
- package/dist/generated/instructions/editDomainConfig.js.map +1 -0
- package/dist/generated/instructions/editTransactionManagerUrl.d.ts +52 -0
- package/dist/generated/instructions/editTransactionManagerUrl.js +109 -0
- package/dist/generated/instructions/editTransactionManagerUrl.js.map +1 -0
- package/dist/generated/instructions/editUserDelegate.d.ts +65 -0
- package/dist/generated/instructions/editUserDelegate.js +105 -0
- package/dist/generated/instructions/editUserDelegate.js.map +1 -0
- package/dist/generated/instructions/index.d.ts +19 -0
- package/dist/generated/instructions/index.js +20 -0
- package/dist/generated/instructions/index.js.map +1 -0
- package/dist/generated/instructions/nativeTransferIntent.d.ts +73 -0
- package/dist/generated/instructions/nativeTransferIntent.js +159 -0
- package/dist/generated/instructions/nativeTransferIntent.js.map +1 -0
- package/dist/generated/instructions/tokenTransferIntent.d.ts +133 -0
- package/dist/generated/instructions/tokenTransferIntent.js +349 -0
- package/dist/generated/instructions/tokenTransferIntent.js.map +1 -0
- package/dist/generated/instructions/transactionBufferClose.d.ts +59 -0
- package/dist/generated/instructions/transactionBufferClose.js +106 -0
- package/dist/generated/instructions/transactionBufferClose.js.map +1 -0
- package/dist/generated/instructions/transactionBufferCreate.d.ts +80 -0
- package/dist/generated/instructions/transactionBufferCreate.js +131 -0
- package/dist/generated/instructions/transactionBufferCreate.js.map +1 -0
- package/dist/generated/instructions/transactionBufferExecute.d.ts +56 -0
- package/dist/generated/instructions/transactionBufferExecute.js +103 -0
- package/dist/generated/instructions/transactionBufferExecute.js.map +1 -0
- package/dist/generated/instructions/transactionBufferExtend.d.ts +43 -0
- package/dist/generated/instructions/transactionBufferExtend.js +70 -0
- package/dist/generated/instructions/transactionBufferExtend.js.map +1 -0
- package/dist/generated/instructions/transactionBufferVote.d.ts +59 -0
- package/dist/generated/instructions/transactionBufferVote.js +110 -0
- package/dist/generated/instructions/transactionBufferVote.js.map +1 -0
- package/dist/generated/instructions/transactionExecute.d.ts +42 -0
- package/dist/generated/instructions/transactionExecute.js +66 -0
- package/dist/generated/instructions/transactionExecute.js.map +1 -0
- package/dist/generated/instructions/transactionExecuteSync.d.ts +65 -0
- package/dist/generated/instructions/transactionExecuteSync.js +106 -0
- package/dist/generated/instructions/transactionExecuteSync.js.map +1 -0
- package/dist/generated/programs/index.d.ts +1 -0
- package/dist/generated/programs/index.js +2 -0
- package/dist/generated/programs/index.js.map +1 -0
- package/dist/generated/programs/multiWallet.d.ts +76 -0
- package/dist/generated/programs/multiWallet.js +114 -0
- package/dist/generated/programs/multiWallet.js.map +1 -0
- package/dist/generated/shared/index.d.ts +14 -0
- package/dist/generated/shared/index.js +60 -0
- package/dist/generated/shared/index.js.map +1 -0
- package/dist/generated/types/accountState.d.ts +9 -0
- package/dist/generated/types/accountState.js +16 -0
- package/dist/generated/types/accountState.js.map +1 -0
- package/dist/generated/types/addMemberArgs.d.ts +13 -0
- package/dist/generated/types/addMemberArgs.js +18 -0
- package/dist/generated/types/addMemberArgs.js.map +1 -0
- package/dist/generated/types/additionalMetadata.d.ts +9 -0
- package/dist/generated/types/additionalMetadata.js +17 -0
- package/dist/generated/types/additionalMetadata.js.map +1 -0
- package/dist/generated/types/compiledInstruction.d.ts +10 -0
- package/dist/generated/types/compiledInstruction.js +25 -0
- package/dist/generated/types/compiledInstruction.js.map +1 -0
- package/dist/generated/types/compressedOnlyExtension.d.ts +14 -0
- package/dist/generated/types/compressedOnlyExtension.js +19 -0
- package/dist/generated/types/compressedOnlyExtension.js.map +1 -0
- package/dist/generated/types/compressedProof.d.ts +10 -0
- package/dist/generated/types/compressedProof.js +19 -0
- package/dist/generated/types/compressedProof.js.map +1 -0
- package/dist/generated/types/compressedTokenArgs.d.ts +21 -0
- package/dist/generated/types/compressedTokenArgs.js +26 -0
- package/dist/generated/types/compressedTokenArgs.js.map +1 -0
- package/dist/generated/types/compressibleExtension.d.ts +19 -0
- package/dist/generated/types/compressibleExtension.js +24 -0
- package/dist/generated/types/compressibleExtension.js.map +1 -0
- package/dist/generated/types/compressionInfo.d.ts +29 -0
- package/dist/generated/types/compressionInfo.js +34 -0
- package/dist/generated/types/compressionInfo.js.map +1 -0
- package/dist/generated/types/configAction.d.ts +38 -0
- package/dist/generated/types/configAction.js +84 -0
- package/dist/generated/types/configAction.js.map +1 -0
- package/dist/generated/types/editMemberArgs.d.ts +13 -0
- package/dist/generated/types/editMemberArgs.js +18 -0
- package/dist/generated/types/editMemberArgs.js.map +1 -0
- package/dist/generated/types/expectedSigner.d.ts +13 -0
- package/dist/generated/types/expectedSigner.js +18 -0
- package/dist/generated/types/expectedSigner.js.map +1 -0
- package/dist/generated/types/extensionStruct.d.ts +189 -0
- package/dist/generated/types/extensionStruct.js +164 -0
- package/dist/generated/types/extensionStruct.js.map +1 -0
- package/dist/generated/types/index.d.ts +34 -0
- package/dist/generated/types/index.js +35 -0
- package/dist/generated/types/index.js.map +1 -0
- package/dist/generated/types/member.d.ts +19 -0
- package/dist/generated/types/member.js +24 -0
- package/dist/generated/types/member.js.map +1 -0
- package/dist/generated/types/memberKey.d.ts +9 -0
- package/dist/generated/types/memberKey.js +17 -0
- package/dist/generated/types/memberKey.js.map +1 -0
- package/dist/generated/types/packedMerkleContext.d.ts +11 -0
- package/dist/generated/types/packedMerkleContext.js +21 -0
- package/dist/generated/types/packedMerkleContext.js.map +1 -0
- package/dist/generated/types/pausableAccountExtension.d.ts +6 -0
- package/dist/generated/types/pausableAccountExtension.js +11 -0
- package/dist/generated/types/pausableAccountExtension.js.map +1 -0
- package/dist/generated/types/permanentDelegateAccountExtension.d.ts +6 -0
- package/dist/generated/types/permanentDelegateAccountExtension.js +11 -0
- package/dist/generated/types/permanentDelegateAccountExtension.js.map +1 -0
- package/dist/generated/types/permissions.d.ts +8 -0
- package/dist/generated/types/permissions.js +11 -0
- package/dist/generated/types/permissions.js.map +1 -0
- package/dist/generated/types/proofArgs.d.ts +13 -0
- package/dist/generated/types/proofArgs.js +18 -0
- package/dist/generated/types/proofArgs.js.map +1 -0
- package/dist/generated/types/removeMemberArgs.d.ts +11 -0
- package/dist/generated/types/removeMemberArgs.js +12 -0
- package/dist/generated/types/removeMemberArgs.js.map +1 -0
- package/dist/generated/types/rentConfig.d.ts +12 -0
- package/dist/generated/types/rentConfig.js +23 -0
- package/dist/generated/types/rentConfig.js.map +1 -0
- package/dist/generated/types/secp256r1Pubkey.d.ts +6 -0
- package/dist/generated/types/secp256r1Pubkey.js +11 -0
- package/dist/generated/types/secp256r1Pubkey.js.map +1 -0
- package/dist/generated/types/secp256r1VerifyArgs.d.ts +20 -0
- package/dist/generated/types/secp256r1VerifyArgs.js +31 -0
- package/dist/generated/types/secp256r1VerifyArgs.js.map +1 -0
- package/dist/generated/types/secp256r1VerifyArgsWithDomainConfigIndex.d.ts +13 -0
- package/dist/generated/types/secp256r1VerifyArgsWithDomainConfigIndex.js +18 -0
- package/dist/generated/types/secp256r1VerifyArgsWithDomainConfigIndex.js.map +1 -0
- package/dist/generated/types/settingsIndexWithDelegateInfo.d.ts +12 -0
- package/dist/generated/types/settingsIndexWithDelegateInfo.js +17 -0
- package/dist/generated/types/settingsIndexWithDelegateInfo.js.map +1 -0
- package/dist/generated/types/splInterfacePdaArgs.d.ts +9 -0
- package/dist/generated/types/splInterfacePdaArgs.js +17 -0
- package/dist/generated/types/splInterfacePdaArgs.js.map +1 -0
- package/dist/generated/types/tokenMetadata.d.ts +21 -0
- package/dist/generated/types/tokenMetadata.js +26 -0
- package/dist/generated/types/tokenMetadata.js.map +1 -0
- package/dist/generated/types/transactionMessageAddressTableLookup.d.ts +10 -0
- package/dist/generated/types/transactionMessageAddressTableLookup.js +31 -0
- package/dist/generated/types/transactionMessageAddressTableLookup.js.map +1 -0
- package/dist/generated/types/transactionSyncSigners.d.ts +24 -0
- package/dist/generated/types/transactionSyncSigners.js +52 -0
- package/dist/generated/types/transactionSyncSigners.js.map +1 -0
- package/dist/generated/types/transferFeeAccountExtension.d.ts +10 -0
- package/dist/generated/types/transferFeeAccountExtension.js +11 -0
- package/dist/generated/types/transferFeeAccountExtension.js.map +1 -0
- package/dist/generated/types/transferHookAccountExtension.d.ts +8 -0
- package/dist/generated/types/transferHookAccountExtension.js +11 -0
- package/dist/generated/types/transferHookAccountExtension.js.map +1 -0
- package/dist/generated/types/transports.d.ts +14 -0
- package/dist/generated/types/transports.js +21 -0
- package/dist/generated/types/transports.js.map +1 -0
- package/dist/generated/types/userRole.d.ts +11 -0
- package/dist/generated/types/userRole.js +18 -0
- package/dist/generated/types/userRole.js.map +1 -0
- package/dist/hooked/index.d.ts +12 -0
- package/dist/hooked/index.js +15 -0
- package/dist/hooked/index.js.map +1 -0
- package/dist/index.cjs +2 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +88 -42
- package/dist/index.d.ts +5 -3058
- package/dist/index.js +5 -2
- package/dist/index.js.map +1 -1
- package/dist/instructions/admin/createDomainConfig.d.ts +7 -0
- package/dist/instructions/admin/createDomainConfig.js +16 -0
- package/dist/instructions/admin/createDomainConfig.js.map +1 -0
- package/dist/instructions/admin/createGlobalCounter.d.ts +4 -0
- package/dist/instructions/admin/createGlobalCounter.js +11 -0
- package/dist/instructions/admin/createGlobalCounter.js.map +1 -0
- package/dist/instructions/admin/disableDomainConfig.d.ts +6 -0
- package/dist/instructions/admin/disableDomainConfig.js +12 -0
- package/dist/instructions/admin/disableDomainConfig.js.map +1 -0
- package/dist/instructions/admin/index.d.ts +3 -0
- package/dist/instructions/admin/index.js +4 -0
- package/dist/instructions/admin/index.js.map +1 -0
- package/dist/instructions/executeTransaction.d.ts +15 -0
- package/dist/instructions/executeTransaction.js +32 -0
- package/dist/instructions/executeTransaction.js.map +1 -0
- package/dist/instructions/executeTransactionSync.d.ts +14 -0
- package/dist/instructions/executeTransactionSync.js +61 -0
- package/dist/instructions/executeTransactionSync.js.map +1 -0
- package/dist/instructions/index.d.ts +7 -0
- package/dist/instructions/index.js +8 -0
- package/dist/instructions/index.js.map +1 -0
- package/dist/instructions/intents/index.d.ts +2 -0
- package/dist/instructions/intents/index.js +3 -0
- package/dist/instructions/intents/index.js.map +1 -0
- package/dist/instructions/intents/nativeTransferIntent.d.ts +9 -0
- package/dist/instructions/intents/nativeTransferIntent.js +35 -0
- package/dist/instructions/intents/nativeTransferIntent.js.map +1 -0
- package/dist/instructions/intents/tokenTransferIntent.d.ts +15 -0
- package/dist/instructions/intents/tokenTransferIntent.js +318 -0
- package/dist/instructions/intents/tokenTransferIntent.js.map +1 -0
- package/dist/instructions/secp256r1Verify.d.ts +44 -0
- package/dist/instructions/secp256r1Verify.js +140 -0
- package/dist/instructions/secp256r1Verify.js.map +1 -0
- package/dist/instructions/shared/changeConfig.d.ts +13 -0
- package/dist/instructions/shared/changeConfig.js +60 -0
- package/dist/instructions/shared/changeConfig.js.map +1 -0
- package/dist/instructions/shared/createDomainUserAccounts.d.ts +18 -0
- package/dist/instructions/shared/createDomainUserAccounts.js +20 -0
- package/dist/instructions/shared/createDomainUserAccounts.js.map +1 -0
- package/dist/instructions/shared/createUserAccounts.d.ts +15 -0
- package/dist/instructions/shared/createUserAccounts.js +16 -0
- package/dist/instructions/shared/createUserAccounts.js.map +1 -0
- package/dist/instructions/shared/createWallet.d.ts +8 -0
- package/dist/instructions/shared/createWallet.js +15 -0
- package/dist/instructions/shared/createWallet.js.map +1 -0
- package/dist/instructions/shared/editDomainConfig.d.ts +7 -0
- package/dist/instructions/shared/editDomainConfig.js +16 -0
- package/dist/instructions/shared/editDomainConfig.js.map +1 -0
- package/dist/instructions/shared/editTransactionManagerUrl.d.ts +5 -0
- package/dist/instructions/shared/editTransactionManagerUrl.js +11 -0
- package/dist/instructions/shared/editTransactionManagerUrl.js.map +1 -0
- package/dist/instructions/shared/editUserDelegate.d.ts +8 -0
- package/dist/instructions/shared/editUserDelegate.js +42 -0
- package/dist/instructions/shared/editUserDelegate.js.map +1 -0
- package/dist/instructions/shared/index.d.ts +7 -0
- package/dist/instructions/shared/index.js +8 -0
- package/dist/instructions/shared/index.js.map +1 -0
- package/dist/instructions/transactionBuffers/closeTransactionBuffer.d.ts +8 -0
- package/dist/instructions/transactionBuffers/closeTransactionBuffer.js +28 -0
- package/dist/instructions/transactionBuffers/closeTransactionBuffer.js.map +1 -0
- package/dist/instructions/transactionBuffers/createTransactionBuffer.d.ts +15 -0
- package/dist/instructions/transactionBuffers/createTransactionBuffer.js +34 -0
- package/dist/instructions/transactionBuffers/createTransactionBuffer.js.map +1 -0
- package/dist/instructions/transactionBuffers/executeTransactionBuffer.d.ts +7 -0
- package/dist/instructions/transactionBuffers/executeTransactionBuffer.js +27 -0
- package/dist/instructions/transactionBuffers/executeTransactionBuffer.js.map +1 -0
- package/dist/instructions/transactionBuffers/extendTransactionBuffer.d.ts +6 -0
- package/dist/instructions/transactionBuffers/extendTransactionBuffer.js +10 -0
- package/dist/instructions/transactionBuffers/extendTransactionBuffer.js.map +1 -0
- package/dist/instructions/transactionBuffers/index.d.ts +5 -0
- package/dist/instructions/transactionBuffers/index.js +6 -0
- package/dist/instructions/transactionBuffers/index.js.map +1 -0
- package/dist/instructions/transactionBuffers/voteTransactionBuffer.d.ts +7 -0
- package/dist/instructions/transactionBuffers/voteTransactionBuffer.js +27 -0
- package/dist/instructions/transactionBuffers/voteTransactionBuffer.js.map +1 -0
- package/dist/transaction/index.d.ts +4 -0
- package/dist/transaction/index.js +5 -0
- package/dist/transaction/index.js.map +1 -0
- package/dist/transaction/prepareChangeConfig.d.ts +12 -0
- package/dist/transaction/prepareChangeConfig.js +96 -0
- package/dist/transaction/prepareChangeConfig.js.map +1 -0
- package/dist/transaction/prepareTransactionBundle.d.ts +19 -0
- package/dist/transaction/prepareTransactionBundle.js +78 -0
- package/dist/transaction/prepareTransactionBundle.js.map +1 -0
- package/dist/transaction/prepareTransactionMessage.d.ts +8 -0
- package/dist/transaction/prepareTransactionMessage.js +14 -0
- package/dist/transaction/prepareTransactionMessage.js.map +1 -0
- package/dist/transaction/prepareTransactionSync.d.ts +14 -0
- package/dist/transaction/prepareTransactionSync.js +18 -0
- package/dist/transaction/prepareTransactionSync.js.map +1 -0
- package/dist/types/configurationArgs.d.ts +32 -0
- package/dist/types/configurationArgs.js +2 -0
- package/dist/types/configurationArgs.js.map +1 -0
- package/dist/types/index.d.ts +7 -0
- package/dist/types/index.js +8 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/keyType.d.ts +8 -0
- package/dist/types/keyType.js +5 -0
- package/dist/types/keyType.js.map +1 -0
- package/dist/types/passkeys.d.ts +506 -0
- package/dist/types/passkeys.js +211 -0
- package/dist/types/passkeys.js.map +1 -0
- package/dist/types/permissions.d.ts +14 -0
- package/dist/types/permissions.js +21 -0
- package/dist/types/permissions.js.map +1 -0
- package/dist/types/secp256r1.d.ts +41 -0
- package/dist/types/secp256r1.js +70 -0
- package/dist/types/secp256r1.js.map +1 -0
- package/dist/types/transaction.d.ts +7 -0
- package/dist/types/transaction.js +2 -0
- package/dist/types/transaction.js.map +1 -0
- package/dist/types/vaultTransactionMessage.d.ts +7 -0
- package/dist/types/vaultTransactionMessage.js +79 -0
- package/dist/types/vaultTransactionMessage.js.map +1 -0
- package/dist/utils/addresses/index.d.ts +13 -0
- package/dist/utils/addresses/index.js +90 -0
- package/dist/utils/addresses/index.js.map +1 -0
- package/dist/utils/codama.d.ts +1 -0
- package/dist/utils/codama.js +56 -0
- package/dist/utils/codama.js.map +1 -0
- package/dist/utils/index.d.ts +5 -0
- package/dist/utils/index.js +6 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/initialize.d.ts +10 -0
- package/dist/utils/initialize.js +30 -0
- package/dist/utils/initialize.js.map +1 -0
- package/dist/utils/passkeys/helper.d.ts +39 -0
- package/dist/utils/passkeys/helper.js +156 -0
- package/dist/utils/passkeys/helper.js.map +1 -0
- package/dist/utils/passkeys/index.d.ts +1 -0
- package/dist/utils/passkeys/index.js +2 -0
- package/dist/utils/passkeys/index.js.map +1 -0
- package/dist/utils/passkeys/internal.d.ts +8 -0
- package/dist/utils/passkeys/internal.js +93 -0
- package/dist/utils/passkeys/internal.js.map +1 -0
- package/dist/utils/retry.d.ts +11 -0
- package/dist/utils/retry.js +44 -0
- package/dist/utils/retry.js.map +1 -0
- package/dist/utils/transaction/helper.d.ts +22 -0
- package/dist/utils/transaction/helper.js +247 -0
- package/dist/utils/transaction/helper.js.map +1 -0
- package/dist/utils/transaction/index.d.ts +1 -0
- package/dist/utils/transaction/index.js +2 -0
- package/dist/utils/transaction/index.js.map +1 -0
- package/dist/utils/transaction/internal.d.ts +22 -0
- package/dist/utils/transaction/internal.js +128 -0
- package/dist/utils/transaction/internal.js.map +1 -0
- package/dist/utils/transaction/packedAccounts.d.ts +30 -0
- package/dist/utils/transaction/packedAccounts.js +135 -0
- package/dist/utils/transaction/packedAccounts.js.map +1 -0
- package/dist/utils/transactionMessage/compileToWrappedMessageV0.d.ts +9 -0
- package/dist/utils/transactionMessage/compileToWrappedMessageV0.js +39 -0
- package/dist/utils/transactionMessage/compileToWrappedMessageV0.js.map +1 -0
- package/dist/utils/transactionMessage/compiled-keys.d.ts +34 -0
- package/dist/utils/transactionMessage/compiled-keys.js +107 -0
- package/dist/utils/transactionMessage/compiled-keys.js.map +1 -0
- package/dist/utils/transactionMessage/internal.d.ts +33 -0
- package/dist/utils/transactionMessage/internal.js +121 -0
- package/dist/utils/transactionMessage/internal.js.map +1 -0
- package/dist/utils/transactionMessage/message-account-keys.d.ts +17 -0
- package/dist/utils/transactionMessage/message-account-keys.js +56 -0
- package/dist/utils/transactionMessage/message-account-keys.js.map +1 -0
- package/dist/utils/user/helper.d.ts +8 -0
- package/dist/utils/user/helper.js +87 -0
- package/dist/utils/user/helper.js.map +1 -0
- package/dist/utils/user/index.d.ts +1 -0
- package/dist/utils/user/index.js +2 -0
- package/dist/utils/user/index.js.map +1 -0
- package/dist/utils/validation.d.ts +4 -0
- package/dist/utils/validation.js +22 -0
- package/dist/utils/validation.js.map +1 -0
- package/package.json +7 -4
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import { combineCodec, fixDecoderSize, fixEncoderSize, getBytesDecoder, getBytesEncoder, getOptionDecoder, getOptionEncoder, getStructDecoder, getStructEncoder, transformEncoder, } from "@solana/kit";
|
|
2
|
+
import { parseRemainingAccounts } from "../../hooked";
|
|
3
|
+
import { MULTI_WALLET_PROGRAM_ADDRESS } from "../programs";
|
|
4
|
+
import { getAccountMetaFactory } from "../shared";
|
|
5
|
+
import { getSecp256r1VerifyArgsDecoder, getSecp256r1VerifyArgsEncoder, } from "../types";
|
|
6
|
+
export const TRANSACTION_BUFFER_CLOSE_DISCRIMINATOR = new Uint8Array([12]);
|
|
7
|
+
export function getTransactionBufferCloseDiscriminatorBytes() {
|
|
8
|
+
return fixEncoderSize(getBytesEncoder(), 1).encode(TRANSACTION_BUFFER_CLOSE_DISCRIMINATOR);
|
|
9
|
+
}
|
|
10
|
+
export function getTransactionBufferCloseInstructionDataEncoder() {
|
|
11
|
+
return transformEncoder(getStructEncoder([
|
|
12
|
+
["discriminator", fixEncoderSize(getBytesEncoder(), 1)],
|
|
13
|
+
[
|
|
14
|
+
"secp256r1VerifyArgs",
|
|
15
|
+
getOptionEncoder(getSecp256r1VerifyArgsEncoder()),
|
|
16
|
+
],
|
|
17
|
+
]), (value) => ({
|
|
18
|
+
...value,
|
|
19
|
+
discriminator: TRANSACTION_BUFFER_CLOSE_DISCRIMINATOR,
|
|
20
|
+
}));
|
|
21
|
+
}
|
|
22
|
+
export function getTransactionBufferCloseInstructionDataDecoder() {
|
|
23
|
+
return getStructDecoder([
|
|
24
|
+
["discriminator", fixDecoderSize(getBytesDecoder(), 1)],
|
|
25
|
+
["secp256r1VerifyArgs", getOptionDecoder(getSecp256r1VerifyArgsDecoder())],
|
|
26
|
+
]);
|
|
27
|
+
}
|
|
28
|
+
export function getTransactionBufferCloseInstructionDataCodec() {
|
|
29
|
+
return combineCodec(getTransactionBufferCloseInstructionDataEncoder(), getTransactionBufferCloseInstructionDataDecoder());
|
|
30
|
+
}
|
|
31
|
+
export function getTransactionBufferCloseInstruction(input, config) {
|
|
32
|
+
const programAddress = config?.programAddress ?? MULTI_WALLET_PROGRAM_ADDRESS;
|
|
33
|
+
const originalAccounts = {
|
|
34
|
+
settings: { value: input.settings ?? null, isWritable: true },
|
|
35
|
+
payer: { value: input.payer ?? null, isWritable: true },
|
|
36
|
+
domainConfig: { value: input.domainConfig ?? null, isWritable: false },
|
|
37
|
+
transactionBuffer: {
|
|
38
|
+
value: input.transactionBuffer ?? null,
|
|
39
|
+
isWritable: true,
|
|
40
|
+
},
|
|
41
|
+
closer: { value: input.closer ?? null, isWritable: false },
|
|
42
|
+
slotHashSysvar: { value: input.slotHashSysvar ?? null, isWritable: false },
|
|
43
|
+
instructionsSysvar: {
|
|
44
|
+
value: input.instructionsSysvar ?? null,
|
|
45
|
+
isWritable: false,
|
|
46
|
+
},
|
|
47
|
+
};
|
|
48
|
+
const accounts = originalAccounts;
|
|
49
|
+
const args = { ...input };
|
|
50
|
+
const resolverScope = { programAddress, accounts, args };
|
|
51
|
+
if (!accounts.slotHashSysvar.value) {
|
|
52
|
+
accounts.slotHashSysvar.value =
|
|
53
|
+
"SysvarS1otHashes111111111111111111111111111";
|
|
54
|
+
}
|
|
55
|
+
if (!accounts.instructionsSysvar.value) {
|
|
56
|
+
accounts.instructionsSysvar.value =
|
|
57
|
+
"Sysvar1nstructions1111111111111111111111111";
|
|
58
|
+
}
|
|
59
|
+
const remainingAccounts = parseRemainingAccounts(resolverScope);
|
|
60
|
+
const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
|
|
61
|
+
return Object.freeze({
|
|
62
|
+
accounts: [
|
|
63
|
+
getAccountMeta(accounts.settings),
|
|
64
|
+
getAccountMeta(accounts.payer),
|
|
65
|
+
getAccountMeta(accounts.domainConfig),
|
|
66
|
+
getAccountMeta(accounts.transactionBuffer),
|
|
67
|
+
getAccountMeta(accounts.closer),
|
|
68
|
+
getAccountMeta(accounts.slotHashSysvar),
|
|
69
|
+
getAccountMeta(accounts.instructionsSysvar),
|
|
70
|
+
...remainingAccounts,
|
|
71
|
+
],
|
|
72
|
+
data: getTransactionBufferCloseInstructionDataEncoder().encode(args),
|
|
73
|
+
programAddress,
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
export function parseTransactionBufferCloseInstruction(instruction) {
|
|
77
|
+
if (instruction.accounts.length < 7) {
|
|
78
|
+
throw new Error("Not enough accounts");
|
|
79
|
+
}
|
|
80
|
+
let accountIndex = 0;
|
|
81
|
+
const getNextAccount = () => {
|
|
82
|
+
const accountMeta = instruction.accounts[accountIndex];
|
|
83
|
+
accountIndex += 1;
|
|
84
|
+
return accountMeta;
|
|
85
|
+
};
|
|
86
|
+
const getNextOptionalAccount = () => {
|
|
87
|
+
const accountMeta = getNextAccount();
|
|
88
|
+
return accountMeta.address === MULTI_WALLET_PROGRAM_ADDRESS
|
|
89
|
+
? undefined
|
|
90
|
+
: accountMeta;
|
|
91
|
+
};
|
|
92
|
+
return {
|
|
93
|
+
programAddress: instruction.programAddress,
|
|
94
|
+
accounts: {
|
|
95
|
+
settings: getNextAccount(),
|
|
96
|
+
payer: getNextAccount(),
|
|
97
|
+
domainConfig: getNextOptionalAccount(),
|
|
98
|
+
transactionBuffer: getNextAccount(),
|
|
99
|
+
closer: getNextOptionalAccount(),
|
|
100
|
+
slotHashSysvar: getNextOptionalAccount(),
|
|
101
|
+
instructionsSysvar: getNextOptionalAccount(),
|
|
102
|
+
},
|
|
103
|
+
data: getTransactionBufferCloseInstructionDataDecoder().decode(instruction.data),
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=transactionBufferClose.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transactionBufferClose.js","sourceRoot":"","sources":["../../../src/generated/instructions/transactionBufferClose.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { type AccountMeta, type AccountSignerMeta, type Address, type Codec, type Decoder, type Encoder, type Instruction, type InstructionWithAccounts, type InstructionWithData, type Option, type OptionOrNullable, type ReadonlyAccount, type ReadonlySignerAccount, type ReadonlyUint8Array, type TransactionSigner, type WritableAccount, type WritableSignerAccount } from "@solana/kit";
|
|
2
|
+
import { MULTI_WALLET_PROGRAM_ADDRESS } from "../programs";
|
|
3
|
+
import { type ExpectedSigner, type ExpectedSignerArgs, type Secp256r1VerifyArgs, type Secp256r1VerifyArgsArgs } from "../types";
|
|
4
|
+
export declare const TRANSACTION_BUFFER_CREATE_DISCRIMINATOR: Uint8Array<ArrayBuffer>;
|
|
5
|
+
export declare function getTransactionBufferCreateDiscriminatorBytes(): ReadonlyUint8Array<ArrayBuffer>;
|
|
6
|
+
export type TransactionBufferCreateInstruction<TProgram extends string = typeof MULTI_WALLET_PROGRAM_ADDRESS, TAccountSettings extends string | AccountMeta<string> = string, TAccountPayer extends string | AccountMeta<string> = string, TAccountDomainConfig extends string | AccountMeta<string> = string, TAccountTransactionBuffer extends string | AccountMeta<string> = string, TAccountCreator extends string | AccountMeta<string> = string, TAccountSystemProgram extends string | AccountMeta<string> = "11111111111111111111111111111111", TAccountInstructionsSysvar extends string | AccountMeta<string> = "Sysvar1nstructions1111111111111111111111111", TAccountSlotHashSysvar extends string | AccountMeta<string> = "SysvarS1otHashes111111111111111111111111111", TRemainingAccounts extends readonly AccountMeta<string>[] = []> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[
|
|
7
|
+
TAccountSettings extends string ? ReadonlyAccount<TAccountSettings> : TAccountSettings,
|
|
8
|
+
TAccountPayer extends string ? WritableSignerAccount<TAccountPayer> & AccountSignerMeta<TAccountPayer> : TAccountPayer,
|
|
9
|
+
TAccountDomainConfig extends string ? ReadonlyAccount<TAccountDomainConfig> : TAccountDomainConfig,
|
|
10
|
+
TAccountTransactionBuffer extends string ? WritableAccount<TAccountTransactionBuffer> : TAccountTransactionBuffer,
|
|
11
|
+
TAccountCreator extends string ? ReadonlySignerAccount<TAccountCreator> & AccountSignerMeta<TAccountCreator> : TAccountCreator,
|
|
12
|
+
TAccountSystemProgram extends string ? ReadonlyAccount<TAccountSystemProgram> : TAccountSystemProgram,
|
|
13
|
+
TAccountInstructionsSysvar extends string ? ReadonlyAccount<TAccountInstructionsSysvar> : TAccountInstructionsSysvar,
|
|
14
|
+
TAccountSlotHashSysvar extends string ? ReadonlyAccount<TAccountSlotHashSysvar> : TAccountSlotHashSysvar,
|
|
15
|
+
...TRemainingAccounts
|
|
16
|
+
]>;
|
|
17
|
+
export type TransactionBufferCreateInstructionData = {
|
|
18
|
+
discriminator: ReadonlyUint8Array;
|
|
19
|
+
bufferIndex: number;
|
|
20
|
+
preauthorizeExecution: boolean;
|
|
21
|
+
bufferExtendHashes: Array<ReadonlyUint8Array>;
|
|
22
|
+
finalBufferHash: ReadonlyUint8Array;
|
|
23
|
+
finalBufferSize: number;
|
|
24
|
+
expectedSigners: Array<ExpectedSigner>;
|
|
25
|
+
secp256r1VerifyArgs: Option<Secp256r1VerifyArgs>;
|
|
26
|
+
};
|
|
27
|
+
export type TransactionBufferCreateInstructionDataArgs = {
|
|
28
|
+
bufferIndex: number;
|
|
29
|
+
preauthorizeExecution: boolean;
|
|
30
|
+
bufferExtendHashes: Array<ReadonlyUint8Array>;
|
|
31
|
+
finalBufferHash: ReadonlyUint8Array;
|
|
32
|
+
finalBufferSize: number;
|
|
33
|
+
expectedSigners: Array<ExpectedSignerArgs>;
|
|
34
|
+
secp256r1VerifyArgs: OptionOrNullable<Secp256r1VerifyArgsArgs>;
|
|
35
|
+
};
|
|
36
|
+
export declare function getTransactionBufferCreateInstructionDataEncoder(): Encoder<TransactionBufferCreateInstructionDataArgs>;
|
|
37
|
+
export declare function getTransactionBufferCreateInstructionDataDecoder(): Decoder<TransactionBufferCreateInstructionData>;
|
|
38
|
+
export declare function getTransactionBufferCreateInstructionDataCodec(): Codec<TransactionBufferCreateInstructionDataArgs, TransactionBufferCreateInstructionData>;
|
|
39
|
+
export type TransactionBufferCreateInstructionExtraArgs = {
|
|
40
|
+
remainingAccounts: Array<{
|
|
41
|
+
address: Address;
|
|
42
|
+
role: number;
|
|
43
|
+
}>;
|
|
44
|
+
};
|
|
45
|
+
export type TransactionBufferCreateInput<TAccountSettings extends string = string, TAccountPayer extends string = string, TAccountDomainConfig extends string = string, TAccountTransactionBuffer extends string = string, TAccountCreator extends string = string, TAccountSystemProgram extends string = string, TAccountInstructionsSysvar extends string = string, TAccountSlotHashSysvar extends string = string> = {
|
|
46
|
+
settings: Address<TAccountSettings>;
|
|
47
|
+
payer: TransactionSigner<TAccountPayer>;
|
|
48
|
+
domainConfig?: Address<TAccountDomainConfig>;
|
|
49
|
+
transactionBuffer: Address<TAccountTransactionBuffer>;
|
|
50
|
+
creator?: TransactionSigner<TAccountCreator>;
|
|
51
|
+
systemProgram?: Address<TAccountSystemProgram>;
|
|
52
|
+
instructionsSysvar?: Address<TAccountInstructionsSysvar>;
|
|
53
|
+
slotHashSysvar?: Address<TAccountSlotHashSysvar>;
|
|
54
|
+
bufferIndex: TransactionBufferCreateInstructionDataArgs["bufferIndex"];
|
|
55
|
+
preauthorizeExecution: TransactionBufferCreateInstructionDataArgs["preauthorizeExecution"];
|
|
56
|
+
bufferExtendHashes: TransactionBufferCreateInstructionDataArgs["bufferExtendHashes"];
|
|
57
|
+
finalBufferHash: TransactionBufferCreateInstructionDataArgs["finalBufferHash"];
|
|
58
|
+
finalBufferSize: TransactionBufferCreateInstructionDataArgs["finalBufferSize"];
|
|
59
|
+
expectedSigners: TransactionBufferCreateInstructionDataArgs["expectedSigners"];
|
|
60
|
+
secp256r1VerifyArgs: TransactionBufferCreateInstructionDataArgs["secp256r1VerifyArgs"];
|
|
61
|
+
remainingAccounts: TransactionBufferCreateInstructionExtraArgs["remainingAccounts"];
|
|
62
|
+
};
|
|
63
|
+
export declare function getTransactionBufferCreateInstruction<TAccountSettings extends string, TAccountPayer extends string, TAccountDomainConfig extends string, TAccountTransactionBuffer extends string, TAccountCreator extends string, TAccountSystemProgram extends string, TAccountInstructionsSysvar extends string, TAccountSlotHashSysvar extends string, TProgramAddress extends Address = typeof MULTI_WALLET_PROGRAM_ADDRESS>(input: TransactionBufferCreateInput<TAccountSettings, TAccountPayer, TAccountDomainConfig, TAccountTransactionBuffer, TAccountCreator, TAccountSystemProgram, TAccountInstructionsSysvar, TAccountSlotHashSysvar>, config?: {
|
|
64
|
+
programAddress?: TProgramAddress;
|
|
65
|
+
}): TransactionBufferCreateInstruction<TProgramAddress, TAccountSettings, TAccountPayer, TAccountDomainConfig, TAccountTransactionBuffer, TAccountCreator, TAccountSystemProgram, TAccountInstructionsSysvar, TAccountSlotHashSysvar>;
|
|
66
|
+
export type ParsedTransactionBufferCreateInstruction<TProgram extends string = typeof MULTI_WALLET_PROGRAM_ADDRESS, TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[]> = {
|
|
67
|
+
programAddress: Address<TProgram>;
|
|
68
|
+
accounts: {
|
|
69
|
+
settings: TAccountMetas[0];
|
|
70
|
+
payer: TAccountMetas[1];
|
|
71
|
+
domainConfig?: TAccountMetas[2] | undefined;
|
|
72
|
+
transactionBuffer: TAccountMetas[3];
|
|
73
|
+
creator?: TAccountMetas[4] | undefined;
|
|
74
|
+
systemProgram: TAccountMetas[5];
|
|
75
|
+
instructionsSysvar: TAccountMetas[6];
|
|
76
|
+
slotHashSysvar?: TAccountMetas[7] | undefined;
|
|
77
|
+
};
|
|
78
|
+
data: TransactionBufferCreateInstructionData;
|
|
79
|
+
};
|
|
80
|
+
export declare function parseTransactionBufferCreateInstruction<TProgram extends string, TAccountMetas extends readonly AccountMeta[]>(instruction: Instruction<TProgram> & InstructionWithAccounts<TAccountMetas> & InstructionWithData<ReadonlyUint8Array>): ParsedTransactionBufferCreateInstruction<TProgram, TAccountMetas>;
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import { combineCodec, fixDecoderSize, fixEncoderSize, getArrayDecoder, getArrayEncoder, getBooleanDecoder, getBooleanEncoder, getBytesDecoder, getBytesEncoder, getOptionDecoder, getOptionEncoder, getStructDecoder, getStructEncoder, getU16Decoder, getU16Encoder, getU8Decoder, getU8Encoder, transformEncoder, } from "@solana/kit";
|
|
2
|
+
import { parseRemainingAccounts } from "../../hooked";
|
|
3
|
+
import { MULTI_WALLET_PROGRAM_ADDRESS } from "../programs";
|
|
4
|
+
import { getAccountMetaFactory } from "../shared";
|
|
5
|
+
import { getExpectedSignerDecoder, getExpectedSignerEncoder, getSecp256r1VerifyArgsDecoder, getSecp256r1VerifyArgsEncoder, } from "../types";
|
|
6
|
+
export const TRANSACTION_BUFFER_CREATE_DISCRIMINATOR = new Uint8Array([9]);
|
|
7
|
+
export function getTransactionBufferCreateDiscriminatorBytes() {
|
|
8
|
+
return fixEncoderSize(getBytesEncoder(), 1).encode(TRANSACTION_BUFFER_CREATE_DISCRIMINATOR);
|
|
9
|
+
}
|
|
10
|
+
export function getTransactionBufferCreateInstructionDataEncoder() {
|
|
11
|
+
return transformEncoder(getStructEncoder([
|
|
12
|
+
["discriminator", fixEncoderSize(getBytesEncoder(), 1)],
|
|
13
|
+
["bufferIndex", getU8Encoder()],
|
|
14
|
+
["preauthorizeExecution", getBooleanEncoder()],
|
|
15
|
+
[
|
|
16
|
+
"bufferExtendHashes",
|
|
17
|
+
getArrayEncoder(fixEncoderSize(getBytesEncoder(), 32)),
|
|
18
|
+
],
|
|
19
|
+
["finalBufferHash", fixEncoderSize(getBytesEncoder(), 32)],
|
|
20
|
+
["finalBufferSize", getU16Encoder()],
|
|
21
|
+
["expectedSigners", getArrayEncoder(getExpectedSignerEncoder())],
|
|
22
|
+
[
|
|
23
|
+
"secp256r1VerifyArgs",
|
|
24
|
+
getOptionEncoder(getSecp256r1VerifyArgsEncoder()),
|
|
25
|
+
],
|
|
26
|
+
]), (value) => ({
|
|
27
|
+
...value,
|
|
28
|
+
discriminator: TRANSACTION_BUFFER_CREATE_DISCRIMINATOR,
|
|
29
|
+
}));
|
|
30
|
+
}
|
|
31
|
+
export function getTransactionBufferCreateInstructionDataDecoder() {
|
|
32
|
+
return getStructDecoder([
|
|
33
|
+
["discriminator", fixDecoderSize(getBytesDecoder(), 1)],
|
|
34
|
+
["bufferIndex", getU8Decoder()],
|
|
35
|
+
["preauthorizeExecution", getBooleanDecoder()],
|
|
36
|
+
[
|
|
37
|
+
"bufferExtendHashes",
|
|
38
|
+
getArrayDecoder(fixDecoderSize(getBytesDecoder(), 32)),
|
|
39
|
+
],
|
|
40
|
+
["finalBufferHash", fixDecoderSize(getBytesDecoder(), 32)],
|
|
41
|
+
["finalBufferSize", getU16Decoder()],
|
|
42
|
+
["expectedSigners", getArrayDecoder(getExpectedSignerDecoder())],
|
|
43
|
+
["secp256r1VerifyArgs", getOptionDecoder(getSecp256r1VerifyArgsDecoder())],
|
|
44
|
+
]);
|
|
45
|
+
}
|
|
46
|
+
export function getTransactionBufferCreateInstructionDataCodec() {
|
|
47
|
+
return combineCodec(getTransactionBufferCreateInstructionDataEncoder(), getTransactionBufferCreateInstructionDataDecoder());
|
|
48
|
+
}
|
|
49
|
+
export function getTransactionBufferCreateInstruction(input, config) {
|
|
50
|
+
const programAddress = config?.programAddress ?? MULTI_WALLET_PROGRAM_ADDRESS;
|
|
51
|
+
const originalAccounts = {
|
|
52
|
+
settings: { value: input.settings ?? null, isWritable: false },
|
|
53
|
+
payer: { value: input.payer ?? null, isWritable: true },
|
|
54
|
+
domainConfig: { value: input.domainConfig ?? null, isWritable: false },
|
|
55
|
+
transactionBuffer: {
|
|
56
|
+
value: input.transactionBuffer ?? null,
|
|
57
|
+
isWritable: true,
|
|
58
|
+
},
|
|
59
|
+
creator: { value: input.creator ?? null, isWritable: false },
|
|
60
|
+
systemProgram: { value: input.systemProgram ?? null, isWritable: false },
|
|
61
|
+
instructionsSysvar: {
|
|
62
|
+
value: input.instructionsSysvar ?? null,
|
|
63
|
+
isWritable: false,
|
|
64
|
+
},
|
|
65
|
+
slotHashSysvar: { value: input.slotHashSysvar ?? null, isWritable: false },
|
|
66
|
+
};
|
|
67
|
+
const accounts = originalAccounts;
|
|
68
|
+
const args = { ...input };
|
|
69
|
+
const resolverScope = { programAddress, accounts, args };
|
|
70
|
+
if (!accounts.systemProgram.value) {
|
|
71
|
+
accounts.systemProgram.value =
|
|
72
|
+
"11111111111111111111111111111111";
|
|
73
|
+
}
|
|
74
|
+
if (!accounts.instructionsSysvar.value) {
|
|
75
|
+
accounts.instructionsSysvar.value =
|
|
76
|
+
"Sysvar1nstructions1111111111111111111111111";
|
|
77
|
+
}
|
|
78
|
+
if (!accounts.slotHashSysvar.value) {
|
|
79
|
+
accounts.slotHashSysvar.value =
|
|
80
|
+
"SysvarS1otHashes111111111111111111111111111";
|
|
81
|
+
}
|
|
82
|
+
const remainingAccounts = parseRemainingAccounts(resolverScope);
|
|
83
|
+
const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
|
|
84
|
+
return Object.freeze({
|
|
85
|
+
accounts: [
|
|
86
|
+
getAccountMeta(accounts.settings),
|
|
87
|
+
getAccountMeta(accounts.payer),
|
|
88
|
+
getAccountMeta(accounts.domainConfig),
|
|
89
|
+
getAccountMeta(accounts.transactionBuffer),
|
|
90
|
+
getAccountMeta(accounts.creator),
|
|
91
|
+
getAccountMeta(accounts.systemProgram),
|
|
92
|
+
getAccountMeta(accounts.instructionsSysvar),
|
|
93
|
+
getAccountMeta(accounts.slotHashSysvar),
|
|
94
|
+
...remainingAccounts,
|
|
95
|
+
],
|
|
96
|
+
data: getTransactionBufferCreateInstructionDataEncoder().encode(args),
|
|
97
|
+
programAddress,
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
export function parseTransactionBufferCreateInstruction(instruction) {
|
|
101
|
+
if (instruction.accounts.length < 8) {
|
|
102
|
+
throw new Error("Not enough accounts");
|
|
103
|
+
}
|
|
104
|
+
let accountIndex = 0;
|
|
105
|
+
const getNextAccount = () => {
|
|
106
|
+
const accountMeta = instruction.accounts[accountIndex];
|
|
107
|
+
accountIndex += 1;
|
|
108
|
+
return accountMeta;
|
|
109
|
+
};
|
|
110
|
+
const getNextOptionalAccount = () => {
|
|
111
|
+
const accountMeta = getNextAccount();
|
|
112
|
+
return accountMeta.address === MULTI_WALLET_PROGRAM_ADDRESS
|
|
113
|
+
? undefined
|
|
114
|
+
: accountMeta;
|
|
115
|
+
};
|
|
116
|
+
return {
|
|
117
|
+
programAddress: instruction.programAddress,
|
|
118
|
+
accounts: {
|
|
119
|
+
settings: getNextAccount(),
|
|
120
|
+
payer: getNextAccount(),
|
|
121
|
+
domainConfig: getNextOptionalAccount(),
|
|
122
|
+
transactionBuffer: getNextAccount(),
|
|
123
|
+
creator: getNextOptionalAccount(),
|
|
124
|
+
systemProgram: getNextAccount(),
|
|
125
|
+
instructionsSysvar: getNextAccount(),
|
|
126
|
+
slotHashSysvar: getNextOptionalAccount(),
|
|
127
|
+
},
|
|
128
|
+
data: getTransactionBufferCreateInstructionDataDecoder().decode(instruction.data),
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
//# sourceMappingURL=transactionBufferCreate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transactionBufferCreate.js","sourceRoot":"","sources":["../../../src/generated/instructions/transactionBufferCreate.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { type AccountMeta, type AccountSignerMeta, type Address, type Codec, type Decoder, type Encoder, type Instruction, type InstructionWithAccounts, type InstructionWithData, type Option, type OptionOrNullable, type ReadonlyAccount, type ReadonlySignerAccount, type ReadonlyUint8Array, type TransactionSigner, type WritableAccount } from "@solana/kit";
|
|
2
|
+
import { MULTI_WALLET_PROGRAM_ADDRESS } from "../programs";
|
|
3
|
+
import { type Secp256r1VerifyArgs, type Secp256r1VerifyArgsArgs } from "../types";
|
|
4
|
+
export declare const TRANSACTION_BUFFER_EXECUTE_DISCRIMINATOR: Uint8Array<ArrayBuffer>;
|
|
5
|
+
export declare function getTransactionBufferExecuteDiscriminatorBytes(): ReadonlyUint8Array<ArrayBuffer>;
|
|
6
|
+
export type TransactionBufferExecuteInstruction<TProgram extends string = typeof MULTI_WALLET_PROGRAM_ADDRESS, TAccountSettings extends string | AccountMeta<string> = string, TAccountDomainConfig extends string | AccountMeta<string> = string, TAccountExecutor extends string | AccountMeta<string> = string, TAccountTransactionBuffer extends string | AccountMeta<string> = string, TAccountSlotHashSysvar extends string | AccountMeta<string> = "SysvarS1otHashes111111111111111111111111111", TAccountInstructionsSysvar extends string | AccountMeta<string> = "Sysvar1nstructions1111111111111111111111111", TRemainingAccounts extends readonly AccountMeta<string>[] = []> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[
|
|
7
|
+
TAccountSettings extends string ? WritableAccount<TAccountSettings> : TAccountSettings,
|
|
8
|
+
TAccountDomainConfig extends string ? ReadonlyAccount<TAccountDomainConfig> : TAccountDomainConfig,
|
|
9
|
+
TAccountExecutor extends string ? ReadonlySignerAccount<TAccountExecutor> & AccountSignerMeta<TAccountExecutor> : TAccountExecutor,
|
|
10
|
+
TAccountTransactionBuffer extends string ? WritableAccount<TAccountTransactionBuffer> : TAccountTransactionBuffer,
|
|
11
|
+
TAccountSlotHashSysvar extends string ? ReadonlyAccount<TAccountSlotHashSysvar> : TAccountSlotHashSysvar,
|
|
12
|
+
TAccountInstructionsSysvar extends string ? ReadonlyAccount<TAccountInstructionsSysvar> : TAccountInstructionsSysvar,
|
|
13
|
+
...TRemainingAccounts
|
|
14
|
+
]>;
|
|
15
|
+
export type TransactionBufferExecuteInstructionData = {
|
|
16
|
+
discriminator: ReadonlyUint8Array;
|
|
17
|
+
secp256r1VerifyArgs: Option<Secp256r1VerifyArgs>;
|
|
18
|
+
};
|
|
19
|
+
export type TransactionBufferExecuteInstructionDataArgs = {
|
|
20
|
+
secp256r1VerifyArgs: OptionOrNullable<Secp256r1VerifyArgsArgs>;
|
|
21
|
+
};
|
|
22
|
+
export declare function getTransactionBufferExecuteInstructionDataEncoder(): Encoder<TransactionBufferExecuteInstructionDataArgs>;
|
|
23
|
+
export declare function getTransactionBufferExecuteInstructionDataDecoder(): Decoder<TransactionBufferExecuteInstructionData>;
|
|
24
|
+
export declare function getTransactionBufferExecuteInstructionDataCodec(): Codec<TransactionBufferExecuteInstructionDataArgs, TransactionBufferExecuteInstructionData>;
|
|
25
|
+
export type TransactionBufferExecuteInstructionExtraArgs = {
|
|
26
|
+
remainingAccounts: Array<{
|
|
27
|
+
address: Address;
|
|
28
|
+
role: number;
|
|
29
|
+
}>;
|
|
30
|
+
};
|
|
31
|
+
export type TransactionBufferExecuteInput<TAccountSettings extends string = string, TAccountDomainConfig extends string = string, TAccountExecutor extends string = string, TAccountTransactionBuffer extends string = string, TAccountSlotHashSysvar extends string = string, TAccountInstructionsSysvar extends string = string> = {
|
|
32
|
+
settings: Address<TAccountSettings>;
|
|
33
|
+
domainConfig?: Address<TAccountDomainConfig>;
|
|
34
|
+
executor?: TransactionSigner<TAccountExecutor>;
|
|
35
|
+
transactionBuffer: Address<TAccountTransactionBuffer>;
|
|
36
|
+
slotHashSysvar?: Address<TAccountSlotHashSysvar>;
|
|
37
|
+
instructionsSysvar?: Address<TAccountInstructionsSysvar>;
|
|
38
|
+
secp256r1VerifyArgs: TransactionBufferExecuteInstructionDataArgs["secp256r1VerifyArgs"];
|
|
39
|
+
remainingAccounts: TransactionBufferExecuteInstructionExtraArgs["remainingAccounts"];
|
|
40
|
+
};
|
|
41
|
+
export declare function getTransactionBufferExecuteInstruction<TAccountSettings extends string, TAccountDomainConfig extends string, TAccountExecutor extends string, TAccountTransactionBuffer extends string, TAccountSlotHashSysvar extends string, TAccountInstructionsSysvar extends string, TProgramAddress extends Address = typeof MULTI_WALLET_PROGRAM_ADDRESS>(input: TransactionBufferExecuteInput<TAccountSettings, TAccountDomainConfig, TAccountExecutor, TAccountTransactionBuffer, TAccountSlotHashSysvar, TAccountInstructionsSysvar>, config?: {
|
|
42
|
+
programAddress?: TProgramAddress;
|
|
43
|
+
}): TransactionBufferExecuteInstruction<TProgramAddress, TAccountSettings, TAccountDomainConfig, TAccountExecutor, TAccountTransactionBuffer, TAccountSlotHashSysvar, TAccountInstructionsSysvar>;
|
|
44
|
+
export type ParsedTransactionBufferExecuteInstruction<TProgram extends string = typeof MULTI_WALLET_PROGRAM_ADDRESS, TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[]> = {
|
|
45
|
+
programAddress: Address<TProgram>;
|
|
46
|
+
accounts: {
|
|
47
|
+
settings: TAccountMetas[0];
|
|
48
|
+
domainConfig?: TAccountMetas[1] | undefined;
|
|
49
|
+
executor?: TAccountMetas[2] | undefined;
|
|
50
|
+
transactionBuffer: TAccountMetas[3];
|
|
51
|
+
slotHashSysvar?: TAccountMetas[4] | undefined;
|
|
52
|
+
instructionsSysvar?: TAccountMetas[5] | undefined;
|
|
53
|
+
};
|
|
54
|
+
data: TransactionBufferExecuteInstructionData;
|
|
55
|
+
};
|
|
56
|
+
export declare function parseTransactionBufferExecuteInstruction<TProgram extends string, TAccountMetas extends readonly AccountMeta[]>(instruction: Instruction<TProgram> & InstructionWithAccounts<TAccountMetas> & InstructionWithData<ReadonlyUint8Array>): ParsedTransactionBufferExecuteInstruction<TProgram, TAccountMetas>;
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import { combineCodec, fixDecoderSize, fixEncoderSize, getBytesDecoder, getBytesEncoder, getOptionDecoder, getOptionEncoder, getStructDecoder, getStructEncoder, transformEncoder, } from "@solana/kit";
|
|
2
|
+
import { parseRemainingAccounts } from "../../hooked";
|
|
3
|
+
import { MULTI_WALLET_PROGRAM_ADDRESS } from "../programs";
|
|
4
|
+
import { getAccountMetaFactory } from "../shared";
|
|
5
|
+
import { getSecp256r1VerifyArgsDecoder, getSecp256r1VerifyArgsEncoder, } from "../types";
|
|
6
|
+
export const TRANSACTION_BUFFER_EXECUTE_DISCRIMINATOR = new Uint8Array([13]);
|
|
7
|
+
export function getTransactionBufferExecuteDiscriminatorBytes() {
|
|
8
|
+
return fixEncoderSize(getBytesEncoder(), 1).encode(TRANSACTION_BUFFER_EXECUTE_DISCRIMINATOR);
|
|
9
|
+
}
|
|
10
|
+
export function getTransactionBufferExecuteInstructionDataEncoder() {
|
|
11
|
+
return transformEncoder(getStructEncoder([
|
|
12
|
+
["discriminator", fixEncoderSize(getBytesEncoder(), 1)],
|
|
13
|
+
[
|
|
14
|
+
"secp256r1VerifyArgs",
|
|
15
|
+
getOptionEncoder(getSecp256r1VerifyArgsEncoder()),
|
|
16
|
+
],
|
|
17
|
+
]), (value) => ({
|
|
18
|
+
...value,
|
|
19
|
+
discriminator: TRANSACTION_BUFFER_EXECUTE_DISCRIMINATOR,
|
|
20
|
+
}));
|
|
21
|
+
}
|
|
22
|
+
export function getTransactionBufferExecuteInstructionDataDecoder() {
|
|
23
|
+
return getStructDecoder([
|
|
24
|
+
["discriminator", fixDecoderSize(getBytesDecoder(), 1)],
|
|
25
|
+
["secp256r1VerifyArgs", getOptionDecoder(getSecp256r1VerifyArgsDecoder())],
|
|
26
|
+
]);
|
|
27
|
+
}
|
|
28
|
+
export function getTransactionBufferExecuteInstructionDataCodec() {
|
|
29
|
+
return combineCodec(getTransactionBufferExecuteInstructionDataEncoder(), getTransactionBufferExecuteInstructionDataDecoder());
|
|
30
|
+
}
|
|
31
|
+
export function getTransactionBufferExecuteInstruction(input, config) {
|
|
32
|
+
const programAddress = config?.programAddress ?? MULTI_WALLET_PROGRAM_ADDRESS;
|
|
33
|
+
const originalAccounts = {
|
|
34
|
+
settings: { value: input.settings ?? null, isWritable: true },
|
|
35
|
+
domainConfig: { value: input.domainConfig ?? null, isWritable: false },
|
|
36
|
+
executor: { value: input.executor ?? null, isWritable: false },
|
|
37
|
+
transactionBuffer: {
|
|
38
|
+
value: input.transactionBuffer ?? null,
|
|
39
|
+
isWritable: true,
|
|
40
|
+
},
|
|
41
|
+
slotHashSysvar: { value: input.slotHashSysvar ?? null, isWritable: false },
|
|
42
|
+
instructionsSysvar: {
|
|
43
|
+
value: input.instructionsSysvar ?? null,
|
|
44
|
+
isWritable: false,
|
|
45
|
+
},
|
|
46
|
+
};
|
|
47
|
+
const accounts = originalAccounts;
|
|
48
|
+
const args = { ...input };
|
|
49
|
+
const resolverScope = { programAddress, accounts, args };
|
|
50
|
+
if (!accounts.slotHashSysvar.value) {
|
|
51
|
+
accounts.slotHashSysvar.value =
|
|
52
|
+
"SysvarS1otHashes111111111111111111111111111";
|
|
53
|
+
}
|
|
54
|
+
if (!accounts.instructionsSysvar.value) {
|
|
55
|
+
accounts.instructionsSysvar.value =
|
|
56
|
+
"Sysvar1nstructions1111111111111111111111111";
|
|
57
|
+
}
|
|
58
|
+
const remainingAccounts = parseRemainingAccounts(resolverScope);
|
|
59
|
+
const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
|
|
60
|
+
return Object.freeze({
|
|
61
|
+
accounts: [
|
|
62
|
+
getAccountMeta(accounts.settings),
|
|
63
|
+
getAccountMeta(accounts.domainConfig),
|
|
64
|
+
getAccountMeta(accounts.executor),
|
|
65
|
+
getAccountMeta(accounts.transactionBuffer),
|
|
66
|
+
getAccountMeta(accounts.slotHashSysvar),
|
|
67
|
+
getAccountMeta(accounts.instructionsSysvar),
|
|
68
|
+
...remainingAccounts,
|
|
69
|
+
],
|
|
70
|
+
data: getTransactionBufferExecuteInstructionDataEncoder().encode(args),
|
|
71
|
+
programAddress,
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
export function parseTransactionBufferExecuteInstruction(instruction) {
|
|
75
|
+
if (instruction.accounts.length < 6) {
|
|
76
|
+
throw new Error("Not enough accounts");
|
|
77
|
+
}
|
|
78
|
+
let accountIndex = 0;
|
|
79
|
+
const getNextAccount = () => {
|
|
80
|
+
const accountMeta = instruction.accounts[accountIndex];
|
|
81
|
+
accountIndex += 1;
|
|
82
|
+
return accountMeta;
|
|
83
|
+
};
|
|
84
|
+
const getNextOptionalAccount = () => {
|
|
85
|
+
const accountMeta = getNextAccount();
|
|
86
|
+
return accountMeta.address === MULTI_WALLET_PROGRAM_ADDRESS
|
|
87
|
+
? undefined
|
|
88
|
+
: accountMeta;
|
|
89
|
+
};
|
|
90
|
+
return {
|
|
91
|
+
programAddress: instruction.programAddress,
|
|
92
|
+
accounts: {
|
|
93
|
+
settings: getNextAccount(),
|
|
94
|
+
domainConfig: getNextOptionalAccount(),
|
|
95
|
+
executor: getNextOptionalAccount(),
|
|
96
|
+
transactionBuffer: getNextAccount(),
|
|
97
|
+
slotHashSysvar: getNextOptionalAccount(),
|
|
98
|
+
instructionsSysvar: getNextOptionalAccount(),
|
|
99
|
+
},
|
|
100
|
+
data: getTransactionBufferExecuteInstructionDataDecoder().decode(instruction.data),
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
//# sourceMappingURL=transactionBufferExecute.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transactionBufferExecute.js","sourceRoot":"","sources":["../../../src/generated/instructions/transactionBufferExecute.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { type AccountMeta, type Address, type Codec, type Decoder, type Encoder, type Instruction, type InstructionWithAccounts, type InstructionWithData, type ReadonlyAccount, type ReadonlyUint8Array, type WritableAccount } from "@solana/kit";
|
|
2
|
+
import { MULTI_WALLET_PROGRAM_ADDRESS } from "../programs";
|
|
3
|
+
export declare const TRANSACTION_BUFFER_EXTEND_DISCRIMINATOR: Uint8Array<ArrayBuffer>;
|
|
4
|
+
export declare function getTransactionBufferExtendDiscriminatorBytes(): ReadonlyUint8Array<ArrayBuffer>;
|
|
5
|
+
export type TransactionBufferExtendInstruction<TProgram extends string = typeof MULTI_WALLET_PROGRAM_ADDRESS, TAccountSettings extends string | AccountMeta<string> = string, TAccountTransactionBuffer extends string | AccountMeta<string> = string, TRemainingAccounts extends readonly AccountMeta<string>[] = []> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[
|
|
6
|
+
TAccountSettings extends string ? ReadonlyAccount<TAccountSettings> : TAccountSettings,
|
|
7
|
+
TAccountTransactionBuffer extends string ? WritableAccount<TAccountTransactionBuffer> : TAccountTransactionBuffer,
|
|
8
|
+
...TRemainingAccounts
|
|
9
|
+
]>;
|
|
10
|
+
export type TransactionBufferExtendInstructionData = {
|
|
11
|
+
discriminator: ReadonlyUint8Array;
|
|
12
|
+
buffer: ReadonlyUint8Array;
|
|
13
|
+
};
|
|
14
|
+
export type TransactionBufferExtendInstructionDataArgs = {
|
|
15
|
+
buffer: ReadonlyUint8Array;
|
|
16
|
+
};
|
|
17
|
+
export declare function getTransactionBufferExtendInstructionDataEncoder(): Encoder<TransactionBufferExtendInstructionDataArgs>;
|
|
18
|
+
export declare function getTransactionBufferExtendInstructionDataDecoder(): Decoder<TransactionBufferExtendInstructionData>;
|
|
19
|
+
export declare function getTransactionBufferExtendInstructionDataCodec(): Codec<TransactionBufferExtendInstructionDataArgs, TransactionBufferExtendInstructionData>;
|
|
20
|
+
export type TransactionBufferExtendInstructionExtraArgs = {
|
|
21
|
+
remainingAccounts: Array<{
|
|
22
|
+
address: Address;
|
|
23
|
+
role: number;
|
|
24
|
+
}>;
|
|
25
|
+
};
|
|
26
|
+
export type TransactionBufferExtendInput<TAccountSettings extends string = string, TAccountTransactionBuffer extends string = string> = {
|
|
27
|
+
settings: Address<TAccountSettings>;
|
|
28
|
+
transactionBuffer: Address<TAccountTransactionBuffer>;
|
|
29
|
+
buffer: TransactionBufferExtendInstructionDataArgs["buffer"];
|
|
30
|
+
remainingAccounts: TransactionBufferExtendInstructionExtraArgs["remainingAccounts"];
|
|
31
|
+
};
|
|
32
|
+
export declare function getTransactionBufferExtendInstruction<TAccountSettings extends string, TAccountTransactionBuffer extends string, TProgramAddress extends Address = typeof MULTI_WALLET_PROGRAM_ADDRESS>(input: TransactionBufferExtendInput<TAccountSettings, TAccountTransactionBuffer>, config?: {
|
|
33
|
+
programAddress?: TProgramAddress;
|
|
34
|
+
}): TransactionBufferExtendInstruction<TProgramAddress, TAccountSettings, TAccountTransactionBuffer>;
|
|
35
|
+
export type ParsedTransactionBufferExtendInstruction<TProgram extends string = typeof MULTI_WALLET_PROGRAM_ADDRESS, TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[]> = {
|
|
36
|
+
programAddress: Address<TProgram>;
|
|
37
|
+
accounts: {
|
|
38
|
+
settings: TAccountMetas[0];
|
|
39
|
+
transactionBuffer: TAccountMetas[1];
|
|
40
|
+
};
|
|
41
|
+
data: TransactionBufferExtendInstructionData;
|
|
42
|
+
};
|
|
43
|
+
export declare function parseTransactionBufferExtendInstruction<TProgram extends string, TAccountMetas extends readonly AccountMeta[]>(instruction: Instruction<TProgram> & InstructionWithAccounts<TAccountMetas> & InstructionWithData<ReadonlyUint8Array>): ParsedTransactionBufferExtendInstruction<TProgram, TAccountMetas>;
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { addDecoderSizePrefix, addEncoderSizePrefix, combineCodec, fixDecoderSize, fixEncoderSize, getBytesDecoder, getBytesEncoder, getStructDecoder, getStructEncoder, getU32Decoder, getU32Encoder, transformEncoder, } from "@solana/kit";
|
|
2
|
+
import { parseRemainingAccounts } from "../../hooked";
|
|
3
|
+
import { MULTI_WALLET_PROGRAM_ADDRESS } from "../programs";
|
|
4
|
+
import { getAccountMetaFactory } from "../shared";
|
|
5
|
+
export const TRANSACTION_BUFFER_EXTEND_DISCRIMINATOR = new Uint8Array([11]);
|
|
6
|
+
export function getTransactionBufferExtendDiscriminatorBytes() {
|
|
7
|
+
return fixEncoderSize(getBytesEncoder(), 1).encode(TRANSACTION_BUFFER_EXTEND_DISCRIMINATOR);
|
|
8
|
+
}
|
|
9
|
+
export function getTransactionBufferExtendInstructionDataEncoder() {
|
|
10
|
+
return transformEncoder(getStructEncoder([
|
|
11
|
+
["discriminator", fixEncoderSize(getBytesEncoder(), 1)],
|
|
12
|
+
["buffer", addEncoderSizePrefix(getBytesEncoder(), getU32Encoder())],
|
|
13
|
+
]), (value) => ({
|
|
14
|
+
...value,
|
|
15
|
+
discriminator: TRANSACTION_BUFFER_EXTEND_DISCRIMINATOR,
|
|
16
|
+
}));
|
|
17
|
+
}
|
|
18
|
+
export function getTransactionBufferExtendInstructionDataDecoder() {
|
|
19
|
+
return getStructDecoder([
|
|
20
|
+
["discriminator", fixDecoderSize(getBytesDecoder(), 1)],
|
|
21
|
+
["buffer", addDecoderSizePrefix(getBytesDecoder(), getU32Decoder())],
|
|
22
|
+
]);
|
|
23
|
+
}
|
|
24
|
+
export function getTransactionBufferExtendInstructionDataCodec() {
|
|
25
|
+
return combineCodec(getTransactionBufferExtendInstructionDataEncoder(), getTransactionBufferExtendInstructionDataDecoder());
|
|
26
|
+
}
|
|
27
|
+
export function getTransactionBufferExtendInstruction(input, config) {
|
|
28
|
+
const programAddress = config?.programAddress ?? MULTI_WALLET_PROGRAM_ADDRESS;
|
|
29
|
+
const originalAccounts = {
|
|
30
|
+
settings: { value: input.settings ?? null, isWritable: false },
|
|
31
|
+
transactionBuffer: {
|
|
32
|
+
value: input.transactionBuffer ?? null,
|
|
33
|
+
isWritable: true,
|
|
34
|
+
},
|
|
35
|
+
};
|
|
36
|
+
const accounts = originalAccounts;
|
|
37
|
+
const args = { ...input };
|
|
38
|
+
const resolverScope = { programAddress, accounts, args };
|
|
39
|
+
const remainingAccounts = parseRemainingAccounts(resolverScope);
|
|
40
|
+
const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
|
|
41
|
+
return Object.freeze({
|
|
42
|
+
accounts: [
|
|
43
|
+
getAccountMeta(accounts.settings),
|
|
44
|
+
getAccountMeta(accounts.transactionBuffer),
|
|
45
|
+
...remainingAccounts,
|
|
46
|
+
],
|
|
47
|
+
data: getTransactionBufferExtendInstructionDataEncoder().encode(args),
|
|
48
|
+
programAddress,
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
export function parseTransactionBufferExtendInstruction(instruction) {
|
|
52
|
+
if (instruction.accounts.length < 2) {
|
|
53
|
+
throw new Error("Not enough accounts");
|
|
54
|
+
}
|
|
55
|
+
let accountIndex = 0;
|
|
56
|
+
const getNextAccount = () => {
|
|
57
|
+
const accountMeta = instruction.accounts[accountIndex];
|
|
58
|
+
accountIndex += 1;
|
|
59
|
+
return accountMeta;
|
|
60
|
+
};
|
|
61
|
+
return {
|
|
62
|
+
programAddress: instruction.programAddress,
|
|
63
|
+
accounts: {
|
|
64
|
+
settings: getNextAccount(),
|
|
65
|
+
transactionBuffer: getNextAccount(),
|
|
66
|
+
},
|
|
67
|
+
data: getTransactionBufferExtendInstructionDataDecoder().decode(instruction.data),
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=transactionBufferExtend.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transactionBufferExtend.js","sourceRoot":"","sources":["../../../src/generated/instructions/transactionBufferExtend.ts"],"names":[],"mappings":"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"}
|