feat(web): i18n (#12471)
This commit is contained in:
@@ -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>
|
||||
|
||||
Reference in New Issue
Block a user