feat(web): i18n (#12471)

This commit is contained in:
Adam
2026-02-06 08:54:51 -06:00
committed by GitHub
parent 0ec5f6608b
commit 812597bb8b
75 changed files with 9868 additions and 726 deletions

View File

@@ -2,6 +2,7 @@ import { action, useSubmission } from "@solidjs/router"
import dock from "../asset/lander/dock.png"
import { Resource } from "@opencode-ai/console-resource"
import { Show } from "solid-js"
import { useI18n } from "~/context/i18n"
const emailSignup = action(async (formData: FormData) => {
"use server"
@@ -23,22 +24,21 @@ const emailSignup = action(async (formData: FormData) => {
export function EmailSignup() {
const submission = useSubmission(emailSignup)
const i18n = useI18n()
return (
<section data-component="email">
<div data-slot="section-title">
<h3>Be the first to know when we release new products</h3>
<p>Join the waitlist for early access.</p>
<h3>{i18n.t("email.title")}</h3>
<p>{i18n.t("email.subtitle")}</p>
</div>
<form data-slot="form" action={emailSignup} method="post">
<input type="email" name="email" placeholder="Email address" required />
<input type="email" name="email" placeholder={i18n.t("email.placeholder")} required />
<button type="submit" disabled={submission.pending}>
Subscribe
{i18n.t("email.subscribe")}
</button>
</form>
<Show when={submission.result}>
<div style="color: #03B000; margin-top: 24px;">
Almost done, check your inbox and confirm your email address
</div>
<div style="color: #03B000; margin-top: 24px;">{i18n.t("email.success")}</div>
</Show>
<Show when={submission.error}>
<div style="color: #FF408F; margin-top: 24px;">{submission.error}</div>