Field
The shared labeling and validation shell for composing a custom form control with a label, description, and error text.
Show codeHide code
Installation
import { Field, FieldDescription, FieldLabel } from "@makeplane/propel/components/field";
import { Input } from "@makeplane/propel/components/input";Usage
import { Field, FieldDescription, FieldLabel } from "@makeplane/propel/components/field";
import { Input } from "@makeplane/propel/components/input";
export default function BasicDemo() {
return (
<Field name="displayName">
<FieldLabel size="lg" inset={false} required>
Display name
</FieldLabel>
<Input size="lg" placeholder="Ada Lovelace" required />
<FieldDescription size="lg">Shown anywhere your profile is visible.</FieldDescription>
</Field>
);
}Examples
Sizes
Pass the same size to every part of a field so the label, control, and description scale together.
Show codeHide code
Invalid
Show codeHide code
Required validation
Native constraint validity drives FieldError through match; with validationMode="onBlur" the message appears when the user leaves the field empty and clears once a value is committed.
Show codeHide code
Horizontal label
FieldLabelGroup bundles the label and description into one block; with orientation="horizontal" it sits beside the control in a flex row. Supporting text is one tier below the label at every size, whether it sits under the label or under the control.
Show codeHide code
Helper text
FieldHelperText renders the hint below the control and swaps it for the error when one is set, keeping the error-XOR-hint rule in one part.
Show codeHide code
API Reference
Field
The shared field chrome for custom controls: Base UI's labeling/validation Field.Root behavior
grafted onto the styled Field element (rule 1a). Compose it with FieldLabel, a control,
FieldDescription, and FieldError.
FieldLabel
The ready-made field label: Base UI's Field.Label (auto-associated with the control) grafted
onto the styled FieldLabel element (rule 1a), plus a FieldLabelRequiredMarker when
required.
FieldLabelGroup
The ready-made label/description block of a field: lays out an optional FieldLabel and
FieldDescription inside the FieldLabelGroup container. Renders nothing when both are absent.
FieldItemContent
The label + description column for a single choice option (checkbox/radio/switch row).
FieldDescription
Supporting / helper text for a field: Base UI's Field.Description (auto-associated as the
control's accessible description) grafted onto the styled FieldDescription element (rule 1a).
FieldError
Error text for a field: Base UI's Field.Error (shown per the control's validity / match)
grafted onto the styled FieldError element (rule 1a).
FieldHelperText
The error-or-hint line beneath a field: shows the FieldError when there is an error, otherwise
the FieldDescription hint. With no explicit error, the FieldError renders unmatched so Base
UI's own error channel stays open — validity messages and external Form errors for this field
display (and clear) automatically. A components-tier composition of the two elements parts;
shared by the ready-made field types so the error-XOR-hint rule lives in one place.