MetaplexCandyMachineCoreProgram.mintFromCandyMachineV2 constructor

MetaplexCandyMachineCoreProgram.mintFromCandyMachineV2({
  1. required SolAddress candyMachine,
  2. required SolAddress authorityPda,
  3. required SolAddress mintAuthority,
  4. required SolAddress payer,
  5. required SolAddress nftOwner,
  6. required SolAddress nftMint,
  7. required SolAddress nftMintAuthority,
  8. required SolAddress nftMetadata,
  9. required SolAddress nftMasterEdition,
  10. required SolAddress collectionDelegateRecord,
  11. required SolAddress collectionMint,
  12. required SolAddress collectionMetadata,
  13. required SolAddress collectionMasterEdition,
  14. required SolAddress collectionUpdateAuthority,
  15. required SolAddress tokenMetadataProgram,
  16. required SolAddress splTokenProgram,
  17. required SolAddress sysvarInstructions,
  18. required SolAddress recentSlothashes,
  19. SolAddress systemProgram = SystemProgramConst.programId,
  20. SolAddress programId = MetaplexCandyMachineCoreProgramConst.candyMachineV3programId,
  21. SolAddress? token,
  22. SolAddress? tokenRecord,
  23. SolAddress? splAtaProgram,
  24. SolAddress? authorizationRulesProgram,
  25. SolAddress? authorizationRules,
})

Implementation

factory MetaplexCandyMachineCoreProgram.mintFromCandyMachineV2({
  required SolAddress candyMachine,
  required SolAddress authorityPda,
  required SolAddress mintAuthority,
  required SolAddress payer,
  required SolAddress nftOwner,
  required SolAddress nftMint,
  required SolAddress nftMintAuthority,
  required SolAddress nftMetadata,
  required SolAddress nftMasterEdition,
  required SolAddress collectionDelegateRecord,
  required SolAddress collectionMint,
  required SolAddress collectionMetadata,
  required SolAddress collectionMasterEdition,
  required SolAddress collectionUpdateAuthority,
  required SolAddress tokenMetadataProgram,
  required SolAddress splTokenProgram,
  required SolAddress sysvarInstructions,
  required SolAddress recentSlothashes,
  SolAddress systemProgram = SystemProgramConst.programId,
  SolAddress programId =
      MetaplexCandyMachineCoreProgramConst.candyMachineV3programId,
  SolAddress? token,
  SolAddress? tokenRecord,
  SolAddress? splAtaProgram,
  SolAddress? authorizationRulesProgram,
  SolAddress? authorizationRules,
}) {
  return MetaplexCandyMachineCoreProgram(
      keys: [
        candyMachine.toWritable(),
        authorityPda.toWritable(),
        mintAuthority.toSigner(),
        payer.toSignerAndWritable(),
        nftOwner.toReadOnly(),
        nftMint.toWritable(),
        nftMintAuthority.toSigner(),
        nftMetadata.toWritable(),
        nftMasterEdition.toWritable(),
        token?.toWritable() ?? programId.toReadOnly(),
        tokenRecord?.toWritable() ?? programId.toReadOnly(),
        collectionDelegateRecord.toReadOnly(),
        collectionMint.toReadOnly(),
        collectionMetadata.toWritable(),
        collectionMasterEdition.toReadOnly(),
        collectionUpdateAuthority.toReadOnly(),
        tokenMetadataProgram.toReadOnly(),
        splTokenProgram.toReadOnly(),
        splAtaProgram?.toReadOnly() ?? programId.toReadOnly(),
        systemProgram.toReadOnly(),
        sysvarInstructions.toReadOnly(),
        recentSlothashes.toReadOnly(),
        authorizationRulesProgram?.toReadOnly() ?? programId.toReadOnly(),
        authorizationRules?.toReadOnly() ?? programId.toReadOnly()
      ],
      programId: programId,
      layout: const MetaplexCandyMachineMintFromCandyMachineV2Layout());
}