@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
|
@@ -35,7 +35,11 @@ import {
|
|
|
35
35
|
SolanaError,
|
|
36
36
|
transformEncoder,
|
|
37
37
|
} from "@solana/kit";
|
|
38
|
-
import {
|
|
38
|
+
import {
|
|
39
|
+
getAccountMetaFactory,
|
|
40
|
+
getAddressFromResolvedInstructionAccount,
|
|
41
|
+
} from "@solana/program-client-core";
|
|
42
|
+
import { findTreeConfigPda } from "../pdas/index.js";
|
|
39
43
|
import { BUBBLEGUM_PROGRAM_ADDRESS } from "../programs/index.js";
|
|
40
44
|
|
|
41
45
|
export const SET_TREE_DELEGATE_DISCRIMINATOR: ReadonlyUint8Array =
|
|
@@ -49,14 +53,13 @@ export function getSetTreeDelegateDiscriminatorBytes(): ReadonlyUint8Array {
|
|
|
49
53
|
|
|
50
54
|
export type SetTreeDelegateInstruction<
|
|
51
55
|
TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,
|
|
52
|
-
TAccountTreeAuthority extends string | AccountMeta = string,
|
|
53
|
-
TAccountTreeCreator extends string | AccountMeta = string,
|
|
54
|
-
TAccountNewTreeDelegate extends string | AccountMeta = string,
|
|
55
|
-
TAccountMerkleTree extends string | AccountMeta = string,
|
|
56
|
-
TAccountSystemProgram extends
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
TRemainingAccounts extends readonly AccountMeta[] = [],
|
|
56
|
+
TAccountTreeAuthority extends string | AccountMeta<string> = string,
|
|
57
|
+
TAccountTreeCreator extends string | AccountMeta<string> = string,
|
|
58
|
+
TAccountNewTreeDelegate extends string | AccountMeta<string> = string,
|
|
59
|
+
TAccountMerkleTree extends string | AccountMeta<string> = string,
|
|
60
|
+
TAccountSystemProgram extends string | AccountMeta<string> =
|
|
61
|
+
"11111111111111111111111111111111",
|
|
62
|
+
TRemainingAccounts extends readonly AccountMeta<string>[] = [],
|
|
60
63
|
> = Instruction<TProgram> &
|
|
61
64
|
InstructionWithData<ReadonlyUint8Array> &
|
|
62
65
|
InstructionWithAccounts<
|
|
@@ -110,6 +113,100 @@ export function getSetTreeDelegateInstructionDataCodec(): FixedSizeCodec<
|
|
|
110
113
|
);
|
|
111
114
|
}
|
|
112
115
|
|
|
116
|
+
export interface SetTreeDelegateAsyncInput<
|
|
117
|
+
TAccountTreeAuthority extends string = string,
|
|
118
|
+
TAccountTreeCreator extends string = string,
|
|
119
|
+
TAccountNewTreeDelegate extends string = string,
|
|
120
|
+
TAccountMerkleTree extends string = string,
|
|
121
|
+
TAccountSystemProgram extends string = string,
|
|
122
|
+
> {
|
|
123
|
+
treeAuthority?: Address<TAccountTreeAuthority>;
|
|
124
|
+
treeCreator: TransactionSigner<TAccountTreeCreator>;
|
|
125
|
+
newTreeDelegate: Address<TAccountNewTreeDelegate>;
|
|
126
|
+
merkleTree: Address<TAccountMerkleTree>;
|
|
127
|
+
systemProgram?: Address<TAccountSystemProgram>;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
export async function getSetTreeDelegateInstructionAsync<
|
|
131
|
+
TAccountTreeAuthority extends string,
|
|
132
|
+
TAccountTreeCreator extends string,
|
|
133
|
+
TAccountNewTreeDelegate extends string,
|
|
134
|
+
TAccountMerkleTree extends string,
|
|
135
|
+
TAccountSystemProgram extends string,
|
|
136
|
+
TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,
|
|
137
|
+
>(
|
|
138
|
+
input: SetTreeDelegateAsyncInput<
|
|
139
|
+
TAccountTreeAuthority,
|
|
140
|
+
TAccountTreeCreator,
|
|
141
|
+
TAccountNewTreeDelegate,
|
|
142
|
+
TAccountMerkleTree,
|
|
143
|
+
TAccountSystemProgram
|
|
144
|
+
>,
|
|
145
|
+
config?: { programAddress?: TProgramAddress },
|
|
146
|
+
): Promise<
|
|
147
|
+
SetTreeDelegateInstruction<
|
|
148
|
+
TProgramAddress,
|
|
149
|
+
TAccountTreeAuthority,
|
|
150
|
+
TAccountTreeCreator,
|
|
151
|
+
TAccountNewTreeDelegate,
|
|
152
|
+
TAccountMerkleTree,
|
|
153
|
+
TAccountSystemProgram
|
|
154
|
+
>
|
|
155
|
+
> {
|
|
156
|
+
// Program address.
|
|
157
|
+
const programAddress = config?.programAddress ?? BUBBLEGUM_PROGRAM_ADDRESS;
|
|
158
|
+
|
|
159
|
+
// Original accounts.
|
|
160
|
+
const originalAccounts = {
|
|
161
|
+
treeAuthority: { value: input.treeAuthority ?? null, isWritable: true },
|
|
162
|
+
treeCreator: { value: input.treeCreator ?? null, isWritable: false },
|
|
163
|
+
newTreeDelegate: {
|
|
164
|
+
value: input.newTreeDelegate ?? null,
|
|
165
|
+
isWritable: false,
|
|
166
|
+
},
|
|
167
|
+
merkleTree: { value: input.merkleTree ?? null, isWritable: false },
|
|
168
|
+
systemProgram: { value: input.systemProgram ?? null, isWritable: false },
|
|
169
|
+
};
|
|
170
|
+
const accounts = originalAccounts as Record<
|
|
171
|
+
keyof typeof originalAccounts,
|
|
172
|
+
ResolvedInstructionAccount
|
|
173
|
+
>;
|
|
174
|
+
|
|
175
|
+
// Resolve default values.
|
|
176
|
+
if (!accounts.treeAuthority.value) {
|
|
177
|
+
accounts.treeAuthority.value = await findTreeConfigPda({
|
|
178
|
+
merkleTree: getAddressFromResolvedInstructionAccount(
|
|
179
|
+
"merkleTree",
|
|
180
|
+
accounts.merkleTree.value,
|
|
181
|
+
),
|
|
182
|
+
});
|
|
183
|
+
}
|
|
184
|
+
if (!accounts.systemProgram.value) {
|
|
185
|
+
accounts.systemProgram.value =
|
|
186
|
+
"11111111111111111111111111111111" as Address<"11111111111111111111111111111111">;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
|
|
190
|
+
return Object.freeze({
|
|
191
|
+
accounts: [
|
|
192
|
+
getAccountMeta("treeAuthority", accounts.treeAuthority),
|
|
193
|
+
getAccountMeta("treeCreator", accounts.treeCreator),
|
|
194
|
+
getAccountMeta("newTreeDelegate", accounts.newTreeDelegate),
|
|
195
|
+
getAccountMeta("merkleTree", accounts.merkleTree),
|
|
196
|
+
getAccountMeta("systemProgram", accounts.systemProgram),
|
|
197
|
+
],
|
|
198
|
+
data: getSetTreeDelegateInstructionDataEncoder().encode({}),
|
|
199
|
+
programAddress,
|
|
200
|
+
} as SetTreeDelegateInstruction<
|
|
201
|
+
TProgramAddress,
|
|
202
|
+
TAccountTreeAuthority,
|
|
203
|
+
TAccountTreeCreator,
|
|
204
|
+
TAccountNewTreeDelegate,
|
|
205
|
+
TAccountMerkleTree,
|
|
206
|
+
TAccountSystemProgram
|
|
207
|
+
>);
|
|
208
|
+
}
|
|
209
|
+
|
|
113
210
|
export interface SetTreeDelegateInput<
|
|
114
211
|
TAccountTreeAuthority extends string = string,
|
|
115
212
|
TAccountTreeCreator extends string = string,
|
|
@@ -48,7 +48,11 @@ import {
|
|
|
48
48
|
SolanaError,
|
|
49
49
|
transformEncoder,
|
|
50
50
|
} from "@solana/kit";
|
|
51
|
-
import {
|
|
51
|
+
import {
|
|
52
|
+
getAccountMetaFactory,
|
|
53
|
+
getAddressFromResolvedInstructionAccount,
|
|
54
|
+
} from "@solana/program-client-core";
|
|
55
|
+
import { findTreeConfigPda } from "../pdas/index.js";
|
|
52
56
|
import { BUBBLEGUM_PROGRAM_ADDRESS } from "../programs/index.js";
|
|
53
57
|
|
|
54
58
|
export const THAW_AND_REVOKE_V2_DISCRIMINATOR: ReadonlyUint8Array =
|
|
@@ -62,17 +66,18 @@ export function getThawAndRevokeV2DiscriminatorBytes(): ReadonlyUint8Array {
|
|
|
62
66
|
|
|
63
67
|
export type ThawAndRevokeV2Instruction<
|
|
64
68
|
TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,
|
|
65
|
-
TAccountTreeAuthority extends string | AccountMeta = string,
|
|
66
|
-
TAccountPayer extends string | AccountMeta = string,
|
|
67
|
-
TAccountLeafDelegate extends string | AccountMeta = string,
|
|
68
|
-
TAccountLeafOwner extends string | AccountMeta = string,
|
|
69
|
-
TAccountMerkleTree extends string | AccountMeta = string,
|
|
70
|
-
TAccountLogWrapper extends string | AccountMeta =
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
69
|
+
TAccountTreeAuthority extends string | AccountMeta<string> = string,
|
|
70
|
+
TAccountPayer extends string | AccountMeta<string> = string,
|
|
71
|
+
TAccountLeafDelegate extends string | AccountMeta<string> = string,
|
|
72
|
+
TAccountLeafOwner extends string | AccountMeta<string> = string,
|
|
73
|
+
TAccountMerkleTree extends string | AccountMeta<string> = string,
|
|
74
|
+
TAccountLogWrapper extends string | AccountMeta<string> =
|
|
75
|
+
"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3",
|
|
76
|
+
TAccountCompressionProgram extends string | AccountMeta<string> =
|
|
77
|
+
"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW",
|
|
78
|
+
TAccountSystemProgram extends string | AccountMeta<string> =
|
|
79
|
+
"11111111111111111111111111111111",
|
|
80
|
+
TRemainingAccounts extends readonly AccountMeta<string>[] = [],
|
|
76
81
|
> = Instruction<TProgram> &
|
|
77
82
|
InstructionWithData<ReadonlyUint8Array> &
|
|
78
83
|
InstructionWithAccounts<
|
|
@@ -183,6 +188,146 @@ export function getThawAndRevokeV2InstructionDataCodec(): Codec<
|
|
|
183
188
|
);
|
|
184
189
|
}
|
|
185
190
|
|
|
191
|
+
export interface ThawAndRevokeV2AsyncInput<
|
|
192
|
+
TAccountTreeAuthority extends string = string,
|
|
193
|
+
TAccountPayer extends string = string,
|
|
194
|
+
TAccountLeafDelegate extends string = string,
|
|
195
|
+
TAccountLeafOwner extends string = string,
|
|
196
|
+
TAccountMerkleTree extends string = string,
|
|
197
|
+
TAccountLogWrapper extends string = string,
|
|
198
|
+
TAccountCompressionProgram extends string = string,
|
|
199
|
+
TAccountSystemProgram extends string = string,
|
|
200
|
+
> {
|
|
201
|
+
treeAuthority?: Address<TAccountTreeAuthority>;
|
|
202
|
+
payer: TransactionSigner<TAccountPayer>;
|
|
203
|
+
/** Optional leaf delegate, defaults to `payer` */
|
|
204
|
+
leafDelegate?: TransactionSigner<TAccountLeafDelegate>;
|
|
205
|
+
leafOwner: Address<TAccountLeafOwner>;
|
|
206
|
+
merkleTree: Address<TAccountMerkleTree>;
|
|
207
|
+
logWrapper?: Address<TAccountLogWrapper>;
|
|
208
|
+
compressionProgram?: Address<TAccountCompressionProgram>;
|
|
209
|
+
systemProgram?: Address<TAccountSystemProgram>;
|
|
210
|
+
root: ThawAndRevokeV2InstructionDataArgs["root"];
|
|
211
|
+
dataHash: ThawAndRevokeV2InstructionDataArgs["dataHash"];
|
|
212
|
+
creatorHash: ThawAndRevokeV2InstructionDataArgs["creatorHash"];
|
|
213
|
+
collectionHash: ThawAndRevokeV2InstructionDataArgs["collectionHash"];
|
|
214
|
+
assetDataHash: ThawAndRevokeV2InstructionDataArgs["assetDataHash"];
|
|
215
|
+
flags: ThawAndRevokeV2InstructionDataArgs["flags"];
|
|
216
|
+
nonce: ThawAndRevokeV2InstructionDataArgs["nonce"];
|
|
217
|
+
index: ThawAndRevokeV2InstructionDataArgs["index"];
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
export async function getThawAndRevokeV2InstructionAsync<
|
|
221
|
+
TAccountTreeAuthority extends string,
|
|
222
|
+
TAccountPayer extends string,
|
|
223
|
+
TAccountLeafDelegate extends string,
|
|
224
|
+
TAccountLeafOwner extends string,
|
|
225
|
+
TAccountMerkleTree extends string,
|
|
226
|
+
TAccountLogWrapper extends string,
|
|
227
|
+
TAccountCompressionProgram extends string,
|
|
228
|
+
TAccountSystemProgram extends string,
|
|
229
|
+
TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,
|
|
230
|
+
>(
|
|
231
|
+
input: ThawAndRevokeV2AsyncInput<
|
|
232
|
+
TAccountTreeAuthority,
|
|
233
|
+
TAccountPayer,
|
|
234
|
+
TAccountLeafDelegate,
|
|
235
|
+
TAccountLeafOwner,
|
|
236
|
+
TAccountMerkleTree,
|
|
237
|
+
TAccountLogWrapper,
|
|
238
|
+
TAccountCompressionProgram,
|
|
239
|
+
TAccountSystemProgram
|
|
240
|
+
>,
|
|
241
|
+
config?: { programAddress?: TProgramAddress },
|
|
242
|
+
): Promise<
|
|
243
|
+
ThawAndRevokeV2Instruction<
|
|
244
|
+
TProgramAddress,
|
|
245
|
+
TAccountTreeAuthority,
|
|
246
|
+
TAccountPayer,
|
|
247
|
+
TAccountLeafDelegate,
|
|
248
|
+
TAccountLeafOwner,
|
|
249
|
+
TAccountMerkleTree,
|
|
250
|
+
TAccountLogWrapper,
|
|
251
|
+
TAccountCompressionProgram,
|
|
252
|
+
TAccountSystemProgram
|
|
253
|
+
>
|
|
254
|
+
> {
|
|
255
|
+
// Program address.
|
|
256
|
+
const programAddress = config?.programAddress ?? BUBBLEGUM_PROGRAM_ADDRESS;
|
|
257
|
+
|
|
258
|
+
// Original accounts.
|
|
259
|
+
const originalAccounts = {
|
|
260
|
+
treeAuthority: { value: input.treeAuthority ?? null, isWritable: true },
|
|
261
|
+
payer: { value: input.payer ?? null, isWritable: true },
|
|
262
|
+
leafDelegate: { value: input.leafDelegate ?? null, isWritable: false },
|
|
263
|
+
leafOwner: { value: input.leafOwner ?? null, isWritable: false },
|
|
264
|
+
merkleTree: { value: input.merkleTree ?? null, isWritable: true },
|
|
265
|
+
logWrapper: { value: input.logWrapper ?? null, isWritable: false },
|
|
266
|
+
compressionProgram: {
|
|
267
|
+
value: input.compressionProgram ?? null,
|
|
268
|
+
isWritable: false,
|
|
269
|
+
},
|
|
270
|
+
systemProgram: { value: input.systemProgram ?? null, isWritable: false },
|
|
271
|
+
};
|
|
272
|
+
const accounts = originalAccounts as Record<
|
|
273
|
+
keyof typeof originalAccounts,
|
|
274
|
+
ResolvedInstructionAccount
|
|
275
|
+
>;
|
|
276
|
+
|
|
277
|
+
// Original args.
|
|
278
|
+
const args = { ...input };
|
|
279
|
+
|
|
280
|
+
// Resolve default values.
|
|
281
|
+
if (!accounts.treeAuthority.value) {
|
|
282
|
+
accounts.treeAuthority.value = await findTreeConfigPda({
|
|
283
|
+
merkleTree: getAddressFromResolvedInstructionAccount(
|
|
284
|
+
"merkleTree",
|
|
285
|
+
accounts.merkleTree.value,
|
|
286
|
+
),
|
|
287
|
+
});
|
|
288
|
+
}
|
|
289
|
+
if (!accounts.logWrapper.value) {
|
|
290
|
+
accounts.logWrapper.value =
|
|
291
|
+
"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3" as Address<"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3">;
|
|
292
|
+
}
|
|
293
|
+
if (!accounts.compressionProgram.value) {
|
|
294
|
+
accounts.compressionProgram.value =
|
|
295
|
+
"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW" as Address<"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW">;
|
|
296
|
+
}
|
|
297
|
+
if (!accounts.systemProgram.value) {
|
|
298
|
+
accounts.systemProgram.value =
|
|
299
|
+
"11111111111111111111111111111111" as Address<"11111111111111111111111111111111">;
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
|
|
303
|
+
return Object.freeze({
|
|
304
|
+
accounts: [
|
|
305
|
+
getAccountMeta("treeAuthority", accounts.treeAuthority),
|
|
306
|
+
getAccountMeta("payer", accounts.payer),
|
|
307
|
+
getAccountMeta("leafDelegate", accounts.leafDelegate),
|
|
308
|
+
getAccountMeta("leafOwner", accounts.leafOwner),
|
|
309
|
+
getAccountMeta("merkleTree", accounts.merkleTree),
|
|
310
|
+
getAccountMeta("logWrapper", accounts.logWrapper),
|
|
311
|
+
getAccountMeta("compressionProgram", accounts.compressionProgram),
|
|
312
|
+
getAccountMeta("systemProgram", accounts.systemProgram),
|
|
313
|
+
],
|
|
314
|
+
data: getThawAndRevokeV2InstructionDataEncoder().encode(
|
|
315
|
+
args as ThawAndRevokeV2InstructionDataArgs,
|
|
316
|
+
),
|
|
317
|
+
programAddress,
|
|
318
|
+
} as ThawAndRevokeV2Instruction<
|
|
319
|
+
TProgramAddress,
|
|
320
|
+
TAccountTreeAuthority,
|
|
321
|
+
TAccountPayer,
|
|
322
|
+
TAccountLeafDelegate,
|
|
323
|
+
TAccountLeafOwner,
|
|
324
|
+
TAccountMerkleTree,
|
|
325
|
+
TAccountLogWrapper,
|
|
326
|
+
TAccountCompressionProgram,
|
|
327
|
+
TAccountSystemProgram
|
|
328
|
+
>);
|
|
329
|
+
}
|
|
330
|
+
|
|
186
331
|
export interface ThawAndRevokeV2Input<
|
|
187
332
|
TAccountTreeAuthority extends string = string,
|
|
188
333
|
TAccountPayer extends string = string,
|
|
@@ -199,8 +344,8 @@ export interface ThawAndRevokeV2Input<
|
|
|
199
344
|
leafDelegate?: TransactionSigner<TAccountLeafDelegate>;
|
|
200
345
|
leafOwner: Address<TAccountLeafOwner>;
|
|
201
346
|
merkleTree: Address<TAccountMerkleTree>;
|
|
202
|
-
logWrapper
|
|
203
|
-
compressionProgram
|
|
347
|
+
logWrapper?: Address<TAccountLogWrapper>;
|
|
348
|
+
compressionProgram?: Address<TAccountCompressionProgram>;
|
|
204
349
|
systemProgram?: Address<TAccountSystemProgram>;
|
|
205
350
|
root: ThawAndRevokeV2InstructionDataArgs["root"];
|
|
206
351
|
dataHash: ThawAndRevokeV2InstructionDataArgs["dataHash"];
|
|
@@ -271,6 +416,14 @@ export function getThawAndRevokeV2Instruction<
|
|
|
271
416
|
const args = { ...input };
|
|
272
417
|
|
|
273
418
|
// Resolve default values.
|
|
419
|
+
if (!accounts.logWrapper.value) {
|
|
420
|
+
accounts.logWrapper.value =
|
|
421
|
+
"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3" as Address<"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3">;
|
|
422
|
+
}
|
|
423
|
+
if (!accounts.compressionProgram.value) {
|
|
424
|
+
accounts.compressionProgram.value =
|
|
425
|
+
"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW" as Address<"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW">;
|
|
426
|
+
}
|
|
274
427
|
if (!accounts.systemProgram.value) {
|
|
275
428
|
accounts.systemProgram.value =
|
|
276
429
|
"11111111111111111111111111111111" as Address<"11111111111111111111111111111111">;
|
|
@@ -48,7 +48,11 @@ import {
|
|
|
48
48
|
SolanaError,
|
|
49
49
|
transformEncoder,
|
|
50
50
|
} from "@solana/kit";
|
|
51
|
-
import {
|
|
51
|
+
import {
|
|
52
|
+
getAccountMetaFactory,
|
|
53
|
+
getAddressFromResolvedInstructionAccount,
|
|
54
|
+
} from "@solana/program-client-core";
|
|
55
|
+
import { findTreeConfigPda } from "../pdas/index.js";
|
|
52
56
|
import { BUBBLEGUM_PROGRAM_ADDRESS } from "../programs/index.js";
|
|
53
57
|
|
|
54
58
|
export const THAW_V2_DISCRIMINATOR: ReadonlyUint8Array = new Uint8Array([
|
|
@@ -61,19 +65,20 @@ export function getThawV2DiscriminatorBytes(): ReadonlyUint8Array {
|
|
|
61
65
|
|
|
62
66
|
export type ThawV2Instruction<
|
|
63
67
|
TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,
|
|
64
|
-
TAccountTreeAuthority extends string | AccountMeta = string,
|
|
65
|
-
TAccountPayer extends string | AccountMeta = string,
|
|
66
|
-
TAccountAuthority extends string | AccountMeta = string,
|
|
67
|
-
TAccountLeafOwner extends string | AccountMeta = string,
|
|
68
|
-
TAccountLeafDelegate extends string | AccountMeta = string,
|
|
69
|
-
TAccountMerkleTree extends string | AccountMeta = string,
|
|
70
|
-
TAccountCoreCollection extends string | AccountMeta = string,
|
|
71
|
-
TAccountLogWrapper extends string | AccountMeta =
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
68
|
+
TAccountTreeAuthority extends string | AccountMeta<string> = string,
|
|
69
|
+
TAccountPayer extends string | AccountMeta<string> = string,
|
|
70
|
+
TAccountAuthority 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
|
+
TAccountCoreCollection extends string | AccountMeta<string> = string,
|
|
75
|
+
TAccountLogWrapper extends string | AccountMeta<string> =
|
|
76
|
+
"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3",
|
|
77
|
+
TAccountCompressionProgram extends string | AccountMeta<string> =
|
|
78
|
+
"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW",
|
|
79
|
+
TAccountSystemProgram extends string | AccountMeta<string> =
|
|
80
|
+
"11111111111111111111111111111111",
|
|
81
|
+
TRemainingAccounts extends readonly AccountMeta<string>[] = [],
|
|
77
82
|
> = Instruction<TProgram> &
|
|
78
83
|
InstructionWithData<ReadonlyUint8Array> &
|
|
79
84
|
InstructionWithAccounts<
|
|
@@ -180,6 +185,164 @@ export function getThawV2InstructionDataCodec(): Codec<
|
|
|
180
185
|
);
|
|
181
186
|
}
|
|
182
187
|
|
|
188
|
+
export interface ThawV2AsyncInput<
|
|
189
|
+
TAccountTreeAuthority extends string = string,
|
|
190
|
+
TAccountPayer extends string = string,
|
|
191
|
+
TAccountAuthority extends string = string,
|
|
192
|
+
TAccountLeafOwner extends string = string,
|
|
193
|
+
TAccountLeafDelegate extends string = string,
|
|
194
|
+
TAccountMerkleTree extends string = string,
|
|
195
|
+
TAccountCoreCollection extends string = string,
|
|
196
|
+
TAccountLogWrapper extends string = string,
|
|
197
|
+
TAccountCompressionProgram extends string = string,
|
|
198
|
+
TAccountSystemProgram extends string = string,
|
|
199
|
+
> {
|
|
200
|
+
treeAuthority?: Address<TAccountTreeAuthority>;
|
|
201
|
+
payer: TransactionSigner<TAccountPayer>;
|
|
202
|
+
/**
|
|
203
|
+
* Optional authority, defaults to `payer`. Must be either
|
|
204
|
+
* the leaf delegate or collection permanent freeze delegate.
|
|
205
|
+
*/
|
|
206
|
+
authority?: TransactionSigner<TAccountAuthority>;
|
|
207
|
+
leafOwner: Address<TAccountLeafOwner>;
|
|
208
|
+
leafDelegate: Address<TAccountLeafDelegate>;
|
|
209
|
+
merkleTree: Address<TAccountMerkleTree>;
|
|
210
|
+
coreCollection?: Address<TAccountCoreCollection>;
|
|
211
|
+
logWrapper?: Address<TAccountLogWrapper>;
|
|
212
|
+
compressionProgram?: Address<TAccountCompressionProgram>;
|
|
213
|
+
systemProgram?: Address<TAccountSystemProgram>;
|
|
214
|
+
root: ThawV2InstructionDataArgs["root"];
|
|
215
|
+
dataHash: ThawV2InstructionDataArgs["dataHash"];
|
|
216
|
+
creatorHash: ThawV2InstructionDataArgs["creatorHash"];
|
|
217
|
+
assetDataHash: ThawV2InstructionDataArgs["assetDataHash"];
|
|
218
|
+
flags: ThawV2InstructionDataArgs["flags"];
|
|
219
|
+
nonce: ThawV2InstructionDataArgs["nonce"];
|
|
220
|
+
index: ThawV2InstructionDataArgs["index"];
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
export async function getThawV2InstructionAsync<
|
|
224
|
+
TAccountTreeAuthority extends string,
|
|
225
|
+
TAccountPayer extends string,
|
|
226
|
+
TAccountAuthority extends string,
|
|
227
|
+
TAccountLeafOwner extends string,
|
|
228
|
+
TAccountLeafDelegate extends string,
|
|
229
|
+
TAccountMerkleTree extends string,
|
|
230
|
+
TAccountCoreCollection extends string,
|
|
231
|
+
TAccountLogWrapper extends string,
|
|
232
|
+
TAccountCompressionProgram extends string,
|
|
233
|
+
TAccountSystemProgram extends string,
|
|
234
|
+
TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,
|
|
235
|
+
>(
|
|
236
|
+
input: ThawV2AsyncInput<
|
|
237
|
+
TAccountTreeAuthority,
|
|
238
|
+
TAccountPayer,
|
|
239
|
+
TAccountAuthority,
|
|
240
|
+
TAccountLeafOwner,
|
|
241
|
+
TAccountLeafDelegate,
|
|
242
|
+
TAccountMerkleTree,
|
|
243
|
+
TAccountCoreCollection,
|
|
244
|
+
TAccountLogWrapper,
|
|
245
|
+
TAccountCompressionProgram,
|
|
246
|
+
TAccountSystemProgram
|
|
247
|
+
>,
|
|
248
|
+
config?: { programAddress?: TProgramAddress },
|
|
249
|
+
): Promise<
|
|
250
|
+
ThawV2Instruction<
|
|
251
|
+
TProgramAddress,
|
|
252
|
+
TAccountTreeAuthority,
|
|
253
|
+
TAccountPayer,
|
|
254
|
+
TAccountAuthority,
|
|
255
|
+
TAccountLeafOwner,
|
|
256
|
+
TAccountLeafDelegate,
|
|
257
|
+
TAccountMerkleTree,
|
|
258
|
+
TAccountCoreCollection,
|
|
259
|
+
TAccountLogWrapper,
|
|
260
|
+
TAccountCompressionProgram,
|
|
261
|
+
TAccountSystemProgram
|
|
262
|
+
>
|
|
263
|
+
> {
|
|
264
|
+
// Program address.
|
|
265
|
+
const programAddress = config?.programAddress ?? BUBBLEGUM_PROGRAM_ADDRESS;
|
|
266
|
+
|
|
267
|
+
// Original accounts.
|
|
268
|
+
const originalAccounts = {
|
|
269
|
+
treeAuthority: { value: input.treeAuthority ?? null, isWritable: true },
|
|
270
|
+
payer: { value: input.payer ?? null, isWritable: true },
|
|
271
|
+
authority: { value: input.authority ?? null, isWritable: false },
|
|
272
|
+
leafOwner: { value: input.leafOwner ?? null, isWritable: false },
|
|
273
|
+
leafDelegate: { value: input.leafDelegate ?? null, isWritable: false },
|
|
274
|
+
merkleTree: { value: input.merkleTree ?? null, isWritable: true },
|
|
275
|
+
coreCollection: { value: input.coreCollection ?? null, isWritable: false },
|
|
276
|
+
logWrapper: { value: input.logWrapper ?? null, isWritable: false },
|
|
277
|
+
compressionProgram: {
|
|
278
|
+
value: input.compressionProgram ?? null,
|
|
279
|
+
isWritable: false,
|
|
280
|
+
},
|
|
281
|
+
systemProgram: { value: input.systemProgram ?? null, isWritable: false },
|
|
282
|
+
};
|
|
283
|
+
const accounts = originalAccounts as Record<
|
|
284
|
+
keyof typeof originalAccounts,
|
|
285
|
+
ResolvedInstructionAccount
|
|
286
|
+
>;
|
|
287
|
+
|
|
288
|
+
// Original args.
|
|
289
|
+
const args = { ...input };
|
|
290
|
+
|
|
291
|
+
// Resolve default values.
|
|
292
|
+
if (!accounts.treeAuthority.value) {
|
|
293
|
+
accounts.treeAuthority.value = await findTreeConfigPda({
|
|
294
|
+
merkleTree: getAddressFromResolvedInstructionAccount(
|
|
295
|
+
"merkleTree",
|
|
296
|
+
accounts.merkleTree.value,
|
|
297
|
+
),
|
|
298
|
+
});
|
|
299
|
+
}
|
|
300
|
+
if (!accounts.logWrapper.value) {
|
|
301
|
+
accounts.logWrapper.value =
|
|
302
|
+
"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3" as Address<"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3">;
|
|
303
|
+
}
|
|
304
|
+
if (!accounts.compressionProgram.value) {
|
|
305
|
+
accounts.compressionProgram.value =
|
|
306
|
+
"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW" as Address<"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW">;
|
|
307
|
+
}
|
|
308
|
+
if (!accounts.systemProgram.value) {
|
|
309
|
+
accounts.systemProgram.value =
|
|
310
|
+
"11111111111111111111111111111111" as Address<"11111111111111111111111111111111">;
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
|
|
314
|
+
return Object.freeze({
|
|
315
|
+
accounts: [
|
|
316
|
+
getAccountMeta("treeAuthority", accounts.treeAuthority),
|
|
317
|
+
getAccountMeta("payer", accounts.payer),
|
|
318
|
+
getAccountMeta("authority", accounts.authority),
|
|
319
|
+
getAccountMeta("leafOwner", accounts.leafOwner),
|
|
320
|
+
getAccountMeta("leafDelegate", accounts.leafDelegate),
|
|
321
|
+
getAccountMeta("merkleTree", accounts.merkleTree),
|
|
322
|
+
getAccountMeta("coreCollection", accounts.coreCollection),
|
|
323
|
+
getAccountMeta("logWrapper", accounts.logWrapper),
|
|
324
|
+
getAccountMeta("compressionProgram", accounts.compressionProgram),
|
|
325
|
+
getAccountMeta("systemProgram", accounts.systemProgram),
|
|
326
|
+
],
|
|
327
|
+
data: getThawV2InstructionDataEncoder().encode(
|
|
328
|
+
args as ThawV2InstructionDataArgs,
|
|
329
|
+
),
|
|
330
|
+
programAddress,
|
|
331
|
+
} as ThawV2Instruction<
|
|
332
|
+
TProgramAddress,
|
|
333
|
+
TAccountTreeAuthority,
|
|
334
|
+
TAccountPayer,
|
|
335
|
+
TAccountAuthority,
|
|
336
|
+
TAccountLeafOwner,
|
|
337
|
+
TAccountLeafDelegate,
|
|
338
|
+
TAccountMerkleTree,
|
|
339
|
+
TAccountCoreCollection,
|
|
340
|
+
TAccountLogWrapper,
|
|
341
|
+
TAccountCompressionProgram,
|
|
342
|
+
TAccountSystemProgram
|
|
343
|
+
>);
|
|
344
|
+
}
|
|
345
|
+
|
|
183
346
|
export interface ThawV2Input<
|
|
184
347
|
TAccountTreeAuthority extends string = string,
|
|
185
348
|
TAccountPayer extends string = string,
|
|
@@ -203,8 +366,8 @@ export interface ThawV2Input<
|
|
|
203
366
|
leafDelegate: Address<TAccountLeafDelegate>;
|
|
204
367
|
merkleTree: Address<TAccountMerkleTree>;
|
|
205
368
|
coreCollection?: Address<TAccountCoreCollection>;
|
|
206
|
-
logWrapper
|
|
207
|
-
compressionProgram
|
|
369
|
+
logWrapper?: Address<TAccountLogWrapper>;
|
|
370
|
+
compressionProgram?: Address<TAccountCompressionProgram>;
|
|
208
371
|
systemProgram?: Address<TAccountSystemProgram>;
|
|
209
372
|
root: ThawV2InstructionDataArgs["root"];
|
|
210
373
|
dataHash: ThawV2InstructionDataArgs["dataHash"];
|
|
@@ -282,6 +445,14 @@ export function getThawV2Instruction<
|
|
|
282
445
|
const args = { ...input };
|
|
283
446
|
|
|
284
447
|
// Resolve default values.
|
|
448
|
+
if (!accounts.logWrapper.value) {
|
|
449
|
+
accounts.logWrapper.value =
|
|
450
|
+
"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3" as Address<"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3">;
|
|
451
|
+
}
|
|
452
|
+
if (!accounts.compressionProgram.value) {
|
|
453
|
+
accounts.compressionProgram.value =
|
|
454
|
+
"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW" as Address<"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW">;
|
|
455
|
+
}
|
|
285
456
|
if (!accounts.systemProgram.value) {
|
|
286
457
|
accounts.systemProgram.value =
|
|
287
458
|
"11111111111111111111111111111111" as Address<"11111111111111111111111111111111">;
|