@macalinao/clients-mpl-bubblegum 0.2.0 → 0.3.1
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 -9
- 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 +154 -13
- package/src/generated/instructions/burnV2.ts +226 -20
- package/src/generated/instructions/cancelRedeem.ts +150 -13
- package/src/generated/instructions/closeTreeV2.ts +149 -13
- package/src/generated/instructions/collectV2.ts +3 -3
- package/src/generated/instructions/compress.ts +220 -24
- package/src/generated/instructions/createTree.ts +152 -13
- package/src/generated/instructions/createTreeV2.ts +153 -13
- package/src/generated/instructions/decompressV1.ts +262 -26
- package/src/generated/instructions/delegate.ts +169 -14
- package/src/generated/instructions/delegateAndFreezeV2.ts +183 -15
- package/src/generated/instructions/delegateV2.ts +183 -15
- package/src/generated/instructions/freezeV2.ts +187 -16
- package/src/generated/instructions/mintToCollectionV1.ts +295 -25
- package/src/generated/instructions/mintV1.ts +168 -15
- package/src/generated/instructions/mintV2.ts +231 -21
- package/src/generated/instructions/redeem.ts +163 -14
- package/src/generated/instructions/setAndVerifyCollection.ts +306 -25
- package/src/generated/instructions/setCollectionV2.ts +252 -23
- package/src/generated/instructions/setDecompressableState.ts +3 -3
- package/src/generated/instructions/setDecompressibleState.ts +3 -3
- package/src/generated/instructions/setNonTransferableV2.ts +188 -16
- package/src/generated/instructions/setTreeDelegate.ts +106 -9
- package/src/generated/instructions/thawAndRevokeV2.ts +167 -14
- package/src/generated/instructions/thawV2.ts +187 -16
- package/src/generated/instructions/transfer.ts +163 -14
- package/src/generated/instructions/transferV2.ts +197 -17
- package/src/generated/instructions/unverifyCollection.ts +305 -25
- package/src/generated/instructions/unverifyCreator.ts +173 -15
- package/src/generated/instructions/unverifyCreatorV2.ts +175 -15
- package/src/generated/instructions/updateAssetDataV2.ts +189 -16
- package/src/generated/instructions/updateMetadata.ts +232 -21
- package/src/generated/instructions/updateMetadataV2.ts +188 -16
- package/src/generated/instructions/verifyCollection.ts +305 -25
- package/src/generated/instructions/verifyCreator.ts +173 -15
- package/src/generated/instructions/verifyCreatorV2.ts +175 -15
- 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
|
@@ -49,7 +49,11 @@ import {
|
|
|
49
49
|
SolanaError,
|
|
50
50
|
transformEncoder,
|
|
51
51
|
} from "@solana/kit";
|
|
52
|
-
import {
|
|
52
|
+
import {
|
|
53
|
+
getAccountMetaFactory,
|
|
54
|
+
getAddressFromResolvedInstructionAccount,
|
|
55
|
+
} from "@solana/program-client-core";
|
|
56
|
+
import { findTreeConfigPda } from "../pdas/index.js";
|
|
53
57
|
import { BUBBLEGUM_PROGRAM_ADDRESS } from "../programs/index.js";
|
|
54
58
|
import {
|
|
55
59
|
getMetadataArgsDecoder,
|
|
@@ -70,24 +74,25 @@ export function getUpdateMetadataDiscriminatorBytes(): ReadonlyUint8Array {
|
|
|
70
74
|
|
|
71
75
|
export type UpdateMetadataInstruction<
|
|
72
76
|
TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,
|
|
73
|
-
TAccountTreeAuthority extends string | AccountMeta = string,
|
|
74
|
-
TAccountAuthority extends string | AccountMeta = string,
|
|
75
|
-
TAccountCollectionMint extends string | AccountMeta = string,
|
|
76
|
-
TAccountCollectionMetadata extends string | AccountMeta = string,
|
|
77
|
-
TAccountCollectionAuthorityRecordPda extends string | AccountMeta =
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
77
|
+
TAccountTreeAuthority extends string | AccountMeta<string> = string,
|
|
78
|
+
TAccountAuthority extends string | AccountMeta<string> = string,
|
|
79
|
+
TAccountCollectionMint extends string | AccountMeta<string> = string,
|
|
80
|
+
TAccountCollectionMetadata extends string | AccountMeta<string> = string,
|
|
81
|
+
TAccountCollectionAuthorityRecordPda extends string | AccountMeta<string> =
|
|
82
|
+
"BGUMAp9Gq7iTEuizy4pqaxsTyUCBK68MDfK752saRPUY",
|
|
83
|
+
TAccountLeafOwner extends string | AccountMeta<string> = string,
|
|
84
|
+
TAccountLeafDelegate extends string | AccountMeta<string> = string,
|
|
85
|
+
TAccountPayer extends string | AccountMeta<string> = string,
|
|
86
|
+
TAccountMerkleTree extends string | AccountMeta<string> = string,
|
|
87
|
+
TAccountLogWrapper extends string | AccountMeta<string> =
|
|
88
|
+
"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV",
|
|
89
|
+
TAccountCompressionProgram extends string | AccountMeta<string> =
|
|
90
|
+
"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK",
|
|
91
|
+
TAccountTokenMetadataProgram extends string | AccountMeta<string> =
|
|
92
|
+
"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s",
|
|
93
|
+
TAccountSystemProgram extends string | AccountMeta<string> =
|
|
94
|
+
"11111111111111111111111111111111",
|
|
95
|
+
TRemainingAccounts extends readonly AccountMeta<string>[] = [],
|
|
91
96
|
> = Instruction<TProgram> &
|
|
92
97
|
InstructionWithData<ReadonlyUint8Array> &
|
|
93
98
|
InstructionWithAccounts<
|
|
@@ -189,6 +194,204 @@ export function getUpdateMetadataInstructionDataCodec(): Codec<
|
|
|
189
194
|
);
|
|
190
195
|
}
|
|
191
196
|
|
|
197
|
+
export interface UpdateMetadataAsyncInput<
|
|
198
|
+
TAccountTreeAuthority extends string = string,
|
|
199
|
+
TAccountAuthority extends string = string,
|
|
200
|
+
TAccountCollectionMint extends string = string,
|
|
201
|
+
TAccountCollectionMetadata extends string = string,
|
|
202
|
+
TAccountCollectionAuthorityRecordPda extends string = string,
|
|
203
|
+
TAccountLeafOwner extends string = string,
|
|
204
|
+
TAccountLeafDelegate extends string = string,
|
|
205
|
+
TAccountPayer extends string = string,
|
|
206
|
+
TAccountMerkleTree extends string = string,
|
|
207
|
+
TAccountLogWrapper extends string = string,
|
|
208
|
+
TAccountCompressionProgram extends string = string,
|
|
209
|
+
TAccountTokenMetadataProgram extends string = string,
|
|
210
|
+
TAccountSystemProgram extends string = string,
|
|
211
|
+
> {
|
|
212
|
+
treeAuthority?: Address<TAccountTreeAuthority>;
|
|
213
|
+
/**
|
|
214
|
+
* Either collection authority or tree owner/delegate, depending
|
|
215
|
+
* on whether the item is in a verified collection
|
|
216
|
+
*/
|
|
217
|
+
authority: TransactionSigner<TAccountAuthority>;
|
|
218
|
+
/** Used when item is in a verified collection */
|
|
219
|
+
collectionMint?: Address<TAccountCollectionMint>;
|
|
220
|
+
/** Used when item is in a verified collection */
|
|
221
|
+
collectionMetadata?: Address<TAccountCollectionMetadata>;
|
|
222
|
+
collectionAuthorityRecordPda?: Address<TAccountCollectionAuthorityRecordPda>;
|
|
223
|
+
leafOwner: Address<TAccountLeafOwner>;
|
|
224
|
+
leafDelegate: Address<TAccountLeafDelegate>;
|
|
225
|
+
payer: TransactionSigner<TAccountPayer>;
|
|
226
|
+
merkleTree: Address<TAccountMerkleTree>;
|
|
227
|
+
logWrapper?: Address<TAccountLogWrapper>;
|
|
228
|
+
compressionProgram?: Address<TAccountCompressionProgram>;
|
|
229
|
+
tokenMetadataProgram?: Address<TAccountTokenMetadataProgram>;
|
|
230
|
+
systemProgram?: Address<TAccountSystemProgram>;
|
|
231
|
+
root: UpdateMetadataInstructionDataArgs["root"];
|
|
232
|
+
nonce: UpdateMetadataInstructionDataArgs["nonce"];
|
|
233
|
+
index: UpdateMetadataInstructionDataArgs["index"];
|
|
234
|
+
currentMetadata: UpdateMetadataInstructionDataArgs["currentMetadata"];
|
|
235
|
+
updateArgs: UpdateMetadataInstructionDataArgs["updateArgs"];
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
export async function getUpdateMetadataInstructionAsync<
|
|
239
|
+
TAccountTreeAuthority extends string,
|
|
240
|
+
TAccountAuthority extends string,
|
|
241
|
+
TAccountCollectionMint extends string,
|
|
242
|
+
TAccountCollectionMetadata extends string,
|
|
243
|
+
TAccountCollectionAuthorityRecordPda extends string,
|
|
244
|
+
TAccountLeafOwner extends string,
|
|
245
|
+
TAccountLeafDelegate extends string,
|
|
246
|
+
TAccountPayer extends string,
|
|
247
|
+
TAccountMerkleTree extends string,
|
|
248
|
+
TAccountLogWrapper extends string,
|
|
249
|
+
TAccountCompressionProgram extends string,
|
|
250
|
+
TAccountTokenMetadataProgram extends string,
|
|
251
|
+
TAccountSystemProgram extends string,
|
|
252
|
+
TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,
|
|
253
|
+
>(
|
|
254
|
+
input: UpdateMetadataAsyncInput<
|
|
255
|
+
TAccountTreeAuthority,
|
|
256
|
+
TAccountAuthority,
|
|
257
|
+
TAccountCollectionMint,
|
|
258
|
+
TAccountCollectionMetadata,
|
|
259
|
+
TAccountCollectionAuthorityRecordPda,
|
|
260
|
+
TAccountLeafOwner,
|
|
261
|
+
TAccountLeafDelegate,
|
|
262
|
+
TAccountPayer,
|
|
263
|
+
TAccountMerkleTree,
|
|
264
|
+
TAccountLogWrapper,
|
|
265
|
+
TAccountCompressionProgram,
|
|
266
|
+
TAccountTokenMetadataProgram,
|
|
267
|
+
TAccountSystemProgram
|
|
268
|
+
>,
|
|
269
|
+
config?: { programAddress?: TProgramAddress },
|
|
270
|
+
): Promise<
|
|
271
|
+
UpdateMetadataInstruction<
|
|
272
|
+
TProgramAddress,
|
|
273
|
+
TAccountTreeAuthority,
|
|
274
|
+
TAccountAuthority,
|
|
275
|
+
TAccountCollectionMint,
|
|
276
|
+
TAccountCollectionMetadata,
|
|
277
|
+
TAccountCollectionAuthorityRecordPda,
|
|
278
|
+
TAccountLeafOwner,
|
|
279
|
+
TAccountLeafDelegate,
|
|
280
|
+
TAccountPayer,
|
|
281
|
+
TAccountMerkleTree,
|
|
282
|
+
TAccountLogWrapper,
|
|
283
|
+
TAccountCompressionProgram,
|
|
284
|
+
TAccountTokenMetadataProgram,
|
|
285
|
+
TAccountSystemProgram
|
|
286
|
+
>
|
|
287
|
+
> {
|
|
288
|
+
// Program address.
|
|
289
|
+
const programAddress = config?.programAddress ?? BUBBLEGUM_PROGRAM_ADDRESS;
|
|
290
|
+
|
|
291
|
+
// Original accounts.
|
|
292
|
+
const originalAccounts = {
|
|
293
|
+
treeAuthority: { value: input.treeAuthority ?? null, isWritable: false },
|
|
294
|
+
authority: { value: input.authority ?? null, isWritable: false },
|
|
295
|
+
collectionMint: { value: input.collectionMint ?? null, isWritable: false },
|
|
296
|
+
collectionMetadata: {
|
|
297
|
+
value: input.collectionMetadata ?? null,
|
|
298
|
+
isWritable: false,
|
|
299
|
+
},
|
|
300
|
+
collectionAuthorityRecordPda: {
|
|
301
|
+
value: input.collectionAuthorityRecordPda ?? null,
|
|
302
|
+
isWritable: false,
|
|
303
|
+
},
|
|
304
|
+
leafOwner: { value: input.leafOwner ?? null, isWritable: false },
|
|
305
|
+
leafDelegate: { value: input.leafDelegate ?? null, isWritable: false },
|
|
306
|
+
payer: { value: input.payer ?? null, isWritable: false },
|
|
307
|
+
merkleTree: { value: input.merkleTree ?? null, isWritable: true },
|
|
308
|
+
logWrapper: { value: input.logWrapper ?? null, isWritable: false },
|
|
309
|
+
compressionProgram: {
|
|
310
|
+
value: input.compressionProgram ?? null,
|
|
311
|
+
isWritable: false,
|
|
312
|
+
},
|
|
313
|
+
tokenMetadataProgram: {
|
|
314
|
+
value: input.tokenMetadataProgram ?? null,
|
|
315
|
+
isWritable: false,
|
|
316
|
+
},
|
|
317
|
+
systemProgram: { value: input.systemProgram ?? null, isWritable: false },
|
|
318
|
+
};
|
|
319
|
+
const accounts = originalAccounts as Record<
|
|
320
|
+
keyof typeof originalAccounts,
|
|
321
|
+
ResolvedInstructionAccount
|
|
322
|
+
>;
|
|
323
|
+
|
|
324
|
+
// Original args.
|
|
325
|
+
const args = { ...input };
|
|
326
|
+
|
|
327
|
+
// Resolve default values.
|
|
328
|
+
if (!accounts.treeAuthority.value) {
|
|
329
|
+
accounts.treeAuthority.value = await findTreeConfigPda({
|
|
330
|
+
merkleTree: getAddressFromResolvedInstructionAccount(
|
|
331
|
+
"merkleTree",
|
|
332
|
+
accounts.merkleTree.value,
|
|
333
|
+
),
|
|
334
|
+
});
|
|
335
|
+
}
|
|
336
|
+
if (!accounts.logWrapper.value) {
|
|
337
|
+
accounts.logWrapper.value =
|
|
338
|
+
"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV" as Address<"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV">;
|
|
339
|
+
}
|
|
340
|
+
if (!accounts.compressionProgram.value) {
|
|
341
|
+
accounts.compressionProgram.value =
|
|
342
|
+
"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK" as Address<"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK">;
|
|
343
|
+
}
|
|
344
|
+
if (!accounts.tokenMetadataProgram.value) {
|
|
345
|
+
accounts.tokenMetadataProgram.value =
|
|
346
|
+
"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s" as Address<"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s">;
|
|
347
|
+
}
|
|
348
|
+
if (!accounts.systemProgram.value) {
|
|
349
|
+
accounts.systemProgram.value =
|
|
350
|
+
"11111111111111111111111111111111" as Address<"11111111111111111111111111111111">;
|
|
351
|
+
}
|
|
352
|
+
|
|
353
|
+
const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
|
|
354
|
+
return Object.freeze({
|
|
355
|
+
accounts: [
|
|
356
|
+
getAccountMeta("treeAuthority", accounts.treeAuthority),
|
|
357
|
+
getAccountMeta("authority", accounts.authority),
|
|
358
|
+
getAccountMeta("collectionMint", accounts.collectionMint),
|
|
359
|
+
getAccountMeta("collectionMetadata", accounts.collectionMetadata),
|
|
360
|
+
getAccountMeta(
|
|
361
|
+
"collectionAuthorityRecordPda",
|
|
362
|
+
accounts.collectionAuthorityRecordPda,
|
|
363
|
+
),
|
|
364
|
+
getAccountMeta("leafOwner", accounts.leafOwner),
|
|
365
|
+
getAccountMeta("leafDelegate", accounts.leafDelegate),
|
|
366
|
+
getAccountMeta("payer", accounts.payer),
|
|
367
|
+
getAccountMeta("merkleTree", accounts.merkleTree),
|
|
368
|
+
getAccountMeta("logWrapper", accounts.logWrapper),
|
|
369
|
+
getAccountMeta("compressionProgram", accounts.compressionProgram),
|
|
370
|
+
getAccountMeta("tokenMetadataProgram", accounts.tokenMetadataProgram),
|
|
371
|
+
getAccountMeta("systemProgram", accounts.systemProgram),
|
|
372
|
+
],
|
|
373
|
+
data: getUpdateMetadataInstructionDataEncoder().encode(
|
|
374
|
+
args as UpdateMetadataInstructionDataArgs,
|
|
375
|
+
),
|
|
376
|
+
programAddress,
|
|
377
|
+
} as UpdateMetadataInstruction<
|
|
378
|
+
TProgramAddress,
|
|
379
|
+
TAccountTreeAuthority,
|
|
380
|
+
TAccountAuthority,
|
|
381
|
+
TAccountCollectionMint,
|
|
382
|
+
TAccountCollectionMetadata,
|
|
383
|
+
TAccountCollectionAuthorityRecordPda,
|
|
384
|
+
TAccountLeafOwner,
|
|
385
|
+
TAccountLeafDelegate,
|
|
386
|
+
TAccountPayer,
|
|
387
|
+
TAccountMerkleTree,
|
|
388
|
+
TAccountLogWrapper,
|
|
389
|
+
TAccountCompressionProgram,
|
|
390
|
+
TAccountTokenMetadataProgram,
|
|
391
|
+
TAccountSystemProgram
|
|
392
|
+
>);
|
|
393
|
+
}
|
|
394
|
+
|
|
192
395
|
export interface UpdateMetadataInput<
|
|
193
396
|
TAccountTreeAuthority extends string = string,
|
|
194
397
|
TAccountAuthority extends string = string,
|
|
@@ -219,8 +422,8 @@ export interface UpdateMetadataInput<
|
|
|
219
422
|
leafDelegate: Address<TAccountLeafDelegate>;
|
|
220
423
|
payer: TransactionSigner<TAccountPayer>;
|
|
221
424
|
merkleTree: Address<TAccountMerkleTree>;
|
|
222
|
-
logWrapper
|
|
223
|
-
compressionProgram
|
|
425
|
+
logWrapper?: Address<TAccountLogWrapper>;
|
|
426
|
+
compressionProgram?: Address<TAccountCompressionProgram>;
|
|
224
427
|
tokenMetadataProgram?: Address<TAccountTokenMetadataProgram>;
|
|
225
428
|
systemProgram?: Address<TAccountSystemProgram>;
|
|
226
429
|
root: UpdateMetadataInstructionDataArgs["root"];
|
|
@@ -318,6 +521,14 @@ export function getUpdateMetadataInstruction<
|
|
|
318
521
|
const args = { ...input };
|
|
319
522
|
|
|
320
523
|
// Resolve default values.
|
|
524
|
+
if (!accounts.logWrapper.value) {
|
|
525
|
+
accounts.logWrapper.value =
|
|
526
|
+
"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV" as Address<"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV">;
|
|
527
|
+
}
|
|
528
|
+
if (!accounts.compressionProgram.value) {
|
|
529
|
+
accounts.compressionProgram.value =
|
|
530
|
+
"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK" as Address<"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK">;
|
|
531
|
+
}
|
|
321
532
|
if (!accounts.tokenMetadataProgram.value) {
|
|
322
533
|
accounts.tokenMetadataProgram.value =
|
|
323
534
|
"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s" as Address<"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s">;
|
|
@@ -54,7 +54,11 @@ import {
|
|
|
54
54
|
SolanaError,
|
|
55
55
|
transformEncoder,
|
|
56
56
|
} from "@solana/kit";
|
|
57
|
-
import {
|
|
57
|
+
import {
|
|
58
|
+
getAccountMetaFactory,
|
|
59
|
+
getAddressFromResolvedInstructionAccount,
|
|
60
|
+
} from "@solana/program-client-core";
|
|
61
|
+
import { findTreeConfigPda } from "../pdas/index.js";
|
|
58
62
|
import { BUBBLEGUM_PROGRAM_ADDRESS } from "../programs/index.js";
|
|
59
63
|
import {
|
|
60
64
|
getMetadataArgsV2Decoder,
|
|
@@ -74,19 +78,20 @@ export function getUpdateMetadataV2DiscriminatorBytes(): ReadonlyUint8Array {
|
|
|
74
78
|
|
|
75
79
|
export type UpdateMetadataV2Instruction<
|
|
76
80
|
TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,
|
|
77
|
-
TAccountTreeAuthority extends string | AccountMeta = string,
|
|
78
|
-
TAccountPayer extends string | AccountMeta = string,
|
|
79
|
-
TAccountAuthority extends string | AccountMeta = string,
|
|
80
|
-
TAccountLeafOwner extends string | AccountMeta = string,
|
|
81
|
-
TAccountLeafDelegate extends string | AccountMeta = string,
|
|
82
|
-
TAccountMerkleTree extends string | AccountMeta = string,
|
|
83
|
-
TAccountCoreCollection extends string | AccountMeta = string,
|
|
84
|
-
TAccountLogWrapper extends string | AccountMeta =
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
81
|
+
TAccountTreeAuthority extends string | AccountMeta<string> = string,
|
|
82
|
+
TAccountPayer extends string | AccountMeta<string> = string,
|
|
83
|
+
TAccountAuthority extends string | AccountMeta<string> = string,
|
|
84
|
+
TAccountLeafOwner extends string | AccountMeta<string> = string,
|
|
85
|
+
TAccountLeafDelegate extends string | AccountMeta<string> = string,
|
|
86
|
+
TAccountMerkleTree extends string | AccountMeta<string> = string,
|
|
87
|
+
TAccountCoreCollection extends string | AccountMeta<string> = string,
|
|
88
|
+
TAccountLogWrapper extends string | AccountMeta<string> =
|
|
89
|
+
"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3",
|
|
90
|
+
TAccountCompressionProgram extends string | AccountMeta<string> =
|
|
91
|
+
"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW",
|
|
92
|
+
TAccountSystemProgram extends string | AccountMeta<string> =
|
|
93
|
+
"11111111111111111111111111111111",
|
|
94
|
+
TRemainingAccounts extends readonly AccountMeta<string>[] = [],
|
|
90
95
|
> = Instruction<TProgram> &
|
|
91
96
|
InstructionWithData<ReadonlyUint8Array> &
|
|
92
97
|
InstructionWithAccounts<
|
|
@@ -193,6 +198,165 @@ export function getUpdateMetadataV2InstructionDataCodec(): Codec<
|
|
|
193
198
|
);
|
|
194
199
|
}
|
|
195
200
|
|
|
201
|
+
export interface UpdateMetadataV2AsyncInput<
|
|
202
|
+
TAccountTreeAuthority extends string = string,
|
|
203
|
+
TAccountPayer extends string = string,
|
|
204
|
+
TAccountAuthority extends string = string,
|
|
205
|
+
TAccountLeafOwner extends string = string,
|
|
206
|
+
TAccountLeafDelegate extends string = string,
|
|
207
|
+
TAccountMerkleTree extends string = string,
|
|
208
|
+
TAccountCoreCollection extends string = string,
|
|
209
|
+
TAccountLogWrapper extends string = string,
|
|
210
|
+
TAccountCompressionProgram extends string = string,
|
|
211
|
+
TAccountSystemProgram extends string = string,
|
|
212
|
+
> {
|
|
213
|
+
treeAuthority?: Address<TAccountTreeAuthority>;
|
|
214
|
+
payer: TransactionSigner<TAccountPayer>;
|
|
215
|
+
/**
|
|
216
|
+
* Either collection authority or tree owner/delegate, depending
|
|
217
|
+
* on whether the item is in a verified collection. Defaults to `payer`
|
|
218
|
+
*/
|
|
219
|
+
authority?: TransactionSigner<TAccountAuthority>;
|
|
220
|
+
leafOwner: Address<TAccountLeafOwner>;
|
|
221
|
+
/** Defaults to `leaf_owner` */
|
|
222
|
+
leafDelegate?: Address<TAccountLeafDelegate>;
|
|
223
|
+
merkleTree: Address<TAccountMerkleTree>;
|
|
224
|
+
coreCollection?: Address<TAccountCoreCollection>;
|
|
225
|
+
logWrapper?: Address<TAccountLogWrapper>;
|
|
226
|
+
compressionProgram?: Address<TAccountCompressionProgram>;
|
|
227
|
+
systemProgram?: Address<TAccountSystemProgram>;
|
|
228
|
+
root: UpdateMetadataV2InstructionDataArgs["root"];
|
|
229
|
+
assetDataHash: UpdateMetadataV2InstructionDataArgs["assetDataHash"];
|
|
230
|
+
flags: UpdateMetadataV2InstructionDataArgs["flags"];
|
|
231
|
+
nonce: UpdateMetadataV2InstructionDataArgs["nonce"];
|
|
232
|
+
index: UpdateMetadataV2InstructionDataArgs["index"];
|
|
233
|
+
currentMetadata: UpdateMetadataV2InstructionDataArgs["currentMetadata"];
|
|
234
|
+
updateArgs: UpdateMetadataV2InstructionDataArgs["updateArgs"];
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
export async function getUpdateMetadataV2InstructionAsync<
|
|
238
|
+
TAccountTreeAuthority extends string,
|
|
239
|
+
TAccountPayer extends string,
|
|
240
|
+
TAccountAuthority extends string,
|
|
241
|
+
TAccountLeafOwner extends string,
|
|
242
|
+
TAccountLeafDelegate extends string,
|
|
243
|
+
TAccountMerkleTree extends string,
|
|
244
|
+
TAccountCoreCollection extends string,
|
|
245
|
+
TAccountLogWrapper extends string,
|
|
246
|
+
TAccountCompressionProgram extends string,
|
|
247
|
+
TAccountSystemProgram extends string,
|
|
248
|
+
TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,
|
|
249
|
+
>(
|
|
250
|
+
input: UpdateMetadataV2AsyncInput<
|
|
251
|
+
TAccountTreeAuthority,
|
|
252
|
+
TAccountPayer,
|
|
253
|
+
TAccountAuthority,
|
|
254
|
+
TAccountLeafOwner,
|
|
255
|
+
TAccountLeafDelegate,
|
|
256
|
+
TAccountMerkleTree,
|
|
257
|
+
TAccountCoreCollection,
|
|
258
|
+
TAccountLogWrapper,
|
|
259
|
+
TAccountCompressionProgram,
|
|
260
|
+
TAccountSystemProgram
|
|
261
|
+
>,
|
|
262
|
+
config?: { programAddress?: TProgramAddress },
|
|
263
|
+
): Promise<
|
|
264
|
+
UpdateMetadataV2Instruction<
|
|
265
|
+
TProgramAddress,
|
|
266
|
+
TAccountTreeAuthority,
|
|
267
|
+
TAccountPayer,
|
|
268
|
+
TAccountAuthority,
|
|
269
|
+
TAccountLeafOwner,
|
|
270
|
+
TAccountLeafDelegate,
|
|
271
|
+
TAccountMerkleTree,
|
|
272
|
+
TAccountCoreCollection,
|
|
273
|
+
TAccountLogWrapper,
|
|
274
|
+
TAccountCompressionProgram,
|
|
275
|
+
TAccountSystemProgram
|
|
276
|
+
>
|
|
277
|
+
> {
|
|
278
|
+
// Program address.
|
|
279
|
+
const programAddress = config?.programAddress ?? BUBBLEGUM_PROGRAM_ADDRESS;
|
|
280
|
+
|
|
281
|
+
// Original accounts.
|
|
282
|
+
const originalAccounts = {
|
|
283
|
+
treeAuthority: { value: input.treeAuthority ?? null, isWritable: true },
|
|
284
|
+
payer: { value: input.payer ?? null, isWritable: true },
|
|
285
|
+
authority: { value: input.authority ?? null, isWritable: false },
|
|
286
|
+
leafOwner: { value: input.leafOwner ?? null, isWritable: false },
|
|
287
|
+
leafDelegate: { value: input.leafDelegate ?? null, isWritable: false },
|
|
288
|
+
merkleTree: { value: input.merkleTree ?? null, isWritable: true },
|
|
289
|
+
coreCollection: { value: input.coreCollection ?? null, isWritable: false },
|
|
290
|
+
logWrapper: { value: input.logWrapper ?? null, isWritable: false },
|
|
291
|
+
compressionProgram: {
|
|
292
|
+
value: input.compressionProgram ?? null,
|
|
293
|
+
isWritable: false,
|
|
294
|
+
},
|
|
295
|
+
systemProgram: { value: input.systemProgram ?? null, isWritable: false },
|
|
296
|
+
};
|
|
297
|
+
const accounts = originalAccounts as Record<
|
|
298
|
+
keyof typeof originalAccounts,
|
|
299
|
+
ResolvedInstructionAccount
|
|
300
|
+
>;
|
|
301
|
+
|
|
302
|
+
// Original args.
|
|
303
|
+
const args = { ...input };
|
|
304
|
+
|
|
305
|
+
// Resolve default values.
|
|
306
|
+
if (!accounts.treeAuthority.value) {
|
|
307
|
+
accounts.treeAuthority.value = await findTreeConfigPda({
|
|
308
|
+
merkleTree: getAddressFromResolvedInstructionAccount(
|
|
309
|
+
"merkleTree",
|
|
310
|
+
accounts.merkleTree.value,
|
|
311
|
+
),
|
|
312
|
+
});
|
|
313
|
+
}
|
|
314
|
+
if (!accounts.logWrapper.value) {
|
|
315
|
+
accounts.logWrapper.value =
|
|
316
|
+
"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3" as Address<"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3">;
|
|
317
|
+
}
|
|
318
|
+
if (!accounts.compressionProgram.value) {
|
|
319
|
+
accounts.compressionProgram.value =
|
|
320
|
+
"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW" as Address<"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW">;
|
|
321
|
+
}
|
|
322
|
+
if (!accounts.systemProgram.value) {
|
|
323
|
+
accounts.systemProgram.value =
|
|
324
|
+
"11111111111111111111111111111111" as Address<"11111111111111111111111111111111">;
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
|
|
328
|
+
return Object.freeze({
|
|
329
|
+
accounts: [
|
|
330
|
+
getAccountMeta("treeAuthority", accounts.treeAuthority),
|
|
331
|
+
getAccountMeta("payer", accounts.payer),
|
|
332
|
+
getAccountMeta("authority", accounts.authority),
|
|
333
|
+
getAccountMeta("leafOwner", accounts.leafOwner),
|
|
334
|
+
getAccountMeta("leafDelegate", accounts.leafDelegate),
|
|
335
|
+
getAccountMeta("merkleTree", accounts.merkleTree),
|
|
336
|
+
getAccountMeta("coreCollection", accounts.coreCollection),
|
|
337
|
+
getAccountMeta("logWrapper", accounts.logWrapper),
|
|
338
|
+
getAccountMeta("compressionProgram", accounts.compressionProgram),
|
|
339
|
+
getAccountMeta("systemProgram", accounts.systemProgram),
|
|
340
|
+
],
|
|
341
|
+
data: getUpdateMetadataV2InstructionDataEncoder().encode(
|
|
342
|
+
args as UpdateMetadataV2InstructionDataArgs,
|
|
343
|
+
),
|
|
344
|
+
programAddress,
|
|
345
|
+
} as UpdateMetadataV2Instruction<
|
|
346
|
+
TProgramAddress,
|
|
347
|
+
TAccountTreeAuthority,
|
|
348
|
+
TAccountPayer,
|
|
349
|
+
TAccountAuthority,
|
|
350
|
+
TAccountLeafOwner,
|
|
351
|
+
TAccountLeafDelegate,
|
|
352
|
+
TAccountMerkleTree,
|
|
353
|
+
TAccountCoreCollection,
|
|
354
|
+
TAccountLogWrapper,
|
|
355
|
+
TAccountCompressionProgram,
|
|
356
|
+
TAccountSystemProgram
|
|
357
|
+
>);
|
|
358
|
+
}
|
|
359
|
+
|
|
196
360
|
export interface UpdateMetadataV2Input<
|
|
197
361
|
TAccountTreeAuthority extends string = string,
|
|
198
362
|
TAccountPayer extends string = string,
|
|
@@ -217,8 +381,8 @@ export interface UpdateMetadataV2Input<
|
|
|
217
381
|
leafDelegate?: Address<TAccountLeafDelegate>;
|
|
218
382
|
merkleTree: Address<TAccountMerkleTree>;
|
|
219
383
|
coreCollection?: Address<TAccountCoreCollection>;
|
|
220
|
-
logWrapper
|
|
221
|
-
compressionProgram
|
|
384
|
+
logWrapper?: Address<TAccountLogWrapper>;
|
|
385
|
+
compressionProgram?: Address<TAccountCompressionProgram>;
|
|
222
386
|
systemProgram?: Address<TAccountSystemProgram>;
|
|
223
387
|
root: UpdateMetadataV2InstructionDataArgs["root"];
|
|
224
388
|
assetDataHash: UpdateMetadataV2InstructionDataArgs["assetDataHash"];
|
|
@@ -296,6 +460,14 @@ export function getUpdateMetadataV2Instruction<
|
|
|
296
460
|
const args = { ...input };
|
|
297
461
|
|
|
298
462
|
// Resolve default values.
|
|
463
|
+
if (!accounts.logWrapper.value) {
|
|
464
|
+
accounts.logWrapper.value =
|
|
465
|
+
"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3" as Address<"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3">;
|
|
466
|
+
}
|
|
467
|
+
if (!accounts.compressionProgram.value) {
|
|
468
|
+
accounts.compressionProgram.value =
|
|
469
|
+
"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW" as Address<"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW">;
|
|
470
|
+
}
|
|
299
471
|
if (!accounts.systemProgram.value) {
|
|
300
472
|
accounts.systemProgram.value =
|
|
301
473
|
"11111111111111111111111111111111" as Address<"11111111111111111111111111111111">;
|