Settings Form
An account-profile editing block: an avatar with change and remove controls, a name row, a prefixed username, email and a bio with a live count, closed by a Cancel and Save footer.
Installation#
Usage#
usage.tsxTSX
"use client"
import { SettingsForm, type SettingsFormData } from "@/components/ui/settings-form"
export function Example() {
async function save(data: SettingsFormData) {
await fetch("/api/profile", { method: "PATCH", body: JSON.stringify(data) })
}
return (
<SettingsForm
defaultValues={{ firstName: "Ana", lastName: "Ruiz", email: "ana@koalaui.com" }}
onSave={save}
/>
)
}API reference#
SettingsForm
Composes Avatar, Field, Input, and Textarea. The root is a <form> that forwards all its props.
defaultValues:Partial<{ firstName, lastName, username, email, bio }>.onSave:(data: SettingsFormData) => void | Promise<void>;onCancel:() => void.avatarSrc,usernamePrefix(default"koalaui.com/"),title,description.