MetaplexCandyMachineCoreProgram.setCollection constructor

MetaplexCandyMachineCoreProgram.setCollection({
  1. required SolAddress candyMachine,
  2. required SolAddress authority,
  3. required SolAddress authorityPda,
  4. required SolAddress payer,
  5. required SolAddress collectionMint,
  6. required SolAddress collectionMetadata,
  7. required SolAddress collectionAuthorityRecord,
  8. required SolAddress newCollectionUpdateAuthority,
  9. required SolAddress newCollectionMetadata,
  10. required SolAddress newCollectionMint,
  11. required SolAddress newCollectionMasterEdition,
  12. required SolAddress newCollectionAuthorityRecord,
  13. required SolAddress tokenMetadataProgram,
  14. SolAddress systemProgram = SystemProgramConst.programId,
  15. SolAddress programId = MetaplexCandyMachineCoreProgramConst.candyMachineV3programId,
})

Implementation

factory MetaplexCandyMachineCoreProgram.setCollection({
  required SolAddress candyMachine,
  required SolAddress authority,
  required SolAddress authorityPda,
  required SolAddress payer,
  required SolAddress collectionMint,
  required SolAddress collectionMetadata,
  required SolAddress collectionAuthorityRecord,
  required SolAddress newCollectionUpdateAuthority,
  required SolAddress newCollectionMetadata,
  required SolAddress newCollectionMint,
  required SolAddress newCollectionMasterEdition,
  required SolAddress newCollectionAuthorityRecord,
  required SolAddress tokenMetadataProgram,
  SolAddress systemProgram = SystemProgramConst.programId,
  SolAddress programId =
      MetaplexCandyMachineCoreProgramConst.candyMachineV3programId,
}) {
  return MetaplexCandyMachineCoreProgram(
      keys: [
        candyMachine.toWritable(),
        authority.toSigner(),
        authorityPda.toWritable(),
        payer.toSigner(),
        collectionMint.toReadOnly(),
        collectionMetadata.toReadOnly(),
        collectionAuthorityRecord.toWritable(),
        newCollectionUpdateAuthority.toSignerAndWritable(),
        newCollectionMetadata.toReadOnly(),
        newCollectionMint.toReadOnly(),
        newCollectionMasterEdition.toReadOnly(),
        newCollectionAuthorityRecord.toWritable(),
        tokenMetadataProgram.toReadOnly(),
        systemProgram.toReadOnly(),
      ],
      programId: programId,
      layout: const MetaplexCandyMachineSetCollectionLayout());
}