"use strict"; // JS & CSS /* eslint-disable */ import "./scss/main.scss"; import UIkit from "uikit"; // Don't Sort These! import Icons from "uikit/dist/js/uikit-icons"; // @ts-ignore UIkit.use(Icons); import Prism from "prismjs"; // Don't Sort These! import "prismjs/components/prism-hcl"; import "prismjs/components/prism-json"; Prism.highlightAll(); /* eslint-enable */ // @ts-ignore import translations from "./translations/index.mjs"; // Actual Imports import { formatDistance } from "./formatDistance"; import { getSealStatus } from "./api/sys/getSealStatus"; //import { pageList } from "./allPages"; import { render } from "preact"; import { NavBar } from "./ui/elements/NavBar"; import { pageState } from "./globalPageState"; import { playground } from "./playground"; import i18next from "i18next"; import { Main } from "./pages"; async function onLoad(): Promise { document.documentElement.dir = pageState.pageDirection; render( <>
, document.body, ); if (process.env.NODE_ENV == "development") { await playground(); } //await pageRouter.changePage(pageState.currentPage); //setInterval(async () => { // if ((await pageRouter.getCurrentPageID()) != "UNSEAL") { // if (pageState.apiURL.length != 0) { // return; // } // const sealStatus = await getSealStatus(); // if (sealStatus.sealed) { // await pageRouter.changePage("UNSEAL"); // return; // } // } //}, 5000); } document.addEventListener( "DOMContentLoaded", async () => { console.log("Loading..."); // @ts-expect-error console.log("Build Data:", BUILD_STRING); await i18next.init({ lng: pageState.language, fallbackLng: "en", debug: true, // @ts-ignore resources: Object.fromEntries( Object.entries(translations).map(([k, v]) => [k, { translation: v }]), ), interpolation: { escape: (str) => { return str; }, format: function (value: unknown, format, _): string { if (format === "until_date" && value instanceof Date) return formatDistance(new Date(), new Date(value), pageState.language); return value as string; }, }, }); await onLoad(); }, false, );