MetaplexCandyMachineCoreProgram.mintFromCandyMachine constructor

MetaplexCandyMachineCoreProgram.mintFromCandyMachine({
  1. required SolAddress candyMachine,
  2. required SolAddress authorityPda,
  3. required SolAddress mintAuthority,
  4. required SolAddress payer,
  5. required SolAddress nftMint,
  6. required SolAddress nftMintAuthority,
  7. required SolAddress nftMetadata,
  8. required SolAddress nftMasterEdition,
  9. required SolAddress collectionAuthorityRecord,
  10. required SolAddress collectionMint,
  11. required SolAddress collectionMetadata,
  12. required SolAddress collectionMasterEdition,
  13. required SolAddress collectionUpdateAuthority,
  14. required SolAddress tokenMetadataProgram,
  15. required SolAddress recentSlothashes,
  16. SolAddress systemProgram = SystemProgramConst.programId,
  17. SolAddress programId = MetaplexCandyMachineCoreProgramConst.candyMachineV3programId,
  18. SolAddress tokenProgram = SPLTokenProgramConst.tokenProgramId,
})

Implementation

factory MetaplexCandyMachineCoreProgram.mintFromCandyMachine({
  required SolAddress candyMachine,
  required SolAddress authorityPda,
  required SolAddress mintAuthority,
  required SolAddress payer,
  required SolAddress nftMint,
  required SolAddress nftMintAuthority,
  required SolAddress nftMetadata,
  required SolAddress nftMasterEdition,
  required SolAddress collectionAuthorityRecord,
  required SolAddress collectionMint,
  required SolAddress collectionMetadata,
  required SolAddress collectionMasterEdition,
  required SolAddress collectionUpdateAuthority,
  required SolAddress tokenMetadataProgram,
  required SolAddress recentSlothashes,
  SolAddress systemProgram = SystemProgramConst.programId,
  SolAddress programId =
      MetaplexCandyMachineCoreProgramConst.candyMachineV3programId,
  SolAddress tokenProgram = SPLTokenProgramConst.tokenProgramId,
}) {
  return MetaplexCandyMachineCoreProgram(
      keys: [
        candyMachine.toWritable(),
        authorityPda.toWritable(),
        mintAuthority.toSigner(),
        payer.toSignerAndWritable(),
        nftMint.toWritable(),
        nftMintAuthority.toSigner(),
        nftMetadata.toWritable(),
        nftMasterEdition.toWritable(),
        collectionAuthorityRecord.toReadOnly(),
        collectionMint.toReadOnly(),
        collectionMetadata.toWritable(),
        collectionMasterEdition.toReadOnly(),
        collectionUpdateAuthority.toReadOnly(),
        tokenMetadataProgram.toReadOnly(),
        tokenProgram.toReadOnly(),
        systemProgram.toReadOnly(),
        recentSlothashes.toReadOnly()
      ],
      programId: programId,
      layout: const MetaplexCandyMachineMintFromCandyMachineLayout());
}