import linkifyElement from "linkifyjs/element";
import { getUserInfo } from "../libs/api";
import { monthNames } from "../libs/utils";
function init() {
const allUsers = document.querySelectorAll("a.hnuser");
if (allUsers.length === 0) {
return false;
}
const linkifyOptions = {
attributes: {
rel: "noopener",
},
};
for (const user of allUsers) {
user.addEventListener("mouseover", async () => {
let userDiv = user.parentElement.querySelector(".__rhn__hover-info");
if (!userDiv) {
userDiv = document.createElement("div");
userDiv.classList.add("__rhn__hover-info", "__rhn__no-display");
userDiv.style.left = user.getBoundingClientRect().left + "px";
userDiv.innerHTML = ``;
user.parentElement.append(userDiv);
user.dataset.rhnInfoLoaded = "0";
}
userDiv.classList.remove("__rhn__no-display");
userDiv.style.left = user.getBoundingClientRect().left + "px";
if (user.dataset.rhnInfoLoaded === "0") {
user.dataset.rhnInfoLoaded = "1";
const userInfo = await getUserInfo(user.innerText.split(" ")[0]);
const userDate = new Date(userInfo.created * 1000);
const renderedDate = `${
monthNames[userDate.getMonth()]
} ${userDate.getDate()}, ${userDate.getFullYear()}`;
const table = `
| user: | ${userInfo.id} |
| created: | ${renderedDate} |
| karma: | ${userInfo.karma} |
| about: | " + userInfo.about + " |