deleteTwitterRegistry static method

List<TransactionInstruction> deleteTwitterRegistry({
  1. required String twitterHandle,
  2. required SolAddress verifiedPubkey,
})

Delete the verified registry for a given twitter handle

Implementation

static List<TransactionInstruction> deleteTwitterRegistry({
  required String twitterHandle,
  required SolAddress verifiedPubkey,
}) {
  final hashedTwitterHandle =
      NameServiceProgramUtils.getHashedName(twitterHandle);
  final twitterHandleRegistryKey =
      NameServiceProgramUtils.getNameAccountProgram(
    hashedName: hashedTwitterHandle,
    nameParent: NameServiceProgramConst.twitterRootPrentRegisteryKey,
  );

  final hashedVerifiedPubkey =
      NameServiceProgramUtils.getHashedName(verifiedPubkey.address);
  final reverseRegistryKey = NameServiceProgramUtils.getNameAccountProgram(
    hashedName: hashedVerifiedPubkey,
    nameClass: NameServiceProgramConst.twitterVerificationAuthority,
    nameParent: NameServiceProgramConst.twitterRootPrentRegisteryKey,
  );

  return [
    NameServiceProgram.delete(
      nameAccountKey: twitterHandleRegistryKey,
      refundTargetKey: verifiedPubkey,
      nameOwnerKey: verifiedPubkey,
    ),
    NameServiceProgram.delete(
      nameAccountKey: reverseRegistryKey,
      refundTargetKey: verifiedPubkey,
      nameOwnerKey: verifiedPubkey,
    )
  ];
}