Every form field type is a class extending Aurora\Forms\FieldType, Aurora's
ten included (Aurora\Forms\Fields), and FormFields is their registry:
FormFields::register([Turnstile::class]) in a service provider's boot().
A type says its settings in the form builder, its validation rules (a
captcha checks its token there), whether and how its answer is kept, what
the APIs may see, which text is translated, and, for types of a website's
or package's own, its HTML and scripts on the website, drawn by
<x-aurora::form-field>. The controller, the CSV export and the API ask the
type instead of checking for "file" and "consent". Stored forms and
submissions are unchanged, and a field whose type is gone works as short
text. The field type names are translated now.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>