Files
opencode/packages/console/app/src/routes/[...404].tsx
2026-02-06 11:30:40 -06:00

43 lines
1.5 KiB
TypeScript

import "./[...404].css"
import { Title } from "@solidjs/meta"
import { HttpStatusCode } from "@solidjs/start"
import logoLight from "../asset/logo-ornate-light.svg"
import logoDark from "../asset/logo-ornate-dark.svg"
import { useI18n } from "~/context/i18n"
import { useLanguage } from "~/context/language"
export default function NotFound() {
const i18n = useI18n()
const language = useLanguage()
return (
<main data-page="not-found">
<Title>{i18n.t("notFound.title")}</Title>
<HttpStatusCode code={404} />
<div data-component="content">
<section data-component="top">
<a href={language.route("/")} data-slot="logo-link">
<img data-slot="logo light" src={logoLight} alt="opencode logo light" />
<img data-slot="logo dark" src={logoDark} alt="opencode logo dark" />
</a>
<h1 data-slot="title">{i18n.t("notFound.heading")}</h1>
</section>
<section data-component="actions">
<div data-slot="action">
<a href={language.route("/")}>{i18n.t("notFound.home")}</a>
</div>
<div data-slot="action">
<a href={language.route("/docs")}>{i18n.t("notFound.docs")}</a>
</div>
<div data-slot="action">
<a href="https://github.com/anomalyco/opencode">{i18n.t("notFound.github")}</a>
</div>
<div data-slot="action">
<a href={language.route("/discord")}>{i18n.t("notFound.discord")}</a>
</div>
</section>
</div>
</main>
)
}