import "./index.css" import { Title, Meta } from "@solidjs/meta" import { createSignal, Show } from "solid-js" import { Header } from "~/component/header" import { Footer } from "~/component/footer" import { Legal } from "~/component/legal" import { Faq } from "~/component/faq" import { useI18n } from "~/context/i18n" import { LocaleLinks } from "~/component/locale-links" export default function Enterprise() { const i18n = useI18n() const [formData, setFormData] = createSignal({ name: "", role: "", company: "", email: "", phone: "", alias: "", message: "", }) const [isSubmitting, setIsSubmitting] = createSignal(false) const [showSuccess, setShowSuccess] = createSignal(false) const [error, setError] = createSignal("") const handleInputChange = (field: string) => (e: Event) => { const target = e.target as HTMLInputElement | HTMLTextAreaElement setFormData((prev) => ({ ...prev, [field]: target.value })) } const handleSubmit = async (e: Event) => { e.preventDefault() setError("") setShowSuccess(false) setIsSubmitting(true) try { const response = await fetch("/api/enterprise", { method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify(formData()), }) if (response.ok) { setShowSuccess(true) setFormData({ name: "", role: "", company: "", email: "", phone: "", alias: "", message: "", }) setTimeout(() => setShowSuccess(false), 5000) return } const data = (await response.json().catch(() => null)) as { error?: string } | null setError(data?.error ?? i18n.t("enterprise.form.error.internalServer")) } catch (error) { console.error("Failed to submit form:", error) setError(i18n.t("enterprise.form.error.internalServer")) } finally { setIsSubmitting(false) } } return (
{i18n.t("enterprise.title")}

{i18n.t("enterprise.hero.title")}

{i18n.t("enterprise.hero.body1")}

{i18n.t("enterprise.hero.body2")}

Thanks to OpenCode, we found a way to create software to track all our assets — even the imaginary ones.