import { parseTable, makeTable } from "../utils"; import { registerSearchEntries } from "../search"; export function processVirology(root: HTMLElement): void { const diseaseTable = root.querySelector( "#Simple_Diseases .wikitable" ); const diseases = parseTable(diseaseTable).map((row) => { const diseaseBlock = document.createElement("td"); diseaseBlock.innerHTML = `
${row["Disease Name"].innerHTML}

${row["Vector Name"].innerHTML}

${row["Source"].innerHTML}

${row["Spread"].innerHTML}

${row["Description"].innerHTML}

`; return { Disease: diseaseBlock, Cure: row["Cure"], }; }); const diseaseBetterTable = makeTable(["Disease", "Cure"], diseases); diseaseBetterTable.className = "disease-ext wikitable"; diseaseTable.replaceWith(diseaseBetterTable); const symptomsTable = root.querySelector( "#Symptoms_Table .wikitable" ); const symptoms = parseTable(symptomsTable); //symptomsTable.replaceWith(document.createElement("span")); } export function virologyScript(root: HTMLElement): void { // Init fuzzy search with elements const el = Array.from( root.querySelectorAll(".disease-ext tr:not(:first-child)") ); registerSearchEntries( el.map((element, id) => ({ page: "Infections", name: element.querySelector(".disease-name").textContent.trim(), element, alignment: "center", id, })) ); } export default { processVirology, virologyScript, };