{% macro textbox( field, label=None, hint=False, highlight_placeholders=False, autofocus=False, autosize=False, help_link=None, help_link_text=None, width='2-3', suffix=None, safe_error_message=False, rows=8, extra_form_group_classes='', placeholder='', input_id=None ) %} {% set field_id = kwargs.id if kwargs.id is defined else field.id %} {% set described_by = '' %} {% if hint %}{% set described_by = described_by + field_id ~ '-hint' %}{% endif %} {% if field.errors %} {% if described_by %}{% set described_by = described_by + ' ' %}{% endif %} {% set described_by = described_by + field_id ~ '-error' %} {% endif %}
{% if hint %}
{{ hint }}
{% endif %} {% if field.errors %} Error: {% if not safe_error_message %} {{ field.errors[0] }} {% else %} {{ field.errors[0] | safe }} {% endif %} {% endif %} {% if highlight_placeholders or autosize %} {% set field_class = 'usa-textarea form-control-{} textbox-highlight-textbox'.format(width) %} {% else %} {% set field_class = 'usa-input' %} {% endif %} {% set field_class = 'form-control ' ~ field_class ~ (' form-control-error' if field.errors else '') %} {% if autosize or highlight_placeholders %} {% else %} {% set input_type = 'tel' if 'phone' in field.label.text else 'text' %} {% endif %} {% if suffix %} {{ suffix }} {% endif %} {% if help_link and help_link_text %} {% endif %}
{% endmacro %}