schema/schema_component library

Classes

BooleanComponent
ColorComponent
ColorPicker. The panel declares one of four string formats via ->hex()/->hsl()/->rgb()/->rgba()getFormat() is the ONLY accessor ColorPicker exposes (measured in vendor/filament/forms/src/ Components/ColorPicker.php), and the value on the wire is a plain string in that format. This client never converts it to another one: an rgb field gets rgb back, byte for byte, everywhere it did not itself edit the text.
DateComponent
date / datetime / time. One class, because the three differ only in which parts of a moment they carry.
EntryComponent
A read-only infolist entry. Every kind displays one field, so they share one class; the extra slots are per-kind and null elsewhere.
FileComponent
A file upload field. readOnly defaults to true so an older server that never publishes the key — meaning it predates upload support entirely — reads as inert rather than a renderer guessing it can accept one. A current server publishes false for a writable field, single or multiple.
KeyValueComponent
A keyvalue field: a free-form set of string key/value pairs.
LayoutComponent
A container node. Holds no value, so name is always null; the renderer decides how each kind frames its children.
MapPointComponent
map_point and read-only map_point_entry share one value/camera model. Rendering is intentionally supplied by the optional maps companion.
MapPointValue
One geographic point. Numeric strings are accepted because the upstream Filament plugin documents and stores that shape; the mobile client always exposes numbers and sends numbers back.
NumberComponent
PhoneComponent
A phone value remains a string end to end. Formatting and validation stay server-side so the client never rewrites a number the panel stored.
RepeaterComponent
A repeater field: a list of rows built from a single item template.
SchemaComponent
One node of a Filament schema tree.
SelectComponent
Covers select and multiselect, and — via optionsUrl — BelongsTo relations. A relation is a select with a URL, not a separate concept.
SelectOption
One choice in a SelectComponent. value stays untyped because the contract allows ints (foreign keys) and strings (enums) alike.
SliderComponent
slider. min/max/step are presentation bounds for the control; the enforceable half of the same declaration already arrives as the node's ordinary rules (required/numeric/min/max, which Filament's Slider force-registers server-side), so client-side validation needs no slider-specific machinery at all.
TagsComponent
A tags field: a free-form list of strings.
TextComponent
text, textarea, email and password in one class: they differ only by keyboard, obscurity and line count, all of which the renderer derives from kind.
ToggleButtonsComponent
toggle_buttons. Carries the same flattened option shape select/radio publish (SelectOption), but never an optionsUrl — the type has no search affordance server-side, so an over-cap field inlines its full list and this client renders however many options arrive.
UnknownComponent
A component type this build does not know how to render.

Enums

BooleanKind
ColorFormat
ComponentDirection
An optional node-level override of the panel's layout direction.
DateKind
EntryKind
LayoutKind
PhoneFormat
TextKind

Exceptions / Errors

SchemaFormatException
Thrown when the panel JSON does not match the contract.