import { DmarcRecord } from "./records/DmarcRecord.js"; import { SpfRecord } from "./records/SpfRecord.js"; const records = { "/dmarc-validator": DmarcRecord, "/spf-validator": SpfRecord, }; const Record = records[location.pathname]; document.getElementById("record").oninput = event => validate(event.target.value); if (document.getElementById("record").value !== "") { validate(document.getElementById("record").value); } function validate(value) { document.getElementById("record").classList.remove("valid", "invalid"); document.getElementById("error").style.display = "none" document.getElementById("success").style.display = "none"; document.getElementById("result-placeholder").style.display = "none"; if (!value) { document.getElementById("result-placeholder").style.display = "flex"; return; } const record = new Record(value); try { record.validate(); document.getElementById("record").classList.add("valid"); document.getElementById("success").style.display = "flex"; } catch (e) { document.getElementById("record").classList.add("invalid"); document.getElementById("error").style.display = "flex"; document.getElementById("error-message").innerText = e.message; } }