mirror of
https://github.com/abhijithvijayan/web-extension-starter.git
synced 2025-10-07 07:22:37 +02:00
31 lines
972 B
TypeScript
31 lines
972 B
TypeScript
import TradeFinderRow from "../page-elements/trade-finder-row";
|
|
import TraderRepository from "../trader-repository";
|
|
|
|
export default class TradeFinderEnhancer {
|
|
static addHeader(page: Document) {
|
|
let th = document.createElement("th");
|
|
th.innerText = "# of their wants that I own";
|
|
th.style.textAlign = "center";
|
|
th.scope = "col";
|
|
|
|
page.querySelector("table thead tr")?.appendChild(th);
|
|
}
|
|
|
|
static async enhance(page: Document) {
|
|
let repository = await TraderRepository.load();
|
|
|
|
this.addHeader(page);
|
|
|
|
let tbody = page.querySelector("table tbody")!;
|
|
let rows = tbody.querySelectorAll("tr");
|
|
|
|
Array.from(rows)
|
|
.map((row) =>
|
|
TradeFinderRow.parse(row as HTMLTableRowElement, repository)
|
|
)
|
|
.filter((row) => row !== null)
|
|
.filter((row) => row!.trader !== null)
|
|
.forEach((row) => row!.addWantsColumn());
|
|
}
|
|
}
|