Design System
Forms

Field

A labelled wrapper that lays out the label, control and a hint or error message, wired for accessibility so the message is announced with the input.

Purpose

Field is the standard way to build a form row. It owns the label, the required marker and the hint or error text, and wires aria-describedby so the message is announced with the control rather than orphaned beside it.

Example

We will send claim updates to this address.

This policy number was not recognised.

Props

PropTypeDefaultDescription
labelReact.ReactNodeLabel text rendered above the control.
htmlForstring | undefined`id` of the wrapped control; links the label and derives the hint/error `id`s.
requiredboolean | undefinedfalseAppends a required marker (a destructive-coloured asterisk) to the label.
hintReact.ReactNodeHelper text shown under the control; hidden while `error` is present.
errorReact.ReactNodeError message; when set, it replaces the hint and the field renders in its error state.
classNamestring | undefinedExtra classes for the field wrapper.
childrenrequiredReact.ReactNodeThe form control (and any adornments) the field wraps.

On this page