Field
Usage
The title shown in meeting summaries and transcripts.
import { Field, FieldDescription, FieldLabel } from '@jamie/ui/field'
import { Input } from '@jamie/ui/input'
export function FieldDemo() {
return (
<Field>
<FieldLabel>Meeting Title</FieldLabel>
<Input placeholder="Q3 Revenue Review" />
<FieldDescription>The title shown in meeting summaries and transcripts.</FieldDescription>
</Field>
)
}Horizontal Layout
Use orientation="horizontal" for inline fields, commonly paired with checkboxes or switches.
Automatically start recording when a meeting begins.
Email meeting summaries to all participants after each call.
import { Checkbox } from '@jamie/ui/checkbox'
import { Field, FieldContent, FieldDescription, FieldLabel } from '@jamie/ui/field'
export function FieldHorizontalDemo() {
return (
<div className="flex flex-col gap-4">
<Field orientation="horizontal">
<Checkbox defaultChecked />
<FieldContent>
<FieldLabel>Auto-record meetings</FieldLabel>
<FieldDescription>Automatically start recording when a meeting begins.</FieldDescription>
</FieldContent>
</Field>
<Field orientation="horizontal">
<Checkbox />
<FieldContent>
<FieldLabel>Send recap emails</FieldLabel>
<FieldDescription>
Email meeting summaries to all participants after each call.
</FieldDescription>
</FieldContent>
</Field>
</div>
)
}With Error
Display validation errors below the input using FieldError.
Meeting title is required.
import { Field, FieldError, FieldLabel } from '@jamie/ui/field'
import { Input } from '@jamie/ui/input'
export function FieldWithErrorDemo() {
return (
<Field data-invalid="true">
<FieldLabel>Meeting Title</FieldLabel>
<Input placeholder="Q3 Revenue Review" />
<FieldError>Meeting title is required.</FieldError>
</Field>
)
}