Field

A wrapper component that provides consistent structure and accessibility for form inputs with labels, helper text, and error messages.

Anatomy

<script>
  import {
    Field,
    FieldLabel,
    FieldHelperText,
    FieldErrorText,
  } from "@saas-ui/svelte/components/field";
  import { Input } from "@saas-ui/svelte/components/input";
</script>

<Field.Root>
  <Field.Label>Email</Field.Label>
  <Input placeholder="Enter your email" />
  <Field.HelperText>We'll never share your email.</Field.HelperText>
  <Field.ErrorText>Email is required</Field.ErrorText>
</Field.Root>

Examples

Basic Accessibility

Basic field with a label and input.

Disabled Accessibility

Use the disabled prop on Field.Root to disable all contained inputs.

Error Text Accessibility

Use the Field.ErrorText component with the invalid prop on Field.Root to display validation errors.

Helper Text Accessibility

Field with helper text to provide additional context.

Native Select Accessibility

Field with a NativeSelect element.

Textarea Accessibility

Field with a Textarea input.

Props

Prop Type Default Description
disabled boolean false Whether the component is disabled.
invalid boolean false Whether the component is in an invalid state.
required boolean false -
readOnly boolean false -
children any - The content to be rendered inside the component.
class text - Additional CSS classes to apply.