@macalinao/clients-mpl-bubblegum 0.3.1 → 0.3.2
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/generated/accounts/index.d.ts +2 -1
- package/dist/generated/accounts/treeConfig.d.ts +22 -7
- package/dist/generated/accounts/treeConfig.d.ts.map +1 -1
- package/dist/generated/accounts/treeConfig.js +7 -0
- package/dist/generated/accounts/treeConfig.js.map +1 -1
- package/dist/generated/accounts/voucher.d.ts +14 -7
- package/dist/generated/accounts/voucher.d.ts.map +1 -1
- package/dist/generated/accounts/voucher.js +7 -0
- package/dist/generated/accounts/voucher.js.map +1 -1
- package/dist/generated/errors/bubblegum.d.ts +0 -1
- package/dist/generated/errors/bubblegum.d.ts.map +1 -1
- package/dist/generated/errors/bubblegum.js +66 -59
- package/dist/generated/errors/bubblegum.js.map +1 -1
- package/dist/generated/errors/index.d.ts +2 -1
- package/dist/generated/index.d.ts +8 -1
- package/dist/generated/instructions/burn.d.ts +141 -17
- package/dist/generated/instructions/burn.d.ts.map +1 -1
- package/dist/generated/instructions/burn.js +23 -0
- package/dist/generated/instructions/burn.js.map +1 -1
- package/dist/generated/instructions/burnV2.d.ts +179 -31
- package/dist/generated/instructions/burnV2.d.ts.map +1 -1
- package/dist/generated/instructions/burnV2.js +21 -0
- package/dist/generated/instructions/burnV2.js.map +1 -1
- package/dist/generated/instructions/cancelRedeem.d.ts +99 -13
- package/dist/generated/instructions/cancelRedeem.d.ts.map +1 -1
- package/dist/generated/instructions/cancelRedeem.js +19 -0
- package/dist/generated/instructions/cancelRedeem.js.map +1 -1
- package/dist/generated/instructions/closeTreeV2.d.ts +85 -19
- package/dist/generated/instructions/closeTreeV2.d.ts.map +1 -1
- package/dist/generated/instructions/closeTreeV2.js +21 -0
- package/dist/generated/instructions/closeTreeV2.js.map +1 -1
- package/dist/generated/instructions/collectV2.d.ts +20 -7
- package/dist/generated/instructions/collectV2.d.ts.map +1 -1
- package/dist/generated/instructions/collectV2.js +10 -0
- package/dist/generated/instructions/collectV2.js.map +1 -1
- package/dist/generated/instructions/compress.d.ts +119 -9
- package/dist/generated/instructions/compress.d.ts.map +1 -1
- package/dist/generated/instructions/compress.js +21 -0
- package/dist/generated/instructions/compress.js.map +1 -1
- package/dist/generated/instructions/createTree.d.ts +117 -11
- package/dist/generated/instructions/createTree.d.ts.map +1 -1
- package/dist/generated/instructions/createTree.js +23 -0
- package/dist/generated/instructions/createTree.js.map +1 -1
- package/dist/generated/instructions/createTreeV2.d.ts +109 -14
- package/dist/generated/instructions/createTreeV2.d.ts.map +1 -1
- package/dist/generated/instructions/createTreeV2.js +23 -0
- package/dist/generated/instructions/createTreeV2.js.map +1 -1
- package/dist/generated/instructions/decompressV1.d.ts +106 -11
- package/dist/generated/instructions/decompressV1.d.ts.map +1 -1
- package/dist/generated/instructions/decompressV1.js +25 -0
- package/dist/generated/instructions/decompressV1.js.map +1 -1
- package/dist/generated/instructions/delegate.d.ts +140 -17
- package/dist/generated/instructions/delegate.d.ts.map +1 -1
- package/dist/generated/instructions/delegate.js +19 -0
- package/dist/generated/instructions/delegate.js.map +1 -1
- package/dist/generated/instructions/delegateAndFreezeV2.d.ts +171 -27
- package/dist/generated/instructions/delegateAndFreezeV2.d.ts.map +1 -1
- package/dist/generated/instructions/delegateAndFreezeV2.js +17 -0
- package/dist/generated/instructions/delegateAndFreezeV2.js.map +1 -1
- package/dist/generated/instructions/delegateV2.d.ts +169 -27
- package/dist/generated/instructions/delegateV2.d.ts.map +1 -1
- package/dist/generated/instructions/delegateV2.js +15 -0
- package/dist/generated/instructions/delegateV2.js.map +1 -1
- package/dist/generated/instructions/freezeV2.d.ts +174 -28
- package/dist/generated/instructions/freezeV2.d.ts.map +1 -1
- package/dist/generated/instructions/freezeV2.js +23 -0
- package/dist/generated/instructions/freezeV2.js.map +1 -1
- package/dist/generated/instructions/index.d.ts +2 -1
- package/dist/generated/instructions/mintToCollectionV1.d.ts +171 -20
- package/dist/generated/instructions/mintToCollectionV1.d.ts.map +1 -1
- package/dist/generated/instructions/mintToCollectionV1.js +23 -0
- package/dist/generated/instructions/mintToCollectionV1.js.map +1 -1
- package/dist/generated/instructions/mintV1.d.ts +109 -11
- package/dist/generated/instructions/mintV1.d.ts.map +1 -1
- package/dist/generated/instructions/mintV1.js +21 -0
- package/dist/generated/instructions/mintV1.js.map +1 -1
- package/dist/generated/instructions/mintV2.d.ts +163 -17
- package/dist/generated/instructions/mintV2.d.ts.map +1 -1
- package/dist/generated/instructions/mintV2.js +45 -0
- package/dist/generated/instructions/mintV2.js.map +1 -1
- package/dist/generated/instructions/redeem.d.ts +153 -17
- package/dist/generated/instructions/redeem.d.ts.map +1 -1
- package/dist/generated/instructions/redeem.js +23 -0
- package/dist/generated/instructions/redeem.js.map +1 -1
- package/dist/generated/instructions/setAndVerifyCollection.d.ts +222 -38
- package/dist/generated/instructions/setAndVerifyCollection.d.ts.map +1 -1
- package/dist/generated/instructions/setAndVerifyCollection.js +21 -0
- package/dist/generated/instructions/setAndVerifyCollection.js.map +1 -1
- package/dist/generated/instructions/setCollectionV2.d.ts +186 -39
- package/dist/generated/instructions/setCollectionV2.d.ts.map +1 -1
- package/dist/generated/instructions/setCollectionV2.js +21 -0
- package/dist/generated/instructions/setCollectionV2.js.map +1 -1
- package/dist/generated/instructions/setDecompressableState.d.ts +40 -9
- package/dist/generated/instructions/setDecompressableState.d.ts.map +1 -1
- package/dist/generated/instructions/setDecompressableState.js +13 -0
- package/dist/generated/instructions/setDecompressableState.js.map +1 -1
- package/dist/generated/instructions/setDecompressibleState.d.ts +41 -9
- package/dist/generated/instructions/setDecompressibleState.d.ts.map +1 -1
- package/dist/generated/instructions/setDecompressibleState.js +14 -0
- package/dist/generated/instructions/setDecompressibleState.js.map +1 -1
- package/dist/generated/instructions/setNonTransferableV2.d.ts +166 -31
- package/dist/generated/instructions/setNonTransferableV2.d.ts.map +1 -1
- package/dist/generated/instructions/setNonTransferableV2.js +23 -0
- package/dist/generated/instructions/setNonTransferableV2.js.map +1 -1
- package/dist/generated/instructions/setTreeDelegate.d.ts +65 -9
- package/dist/generated/instructions/setTreeDelegate.d.ts.map +1 -1
- package/dist/generated/instructions/setTreeDelegate.js +21 -0
- package/dist/generated/instructions/setTreeDelegate.js.map +1 -1
- package/dist/generated/instructions/thawAndRevokeV2.d.ts +158 -24
- package/dist/generated/instructions/thawAndRevokeV2.d.ts.map +1 -1
- package/dist/generated/instructions/thawAndRevokeV2.js +17 -0
- package/dist/generated/instructions/thawAndRevokeV2.js.map +1 -1
- package/dist/generated/instructions/thawV2.d.ts +166 -28
- package/dist/generated/instructions/thawV2.d.ts.map +1 -1
- package/dist/generated/instructions/thawV2.js +15 -0
- package/dist/generated/instructions/thawV2.js.map +1 -1
- package/dist/generated/instructions/transfer.d.ts +140 -17
- package/dist/generated/instructions/transfer.d.ts.map +1 -1
- package/dist/generated/instructions/transfer.js +19 -0
- package/dist/generated/instructions/transfer.js.map +1 -1
- package/dist/generated/instructions/transferV2.d.ts +167 -31
- package/dist/generated/instructions/transferV2.d.ts.map +1 -1
- package/dist/generated/instructions/transferV2.js +21 -0
- package/dist/generated/instructions/transferV2.js.map +1 -1
- package/dist/generated/instructions/unverifyCollection.d.ts +215 -38
- package/dist/generated/instructions/unverifyCollection.d.ts.map +1 -1
- package/dist/generated/instructions/unverifyCollection.js +19 -0
- package/dist/generated/instructions/unverifyCollection.js.map +1 -1
- package/dist/generated/instructions/unverifyCreator.d.ts +161 -17
- package/dist/generated/instructions/unverifyCreator.d.ts.map +1 -1
- package/dist/generated/instructions/unverifyCreator.js +19 -0
- package/dist/generated/instructions/unverifyCreator.js.map +1 -1
- package/dist/generated/instructions/unverifyCreatorV2.d.ts +143 -21
- package/dist/generated/instructions/unverifyCreatorV2.d.ts.map +1 -1
- package/dist/generated/instructions/unverifyCreatorV2.js +19 -0
- package/dist/generated/instructions/unverifyCreatorV2.js.map +1 -1
- package/dist/generated/instructions/updateAssetDataV2.d.ts +180 -28
- package/dist/generated/instructions/updateAssetDataV2.d.ts.map +1 -1
- package/dist/generated/instructions/updateAssetDataV2.js +21 -0
- package/dist/generated/instructions/updateAssetDataV2.js.map +1 -1
- package/dist/generated/instructions/updateMetadata.d.ts +183 -28
- package/dist/generated/instructions/updateMetadata.d.ts.map +1 -1
- package/dist/generated/instructions/updateMetadata.js +21 -0
- package/dist/generated/instructions/updateMetadata.js.map +1 -1
- package/dist/generated/instructions/updateMetadataV2.d.ts +162 -27
- package/dist/generated/instructions/updateMetadataV2.d.ts.map +1 -1
- package/dist/generated/instructions/updateMetadataV2.js +19 -0
- package/dist/generated/instructions/updateMetadataV2.js.map +1 -1
- package/dist/generated/instructions/verifyCollection.d.ts +215 -38
- package/dist/generated/instructions/verifyCollection.d.ts.map +1 -1
- package/dist/generated/instructions/verifyCollection.js +19 -0
- package/dist/generated/instructions/verifyCollection.js.map +1 -1
- package/dist/generated/instructions/verifyCreator.d.ts +161 -17
- package/dist/generated/instructions/verifyCreator.d.ts.map +1 -1
- package/dist/generated/instructions/verifyCreator.js +19 -0
- package/dist/generated/instructions/verifyCreator.js.map +1 -1
- package/dist/generated/instructions/verifyCreatorV2.d.ts +143 -21
- package/dist/generated/instructions/verifyCreatorV2.d.ts.map +1 -1
- package/dist/generated/instructions/verifyCreatorV2.js +19 -0
- package/dist/generated/instructions/verifyCreatorV2.js.map +1 -1
- package/dist/generated/pdas/assetId.d.ts +2 -3
- package/dist/generated/pdas/assetId.d.ts.map +1 -1
- package/dist/generated/pdas/assetId.js +7 -0
- package/dist/generated/pdas/assetId.js.map +1 -1
- package/dist/generated/pdas/bubblegumSigner.d.ts +0 -1
- package/dist/generated/pdas/bubblegumSigner.d.ts.map +1 -1
- package/dist/generated/pdas/bubblegumSigner.js +7 -0
- package/dist/generated/pdas/bubblegumSigner.js.map +1 -1
- package/dist/generated/pdas/index.d.ts +2 -1
- package/dist/generated/pdas/masterEdition.d.ts +2 -3
- package/dist/generated/pdas/masterEdition.d.ts.map +1 -1
- package/dist/generated/pdas/masterEdition.js +7 -0
- package/dist/generated/pdas/masterEdition.js.map +1 -1
- package/dist/generated/pdas/metadata.d.ts +2 -3
- package/dist/generated/pdas/metadata.d.ts.map +1 -1
- package/dist/generated/pdas/metadata.js +7 -0
- package/dist/generated/pdas/metadata.js.map +1 -1
- package/dist/generated/pdas/mintAuthority.d.ts +2 -3
- package/dist/generated/pdas/mintAuthority.d.ts.map +1 -1
- package/dist/generated/pdas/mintAuthority.js +7 -0
- package/dist/generated/pdas/mintAuthority.js.map +1 -1
- package/dist/generated/pdas/treeConfig.d.ts +2 -3
- package/dist/generated/pdas/treeConfig.d.ts.map +1 -1
- package/dist/generated/pdas/treeConfig.js +7 -0
- package/dist/generated/pdas/treeConfig.js.map +1 -1
- package/dist/generated/pdas/voucher.d.ts +2 -3
- package/dist/generated/pdas/voucher.d.ts.map +1 -1
- package/dist/generated/pdas/voucher.js +7 -0
- package/dist/generated/pdas/voucher.js.map +1 -1
- package/dist/generated/programs/bubblegum.d.ts +17 -12
- package/dist/generated/programs/bubblegum.d.ts.map +1 -1
- package/dist/generated/programs/bubblegum.js +11 -1
- package/dist/generated/programs/bubblegum.js.map +1 -1
- package/dist/generated/programs/index.d.ts +2 -1
- package/dist/generated/programs/mplTokenMetadata.d.ts +8 -8
- package/dist/generated/programs/mplTokenMetadata.d.ts.map +1 -1
- package/dist/generated/programs/mplTokenMetadata.js +7 -0
- package/dist/generated/programs/mplTokenMetadata.js.map +1 -1
- package/dist/generated/types/assetDataSchema.d.ts +4 -1
- package/dist/generated/types/assetDataSchema.d.ts.map +1 -1
- package/dist/generated/types/assetDataSchema.js +11 -0
- package/dist/generated/types/assetDataSchema.js.map +1 -1
- package/dist/generated/types/bubblegumEventType.d.ts +4 -1
- package/dist/generated/types/bubblegumEventType.d.ts.map +1 -1
- package/dist/generated/types/bubblegumEventType.js +11 -0
- package/dist/generated/types/bubblegumEventType.js.map +1 -1
- package/dist/generated/types/collection.d.ts +9 -3
- package/dist/generated/types/collection.d.ts.map +1 -1
- package/dist/generated/types/collection.js +7 -0
- package/dist/generated/types/collection.js.map +1 -1
- package/dist/generated/types/creator.d.ts +9 -7
- package/dist/generated/types/creator.d.ts.map +1 -1
- package/dist/generated/types/creator.js +7 -0
- package/dist/generated/types/creator.js.map +1 -1
- package/dist/generated/types/decompressibleState.d.ts +5 -1
- package/dist/generated/types/decompressibleState.d.ts.map +1 -1
- package/dist/generated/types/decompressibleState.js +12 -0
- package/dist/generated/types/decompressibleState.js.map +1 -1
- package/dist/generated/types/index.d.ts +2 -1
- package/dist/generated/types/instructionName.d.ts +4 -1
- package/dist/generated/types/instructionName.d.ts.map +1 -1
- package/dist/generated/types/instructionName.js +11 -0
- package/dist/generated/types/instructionName.js.map +1 -1
- package/dist/generated/types/leafSchema.d.ts +51 -13
- package/dist/generated/types/leafSchema.d.ts.map +1 -1
- package/dist/generated/types/leafSchema.js +7 -0
- package/dist/generated/types/leafSchema.js.map +1 -1
- package/dist/generated/types/metadataArgs.d.ts +19 -7
- package/dist/generated/types/metadataArgs.d.ts.map +1 -1
- package/dist/generated/types/metadataArgs.js +7 -0
- package/dist/generated/types/metadataArgs.js.map +1 -1
- package/dist/generated/types/metadataArgsV2.d.ts +14 -7
- package/dist/generated/types/metadataArgsV2.d.ts.map +1 -1
- package/dist/generated/types/metadataArgsV2.js +7 -0
- package/dist/generated/types/metadataArgsV2.js.map +1 -1
- package/dist/generated/types/tokenProgramVersion.d.ts +1 -1
- package/dist/generated/types/tokenProgramVersion.d.ts.map +1 -1
- package/dist/generated/types/tokenProgramVersion.js +8 -0
- package/dist/generated/types/tokenProgramVersion.js.map +1 -1
- package/dist/generated/types/tokenStandard.d.ts +5 -1
- package/dist/generated/types/tokenStandard.d.ts.map +1 -1
- package/dist/generated/types/tokenStandard.js +12 -0
- package/dist/generated/types/tokenStandard.js.map +1 -1
- package/dist/generated/types/updateArgs.d.ts +26 -7
- package/dist/generated/types/updateArgs.d.ts.map +1 -1
- package/dist/generated/types/updateArgs.js +7 -0
- package/dist/generated/types/updateArgs.js.map +1 -1
- package/dist/generated/types/useMethod.d.ts +1 -1
- package/dist/generated/types/useMethod.d.ts.map +1 -1
- package/dist/generated/types/useMethod.js +8 -0
- package/dist/generated/types/useMethod.js.map +1 -1
- package/dist/generated/types/uses.d.ts +16 -5
- package/dist/generated/types/uses.d.ts.map +1 -1
- package/dist/generated/types/uses.js +7 -0
- package/dist/generated/types/uses.js.map +1 -1
- package/dist/generated/types/version.d.ts +5 -1
- package/dist/generated/types/version.d.ts.map +1 -1
- package/dist/generated/types/version.js +12 -0
- package/dist/generated/types/version.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/package.json +6 -6
- package/src/generated/accounts/treeConfig.ts +36 -27
- package/src/generated/accounts/voucher.ts +30 -23
- package/src/generated/errors/bubblegum.ts +121 -154
- package/src/generated/instructions/burn.ts +157 -35
- package/src/generated/instructions/burnV2.ts +197 -52
- package/src/generated/instructions/cancelRedeem.ts +116 -32
- package/src/generated/instructions/closeTreeV2.ts +96 -35
- package/src/generated/instructions/collectV2.ts +34 -23
- package/src/generated/instructions/compress.ts +136 -30
- package/src/generated/instructions/createTree.ts +137 -33
- package/src/generated/instructions/createTreeV2.ts +128 -36
- package/src/generated/instructions/decompressV1.ts +124 -31
- package/src/generated/instructions/delegate.ts +159 -38
- package/src/generated/instructions/delegateAndFreezeV2.ts +191 -51
- package/src/generated/instructions/delegateV2.ts +189 -51
- package/src/generated/instructions/freezeV2.ts +193 -49
- package/src/generated/instructions/mintToCollectionV1.ts +186 -37
- package/src/generated/instructions/mintV1.ts +127 -31
- package/src/generated/instructions/mintV2.ts +184 -45
- package/src/generated/instructions/redeem.ts +172 -38
- package/src/generated/instructions/setAndVerifyCollection.ts +236 -54
- package/src/generated/instructions/setCollectionV2.ts +202 -58
- package/src/generated/instructions/setDecompressableState.ts +59 -31
- package/src/generated/instructions/setDecompressibleState.ts +60 -31
- package/src/generated/instructions/setNonTransferableV2.ts +184 -52
- package/src/generated/instructions/setTreeDelegate.ts +82 -28
- package/src/generated/instructions/thawAndRevokeV2.ts +179 -48
- package/src/generated/instructions/thawV2.ts +185 -49
- package/src/generated/instructions/transfer.ts +156 -35
- package/src/generated/instructions/transferV2.ts +185 -52
- package/src/generated/instructions/unverifyCollection.ts +229 -54
- package/src/generated/instructions/unverifyCreator.ts +181 -39
- package/src/generated/instructions/unverifyCreatorV2.ts +164 -46
- package/src/generated/instructions/updateAssetDataV2.ts +200 -50
- package/src/generated/instructions/updateMetadata.ts +200 -52
- package/src/generated/instructions/updateMetadataV2.ts +183 -54
- package/src/generated/instructions/verifyCollection.ts +229 -54
- package/src/generated/instructions/verifyCreator.ts +181 -39
- package/src/generated/instructions/verifyCreatorV2.ts +164 -46
- package/src/generated/pdas/assetId.ts +4 -3
- package/src/generated/pdas/bubblegumSigner.ts +6 -2
- package/src/generated/pdas/masterEdition.ts +4 -3
- package/src/generated/pdas/metadata.ts +4 -3
- package/src/generated/pdas/mintAuthority.ts +8 -4
- package/src/generated/pdas/treeConfig.ts +8 -4
- package/src/generated/pdas/voucher.ts +4 -3
- package/src/generated/programs/bubblegum.ts +146 -144
- package/src/generated/programs/mplTokenMetadata.ts +5 -10
- package/src/generated/types/assetDataSchema.ts +14 -8
- package/src/generated/types/bubblegumEventType.ts +13 -7
- package/src/generated/types/collection.ts +13 -8
- package/src/generated/types/creator.ts +11 -10
- package/src/generated/types/decompressibleState.ts +14 -7
- package/src/generated/types/instructionName.ts +46 -40
- package/src/generated/types/leafSchema.ts +59 -22
- package/src/generated/types/metadataArgs.ts +35 -27
- package/src/generated/types/metadataArgsV2.ts +23 -20
- package/src/generated/types/tokenProgramVersion.ts +10 -7
- package/src/generated/types/tokenStandard.ts +16 -9
- package/src/generated/types/updateArgs.ts +36 -15
- package/src/generated/types/useMethod.ts +11 -8
- package/src/generated/types/uses.ts +24 -11
- package/src/generated/types/version.ts +14 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"closeTreeV2.js","names":[],"sources":["../../../src/generated/instructions/closeTreeV2.ts"],"sourcesContent":["/**\n * This code was AUTOGENERATED using the Codama library.\n * Please DO NOT EDIT THIS FILE, instead use visitors\n * to add features, then rerun Codama to update it.\n *\n * @see https://github.com/codama-idl/codama\n */\n\nimport type {\n AccountMeta,\n AccountSignerMeta,\n Address,\n FixedSizeCodec,\n FixedSizeDecoder,\n FixedSizeEncoder,\n Instruction,\n InstructionWithAccounts,\n InstructionWithData,\n ReadonlyAccount,\n ReadonlySignerAccount,\n ReadonlyUint8Array,\n TransactionSigner,\n WritableAccount,\n} from \"@solana/kit\";\nimport type { ResolvedInstructionAccount } from \"@solana/program-client-core\";\nimport {\n combineCodec,\n fixDecoderSize,\n fixEncoderSize,\n getBytesDecoder,\n getBytesEncoder,\n getStructDecoder,\n getStructEncoder,\n SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS,\n SolanaError,\n transformEncoder,\n} from \"@solana/kit\";\nimport {\n getAccountMetaFactory,\n getAddressFromResolvedInstructionAccount,\n} from \"@solana/program-client-core\";\nimport { findTreeConfigPda } from \"../pdas/index.js\";\nimport { BUBBLEGUM_PROGRAM_ADDRESS } from \"../programs/index.js\";\n\nexport const CLOSE_TREE_V2_DISCRIMINATOR: ReadonlyUint8Array = new Uint8Array([\n 45, 172, 6, 94, 28, 90, 157, 70,\n]);\n\nexport function getCloseTreeV2DiscriminatorBytes(): ReadonlyUint8Array {\n return fixEncoderSize(getBytesEncoder(), 8).encode(\n CLOSE_TREE_V2_DISCRIMINATOR,\n );\n}\n\nexport type CloseTreeV2Instruction<\n TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,\n TAccountTreeAuthority extends string | AccountMeta<string> = string,\n TAccountAuthority extends string | AccountMeta<string> = string,\n TAccountMerkleTree extends string | AccountMeta<string> = string,\n TAccountRecipient extends string | AccountMeta<string> = string,\n TAccountCompressionProgram extends string | AccountMeta<string> =\n \"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW\",\n TAccountLogWrapper extends string | AccountMeta<string> =\n \"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3\",\n TAccountSystemProgram extends string | AccountMeta<string> =\n \"11111111111111111111111111111111\",\n TRemainingAccounts extends readonly AccountMeta<string>[] = [],\n> = Instruction<TProgram> &\n InstructionWithData<ReadonlyUint8Array> &\n InstructionWithAccounts<\n [\n TAccountTreeAuthority extends string\n ? WritableAccount<TAccountTreeAuthority>\n : TAccountTreeAuthority,\n TAccountAuthority extends string\n ? ReadonlySignerAccount<TAccountAuthority> &\n AccountSignerMeta<TAccountAuthority>\n : TAccountAuthority,\n TAccountMerkleTree extends string\n ? WritableAccount<TAccountMerkleTree>\n : TAccountMerkleTree,\n TAccountRecipient extends string\n ? WritableAccount<TAccountRecipient>\n : TAccountRecipient,\n TAccountCompressionProgram extends string\n ? ReadonlyAccount<TAccountCompressionProgram>\n : TAccountCompressionProgram,\n TAccountLogWrapper extends string\n ? ReadonlyAccount<TAccountLogWrapper>\n : TAccountLogWrapper,\n TAccountSystemProgram extends string\n ? ReadonlyAccount<TAccountSystemProgram>\n : TAccountSystemProgram,\n ...TRemainingAccounts,\n ]\n >;\n\nexport interface CloseTreeV2InstructionData {\n discriminator: ReadonlyUint8Array;\n}\n\nexport type CloseTreeV2InstructionDataArgs = {};\n\nexport function getCloseTreeV2InstructionDataEncoder(): FixedSizeEncoder<CloseTreeV2InstructionDataArgs> {\n return transformEncoder(\n getStructEncoder([[\"discriminator\", fixEncoderSize(getBytesEncoder(), 8)]]),\n (value) => ({ ...value, discriminator: CLOSE_TREE_V2_DISCRIMINATOR }),\n );\n}\n\nexport function getCloseTreeV2InstructionDataDecoder(): FixedSizeDecoder<CloseTreeV2InstructionData> {\n return getStructDecoder([\n [\"discriminator\", fixDecoderSize(getBytesDecoder(), 8)],\n ]);\n}\n\nexport function getCloseTreeV2InstructionDataCodec(): FixedSizeCodec<\n CloseTreeV2InstructionDataArgs,\n CloseTreeV2InstructionData\n> {\n return combineCodec(\n getCloseTreeV2InstructionDataEncoder(),\n getCloseTreeV2InstructionDataDecoder(),\n );\n}\n\nexport interface CloseTreeV2AsyncInput<\n TAccountTreeAuthority extends string = string,\n TAccountAuthority extends string = string,\n TAccountMerkleTree extends string = string,\n TAccountRecipient extends string = string,\n TAccountCompressionProgram extends string = string,\n TAccountLogWrapper extends string = string,\n TAccountSystemProgram extends string = string,\n> {\n treeAuthority?: Address<TAccountTreeAuthority>;\n /** Tree creator or delegate. */\n authority: TransactionSigner<TAccountAuthority>;\n merkleTree: Address<TAccountMerkleTree>;\n /**\n * Recipient for reclaimed lamports (tree + config PDA). Must be the creator\n * or the delegate.\n */\n recipient: Address<TAccountRecipient>;\n compressionProgram?: Address<TAccountCompressionProgram>;\n logWrapper?: Address<TAccountLogWrapper>;\n systemProgram?: Address<TAccountSystemProgram>;\n}\n\nexport async function getCloseTreeV2InstructionAsync<\n TAccountTreeAuthority extends string,\n TAccountAuthority extends string,\n TAccountMerkleTree extends string,\n TAccountRecipient extends string,\n TAccountCompressionProgram extends string,\n TAccountLogWrapper extends string,\n TAccountSystemProgram extends string,\n TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,\n>(\n input: CloseTreeV2AsyncInput<\n TAccountTreeAuthority,\n TAccountAuthority,\n TAccountMerkleTree,\n TAccountRecipient,\n TAccountCompressionProgram,\n TAccountLogWrapper,\n TAccountSystemProgram\n >,\n config?: { programAddress?: TProgramAddress },\n): Promise<\n CloseTreeV2Instruction<\n TProgramAddress,\n TAccountTreeAuthority,\n TAccountAuthority,\n TAccountMerkleTree,\n TAccountRecipient,\n TAccountCompressionProgram,\n TAccountLogWrapper,\n TAccountSystemProgram\n >\n> {\n // Program address.\n const programAddress = config?.programAddress ?? BUBBLEGUM_PROGRAM_ADDRESS;\n\n // Original accounts.\n const originalAccounts = {\n treeAuthority: { value: input.treeAuthority ?? null, isWritable: true },\n authority: { value: input.authority ?? null, isWritable: false },\n merkleTree: { value: input.merkleTree ?? null, isWritable: true },\n recipient: { value: input.recipient ?? null, isWritable: true },\n compressionProgram: {\n value: input.compressionProgram ?? null,\n isWritable: false,\n },\n logWrapper: { value: input.logWrapper ?? null, isWritable: false },\n systemProgram: { value: input.systemProgram ?? null, isWritable: false },\n };\n const accounts = originalAccounts as Record<\n keyof typeof originalAccounts,\n ResolvedInstructionAccount\n >;\n\n // Resolve default values.\n if (!accounts.treeAuthority.value) {\n accounts.treeAuthority.value = await findTreeConfigPda({\n merkleTree: getAddressFromResolvedInstructionAccount(\n \"merkleTree\",\n accounts.merkleTree.value,\n ),\n });\n }\n if (!accounts.compressionProgram.value) {\n accounts.compressionProgram.value =\n \"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW\" as Address<\"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW\">;\n }\n if (!accounts.logWrapper.value) {\n accounts.logWrapper.value =\n \"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3\" as Address<\"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3\">;\n }\n if (!accounts.systemProgram.value) {\n accounts.systemProgram.value =\n \"11111111111111111111111111111111\" as Address<\"11111111111111111111111111111111\">;\n }\n\n const getAccountMeta = getAccountMetaFactory(programAddress, \"programId\");\n return Object.freeze({\n accounts: [\n getAccountMeta(\"treeAuthority\", accounts.treeAuthority),\n getAccountMeta(\"authority\", accounts.authority),\n getAccountMeta(\"merkleTree\", accounts.merkleTree),\n getAccountMeta(\"recipient\", accounts.recipient),\n getAccountMeta(\"compressionProgram\", accounts.compressionProgram),\n getAccountMeta(\"logWrapper\", accounts.logWrapper),\n getAccountMeta(\"systemProgram\", accounts.systemProgram),\n ],\n data: getCloseTreeV2InstructionDataEncoder().encode({}),\n programAddress,\n } as CloseTreeV2Instruction<\n TProgramAddress,\n TAccountTreeAuthority,\n TAccountAuthority,\n TAccountMerkleTree,\n TAccountRecipient,\n TAccountCompressionProgram,\n TAccountLogWrapper,\n TAccountSystemProgram\n >);\n}\n\nexport interface CloseTreeV2Input<\n TAccountTreeAuthority extends string = string,\n TAccountAuthority extends string = string,\n TAccountMerkleTree extends string = string,\n TAccountRecipient extends string = string,\n TAccountCompressionProgram extends string = string,\n TAccountLogWrapper extends string = string,\n TAccountSystemProgram extends string = string,\n> {\n treeAuthority: Address<TAccountTreeAuthority>;\n /** Tree creator or delegate. */\n authority: TransactionSigner<TAccountAuthority>;\n merkleTree: Address<TAccountMerkleTree>;\n /**\n * Recipient for reclaimed lamports (tree + config PDA). Must be the creator\n * or the delegate.\n */\n recipient: Address<TAccountRecipient>;\n compressionProgram?: Address<TAccountCompressionProgram>;\n logWrapper?: Address<TAccountLogWrapper>;\n systemProgram?: Address<TAccountSystemProgram>;\n}\n\nexport function getCloseTreeV2Instruction<\n TAccountTreeAuthority extends string,\n TAccountAuthority extends string,\n TAccountMerkleTree extends string,\n TAccountRecipient extends string,\n TAccountCompressionProgram extends string,\n TAccountLogWrapper extends string,\n TAccountSystemProgram extends string,\n TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,\n>(\n input: CloseTreeV2Input<\n TAccountTreeAuthority,\n TAccountAuthority,\n TAccountMerkleTree,\n TAccountRecipient,\n TAccountCompressionProgram,\n TAccountLogWrapper,\n TAccountSystemProgram\n >,\n config?: { programAddress?: TProgramAddress },\n): CloseTreeV2Instruction<\n TProgramAddress,\n TAccountTreeAuthority,\n TAccountAuthority,\n TAccountMerkleTree,\n TAccountRecipient,\n TAccountCompressionProgram,\n TAccountLogWrapper,\n TAccountSystemProgram\n> {\n // Program address.\n const programAddress = config?.programAddress ?? BUBBLEGUM_PROGRAM_ADDRESS;\n\n // Original accounts.\n const originalAccounts = {\n treeAuthority: { value: input.treeAuthority ?? null, isWritable: true },\n authority: { value: input.authority ?? null, isWritable: false },\n merkleTree: { value: input.merkleTree ?? null, isWritable: true },\n recipient: { value: input.recipient ?? null, isWritable: true },\n compressionProgram: {\n value: input.compressionProgram ?? null,\n isWritable: false,\n },\n logWrapper: { value: input.logWrapper ?? null, isWritable: false },\n systemProgram: { value: input.systemProgram ?? null, isWritable: false },\n };\n const accounts = originalAccounts as Record<\n keyof typeof originalAccounts,\n ResolvedInstructionAccount\n >;\n\n // Resolve default values.\n if (!accounts.compressionProgram.value) {\n accounts.compressionProgram.value =\n \"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW\" as Address<\"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW\">;\n }\n if (!accounts.logWrapper.value) {\n accounts.logWrapper.value =\n \"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3\" as Address<\"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3\">;\n }\n if (!accounts.systemProgram.value) {\n accounts.systemProgram.value =\n \"11111111111111111111111111111111\" as Address<\"11111111111111111111111111111111\">;\n }\n\n const getAccountMeta = getAccountMetaFactory(programAddress, \"programId\");\n return Object.freeze({\n accounts: [\n getAccountMeta(\"treeAuthority\", accounts.treeAuthority),\n getAccountMeta(\"authority\", accounts.authority),\n getAccountMeta(\"merkleTree\", accounts.merkleTree),\n getAccountMeta(\"recipient\", accounts.recipient),\n getAccountMeta(\"compressionProgram\", accounts.compressionProgram),\n getAccountMeta(\"logWrapper\", accounts.logWrapper),\n getAccountMeta(\"systemProgram\", accounts.systemProgram),\n ],\n data: getCloseTreeV2InstructionDataEncoder().encode({}),\n programAddress,\n } as CloseTreeV2Instruction<\n TProgramAddress,\n TAccountTreeAuthority,\n TAccountAuthority,\n TAccountMerkleTree,\n TAccountRecipient,\n TAccountCompressionProgram,\n TAccountLogWrapper,\n TAccountSystemProgram\n >);\n}\n\nexport interface ParsedCloseTreeV2Instruction<\n TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,\n TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[],\n> {\n programAddress: Address<TProgram>;\n accounts: {\n treeAuthority: TAccountMetas[0];\n /** Tree creator or delegate. */\n authority: TAccountMetas[1];\n merkleTree: TAccountMetas[2];\n /**\n * Recipient for reclaimed lamports (tree + config PDA). Must be the creator\n * or the delegate.\n */\n recipient: TAccountMetas[3];\n compressionProgram: TAccountMetas[4];\n logWrapper: TAccountMetas[5];\n systemProgram: TAccountMetas[6];\n };\n data: CloseTreeV2InstructionData;\n}\n\nexport function parseCloseTreeV2Instruction<\n TProgram extends string,\n TAccountMetas extends readonly AccountMeta[],\n>(\n instruction: Instruction<TProgram> &\n InstructionWithAccounts<TAccountMetas> &\n InstructionWithData<ReadonlyUint8Array>,\n): ParsedCloseTreeV2Instruction<TProgram, TAccountMetas> {\n if (instruction.accounts.length < 7) {\n throw new SolanaError(\n SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS,\n {\n actualAccountMetas: instruction.accounts.length,\n expectedAccountMetas: 7,\n },\n );\n }\n let accountIndex = 0;\n const getNextAccount = () => {\n const accountMeta = (instruction.accounts as TAccountMetas)[accountIndex]!;\n accountIndex += 1;\n return accountMeta;\n };\n return {\n programAddress: instruction.programAddress,\n accounts: {\n treeAuthority: getNextAccount(),\n authority: getNextAccount(),\n merkleTree: getNextAccount(),\n recipient: getNextAccount(),\n compressionProgram: getNextAccount(),\n logWrapper: getNextAccount(),\n systemProgram: getNextAccount(),\n },\n data: getCloseTreeV2InstructionDataDecoder().decode(instruction.data),\n };\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"closeTreeV2.js","names":[],"sources":["../../../src/generated/instructions/closeTreeV2.ts"],"sourcesContent":["/**\n * This code was AUTOGENERATED using the Codama library.\n * Please DO NOT EDIT THIS FILE, instead use visitors\n * to add features, then rerun Codama to update it.\n *\n * @see https://github.com/codama-idl/codama\n */\n\nimport {\n combineCodec,\n fixDecoderSize,\n fixEncoderSize,\n getBytesDecoder,\n getBytesEncoder,\n getStructDecoder,\n getStructEncoder,\n SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS,\n SolanaError,\n transformEncoder,\n type AccountMeta,\n type AccountSignerMeta,\n type Address,\n type FixedSizeCodec,\n type FixedSizeDecoder,\n type FixedSizeEncoder,\n type Instruction,\n type InstructionWithAccounts,\n type InstructionWithData,\n type ReadonlyAccount,\n type ReadonlySignerAccount,\n type ReadonlyUint8Array,\n type TransactionSigner,\n type WritableAccount,\n} from \"@solana/kit\";\nimport {\n getAccountMetaFactory,\n getAddressFromResolvedInstructionAccount,\n type ResolvedInstructionAccount,\n} from \"@solana/program-client-core\";\nimport { findTreeConfigPda } from \"../pdas/index.js\";\nimport { BUBBLEGUM_PROGRAM_ADDRESS } from \"../programs/index.js\";\n\nexport const CLOSE_TREE_V2_DISCRIMINATOR: ReadonlyUint8Array = new Uint8Array([\n 45, 172, 6, 94, 28, 90, 157, 70,\n]);\n\nexport function getCloseTreeV2DiscriminatorBytes(): ReadonlyUint8Array {\n return fixEncoderSize(getBytesEncoder(), 8).encode(\n CLOSE_TREE_V2_DISCRIMINATOR,\n );\n}\n\nexport type CloseTreeV2Instruction<\n TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,\n TAccountTreeAuthority extends string | AccountMeta<string> = string,\n TAccountAuthority extends string | AccountMeta<string> = string,\n TAccountMerkleTree extends string | AccountMeta<string> = string,\n TAccountRecipient extends string | AccountMeta<string> = string,\n TAccountCompressionProgram extends string | AccountMeta<string> =\n \"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW\",\n TAccountLogWrapper extends string | AccountMeta<string> =\n \"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3\",\n TAccountSystemProgram extends string | AccountMeta<string> =\n \"11111111111111111111111111111111\",\n TRemainingAccounts extends readonly AccountMeta<string>[] = [],\n> = Instruction<TProgram> &\n InstructionWithData<ReadonlyUint8Array> &\n InstructionWithAccounts<\n [\n TAccountTreeAuthority extends string\n ? WritableAccount<TAccountTreeAuthority>\n : TAccountTreeAuthority,\n TAccountAuthority extends string\n ? ReadonlySignerAccount<TAccountAuthority> &\n AccountSignerMeta<TAccountAuthority>\n : TAccountAuthority,\n TAccountMerkleTree extends string\n ? WritableAccount<TAccountMerkleTree>\n : TAccountMerkleTree,\n TAccountRecipient extends string\n ? WritableAccount<TAccountRecipient>\n : TAccountRecipient,\n TAccountCompressionProgram extends string\n ? ReadonlyAccount<TAccountCompressionProgram>\n : TAccountCompressionProgram,\n TAccountLogWrapper extends string\n ? ReadonlyAccount<TAccountLogWrapper>\n : TAccountLogWrapper,\n TAccountSystemProgram extends string\n ? ReadonlyAccount<TAccountSystemProgram>\n : TAccountSystemProgram,\n ...TRemainingAccounts,\n ]\n >;\n\nexport type CloseTreeV2InstructionData = { discriminator: ReadonlyUint8Array };\n\nexport type CloseTreeV2InstructionDataArgs = {};\n\nexport function getCloseTreeV2InstructionDataEncoder(): FixedSizeEncoder<CloseTreeV2InstructionDataArgs> {\n return transformEncoder(\n getStructEncoder([[\"discriminator\", fixEncoderSize(getBytesEncoder(), 8)]]),\n (value) => ({ ...value, discriminator: CLOSE_TREE_V2_DISCRIMINATOR }),\n );\n}\n\nexport function getCloseTreeV2InstructionDataDecoder(): FixedSizeDecoder<CloseTreeV2InstructionData> {\n return getStructDecoder([\n [\"discriminator\", fixDecoderSize(getBytesDecoder(), 8)],\n ]);\n}\n\nexport function getCloseTreeV2InstructionDataCodec(): FixedSizeCodec<\n CloseTreeV2InstructionDataArgs,\n CloseTreeV2InstructionData\n> {\n return combineCodec(\n getCloseTreeV2InstructionDataEncoder(),\n getCloseTreeV2InstructionDataDecoder(),\n );\n}\n\nexport type CloseTreeV2AsyncInput<\n TAccountTreeAuthority extends string = string,\n TAccountAuthority extends string = string,\n TAccountMerkleTree extends string = string,\n TAccountRecipient extends string = string,\n TAccountCompressionProgram extends string = string,\n TAccountLogWrapper extends string = string,\n TAccountSystemProgram extends string = string,\n> = {\n /**\n * The tree's `TreeConfig` PDA, which stores its configuration and acts\n * as the tree's authority for CPIs into the compression program.\n */\n treeAuthority?: Address<TAccountTreeAuthority>;\n /** Tree creator or delegate. */\n authority: TransactionSigner<TAccountAuthority>;\n /**\n * The concurrent Merkle tree account storing the compressed leaves,\n * owned by the account compression program.\n */\n merkleTree: Address<TAccountMerkleTree>;\n /**\n * Recipient for the reclaimed lamports (tree + config PDA). Must be\n * the tree creator or delegate.\n */\n recipient: Address<TAccountRecipient>;\n /**\n * The SPL/MPL Account Compression program that owns and manages the\n * Merkle tree.\n */\n compressionProgram?: Address<TAccountCompressionProgram>;\n /**\n * The SPL/MPL Noop program, used to log leaf data so off-chain indexers\n * can reconstruct the tree.\n */\n logWrapper?: Address<TAccountLogWrapper>;\n /** The Solana System program. */\n systemProgram?: Address<TAccountSystemProgram>;\n};\n\n/**\n * Closes an empty V2 tree and its `TreeConfig` PDA, reclaiming rent.\n *\n * Only the tree creator or delegate may close a tree, and it must be\n * empty (no un-burned leaves) for the underlying compression program\n * to allow the close.\n */\nexport async function getCloseTreeV2InstructionAsync<\n TAccountTreeAuthority extends string,\n TAccountAuthority extends string,\n TAccountMerkleTree extends string,\n TAccountRecipient extends string,\n TAccountCompressionProgram extends string,\n TAccountLogWrapper extends string,\n TAccountSystemProgram extends string,\n TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,\n>(\n input: CloseTreeV2AsyncInput<\n TAccountTreeAuthority,\n TAccountAuthority,\n TAccountMerkleTree,\n TAccountRecipient,\n TAccountCompressionProgram,\n TAccountLogWrapper,\n TAccountSystemProgram\n >,\n config?: { programAddress?: TProgramAddress },\n): Promise<\n CloseTreeV2Instruction<\n TProgramAddress,\n TAccountTreeAuthority,\n TAccountAuthority,\n TAccountMerkleTree,\n TAccountRecipient,\n TAccountCompressionProgram,\n TAccountLogWrapper,\n TAccountSystemProgram\n >\n> {\n // Program address.\n const programAddress = config?.programAddress ?? BUBBLEGUM_PROGRAM_ADDRESS;\n\n // Original accounts.\n const originalAccounts = {\n treeAuthority: { value: input.treeAuthority ?? null, isWritable: true },\n authority: { value: input.authority ?? null, isWritable: false },\n merkleTree: { value: input.merkleTree ?? null, isWritable: true },\n recipient: { value: input.recipient ?? null, isWritable: true },\n compressionProgram: {\n value: input.compressionProgram ?? null,\n isWritable: false,\n },\n logWrapper: { value: input.logWrapper ?? null, isWritable: false },\n systemProgram: { value: input.systemProgram ?? null, isWritable: false },\n };\n const accounts = originalAccounts as Record<\n keyof typeof originalAccounts,\n ResolvedInstructionAccount\n >;\n\n // Resolve default values.\n if (!accounts.treeAuthority.value) {\n accounts.treeAuthority.value = await findTreeConfigPda({\n merkleTree: getAddressFromResolvedInstructionAccount(\n \"merkleTree\",\n accounts.merkleTree.value,\n ),\n });\n }\n if (!accounts.compressionProgram.value) {\n accounts.compressionProgram.value =\n \"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW\" as Address<\"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW\">;\n }\n if (!accounts.logWrapper.value) {\n accounts.logWrapper.value =\n \"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3\" as Address<\"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3\">;\n }\n if (!accounts.systemProgram.value) {\n accounts.systemProgram.value =\n \"11111111111111111111111111111111\" as Address<\"11111111111111111111111111111111\">;\n }\n\n const getAccountMeta = getAccountMetaFactory(programAddress, \"programId\");\n return Object.freeze({\n accounts: [\n getAccountMeta(\"treeAuthority\", accounts.treeAuthority),\n getAccountMeta(\"authority\", accounts.authority),\n getAccountMeta(\"merkleTree\", accounts.merkleTree),\n getAccountMeta(\"recipient\", accounts.recipient),\n getAccountMeta(\"compressionProgram\", accounts.compressionProgram),\n getAccountMeta(\"logWrapper\", accounts.logWrapper),\n getAccountMeta(\"systemProgram\", accounts.systemProgram),\n ],\n data: getCloseTreeV2InstructionDataEncoder().encode({}),\n programAddress,\n } as CloseTreeV2Instruction<\n TProgramAddress,\n TAccountTreeAuthority,\n TAccountAuthority,\n TAccountMerkleTree,\n TAccountRecipient,\n TAccountCompressionProgram,\n TAccountLogWrapper,\n TAccountSystemProgram\n >);\n}\n\nexport type CloseTreeV2Input<\n TAccountTreeAuthority extends string = string,\n TAccountAuthority extends string = string,\n TAccountMerkleTree extends string = string,\n TAccountRecipient extends string = string,\n TAccountCompressionProgram extends string = string,\n TAccountLogWrapper extends string = string,\n TAccountSystemProgram extends string = string,\n> = {\n /**\n * The tree's `TreeConfig` PDA, which stores its configuration and acts\n * as the tree's authority for CPIs into the compression program.\n */\n treeAuthority: Address<TAccountTreeAuthority>;\n /** Tree creator or delegate. */\n authority: TransactionSigner<TAccountAuthority>;\n /**\n * The concurrent Merkle tree account storing the compressed leaves,\n * owned by the account compression program.\n */\n merkleTree: Address<TAccountMerkleTree>;\n /**\n * Recipient for the reclaimed lamports (tree + config PDA). Must be\n * the tree creator or delegate.\n */\n recipient: Address<TAccountRecipient>;\n /**\n * The SPL/MPL Account Compression program that owns and manages the\n * Merkle tree.\n */\n compressionProgram?: Address<TAccountCompressionProgram>;\n /**\n * The SPL/MPL Noop program, used to log leaf data so off-chain indexers\n * can reconstruct the tree.\n */\n logWrapper?: Address<TAccountLogWrapper>;\n /** The Solana System program. */\n systemProgram?: Address<TAccountSystemProgram>;\n};\n\n/**\n * Closes an empty V2 tree and its `TreeConfig` PDA, reclaiming rent.\n *\n * Only the tree creator or delegate may close a tree, and it must be\n * empty (no un-burned leaves) for the underlying compression program\n * to allow the close.\n */\nexport function getCloseTreeV2Instruction<\n TAccountTreeAuthority extends string,\n TAccountAuthority extends string,\n TAccountMerkleTree extends string,\n TAccountRecipient extends string,\n TAccountCompressionProgram extends string,\n TAccountLogWrapper extends string,\n TAccountSystemProgram extends string,\n TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,\n>(\n input: CloseTreeV2Input<\n TAccountTreeAuthority,\n TAccountAuthority,\n TAccountMerkleTree,\n TAccountRecipient,\n TAccountCompressionProgram,\n TAccountLogWrapper,\n TAccountSystemProgram\n >,\n config?: { programAddress?: TProgramAddress },\n): CloseTreeV2Instruction<\n TProgramAddress,\n TAccountTreeAuthority,\n TAccountAuthority,\n TAccountMerkleTree,\n TAccountRecipient,\n TAccountCompressionProgram,\n TAccountLogWrapper,\n TAccountSystemProgram\n> {\n // Program address.\n const programAddress = config?.programAddress ?? BUBBLEGUM_PROGRAM_ADDRESS;\n\n // Original accounts.\n const originalAccounts = {\n treeAuthority: { value: input.treeAuthority ?? null, isWritable: true },\n authority: { value: input.authority ?? null, isWritable: false },\n merkleTree: { value: input.merkleTree ?? null, isWritable: true },\n recipient: { value: input.recipient ?? null, isWritable: true },\n compressionProgram: {\n value: input.compressionProgram ?? null,\n isWritable: false,\n },\n logWrapper: { value: input.logWrapper ?? null, isWritable: false },\n systemProgram: { value: input.systemProgram ?? null, isWritable: false },\n };\n const accounts = originalAccounts as Record<\n keyof typeof originalAccounts,\n ResolvedInstructionAccount\n >;\n\n // Resolve default values.\n if (!accounts.compressionProgram.value) {\n accounts.compressionProgram.value =\n \"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW\" as Address<\"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW\">;\n }\n if (!accounts.logWrapper.value) {\n accounts.logWrapper.value =\n \"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3\" as Address<\"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3\">;\n }\n if (!accounts.systemProgram.value) {\n accounts.systemProgram.value =\n \"11111111111111111111111111111111\" as Address<\"11111111111111111111111111111111\">;\n }\n\n const getAccountMeta = getAccountMetaFactory(programAddress, \"programId\");\n return Object.freeze({\n accounts: [\n getAccountMeta(\"treeAuthority\", accounts.treeAuthority),\n getAccountMeta(\"authority\", accounts.authority),\n getAccountMeta(\"merkleTree\", accounts.merkleTree),\n getAccountMeta(\"recipient\", accounts.recipient),\n getAccountMeta(\"compressionProgram\", accounts.compressionProgram),\n getAccountMeta(\"logWrapper\", accounts.logWrapper),\n getAccountMeta(\"systemProgram\", accounts.systemProgram),\n ],\n data: getCloseTreeV2InstructionDataEncoder().encode({}),\n programAddress,\n } as CloseTreeV2Instruction<\n TProgramAddress,\n TAccountTreeAuthority,\n TAccountAuthority,\n TAccountMerkleTree,\n TAccountRecipient,\n TAccountCompressionProgram,\n TAccountLogWrapper,\n TAccountSystemProgram\n >);\n}\n\nexport type ParsedCloseTreeV2Instruction<\n TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,\n TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[],\n> = {\n programAddress: Address<TProgram>;\n accounts: {\n /**\n * The tree's `TreeConfig` PDA, which stores its configuration and acts\n * as the tree's authority for CPIs into the compression program.\n */\n treeAuthority: TAccountMetas[0];\n /** Tree creator or delegate. */\n authority: TAccountMetas[1];\n /**\n * The concurrent Merkle tree account storing the compressed leaves,\n * owned by the account compression program.\n */\n merkleTree: TAccountMetas[2];\n /**\n * Recipient for the reclaimed lamports (tree + config PDA). Must be\n * the tree creator or delegate.\n */\n recipient: TAccountMetas[3];\n /**\n * The SPL/MPL Account Compression program that owns and manages the\n * Merkle tree.\n */\n compressionProgram: TAccountMetas[4];\n /**\n * The SPL/MPL Noop program, used to log leaf data so off-chain indexers\n * can reconstruct the tree.\n */\n logWrapper: TAccountMetas[5];\n /** The Solana System program. */\n systemProgram: TAccountMetas[6];\n };\n data: CloseTreeV2InstructionData;\n};\n\nexport function parseCloseTreeV2Instruction<\n TProgram extends string,\n TAccountMetas extends readonly AccountMeta[],\n>(\n instruction: Instruction<TProgram> &\n InstructionWithAccounts<TAccountMetas> &\n InstructionWithData<ReadonlyUint8Array>,\n): ParsedCloseTreeV2Instruction<TProgram, TAccountMetas> {\n if (instruction.accounts.length < 7) {\n throw new SolanaError(\n SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS,\n {\n actualAccountMetas: instruction.accounts.length,\n expectedAccountMetas: 7,\n },\n );\n }\n let accountIndex = 0;\n const getNextAccount = () => {\n const accountMeta = (instruction.accounts as TAccountMetas)[accountIndex]!;\n accountIndex += 1;\n return accountMeta;\n };\n return {\n programAddress: instruction.programAddress,\n accounts: {\n treeAuthority: getNextAccount(),\n authority: getNextAccount(),\n merkleTree: getNextAccount(),\n recipient: getNextAccount(),\n compressionProgram: getNextAccount(),\n logWrapper: getNextAccount(),\n systemProgram: getNextAccount(),\n },\n data: getCloseTreeV2InstructionDataDecoder().decode(instruction.data),\n };\n}\n"],"mappings":"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"}
|
|
@@ -1,32 +1,45 @@
|
|
|
1
1
|
import { BUBBLEGUM_PROGRAM_ADDRESS } from "../programs/bubblegum.js";
|
|
2
|
+
import "../programs/index.js";
|
|
2
3
|
import { AccountMeta, Address, FixedSizeCodec, FixedSizeDecoder, FixedSizeEncoder, Instruction, InstructionWithAccounts, InstructionWithData, ReadonlyUint8Array, WritableAccount } from "@solana/kit";
|
|
3
|
-
|
|
4
4
|
//#region src/generated/instructions/collectV2.d.ts
|
|
5
5
|
declare const COLLECT_V2_DISCRIMINATOR: ReadonlyUint8Array;
|
|
6
6
|
declare function getCollectV2DiscriminatorBytes(): ReadonlyUint8Array;
|
|
7
7
|
type CollectV2Instruction<TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS, TAccountTreeAuthority extends string | AccountMeta<string> = string, TAccountDestination extends string | AccountMeta<string> = string, TRemainingAccounts extends readonly AccountMeta<string>[] = []> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[TAccountTreeAuthority extends string ? WritableAccount<TAccountTreeAuthority> : TAccountTreeAuthority, TAccountDestination extends string ? WritableAccount<TAccountDestination> : TAccountDestination, ...TRemainingAccounts]>;
|
|
8
|
-
|
|
8
|
+
type CollectV2InstructionData = {
|
|
9
9
|
discriminator: ReadonlyUint8Array;
|
|
10
|
-
}
|
|
10
|
+
};
|
|
11
11
|
type CollectV2InstructionDataArgs = {};
|
|
12
12
|
declare function getCollectV2InstructionDataEncoder(): FixedSizeEncoder<CollectV2InstructionDataArgs>;
|
|
13
13
|
declare function getCollectV2InstructionDataDecoder(): FixedSizeDecoder<CollectV2InstructionData>;
|
|
14
14
|
declare function getCollectV2InstructionDataCodec(): FixedSizeCodec<CollectV2InstructionDataArgs, CollectV2InstructionData>;
|
|
15
|
-
|
|
15
|
+
type CollectV2Input<TAccountTreeAuthority extends string = string, TAccountDestination extends string = string> = {
|
|
16
|
+
/**
|
|
17
|
+
* The tree's `TreeConfig` PDA, which stores its configuration and acts
|
|
18
|
+
* as the tree's authority for CPIs into the compression program.
|
|
19
|
+
*/
|
|
16
20
|
treeAuthority: Address<TAccountTreeAuthority>;
|
|
21
|
+
/** Account to receive the collected V2 tree fees. */
|
|
17
22
|
destination: Address<TAccountDestination>;
|
|
18
|
-
}
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* Collects accumulated protocol fees from a V2 tree's `TreeConfig` PDA.
|
|
26
|
+
*/
|
|
19
27
|
declare function getCollectV2Instruction<TAccountTreeAuthority extends string, TAccountDestination extends string, TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS>(input: CollectV2Input<TAccountTreeAuthority, TAccountDestination>, config?: {
|
|
20
28
|
programAddress?: TProgramAddress;
|
|
21
29
|
}): CollectV2Instruction<TProgramAddress, TAccountTreeAuthority, TAccountDestination>;
|
|
22
|
-
|
|
30
|
+
type ParsedCollectV2Instruction<TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS, TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[]> = {
|
|
23
31
|
programAddress: Address<TProgram>;
|
|
24
32
|
accounts: {
|
|
33
|
+
/**
|
|
34
|
+
* The tree's `TreeConfig` PDA, which stores its configuration and acts
|
|
35
|
+
* as the tree's authority for CPIs into the compression program.
|
|
36
|
+
*/
|
|
25
37
|
treeAuthority: TAccountMetas[0];
|
|
38
|
+
/** Account to receive the collected V2 tree fees. */
|
|
26
39
|
destination: TAccountMetas[1];
|
|
27
40
|
};
|
|
28
41
|
data: CollectV2InstructionData;
|
|
29
|
-
}
|
|
42
|
+
};
|
|
30
43
|
declare function parseCollectV2Instruction<TProgram extends string, TAccountMetas extends readonly AccountMeta[]>(instruction: Instruction<TProgram> & InstructionWithAccounts<TAccountMetas> & InstructionWithData<ReadonlyUint8Array>): ParsedCollectV2Instruction<TProgram, TAccountMetas>;
|
|
31
44
|
//#endregion
|
|
32
45
|
export { COLLECT_V2_DISCRIMINATOR, CollectV2Input, CollectV2Instruction, CollectV2InstructionData, CollectV2InstructionDataArgs, ParsedCollectV2Instruction, getCollectV2DiscriminatorBytes, getCollectV2Instruction, getCollectV2InstructionDataCodec, getCollectV2InstructionDataDecoder, getCollectV2InstructionDataEncoder, parseCollectV2Instruction };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collectV2.d.ts","names":[],"sources":["../../../src/generated/instructions/collectV2.ts"],"mappings":";;;;cAoCa,
|
|
1
|
+
{"version":3,"file":"collectV2.d.ts","names":[],"sources":["../../../src/generated/instructions/collectV2.ts"],"mappings":";;;;cAoCa,0BAA0B;iBAIvB,kCAAkC;KAItC,qBACV,iCAAiC,2BACjC,uCAAuC,8BACvC,qCAAqC,8BACrC,oCAAoC,8BAClC,YAAY,YACd,oBAAoB,sBACpB,yBAEI,uCACI,gBAAgB,yBAChB,uBACJ,qCACI,gBAAgB,uBAChB,wBACD;KAIG;EAA6B,eAAe;;KAE5C;iBAEI,sCAAsC,iBAAiB;iBAOvD,sCAAsC,iBAAiB;iBAMvD,oCAAoC,eAClD,8BACA;KAQU,eACV,+CACA;;;;;EAMA,eAAe,QAAQ;;EAEvB,aAAa,QAAQ;;;;;iBAMP,wBACd,sCACA,oCACA,wBAAwB,iBAAiB,2BAEzC,OAAO,eAAe,uBAAuB,sBAC7C;EAAW,iBAAiB;IAC3B,qBACD,iBACA,uBACA;KA8BU,2BACV,iCAAiC,2BACjC,+BAA+B,yBAAyB;EAExD,gBAAgB,QAAQ;EACxB;;;;;IAKE,eAAe;;IAEf,aAAa;;EAEf,MAAM;;iBAGQ,0BACd,yBACA,+BAA+B,eAE/B,aAAa,YAAY,YACvB,wBAAwB,iBACxB,oBAAoB,sBACrB,2BAA2B,UAAU"}
|
|
@@ -2,6 +2,13 @@ import "../programs/bubblegum.js";
|
|
|
2
2
|
import { SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, SolanaError, combineCodec, fixDecoderSize, fixEncoderSize, getBytesDecoder, getBytesEncoder, getStructDecoder, getStructEncoder, transformEncoder } from "@solana/kit";
|
|
3
3
|
import { getAccountMetaFactory } from "@solana/program-client-core";
|
|
4
4
|
//#region src/generated/instructions/collectV2.ts
|
|
5
|
+
/**
|
|
6
|
+
* This code was AUTOGENERATED using the Codama library.
|
|
7
|
+
* Please DO NOT EDIT THIS FILE, instead use visitors
|
|
8
|
+
* to add features, then rerun Codama to update it.
|
|
9
|
+
*
|
|
10
|
+
* @see https://github.com/codama-idl/codama
|
|
11
|
+
*/
|
|
5
12
|
const COLLECT_V2_DISCRIMINATOR = new Uint8Array([
|
|
6
13
|
21,
|
|
7
14
|
11,
|
|
@@ -27,6 +34,9 @@ function getCollectV2InstructionDataDecoder() {
|
|
|
27
34
|
function getCollectV2InstructionDataCodec() {
|
|
28
35
|
return combineCodec(getCollectV2InstructionDataEncoder(), getCollectV2InstructionDataDecoder());
|
|
29
36
|
}
|
|
37
|
+
/**
|
|
38
|
+
* Collects accumulated protocol fees from a V2 tree's `TreeConfig` PDA.
|
|
39
|
+
*/
|
|
30
40
|
function getCollectV2Instruction(input, config) {
|
|
31
41
|
const programAddress = config?.programAddress ?? "BGUMAp9Gq7iTEuizy4pqaxsTyUCBK68MDfK752saRPUY";
|
|
32
42
|
const accounts = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collectV2.js","names":[],"sources":["../../../src/generated/instructions/collectV2.ts"],"sourcesContent":["/**\n * This code was AUTOGENERATED using the Codama library.\n * Please DO NOT EDIT THIS FILE, instead use visitors\n * to add features, then rerun Codama to update it.\n *\n * @see https://github.com/codama-idl/codama\n */\n\nimport
|
|
1
|
+
{"version":3,"file":"collectV2.js","names":[],"sources":["../../../src/generated/instructions/collectV2.ts"],"sourcesContent":["/**\n * This code was AUTOGENERATED using the Codama library.\n * Please DO NOT EDIT THIS FILE, instead use visitors\n * to add features, then rerun Codama to update it.\n *\n * @see https://github.com/codama-idl/codama\n */\n\nimport {\n combineCodec,\n fixDecoderSize,\n fixEncoderSize,\n getBytesDecoder,\n getBytesEncoder,\n getStructDecoder,\n getStructEncoder,\n SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS,\n SolanaError,\n transformEncoder,\n type AccountMeta,\n type Address,\n type FixedSizeCodec,\n type FixedSizeDecoder,\n type FixedSizeEncoder,\n type Instruction,\n type InstructionWithAccounts,\n type InstructionWithData,\n type ReadonlyUint8Array,\n type WritableAccount,\n} from \"@solana/kit\";\nimport {\n getAccountMetaFactory,\n type ResolvedInstructionAccount,\n} from \"@solana/program-client-core\";\nimport { BUBBLEGUM_PROGRAM_ADDRESS } from \"../programs/index.js\";\n\nexport const COLLECT_V2_DISCRIMINATOR: ReadonlyUint8Array = new Uint8Array([\n 21, 11, 159, 47, 4, 195, 106, 56,\n]);\n\nexport function getCollectV2DiscriminatorBytes(): ReadonlyUint8Array {\n return fixEncoderSize(getBytesEncoder(), 8).encode(COLLECT_V2_DISCRIMINATOR);\n}\n\nexport type CollectV2Instruction<\n TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,\n TAccountTreeAuthority extends string | AccountMeta<string> = string,\n TAccountDestination extends string | AccountMeta<string> = string,\n TRemainingAccounts extends readonly AccountMeta<string>[] = [],\n> = Instruction<TProgram> &\n InstructionWithData<ReadonlyUint8Array> &\n InstructionWithAccounts<\n [\n TAccountTreeAuthority extends string\n ? WritableAccount<TAccountTreeAuthority>\n : TAccountTreeAuthority,\n TAccountDestination extends string\n ? WritableAccount<TAccountDestination>\n : TAccountDestination,\n ...TRemainingAccounts,\n ]\n >;\n\nexport type CollectV2InstructionData = { discriminator: ReadonlyUint8Array };\n\nexport type CollectV2InstructionDataArgs = {};\n\nexport function getCollectV2InstructionDataEncoder(): FixedSizeEncoder<CollectV2InstructionDataArgs> {\n return transformEncoder(\n getStructEncoder([[\"discriminator\", fixEncoderSize(getBytesEncoder(), 8)]]),\n (value) => ({ ...value, discriminator: COLLECT_V2_DISCRIMINATOR }),\n );\n}\n\nexport function getCollectV2InstructionDataDecoder(): FixedSizeDecoder<CollectV2InstructionData> {\n return getStructDecoder([\n [\"discriminator\", fixDecoderSize(getBytesDecoder(), 8)],\n ]);\n}\n\nexport function getCollectV2InstructionDataCodec(): FixedSizeCodec<\n CollectV2InstructionDataArgs,\n CollectV2InstructionData\n> {\n return combineCodec(\n getCollectV2InstructionDataEncoder(),\n getCollectV2InstructionDataDecoder(),\n );\n}\n\nexport type CollectV2Input<\n TAccountTreeAuthority extends string = string,\n TAccountDestination extends string = string,\n> = {\n /**\n * The tree's `TreeConfig` PDA, which stores its configuration and acts\n * as the tree's authority for CPIs into the compression program.\n */\n treeAuthority: Address<TAccountTreeAuthority>;\n /** Account to receive the collected V2 tree fees. */\n destination: Address<TAccountDestination>;\n};\n\n/**\n * Collects accumulated protocol fees from a V2 tree's `TreeConfig` PDA.\n */\nexport function getCollectV2Instruction<\n TAccountTreeAuthority extends string,\n TAccountDestination extends string,\n TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,\n>(\n input: CollectV2Input<TAccountTreeAuthority, TAccountDestination>,\n config?: { programAddress?: TProgramAddress },\n): CollectV2Instruction<\n TProgramAddress,\n TAccountTreeAuthority,\n TAccountDestination\n> {\n // Program address.\n const programAddress = config?.programAddress ?? BUBBLEGUM_PROGRAM_ADDRESS;\n\n // Original accounts.\n const originalAccounts = {\n treeAuthority: { value: input.treeAuthority ?? null, isWritable: true },\n destination: { value: input.destination ?? null, isWritable: true },\n };\n const accounts = originalAccounts as Record<\n keyof typeof originalAccounts,\n ResolvedInstructionAccount\n >;\n\n const getAccountMeta = getAccountMetaFactory(programAddress, \"programId\");\n return Object.freeze({\n accounts: [\n getAccountMeta(\"treeAuthority\", accounts.treeAuthority),\n getAccountMeta(\"destination\", accounts.destination),\n ],\n data: getCollectV2InstructionDataEncoder().encode({}),\n programAddress,\n } as CollectV2Instruction<\n TProgramAddress,\n TAccountTreeAuthority,\n TAccountDestination\n >);\n}\n\nexport type ParsedCollectV2Instruction<\n TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,\n TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[],\n> = {\n programAddress: Address<TProgram>;\n accounts: {\n /**\n * The tree's `TreeConfig` PDA, which stores its configuration and acts\n * as the tree's authority for CPIs into the compression program.\n */\n treeAuthority: TAccountMetas[0];\n /** Account to receive the collected V2 tree fees. */\n destination: TAccountMetas[1];\n };\n data: CollectV2InstructionData;\n};\n\nexport function parseCollectV2Instruction<\n TProgram extends string,\n TAccountMetas extends readonly AccountMeta[],\n>(\n instruction: Instruction<TProgram> &\n InstructionWithAccounts<TAccountMetas> &\n InstructionWithData<ReadonlyUint8Array>,\n): ParsedCollectV2Instruction<TProgram, TAccountMetas> {\n if (instruction.accounts.length < 2) {\n throw new SolanaError(\n SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS,\n {\n actualAccountMetas: instruction.accounts.length,\n expectedAccountMetas: 2,\n },\n );\n }\n let accountIndex = 0;\n const getNextAccount = () => {\n const accountMeta = (instruction.accounts as TAccountMetas)[accountIndex]!;\n accountIndex += 1;\n return accountMeta;\n };\n return {\n programAddress: instruction.programAddress,\n accounts: {\n treeAuthority: getNextAccount(),\n destination: getNextAccount(),\n },\n data: getCollectV2InstructionDataDecoder().decode(instruction.data),\n };\n}\n"],"mappings":";;;;;;;;;;;AAoCA,MAAa,2BAA+C,IAAI,WAAW;CACzE;CAAI;CAAI;CAAK;CAAI;CAAG;CAAK;CAAK;AAChC,CAAC;AAED,SAAgB,iCAAqD;CACnE,OAAO,eAAe,gBAAgB,GAAG,CAAC,CAAC,CAAC,OAAO,wBAAwB;AAC7E;AAyBA,SAAgB,qCAAqF;CACnG,OAAO,iBACL,iBAAiB,CAAC,CAAC,iBAAiB,eAAe,gBAAgB,GAAG,CAAC,CAAC,CAAC,CAAC,IACzE,WAAW;EAAE,GAAG;EAAO,eAAe;CAAyB,EAClE;AACF;AAEA,SAAgB,qCAAiF;CAC/F,OAAO,iBAAiB,CACtB,CAAC,iBAAiB,eAAe,gBAAgB,GAAG,CAAC,CAAC,CACxD,CAAC;AACH;AAEA,SAAgB,mCAGd;CACA,OAAO,aACL,mCAAmC,GACnC,mCAAmC,CACrC;AACF;;;;AAkBA,SAAgB,wBAKd,OACA,QAKA;CAEA,MAAM,iBAAiB,QAAQ,kBAAA;CAO/B,MAAM,WAAW;EAHf,eAAe;GAAE,OAAO,MAAM,iBAAiB;GAAM,YAAY;EAAK;EACtE,aAAa;GAAE,OAAO,MAAM,eAAe;GAAM,YAAY;EAAK;CAEpC;CAKhC,MAAM,iBAAiB,sBAAsB,gBAAgB,WAAW;CACxE,OAAO,OAAO,OAAO;EACnB,UAAU,CACR,eAAe,iBAAiB,SAAS,aAAa,GACtD,eAAe,eAAe,SAAS,WAAW,CACpD;EACA,MAAM,mCAAmC,CAAC,CAAC,OAAO,CAAC,CAAC;EACpD;CACF,CAIC;AACH;AAmBA,SAAgB,0BAId,aAGqD;CACrD,IAAI,YAAY,SAAS,SAAS,GAChC,MAAM,IAAI,YACR,2DACA;EACE,oBAAoB,YAAY,SAAS;EACzC,sBAAsB;CACxB,CACF;CAEF,IAAI,eAAe;CACnB,MAAM,uBAAuB;EAC3B,MAAM,cAAe,YAAY,SAA2B;EAC5D,gBAAgB;EAChB,OAAO;CACT;CACA,OAAO;EACL,gBAAgB,YAAY;EAC5B,UAAU;GACR,eAAe,eAAe;GAC9B,aAAa,eAAe;EAC9B;EACA,MAAM,mCAAmC,CAAC,CAAC,OAAO,YAAY,IAAI;CACpE;AACF"}
|
|
@@ -1,75 +1,185 @@
|
|
|
1
1
|
import { BUBBLEGUM_PROGRAM_ADDRESS } from "../programs/bubblegum.js";
|
|
2
|
+
import "../programs/index.js";
|
|
2
3
|
import { AccountMeta, AccountSignerMeta, Address, FixedSizeCodec, FixedSizeDecoder, FixedSizeEncoder, Instruction, InstructionWithAccounts, InstructionWithData, ReadonlyAccount, ReadonlySignerAccount, ReadonlyUint8Array, TransactionSigner, WritableAccount, WritableSignerAccount } from "@solana/kit";
|
|
3
|
-
|
|
4
4
|
//#region src/generated/instructions/compress.d.ts
|
|
5
5
|
declare const COMPRESS_DISCRIMINATOR: ReadonlyUint8Array;
|
|
6
6
|
declare function getCompressDiscriminatorBytes(): ReadonlyUint8Array;
|
|
7
7
|
type CompressInstruction<TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS, TAccountTreeAuthority extends string | AccountMeta<string> = string, TAccountLeafOwner extends string | AccountMeta<string> = string, TAccountLeafDelegate extends string | AccountMeta<string> = string, TAccountMerkleTree extends string | AccountMeta<string> = string, TAccountTokenAccount extends string | AccountMeta<string> = string, TAccountMint extends string | AccountMeta<string> = string, TAccountMetadata extends string | AccountMeta<string> = string, TAccountMasterEdition extends string | AccountMeta<string> = string, TAccountPayer extends string | AccountMeta<string> = string, TAccountLogWrapper extends string | AccountMeta<string> = "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV", TAccountCompressionProgram extends string | AccountMeta<string> = "cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK", TAccountTokenProgram extends string | AccountMeta<string> = "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA", TAccountTokenMetadataProgram extends string | AccountMeta<string> = "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s", TAccountSystemProgram extends string | AccountMeta<string> = "11111111111111111111111111111111", TRemainingAccounts extends readonly AccountMeta<string>[] = []> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[TAccountTreeAuthority extends string ? ReadonlyAccount<TAccountTreeAuthority> : TAccountTreeAuthority, TAccountLeafOwner extends string ? ReadonlySignerAccount<TAccountLeafOwner> & AccountSignerMeta<TAccountLeafOwner> : TAccountLeafOwner, TAccountLeafDelegate extends string ? ReadonlyAccount<TAccountLeafDelegate> : TAccountLeafDelegate, TAccountMerkleTree extends string ? ReadonlyAccount<TAccountMerkleTree> : TAccountMerkleTree, TAccountTokenAccount extends string ? WritableAccount<TAccountTokenAccount> : TAccountTokenAccount, TAccountMint extends string ? WritableAccount<TAccountMint> : TAccountMint, TAccountMetadata extends string ? WritableAccount<TAccountMetadata> : TAccountMetadata, TAccountMasterEdition extends string ? WritableAccount<TAccountMasterEdition> : TAccountMasterEdition, TAccountPayer extends string ? WritableSignerAccount<TAccountPayer> & AccountSignerMeta<TAccountPayer> : TAccountPayer, TAccountLogWrapper extends string ? ReadonlyAccount<TAccountLogWrapper> : TAccountLogWrapper, TAccountCompressionProgram extends string ? ReadonlyAccount<TAccountCompressionProgram> : TAccountCompressionProgram, TAccountTokenProgram extends string ? ReadonlyAccount<TAccountTokenProgram> : TAccountTokenProgram, TAccountTokenMetadataProgram extends string ? ReadonlyAccount<TAccountTokenMetadataProgram> : TAccountTokenMetadataProgram, TAccountSystemProgram extends string ? ReadonlyAccount<TAccountSystemProgram> : TAccountSystemProgram, ...TRemainingAccounts]>;
|
|
8
|
-
|
|
8
|
+
type CompressInstructionData = {
|
|
9
9
|
discriminator: ReadonlyUint8Array;
|
|
10
|
-
}
|
|
10
|
+
};
|
|
11
11
|
type CompressInstructionDataArgs = {};
|
|
12
12
|
declare function getCompressInstructionDataEncoder(): FixedSizeEncoder<CompressInstructionDataArgs>;
|
|
13
13
|
declare function getCompressInstructionDataDecoder(): FixedSizeDecoder<CompressInstructionData>;
|
|
14
14
|
declare function getCompressInstructionDataCodec(): FixedSizeCodec<CompressInstructionDataArgs, CompressInstructionData>;
|
|
15
|
-
|
|
15
|
+
type CompressAsyncInput<TAccountTreeAuthority extends string = string, TAccountLeafOwner extends string = string, TAccountLeafDelegate extends string = string, TAccountMerkleTree extends string = string, TAccountTokenAccount extends string = string, TAccountMint extends string = string, TAccountMetadata extends string = string, TAccountMasterEdition extends string = string, TAccountPayer extends string = string, TAccountLogWrapper extends string = string, TAccountCompressionProgram extends string = string, TAccountTokenProgram extends string = string, TAccountTokenMetadataProgram extends string = string, TAccountSystemProgram extends string = string> = {
|
|
16
|
+
/**
|
|
17
|
+
* The tree's `TreeConfig` PDA, which stores its configuration and acts
|
|
18
|
+
* as the tree's authority for CPIs into the compression program.
|
|
19
|
+
*/
|
|
16
20
|
treeAuthority?: Address<TAccountTreeAuthority>;
|
|
21
|
+
/** Owner of the compressed NFT leaf being operated on. */
|
|
17
22
|
leafOwner: TransactionSigner<TAccountLeafOwner>;
|
|
23
|
+
/**
|
|
24
|
+
* Delegate authority for the leaf; defaults to the leaf owner when no
|
|
25
|
+
* delegate is set.
|
|
26
|
+
*/
|
|
18
27
|
leafDelegate: Address<TAccountLeafDelegate>;
|
|
28
|
+
/**
|
|
29
|
+
* The concurrent Merkle tree account storing the compressed leaves,
|
|
30
|
+
* owned by the account compression program.
|
|
31
|
+
*/
|
|
19
32
|
merkleTree: Address<TAccountMerkleTree>;
|
|
33
|
+
/** Token account that will hold the decompressed NFT for `leafOwner`. */
|
|
20
34
|
tokenAccount: Address<TAccountTokenAccount>;
|
|
35
|
+
/** Mint account of the decompressed NFT, created fresh during decompression. */
|
|
21
36
|
mint: Address<TAccountMint>;
|
|
37
|
+
/** Metadata account created for the decompressed NFT. */
|
|
22
38
|
metadata: Address<TAccountMetadata>;
|
|
39
|
+
/** Master edition account created for the decompressed NFT. */
|
|
23
40
|
masterEdition: Address<TAccountMasterEdition>;
|
|
41
|
+
/** Account that pays for the transaction and any account rent. */
|
|
24
42
|
payer: TransactionSigner<TAccountPayer>;
|
|
43
|
+
/**
|
|
44
|
+
* The SPL/MPL Noop program, used to log leaf data so off-chain indexers
|
|
45
|
+
* can reconstruct the tree.
|
|
46
|
+
*/
|
|
25
47
|
logWrapper?: Address<TAccountLogWrapper>;
|
|
48
|
+
/**
|
|
49
|
+
* The SPL/MPL Account Compression program that owns and manages the
|
|
50
|
+
* Merkle tree.
|
|
51
|
+
*/
|
|
26
52
|
compressionProgram?: Address<TAccountCompressionProgram>;
|
|
53
|
+
/** The SPL Token program. */
|
|
27
54
|
tokenProgram?: Address<TAccountTokenProgram>;
|
|
55
|
+
/**
|
|
56
|
+
* The Token Metadata program, invoked to read or (un)verify the
|
|
57
|
+
* legacy collection accounts.
|
|
58
|
+
*/
|
|
28
59
|
tokenMetadataProgram?: Address<TAccountTokenMetadataProgram>;
|
|
60
|
+
/** The Solana System program. */
|
|
29
61
|
systemProgram?: Address<TAccountSystemProgram>;
|
|
30
|
-
}
|
|
62
|
+
};
|
|
63
|
+
/**
|
|
64
|
+
* Compresses an existing decompressed (SPL/Token Metadata) NFT into a
|
|
65
|
+
* new leaf of a compressed Merkle tree.
|
|
66
|
+
*
|
|
67
|
+
* Reads the mint, token account, metadata and master edition of the
|
|
68
|
+
* decompressed NFT to build the leaf, then appends it to the tree.
|
|
69
|
+
*/
|
|
31
70
|
declare function getCompressInstructionAsync<TAccountTreeAuthority extends string, TAccountLeafOwner extends string, TAccountLeafDelegate extends string, TAccountMerkleTree extends string, TAccountTokenAccount extends string, TAccountMint extends string, TAccountMetadata extends string, TAccountMasterEdition extends string, TAccountPayer extends string, TAccountLogWrapper extends string, TAccountCompressionProgram extends string, TAccountTokenProgram extends string, TAccountTokenMetadataProgram extends string, TAccountSystemProgram extends string, TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS>(input: CompressAsyncInput<TAccountTreeAuthority, TAccountLeafOwner, TAccountLeafDelegate, TAccountMerkleTree, TAccountTokenAccount, TAccountMint, TAccountMetadata, TAccountMasterEdition, TAccountPayer, TAccountLogWrapper, TAccountCompressionProgram, TAccountTokenProgram, TAccountTokenMetadataProgram, TAccountSystemProgram>, config?: {
|
|
32
71
|
programAddress?: TProgramAddress;
|
|
33
72
|
}): Promise<CompressInstruction<TProgramAddress, TAccountTreeAuthority, TAccountLeafOwner, TAccountLeafDelegate, TAccountMerkleTree, TAccountTokenAccount, TAccountMint, TAccountMetadata, TAccountMasterEdition, TAccountPayer, TAccountLogWrapper, TAccountCompressionProgram, TAccountTokenProgram, TAccountTokenMetadataProgram, TAccountSystemProgram>>;
|
|
34
|
-
|
|
73
|
+
type CompressInput<TAccountTreeAuthority extends string = string, TAccountLeafOwner extends string = string, TAccountLeafDelegate extends string = string, TAccountMerkleTree extends string = string, TAccountTokenAccount extends string = string, TAccountMint extends string = string, TAccountMetadata extends string = string, TAccountMasterEdition extends string = string, TAccountPayer extends string = string, TAccountLogWrapper extends string = string, TAccountCompressionProgram extends string = string, TAccountTokenProgram extends string = string, TAccountTokenMetadataProgram extends string = string, TAccountSystemProgram extends string = string> = {
|
|
74
|
+
/**
|
|
75
|
+
* The tree's `TreeConfig` PDA, which stores its configuration and acts
|
|
76
|
+
* as the tree's authority for CPIs into the compression program.
|
|
77
|
+
*/
|
|
35
78
|
treeAuthority: Address<TAccountTreeAuthority>;
|
|
79
|
+
/** Owner of the compressed NFT leaf being operated on. */
|
|
36
80
|
leafOwner: TransactionSigner<TAccountLeafOwner>;
|
|
81
|
+
/**
|
|
82
|
+
* Delegate authority for the leaf; defaults to the leaf owner when no
|
|
83
|
+
* delegate is set.
|
|
84
|
+
*/
|
|
37
85
|
leafDelegate: Address<TAccountLeafDelegate>;
|
|
86
|
+
/**
|
|
87
|
+
* The concurrent Merkle tree account storing the compressed leaves,
|
|
88
|
+
* owned by the account compression program.
|
|
89
|
+
*/
|
|
38
90
|
merkleTree: Address<TAccountMerkleTree>;
|
|
91
|
+
/** Token account that will hold the decompressed NFT for `leafOwner`. */
|
|
39
92
|
tokenAccount: Address<TAccountTokenAccount>;
|
|
93
|
+
/** Mint account of the decompressed NFT, created fresh during decompression. */
|
|
40
94
|
mint: Address<TAccountMint>;
|
|
95
|
+
/** Metadata account created for the decompressed NFT. */
|
|
41
96
|
metadata: Address<TAccountMetadata>;
|
|
97
|
+
/** Master edition account created for the decompressed NFT. */
|
|
42
98
|
masterEdition: Address<TAccountMasterEdition>;
|
|
99
|
+
/** Account that pays for the transaction and any account rent. */
|
|
43
100
|
payer: TransactionSigner<TAccountPayer>;
|
|
101
|
+
/**
|
|
102
|
+
* The SPL/MPL Noop program, used to log leaf data so off-chain indexers
|
|
103
|
+
* can reconstruct the tree.
|
|
104
|
+
*/
|
|
44
105
|
logWrapper?: Address<TAccountLogWrapper>;
|
|
106
|
+
/**
|
|
107
|
+
* The SPL/MPL Account Compression program that owns and manages the
|
|
108
|
+
* Merkle tree.
|
|
109
|
+
*/
|
|
45
110
|
compressionProgram?: Address<TAccountCompressionProgram>;
|
|
111
|
+
/** The SPL Token program. */
|
|
46
112
|
tokenProgram?: Address<TAccountTokenProgram>;
|
|
113
|
+
/**
|
|
114
|
+
* The Token Metadata program, invoked to read or (un)verify the
|
|
115
|
+
* legacy collection accounts.
|
|
116
|
+
*/
|
|
47
117
|
tokenMetadataProgram?: Address<TAccountTokenMetadataProgram>;
|
|
118
|
+
/** The Solana System program. */
|
|
48
119
|
systemProgram?: Address<TAccountSystemProgram>;
|
|
49
|
-
}
|
|
120
|
+
};
|
|
121
|
+
/**
|
|
122
|
+
* Compresses an existing decompressed (SPL/Token Metadata) NFT into a
|
|
123
|
+
* new leaf of a compressed Merkle tree.
|
|
124
|
+
*
|
|
125
|
+
* Reads the mint, token account, metadata and master edition of the
|
|
126
|
+
* decompressed NFT to build the leaf, then appends it to the tree.
|
|
127
|
+
*/
|
|
50
128
|
declare function getCompressInstruction<TAccountTreeAuthority extends string, TAccountLeafOwner extends string, TAccountLeafDelegate extends string, TAccountMerkleTree extends string, TAccountTokenAccount extends string, TAccountMint extends string, TAccountMetadata extends string, TAccountMasterEdition extends string, TAccountPayer extends string, TAccountLogWrapper extends string, TAccountCompressionProgram extends string, TAccountTokenProgram extends string, TAccountTokenMetadataProgram extends string, TAccountSystemProgram extends string, TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS>(input: CompressInput<TAccountTreeAuthority, TAccountLeafOwner, TAccountLeafDelegate, TAccountMerkleTree, TAccountTokenAccount, TAccountMint, TAccountMetadata, TAccountMasterEdition, TAccountPayer, TAccountLogWrapper, TAccountCompressionProgram, TAccountTokenProgram, TAccountTokenMetadataProgram, TAccountSystemProgram>, config?: {
|
|
51
129
|
programAddress?: TProgramAddress;
|
|
52
130
|
}): CompressInstruction<TProgramAddress, TAccountTreeAuthority, TAccountLeafOwner, TAccountLeafDelegate, TAccountMerkleTree, TAccountTokenAccount, TAccountMint, TAccountMetadata, TAccountMasterEdition, TAccountPayer, TAccountLogWrapper, TAccountCompressionProgram, TAccountTokenProgram, TAccountTokenMetadataProgram, TAccountSystemProgram>;
|
|
53
|
-
|
|
131
|
+
type ParsedCompressInstruction<TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS, TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[]> = {
|
|
54
132
|
programAddress: Address<TProgram>;
|
|
55
133
|
accounts: {
|
|
134
|
+
/**
|
|
135
|
+
* The tree's `TreeConfig` PDA, which stores its configuration and acts
|
|
136
|
+
* as the tree's authority for CPIs into the compression program.
|
|
137
|
+
*/
|
|
56
138
|
treeAuthority: TAccountMetas[0];
|
|
139
|
+
/** Owner of the compressed NFT leaf being operated on. */
|
|
57
140
|
leafOwner: TAccountMetas[1];
|
|
141
|
+
/**
|
|
142
|
+
* Delegate authority for the leaf; defaults to the leaf owner when no
|
|
143
|
+
* delegate is set.
|
|
144
|
+
*/
|
|
58
145
|
leafDelegate: TAccountMetas[2];
|
|
146
|
+
/**
|
|
147
|
+
* The concurrent Merkle tree account storing the compressed leaves,
|
|
148
|
+
* owned by the account compression program.
|
|
149
|
+
*/
|
|
59
150
|
merkleTree: TAccountMetas[3];
|
|
151
|
+
/** Token account that will hold the decompressed NFT for `leafOwner`. */
|
|
60
152
|
tokenAccount: TAccountMetas[4];
|
|
153
|
+
/** Mint account of the decompressed NFT, created fresh during decompression. */
|
|
61
154
|
mint: TAccountMetas[5];
|
|
155
|
+
/** Metadata account created for the decompressed NFT. */
|
|
62
156
|
metadata: TAccountMetas[6];
|
|
157
|
+
/** Master edition account created for the decompressed NFT. */
|
|
63
158
|
masterEdition: TAccountMetas[7];
|
|
159
|
+
/** Account that pays for the transaction and any account rent. */
|
|
64
160
|
payer: TAccountMetas[8];
|
|
161
|
+
/**
|
|
162
|
+
* The SPL/MPL Noop program, used to log leaf data so off-chain indexers
|
|
163
|
+
* can reconstruct the tree.
|
|
164
|
+
*/
|
|
65
165
|
logWrapper: TAccountMetas[9];
|
|
166
|
+
/**
|
|
167
|
+
* The SPL/MPL Account Compression program that owns and manages the
|
|
168
|
+
* Merkle tree.
|
|
169
|
+
*/
|
|
66
170
|
compressionProgram: TAccountMetas[10];
|
|
171
|
+
/** The SPL Token program. */
|
|
67
172
|
tokenProgram: TAccountMetas[11];
|
|
173
|
+
/**
|
|
174
|
+
* The Token Metadata program, invoked to read or (un)verify the
|
|
175
|
+
* legacy collection accounts.
|
|
176
|
+
*/
|
|
68
177
|
tokenMetadataProgram: TAccountMetas[12];
|
|
178
|
+
/** The Solana System program. */
|
|
69
179
|
systemProgram: TAccountMetas[13];
|
|
70
180
|
};
|
|
71
181
|
data: CompressInstructionData;
|
|
72
|
-
}
|
|
182
|
+
};
|
|
73
183
|
declare function parseCompressInstruction<TProgram extends string, TAccountMetas extends readonly AccountMeta[]>(instruction: Instruction<TProgram> & InstructionWithAccounts<TAccountMetas> & InstructionWithData<ReadonlyUint8Array>): ParsedCompressInstruction<TProgram, TAccountMetas>;
|
|
74
184
|
//#endregion
|
|
75
185
|
export { COMPRESS_DISCRIMINATOR, CompressAsyncInput, CompressInput, CompressInstruction, CompressInstructionData, CompressInstructionDataArgs, ParsedCompressInstruction, getCompressDiscriminatorBytes, getCompressInstruction, getCompressInstructionAsync, getCompressInstructionDataCodec, getCompressInstructionDataDecoder, getCompressInstructionDataEncoder, parseCompressInstruction };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compress.d.ts","names":[],"sources":["../../../src/generated/instructions/compress.ts"],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"compress.d.ts","names":[],"sources":["../../../src/generated/instructions/compress.ts"],"mappings":"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"}
|
|
@@ -3,6 +3,13 @@ import "../programs/bubblegum.js";
|
|
|
3
3
|
import { SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, SolanaError, combineCodec, fixDecoderSize, fixEncoderSize, getBytesDecoder, getBytesEncoder, getStructDecoder, getStructEncoder, transformEncoder } from "@solana/kit";
|
|
4
4
|
import { getAccountMetaFactory, getAddressFromResolvedInstructionAccount } from "@solana/program-client-core";
|
|
5
5
|
//#region src/generated/instructions/compress.ts
|
|
6
|
+
/**
|
|
7
|
+
* This code was AUTOGENERATED using the Codama library.
|
|
8
|
+
* Please DO NOT EDIT THIS FILE, instead use visitors
|
|
9
|
+
* to add features, then rerun Codama to update it.
|
|
10
|
+
*
|
|
11
|
+
* @see https://github.com/codama-idl/codama
|
|
12
|
+
*/
|
|
6
13
|
const COMPRESS_DISCRIMINATOR = new Uint8Array([
|
|
7
14
|
82,
|
|
8
15
|
193,
|
|
@@ -28,6 +35,13 @@ function getCompressInstructionDataDecoder() {
|
|
|
28
35
|
function getCompressInstructionDataCodec() {
|
|
29
36
|
return combineCodec(getCompressInstructionDataEncoder(), getCompressInstructionDataDecoder());
|
|
30
37
|
}
|
|
38
|
+
/**
|
|
39
|
+
* Compresses an existing decompressed (SPL/Token Metadata) NFT into a
|
|
40
|
+
* new leaf of a compressed Merkle tree.
|
|
41
|
+
*
|
|
42
|
+
* Reads the mint, token account, metadata and master edition of the
|
|
43
|
+
* decompressed NFT to build the leaf, then appends it to the tree.
|
|
44
|
+
*/
|
|
31
45
|
async function getCompressInstructionAsync(input, config) {
|
|
32
46
|
const programAddress = config?.programAddress ?? "BGUMAp9Gq7iTEuizy4pqaxsTyUCBK68MDfK752saRPUY";
|
|
33
47
|
const accounts = {
|
|
@@ -116,6 +130,13 @@ async function getCompressInstructionAsync(input, config) {
|
|
|
116
130
|
programAddress
|
|
117
131
|
});
|
|
118
132
|
}
|
|
133
|
+
/**
|
|
134
|
+
* Compresses an existing decompressed (SPL/Token Metadata) NFT into a
|
|
135
|
+
* new leaf of a compressed Merkle tree.
|
|
136
|
+
*
|
|
137
|
+
* Reads the mint, token account, metadata and master edition of the
|
|
138
|
+
* decompressed NFT to build the leaf, then appends it to the tree.
|
|
139
|
+
*/
|
|
119
140
|
function getCompressInstruction(input, config) {
|
|
120
141
|
const programAddress = config?.programAddress ?? "BGUMAp9Gq7iTEuizy4pqaxsTyUCBK68MDfK752saRPUY";
|
|
121
142
|
const accounts = {
|