diff --git a/src/core/operations/DNSOverHTTPS.mjs b/src/core/operations/DNSOverHTTPS.mjs
deleted file mode 100644
index ca779815..00000000
--- a/src/core/operations/DNSOverHTTPS.mjs
+++ /dev/null
@@ -1,125 +0,0 @@
-/**
- * @author h345983745
- * @copyright Crown Copyright 2019
- * @license Apache-2.0
- */
-import Operation from "../Operation.mjs";
-import OperationError from "../errors/OperationError.mjs";
-
-/**
- * DNS over HTTPS operation
- */
-class DNSOverHTTPS extends Operation {
-
- /**
- * DNSOverHTTPS constructor
- */
- constructor() {
- super();
-
- this.name = "DNS over HTTPS";
- this.module = "Default";
- this.description = [
- "Takes a single domain name and performs a DNS lookup using DNS over HTTPS.",
- "
",
- "By default, Cloudflare and Google DNS over HTTPS services are supported.",
- "
",
- "Can be used with any service that supports the GET parameters name
and type
."
- ].join("\n");
- this.infoURL = "https://wikipedia.org/wiki/DNS_over_HTTPS";
- this.inputType = "string";
- this.outputType = "JSON";
- this.manualBake = true;
- this.args = [
- {
- name: "Resolver",
- type: "editableOption",
- value: [
- {
- name: "Google",
- value: "https://dns.google.com/resolve"
- },
- {
- name: "Cloudflare",
- value: "https://cloudflare-dns.com/dns-query"
- }
- ]
- },
- {
- name: "Request Type",
- type: "option",
- value: [
- "A",
- "AAAA",
- "TXT",
- "MX",
- "DNSKEY",
- "NS"
- ]
- },
- {
- name: "Answer Data Only",
- type: "boolean",
- value: false
- },
- {
- name: "Validate DNSSEC",
- type: "boolean",
- value: true
- }
- ];
- }
-
- /**
- * @param {string} input
- * @param {Object[]} args
- * @returns {JSON}
- */
- run(input, args) {
- const [resolver, requestType, justAnswer, DNSSEC] = args;
- let url = URL;
- try {
- url = new URL(resolver);
- } catch (error) {
- throw new OperationError(error.toString() +
- "\n\nThis error could be caused by one of the following:\n" +
- " - An invalid Resolver URL\n");
- }
- const params = {name: input, type: requestType, cd: DNSSEC};
-
- url.search = new URLSearchParams(params);
-
- return fetch(url, {headers: {"accept": "application/dns-json"}}).then(response => {
- return response.json();
- }).then(data => {
- if (justAnswer) {
- return extractData(data.Answer);
- }
- return data;
- }).catch(e => {
- throw new OperationError(`Error making request to ${url}\n${e.toString()}`);
- });
-
- }
-}
-
-/**
- * Construct an array of just data from a DNS Answer section
- *
- * @private
- * @param {JSON} data
- * @returns {JSON}
- */
-function extractData(data) {
- if (typeof(data) == "undefined") {
- return [];
- } else {
- const dataValues = [];
- data.forEach(element => {
- dataValues.push(element.data);
- });
- return dataValues;
- }
-}
-
-export default DNSOverHTTPS;