schoolbox web extension :)
1import { defineContentScript } from "#imports";
2import { EXCLUDE_MATCHES } from "@/utils/constants";
3import homepageSwitcher from "./plugins/homepageSwitcher";
4import modernIcons from "./plugins/modernIcons";
5import progressBar from "./plugins/progressBar";
6import scrollPeriod from "./plugins/scrollPeriod";
7import scrollSegments from "./plugins/scrollSegments";
8import subheader from "./plugins/subheader";
9import tabTitle from "./plugins/tabTitle";
10
11export const plugins = [subheader, scrollSegments, scrollPeriod, progressBar, modernIcons, tabTitle, homepageSwitcher];
12
13export type PluginInstance = (typeof plugins)[number];
14
15export default defineContentScript({
16 matches: ["<all_urls>"],
17 runAt: "document_start",
18 excludeMatches: EXCLUDE_MATCHES,
19 async main() {
20 document.addEventListener("DOMContentLoaded", () => {
21 for (const plugin of plugins) {
22 plugin.init();
23 }
24 });
25 },
26});