I'm uploading nft asset to Solana network and got this error.
TypeError: Cannot read properties of undefined (reading 'map')
I'm not sure what to adjust though I've referred to numerous tutorials. Below is the code snippet in upload script of metaplex:
if (i === 0 && !cacheContent.program.uuid) {
// initialize config
log.info(`initializing config`);
try {
const res = await createConfig(anchorProgram, walletKeyPair, {
maxNumberOfLines: new BN(totalNFTs),
symbol: manifest.symbol,
sellerFeeBasisPoints: manifest.seller_fee_basis_points,
isMutable: mutable,
maxSupply: new BN(0),
retainAuthority: retainAuthority,
creators: manifest.properties.creators.map(creator => {
return {
address: new PublicKey(creator.address),
verified: true,
share: creator.share,
};
}),
});
cacheContent.program.uuid = res.uuid;
cacheContent.program.config = res.config.toBase58();
config = res.config;
log.info(
`initialized config for a candy machine with publickey: ${res.config.toBase58()}`,
);
saveCache(cacheName, env, cacheContent);
} catch (exx) {
log.error('Error deploying config to Solana network.', exx);
throw exx;
}
}
And I was uploading the assets through CLI using the following command:
ts-node ~/metaplex-master/js/packages/cli/src/candy-machine-cli.ts upload /nft-assets --env devnet --keypair ~/.config/solana/devnet.json
Check the *.json
files in assets
folder again. Make sure the creator properties follow correct structure as in https://docs.metaplex.com/nft-standard#json-structure:
{
...
"creators": [
{
"address": "SOLFLR15asd9d21325bsadythp547912501b",
"share": 100
}
]
}
It is not a plain array of public keys though
This question is missing the backtrace which makes it hard to tell where exactly the problem is.
In my case, I was missing the properties.creators
in the metadata. To fix it, verify if you are missing one of the required entries.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With