@macalinao/clients-mpl-bubblegum 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/generated/accounts/index.d.ts +2 -10
- package/dist/generated/accounts/treeConfig.d.ts +42 -38
- package/dist/generated/accounts/treeConfig.d.ts.map +1 -1
- package/dist/generated/accounts/treeConfig.js +70 -53
- package/dist/generated/accounts/treeConfig.js.map +1 -1
- package/dist/generated/accounts/voucher.d.ts +33 -30
- package/dist/generated/accounts/voucher.d.ts.map +1 -1
- package/dist/generated/accounts/voucher.js +61 -45
- package/dist/generated/accounts/voucher.js.map +1 -1
- package/dist/generated/errors/bubblegum.d.ts +71 -74
- package/dist/generated/errors/bubblegum.d.ts.map +1 -1
- package/dist/generated/errors/bubblegum.js +126 -133
- package/dist/generated/errors/bubblegum.js.map +1 -1
- package/dist/generated/errors/index.d.ts +1 -9
- package/dist/generated/index.d.ts +63 -13
- package/dist/generated/instructions/burn.d.ts +70 -65
- package/dist/generated/instructions/burn.d.ts.map +1 -1
- package/dist/generated/instructions/burn.js +168 -98
- package/dist/generated/instructions/burn.js.map +1 -1
- package/dist/generated/instructions/burnV2.d.ts +107 -96
- package/dist/generated/instructions/burnV2.d.ts.map +1 -1
- package/dist/generated/instructions/burnV2.js +239 -136
- package/dist/generated/instructions/burnV2.js.map +1 -1
- package/dist/generated/instructions/cancelRedeem.d.ts +54 -53
- package/dist/generated/instructions/cancelRedeem.d.ts.map +1 -1
- package/dist/generated/instructions/cancelRedeem.js +154 -90
- package/dist/generated/instructions/cancelRedeem.js.map +1 -1
- package/dist/generated/instructions/closeTreeV2.d.ts +64 -60
- package/dist/generated/instructions/closeTreeV2.d.ts.map +1 -1
- package/dist/generated/instructions/closeTreeV2.js +152 -84
- package/dist/generated/instructions/closeTreeV2.js.map +1 -1
- package/dist/generated/instructions/collectV2.d.ts +28 -35
- package/dist/generated/instructions/collectV2.d.ts.map +1 -1
- package/dist/generated/instructions/collectV2.js +63 -60
- package/dist/generated/instructions/collectV2.js.map +1 -1
- package/dist/generated/instructions/compress.d.ts +71 -71
- package/dist/generated/instructions/compress.d.ts.map +1 -1
- package/dist/generated/instructions/compress.js +233 -116
- package/dist/generated/instructions/compress.js.map +1 -1
- package/dist/generated/instructions/createTree.d.ts +62 -59
- package/dist/generated/instructions/createTree.d.ts.map +1 -1
- package/dist/generated/instructions/createTree.js +164 -94
- package/dist/generated/instructions/createTree.js.map +1 -1
- package/dist/generated/instructions/createTreeV2.d.ts +64 -61
- package/dist/generated/instructions/createTreeV2.d.ts.map +1 -1
- package/dist/generated/instructions/createTreeV2.js +168 -100
- package/dist/generated/instructions/createTreeV2.js.map +1 -1
- package/dist/generated/instructions/decompressV1.d.ts +73 -72
- package/dist/generated/instructions/decompressV1.d.ts.map +1 -1
- package/dist/generated/instructions/decompressV1.js +251 -128
- package/dist/generated/instructions/decompressV1.js.map +1 -1
- package/dist/generated/instructions/delegate.d.ts +73 -68
- package/dist/generated/instructions/delegate.d.ts.map +1 -1
- package/dist/generated/instructions/delegate.js +179 -107
- package/dist/generated/instructions/delegate.js.map +1 -1
- package/dist/generated/instructions/delegateAndFreezeV2.d.ts +92 -84
- package/dist/generated/instructions/delegateAndFreezeV2.d.ts.map +1 -1
- package/dist/generated/instructions/delegateAndFreezeV2.js +201 -136
- package/dist/generated/instructions/delegateAndFreezeV2.js.map +1 -1
- package/dist/generated/instructions/delegateV2.d.ts +92 -84
- package/dist/generated/instructions/delegateV2.d.ts.map +1 -1
- package/dist/generated/instructions/delegateV2.js +200 -134
- package/dist/generated/instructions/delegateV2.js.map +1 -1
- package/dist/generated/instructions/freezeV2.d.ts +99 -88
- package/dist/generated/instructions/freezeV2.d.ts.map +1 -1
- package/dist/generated/instructions/freezeV2.js +209 -123
- package/dist/generated/instructions/freezeV2.js.map +1 -1
- package/dist/generated/instructions/index.d.ts +36 -44
- package/dist/generated/instructions/mintToCollectionV1.d.ts +94 -89
- package/dist/generated/instructions/mintToCollectionV1.d.ts.map +1 -1
- package/dist/generated/instructions/mintToCollectionV1.js +277 -139
- package/dist/generated/instructions/mintToCollectionV1.js.map +1 -1
- package/dist/generated/instructions/mintV1.d.ts +61 -60
- package/dist/generated/instructions/mintV1.d.ts.map +1 -1
- package/dist/generated/instructions/mintV1.js +177 -97
- package/dist/generated/instructions/mintV1.js.map +1 -1
- package/dist/generated/instructions/mintV2.d.ts +86 -82
- package/dist/generated/instructions/mintV2.d.ts.map +1 -1
- package/dist/generated/instructions/mintV2.js +244 -135
- package/dist/generated/instructions/mintV2.js.map +1 -1
- package/dist/generated/instructions/redeem.d.ts +73 -68
- package/dist/generated/instructions/redeem.d.ts.map +1 -1
- package/dist/generated/instructions/redeem.js +179 -101
- package/dist/generated/instructions/redeem.js.map +1 -1
- package/dist/generated/instructions/setAndVerifyCollection.d.ts +133 -117
- package/dist/generated/instructions/setAndVerifyCollection.d.ts.map +1 -1
- package/dist/generated/instructions/setAndVerifyCollection.js +295 -151
- package/dist/generated/instructions/setAndVerifyCollection.js.map +1 -1
- package/dist/generated/instructions/setCollectionV2.d.ts +125 -110
- package/dist/generated/instructions/setCollectionV2.d.ts.map +1 -1
- package/dist/generated/instructions/setCollectionV2.js +257 -146
- package/dist/generated/instructions/setCollectionV2.js.map +1 -1
- package/dist/generated/instructions/setDecompressableState.d.ts +32 -39
- package/dist/generated/instructions/setDecompressableState.d.ts.map +1 -1
- package/dist/generated/instructions/setDecompressableState.js +66 -69
- package/dist/generated/instructions/setDecompressableState.js.map +1 -1
- package/dist/generated/instructions/setDecompressibleState.d.ts +32 -39
- package/dist/generated/instructions/setDecompressibleState.d.ts.map +1 -1
- package/dist/generated/instructions/setDecompressibleState.js +66 -69
- package/dist/generated/instructions/setDecompressibleState.js.map +1 -1
- package/dist/generated/instructions/setNonTransferableV2.d.ts +101 -90
- package/dist/generated/instructions/setNonTransferableV2.d.ts.map +1 -1
- package/dist/generated/instructions/setNonTransferableV2.js +210 -125
- package/dist/generated/instructions/setNonTransferableV2.js.map +1 -1
- package/dist/generated/instructions/setTreeDelegate.d.ts +44 -44
- package/dist/generated/instructions/setTreeDelegate.d.ts.map +1 -1
- package/dist/generated/instructions/setTreeDelegate.js +127 -77
- package/dist/generated/instructions/setTreeDelegate.js.map +1 -1
- package/dist/generated/instructions/thawAndRevokeV2.d.ts +87 -79
- package/dist/generated/instructions/thawAndRevokeV2.d.ts.map +1 -1
- package/dist/generated/instructions/thawAndRevokeV2.js +190 -124
- package/dist/generated/instructions/thawAndRevokeV2.js.map +1 -1
- package/dist/generated/instructions/thawV2.d.ts +99 -88
- package/dist/generated/instructions/thawV2.d.ts.map +1 -1
- package/dist/generated/instructions/thawV2.js +209 -123
- package/dist/generated/instructions/thawV2.js.map +1 -1
- package/dist/generated/instructions/transfer.d.ts +73 -68
- package/dist/generated/instructions/transfer.d.ts.map +1 -1
- package/dist/generated/instructions/transfer.js +179 -101
- package/dist/generated/instructions/transfer.js.map +1 -1
- package/dist/generated/instructions/transferV2.d.ts +104 -93
- package/dist/generated/instructions/transferV2.d.ts.map +1 -1
- package/dist/generated/instructions/transferV2.js +220 -126
- package/dist/generated/instructions/transferV2.js.map +1 -1
- package/dist/generated/instructions/unverifyCollection.d.ts +129 -114
- package/dist/generated/instructions/unverifyCollection.d.ts.map +1 -1
- package/dist/generated/instructions/unverifyCollection.js +293 -146
- package/dist/generated/instructions/unverifyCollection.js.map +1 -1
- package/dist/generated/instructions/unverifyCreator.d.ts +81 -75
- package/dist/generated/instructions/unverifyCreator.d.ts.map +1 -1
- package/dist/generated/instructions/unverifyCreator.js +194 -106
- package/dist/generated/instructions/unverifyCreator.js.map +1 -1
- package/dist/generated/instructions/unverifyCreatorV2.d.ts +85 -79
- package/dist/generated/instructions/unverifyCreatorV2.d.ts.map +1 -1
- package/dist/generated/instructions/unverifyCreatorV2.js +198 -118
- package/dist/generated/instructions/unverifyCreatorV2.js.map +1 -1
- package/dist/generated/instructions/updateAssetDataV2.d.ts +108 -95
- package/dist/generated/instructions/updateAssetDataV2.d.ts.map +1 -1
- package/dist/generated/instructions/updateAssetDataV2.js +215 -136
- package/dist/generated/instructions/updateAssetDataV2.js.map +1 -1
- package/dist/generated/instructions/updateMetadata.d.ts +106 -96
- package/dist/generated/instructions/updateMetadata.d.ts.map +1 -1
- package/dist/generated/instructions/updateMetadata.js +243 -135
- package/dist/generated/instructions/updateMetadata.js.map +1 -1
- package/dist/generated/instructions/updateMetadataV2.d.ts +103 -91
- package/dist/generated/instructions/updateMetadataV2.d.ts.map +1 -1
- package/dist/generated/instructions/updateMetadataV2.js +212 -123
- package/dist/generated/instructions/updateMetadataV2.js.map +1 -1
- package/dist/generated/instructions/verifyCollection.d.ts +129 -114
- package/dist/generated/instructions/verifyCollection.d.ts.map +1 -1
- package/dist/generated/instructions/verifyCollection.js +293 -146
- package/dist/generated/instructions/verifyCollection.js.map +1 -1
- package/dist/generated/instructions/verifyCreator.d.ts +81 -75
- package/dist/generated/instructions/verifyCreator.d.ts.map +1 -1
- package/dist/generated/instructions/verifyCreator.js +193 -107
- package/dist/generated/instructions/verifyCreator.js.map +1 -1
- package/dist/generated/instructions/verifyCreatorV2.d.ts +85 -79
- package/dist/generated/instructions/verifyCreatorV2.d.ts.map +1 -1
- package/dist/generated/instructions/verifyCreatorV2.js +198 -118
- package/dist/generated/instructions/verifyCreatorV2.js.map +1 -1
- package/dist/generated/pdas/assetId.d.ts +16 -0
- package/dist/generated/pdas/assetId.d.ts.map +1 -0
- package/dist/generated/pdas/assetId.js +18 -0
- package/dist/generated/pdas/assetId.js.map +1 -0
- package/dist/generated/pdas/bubblegumSigner.d.ts +10 -0
- package/dist/generated/pdas/bubblegumSigner.d.ts.map +1 -0
- package/dist/generated/pdas/bubblegumSigner.js +14 -0
- package/dist/generated/pdas/bubblegumSigner.js.map +1 -0
- package/dist/generated/pdas/index.d.ts +7 -0
- package/dist/generated/pdas/masterEdition.d.ts +14 -0
- package/dist/generated/pdas/masterEdition.d.ts.map +1 -0
- package/dist/generated/pdas/masterEdition.js +19 -0
- package/dist/generated/pdas/masterEdition.js.map +1 -0
- package/dist/generated/pdas/metadata.d.ts +14 -0
- package/dist/generated/pdas/metadata.d.ts.map +1 -0
- package/dist/generated/pdas/metadata.js +18 -0
- package/dist/generated/pdas/metadata.js.map +1 -0
- package/dist/generated/pdas/mintAuthority.d.ts +14 -0
- package/dist/generated/pdas/mintAuthority.d.ts.map +1 -0
- package/dist/generated/pdas/mintAuthority.js +14 -0
- package/dist/generated/pdas/mintAuthority.js.map +1 -0
- package/dist/generated/pdas/treeConfig.d.ts +14 -0
- package/dist/generated/pdas/treeConfig.d.ts.map +1 -0
- package/dist/generated/pdas/treeConfig.js +14 -0
- package/dist/generated/pdas/treeConfig.js.map +1 -0
- package/dist/generated/pdas/voucher.d.ts +16 -0
- package/dist/generated/pdas/voucher.d.ts.map +1 -0
- package/dist/generated/pdas/voucher.js +18 -0
- package/dist/generated/pdas/voucher.js.map +1 -0
- package/dist/generated/programs/bubblegum.d.ts +186 -143
- package/dist/generated/programs/bubblegum.d.ts.map +1 -1
- package/dist/generated/programs/bubblegum.js +839 -561
- package/dist/generated/programs/bubblegum.js.map +1 -1
- package/dist/generated/programs/index.d.ts +2 -9
- package/dist/generated/programs/mplTokenMetadata.d.ts +20 -0
- package/dist/generated/programs/mplTokenMetadata.d.ts.map +1 -0
- package/dist/generated/programs/mplTokenMetadata.js +17 -0
- package/dist/generated/programs/mplTokenMetadata.js.map +1 -0
- package/dist/generated/types/assetDataSchema.d.ts +13 -16
- package/dist/generated/types/assetDataSchema.d.ts.map +1 -1
- package/dist/generated/types/assetDataSchema.js +16 -19
- package/dist/generated/types/assetDataSchema.js.map +1 -1
- package/dist/generated/types/bubblegumEventType.d.ts +12 -15
- package/dist/generated/types/bubblegumEventType.d.ts.map +1 -1
- package/dist/generated/types/bubblegumEventType.js +15 -18
- package/dist/generated/types/bubblegumEventType.js.map +1 -1
- package/dist/generated/types/collection.d.ts +12 -15
- package/dist/generated/types/collection.d.ts.map +1 -1
- package/dist/generated/types/collection.js +11 -20
- package/dist/generated/types/collection.js.map +1 -1
- package/dist/generated/types/creator.d.ts +18 -21
- package/dist/generated/types/creator.d.ts.map +1 -1
- package/dist/generated/types/creator.js +19 -22
- package/dist/generated/types/creator.js.map +1 -1
- package/dist/generated/types/decompressibleState.d.ts +12 -15
- package/dist/generated/types/decompressibleState.d.ts.map +1 -1
- package/dist/generated/types/decompressibleState.js +15 -18
- package/dist/generated/types/decompressibleState.js.map +1 -1
- package/dist/generated/types/index.d.ts +15 -23
- package/dist/generated/types/instructionName.d.ts +45 -48
- package/dist/generated/types/instructionName.d.ts.map +1 -1
- package/dist/generated/types/instructionName.js +48 -51
- package/dist/generated/types/instructionName.js.map +1 -1
- package/dist/generated/types/leafSchema.d.ts +48 -51
- package/dist/generated/types/leafSchema.d.ts.map +1 -1
- package/dist/generated/types/leafSchema.js +55 -72
- package/dist/generated/types/leafSchema.js.map +1 -1
- package/dist/generated/types/metadataArgs.d.ts +59 -58
- package/dist/generated/types/metadataArgs.d.ts.map +1 -1
- package/dist/generated/types/metadataArgs.js +42 -41
- package/dist/generated/types/metadataArgs.js.map +1 -1
- package/dist/generated/types/metadataArgsV2.d.ts +48 -50
- package/dist/generated/types/metadataArgsV2.d.ts.map +1 -1
- package/dist/generated/types/metadataArgsV2.js +33 -35
- package/dist/generated/types/metadataArgsV2.js.map +1 -1
- package/dist/generated/types/tokenProgramVersion.d.ts +12 -15
- package/dist/generated/types/tokenProgramVersion.d.ts.map +1 -1
- package/dist/generated/types/tokenProgramVersion.js +15 -18
- package/dist/generated/types/tokenProgramVersion.js.map +1 -1
- package/dist/generated/types/tokenStandard.d.ts +14 -17
- package/dist/generated/types/tokenStandard.d.ts.map +1 -1
- package/dist/generated/types/tokenStandard.js +17 -20
- package/dist/generated/types/tokenStandard.js.map +1 -1
- package/dist/generated/types/updateArgs.d.ts +25 -28
- package/dist/generated/types/updateArgs.d.ts.map +1 -1
- package/dist/generated/types/updateArgs.js +28 -49
- package/dist/generated/types/updateArgs.js.map +1 -1
- package/dist/generated/types/useMethod.d.ts +13 -16
- package/dist/generated/types/useMethod.d.ts.map +1 -1
- package/dist/generated/types/useMethod.js +16 -19
- package/dist/generated/types/useMethod.js.map +1 -1
- package/dist/generated/types/uses.d.ts +17 -20
- package/dist/generated/types/uses.d.ts.map +1 -1
- package/dist/generated/types/uses.js +20 -23
- package/dist/generated/types/uses.js.map +1 -1
- package/dist/generated/types/version.d.ts +12 -15
- package/dist/generated/types/version.d.ts.map +1 -1
- package/dist/generated/types/version.js +15 -18
- package/dist/generated/types/version.js.map +1 -1
- package/dist/index.d.ts +64 -8
- package/dist/index.js +64 -8
- package/package.json +7 -5
- package/src/generated/accounts/treeConfig.ts +22 -0
- package/src/generated/accounts/voucher.ts +22 -0
- package/src/generated/errors/bubblegum.ts +1 -1
- package/src/generated/index.ts +1 -0
- package/src/generated/instructions/burn.ts +155 -11
- package/src/generated/instructions/burnV2.ts +226 -16
- package/src/generated/instructions/cancelRedeem.ts +151 -11
- package/src/generated/instructions/closeTreeV2.ts +150 -11
- package/src/generated/instructions/collectV2.ts +3 -3
- package/src/generated/instructions/compress.ts +219 -18
- package/src/generated/instructions/createTree.ts +153 -11
- package/src/generated/instructions/createTreeV2.ts +154 -11
- package/src/generated/instructions/decompressV1.ts +258 -16
- package/src/generated/instructions/delegate.ts +170 -12
- package/src/generated/instructions/delegateAndFreezeV2.ts +184 -13
- package/src/generated/instructions/delegateV2.ts +184 -13
- package/src/generated/instructions/freezeV2.ts +188 -14
- package/src/generated/instructions/mintToCollectionV1.ts +296 -21
- package/src/generated/instructions/mintV1.ts +169 -13
- package/src/generated/instructions/mintV2.ts +231 -17
- package/src/generated/instructions/redeem.ts +164 -12
- package/src/generated/instructions/setAndVerifyCollection.ts +307 -21
- package/src/generated/instructions/setCollectionV2.ts +253 -19
- package/src/generated/instructions/setDecompressableState.ts +3 -3
- package/src/generated/instructions/setDecompressibleState.ts +3 -3
- package/src/generated/instructions/setNonTransferableV2.ts +189 -14
- package/src/generated/instructions/setTreeDelegate.ts +105 -7
- package/src/generated/instructions/thawAndRevokeV2.ts +168 -12
- package/src/generated/instructions/thawV2.ts +188 -14
- package/src/generated/instructions/transfer.ts +164 -12
- package/src/generated/instructions/transferV2.ts +198 -15
- package/src/generated/instructions/unverifyCollection.ts +306 -21
- package/src/generated/instructions/unverifyCreator.ts +174 -13
- package/src/generated/instructions/unverifyCreatorV2.ts +176 -13
- package/src/generated/instructions/updateAssetDataV2.ts +190 -14
- package/src/generated/instructions/updateMetadata.ts +233 -17
- package/src/generated/instructions/updateMetadataV2.ts +189 -14
- package/src/generated/instructions/verifyCollection.ts +306 -21
- package/src/generated/instructions/verifyCreator.ts +174 -13
- package/src/generated/instructions/verifyCreatorV2.ts +176 -13
- package/src/generated/pdas/assetId.ts +40 -0
- package/src/generated/pdas/bubblegumSigner.ts +23 -0
- package/{dist/generated/accounts/index.js → src/generated/pdas/index.ts} +6 -1
- package/src/generated/pdas/masterEdition.ts +38 -0
- package/src/generated/pdas/metadata.ts +37 -0
- package/src/generated/pdas/mintAuthority.ts +29 -0
- package/src/generated/pdas/treeConfig.ts +29 -0
- package/src/generated/pdas/voucher.ts +40 -0
- package/src/generated/programs/bubblegum.ts +208 -165
- package/src/generated/programs/index.ts +1 -0
- package/src/generated/programs/mplTokenMetadata.ts +42 -0
- package/dist/.tsbuildinfo +0 -1
- package/dist/generated/accounts/index.d.ts.map +0 -1
- package/dist/generated/accounts/index.js.map +0 -1
- package/dist/generated/errors/index.d.ts.map +0 -1
- package/dist/generated/errors/index.js +0 -9
- package/dist/generated/errors/index.js.map +0 -1
- package/dist/generated/index.d.ts.map +0 -1
- package/dist/generated/index.js +0 -13
- package/dist/generated/index.js.map +0 -1
- package/dist/generated/instructions/index.d.ts.map +0 -1
- package/dist/generated/instructions/index.js +0 -44
- package/dist/generated/instructions/index.js.map +0 -1
- package/dist/generated/programs/index.d.ts.map +0 -1
- package/dist/generated/programs/index.js +0 -9
- package/dist/generated/programs/index.js.map +0 -1
- package/dist/generated/types/index.d.ts.map +0 -1
- package/dist/generated/types/index.js +0 -23
- package/dist/generated/types/index.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
|
@@ -25,6 +25,7 @@ import type {
|
|
|
25
25
|
import type { ResolvedInstructionAccount } from "@solana/program-client-core";
|
|
26
26
|
import type { MetadataArgs, MetadataArgsArgs } from "../types/index.js";
|
|
27
27
|
import {
|
|
28
|
+
address,
|
|
28
29
|
combineCodec,
|
|
29
30
|
fixDecoderSize,
|
|
30
31
|
fixEncoderSize,
|
|
@@ -44,7 +45,16 @@ import {
|
|
|
44
45
|
SolanaError,
|
|
45
46
|
transformEncoder,
|
|
46
47
|
} from "@solana/kit";
|
|
47
|
-
import {
|
|
48
|
+
import {
|
|
49
|
+
getAccountMetaFactory,
|
|
50
|
+
getAddressFromResolvedInstructionAccount,
|
|
51
|
+
} from "@solana/program-client-core";
|
|
52
|
+
import {
|
|
53
|
+
findBubblegumSignerPda,
|
|
54
|
+
findMasterEditionPda,
|
|
55
|
+
findMetadataPda,
|
|
56
|
+
findTreeConfigPda,
|
|
57
|
+
} from "../pdas/index.js";
|
|
48
58
|
import { BUBBLEGUM_PROGRAM_ADDRESS } from "../programs/index.js";
|
|
49
59
|
import {
|
|
50
60
|
getMetadataArgsDecoder,
|
|
@@ -62,27 +72,33 @@ export function getVerifyCollectionDiscriminatorBytes(): ReadonlyUint8Array {
|
|
|
62
72
|
|
|
63
73
|
export type VerifyCollectionInstruction<
|
|
64
74
|
TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,
|
|
65
|
-
TAccountTreeAuthority extends string | AccountMeta = string,
|
|
66
|
-
TAccountLeafOwner extends string | AccountMeta = string,
|
|
67
|
-
TAccountLeafDelegate extends string | AccountMeta = string,
|
|
68
|
-
TAccountMerkleTree extends string | AccountMeta = string,
|
|
69
|
-
TAccountPayer extends string | AccountMeta = string,
|
|
70
|
-
TAccountTreeDelegate extends string | AccountMeta = string,
|
|
71
|
-
TAccountCollectionAuthority extends string | AccountMeta = string,
|
|
72
|
-
TAccountCollectionAuthorityRecordPda extends
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
75
|
+
TAccountTreeAuthority extends string | AccountMeta<string> = string,
|
|
76
|
+
TAccountLeafOwner extends string | AccountMeta<string> = string,
|
|
77
|
+
TAccountLeafDelegate extends string | AccountMeta<string> = string,
|
|
78
|
+
TAccountMerkleTree extends string | AccountMeta<string> = string,
|
|
79
|
+
TAccountPayer extends string | AccountMeta<string> = string,
|
|
80
|
+
TAccountTreeDelegate extends string | AccountMeta<string> = string,
|
|
81
|
+
TAccountCollectionAuthority extends string | AccountMeta<string> = string,
|
|
82
|
+
TAccountCollectionAuthorityRecordPda extends
|
|
83
|
+
| string
|
|
84
|
+
| AccountMeta<string> = "BGUMAp9Gq7iTEuizy4pqaxsTyUCBK68MDfK752saRPUY",
|
|
85
|
+
TAccountCollectionMint extends string | AccountMeta<string> = string,
|
|
86
|
+
TAccountCollectionMetadata extends string | AccountMeta<string> = string,
|
|
87
|
+
TAccountEditionAccount extends string | AccountMeta<string> = string,
|
|
88
|
+
TAccountBubblegumSigner extends string | AccountMeta<string> = string,
|
|
89
|
+
TAccountLogWrapper extends
|
|
90
|
+
| string
|
|
91
|
+
| AccountMeta<string> = "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV",
|
|
92
|
+
TAccountCompressionProgram extends
|
|
93
|
+
| string
|
|
94
|
+
| AccountMeta<string> = "cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK",
|
|
79
95
|
TAccountTokenMetadataProgram extends
|
|
80
96
|
| string
|
|
81
|
-
| AccountMeta = "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s",
|
|
97
|
+
| AccountMeta<string> = "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s",
|
|
82
98
|
TAccountSystemProgram extends
|
|
83
99
|
| string
|
|
84
|
-
| AccountMeta = "11111111111111111111111111111111",
|
|
85
|
-
TRemainingAccounts extends readonly AccountMeta[] = [],
|
|
100
|
+
| AccountMeta<string> = "11111111111111111111111111111111",
|
|
101
|
+
TRemainingAccounts extends readonly AccountMeta<string>[] = [],
|
|
86
102
|
> = Instruction<TProgram> &
|
|
87
103
|
InstructionWithData<ReadonlyUint8Array> &
|
|
88
104
|
InstructionWithAccounts<
|
|
@@ -197,6 +213,263 @@ export function getVerifyCollectionInstructionDataCodec(): Codec<
|
|
|
197
213
|
);
|
|
198
214
|
}
|
|
199
215
|
|
|
216
|
+
export interface VerifyCollectionAsyncInput<
|
|
217
|
+
TAccountTreeAuthority extends string = string,
|
|
218
|
+
TAccountLeafOwner extends string = string,
|
|
219
|
+
TAccountLeafDelegate extends string = string,
|
|
220
|
+
TAccountMerkleTree extends string = string,
|
|
221
|
+
TAccountPayer extends string = string,
|
|
222
|
+
TAccountTreeDelegate extends string = string,
|
|
223
|
+
TAccountCollectionAuthority extends string = string,
|
|
224
|
+
TAccountCollectionAuthorityRecordPda extends string = string,
|
|
225
|
+
TAccountCollectionMint extends string = string,
|
|
226
|
+
TAccountCollectionMetadata extends string = string,
|
|
227
|
+
TAccountEditionAccount extends string = string,
|
|
228
|
+
TAccountBubblegumSigner extends string = string,
|
|
229
|
+
TAccountLogWrapper extends string = string,
|
|
230
|
+
TAccountCompressionProgram extends string = string,
|
|
231
|
+
TAccountTokenMetadataProgram extends string = string,
|
|
232
|
+
TAccountSystemProgram extends string = string,
|
|
233
|
+
> {
|
|
234
|
+
treeAuthority?: Address<TAccountTreeAuthority>;
|
|
235
|
+
leafOwner: Address<TAccountLeafOwner>;
|
|
236
|
+
leafDelegate: Address<TAccountLeafDelegate>;
|
|
237
|
+
merkleTree: Address<TAccountMerkleTree>;
|
|
238
|
+
payer: TransactionSigner<TAccountPayer>;
|
|
239
|
+
/**
|
|
240
|
+
* This account is checked to be a signer in
|
|
241
|
+
* the case of `set_and_verify_collection` where
|
|
242
|
+
* we are actually changing the NFT metadata.
|
|
243
|
+
*/
|
|
244
|
+
treeDelegate: Address<TAccountTreeDelegate>;
|
|
245
|
+
collectionAuthority: TransactionSigner<TAccountCollectionAuthority>;
|
|
246
|
+
/**
|
|
247
|
+
* If there is no collecton authority record PDA then
|
|
248
|
+
* this must be the Bubblegum program address.
|
|
249
|
+
*/
|
|
250
|
+
collectionAuthorityRecordPda?: Address<TAccountCollectionAuthorityRecordPda>;
|
|
251
|
+
collectionMint: Address<TAccountCollectionMint>;
|
|
252
|
+
collectionMetadata?: Address<TAccountCollectionMetadata>;
|
|
253
|
+
editionAccount?: Address<TAccountEditionAccount>;
|
|
254
|
+
bubblegumSigner?: Address<TAccountBubblegumSigner>;
|
|
255
|
+
logWrapper?: Address<TAccountLogWrapper>;
|
|
256
|
+
compressionProgram?: Address<TAccountCompressionProgram>;
|
|
257
|
+
tokenMetadataProgram?: Address<TAccountTokenMetadataProgram>;
|
|
258
|
+
systemProgram?: Address<TAccountSystemProgram>;
|
|
259
|
+
root: VerifyCollectionInstructionDataArgs["root"];
|
|
260
|
+
dataHash: VerifyCollectionInstructionDataArgs["dataHash"];
|
|
261
|
+
creatorHash: VerifyCollectionInstructionDataArgs["creatorHash"];
|
|
262
|
+
nonce: VerifyCollectionInstructionDataArgs["nonce"];
|
|
263
|
+
index: VerifyCollectionInstructionDataArgs["index"];
|
|
264
|
+
message: VerifyCollectionInstructionDataArgs["message"];
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
export async function getVerifyCollectionInstructionAsync<
|
|
268
|
+
TAccountTreeAuthority extends string,
|
|
269
|
+
TAccountLeafOwner extends string,
|
|
270
|
+
TAccountLeafDelegate extends string,
|
|
271
|
+
TAccountMerkleTree extends string,
|
|
272
|
+
TAccountPayer extends string,
|
|
273
|
+
TAccountTreeDelegate extends string,
|
|
274
|
+
TAccountCollectionAuthority extends string,
|
|
275
|
+
TAccountCollectionAuthorityRecordPda extends string,
|
|
276
|
+
TAccountCollectionMint extends string,
|
|
277
|
+
TAccountCollectionMetadata extends string,
|
|
278
|
+
TAccountEditionAccount extends string,
|
|
279
|
+
TAccountBubblegumSigner extends string,
|
|
280
|
+
TAccountLogWrapper extends string,
|
|
281
|
+
TAccountCompressionProgram extends string,
|
|
282
|
+
TAccountTokenMetadataProgram extends string,
|
|
283
|
+
TAccountSystemProgram extends string,
|
|
284
|
+
TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,
|
|
285
|
+
>(
|
|
286
|
+
input: VerifyCollectionAsyncInput<
|
|
287
|
+
TAccountTreeAuthority,
|
|
288
|
+
TAccountLeafOwner,
|
|
289
|
+
TAccountLeafDelegate,
|
|
290
|
+
TAccountMerkleTree,
|
|
291
|
+
TAccountPayer,
|
|
292
|
+
TAccountTreeDelegate,
|
|
293
|
+
TAccountCollectionAuthority,
|
|
294
|
+
TAccountCollectionAuthorityRecordPda,
|
|
295
|
+
TAccountCollectionMint,
|
|
296
|
+
TAccountCollectionMetadata,
|
|
297
|
+
TAccountEditionAccount,
|
|
298
|
+
TAccountBubblegumSigner,
|
|
299
|
+
TAccountLogWrapper,
|
|
300
|
+
TAccountCompressionProgram,
|
|
301
|
+
TAccountTokenMetadataProgram,
|
|
302
|
+
TAccountSystemProgram
|
|
303
|
+
>,
|
|
304
|
+
config?: { programAddress?: TProgramAddress },
|
|
305
|
+
): Promise<
|
|
306
|
+
VerifyCollectionInstruction<
|
|
307
|
+
TProgramAddress,
|
|
308
|
+
TAccountTreeAuthority,
|
|
309
|
+
TAccountLeafOwner,
|
|
310
|
+
TAccountLeafDelegate,
|
|
311
|
+
TAccountMerkleTree,
|
|
312
|
+
TAccountPayer,
|
|
313
|
+
TAccountTreeDelegate,
|
|
314
|
+
TAccountCollectionAuthority,
|
|
315
|
+
TAccountCollectionAuthorityRecordPda,
|
|
316
|
+
TAccountCollectionMint,
|
|
317
|
+
TAccountCollectionMetadata,
|
|
318
|
+
TAccountEditionAccount,
|
|
319
|
+
TAccountBubblegumSigner,
|
|
320
|
+
TAccountLogWrapper,
|
|
321
|
+
TAccountCompressionProgram,
|
|
322
|
+
TAccountTokenMetadataProgram,
|
|
323
|
+
TAccountSystemProgram
|
|
324
|
+
>
|
|
325
|
+
> {
|
|
326
|
+
// Program address.
|
|
327
|
+
const programAddress = config?.programAddress ?? BUBBLEGUM_PROGRAM_ADDRESS;
|
|
328
|
+
|
|
329
|
+
// Original accounts.
|
|
330
|
+
const originalAccounts = {
|
|
331
|
+
treeAuthority: { value: input.treeAuthority ?? null, isWritable: false },
|
|
332
|
+
leafOwner: { value: input.leafOwner ?? null, isWritable: false },
|
|
333
|
+
leafDelegate: { value: input.leafDelegate ?? null, isWritable: false },
|
|
334
|
+
merkleTree: { value: input.merkleTree ?? null, isWritable: true },
|
|
335
|
+
payer: { value: input.payer ?? null, isWritable: false },
|
|
336
|
+
treeDelegate: { value: input.treeDelegate ?? null, isWritable: false },
|
|
337
|
+
collectionAuthority: {
|
|
338
|
+
value: input.collectionAuthority ?? null,
|
|
339
|
+
isWritable: false,
|
|
340
|
+
},
|
|
341
|
+
collectionAuthorityRecordPda: {
|
|
342
|
+
value: input.collectionAuthorityRecordPda ?? null,
|
|
343
|
+
isWritable: false,
|
|
344
|
+
},
|
|
345
|
+
collectionMint: { value: input.collectionMint ?? null, isWritable: false },
|
|
346
|
+
collectionMetadata: {
|
|
347
|
+
value: input.collectionMetadata ?? null,
|
|
348
|
+
isWritable: true,
|
|
349
|
+
},
|
|
350
|
+
editionAccount: { value: input.editionAccount ?? null, isWritable: false },
|
|
351
|
+
bubblegumSigner: {
|
|
352
|
+
value: input.bubblegumSigner ?? null,
|
|
353
|
+
isWritable: false,
|
|
354
|
+
},
|
|
355
|
+
logWrapper: { value: input.logWrapper ?? null, isWritable: false },
|
|
356
|
+
compressionProgram: {
|
|
357
|
+
value: input.compressionProgram ?? null,
|
|
358
|
+
isWritable: false,
|
|
359
|
+
},
|
|
360
|
+
tokenMetadataProgram: {
|
|
361
|
+
value: input.tokenMetadataProgram ?? null,
|
|
362
|
+
isWritable: false,
|
|
363
|
+
},
|
|
364
|
+
systemProgram: { value: input.systemProgram ?? null, isWritable: false },
|
|
365
|
+
};
|
|
366
|
+
const accounts = originalAccounts as Record<
|
|
367
|
+
keyof typeof originalAccounts,
|
|
368
|
+
ResolvedInstructionAccount
|
|
369
|
+
>;
|
|
370
|
+
|
|
371
|
+
// Original args.
|
|
372
|
+
const args = { ...input };
|
|
373
|
+
|
|
374
|
+
// Resolve default values.
|
|
375
|
+
if (!accounts.treeAuthority.value) {
|
|
376
|
+
accounts.treeAuthority.value = await findTreeConfigPda({
|
|
377
|
+
merkleTree: getAddressFromResolvedInstructionAccount(
|
|
378
|
+
"merkleTree",
|
|
379
|
+
accounts.merkleTree.value,
|
|
380
|
+
),
|
|
381
|
+
});
|
|
382
|
+
}
|
|
383
|
+
if (!accounts.collectionAuthorityRecordPda.value) {
|
|
384
|
+
accounts.collectionAuthorityRecordPda.value = programAddress;
|
|
385
|
+
accounts.collectionAuthorityRecordPda.isWritable = false;
|
|
386
|
+
}
|
|
387
|
+
if (!accounts.collectionMetadata.value) {
|
|
388
|
+
accounts.collectionMetadata.value = await findMetadataPda({
|
|
389
|
+
programId: address("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),
|
|
390
|
+
mint: getAddressFromResolvedInstructionAccount(
|
|
391
|
+
"collectionMint",
|
|
392
|
+
accounts.collectionMint.value,
|
|
393
|
+
),
|
|
394
|
+
});
|
|
395
|
+
}
|
|
396
|
+
if (!accounts.editionAccount.value) {
|
|
397
|
+
accounts.editionAccount.value = await findMasterEditionPda({
|
|
398
|
+
programId: address("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),
|
|
399
|
+
mint: getAddressFromResolvedInstructionAccount(
|
|
400
|
+
"collectionMint",
|
|
401
|
+
accounts.collectionMint.value,
|
|
402
|
+
),
|
|
403
|
+
});
|
|
404
|
+
}
|
|
405
|
+
if (!accounts.bubblegumSigner.value) {
|
|
406
|
+
accounts.bubblegumSigner.value = await findBubblegumSignerPda();
|
|
407
|
+
}
|
|
408
|
+
if (!accounts.logWrapper.value) {
|
|
409
|
+
accounts.logWrapper.value =
|
|
410
|
+
"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV" as Address<"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV">;
|
|
411
|
+
}
|
|
412
|
+
if (!accounts.compressionProgram.value) {
|
|
413
|
+
accounts.compressionProgram.value =
|
|
414
|
+
"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK" as Address<"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK">;
|
|
415
|
+
}
|
|
416
|
+
if (!accounts.tokenMetadataProgram.value) {
|
|
417
|
+
accounts.tokenMetadataProgram.value =
|
|
418
|
+
"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s" as Address<"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s">;
|
|
419
|
+
}
|
|
420
|
+
if (!accounts.systemProgram.value) {
|
|
421
|
+
accounts.systemProgram.value =
|
|
422
|
+
"11111111111111111111111111111111" as Address<"11111111111111111111111111111111">;
|
|
423
|
+
}
|
|
424
|
+
|
|
425
|
+
const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
|
|
426
|
+
return Object.freeze({
|
|
427
|
+
accounts: [
|
|
428
|
+
getAccountMeta("treeAuthority", accounts.treeAuthority),
|
|
429
|
+
getAccountMeta("leafOwner", accounts.leafOwner),
|
|
430
|
+
getAccountMeta("leafDelegate", accounts.leafDelegate),
|
|
431
|
+
getAccountMeta("merkleTree", accounts.merkleTree),
|
|
432
|
+
getAccountMeta("payer", accounts.payer),
|
|
433
|
+
getAccountMeta("treeDelegate", accounts.treeDelegate),
|
|
434
|
+
getAccountMeta("collectionAuthority", accounts.collectionAuthority),
|
|
435
|
+
getAccountMeta(
|
|
436
|
+
"collectionAuthorityRecordPda",
|
|
437
|
+
accounts.collectionAuthorityRecordPda,
|
|
438
|
+
),
|
|
439
|
+
getAccountMeta("collectionMint", accounts.collectionMint),
|
|
440
|
+
getAccountMeta("collectionMetadata", accounts.collectionMetadata),
|
|
441
|
+
getAccountMeta("editionAccount", accounts.editionAccount),
|
|
442
|
+
getAccountMeta("bubblegumSigner", accounts.bubblegumSigner),
|
|
443
|
+
getAccountMeta("logWrapper", accounts.logWrapper),
|
|
444
|
+
getAccountMeta("compressionProgram", accounts.compressionProgram),
|
|
445
|
+
getAccountMeta("tokenMetadataProgram", accounts.tokenMetadataProgram),
|
|
446
|
+
getAccountMeta("systemProgram", accounts.systemProgram),
|
|
447
|
+
],
|
|
448
|
+
data: getVerifyCollectionInstructionDataEncoder().encode(
|
|
449
|
+
args as VerifyCollectionInstructionDataArgs,
|
|
450
|
+
),
|
|
451
|
+
programAddress,
|
|
452
|
+
} as VerifyCollectionInstruction<
|
|
453
|
+
TProgramAddress,
|
|
454
|
+
TAccountTreeAuthority,
|
|
455
|
+
TAccountLeafOwner,
|
|
456
|
+
TAccountLeafDelegate,
|
|
457
|
+
TAccountMerkleTree,
|
|
458
|
+
TAccountPayer,
|
|
459
|
+
TAccountTreeDelegate,
|
|
460
|
+
TAccountCollectionAuthority,
|
|
461
|
+
TAccountCollectionAuthorityRecordPda,
|
|
462
|
+
TAccountCollectionMint,
|
|
463
|
+
TAccountCollectionMetadata,
|
|
464
|
+
TAccountEditionAccount,
|
|
465
|
+
TAccountBubblegumSigner,
|
|
466
|
+
TAccountLogWrapper,
|
|
467
|
+
TAccountCompressionProgram,
|
|
468
|
+
TAccountTokenMetadataProgram,
|
|
469
|
+
TAccountSystemProgram
|
|
470
|
+
>);
|
|
471
|
+
}
|
|
472
|
+
|
|
200
473
|
export interface VerifyCollectionInput<
|
|
201
474
|
TAccountTreeAuthority extends string = string,
|
|
202
475
|
TAccountLeafOwner extends string = string,
|
|
@@ -231,13 +504,13 @@ export interface VerifyCollectionInput<
|
|
|
231
504
|
* If there is no collecton authority record PDA then
|
|
232
505
|
* this must be the Bubblegum program address.
|
|
233
506
|
*/
|
|
234
|
-
collectionAuthorityRecordPda
|
|
507
|
+
collectionAuthorityRecordPda?: Address<TAccountCollectionAuthorityRecordPda>;
|
|
235
508
|
collectionMint: Address<TAccountCollectionMint>;
|
|
236
509
|
collectionMetadata: Address<TAccountCollectionMetadata>;
|
|
237
510
|
editionAccount: Address<TAccountEditionAccount>;
|
|
238
511
|
bubblegumSigner: Address<TAccountBubblegumSigner>;
|
|
239
|
-
logWrapper
|
|
240
|
-
compressionProgram
|
|
512
|
+
logWrapper?: Address<TAccountLogWrapper>;
|
|
513
|
+
compressionProgram?: Address<TAccountCompressionProgram>;
|
|
241
514
|
tokenMetadataProgram?: Address<TAccountTokenMetadataProgram>;
|
|
242
515
|
systemProgram?: Address<TAccountSystemProgram>;
|
|
243
516
|
root: VerifyCollectionInstructionDataArgs["root"];
|
|
@@ -354,6 +627,18 @@ export function getVerifyCollectionInstruction<
|
|
|
354
627
|
const args = { ...input };
|
|
355
628
|
|
|
356
629
|
// Resolve default values.
|
|
630
|
+
if (!accounts.collectionAuthorityRecordPda.value) {
|
|
631
|
+
accounts.collectionAuthorityRecordPda.value = programAddress;
|
|
632
|
+
accounts.collectionAuthorityRecordPda.isWritable = false;
|
|
633
|
+
}
|
|
634
|
+
if (!accounts.logWrapper.value) {
|
|
635
|
+
accounts.logWrapper.value =
|
|
636
|
+
"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV" as Address<"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV">;
|
|
637
|
+
}
|
|
638
|
+
if (!accounts.compressionProgram.value) {
|
|
639
|
+
accounts.compressionProgram.value =
|
|
640
|
+
"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK" as Address<"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK">;
|
|
641
|
+
}
|
|
357
642
|
if (!accounts.tokenMetadataProgram.value) {
|
|
358
643
|
accounts.tokenMetadataProgram.value =
|
|
359
644
|
"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s" as Address<"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s">;
|
|
@@ -44,7 +44,11 @@ import {
|
|
|
44
44
|
SolanaError,
|
|
45
45
|
transformEncoder,
|
|
46
46
|
} from "@solana/kit";
|
|
47
|
-
import {
|
|
47
|
+
import {
|
|
48
|
+
getAccountMetaFactory,
|
|
49
|
+
getAddressFromResolvedInstructionAccount,
|
|
50
|
+
} from "@solana/program-client-core";
|
|
51
|
+
import { findTreeConfigPda } from "../pdas/index.js";
|
|
48
52
|
import { BUBBLEGUM_PROGRAM_ADDRESS } from "../programs/index.js";
|
|
49
53
|
import {
|
|
50
54
|
getMetadataArgsDecoder,
|
|
@@ -63,18 +67,22 @@ export function getVerifyCreatorDiscriminatorBytes(): ReadonlyUint8Array {
|
|
|
63
67
|
|
|
64
68
|
export type VerifyCreatorInstruction<
|
|
65
69
|
TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,
|
|
66
|
-
TAccountTreeAuthority extends string | AccountMeta = string,
|
|
67
|
-
TAccountLeafOwner extends string | AccountMeta = string,
|
|
68
|
-
TAccountLeafDelegate extends string | AccountMeta = string,
|
|
69
|
-
TAccountMerkleTree extends string | AccountMeta = string,
|
|
70
|
-
TAccountPayer extends string | AccountMeta = string,
|
|
71
|
-
TAccountCreator extends string | AccountMeta = string,
|
|
72
|
-
TAccountLogWrapper extends
|
|
73
|
-
|
|
70
|
+
TAccountTreeAuthority extends string | AccountMeta<string> = string,
|
|
71
|
+
TAccountLeafOwner extends string | AccountMeta<string> = string,
|
|
72
|
+
TAccountLeafDelegate extends string | AccountMeta<string> = string,
|
|
73
|
+
TAccountMerkleTree extends string | AccountMeta<string> = string,
|
|
74
|
+
TAccountPayer extends string | AccountMeta<string> = string,
|
|
75
|
+
TAccountCreator extends string | AccountMeta<string> = string,
|
|
76
|
+
TAccountLogWrapper extends
|
|
77
|
+
| string
|
|
78
|
+
| AccountMeta<string> = "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV",
|
|
79
|
+
TAccountCompressionProgram extends
|
|
80
|
+
| string
|
|
81
|
+
| AccountMeta<string> = "cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK",
|
|
74
82
|
TAccountSystemProgram extends
|
|
75
83
|
| string
|
|
76
|
-
| AccountMeta = "11111111111111111111111111111111",
|
|
77
|
-
TRemainingAccounts extends readonly AccountMeta[] = [],
|
|
84
|
+
| AccountMeta<string> = "11111111111111111111111111111111",
|
|
85
|
+
TRemainingAccounts extends readonly AccountMeta<string>[] = [],
|
|
78
86
|
> = Instruction<TProgram> &
|
|
79
87
|
InstructionWithData<ReadonlyUint8Array> &
|
|
80
88
|
InstructionWithAccounts<
|
|
@@ -168,6 +176,151 @@ export function getVerifyCreatorInstructionDataCodec(): Codec<
|
|
|
168
176
|
);
|
|
169
177
|
}
|
|
170
178
|
|
|
179
|
+
export interface VerifyCreatorAsyncInput<
|
|
180
|
+
TAccountTreeAuthority extends string = string,
|
|
181
|
+
TAccountLeafOwner extends string = string,
|
|
182
|
+
TAccountLeafDelegate extends string = string,
|
|
183
|
+
TAccountMerkleTree extends string = string,
|
|
184
|
+
TAccountPayer extends string = string,
|
|
185
|
+
TAccountCreator extends string = string,
|
|
186
|
+
TAccountLogWrapper extends string = string,
|
|
187
|
+
TAccountCompressionProgram extends string = string,
|
|
188
|
+
TAccountSystemProgram extends string = string,
|
|
189
|
+
> {
|
|
190
|
+
treeAuthority?: Address<TAccountTreeAuthority>;
|
|
191
|
+
leafOwner: Address<TAccountLeafOwner>;
|
|
192
|
+
leafDelegate: Address<TAccountLeafDelegate>;
|
|
193
|
+
merkleTree: Address<TAccountMerkleTree>;
|
|
194
|
+
payer: TransactionSigner<TAccountPayer>;
|
|
195
|
+
creator: TransactionSigner<TAccountCreator>;
|
|
196
|
+
logWrapper?: Address<TAccountLogWrapper>;
|
|
197
|
+
compressionProgram?: Address<TAccountCompressionProgram>;
|
|
198
|
+
systemProgram?: Address<TAccountSystemProgram>;
|
|
199
|
+
root: VerifyCreatorInstructionDataArgs["root"];
|
|
200
|
+
dataHash: VerifyCreatorInstructionDataArgs["dataHash"];
|
|
201
|
+
creatorHash: VerifyCreatorInstructionDataArgs["creatorHash"];
|
|
202
|
+
nonce: VerifyCreatorInstructionDataArgs["nonce"];
|
|
203
|
+
index: VerifyCreatorInstructionDataArgs["index"];
|
|
204
|
+
message: VerifyCreatorInstructionDataArgs["message"];
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
export async function getVerifyCreatorInstructionAsync<
|
|
208
|
+
TAccountTreeAuthority extends string,
|
|
209
|
+
TAccountLeafOwner extends string,
|
|
210
|
+
TAccountLeafDelegate extends string,
|
|
211
|
+
TAccountMerkleTree extends string,
|
|
212
|
+
TAccountPayer extends string,
|
|
213
|
+
TAccountCreator extends string,
|
|
214
|
+
TAccountLogWrapper extends string,
|
|
215
|
+
TAccountCompressionProgram extends string,
|
|
216
|
+
TAccountSystemProgram extends string,
|
|
217
|
+
TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,
|
|
218
|
+
>(
|
|
219
|
+
input: VerifyCreatorAsyncInput<
|
|
220
|
+
TAccountTreeAuthority,
|
|
221
|
+
TAccountLeafOwner,
|
|
222
|
+
TAccountLeafDelegate,
|
|
223
|
+
TAccountMerkleTree,
|
|
224
|
+
TAccountPayer,
|
|
225
|
+
TAccountCreator,
|
|
226
|
+
TAccountLogWrapper,
|
|
227
|
+
TAccountCompressionProgram,
|
|
228
|
+
TAccountSystemProgram
|
|
229
|
+
>,
|
|
230
|
+
config?: { programAddress?: TProgramAddress },
|
|
231
|
+
): Promise<
|
|
232
|
+
VerifyCreatorInstruction<
|
|
233
|
+
TProgramAddress,
|
|
234
|
+
TAccountTreeAuthority,
|
|
235
|
+
TAccountLeafOwner,
|
|
236
|
+
TAccountLeafDelegate,
|
|
237
|
+
TAccountMerkleTree,
|
|
238
|
+
TAccountPayer,
|
|
239
|
+
TAccountCreator,
|
|
240
|
+
TAccountLogWrapper,
|
|
241
|
+
TAccountCompressionProgram,
|
|
242
|
+
TAccountSystemProgram
|
|
243
|
+
>
|
|
244
|
+
> {
|
|
245
|
+
// Program address.
|
|
246
|
+
const programAddress = config?.programAddress ?? BUBBLEGUM_PROGRAM_ADDRESS;
|
|
247
|
+
|
|
248
|
+
// Original accounts.
|
|
249
|
+
const originalAccounts = {
|
|
250
|
+
treeAuthority: { value: input.treeAuthority ?? null, isWritable: false },
|
|
251
|
+
leafOwner: { value: input.leafOwner ?? null, isWritable: false },
|
|
252
|
+
leafDelegate: { value: input.leafDelegate ?? null, isWritable: false },
|
|
253
|
+
merkleTree: { value: input.merkleTree ?? null, isWritable: true },
|
|
254
|
+
payer: { value: input.payer ?? null, isWritable: false },
|
|
255
|
+
creator: { value: input.creator ?? null, isWritable: false },
|
|
256
|
+
logWrapper: { value: input.logWrapper ?? null, isWritable: false },
|
|
257
|
+
compressionProgram: {
|
|
258
|
+
value: input.compressionProgram ?? null,
|
|
259
|
+
isWritable: false,
|
|
260
|
+
},
|
|
261
|
+
systemProgram: { value: input.systemProgram ?? null, isWritable: false },
|
|
262
|
+
};
|
|
263
|
+
const accounts = originalAccounts as Record<
|
|
264
|
+
keyof typeof originalAccounts,
|
|
265
|
+
ResolvedInstructionAccount
|
|
266
|
+
>;
|
|
267
|
+
|
|
268
|
+
// Original args.
|
|
269
|
+
const args = { ...input };
|
|
270
|
+
|
|
271
|
+
// Resolve default values.
|
|
272
|
+
if (!accounts.treeAuthority.value) {
|
|
273
|
+
accounts.treeAuthority.value = await findTreeConfigPda({
|
|
274
|
+
merkleTree: getAddressFromResolvedInstructionAccount(
|
|
275
|
+
"merkleTree",
|
|
276
|
+
accounts.merkleTree.value,
|
|
277
|
+
),
|
|
278
|
+
});
|
|
279
|
+
}
|
|
280
|
+
if (!accounts.logWrapper.value) {
|
|
281
|
+
accounts.logWrapper.value =
|
|
282
|
+
"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV" as Address<"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV">;
|
|
283
|
+
}
|
|
284
|
+
if (!accounts.compressionProgram.value) {
|
|
285
|
+
accounts.compressionProgram.value =
|
|
286
|
+
"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK" as Address<"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK">;
|
|
287
|
+
}
|
|
288
|
+
if (!accounts.systemProgram.value) {
|
|
289
|
+
accounts.systemProgram.value =
|
|
290
|
+
"11111111111111111111111111111111" as Address<"11111111111111111111111111111111">;
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
|
|
294
|
+
return Object.freeze({
|
|
295
|
+
accounts: [
|
|
296
|
+
getAccountMeta("treeAuthority", accounts.treeAuthority),
|
|
297
|
+
getAccountMeta("leafOwner", accounts.leafOwner),
|
|
298
|
+
getAccountMeta("leafDelegate", accounts.leafDelegate),
|
|
299
|
+
getAccountMeta("merkleTree", accounts.merkleTree),
|
|
300
|
+
getAccountMeta("payer", accounts.payer),
|
|
301
|
+
getAccountMeta("creator", accounts.creator),
|
|
302
|
+
getAccountMeta("logWrapper", accounts.logWrapper),
|
|
303
|
+
getAccountMeta("compressionProgram", accounts.compressionProgram),
|
|
304
|
+
getAccountMeta("systemProgram", accounts.systemProgram),
|
|
305
|
+
],
|
|
306
|
+
data: getVerifyCreatorInstructionDataEncoder().encode(
|
|
307
|
+
args as VerifyCreatorInstructionDataArgs,
|
|
308
|
+
),
|
|
309
|
+
programAddress,
|
|
310
|
+
} as VerifyCreatorInstruction<
|
|
311
|
+
TProgramAddress,
|
|
312
|
+
TAccountTreeAuthority,
|
|
313
|
+
TAccountLeafOwner,
|
|
314
|
+
TAccountLeafDelegate,
|
|
315
|
+
TAccountMerkleTree,
|
|
316
|
+
TAccountPayer,
|
|
317
|
+
TAccountCreator,
|
|
318
|
+
TAccountLogWrapper,
|
|
319
|
+
TAccountCompressionProgram,
|
|
320
|
+
TAccountSystemProgram
|
|
321
|
+
>);
|
|
322
|
+
}
|
|
323
|
+
|
|
171
324
|
export interface VerifyCreatorInput<
|
|
172
325
|
TAccountTreeAuthority extends string = string,
|
|
173
326
|
TAccountLeafOwner extends string = string,
|
|
@@ -185,8 +338,8 @@ export interface VerifyCreatorInput<
|
|
|
185
338
|
merkleTree: Address<TAccountMerkleTree>;
|
|
186
339
|
payer: TransactionSigner<TAccountPayer>;
|
|
187
340
|
creator: TransactionSigner<TAccountCreator>;
|
|
188
|
-
logWrapper
|
|
189
|
-
compressionProgram
|
|
341
|
+
logWrapper?: Address<TAccountLogWrapper>;
|
|
342
|
+
compressionProgram?: Address<TAccountCompressionProgram>;
|
|
190
343
|
systemProgram?: Address<TAccountSystemProgram>;
|
|
191
344
|
root: VerifyCreatorInstructionDataArgs["root"];
|
|
192
345
|
dataHash: VerifyCreatorInstructionDataArgs["dataHash"];
|
|
@@ -259,6 +412,14 @@ export function getVerifyCreatorInstruction<
|
|
|
259
412
|
const args = { ...input };
|
|
260
413
|
|
|
261
414
|
// Resolve default values.
|
|
415
|
+
if (!accounts.logWrapper.value) {
|
|
416
|
+
accounts.logWrapper.value =
|
|
417
|
+
"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV" as Address<"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV">;
|
|
418
|
+
}
|
|
419
|
+
if (!accounts.compressionProgram.value) {
|
|
420
|
+
accounts.compressionProgram.value =
|
|
421
|
+
"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK" as Address<"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK">;
|
|
422
|
+
}
|
|
262
423
|
if (!accounts.systemProgram.value) {
|
|
263
424
|
accounts.systemProgram.value =
|
|
264
425
|
"11111111111111111111111111111111" as Address<"11111111111111111111111111111111">;
|