Estoy tratando de configurar un mercado nft, puedo acuñarlo, venderlo y revenderlo, pero después de volver a venderlo, va al mercado, pero sigue apareciendo como si todavía estuviera en mi billetera, pero es ya no está, solo aparece en el inventario del sitio que es como un fantasma. ¿Alguien me puede ayudar?
estructura de revendedor de la página de inventario:
export async function convertMarketItemStruct2MarketItem(item: MarketItemStructOutput) { const tokenURI = await getTokenContract().tokenURI(item.tokenId); const metadata = await axios.get(`https://ipfs.io/ipfs/${tokenURI}`); return { name: metadata.data.name, image: `https://ipfs.io/ipfs/${metadata.data.image}`, description: metadata.data.description, seller: item.seller, owner: item.owner, tokenId: item.tokenId.toNumber(), itemId: item.itemId.toNumber(), price: item.price, } as MarketItem; } export async function convertMarketItemStructs2MarketItems(items: MarketItemStructOutput[]) { const marketItems: MarketItem[] = []; const contract = getTokenContract(); for (let i = 0; i < items.length; i++) { const tokenURI = await contract.tokenURI(items[i].tokenId); const metadata = await axios.get(`https://ipfs.io/ipfs/${tokenURI}`); marketItems.push({ name: metadata.data.name, image: `https://ipfs.io/ipfs/${metadata.data.image}`, description: metadata.data.description, seller: items[i].seller, owner: items[i].owner, tokenId: items[i].tokenId.toNumber(), itemId: items[i].itemId.toNumber(), price: items[i].price, } as MarketItem); } return marketItems; }estructura de página para mostrar nfts en mi inventario:
function MyNFTs(props: Props) { const { getProvider } = useContext(BlockchainContext); const { showSpinner, hideSpinner } = useSpinner(); const [nfts, setNFTs] = useState<MarketItem[]>(); useEffect(() => { showSpinner(); fetchMyNFTs(); }, []); async function fetchMyNFTs() { const provider = await getProvider(); if (!provider) { hideSpinner(); return; } const signer = provider.getSigner(); const marketContract = getMarketContract(signer); const marketNFTs = await marketContract.fetchMyNFTs(); const myNFTs = await convertMarketItemStructs2MarketItems(marketNFTs); setNFTs(myNFTs); hideSpinner(); } return (