Bubblegum

圧縮NFTの転送

Transfer命令を使用して、圧縮NFTを1つの所有者から別の所有者に転送できます。転送を承認するには、現在の所有者またはdelegate権限(存在する場合)のいずれかがトランザクションに署名する必要があります。命令は以下のパラメータを受け取ります:

  • Leaf OwnerLeaf Delegate: 圧縮NFTの現在の所有者とそのdelegate権限(存在する場合)。これらのいずれかがトランザクションに署名する必要があります。
  • New Leaf Owner: 圧縮NFTの新しい所有者のアドレス。

この命令は圧縮NFTを更新するため、Bubblegum Tree上のリーフを置き換えることに注意してください。これは、圧縮NFTの整合性を検証するために追加のパラメータを提供する必要があることを意味します。これらのパラメータはリーフを変更するすべての命令に共通であるため、以下のFAQに文書化されています。幸い、Metaplex DAS APIを使用してこれらのパラメータを自動的に取得するヘルパーメソッドを使用できます。

トランザクションサイズ

トランザクションサイズエラーが発生した場合は、getAssetWithProof{ truncateCanopy: true }の使用を検討してください。詳細についてはFAQを参照してください。

圧縮NFTの転送

import { getAssetWithProof, transfer } from '@metaplex-foundation/mpl-bubblegum'
const assetWithProof = await getAssetWithProof(umi, assetId, {truncateCanopy: true});
await transfer(umi, {
...assetWithProof,
leafOwner: currentLeafOwner,
newLeafOwner: newLeafOwner.publicKey,
}).sendAndConfirm(umi)