{% from 'partials/components/ui_macros.html' import form_group, form_input, form_select, form_textarea, toggle_field %} {% if field.type == "boolean" %} {{ toggle_field(field.name, checked=values and values[field.name], label='', field_id='field-' ~ field.name) }} {% elif field.type == "text" %} {%- set _attrs -%} {%- if field.max %}maxlength="{{ field.max }}" {% endif -%} {%- if field.min_length %}minlength="{{ field.min_length }}" {% endif -%} {%- if field.pattern %}pattern="{{ field.pattern }}" {% endif -%} {%- if field.mono %}style="font-family:var(--mono);"{% endif -%} {%- endset -%} {% call form_group(field.label, required=field.required) %} {{ form_input(field.name, values[field.name] if values else '', required=field.required, placeholder=field.placeholder | default(''), attrs=_attrs) }} {% endcall %} {% elif field.type == "number" %} {%- set _attrs -%} {%- if field.min is defined %}min="{{ field.min }}" {% endif -%} {%- if field.max is defined %}max="{{ field.max }}"{% endif -%} {%- endset -%} {% call form_group(field.label, required=field.required) %} {{ form_input(field.name, values[field.name] if values else '', type='number', required=field.required, attrs=_attrs) }} {% endcall %} {% elif field.type == "select" %} {% call form_group(field.label, required=field.required) %} {{ form_select(field.name, field.options, values[field.name] if values else '', required=field.required) }} {% endcall %} {% elif field.type == "password" %} {% call form_group(field.label, required=field.required) %} {{ form_input(field.name, type='password', placeholder=field.placeholder | default('••••••••'), attrs='autocomplete="new-password"') }} {% endcall %} {% elif field.type == "textarea" %} {% call form_group(field.label, required=field.required) %} {{ form_textarea(field.name, values[field.name] if values else '', placeholder=field.placeholder | default(''), attrs=('style="font-family:var(--mono);"' if field.mono else '')) }} {% endcall %} {% elif field.type == "list" %}