Skip to main content
Import composition classes from Bjanczak\FilamentFlexFields\Support\Components\Composition. A child slot references an actual registered component. It does not clone its HTML or create a global singleton field.

ChildSlot

This example assumes the parent declares categoryLimit. See the Select composition guide for the complete parent registration and the supported child option names.

ChildComponentContract

With the fluent factory, unbound options automatically map to a same-name public fluent method accepting one argument. Explicit bindings let one method take a group of options. Every group must be complete when applied. Binding methods must return self or static and preserve the same renderer instance. Imported JSON cannot select arbitrary methods or PHP classes.

ChildRenderer construction

render()

$children is your request-local ChildRenderer. Use the full PHP callback for relationship queries, authorization closures and other non-JSON configuration. Mapped parent options apply after explicit child options; locked bindings are reapplied after the PHP callback. The parent cannot override them indirectly. Each session allows up to 256 distinct child claims. A duplicate slot/key pair rejects rather than reusing another field’s state. Each child has its own consumer and stable schema key, including inside repeaters and nested surfaces.

ChildRenderContext in a custom factory

Read parent, component, identity, statePath, configuration, capabilities, contract and stateSlots from the context passed to your factory. Preserve the supplied identity and relative state semantics; do not cache the context globally. See custom child factories for a complete example.
Last modified on October 16, 2026