From a8fe3e57f122ff8c5eac803291bd930eee6c8dd2 Mon Sep 17 00:00:00 2001 From: Jaxon Lewis-Wilson Date: Sun, 23 Aug 2026 23:11:14 +0800 Subject: [PATCH] feat(bring back the cat!): Brings back the legacy 404 page, kitten and all. Perfect replica --- jest.config.js | 2 + src/SEQTA.ts | 63 +++++++++ src/manifests/manifest.json | 1 + .../built-in/errorPageKitten/index.test.ts | 115 +++++++++++++++ src/plugins/built-in/errorPageKitten/index.ts | 132 ++++++++++++++++++ src/plugins/built-in/errorPageKitten/lazy.ts | 14 ++ .../built-in/errorPageKitten/styles.css | 113 +++++++++++++++ src/plugins/core/manager.ts | 3 + src/plugins/index.ts | 2 + src/plugins/syncablePluginDefaults.ts | 1 + src/resources/error-page/kitten.png | Bin 0 -> 65545 bytes src/test/mocks/assetStub.ts | 2 + src/test/mocks/inlineStub.ts | 2 + src/test/mocks/webextension-polyfill.ts | 3 + 14 files changed, 453 insertions(+) create mode 100644 src/plugins/built-in/errorPageKitten/index.test.ts create mode 100644 src/plugins/built-in/errorPageKitten/index.ts create mode 100644 src/plugins/built-in/errorPageKitten/lazy.ts create mode 100644 src/plugins/built-in/errorPageKitten/styles.css create mode 100644 src/resources/error-page/kitten.png create mode 100644 src/test/mocks/assetStub.ts create mode 100644 src/test/mocks/inlineStub.ts diff --git a/jest.config.js b/jest.config.js index a63ca1c1..090cf8fc 100644 --- a/jest.config.js +++ b/jest.config.js @@ -14,6 +14,8 @@ export default { '/node_modules/(?!(color|color-string|color-convert|color-name)/)', ], moduleNameMapper: { + '\\.png$': '/src/test/mocks/assetStub.ts', + '\\?inline$': '/src/test/mocks/inlineStub.ts', '^@/(.*)$': '/src/$1', '^color$': '/src/test/mocks/color.ts', '^webextension-polyfill$': '/src/test/mocks/webextension-polyfill.ts', diff --git a/src/SEQTA.ts b/src/SEQTA.ts index af42696b..142554b2 100644 --- a/src/SEQTA.ts +++ b/src/SEQTA.ts @@ -53,6 +53,10 @@ if (document.childNodes[1]) { init(); } +// The 404 page is a bare document with no second childNode, so it must be +// booted unconditionally (outside the gate above). It self-guards on title. +bootErrorPage(); + if (import.meta.env.DEV) { window.addEventListener("unhandledrejection", (event) => { recoverFromStaleDevModuleGraph(event.reason); @@ -138,6 +142,65 @@ async function init() { } } +// The 404 page is a standalone document that never passes the SPA gate above, +// so the normal plugin path never boots there; start just the classic kitten +// 404 plugin so it renders without any SPA work. +async function bootErrorPage() { + if (IsSEQTAPage) return; + + // Runs at document_start, so and body are not available yet; wait + // for the DOM before testing the 404 title. + await new Promise<void>((resolve) => { + if (document.readyState !== "loading") { + resolve(); + return; + } + document.addEventListener("DOMContentLoaded", () => resolve(), { + once: true, + }); + }); + + const is404Page = + /404/.test(document.title) || /not found/i.test(document.title); + if (!is404Page) return; + + const stored = await browser.storage.local.get([ + "onoff", + "plugin.error-page-kitten.settings", + ]); + if ((stored.onoff ?? true) === false) return; + const kittenEnabled = ( + stored["plugin.error-page-kitten.settings"] as + | { enabled?: boolean } + | undefined + )?.enabled; + if (kittenEnabled === false) return; + + hideRebranded404(); + + try { + const { pluginManager } = await import("@/plugins/index"); + await pluginManager.startPlugin("error-page-kitten"); + } catch (error) { + // Restore the rebranded page so the user is not left with a blank document. + document + .querySelectorAll<HTMLElement>(".bsplus-kitten-404-hidden") + .forEach((el) => { + el.classList.remove("bsplus-kitten-404-hidden"); + el.style.display = ""; + }); + console.error("[BetterSEQTA+] Failed to boot 404 page:", error); + } +} + +function hideRebranded404() { + const message = document.querySelector<HTMLElement>(".message"); + if (message) { + message.classList.add("bsplus-kitten-404-hidden"); + message.style.display = "none"; + } +} + function replaceIcons() { document .querySelectorAll<HTMLLinkElement>('link[rel*="icon"]') diff --git a/src/manifests/manifest.json b/src/manifests/manifest.json index 82970383..095e37fb 100644 --- a/src/manifests/manifest.json +++ b/src/manifests/manifest.json @@ -43,6 +43,7 @@ "web_accessible_resources": [ { "resources": [ + "resources/error-page/*", "resources/icons/*", "resources/update-image.webp", "resources/pdfjs/pdf.worker.min.mjs", diff --git a/src/plugins/built-in/errorPageKitten/index.test.ts b/src/plugins/built-in/errorPageKitten/index.test.ts new file mode 100644 index 00000000..655a0fbc --- /dev/null +++ b/src/plugins/built-in/errorPageKitten/index.test.ts @@ -0,0 +1,115 @@ +/** + * @jest-environment jsdom + */ +/// <reference types="jest" /> +import type { PluginAPI } from "@/plugins/core/types"; +import errorPageKittenPlugin from "./index"; + +const REBRANDED_404_BODY = ` + <div class="message"> + <h1>Page not found</h1> + <p>We can't find the page you're looking for.</p> + <p>It may have been moved, deleted or the link might be out of date.</p> + <p class="error-ref">Ref: 404</p> + </div> +`; + +const api = { + settings: { loaded: Promise.resolve() }, +} as unknown as PluginAPI<{}>; + +async function startPlugin(): Promise<() => void> { + const cleanup = (await errorPageKittenPlugin.run(api)) ?? (() => {}); + return cleanup; +} + +function getCard(): HTMLElement | null { + // The card container shares its class with <html>, so scope to body. + return document.body.querySelector<HTMLElement>(".bsplus-kitten-404"); +} + +function expectKittenRendered(): void { + const card = getCard(); + expect(card).not.toBeNull(); + expect(document.documentElement.classList).toContain("bsplus-kitten-404"); + expect(card?.querySelector("h1")?.textContent).toBe("404 Not Found"); + // The original document's title. + expect(document.title).toBe("404 Not Found"); + // The reference page's exact vendor-prefixed banner CSS is shipped at runtime. + const stripeStyle = Array.from( + document.head.querySelectorAll("style"), + ).find((s) => s.textContent?.includes("-webkit-repeating-linear-gradient")); + expect(stripeStyle?.textContent).toContain( + "repeating-linear-gradient(45deg", + ); + const img = card?.querySelector(".kitten img") as HTMLImageElement | null; + expect(img?.getAttribute("alt")).toBeNull(); + expect(img?.src).toContain("kitten"); + const flickrLink = card?.querySelector( + ".attrib a", + ) as HTMLAnchorElement | null; + expect(flickrLink?.textContent).toBe("by storyvillegirl"); + expect(flickrLink?.href).toBe( + "http://www.flickr.com/photos/bibbit/2756165489/", + ); + const seqtaLink = card?.querySelector("a[href='http://www.seqta.com.au']"); + expect(seqtaLink?.textContent).toBe("SEQTA"); + // Original rebranded message is hidden. + expect( + document.querySelector(".message")?.classList.contains( + "bsplus-kitten-404-hidden", + ), + ).toBe(true); +} + +describe("errorPageKitten", () => { + beforeEach(() => { + document.body.innerHTML = ""; + document.title = ""; + document.documentElement.classList.remove("bsplus-kitten-404"); + }); + + it("renders the classic kitten 404 card over the rebranded page", async () => { + document.title = "Page not found"; + document.body.innerHTML = REBRANDED_404_BODY; + + const cleanup = await startPlugin(); + + expectKittenRendered(); + + cleanup(); + expect(getCard()).toBeNull(); + expect(document.title).toBe("Page not found"); + expect( + Array.from(document.head.querySelectorAll("style")).some((s) => + s.textContent?.includes("-webkit-repeating-linear-gradient"), + ), + ).toBe(false); + expect( + document.documentElement.classList.contains("bsplus-kitten-404"), + ).toBe(false); + expect( + document + .querySelector(".message") + ?.classList.contains("bsplus-kitten-404-hidden"), + ).toBe(false); + }); + + it("does not render inside the SPA (no .message, has #container)", async () => { + document.title = "SEQTA"; + document.body.innerHTML = '<div id="container"></div>'; + + await startPlugin(); + + expect(getCard()).toBeNull(); + }); + + it("does not render on an unrelated page", async () => { + document.title = "Home"; + document.body.innerHTML = '<div id="app"></div>'; + + await startPlugin(); + + expect(getCard()).toBeNull(); + }); +}); diff --git a/src/plugins/built-in/errorPageKitten/index.ts b/src/plugins/built-in/errorPageKitten/index.ts new file mode 100644 index 00000000..c2731eb5 --- /dev/null +++ b/src/plugins/built-in/errorPageKitten/index.ts @@ -0,0 +1,132 @@ +import type { Plugin } from "@/plugins/core/types"; +import { resolveExtensionAssetUrl } from "@/lib/extensionAssetUrl"; +import kittenPng from "@/resources/error-page/kitten.png"; +import styles from "./styles.css?inline"; + +const KITTEN_IMG = resolveExtensionAssetUrl(kittenPng); +const KITTEN_CLASS = "bsplus-kitten-404"; + +// The reference page's exact h1 background declarations, in the original +// order. Each engine keeps the last declaration it understands (-webkit in +// Blink, -moz in Gecko, the legacy standard otherwise), so shipping them +// byte-for-byte reproduces the reference banner on every engine. Lives in a +// JS string because the CSS minifier drops vendor-prefixed declarations. +const H1_STRIPE_CSS = + "html.bsplus-kitten-404 .bsplus-kitten-404>h1{background-image:-moz-repeating-linear-gradient(135deg, rgba(0,0,0,0), rgba(0,0,0,0) 8px, rgba(0,0,0,0.05) 8px, rgba(0,0,0,0.05) 16px), -moz-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,0.1));background-image:-webkit-repeating-linear-gradient(135deg, rgba(0,0,0,0), rgba(0,0,0,0) 8px, rgba(0,0,0,0.05) 8px, rgba(0,0,0,0.05) 16px), -webkit-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,0.1));background-image:-o-repeating-linear-gradient(135deg, rgba(0,0,0,0), rgba(0,0,0,0) 8px, rgba(0,0,0,0.05) 8px, rgba(0,0,0,0.05) 16px), -o-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,0.1));background-image:repeating-linear-gradient(45deg, rgba(0,0,0,0), rgba(0,0,0,0) 8px, rgba(0,0,0,0.05) 8px, rgba(0,0,0,0.05) 16px), linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,0.1))}"; + +// The 404 page (legacy and rebranded) is a standalone document built around a +// single `.message` block; the real app mounts a `#container`. Require the +// former and rule out the latter so the plugin never renders inside the app. +function is404Page(): boolean { + if (document.getElementById("container")) return false; + const heading = document.querySelector(".message > h1"); + const text = heading?.textContent ?? document.title; + return /not found/i.test(text) || /404/.test(document.title); +} + +function buildCard(): HTMLElement { + const card = document.createElement("div"); + card.className = KITTEN_CLASS; + + const h1 = document.createElement("h1"); + h1.textContent = "404 Not Found"; + card.appendChild(h1); + + const p1 = document.createElement("p"); + p1.textContent = + "Sorry — the resource you are looking for could not be found."; + card.appendChild(p1); + + const p2 = document.createElement("p"); + p2.textContent = + "If you believe you are seeing this message in error, please contact your IT department."; + card.appendChild(p2); + + const kitten = document.createElement("div"); + kitten.className = "kitten"; + + const kittenLine = document.createElement("p"); + kittenLine.textContent = "I did find this picture of a kitten for you, though!"; + kitten.appendChild(kittenLine); + + const img = document.createElement("img"); + img.src = KITTEN_IMG; + kitten.appendChild(img); + + const attrib = document.createElement("div"); + attrib.className = "attrib"; + attrib.append("CC-BY-SA "); + const link = document.createElement("a"); + link.href = "http://www.flickr.com/photos/bibbit/2756165489/"; + link.textContent = "by storyvillegirl"; + attrib.appendChild(link); + kitten.appendChild(attrib); + + card.appendChild(kitten); + + const seqtaLink = document.createElement("a"); + seqtaLink.href = "http://www.seqta.com.au"; + seqtaLink.textContent = "SEQTA"; + card.appendChild(seqtaLink); + + return card; +} + +const errorPageKittenPlugin: Plugin = { + id: "error-page-kitten", + name: "Classic 404 Page", + description: "Brings back SEQTA's old kitten 404 page", + version: "1.0.0", + settings: {}, + disableToggle: true, + defaultEnabled: true, + styles, + + run: async (_api) => { + let card: HTMLElement | null = null; + let hasBuilt = false; + let originalTitle = document.title; + let stripeStyle: HTMLStyleElement | null = null; + + const render = () => { + if (!is404Page()) return; + + document.querySelector(".message")?.classList.add("bsplus-kitten-404-hidden"); + + if (hasBuilt) return; + const body = document.body; + if (!body) return; + + hasBuilt = true; + document.documentElement.classList.add(KITTEN_CLASS); + document.title = "404 Not Found"; + // Appended after the manager-injected styles so these same-specificity + // declarations win over the compiled baseline. + stripeStyle = document.createElement("style"); + stripeStyle.textContent = H1_STRIPE_CSS; + document.head.appendChild(stripeStyle); + card = buildCard(); + body.appendChild(card); + }; + + // Body may not be parsed yet at document_start; render now and again on + // DOM ready as a safety net. + render(); + document.addEventListener("DOMContentLoaded", render, { once: true }); + + return () => { + document.removeEventListener("DOMContentLoaded", render); + document.documentElement.classList.remove(KITTEN_CLASS); + document + .querySelectorAll(".bsplus-kitten-404-hidden") + .forEach((el) => el.classList.remove("bsplus-kitten-404-hidden")); + document.title = originalTitle; + stripeStyle?.remove(); + stripeStyle = null; + card?.remove(); + card = null; + }; + }, +}; + +export default errorPageKittenPlugin; diff --git a/src/plugins/built-in/errorPageKitten/lazy.ts b/src/plugins/built-in/errorPageKitten/lazy.ts new file mode 100644 index 00000000..3bbe04a5 --- /dev/null +++ b/src/plugins/built-in/errorPageKitten/lazy.ts @@ -0,0 +1,14 @@ +import { defineLazyPlugin } from "../../core/dynamicLoader"; +import styles from "./styles.css?inline"; + +export default defineLazyPlugin({ + id: "error-page-kitten", + name: "Classic 404 Page", + description: "Brings back SEQTA's old kitten 404 page", + version: "1.0.0", + settings: {}, + disableToggle: true, + defaultEnabled: true, + styles, + loader: () => import("./index"), +}); diff --git a/src/plugins/built-in/errorPageKitten/styles.css b/src/plugins/built-in/errorPageKitten/styles.css new file mode 100644 index 00000000..653c2dcd --- /dev/null +++ b/src/plugins/built-in/errorPageKitten/styles.css @@ -0,0 +1,113 @@ +/* Classic SEQTA 404 page, restored one-to-one over the rebranded document. + Scoped under html.bsplus-kitten-404 so it can never leak into the SPA; + the card element itself carries the .bsplus-kitten-404 class. */ + +/* The rebranded page styles <body> (Arial / flex / 25vh top / line-height + 1.5 / letter-spacing). line-height and letter-spacing are reset because + the rebranded body sets them and the classic page uses browser defaults. */ +html.bsplus-kitten-404 { + background: #333; +} +html.bsplus-kitten-404 body { + background: #333; + font-family: 'Trebuchet MS', sans-serif; + font-size: 12pt; + color: #aaa; + margin: 8px; + padding: 0; + display: block; + line-height: normal; + letter-spacing: normal; +} + +/* Hide the rebranded page content while the classic card is shown. */ +html.bsplus-kitten-404 .bsplus-kitten-404-hidden { + display: none !important; +} + +html.bsplus-kitten-404 .bsplus-kitten-404 { + width: 600px; + margin: 64px auto; + background: #222; + border-radius: 4px; + box-shadow: -1px -1px rgba(0, 0, 0, 0.5), + 1px 1px rgba(255, 255, 255, 0.2); + padding: 0 0 8px; + text-align: center; +} + +html.bsplus-kitten-404 .bsplus-kitten-404 > h1 { + background: #612; + /* Valid modern baseline; the reference's exact vendor-prefixed declarations + are injected at runtime (H1_STRIPE_CSS in index.ts), which win over this. + The vendor-prefixed lines can't live in this file because the CSS + minifier drops them. */ + background-image: repeating-linear-gradient( + 135deg, + rgba(0, 0, 0, 0), + rgba(0, 0, 0, 0) 8px, + rgba(0, 0, 0, 0.05) 8px, + rgba(0, 0, 0, 0.05) 16px + ), + linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); + color: #fff; + padding: 8px; + border-radius: 4px 4px 0 0; + text-shadow: 0 1px rgba(0, 0, 0, 0.5); + font-size: 150%; + font-weight: normal; + margin: 0 0 16px; +} + +html.bsplus-kitten-404 .bsplus-kitten-404 > p { + padding: 8px; + margin: 0; + text-shadow: 0 1px rgba(0, 0, 0, 0.5); + font-style: italic; +} + +html.bsplus-kitten-404 .bsplus-kitten-404 > p > a { + color: #729fcf; + text-decoration: none; +} + +html.bsplus-kitten-404 .bsplus-kitten-404 > .kitten { + font-size: 70%; + padding: 24px 0; +} + +html.bsplus-kitten-404 .bsplus-kitten-404 > .kitten > p { + color: #666; + font-style: italic; + margin: 0 0 8px; +} + +html.bsplus-kitten-404 .bsplus-kitten-404 > .kitten > .attrib { + color: #333; + font-size: 80%; +} + +html.bsplus-kitten-404 .bsplus-kitten-404 > .kitten > .attrib > a { + color: inherit; + text-decoration: none; +} + +html.bsplus-kitten-404 .bsplus-kitten-404 > .kitten > img { + display: inline-block; + border-radius: 4px; + box-shadow: 0 0 4px #000; +} + +html.bsplus-kitten-404 .bsplus-kitten-404 > a { + display: block; + padding: 8px; + margin: 0 8px 0 auto; + width: 100px; + text-align: center; + color: #444; + background: #111; + text-decoration: none; + font-size: 80%; + border-radius: 4px; + box-shadow: inset 1px 1px rgba(0, 0, 0, 0.5); +} diff --git a/src/plugins/core/manager.ts b/src/plugins/core/manager.ts index 0719975f..6a1ec151 100644 --- a/src/plugins/core/manager.ts +++ b/src/plugins/core/manager.ts @@ -26,6 +26,9 @@ interface StorageChange<T = any> { /** Phased plugin startup: critical UI first, light DOM next, heavy plugins last. */ const PLUGIN_START_PHASES: readonly string[][] = [ + // 404 page boot is a tiny standalone path; start it first so the kitten + // card renders before any SPA work. A no-op on normal SEQTA pages. + ["error-page-kitten"], ["themes", "animated-background"], [ "timetable", diff --git a/src/plugins/index.ts b/src/plugins/index.ts index 039be718..9be02278 100644 --- a/src/plugins/index.ts +++ b/src/plugins/index.ts @@ -16,6 +16,7 @@ import messageFoldersPluginLazy from "./built-in/messageFolders/lazy"; import enhancedNavigationPluginLazy from "./built-in/enhancedNavigation/lazy"; import globalSearchPluginLazy from "./built-in/globalSearch/lazy"; import gradeAnalyticsPluginLazy from "./built-in/gradeAnalytics/lazy"; +import errorPageKittenPluginLazy from "./built-in/errorPageKitten/lazy"; // Initialize plugin manager const pluginManager = PluginManager.getInstance(); @@ -36,6 +37,7 @@ pluginManager.registerPlugin(messageFoldersPluginLazy); pluginManager.registerPlugin(enhancedNavigationPluginLazy); pluginManager.registerPlugin(globalSearchPluginLazy); pluginManager.registerPlugin(gradeAnalyticsPluginLazy); +pluginManager.registerPlugin(errorPageKittenPluginLazy); export async function initializePlugins(): Promise<void> { await pluginManager.startAllPlugins(); diff --git a/src/plugins/syncablePluginDefaults.ts b/src/plugins/syncablePluginDefaults.ts index e438e1fa..cb7a58dd 100644 --- a/src/plugins/syncablePluginDefaults.ts +++ b/src/plugins/syncablePluginDefaults.ts @@ -37,4 +37,5 @@ export const SYNCABLE_PLUGIN_SETTING_DEFAULTS: Record< passiveIndexing: true, }, "grade-analytics": { cacheTtlHours: 24 }, + "error-page-kitten": {}, }; diff --git a/src/resources/error-page/kitten.png b/src/resources/error-page/kitten.png new file mode 100644 index 0000000000000000000000000000000000000000..1a94d5d033a1dfaca5d40601761c166c267b79fa GIT binary patch literal 65545 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 AZ~y=R literal 0 HcmV?d00001 diff --git a/src/test/mocks/assetStub.ts b/src/test/mocks/assetStub.ts new file mode 100644 index 00000000..50e1fdeb --- /dev/null +++ b/src/test/mocks/assetStub.ts @@ -0,0 +1,2 @@ +// Jest stub for Vite asset imports (png, etc.): Vite returns a URL string. +export default "/resources/error-page/kitten.png"; diff --git a/src/test/mocks/inlineStub.ts b/src/test/mocks/inlineStub.ts new file mode 100644 index 00000000..23332858 --- /dev/null +++ b/src/test/mocks/inlineStub.ts @@ -0,0 +1,2 @@ +// Jest stub for Vite's `?inline` css imports: returns a CSS string. +export default "/* test inline css */"; diff --git a/src/test/mocks/webextension-polyfill.ts b/src/test/mocks/webextension-polyfill.ts index 21d57028..3bffe4a3 100644 --- a/src/test/mocks/webextension-polyfill.ts +++ b/src/test/mocks/webextension-polyfill.ts @@ -32,6 +32,9 @@ export default { storage: { local, onChanged }, runtime: { sendMessage: jest.fn(async () => undefined), + getURL: jest.fn( + (path: string) => `chrome-extension://test/${String(path).replace(/^\/+/, "")}`, + ), }, };