MetaplexCandyMachineCoreProgram.setCollectionV2 constructor

MetaplexCandyMachineCoreProgram.setCollectionV2({
  1. required SolAddress candyMachine,
  2. required SolAddress authority,
  3. required SolAddress authorityPda,
  4. required SolAddress payer,
  5. required SolAddress collectionUpdateAuthority,
  6. required SolAddress collectionMint,
  7. required SolAddress collectionMetadata,
  8. required SolAddress collectionDelegateRecord,
  9. required SolAddress newCollectionUpdateAuthority,
  10. required SolAddress newCollectionMint,
  11. required SolAddress newCollectionMetadata,
  12. required SolAddress newCollectionMasterEdition,
  13. required SolAddress newCollectionDelegateRecord,
  14. required SolAddress tokenMetadataProgram,
  15. required SolAddress sysvarInstructions,
  16. SolAddress systemProgram = SystemProgramConst.programId,
  17. SolAddress programId = MetaplexCandyMachineCoreProgramConst.candyMachineV3programId,
  18. SolAddress? authorizationRulesProgram,
  19. SolAddress? authorizationRules,
})

Implementation

factory MetaplexCandyMachineCoreProgram.setCollectionV2({
  required SolAddress candyMachine,
  required SolAddress authority,
  required SolAddress authorityPda,
  required SolAddress payer,
  required SolAddress collectionUpdateAuthority,
  required SolAddress collectionMint,
  required SolAddress collectionMetadata,
  required SolAddress collectionDelegateRecord,
  required SolAddress newCollectionUpdateAuthority,
  required SolAddress newCollectionMint,
  required SolAddress newCollectionMetadata,
  required SolAddress newCollectionMasterEdition,
  required SolAddress newCollectionDelegateRecord,
  required SolAddress tokenMetadataProgram,
  required SolAddress sysvarInstructions,
  SolAddress systemProgram = SystemProgramConst.programId,
  SolAddress programId =
      MetaplexCandyMachineCoreProgramConst.candyMachineV3programId,
  SolAddress? authorizationRulesProgram,
  SolAddress? authorizationRules,
}) {
  return MetaplexCandyMachineCoreProgram(
      keys: [
        candyMachine.toWritable(),
        authority.toSigner(),
        authorityPda.toWritable(),
        payer.toSignerAndWritable(),
        collectionUpdateAuthority.toReadOnly(),
        collectionMint.toReadOnly(),
        collectionMetadata.toWritable(),
        collectionDelegateRecord.toWritable(),
        newCollectionUpdateAuthority.toSigner(),
        newCollectionMint.toReadOnly(),
        newCollectionMetadata.toWritable(),
        newCollectionMasterEdition.toReadOnly(),
        newCollectionDelegateRecord.toWritable(),
        tokenMetadataProgram.toReadOnly(),
        systemProgram.toReadOnly(),
        sysvarInstructions.toReadOnly(),
        authorizationRulesProgram?.toReadOnly() ?? programId.toReadOnly(),
        authorizationRules?.toReadOnly() ?? programId.toReadOnly()
      ],
      programId: programId,
      layout: const MetaplexCandyMachineSetCollectionV2Layout());
}