Add FamilySchemaContract to your existing semantic family registration. Keep
using collectComponentFamily() with its actual field, column and entry surface
definitions; the adapter does not replace their asset registrations or views.
Implement the typed adapter in your package. The example assumes the declared
field class extends FlexTextInput; the column and entry keep their existing
renderers. Replace the authorization condition with your application’s policy.
Each render builds a fresh adapter. The frozen registry stores its class and
configuration contract, not a user’s values, record or tenant context.
authorize() runs before constructing the surface. rules() supplies up to 128
server-side string rules or ValidationRule objects. Required, hidden, disabled
and readonly restrictions in a definition are added after configuration;
stricter restrictions set by your adapter are preserved. Readonly/disabled
fields are excluded from dehydration and validation while excluded. The component does not persist an ORM
record or authorize your application’s save endpoint for you.
Continue reading
Extension guides · Definition and registration reference Last modified on October 17, 2026