form-element

This component is the wrapper for

Since inputs, selects, textareas, checkboxes and radio buttons should never be used without a label, we should always use this component to ensure accessibility.

Information

Folder
src/components/elements/form-element

Files

Schema
Mocks
Template
// src/components/elements/form-element/form-element.twig

{% set label_display = label_display|default("before") %}
<div{{ attributes }}
	class="
		FormElement
		{% if errors and errors|length > 0 %} FormElement--error{% endif %}
		{% if type == "checkbox" or type == "radio" %}
			Option
			{{ type|capitalize }}
		{% endif %}
		{{ classes|join(" ") }}
	">
	{% if label_display == "before" %}
		{{ label }}
	{% endif %}
	{% if prefix is not empty %}
		<span class="FormElement-prefix">{{ prefix }}</span>
	{% endif %}
	{{ children }}
	{% if suffix is not empty %}
		<span class="FormElement-suffix">{{ suffix }}</span>
	{% endif %}
	{% if label_display == "after" %}
		{{ label }}
	{% endif %}
	{% if errors %}
		<div class="FormElement-error">
			{% include "@elements/error/error.twig" with {
				content: errors,
			} only %}
		</div>
	{% endif %}
	{% if description %}
		<p{{ description_attributes }} class="FormElement-description">
			{{ description }}
		</p>
	{% endif %}
</div>

Variants

Input
Open

Input mock data

Raw
Resolved
Input with description
Open

Input with description mock data

Raw
Resolved
Input invalid
Open

Input invalid mock data

Raw
Resolved
Input invalid with description
Open

Input invalid with description mock data

Raw
Resolved
File Input with description
Open

File Input with description mock data

Raw
Resolved
Select
Open

Select mock data

Raw
Resolved
Textarea
Open

Textarea mock data

Raw
Resolved
Checkbox
Open

Checkbox mock data

Raw
Resolved
Checkbox invalid
Open

Checkbox invalid mock data

Raw
Resolved
Checkbox checked
Open

Checkbox checked mock data

Raw
Resolved
Checkbox disabled
Open

Checkbox disabled mock data

Raw
Resolved
Checkbox invalid and checked
Open

Checkbox invalid and checked mock data

Raw
Resolved
Checkbox invalid and disabled
Open

Checkbox invalid and disabled mock data

Raw
Resolved
Checkbox checked and disabled
Open

Checkbox checked and disabled mock data

Raw
Resolved
Checkbox checked and disabled and invalid
Open

Checkbox checked and disabled and invalid mock data

Raw
Resolved
Radio
Open

Radio mock data

Raw
Resolved
Radio invalid
Open

Radio invalid mock data

Raw
Resolved
Radio checked
Open

Radio checked mock data

Raw
Resolved
Radio disabled
Open

Radio disabled mock data

Raw
Resolved
Radio invalid and checked
Open

Radio invalid and checked mock data

Raw
Resolved
Radio invalid and disabled
Open

Radio invalid and disabled mock data

Raw
Resolved
Radio checked and disabled
Open

Radio checked and disabled mock data

Raw
Resolved
Radio checked and disabled and invalid
Open

Radio checked and disabled and invalid mock data

Raw
Resolved
Submit
Open

Submit mock data

Raw
Resolved