MetaplexCandyMachineCoreProgram.initializeCandyMachineV2 constructor

MetaplexCandyMachineCoreProgram.initializeCandyMachineV2({
  1. required SolAddress candyMachine,
  2. required SolAddress authorityPda,
  3. required SolAddress authority,
  4. required SolAddress payer,
  5. required SolAddress collectionMetadata,
  6. required SolAddress collectionMint,
  7. required SolAddress collectionMasterEdition,
  8. required SolAddress collectionUpdateAuthority,
  9. required SolAddress collectionDelegateRecord,
  10. required SolAddress tokenMetadataProgram,
  11. required SolAddress sysvarInstructions,
  12. required MetaplexCandyMachineInitializeCandyMachineV2Layout layout,
  13. SolAddress systemProgram = SystemProgramConst.programId,
  14. SolAddress programId = MetaplexCandyMachineCoreProgramConst.candyMachineV3programId,
  15. SolAddress? ruleSet,
  16. SolAddress? authorizationRulesProgram,
  17. SolAddress? authorizationRules,
})

Implementation

factory MetaplexCandyMachineCoreProgram.initializeCandyMachineV2({
  required SolAddress candyMachine,
  required SolAddress authorityPda,
  required SolAddress authority,
  required SolAddress payer,
  required SolAddress collectionMetadata,
  required SolAddress collectionMint,
  required SolAddress collectionMasterEdition,
  required SolAddress collectionUpdateAuthority,
  required SolAddress collectionDelegateRecord,
  required SolAddress tokenMetadataProgram,
  required SolAddress sysvarInstructions,
  required MetaplexCandyMachineInitializeCandyMachineV2Layout layout,
  SolAddress systemProgram = SystemProgramConst.programId,
  SolAddress programId =
      MetaplexCandyMachineCoreProgramConst.candyMachineV3programId,
  SolAddress? ruleSet,
  SolAddress? authorizationRulesProgram,
  SolAddress? authorizationRules,
}) {
  return MetaplexCandyMachineCoreProgram(keys: [
    candyMachine.toWritable(),
    authorityPda.toWritable(),
    authority.toReadOnly(),
    payer.toSignerAndWritable(),
    ruleSet?.toReadOnly() ?? programId.toReadOnly(),
    collectionMetadata.toWritable(),
    collectionMint.toReadOnly(),
    collectionMasterEdition.toReadOnly(),
    collectionUpdateAuthority.toSignerAndWritable(),
    collectionDelegateRecord.toWritable(),
    tokenMetadataProgram.toReadOnly(),
    systemProgram.toReadOnly(),
    sysvarInstructions.toReadOnly(),
    authorizationRulesProgram?.toReadOnly() ?? programId.toReadOnly(),
    authorizationRules?.toReadOnly() ?? programId.toReadOnly()
  ], programId: programId, layout: layout);
}