import "../../enableDevHmr"
import React from "react"
import ReactDOM from "react-dom/client"
import renderContent from "../renderContent"
import App from "./App"
import "../../../index.css"
import { initImageHovering } from "../image"
import $ from "jquery"
import Header from "./Header"
import { Thread } from "~/types/thread"
renderContent(import.meta.PLUGIN_WEB_EXT_CHUNK_CSS_PATHS, (appRoot) => {
ReactDOM.createRoot(appRoot).render(
)
})
// Initialize the image hovering functionality once the document is ready
$(document).ready(() => {
console.log("Document is ready!")
initImageHovering()
// Assume the 4chan API URL is like this
const apiUrl = "https://a.4cdn.org/{board}/catalog.json"
// Replace {board} with the actual board name
const boardName = window.location.pathname.split("/")[1]
const boardApiUrl = apiUrl.replace("{board}", boardName)
$.getJSON(boardApiUrl, (data) => {
const threads = data.flatMap((page: { threads: Thread[] }) => page.threads)
threads.forEach((thread: Thread) => {
const threadId = thread.no
const comment = thread.com
const subject = thread.sub
// Assuming each thread teaser has an id like `thread-{id}`
const threadTeaser = $(`#thread-${threadId} > .teaser`)
if (threadTeaser.length > 0) {
// Replace the teaser with the comment
threadTeaser.html(comment)
// Add the subject to the top of the comment if it exists
if (subject) {
threadTeaser.prepend(`${subject}
`)
threadTeaser.find(".subject").css("color", "#0f0c5d").css("font-weight", "700")
}
// Add css to the class "quote" and make the text green #789922
threadTeaser.find(".quote").css("color", "#789922")
}
})
})
})