{% set value = values.get(field.name) %} {% set error = errors.fields.get(field.name) %} {% set widget = field_widget(field) %} {% set control_base = 'mt-1 w-full rounded-md border bg-surface px-3 text-sm ' ~ ('border-danger' if error else 'border-input') %} {% set control = 'h-9 ' ~ control_base %}
{% if widget == 'checkbox' %} {% elif widget in ('textarea', 'json') %} {% elif widget == 'select' %}
{{ m.icon('chevron-down', 'size-3.5') }}
{% elif widget == 'relation' %} {% set chips = [] %}{% for pk, label in value or [] %}{% set _ = chips.append({"pk": pk, "label": label}) %}{% endfor %} {% set lookup_url = admin.url(request, '/' ~ view.identity ~ '/_lookup/' ~ field.name) %}
{% if field.multiple %}
{% else %}
{{ m.icon('chevron-down', 'size-3.5 shrink-0 text-fg-muted') }}
{% endif %}
{% elif widget in ('date', 'datetime-local', 'time') %} {% if widget == 'datetime-local' and value is not none and value is not string %}{% set value = value.isoformat(timespec='minutes') %}{% elif widget in ('date', 'time') and value is not none and value is not string %}{% set value = value.isoformat() %}{% endif %} {{ m.date_input(field.name, value, kind='datetime' if widget == 'datetime-local' else widget, id='f-' ~ field.name, required=field.required, error=error, readonly=field.readonly, class=control) }} {% else %} {% endif %} {% if field.help_text %}

{{ field.help_text }}

{% endif %} {% if error %}

{{ m.icon('circle-x', 'size-3.5 shrink-0') }}{{ error }}

{% endif %}