# `FrappeUIPhx.Components.FormControl`
[🔗](https://github.com/moacirbishopcamata/frappe_ui_phx/blob/v0.3.1/lib/frappe_ui_phx/components/form_control.ex#L1)

Rótulo + controle + descrição + erros, escolhendo o controle por `type`.

`type`: `"textarea"`, `"select"`, `"checkbox"`, `"switch"` ou qualquer tipo de
`FrappeUIPhx.Components.TextInput`. Erros vêm do `field` (changeset) e só
aparecem depois que o campo foi usado.

# `form_control`

## Attributes

* `field` (`Phoenix.HTML.FormField`) (required)
* `type` (`:string`) - Defaults to `"text"`.
* `label` (`:string`) - Defaults to `nil`.
* `description` (`:string`) - Defaults to `nil`.
* `options` (`:list`) - Defaults to `[]`.
* `prompt` (`:string`) - Defaults to `nil`.
* `variant` (`:atom`) - Defaults to `:subtle`.
* `size` (`:atom`) - Defaults to `:sm`.
* `required` (`:boolean`) - espelha a regra `validate_required` do changeset. Defaults to `false`.
* `disabled` (`:boolean`) - Defaults to `false`.
* `class` (`:any`) - Defaults to `nil`.
* Global attributes are accepted. Supports all globals plus: `["autocomplete", "maxlength", "minlength", "min", "max", "pattern", "placeholder", "rows", "step"]`.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
