opencode/packages/stats/app/src/app.tsx

35 lines
938 B
TypeScript

import { MetaProvider, Title } from "@solidjs/meta"
import { Router } from "@solidjs/router"
import { FileRoutes } from "@solidjs/start/router"
import { Suspense } from "solid-js"
import { I18nProvider, useI18n } from "./context/i18n"
import { LanguageProvider } from "./context/language"
import { strip } from "./lib/language"
import "./routes/index.css"
function AppMeta() {
const i18n = useI18n()
return <Title>{i18n.t("app.title")}</Title>
}
export default function App() {
return (
<Router
base={import.meta.env.BASE_URL.replace(/\/$/, "")}
explicitLinks={true}
transformUrl={strip}
root={(props) => (
<LanguageProvider>
<I18nProvider>
<MetaProvider>
<AppMeta />
<Suspense>{props.children}</Suspense>
</MetaProvider>
</I18nProvider>
</LanguageProvider>
)}
>
<FileRoutes />
</Router>
)
}